olcott
unread,Nov 9, 2020, 10:01:09 AM11/9/20You do not have permission to delete messages in this group
Either email addresses are anonymous for this group or you need the view member email addresses permission to view the original message
to
This <is> the simplest concrete counter-example of all of the
conventional halting problem proofs.
void Halt_Fooler(u32 P)
{
if (Halts(P, P))
HALT
else
HERE: goto HERE;
}
I am dropping my reference to Linz because it only gets people confused.
The UTM Halts(u32 P, u32 I) (at least partial) halt decider executes the
x86 Turing machine Description of its input until it detects that:
(a) Its input would never terminate unless forced to terminate by this
(at least partial) halt decider.
(b) Its input has already halted on its own.
When-so-ever a halt decider correctly decides that its input would
never halt unless forced to halt by this halt decider this halt decider
has correctly detected an input that would not halt and can transition
to its final state of DOES_NOT_HALT.
This shows that H_HAT(H_HAT) does not halt when run on its own:
bool Aborted_Because_Non_Halting_Behavior_Detected(u32 P, u32 I)
{
bool Halted = false;
bool Aborted = false;
while (!Halted && !Aborted)
{
Halted = DebugStep(H_Hat, H_Hat);
// Aborted = Needs_To_Be_Aborted();
}
return Aborted;
}
void H_Hat(u32 P) // (bottom of page 319)
{
if (Aborted_Because_Non_Halting_Behavior_Detected(P, P))
HALT
else
HERE: goto HERE;
}
int main()
{
H_Hat(H_Hat);
calls bool Aborted_Because_Non_Halting_Behavior_Detected(H_Hat, H_Hat)
In the above case H_Hat(H_Hat) never terminates.
--
Copyright 2020 Pete Olcott
"Great spirits have always encountered violent opposition from mediocre
minds." Einstein