void E(int (*x)())
{
HH(x, x);
return;
}
int main()
{
HH(E,E);
}
HH only needs to simulate E until HH correctly detects that E has a
repeating state such that E correctly simulated by HH cannot possibly
reach its own final state and terminate normally in any finite number of steps.
Because it is an easily verified fact that
E correctly simulated by HH
cannot possibly halt (reach its own "return" instruction and terminate normally)
HH is necessarily correct to abort its simulation of E and reject
E correctly simulated by HH
as non-halting as soon as it detects the repeating state in
E correctly simulated by HH
The repeating state that we and HH can both see is that
E correctly simulated by HH
would continue to call HH(E,E) in recursive simulation
Making it impossible for
E correctly simulated by H
to reach its own "return" instruction and terminate normally (AKA halt).
straw man
An intentionally misrepresented proposition that is set up because it is easier to defeat than an opponent's real argument. https://www.lexico.com/en/definition/straw_man
What deceptive people are doing when they change the subject away from
E correctly simulated by H to form a rebuttal.
Simulating Halt Decider Applied to the Halting Theorem https://www.researchgate.net/publication/364657019_Simulating_Halt_Decider_Applied_to_the_Halting_Theorem
Sysop: | Keyop |
---|---|
Location: | Huddersfield, West Yorkshire, UK |
Users: | 365 |
Nodes: | 16 (2 / 14) |
Uptime: | 26:01:10 |
Calls: | 7,769 |
Files: | 12,905 |
Messages: | 5,749,292 |