On 10/25/2020 10:57 PM, Mike Terry wrote:
> On 25/10/2020 15:30, olcott wrote:
> [...snip...]
>>
>> The task at hand is to provide a a specific input to this function that
>> can be shown to be impossible to decide correctly:
>> Aborted_Because_Non_Halting_Behavior_Detected(u32 P, u32 I)
>
> Don't you think that since it's YOU making the claim here (to be
> refuting something), if the behaviour of this function is key to your
> argument, it's YOU who should be proving your case, rather than asking
> /us/ to respond to challenges? That's typical Nam Ngyuyen tactics!
The would be exactly the same thing as rejecting the Church-Turing
thesis until after someone has proved it.
> Anyway, let's look at your challenge...
>
> We need to be clear exactly what the challenge is right? Personally I'm
> not inclined to accept any challenge I don't understand, and for which I
> wouldn't know if a proposed solution (if one exists) would be correct or
> not.
>
> So for starters you need to define:
>
> 1) The program spec for
> Aborted_Because_Non_Halting_Behavior_Detected(u32 P, u32 I)
>
> 2) Exactly what you mean by "impossible to decide correctly".
void H_Hat(u32 M)
{
if (!Halts(M, M))
MOV_EAX_0 // Does not Halt
else
{
MOV_EAX_1 // Halts
HERE: goto HERE;
}
HALT
}
void H(u32 M, u32 N)
{
if (!Halts(M, M))
MOV_EAX_0 // Does not Halt
else
MOV_EAX_1 // Halts
HALT
}
int main()
{
u32 M = (u32)H_Hat;
H(M, M);
HALT
}
To the question:
Does H_Hat halt on it input H_Hat?
Both Yes and No are the wrong final state to transition to.
> Also more generally,
>
> 3) Is Aborted_Because_Non_Halting_Behavior_Detected(u32 P, u32 I) a
> specific implementation (in C perhaps?) and do you actually have that
> souce code?
I will have it so that it correctly decides the Peter Linz H_Hat()
shortly. Since I have worked on this about 80 hours per weeks for six
months I have reduced my coding time to less than 40 hours per week for
this home stretch.
> 4) Why not use a shorter name, because this is UseNet, and there are
> quite restrictive guidelines for line lengths. I'm all for suggestive
> function names, but we need to be practical! What about ABNHBD()?
No, Not all. Not in the least little bit.
The name must be utterly self-descriptive to eliminate any confusion
> -----------------------
>
> For (2) the only interpretation that currently makes sense to me is
>
> "provide an input (P,I) for which
> Aborted_Because_Non_Halting_Behavior_Detected(u32 P, u32 I) gives a
> response that doesn't meet it's spec."
Yes and I show an overview of the architecture of the halting algorithm
as it would be applied to a UTM halt decider deciding the halting of its
subordinate UTM below:
The redefined halt decider UTM executes its subordinate UTM one state
transition at a time until it detects non-halting behavior or its
subordinate UTM has terminated normally.
If the halt decider UTM detects non-halting behavior of its subordinate
UTM it simply stops executing the subordinate and transitions to its own
final state of ABORTED_NON_TERMINATING_BEHAVIOR.
If the subordinate UTM terminates normally the halt decider UTM
transitions to its own final state of SUBORDINATE_HAS_TERMINATED.
The redefined halt decider is not subject to the conventional halting
problem trick. Its input cannot possibly do the opposite of whatever it
decides because the input has already terminated before the halt decider
makes its decision.