• Re: Simulating termination analyzers for dummies

    From Fred. Zwarts@21:1/5 to All on Mon Jun 17 10:31:41 2024
    XPost: sci.logic

    Op 17.jun.2024 om 05:33 schreef olcott:
    To understand this analysis requires a sufficient knowledge of
    the C programming language and what an x86 emulator does.

    Unless every single detail is made 100% explicit false assumptions
    always slip though the cracks. This is why it must be examined at
    the C level before it is examined at the Turing Machine level.

    typedef void (*ptr)();
    int H0(ptr P);

    void Infinite_Loop()
    {
      HERE: goto HERE;
    }

    void Infinite_Recursion()
    {
      Infinite_Recursion();
    }

    void DDD()
    {
      H0(DDD);
      return;
    }

    int main()
    {
      H0(Infinite_Loop);
      H0(Infinite_Recursion);
      H0(DDD);
    }

    Every C programmer that knows what an x86 emulator is knows that when H0 emulates the machine language of Infinite_Loop, Infinite_Recursion, and
    DDD that it must abort these emulations so that itself can terminate normally.

    When this is construed as non-halting criteria then simulating
    termination analyzer H0 is correct to reject these inputs as non-
    halting.


    For Infinite_Loop and Infinite_Recursion that might be true, because
    there the simulator processes the whole input.

    The H0 case is very different. For H0 there is indeed a false
    assumption, as you mentioned. Here H0 needs to simulate itself, but the simulation is never able to reach the final state of the simulated self.
    The abort is always one cycle too early, so that the simulating H0
    misses the abort. Therefore this results in a false negative.
    (Note that H0 should process its input, which includes the H0 that
    aborts, not a non-input with an H that does not abort.)

    This results in a impossible dilemma for the programmer. It he creates a
    H that does not abort, it will not terminate. If he creates a H that
    does abort, he creates a false negative. It will never be correct.

    It would be very stupid to construe this as non-halting criteria,
    because it is clear that it will produce false negatives, i.e. false
    results.

    --- SoupGate-Win32 v1.05
    * Origin: fsxNet Usenet Gateway (21:1/5)
  • From Fred. Zwarts@21:1/5 to All on Mon Jun 17 15:30:23 2024
    XPost: sci.logic

    Op 17.jun.2024 om 14:20 schreef olcott:
    On 6/17/2024 3:31 AM, Fred. Zwarts wrote:
    Op 17.jun.2024 om 05:33 schreef olcott:
    To understand this analysis requires a sufficient knowledge of
    the C programming language and what an x86 emulator does.

    Unless every single detail is made 100% explicit false assumptions
    always slip though the cracks. This is why it must be examined at
    the C level before it is examined at the Turing Machine level.

    typedef void (*ptr)();
    int H0(ptr P);

    void Infinite_Loop()
    {
       HERE: goto HERE;
    }

    void Infinite_Recursion()
    {
       Infinite_Recursion();
    }

    void DDD()
    {
       H0(DDD);
       return;
    }

    int main()
    {
       H0(Infinite_Loop);
       H0(Infinite_Recursion);
       H0(DDD);
    }

    Every C programmer that knows what an x86 emulator is knows that when H0 >>> emulates the machine language of Infinite_Loop, Infinite_Recursion, and
    DDD that it must abort these emulations so that itself can terminate
    normally.

    When this is construed as non-halting criteria then simulating
    termination analyzer H0 is correct to reject these inputs as non-
    halting.


    For Infinite_Loop and Infinite_Recursion that might be true, because
    there the simulator processes the whole input.

    The H0 case is very different. For H0 there is indeed a false
    assumption, as you mentioned. Here H0 needs to simulate itself, but
    the simulation is never able to reach the final state of the simulated
    self. The abort is always one cycle too early, so that the simulating
    H0 misses the abort. Therefore this results in a false negative.
    (Note that H0 should process its input, which includes the H0 that
    aborts, not a non-input with an H that does not abort.)

    This results in a impossible dilemma for the programmer. It he creates
    a H that does not abort, it will not terminate.

    *Therefore what I said is correct*

    No, that is not a logical conclusion. The logical conclusion if both
    aborting and not aborting result in errors, is: a halt-decider cannot be
    based on such a simulation.

    When every input that must be aborted is construed as non-halting
    then the input to H0(DDD) is correctly construed as non-halting.

    I you had read further, your would have seen that it is incorrect to
    construe such a criterium. It results in false negatives. Because H is
    unable to simulate itself it is not a correct criterium for non-halting
    of the program.
    A false negative indicates already that a wrong criterium is used.


    If he creates a H that does abort, he creates a false negative. It
    will never be correct.

    It would be very stupid to construe this as non-halting criteria,
    because it is clear that it will produce false negatives, i.e. false
    results.

    The criterium whether a program halts or not is the direct execution.
    Of course it is possible to define other criteria: The length of its description is even or odd, or the description is smaller or larger then
    1k, or its simulation is unable to process it up to the end. But all of
    these are incorrect and will result in false negatives.

    --- SoupGate-Win32 v1.05
    * Origin: fsxNet Usenet Gateway (21:1/5)
  • From Fred. Zwarts@21:1/5 to All on Mon Jun 17 16:18:42 2024
    XPost: sci.logic

    Op 17.jun.2024 om 15:47 schreef olcott:
    On 6/17/2024 8:30 AM, Fred. Zwarts wrote:
    Op 17.jun.2024 om 14:20 schreef olcott:
    On 6/17/2024 3:31 AM, Fred. Zwarts wrote:
    Op 17.jun.2024 om 05:33 schreef olcott:
    To understand this analysis requires a sufficient knowledge of
    the C programming language and what an x86 emulator does.

    Unless every single detail is made 100% explicit false assumptions
    always slip though the cracks. This is why it must be examined at
    the C level before it is examined at the Turing Machine level.

    typedef void (*ptr)();
    int H0(ptr P);

    void Infinite_Loop()
    {
       HERE: goto HERE;
    }

    void Infinite_Recursion()
    {
       Infinite_Recursion();
    }

    void DDD()
    {
       H0(DDD);
       return;
    }

    int main()
    {
       H0(Infinite_Loop);
       H0(Infinite_Recursion);
       H0(DDD);
    }

    Every C programmer that knows what an x86 emulator is knows that
    when H0
    emulates the machine language of Infinite_Loop, Infinite_Recursion,
    and
    DDD that it must abort these emulations so that itself can terminate >>>>> normally.

    When this is construed as non-halting criteria then simulating
    termination analyzer H0 is correct to reject these inputs as non-
    halting.


    For Infinite_Loop and Infinite_Recursion that might be true, because
    there the simulator processes the whole input.

    The H0 case is very different. For H0 there is indeed a false
    assumption, as you mentioned. Here H0 needs to simulate itself, but
    the simulation is never able to reach the final state of the
    simulated self. The abort is always one cycle too early, so that the
    simulating H0 misses the abort. Therefore this results in a false
    negative.
    (Note that H0 should process its input, which includes the H0 that
    aborts, not a non-input with an H that does not abort.)

    This results in a impossible dilemma for the programmer. It he
    creates a H that does not abort, it will not terminate.

    *Therefore what I said is correct*

    No, that is not a logical conclusion.

    Every C programmer that knows what an x86 emulator is knows
    that when H0 emulates the machine language of Infinite_Loop, Infinite_Recursion, and DDD that it must abort these emulations
    so that itself can terminate normally.

    That might be correct.

    When this is construed as non-halting criteria then simulating
    termination analyzer H0 is correct to reject these inputs as non-
    halting.

    That is wrong. It only shows that H0 is unable to simulate itself. It
    tells nothing about the halting of the input.


    *Too late you have already affirmed the words above*
    Affirming the first part necessitates the second part.

    That is not logical. If a non-aborting program is wrong, it does not
    follow that a program that aborts is correct.
    Please, think before you reply.

    So, I repeat:
    The logical conclusion if both aborting and not aborting result in
    errors, is: a halt-decider cannot be based on such a simulation.

    --- SoupGate-Win32 v1.05
    * Origin: fsxNet Usenet Gateway (21:1/5)
  • From Fred. Zwarts@21:1/5 to All on Mon Jun 17 16:49:45 2024
    XPost: sci.logic

    Op 17.jun.2024 om 16:34 schreef olcott:
    On 6/17/2024 9:18 AM, Fred. Zwarts wrote:
    Op 17.jun.2024 om 15:47 schreef olcott:
    On 6/17/2024 8:30 AM, Fred. Zwarts wrote:
    Op 17.jun.2024 om 14:20 schreef olcott:
    On 6/17/2024 3:31 AM, Fred. Zwarts wrote:
    Op 17.jun.2024 om 05:33 schreef olcott:
    To understand this analysis requires a sufficient knowledge of
    the C programming language and what an x86 emulator does.

    Unless every single detail is made 100% explicit false assumptions >>>>>>> always slip though the cracks. This is why it must be examined at >>>>>>> the C level before it is examined at the Turing Machine level.

    typedef void (*ptr)();
    int H0(ptr P);

    void Infinite_Loop()
    {
       HERE: goto HERE;
    }

    void Infinite_Recursion()
    {
       Infinite_Recursion();
    }

    void DDD()
    {
       H0(DDD);
       return;
    }

    int main()
    {
       H0(Infinite_Loop);
       H0(Infinite_Recursion);
       H0(DDD);
    }

    Every C programmer that knows what an x86 emulator is knows that >>>>>>> when H0
    emulates the machine language of Infinite_Loop,
    Infinite_Recursion, and
    DDD that it must abort these emulations so that itself can terminate >>>>>>> normally.

    When this is construed as non-halting criteria then simulating
    termination analyzer H0 is correct to reject these inputs as non- >>>>>>> halting.


    For Infinite_Loop and Infinite_Recursion that might be true,
    because there the simulator processes the whole input.

    The H0 case is very different. For H0 there is indeed a false
    assumption, as you mentioned. Here H0 needs to simulate itself,
    but the simulation is never able to reach the final state of the
    simulated self. The abort is always one cycle too early, so that
    the simulating H0 misses the abort. Therefore this results in a
    false negative.
    (Note that H0 should process its input, which includes the H0 that >>>>>> aborts, not a non-input with an H that does not abort.)

    This results in a impossible dilemma for the programmer. It he
    creates a H that does not abort, it will not terminate.

    *Therefore what I said is correct*

    No, that is not a logical conclusion.

    Every C programmer that knows what an x86 emulator is knows
    that when H0 emulates the machine language of Infinite_Loop,
    Infinite_Recursion, and DDD that it must abort these emulations
    so that itself can terminate normally.

    That might be correct.

    When this is construed as non-halting criteria then simulating
    termination analyzer H0 is correct to reject these inputs as non-
    halting.

    That is wrong. It only shows that H0 is unable to simulate itself. It
    tells nothing about the halting of the input.


    *Too late you have already affirmed the words above*
    Affirming the first part necessitates the second part.

    That is not logical. If a non-aborting program is wrong, it does not
    follow that a program that aborts is correct.
    Please, think before you reply.

    So, I repeat:
    The logical conclusion if both aborting and not aborting result in
    errors, is: a halt-decider cannot be based on such a simulation.

    Your view here is merely ignorant of the fact that deciders
    must report on the behavior specified by their inputs.


    It is incorrect to assume that a failing simulation is able to report
    about its input.
    The simulation fails, because H0 is unable to simulate itself.

    --- SoupGate-Win32 v1.05
    * Origin: fsxNet Usenet Gateway (21:1/5)
  • From Richard Damon@21:1/5 to olcott on Mon Jun 17 18:42:43 2024
    XPost: sci.logic

    On 6/17/24 8:20 AM, olcott wrote:
    On 6/17/2024 3:31 AM, Fred. Zwarts wrote:
    Op 17.jun.2024 om 05:33 schreef olcott:
    To understand this analysis requires a sufficient knowledge of
    the C programming language and what an x86 emulator does.

    Unless every single detail is made 100% explicit false assumptions
    always slip though the cracks. This is why it must be examined at
    the C level before it is examined at the Turing Machine level.

    typedef void (*ptr)();
    int H0(ptr P);

    void Infinite_Loop()
    {
       HERE: goto HERE;
    }

    void Infinite_Recursion()
    {
       Infinite_Recursion();
    }

    void DDD()
    {
       H0(DDD);
       return;
    }

    int main()
    {
       H0(Infinite_Loop);
       H0(Infinite_Recursion);
       H0(DDD);
    }

    Every C programmer that knows what an x86 emulator is knows that when H0 >>> emulates the machine language of Infinite_Loop, Infinite_Recursion, and
    DDD that it must abort these emulations so that itself can terminate
    normally.

    When this is construed as non-halting criteria then simulating
    termination analyzer H0 is correct to reject these inputs as non-
    halting.


    For Infinite_Loop and Infinite_Recursion that might be true, because
    there the simulator processes the whole input.

    The H0 case is very different. For H0 there is indeed a false
    assumption, as you mentioned. Here H0 needs to simulate itself, but
    the simulation is never able to reach the final state of the simulated
    self. The abort is always one cycle too early, so that the simulating
    H0 misses the abort. Therefore this results in a false negative.
    (Note that H0 should process its input, which includes the H0 that
    aborts, not a non-input with an H that does not abort.)

    This results in a impossible dilemma for the programmer. It he creates
    a H that does not abort, it will not terminate.

    *Therefore what I said is correct*
    When every input that must be aborted is construed as non-halting
    then the input to H0(DDD) is correctly construed as non-halting.

    In other words, if you allow yourself to LIE, you can claim the wrong
    answer is right.

    Since your "Needing to abort" is NOT the same as halting, all you are
    doing is admitting that your whole logic system is based on the
    principle that LIES ARE OK.


    If he creates a H that does abort, he creates a false negative. It
    will never be correct.

    It would be very stupid to construe this as non-halting criteria,
    because it is clear that it will produce false negatives, i.e. false
    results.


    --- SoupGate-Win32 v1.05
    * Origin: fsxNet Usenet Gateway (21:1/5)
  • From Richard Damon@21:1/5 to olcott on Mon Jun 17 21:24:31 2024
    XPost: sci.logic

    On 6/17/24 9:16 PM, olcott wrote:
    On 6/17/2024 5:42 PM, Richard Damon wrote:
    On 6/17/24 8:20 AM, olcott wrote:
    On 6/17/2024 3:31 AM, Fred. Zwarts wrote:
    Op 17.jun.2024 om 05:33 schreef olcott:
    To understand this analysis requires a sufficient knowledge of
    the C programming language and what an x86 emulator does.

    Unless every single detail is made 100% explicit false assumptions
    always slip though the cracks. This is why it must be examined at
    the C level before it is examined at the Turing Machine level.

    typedef void (*ptr)();
    int H0(ptr P);

    void Infinite_Loop()
    {
       HERE: goto HERE;
    }

    void Infinite_Recursion()
    {
       Infinite_Recursion();
    }

    void DDD()
    {
       H0(DDD);
       return;
    }

    int main()
    {
       H0(Infinite_Loop);
       H0(Infinite_Recursion);
       H0(DDD);
    }

    Every C programmer that knows what an x86 emulator is knows that
    when H0
    emulates the machine language of Infinite_Loop, Infinite_Recursion,
    and
    DDD that it must abort these emulations so that itself can terminate >>>>> normally.

    When this is construed as non-halting criteria then simulating
    termination analyzer H0 is correct to reject these inputs as non-
    halting.


    For Infinite_Loop and Infinite_Recursion that might be true, because
    there the simulator processes the whole input.

    The H0 case is very different. For H0 there is indeed a false
    assumption, as you mentioned. Here H0 needs to simulate itself, but
    the simulation is never able to reach the final state of the
    simulated self. The abort is always one cycle too early, so that the
    simulating H0 misses the abort. Therefore this results in a false
    negative.
    (Note that H0 should process its input, which includes the H0 that
    aborts, not a non-input with an H that does not abort.)

    This results in a impossible dilemma for the programmer. It he
    creates a H that does not abort, it will not terminate.

    *Therefore what I said is correct*
    When every input that must be aborted is construed as non-halting
    then the input to H0(DDD) is correctly construed as non-halting.

    In other words, if you allow yourself to LIE, you can claim the wrong
    answer is right.

    Since your "Needing to abort" is NOT the same as halting, all you are
    doing is admitting that your whole logic system is based on the
    principle that LIES ARE OK.


    "Needing to abort" <is> the same as a NOT halting input.
    You are simply too ignorant to understand this.


    Nope, not if you are comparing DIFFERENT version of the input.


    When I explain this in terms of of mathematical mappings
    from finite strings to behaviors this simply leaps over
    everyone's head.


    As has been shown, you can apply the input to H0 (when you don't change
    it, so the call to H0 still goes to this H0), to a UTM and it will reach
    the final end, so *THIS* H0 did not "Need" to abort its input, but did
    because it was programmend to.

    Change the H0 to H1, which simulates longer, and keep the input DDD
    calling H0, and we see that if H1 simulates long enough, it will see the
    end to.

    The problem is you try to justify changing the input when you change
    'H', which is just a lie, as the input needs to be a COMPLETE PROGRAM to
    even HAVE behavior, and that complere program includes the exact version
    of the decider that it is designed to refute,

    Yes, your verskon where the input changes shows something, and that is
    that you don't understand the meaning of theory.

    We can only ask for behavior of specific programs, your idea of a
    "template" as in input is flawed, as the template doesn't HAVE a
    definied behavior, only specific instances do.

    It is like being asked the sum of 2 + and then not giving the second
    number, there is no valid answer to that.

    Thus, your logic is just shown to be based on invalid principles and LIES.

    --- SoupGate-Win32 v1.05
    * Origin: fsxNet Usenet Gateway (21:1/5)
  • From Richard Damon@21:1/5 to olcott on Mon Jun 17 22:33:49 2024
    XPost: sci.logic

    On 6/17/24 10:04 PM, olcott wrote:
    On 6/17/2024 8:24 PM, Richard Damon wrote:
    On 6/17/24 9:16 PM, olcott wrote:
    On 6/17/2024 5:42 PM, Richard Damon wrote:
    On 6/17/24 8:20 AM, olcott wrote:
    On 6/17/2024 3:31 AM, Fred. Zwarts wrote:
    Op 17.jun.2024 om 05:33 schreef olcott:
    To understand this analysis requires a sufficient knowledge of
    the C programming language and what an x86 emulator does.

    Unless every single detail is made 100% explicit false assumptions >>>>>>> always slip though the cracks. This is why it must be examined at >>>>>>> the C level before it is examined at the Turing Machine level.

    typedef void (*ptr)();
    int H0(ptr P);

    void Infinite_Loop()
    {
       HERE: goto HERE;
    }

    void Infinite_Recursion()
    {
       Infinite_Recursion();
    }

    void DDD()
    {
       H0(DDD);
       return;
    }

    int main()
    {
       H0(Infinite_Loop);
       H0(Infinite_Recursion);
       H0(DDD);
    }

    Every C programmer that knows what an x86 emulator is knows that >>>>>>> when H0
    emulates the machine language of Infinite_Loop,
    Infinite_Recursion, and
    DDD that it must abort these emulations so that itself can terminate >>>>>>> normally.

    When this is construed as non-halting criteria then simulating
    termination analyzer H0 is correct to reject these inputs as non- >>>>>>> halting.


    For Infinite_Loop and Infinite_Recursion that might be true,
    because there the simulator processes the whole input.

    The H0 case is very different. For H0 there is indeed a false
    assumption, as you mentioned. Here H0 needs to simulate itself,
    but the simulation is never able to reach the final state of the
    simulated self. The abort is always one cycle too early, so that
    the simulating H0 misses the abort. Therefore this results in a
    false negative.
    (Note that H0 should process its input, which includes the H0 that >>>>>> aborts, not a non-input with an H that does not abort.)

    This results in a impossible dilemma for the programmer. It he
    creates a H that does not abort, it will not terminate.

    *Therefore what I said is correct*
    When every input that must be aborted is construed as non-halting
    then the input to H0(DDD) is correctly construed as non-halting.

    In other words, if you allow yourself to LIE, you can claim the
    wrong answer is right.

    Since your "Needing to abort" is NOT the same as halting, all you
    are doing is admitting that your whole logic system is based on the
    principle that LIES ARE OK.


    "Needing to abort" <is> the same as a NOT halting input.
    You are simply too ignorant to understand this.


    Nope, not if you are comparing DIFFERENT version of the input.

    It is ALWAYS the exact same sequence of bytes.

    But if it doesn't include the bytes of H, you can't do what you claim,
    as the "Correct Simulation" needs to STOP and go no further at the call
    to H, as you can't simulate in the correct order the instuctions you do
    not have.

    And when you do include the bytes from H, then you no longer can claim
    that they are the same bytes.

    It just shows that you have LIED when you say the input is JUST the
    dozen or so instruction of the C function provided.

    For it to actually be asking the decider the question it is supposed to
    be asking, it needs to include the bytes of the full program.

    This is why you try to LIE that you can't make a proper copy of H,
    because it makes you claim clearly false.




    When I explain this in terms of of mathematical mappings
    from finite strings to behaviors this simply leaps over
    everyone's head.


    As has been shown, you can apply the input to H0 (when you don't
    change it, so the call to H0 still goes to this H0), to a UTM and it
    will reach the final end, so *THIS* H0 did not "Need" to abort its
    input, but did because it was programmend to.


    Not so much.

    void DDD()
    {
      UTM(DDD);
    }


    WRONG.

    DDD() doesn't change, I guess are just too stupid to undrstand that.

    You just failed Requirements analysis 101.

    The above does not match the definion of the contray program of the
    proofs. (unless you are trying to claim that UTM is a valid Halt Decider).


    It needs to be main calling UTM(DDD) while DDD still calls H0(DDD)

    You are just proving that you are a total idiot.

    --- SoupGate-Win32 v1.05
    * Origin: fsxNet Usenet Gateway (21:1/5)
  • From Richard Damon@21:1/5 to olcott on Mon Jun 17 22:44:47 2024
    XPost: sci.logic

    On 6/17/24 10:36 PM, olcott wrote:
    On 6/17/2024 9:33 PM, Richard Damon wrote:
    On 6/17/24 10:04 PM, olcott wrote:
    On 6/17/2024 8:24 PM, Richard Damon wrote:
    On 6/17/24 9:16 PM, olcott wrote:
    On 6/17/2024 5:42 PM, Richard Damon wrote:
    On 6/17/24 8:20 AM, olcott wrote:
    On 6/17/2024 3:31 AM, Fred. Zwarts wrote:
    Op 17.jun.2024 om 05:33 schreef olcott:
    To understand this analysis requires a sufficient knowledge of >>>>>>>>> the C programming language and what an x86 emulator does.

    Unless every single detail is made 100% explicit false assumptions >>>>>>>>> always slip though the cracks. This is why it must be examined at >>>>>>>>> the C level before it is examined at the Turing Machine level. >>>>>>>>>
    typedef void (*ptr)();
    int H0(ptr P);

    void Infinite_Loop()
    {
       HERE: goto HERE;
    }

    void Infinite_Recursion()
    {
       Infinite_Recursion();
    }

    void DDD()
    {
       H0(DDD);
       return;
    }

    int main()
    {
       H0(Infinite_Loop);
       H0(Infinite_Recursion);
       H0(DDD);
    }

    Every C programmer that knows what an x86 emulator is knows
    that when H0
    emulates the machine language of Infinite_Loop,
    Infinite_Recursion, and
    DDD that it must abort these emulations so that itself can
    terminate
    normally.

    When this is construed as non-halting criteria then simulating >>>>>>>>> termination analyzer H0 is correct to reject these inputs as non- >>>>>>>>> halting.


    For Infinite_Loop and Infinite_Recursion that might be true,
    because there the simulator processes the whole input.

    The H0 case is very different. For H0 there is indeed a false
    assumption, as you mentioned. Here H0 needs to simulate itself, >>>>>>>> but the simulation is never able to reach the final state of the >>>>>>>> simulated self. The abort is always one cycle too early, so that >>>>>>>> the simulating H0 misses the abort. Therefore this results in a >>>>>>>> false negative.
    (Note that H0 should process its input, which includes the H0
    that aborts, not a non-input with an H that does not abort.)

    This results in a impossible dilemma for the programmer. It he >>>>>>>> creates a H that does not abort, it will not terminate.

    *Therefore what I said is correct*
    When every input that must be aborted is construed as non-halting >>>>>>> then the input to H0(DDD) is correctly construed as non-halting.

    In other words, if you allow yourself to LIE, you can claim the
    wrong answer is right.

    Since your "Needing to abort" is NOT the same as halting, all you
    are doing is admitting that your whole logic system is based on
    the principle that LIES ARE OK.


    "Needing to abort" <is> the same as a NOT halting input.
    You are simply too ignorant to understand this.


    Nope, not if you are comparing DIFFERENT version of the input.

    It is ALWAYS the exact same sequence of bytes.

    But if it doesn't include the bytes of H,

    It is like we know that N > 50 and you can't
    see that this also means N > 40.


    Nope.

    How do you simulate something you do not have?

    That is like says when the requirement is for N > 50 that you claim 1 is
    ok, because 50 can be 5*0 just like xy is x*y.

    Again, how can you claim a "Correct Simulation" by the exact definition
    of the x86 instruction set, when you omit the call H instruction, and
    then "jump" to an addres that was never jumped to at any point later in
    the program.

    It is just a DAMNED LIE.

    --- SoupGate-Win32 v1.05
    * Origin: fsxNet Usenet Gateway (21:1/5)
  • From Richard Damon@21:1/5 to olcott on Mon Jun 17 23:15:04 2024
    XPost: sci.logic

    On 6/17/24 11:01 PM, olcott wrote:
    On 6/17/2024 9:44 PM, Richard Damon wrote:
    On 6/17/24 10:36 PM, olcott wrote:
    On 6/17/2024 9:33 PM, Richard Damon wrote:
    On 6/17/24 10:04 PM, olcott wrote:
    On 6/17/2024 8:24 PM, Richard Damon wrote:
    On 6/17/24 9:16 PM, olcott wrote:
    On 6/17/2024 5:42 PM, Richard Damon wrote:
    On 6/17/24 8:20 AM, olcott wrote:
    On 6/17/2024 3:31 AM, Fred. Zwarts wrote:
    Op 17.jun.2024 om 05:33 schreef olcott:
    To understand this analysis requires a sufficient knowledge of >>>>>>>>>>> the C programming language and what an x86 emulator does. >>>>>>>>>>>
    Unless every single detail is made 100% explicit false
    assumptions
    always slip though the cracks. This is why it must be
    examined at
    the C level before it is examined at the Turing Machine level. >>>>>>>>>>>
    typedef void (*ptr)();
    int H0(ptr P);

    void Infinite_Loop()
    {
       HERE: goto HERE;
    }

    void Infinite_Recursion()
    {
       Infinite_Recursion();
    }

    void DDD()
    {
       H0(DDD);
       return;
    }

    int main()
    {
       H0(Infinite_Loop);
       H0(Infinite_Recursion);
       H0(DDD);
    }

    Every C programmer that knows what an x86 emulator is knows >>>>>>>>>>> that when H0
    emulates the machine language of Infinite_Loop,
    Infinite_Recursion, and
    DDD that it must abort these emulations so that itself can >>>>>>>>>>> terminate
    normally.

    When this is construed as non-halting criteria then simulating >>>>>>>>>>> termination analyzer H0 is correct to reject these inputs as >>>>>>>>>>> non-
    halting.


    For Infinite_Loop and Infinite_Recursion that might be true, >>>>>>>>>> because there the simulator processes the whole input.

    The H0 case is very different. For H0 there is indeed a false >>>>>>>>>> assumption, as you mentioned. Here H0 needs to simulate
    itself, but the simulation is never able to reach the final >>>>>>>>>> state of the simulated self. The abort is always one cycle too >>>>>>>>>> early, so that the simulating H0 misses the abort. Therefore >>>>>>>>>> this results in a false negative.
    (Note that H0 should process its input, which includes the H0 >>>>>>>>>> that aborts, not a non-input with an H that does not abort.) >>>>>>>>>>
    This results in a impossible dilemma for the programmer. It he >>>>>>>>>> creates a H that does not abort, it will not terminate.

    *Therefore what I said is correct*
    When every input that must be aborted is construed as non-halting >>>>>>>>> then the input to H0(DDD) is correctly construed as non-halting. >>>>>>>>
    In other words, if you allow yourself to LIE, you can claim the >>>>>>>> wrong answer is right.

    Since your "Needing to abort" is NOT the same as halting, all
    you are doing is admitting that your whole logic system is based >>>>>>>> on the principle that LIES ARE OK.


    "Needing to abort" <is> the same as a NOT halting input.
    You are simply too ignorant to understand this.


    Nope, not if you are comparing DIFFERENT version of the input.

    It is ALWAYS the exact same sequence of bytes.

    But if it doesn't include the bytes of H,

    It is like we know that N > 50 and you can't
    see that this also means N > 40.


    Nope.

    How do you simulate something you do not have?

    That is like says when the requirement is for N > 50 that you claim 1
    is ok, because 50 can be 5*0 just like xy is x*y.

    Again, how can you claim a "Correct Simulation" by the exact
    definition of the x86 instruction set, when you omit the call H
    instruction, and then "jump" to an addres that was never jumped to at
    any point later in the program.


    You just aren't bright enough to see simple truths that
    every programmer can see.

    void DDD()
    {
      H0(DDD);
    }

    DDD correctly simulated by any H0 cannot possibly halt.
    That this truth is so simple lead me to believe that
    you were lying about it instead of ordinary cluelessness.



    But the question isn't DDD correctly simulated by H0, but does DDD
    itself, when run halt.

    You have been stuck on the wrong question for ages, because you just
    belive your own lies, and think you are allowed to change the
    definitions of terms.

    Do that just makes you a LIAR, and so that is what you are.

    You have been told this many times, but you think that just because the definitions don't let you do something you think you should you get to
    CHEAT and change things.

    It doesn't.

    If you show an ACTUAL PROBLEM that people agree is a problem that breaks
    the logic system, like Russel's set of all sets that don't contain
    themselves just broke Naive Set Theory, then perhaps people might be
    interested in an alternate form of computation theory.

    Just the fact that you think there is something wrong with the fact that Halting is not computable, isn't that sort of error, as the whole point
    of Computation Theory is to find out which Functions (aka maps) are
    computable and which are not.

    It is KNOWN that many maps are not computable, in fact it turns out that
    almost all arbitrary maps are not computable. In one sense, it is a bit surprizing that so many of the maps we want to look at are computable.
    But that turns out to be that a lot of the problems we want to look at
    have enough structure that they happen to be computable.

    --- SoupGate-Win32 v1.05
    * Origin: fsxNet Usenet Gateway (21:1/5)
  • From Fred. Zwarts@21:1/5 to All on Tue Jun 18 09:57:05 2024
    XPost: sci.logic

    Op 17.jun.2024 om 17:56 schreef olcott:
    On 6/17/2024 9:49 AM, Fred. Zwarts wrote:
    Op 17.jun.2024 om 16:34 schreef olcott:
    On 6/17/2024 9:18 AM, Fred. Zwarts wrote:
    Op 17.jun.2024 om 15:47 schreef olcott:
    On 6/17/2024 8:30 AM, Fred. Zwarts wrote:
    Op 17.jun.2024 om 14:20 schreef olcott:
    On 6/17/2024 3:31 AM, Fred. Zwarts wrote:
    Op 17.jun.2024 om 05:33 schreef olcott:
    To understand this analysis requires a sufficient knowledge of >>>>>>>>> the C programming language and what an x86 emulator does.

    Unless every single detail is made 100% explicit false assumptions >>>>>>>>> always slip though the cracks. This is why it must be examined at >>>>>>>>> the C level before it is examined at the Turing Machine level. >>>>>>>>>
    typedef void (*ptr)();
    int H0(ptr P);

    void Infinite_Loop()
    {
       HERE: goto HERE;
    }

    void Infinite_Recursion()
    {
       Infinite_Recursion();
    }

    void DDD()
    {
       H0(DDD);
       return;
    }

    int main()
    {
       H0(Infinite_Loop);
       H0(Infinite_Recursion);
       H0(DDD);
    }

    Every C programmer that knows what an x86 emulator is knows
    that when H0
    emulates the machine language of Infinite_Loop,
    Infinite_Recursion, and
    DDD that it must abort these emulations so that itself can
    terminate
    normally.

    When this is construed as non-halting criteria then simulating >>>>>>>>> termination analyzer H0 is correct to reject these inputs as non- >>>>>>>>> halting.


    For Infinite_Loop and Infinite_Recursion that might be true,
    because there the simulator processes the whole input.

    The H0 case is very different. For H0 there is indeed a false
    assumption, as you mentioned. Here H0 needs to simulate itself, >>>>>>>> but the simulation is never able to reach the final state of the >>>>>>>> simulated self. The abort is always one cycle too early, so that >>>>>>>> the simulating H0 misses the abort. Therefore this results in a >>>>>>>> false negative.
    (Note that H0 should process its input, which includes the H0
    that aborts, not a non-input with an H that does not abort.)

    This results in a impossible dilemma for the programmer. It he >>>>>>>> creates a H that does not abort, it will not terminate.

    *Therefore what I said is correct*

    No, that is not a logical conclusion.

    Every C programmer that knows what an x86 emulator is knows
    that when H0 emulates the machine language of Infinite_Loop,
    Infinite_Recursion, and DDD that it must abort these emulations
    so that itself can terminate normally.

    That might be correct.

    When this is construed as non-halting criteria then simulating
    termination analyzer H0 is correct to reject these inputs as non-
    halting.

    That is wrong. It only shows that H0 is unable to simulate itself.
    It tells nothing about the halting of the input.


    *Too late you have already affirmed the words above*
    Affirming the first part necessitates the second part.

    That is not logical. If a non-aborting program is wrong, it does not
    follow that a program that aborts is correct.
    Please, think before you reply.

    So, I repeat:
    The logical conclusion if both aborting and not aborting result in
    errors, is: a halt-decider cannot be based on such a simulation.

    Your view here is merely ignorant of the fact that deciders
    must report on the behavior specified by their inputs.


    It is incorrect to assume that a failing simulation is able to report
    about its input.
    The simulation fails, because H0 is unable to simulate itself.


    There is no possible way for the call to H0 by DDD
    correctly simulated by any H0 to return to its caller.

    We have not seen a proof for this claim and since H0 has contradictory requirements nobody else has ever provided a proof.
    But OK, lets assume your are right. Simulated H0 is unable to simulate
    itself op to its final state and return to its caller, because it was
    aborted one cycle before it would return to its caller.


    _DDD()
    [00001fd2] 55               push ebp
    [00001fd3] 8bec             mov ebp,esp
    [00001fd5] 68d21f0000       push 00001fd2 ; push address of DDD [00001fda] e8f3f9ffff       call 000019d2 ; call  H0
    [00001fdf] 83c404           add esp,+04
    [00001fe2] 5d               pop ebp
    [00001fe3] c3               ret
    Size in bytes:(0018) [00001fe3]

    *THAT THIS IS OVER YOUR HEAD DOES NOT MEAN THAT I AM INCORRECT*
    DDD correctly simulated by H0 *is* the behavior that
    the finite string of x86 machine code of DDD specifies.


    It is such a simple fact that H0 cannot possibly correct. If it does not
    abort it does not return. If it does abort, it does not see the correct behaviour that was specified in the input, because it aborted its
    simulation one cycle too early to see the behaviour in the input.
    H0 fails to do a correct simulation, because it does not process all of
    its input, but aborts its input before it can process the part of the
    input that also specifies behaviour. The final behaviour specified by
    the input is unreachable for the simulator, because it is unable to
    simulate itself.

    If even such simple facts are over your head, you must be stuck in
    rebuttal mode very deeply.

    --- SoupGate-Win32 v1.05
    * Origin: fsxNet Usenet Gateway (21:1/5)
  • From Python@21:1/5 to All on Tue Jun 18 13:52:16 2024
    XPost: sci.logic

    Le 18/06/2024 à 05:28, olcott a écrit :
    On 6/17/2024 10:15 PM, Richard Damon wrote:
    ...
    *Calling me a liar may get you sent to actual Hell*

    Then you could still argue with him! Is Hell connected to the
    Internet?

    --- SoupGate-Win32 v1.05
    * Origin: fsxNet Usenet Gateway (21:1/5)
  • From Richard Damon@21:1/5 to olcott on Tue Jun 18 07:36:46 2024
    XPost: sci.logic

    On 6/17/24 11:28 PM, olcott wrote:
    On 6/17/2024 10:15 PM, Richard Damon wrote:
    On 6/17/24 11:01 PM, olcott wrote:
    On 6/17/2024 9:44 PM, Richard Damon wrote:
    On 6/17/24 10:36 PM, olcott wrote:
    On 6/17/2024 9:33 PM, Richard Damon wrote:
    On 6/17/24 10:04 PM, olcott wrote:
    On 6/17/2024 8:24 PM, Richard Damon wrote:
    On 6/17/24 9:16 PM, olcott wrote:
    On 6/17/2024 5:42 PM, Richard Damon wrote:
    On 6/17/24 8:20 AM, olcott wrote:
    On 6/17/2024 3:31 AM, Fred. Zwarts wrote:
    Op 17.jun.2024 om 05:33 schreef olcott:
    To understand this analysis requires a sufficient knowledge of >>>>>>>>>>>>> the C programming language and what an x86 emulator does. >>>>>>>>>>>>>
    Unless every single detail is made 100% explicit false >>>>>>>>>>>>> assumptions
    always slip though the cracks. This is why it must be >>>>>>>>>>>>> examined at
    the C level before it is examined at the Turing Machine level. >>>>>>>>>>>>>
    typedef void (*ptr)();
    int H0(ptr P);

    void Infinite_Loop()
    {
       HERE: goto HERE;
    }

    void Infinite_Recursion()
    {
       Infinite_Recursion();
    }

    void DDD()
    {
       H0(DDD);
       return;
    }

    int main()
    {
       H0(Infinite_Loop);
       H0(Infinite_Recursion);
       H0(DDD);
    }

    Every C programmer that knows what an x86 emulator is knows >>>>>>>>>>>>> that when H0
    emulates the machine language of Infinite_Loop,
    Infinite_Recursion, and
    DDD that it must abort these emulations so that itself can >>>>>>>>>>>>> terminate
    normally.

    When this is construed as non-halting criteria then simulating >>>>>>>>>>>>> termination analyzer H0 is correct to reject these inputs >>>>>>>>>>>>> as non-
    halting.


    For Infinite_Loop and Infinite_Recursion that might be true, >>>>>>>>>>>> because there the simulator processes the whole input. >>>>>>>>>>>>
    The H0 case is very different. For H0 there is indeed a >>>>>>>>>>>> false assumption, as you mentioned. Here H0 needs to
    simulate itself, but the simulation is never able to reach >>>>>>>>>>>> the final state of the simulated self. The abort is always >>>>>>>>>>>> one cycle too early, so that the simulating H0 misses the >>>>>>>>>>>> abort. Therefore this results in a false negative.
    (Note that H0 should process its input, which includes the >>>>>>>>>>>> H0 that aborts, not a non-input with an H that does not abort.) >>>>>>>>>>>>
    This results in a impossible dilemma for the programmer. It >>>>>>>>>>>> he creates a H that does not abort, it will not terminate. >>>>>>>>>>>
    *Therefore what I said is correct*
    When every input that must be aborted is construed as
    non-halting
    then the input to H0(DDD) is correctly construed as non-halting. >>>>>>>>>>
    In other words, if you allow yourself to LIE, you can claim >>>>>>>>>> the wrong answer is right.

    Since your "Needing to abort" is NOT the same as halting, all >>>>>>>>>> you are doing is admitting that your whole logic system is >>>>>>>>>> based on the principle that LIES ARE OK.


    "Needing to abort" <is> the same as a NOT halting input.
    You are simply too ignorant to understand this.


    Nope, not if you are comparing DIFFERENT version of the input. >>>>>>>>
    It is ALWAYS the exact same sequence of bytes.

    But if it doesn't include the bytes of H,

    It is like we know that N > 50 and you can't
    see that this also means N > 40.


    Nope.

    How do you simulate something you do not have?

    That is like says when the requirement is for N > 50 that you claim
    1 is ok, because 50 can be 5*0 just like xy is x*y.

    Again, how can you claim a "Correct Simulation" by the exact
    definition of the x86 instruction set, when you omit the call H
    instruction, and then "jump" to an addres that was never jumped to
    at any point later in the program.


    You just aren't bright enough to see simple truths that
    every programmer can see.

    void DDD()
    {
       H0(DDD);
    }

    DDD correctly simulated by any H0 cannot possibly halt.
    That this truth is so simple lead me to believe that
    you were lying about it instead of ordinary cluelessness.



    But the question isn't DDD correctly simulated by H0, but does DDD
    itself, when run halt.


    The proof that you are wrong is over your head.

    That is just a lying Dodge.

    An ad-hominen that tries to avoid showing that you have nothing by
    claiming the other couldn't understand it.

    The problem, as you have demonstrated, is that youj actually don't even
    know the BASICS of the field, so clearly can't have grasps of things
    above all others.




    You have been stuck on the wrong question for ages, because you just
    belive your own lies, and think you are allowed to change the
    definitions of terms.

    No that is not it. I have known the truth for two
    decades and am just now expressing it in words.

    Nope, you have lied to yourself about it for two decades, but can't
    actually show it other, because it isn't true.

    If you had a fundamental flaw that actually broke the system, you could
    just show it.


    If the halting problem is correct then truth itself
    is broken. Since truth itself cannot be broken then
    the halting problem cannot be correct.

    No, truth as YOU think of it is broken, because your idea of Truth is
    just wrong.

    It isn't that everyone else is wrong, it is YOU are wrong, but are too bulheaded to accept it.


    This is all anchored in the details of truthmaker
    maximalism.

    Which, as we just showed, you don't understand.

    Yes, your problem is YOU, and your refusal to actually look at what is
    being shown to you.

    You are worse than the election deniers that you put down.


    Do that just makes you a LIAR, and so that is what you are.


    *Calling me a liar may get you sent to actual Hell*

    Nope, since it is a truth, it isn't a lie.

    Truth seems to be something beyound your understanding since you have
    lied to yourself so long.


    That you have a religious conviction that I am incorrect
    is a bias that prevents you from trying to actually
    understand what I am saying.

    It isn't a "religious" conviction, but a knowledge of how logic actually
    works.


    Perhaps you are too ignorant to understand that bias
    is a systematic error.


    Nope. YOU are just stuck in YOUR bias, as proven by your clearly wrong assertions.

    If you don't see how claiming that an answer that is wrong by definition
    is right is illogical, you are just beyound hope.

    --- SoupGate-Win32 v1.05
    * Origin: fsxNet Usenet Gateway (21:1/5)
  • From Python@21:1/5 to All on Tue Jun 18 14:42:10 2024
    XPost: sci.logic

    Le 18/06/2024 à 14:38, olcott a écrit :
    On 6/18/2024 2:57 AM, Fred. Zwarts wrote:
    ...
    It is such a simple fact that H0 cannot possibly correct.

    Are you pretending to be incompetent about the semantics of the
    x86 language or you you actually incompetent?

    The C people already agreed that I am correct about this:

    Definitely NOT. Given that the following code is not an assertion
    (and does not even compile, as usual with Peter Olcott productions).

    typedef void (*ptr)();
    int H0(ptr P);

    void Infinite_Loop()
    {
      HERE: goto HERE;
    }

    void Infinite_Recursion()
    {
      Infinite_Recursion();
    }

    void DDD()
    {
      H0(DDD);
    }

    int main()
    {
      H0(Infinite_Loop);
      H0(Infinite_Recursion);
      H0(DDD);
    }

    Have you checked weather forecast in Hell as you are likely
    to end up there soon?

    --- SoupGate-Win32 v1.05
    * Origin: fsxNet Usenet Gateway (21:1/5)
  • From Fred. Zwarts@21:1/5 to All on Tue Jun 18 17:20:38 2024
    XPost: sci.logic

    Op 18.jun.2024 om 14:38 schreef olcott:
    On 6/18/2024 2:57 AM, Fred. Zwarts wrote:
    Op 17.jun.2024 om 17:56 schreef olcott:
    On 6/17/2024 9:49 AM, Fred. Zwarts wrote:
    Op 17.jun.2024 om 16:34 schreef olcott:
    On 6/17/2024 9:18 AM, Fred. Zwarts wrote:
    Op 17.jun.2024 om 15:47 schreef olcott:
    On 6/17/2024 8:30 AM, Fred. Zwarts wrote:
    Op 17.jun.2024 om 14:20 schreef olcott:
    On 6/17/2024 3:31 AM, Fred. Zwarts wrote:
    Op 17.jun.2024 om 05:33 schreef olcott:
    To understand this analysis requires a sufficient knowledge of >>>>>>>>>>> the C programming language and what an x86 emulator does. >>>>>>>>>>>
    Unless every single detail is made 100% explicit false
    assumptions
    always slip though the cracks. This is why it must be
    examined at
    the C level before it is examined at the Turing Machine level. >>>>>>>>>>>
    typedef void (*ptr)();
    int H0(ptr P);

    void Infinite_Loop()
    {
       HERE: goto HERE;
    }

    void Infinite_Recursion()
    {
       Infinite_Recursion();
    }

    void DDD()
    {
       H0(DDD);
       return;
    }

    int main()
    {
       H0(Infinite_Loop);
       H0(Infinite_Recursion);
       H0(DDD);
    }

    Every C programmer that knows what an x86 emulator is knows >>>>>>>>>>> that when H0
    emulates the machine language of Infinite_Loop,
    Infinite_Recursion, and
    DDD that it must abort these emulations so that itself can >>>>>>>>>>> terminate
    normally.

    When this is construed as non-halting criteria then simulating >>>>>>>>>>> termination analyzer H0 is correct to reject these inputs as >>>>>>>>>>> non-
    halting.


    For Infinite_Loop and Infinite_Recursion that might be true, >>>>>>>>>> because there the simulator processes the whole input.

    The H0 case is very different. For H0 there is indeed a false >>>>>>>>>> assumption, as you mentioned. Here H0 needs to simulate
    itself, but the simulation is never able to reach the final >>>>>>>>>> state of the simulated self. The abort is always one cycle too >>>>>>>>>> early, so that the simulating H0 misses the abort. Therefore >>>>>>>>>> this results in a false negative.
    (Note that H0 should process its input, which includes the H0 >>>>>>>>>> that aborts, not a non-input with an H that does not abort.) >>>>>>>>>>
    This results in a impossible dilemma for the programmer. It he >>>>>>>>>> creates a H that does not abort, it will not terminate.

    *Therefore what I said is correct*

    No, that is not a logical conclusion.

    Every C programmer that knows what an x86 emulator is knows
    that when H0 emulates the machine language of Infinite_Loop,
    Infinite_Recursion, and DDD that it must abort these emulations
    so that itself can terminate normally.

    That might be correct.

    When this is construed as non-halting criteria then simulating
    termination analyzer H0 is correct to reject these inputs as non- >>>>>>> halting.

    That is wrong. It only shows that H0 is unable to simulate itself. >>>>>> It tells nothing about the halting of the input.


    *Too late you have already affirmed the words above*
    Affirming the first part necessitates the second part.

    That is not logical. If a non-aborting program is wrong, it does
    not follow that a program that aborts is correct.
    Please, think before you reply.

    So, I repeat:
    The logical conclusion if both aborting and not aborting result in >>>>>> errors, is: a halt-decider cannot be based on such a simulation.

    Your view here is merely ignorant of the fact that deciders
    must report on the behavior specified by their inputs.


    It is incorrect to assume that a failing simulation is able to
    report about its input.
    The simulation fails, because H0 is unable to simulate itself.


    There is no possible way for the call to H0 by DDD
    correctly simulated by any H0 to return to its caller.

    We have not seen a proof for this claim and since H0 has contradictory
    requirements nobody else has ever provided a proof.
    But OK, lets assume your are right. Simulated H0 is unable to simulate
    itself op to its final state and return to its caller, because it was
    aborted one cycle before it would return to its caller.


    _DDD()
    [00001fd2] 55               push ebp
    [00001fd3] 8bec             mov ebp,esp
    [00001fd5] 68d21f0000       push 00001fd2 ; push address of DDD
    [00001fda] e8f3f9ffff       call 000019d2 ; call  H0
    [00001fdf] 83c404           add esp,+04
    [00001fe2] 5d               pop ebp
    [00001fe3] c3               ret
    Size in bytes:(0018) [00001fe3]

    *THAT THIS IS OVER YOUR HEAD DOES NOT MEAN THAT I AM INCORRECT*
    DDD correctly simulated by H0 *is* the behavior that
    the finite string of x86 machine code of DDD specifies.


    It is such a simple fact that H0 cannot possibly correct.

    Are you pretending to be incompetent about the semantics of the
    x86 language or you you actually incompetent?

    I understand x86, but I am afraid you don't. Because you assume results
    that are not there.


    The C people already agreed that I am correct about this:

    No serious C people have agreed. They can't, because your H0 has
    contradictory requirements.


    typedef void (*ptr)();
    int H0(ptr P);

    void Infinite_Loop()
    {
      HERE: goto HERE;
    }

    void Infinite_Recursion()
    {
      Infinite_Recursion();
    }

    void DDD()
    {
      H0(DDD);
    }

    int main()
    {
      H0(Infinite_Loop);
      H0(Infinite_Recursion);
      H0(DDD);
    }

    Every C programmer that knows what an x86 emulator is knows that when H0 emulates the machine language of Infinite_Loop, Infinite_Recursion, and
    DDD that it must abort these emulations so that itself can terminate normally.

    You are repeating. It seems difficult for you to escape rebuttal mode.
    It was shown already to you that the first two examples are very
    different from the last one.

    The last one is equivalent to:

    int main()
    {
    return H0(main);
    }

    where your own proved that H reports a false negative. This is the same
    case as DDD.


    When this is construed as non-halting criteria then simulating
    termination analyzer H0 is correct to reject these inputs as non-halting
    by returning 0 to its caller.

    It is incorrect to report the last one as non-halting, because H0 aborts
    one cycle too early, which makes that it misses the fact that the
    simulated self would abort and halt.


    If it does not abort it does not return. If it does abort, it does not
    see the correct behaviour that was specified in the input, because it
    aborted its simulation one cycle too early to see the behaviour in the
    input.
    H0 fails to do a correct simulation, because it does not process all
    of its input, but aborts its input before it can process the part of
    the input that also specifies behaviour. The final behaviour specified
    by the input is unreachable for the simulator, because it is unable to
    simulate itself.

    If even such simple facts are over your head, you must be stuck in
    rebuttal mode very deeply.


    --- SoupGate-Win32 v1.05
    * Origin: fsxNet Usenet Gateway (21:1/5)
  • From Python@21:1/5 to All on Tue Jun 18 17:56:14 2024
    XPost: sci.logic

    Le 18/06/2024 à 17:33, olcott a écrit :
    ...
    It is a verified fact that serious C people have recently
    agreed to the following verbatim statement in the C group.
    You either lack this degree of skill in C or are only
    interested in playing head games.

    http://al.howardknight.net/?STYPE=msgid&MSGI=%3Cv4pg5p%24morv%241%40raubtier-asyl.eternal-september.org%3E+

    The answser (on comp.lang.c,comp.lang.c++) was this single line:

    Everything correct, no further questions allowed.

    You really didn't spot the pun, Peter Olcott? Really? It was
    a obvious one intended to make you stop posting idiotic posts
    there!!! Did it work BTW?

    Oh. My. God. You really are *that* demented?

    --- SoupGate-Win32 v1.05
    * Origin: fsxNet Usenet Gateway (21:1/5)
  • From Fred. Zwarts@21:1/5 to All on Tue Jun 18 17:47:29 2024
    XPost: sci.logic

    Op 18.jun.2024 om 17:33 schreef olcott:
    On 6/18/2024 10:20 AM, Fred. Zwarts wrote:
    Op 18.jun.2024 om 14:38 schreef olcott:
    On 6/18/2024 2:57 AM, Fred. Zwarts wrote:
    Op 17.jun.2024 om 17:56 schreef olcott:
    On 6/17/2024 9:49 AM, Fred. Zwarts wrote:
    Op 17.jun.2024 om 16:34 schreef olcott:
    On 6/17/2024 9:18 AM, Fred. Zwarts wrote:
    Op 17.jun.2024 om 15:47 schreef olcott:
    On 6/17/2024 8:30 AM, Fred. Zwarts wrote:
    Op 17.jun.2024 om 14:20 schreef olcott:
    On 6/17/2024 3:31 AM, Fred. Zwarts wrote:
    Op 17.jun.2024 om 05:33 schreef olcott:
    To understand this analysis requires a sufficient knowledge of >>>>>>>>>>>>> the C programming language and what an x86 emulator does. >>>>>>>>>>>>>
    Unless every single detail is made 100% explicit false >>>>>>>>>>>>> assumptions
    always slip though the cracks. This is why it must be >>>>>>>>>>>>> examined at
    the C level before it is examined at the Turing Machine level. >>>>>>>>>>>>>
    typedef void (*ptr)();
    int H0(ptr P);

    void Infinite_Loop()
    {
       HERE: goto HERE;
    }

    void Infinite_Recursion()
    {
       Infinite_Recursion();
    }

    void DDD()
    {
       H0(DDD);
       return;
    }

    int main()
    {
       H0(Infinite_Loop);
       H0(Infinite_Recursion);
       H0(DDD);
    }

    Every C programmer that knows what an x86 emulator is knows >>>>>>>>>>>>> that when H0
    emulates the machine language of Infinite_Loop,
    Infinite_Recursion, and
    DDD that it must abort these emulations so that itself can >>>>>>>>>>>>> terminate
    normally.

    When this is construed as non-halting criteria then simulating >>>>>>>>>>>>> termination analyzer H0 is correct to reject these inputs >>>>>>>>>>>>> as non-
    halting.


    For Infinite_Loop and Infinite_Recursion that might be true, >>>>>>>>>>>> because there the simulator processes the whole input. >>>>>>>>>>>>
    The H0 case is very different. For H0 there is indeed a >>>>>>>>>>>> false assumption, as you mentioned. Here H0 needs to
    simulate itself, but the simulation is never able to reach >>>>>>>>>>>> the final state of the simulated self. The abort is always >>>>>>>>>>>> one cycle too early, so that the simulating H0 misses the >>>>>>>>>>>> abort. Therefore this results in a false negative.
    (Note that H0 should process its input, which includes the >>>>>>>>>>>> H0 that aborts, not a non-input with an H that does not abort.) >>>>>>>>>>>>
    This results in a impossible dilemma for the programmer. It >>>>>>>>>>>> he creates a H that does not abort, it will not terminate. >>>>>>>>>>>
    *Therefore what I said is correct*

    No, that is not a logical conclusion.

    Every C programmer that knows what an x86 emulator is knows
    that when H0 emulates the machine language of Infinite_Loop, >>>>>>>>> Infinite_Recursion, and DDD that it must abort these emulations >>>>>>>>> so that itself can terminate normally.

    That might be correct.

    When this is construed as non-halting criteria then simulating >>>>>>>>> termination analyzer H0 is correct to reject these inputs as non- >>>>>>>>> halting.

    That is wrong. It only shows that H0 is unable to simulate
    itself. It tells nothing about the halting of the input.


    *Too late you have already affirmed the words above*
    Affirming the first part necessitates the second part.

    That is not logical. If a non-aborting program is wrong, it does >>>>>>>> not follow that a program that aborts is correct.
    Please, think before you reply.

    So, I repeat:
    The logical conclusion if both aborting and not aborting result >>>>>>>> in errors, is: a halt-decider cannot be based on such a simulation. >>>>>>>
    Your view here is merely ignorant of the fact that deciders
    must report on the behavior specified by their inputs.


    It is incorrect to assume that a failing simulation is able to
    report about its input.
    The simulation fails, because H0 is unable to simulate itself.


    There is no possible way for the call to H0 by DDD
    correctly simulated by any H0 to return to its caller.

    We have not seen a proof for this claim and since H0 has
    contradictory requirements nobody else has ever provided a proof.
    But OK, lets assume your are right. Simulated H0 is unable to
    simulate itself op to its final state and return to its caller,
    because it was aborted one cycle before it would return to its caller. >>>>

    _DDD()
    [00001fd2] 55               push ebp
    [00001fd3] 8bec             mov ebp,esp
    [00001fd5] 68d21f0000       push 00001fd2 ; push address of DDD >>>>> [00001fda] e8f3f9ffff       call 000019d2 ; call  H0
    [00001fdf] 83c404           add esp,+04
    [00001fe2] 5d               pop ebp
    [00001fe3] c3               ret
    Size in bytes:(0018) [00001fe3]

    *THAT THIS IS OVER YOUR HEAD DOES NOT MEAN THAT I AM INCORRECT*
    DDD correctly simulated by H0 *is* the behavior that
    the finite string of x86 machine code of DDD specifies.


    It is such a simple fact that H0 cannot possibly correct.

    Are you pretending to be incompetent about the semantics of the
    x86 language or you you actually incompetent?

    I understand x86, but I am afraid you don't. Because you assume
    results that are not there.


    The C people already agreed that I am correct about this:

    No serious C people have agreed. They can't, because your H0 has
    contradictory requirements.


    It is a verified fact that serious C people have recently
    agreed to the following verbatim statement in the C group.
    You either lack this degree of skill in C or are only
    interested in playing head games.

    I have seen the response. It was most certainly not a serious reply.
    But you know apparently to little of C to understand that.
    Probably, because you are unable to escape from rebuttal mode, even if
    the truth is obvious.

    It was your own proof that showed that in

    int main()
    {
    return H(main);
    }


    main halts, whereas H reported non-halting. So, it you were honest you
    would stop claiming that H is correct.


    http://al.howardknight.net/?STYPE=msgid&MSGI=%3Cv4pg5p%24morv%241%40raubtier-asyl.eternal-september.org%3E+

    typedef void (*ptr)();
    int H0(ptr P);

    void Infinite_Loop()
    {
       HERE: goto HERE;
    }

    void Infinite_Recursion()
    {
       Infinite_Recursion();
    }

    void DDD()
    {
       H0(DDD);
    }

    int main()
    {
       H0(Infinite_Loop);
       H0(Infinite_Recursion);
       H0(DDD);
    }

    Every C programmer that knows what an x86 emulator is knows that when H0 >>> emulates the machine language of Infinite_Loop, Infinite_Recursion, and
    DDD that it must abort these emulations so that itself can terminate
    normally.

    You are repeating. It seems difficult for you to escape rebuttal mode.
    It was shown already to you that the first two examples are very
    different from the last one.

    The last one is equivalent to:

            int main()
            {
              return H0(main);
            }

    where your own proved that H reports a false negative. This is the
    same case as DDD.


    When this is construed as non-halting criteria then simulating
    termination analyzer H0 is correct to reject these inputs as non-halting >>> by returning 0 to its caller.

    It is incorrect to report the last one as non-halting, because H0
    aborts one cycle too early, which makes that it misses the fact that
    the simulated self would abort and halt.


    If it does not abort it does not return. If it does abort, it does
    not see the correct behaviour that was specified in the input,
    because it aborted its simulation one cycle too early to see the
    behaviour in the input.
    H0 fails to do a correct simulation, because it does not process all
    of its input, but aborts its input before it can process the part of
    the input that also specifies behaviour. The final behaviour
    specified by the input is unreachable for the simulator, because it
    is unable to simulate itself.

    If even such simple facts are over your head, you must be stuck in
    rebuttal mode very deeply.




    --- SoupGate-Win32 v1.05
    * Origin: fsxNet Usenet Gateway (21:1/5)
  • From Mikko@21:1/5 to olcott on Tue Jun 18 19:21:51 2024
    On 2024-06-17 03:33:50 +0000, olcott said:

    To understand this analysis requires a sufficient knowledge of
    the C programming language and what an x86 emulator does.

    Unless every single detail is made 100% explicit false assumptions
    always slip though the cracks. This is why it must be examined at
    the C level before it is examined at the Turing Machine level.

    typedef void (*ptr)();
    int H0(ptr P);

    void Infinite_Loop()
    {
    HERE: goto HERE;
    }

    void Infinite_Recursion()
    {
    Infinite_Recursion();
    }

    void DDD()
    {
    H0(DDD);
    return;
    }

    int main()
    {
    H0(Infinite_Loop);
    H0(Infinite_Recursion);
    H0(DDD);
    }

    Every C programmer that knows what an x86 emulator is knows that when H0 emulates the machine language of Infinite_Loop, Infinite_Recursion, and
    DDD that it must abort these emulations so that itself can terminate normally.

    When this is construed as non-halting criteria then simulating
    termination analyzer H0 is correct to reject these inputs as non-
    halting.

    The subject line is incorrect. The OP of "Simulating termination analyzers
    for dummies" should tell what a "simulating termination analyzer" is.
    The OP of this thread does not.

    --
    Mikko

    --- SoupGate-Win32 v1.05
    * Origin: fsxNet Usenet Gateway (21:1/5)
  • From Python@21:1/5 to All on Tue Jun 18 18:28:31 2024
    XPost: sci.logic

    Le 18/06/2024 à 18:26, olcott a écrit :
    On 6/18/2024 10:47 AM, Fred. Zwarts wrote:
    Op 18.jun.2024 om 17:33 schreef olcott:
    ...
    I have seen the response. It was most certainly not a serious reply.
    But you know apparently to little of C to understand that.
    Probably, because you are unable to escape from rebuttal mode, even if
    the truth is obvious.


    I have known C since K&R was the standard and met
    Bjarne Stroustrup when he came to our university
    to promote his new C++ programming language.

    This does not prevent you to be an idiot and completely
    off track when it comes to C or C++ programming languages.

    --- SoupGate-Win32 v1.05
    * Origin: fsxNet Usenet Gateway (21:1/5)
  • From Mikko@21:1/5 to olcott on Tue Jun 18 19:37:33 2024
    On 2024-06-18 16:30:46 +0000, olcott said:

    On 6/18/2024 11:21 AM, Mikko wrote:
    On 2024-06-17 03:33:50 +0000, olcott said:

    To understand this analysis requires a sufficient knowledge of
    the C programming language and what an x86 emulator does.

    Unless every single detail is made 100% explicit false assumptions
    always slip though the cracks. This is why it must be examined at
    the C level before it is examined at the Turing Machine level.

    typedef void (*ptr)();
    int H0(ptr P);

    void Infinite_Loop()
    {
       HERE: goto HERE;
    }

    void Infinite_Recursion()
    {
       Infinite_Recursion();
    }

    void DDD()
    {
       H0(DDD);
       return;
    }

    int main()
    {
       H0(Infinite_Loop);
       H0(Infinite_Recursion);
       H0(DDD);
    }

    Every C programmer that knows what an x86 emulator is knows that when H0 >>> emulates the machine language of Infinite_Loop, Infinite_Recursion, and
    DDD that it must abort these emulations so that itself can terminate
    normally.

    When this is construed as non-halting criteria then simulating
    termination analyzer H0 is correct to reject these inputs as non-
    halting.

    The subject line is incorrect. The OP of "Simulating termination analyzers >> for dummies" should tell what a "simulating termination analyzer" is.
    The OP of this thread does not.


    I state the prerequisites if you don't have them
    then you cannot understand. If you have them then
    what I say is self-evidently true.

    What you sais ooes not include what the subject line promised.

    --
    Mikko

    --- SoupGate-Win32 v1.05
    * Origin: fsxNet Usenet Gateway (21:1/5)
  • From Richard Damon@21:1/5 to olcott on Tue Jun 18 22:16:27 2024
    XPost: sci.logic

    On 6/18/24 9:34 AM, olcott wrote:
    On 6/18/2024 7:42 AM, Python wrote:
    Le 18/06/2024 à 14:38, olcott a écrit :
    On 6/18/2024 2:57 AM, Fred. Zwarts wrote:
    ...
    It is such a simple fact that H0 cannot possibly correct.

    Are you pretending to be incompetent about the semantics of the
    x86 language or you you actually incompetent?

    The C people already agreed that I am correct about this:

    Definitely NOT. Given that the following code is not an assertion
    (and does not even compile, as usual with Peter Olcott productions).

    typedef void (*ptr)();
    int H0(ptr P);

    void Infinite_Loop()
    {
       HERE: goto HERE;
    }

    void Infinite_Recursion()
    {
       Infinite_Recursion();
    }

    void DDD()
    {
       H0(DDD);
    }

    int main()
    {
       H0(Infinite_Loop);
       H0(Infinite_Recursion);
       H0(DDD);
    }

    Have you checked weather forecast in Hell as you are likely
    to end up there soon?
    I arranged for weekly meetings on repentance with those
    delegated with the authority to discuss this with me.

    Really? With who did you arange this with?

    My guess it was actually with your lying father.

    I only have three months left before I will be on medicine that
    tends to greatly reduce the levels of several kinds of very
    important blood cells. My POD24 diagnosis means that my cancer
    came back too soon to try chemotherapy again.

    So, you need to get off you dead-end logic, and look at the real truth.


    I went though chemo better than average, I only felt really
    sick for three days. I had to spend three days in the hospital
    three different times because I had a very slight fever of 100.4F
    and very low neutrophil counts, AKA Neutropenia. One of these
    three times I could not eat or sleep at all for three days.

    Validation of POD24 as a robust early clinical end point of
    poor survival in FL from 5225 patients on 13 clinical trials https://pubmed.ncbi.nlm.nih.gov/34614146/


    --- SoupGate-Win32 v1.05
    * Origin: fsxNet Usenet Gateway (21:1/5)
  • From Fred. Zwarts@21:1/5 to All on Wed Jun 19 10:08:59 2024
    XPost: sci.logic

    Op 18.jun.2024 om 18:26 schreef olcott:
    On 6/18/2024 10:47 AM, Fred. Zwarts wrote:
    Op 18.jun.2024 om 17:33 schreef olcott:
    On 6/18/2024 10:20 AM, Fred. Zwarts wrote:

    It is a verified fact that serious C people have recently
    agreed to the following verbatim statement in the C group.

    http://al.howardknight.net/?STYPE=msgid&MSGI=%3Cv4pg5p%24morv%241%40raubtier-asyl.eternal-september.org%3E+

    You either lack this degree of skill in C or are only
    interested in playing head games.

    I have seen the response. It was most certainly not a serious reply.
    But you know apparently to little of C to understand that.
    Probably, because you are unable to escape from rebuttal mode, even if
    the truth is obvious.


    I have known C since K&R was the standard and met
    Bjarne Stroustrup when he came to our university
    to promote his new C++ programming language.

    *You seem to be willfully ignorant*

    It was your own proof that showed that in

            int main()
            {
              return H(main);
            }


    main halts, whereas H reported non-halting. So, it you were honest you
    would stop claiming that H is correct.


    That is merely a more difficult to understand version of this
    same pathological relationship.

    int main()
    {
      Output("Input_Halts = ", HH0(main));
    }

    _main()
    [000020c2] 55         push ebp
    [000020c3] 8bec       mov ebp,esp
    [000020c5] 68c2200000 push 000020c2 ; push main
    [000020ca] e833f4ffff call 00001502 ; call HH0
    [000020cf] 83c404     add esp,+04
    [000020d2] 50         push eax
    [000020d3] 6843070000 push 00000743
    [000020d8] e885e6ffff call 00000762
    [000020dd] 83c408     add esp,+08
    [000020e0] eb04       jmp 000020e6
    [000020e2] 33c0       xor eax,eax
    [000020e4] eb02       jmp 000020e8
    [000020e6] 33c0       xor eax,eax
    [000020e8] 5d         pop ebp
    [000020e9] c3         ret
    Size in bytes:(0040) [000020e9]

     machine   stack     stack     machine    assembly
     address   address   data      code       language
     ========  ========  ========  =========  ============= [000020c2][001036c3][00000000] 55         push ebp [000020c3][001036c3][00000000] 8bec       mov ebp,esp [000020c5][001036bf][000020c2] 68c2200000 push 000020c2 ; push main [000020ca][001036bb][000020cf] e833f4ffff call 00001502 ; call HH0
    New slave_stack at:103767

    Begin Local Halt Decider Simulation   Execution Trace Stored at:11376f [000020c2][0011375f][00113763] 55         push ebp      ; begin main
    [000020c3][0011375f][00113763] 8bec       mov ebp,esp [000020c5][0011375b][000020c2] 68c2200000 push 000020c2 ; push main [000020ca][00113757][000020cf] e833f4ffff call 00001502 ; call HH0
    New slave_stack at:14e18f
    [000020c2][0015e187][0015e18b] 55         push ebp      ; begin main
    [000020c3][0015e187][0015e18b] 8bec       mov ebp,esp [000020c5][0015e183][000020c2] 68c2200000 push 000020c2 ; push main [000020ca][0015e17f][000020cf] e833f4ffff call 00001502 ; call HH0
    Local Halt Decider: Infinite Recursion Detected Simulation Stopped

    [000020cf][001036c3][00000000] 83c404     add esp,+04 [000020d2][001036bf][00000000] 50         push eax [000020d3][001036bb][00000743] 6843070000 push 00000743 [000020d8][001036bb][00000743] e885e6ffff call 00000762
    Input_Halts = 0
    [000020dd][001036c3][00000000] 83c408     add esp,+08 [000020e0][001036c3][00000000] eb04       jmp 000020e6 [000020e6][001036c3][00000000] 33c0       xor eax,eax [000020e8][001036c7][00000018] 5d         pop ebp [000020e9][001036cb][00000000] c3         ret           ; exit main
    Number of Instructions Executed(10070) == 150 Pages


    It is easier to understand because a print statement was added.
    You proved that it halts, but H0 reports non-halting.
    So, it produces a false negative.
    So, now it has been proved that H, H0, etc produce false negatives, when
    used to determine halting behaviour, please, stop to call them
    halt-deciders, or termination-deciders.
    They might be "simulation deciders". When returning true, the simulation
    was correct, when false, the full simulation was not possible.

    --- SoupGate-Win32 v1.05
    * Origin: fsxNet Usenet Gateway (21:1/5)
  • From Mikko@21:1/5 to olcott on Wed Jun 19 12:30:06 2024
    On 2024-06-18 16:45:42 +0000, olcott said:

    On 6/18/2024 11:37 AM, Mikko wrote:
    On 2024-06-18 16:30:46 +0000, olcott said:

    On 6/18/2024 11:21 AM, Mikko wrote:
    On 2024-06-17 03:33:50 +0000, olcott said:

    To understand this analysis requires a sufficient knowledge of
    the C programming language and what an x86 emulator does.

    Unless every single detail is made 100% explicit false assumptions
    always slip though the cracks. This is why it must be examined at
    the C level before it is examined at the Turing Machine level.

    typedef void (*ptr)();
    int H0(ptr P);

    void Infinite_Loop()
    {
       HERE: goto HERE;
    }

    void Infinite_Recursion()
    {
       Infinite_Recursion();
    }

    void DDD()
    {
       H0(DDD);
       return;
    }

    int main()
    {
       H0(Infinite_Loop);
       H0(Infinite_Recursion);
       H0(DDD);
    }

    Every C programmer that knows what an x86 emulator is knows that when H0 >>>>> emulates the machine language of Infinite_Loop, Infinite_Recursion, and >>>>> DDD that it must abort these emulations so that itself can terminate >>>>> normally.

    When this is construed as non-halting criteria then simulating
    termination analyzer H0 is correct to reject these inputs as non-
    halting.

    The subject line is incorrect. The OP of "Simulating termination analyzers >>>> for dummies" should tell what a "simulating termination analyzer" is.
    The OP of this thread does not.


    I state the prerequisites if you don't have them
    then you cannot understand. If you have them then
    what I say is self-evidently true.

    What you sais ooes not include what the subject line promised.


    If all that you know is C and what and x86 emulator does
    then you do obtain the gist of what a simulating termination
    and analyzer does.

    I am not in your target audience (dummies who have good knowledge
    of C and x86 emulator) so what I know or understand is outside of
    the scope of this discussion.

    Because most people only glance at a couple of my words before
    forming their rebuttal I had to make it overly concise.

    If there is an error in those couple of words then there is no
    need to discuss the rest.

    --
    Mikko

    --- SoupGate-Win32 v1.05
    * Origin: fsxNet Usenet Gateway (21:1/5)
  • From Fred. Zwarts@21:1/5 to All on Wed Jun 19 15:56:55 2024
    XPost: sci.logic

    Op 19.jun.2024 om 15:00 schreef olcott:
    On 6/19/2024 3:08 AM, Fred. Zwarts wrote:
    Op 18.jun.2024 om 18:26 schreef olcott:
    On 6/18/2024 10:47 AM, Fred. Zwarts wrote:
    Op 18.jun.2024 om 17:33 schreef olcott:
    On 6/18/2024 10:20 AM, Fred. Zwarts wrote:

    It is a verified fact that serious C people have recently
    agreed to the following verbatim statement in the C group.

    http://al.howardknight.net/?STYPE=msgid&MSGI=%3Cv4pg5p%24morv%241%40raubtier-asyl.eternal-september.org%3E+

    You either lack this degree of skill in C or are only
    interested in playing head games.

    I have seen the response. It was most certainly not a serious reply.
    But you know apparently to little of C to understand that.
    Probably, because you are unable to escape from rebuttal mode, even
    if the truth is obvious.


    I have known C since K&R was the standard and met
    Bjarne Stroustrup when he came to our university
    to promote his new C++ programming language.

    *You seem to be willfully ignorant*

    It was your own proof that showed that in

            int main()
            {
              return H(main);
            }


    main halts, whereas H reported non-halting. So, it you were honest
    you would stop claiming that H is correct.


    That is merely a more difficult to understand version of this
    same pathological relationship.

    int main()
    {
       Output("Input_Halts = ", HH0(main));
    }

    _main()
    [000020c2] 55         push ebp
    [000020c3] 8bec       mov ebp,esp
    [000020c5] 68c2200000 push 000020c2 ; push main
    [000020ca] e833f4ffff call 00001502 ; call HH0
    [000020cf] 83c404     add esp,+04
    [000020d2] 50         push eax
    [000020d3] 6843070000 push 00000743
    [000020d8] e885e6ffff call 00000762
    [000020dd] 83c408     add esp,+08
    [000020e0] eb04       jmp 000020e6
    [000020e2] 33c0       xor eax,eax
    [000020e4] eb02       jmp 000020e8
    [000020e6] 33c0       xor eax,eax
    [000020e8] 5d         pop ebp
    [000020e9] c3         ret
    Size in bytes:(0040) [000020e9]

      machine   stack     stack     machine    assembly
      address   address   data      code       language
      ========  ========  ========  =========  =============
    [000020c2][001036c3][00000000] 55         push ebp
    [000020c3][001036c3][00000000] 8bec       mov ebp,esp
    [000020c5][001036bf][000020c2] 68c2200000 push 000020c2 ; push main
    [000020ca][001036bb][000020cf] e833f4ffff call 00001502 ; call HH0
    New slave_stack at:103767

    Begin Local Halt Decider Simulation   Execution Trace Stored at:11376f >>> [000020c2][0011375f][00113763] 55         push ebp      ; begin main
    [000020c3][0011375f][00113763] 8bec       mov ebp,esp
    [000020c5][0011375b][000020c2] 68c2200000 push 000020c2 ; push main
    [000020ca][00113757][000020cf] e833f4ffff call 00001502 ; call HH0
    New slave_stack at:14e18f
    [000020c2][0015e187][0015e18b] 55         push ebp      ; begin main
    [000020c3][0015e187][0015e18b] 8bec       mov ebp,esp
    [000020c5][0015e183][000020c2] 68c2200000 push 000020c2 ; push main
    [000020ca][0015e17f][000020cf] e833f4ffff call 00001502 ; call HH0
    Local Halt Decider: Infinite Recursion Detected Simulation Stopped

    [000020cf][001036c3][00000000] 83c404     add esp,+04
    [000020d2][001036bf][00000000] 50         push eax
    [000020d3][001036bb][00000743] 6843070000 push 00000743
    [000020d8][001036bb][00000743] e885e6ffff call 00000762
    Input_Halts = 0
    [000020dd][001036c3][00000000] 83c408     add esp,+08
    [000020e0][001036c3][00000000] eb04       jmp 000020e6
    [000020e6][001036c3][00000000] 33c0       xor eax,eax
    [000020e8][001036c7][00000018] 5d         pop ebp
    [000020e9][001036cb][00000000] c3         ret           ; exit main
    Number of Instructions Executed(10070) == 150 Pages


    It is easier to understand because a print statement was added.
    You proved that it halts, but H0 reports non-halting.
    So, it produces a false negative.
    So, now it has been proved that H, H0, etc produce false negatives,
    when used to determine halting behaviour, please, stop to call them
    halt-deciders, or termination-deciders.
    They might be "simulation deciders". When returning true, the
    simulation was correct, when false, the full simulation was not possible.

    I don't want to discuss your screwy example because I
    can't use screwy examples in my paper.

    void DDD()
    {
      H0(DDD);
    }

    _DDD()
    [000020a2] 55         push ebp      ; housekeeping
    [000020a3] 8bec       mov ebp,esp   ; housekeeping
    [000020a5] 68a2200000 push 000020a2 ; push DDD
    [000020aa] e8f3f9ffff call 00001aa2 ; call H0
    [000020af] 83c404     add esp,+04   ; housekeeping
    [000020b2] 5d         pop ebp       ; housekeeping
    [000020b3] c3         ret           ; never gets here
    Size in bytes:(0018) [000020b3]

    Exactly which step of DDD emulated by H0 was emulated
    incorrectly such that this emulation would be complete?
    AKA DDD emulated by H0 reaches machine address [000020b3]


    Yes, that is your attitude. An example that proves you are wrong are
    called 'screwy'. You prefer more complex examples, for which you can
    easier hide the essential details.

    Similarly, it has been pointed out to you many times that your
    simulation fails with the call instruction at 000020aa. H0 is required
    to halt, but the simulator fails to simulate the 'ret' instruction of H0.
    The simulated H0 is aborted one cycle before it would reach its 'ret' instruction, after which the simulation would proceed with 000020af.
    Your problem is that H0 (or any other simulator you have shown) is able
    to simulate itself up to its simulated 'ret'.
    It seem that you know it, because you never denied it.
    This simple fact seems already to be over your head, so, you prefer to
    ignore or to forget it and just repeat the baseless claim.

    --- SoupGate-Win32 v1.05
    * Origin: fsxNet Usenet Gateway (21:1/5)
  • From Fred. Zwarts@21:1/5 to All on Wed Jun 19 17:47:04 2024
    XPost: sci.logic

    Op 19.jun.2024 om 17:01 schreef olcott:
    On 6/19/2024 8:56 AM, Fred. Zwarts wrote:
    Op 19.jun.2024 om 15:00 schreef olcott:
    On 6/19/2024 3:08 AM, Fred. Zwarts wrote:
    Op 18.jun.2024 om 18:26 schreef olcott:
    On 6/18/2024 10:47 AM, Fred. Zwarts wrote:
    Op 18.jun.2024 om 17:33 schreef olcott:
    On 6/18/2024 10:20 AM, Fred. Zwarts wrote:

    It is a verified fact that serious C people have recently
    agreed to the following verbatim statement in the C group.

    http://al.howardknight.net/?STYPE=msgid&MSGI=%3Cv4pg5p%24morv%241%40raubtier-asyl.eternal-september.org%3E+

    You either lack this degree of skill in C or are only
    interested in playing head games.

    I have seen the response. It was most certainly not a serious reply. >>>>>> But you know apparently to little of C to understand that.
    Probably, because you are unable to escape from rebuttal mode,
    even if the truth is obvious.


    I have known C since K&R was the standard and met
    Bjarne Stroustrup when he came to our university
    to promote his new C++ programming language.

    *You seem to be willfully ignorant*

    It was your own proof that showed that in

            int main()
            {
              return H(main);
            }


    main halts, whereas H reported non-halting. So, it you were honest >>>>>> you would stop claiming that H is correct.


    That is merely a more difficult to understand version of this
    same pathological relationship.

    int main()
    {
       Output("Input_Halts = ", HH0(main));
    }

    _main()
    [000020c2] 55         push ebp
    [000020c3] 8bec       mov ebp,esp
    [000020c5] 68c2200000 push 000020c2 ; push main
    [000020ca] e833f4ffff call 00001502 ; call HH0
    [000020cf] 83c404     add esp,+04
    [000020d2] 50         push eax
    [000020d3] 6843070000 push 00000743
    [000020d8] e885e6ffff call 00000762
    [000020dd] 83c408     add esp,+08
    [000020e0] eb04       jmp 000020e6
    [000020e2] 33c0       xor eax,eax
    [000020e4] eb02       jmp 000020e8
    [000020e6] 33c0       xor eax,eax
    [000020e8] 5d         pop ebp
    [000020e9] c3         ret
    Size in bytes:(0040) [000020e9]

      machine   stack     stack     machine    assembly
      address   address   data      code       language >>>>>   ========  ========  ========  =========  =============
    [000020c2][001036c3][00000000] 55         push ebp
    [000020c3][001036c3][00000000] 8bec       mov ebp,esp
    [000020c5][001036bf][000020c2] 68c2200000 push 000020c2 ; push main
    [000020ca][001036bb][000020cf] e833f4ffff call 00001502 ; call HH0
    New slave_stack at:103767

    Begin Local Halt Decider Simulation   Execution Trace Stored at:11376f >>>>> [000020c2][0011375f][00113763] 55         push ebp      ; begin main
    [000020c3][0011375f][00113763] 8bec       mov ebp,esp
    [000020c5][0011375b][000020c2] 68c2200000 push 000020c2 ; push main
    [000020ca][00113757][000020cf] e833f4ffff call 00001502 ; call HH0
    New slave_stack at:14e18f
    [000020c2][0015e187][0015e18b] 55         push ebp      ; begin main
    [000020c3][0015e187][0015e18b] 8bec       mov ebp,esp
    [000020c5][0015e183][000020c2] 68c2200000 push 000020c2 ; push main
    [000020ca][0015e17f][000020cf] e833f4ffff call 00001502 ; call HH0
    Local Halt Decider: Infinite Recursion Detected Simulation Stopped

    [000020cf][001036c3][00000000] 83c404     add esp,+04
    [000020d2][001036bf][00000000] 50         push eax
    [000020d3][001036bb][00000743] 6843070000 push 00000743
    [000020d8][001036bb][00000743] e885e6ffff call 00000762
    Input_Halts = 0
    [000020dd][001036c3][00000000] 83c408     add esp,+08
    [000020e0][001036c3][00000000] eb04       jmp 000020e6
    [000020e6][001036c3][00000000] 33c0       xor eax,eax
    [000020e8][001036c7][00000018] 5d         pop ebp
    [000020e9][001036cb][00000000] c3         ret           ; exit main
    Number of Instructions Executed(10070) == 150 Pages


    It is easier to understand because a print statement was added.
    You proved that it halts, but H0 reports non-halting.
    So, it produces a false negative.
    So, now it has been proved that H, H0, etc produce false negatives,
    when used to determine halting behaviour, please, stop to call them
    halt-deciders, or termination-deciders.
    They might be "simulation deciders". When returning true, the
    simulation was correct, when false, the full simulation was not
    possible.

    I don't want to discuss your screwy example because I
    can't use screwy examples in my paper.

    void DDD()
    {
       H0(DDD);
    }

    _DDD()
    [000020a2] 55         push ebp      ; housekeeping
    [000020a3] 8bec       mov ebp,esp   ; housekeeping
    [000020a5] 68a2200000 push 000020a2 ; push DDD
    [000020aa] e8f3f9ffff call 00001aa2 ; call H0
    [000020af] 83c404     add esp,+04   ; housekeeping
    [000020b2] 5d         pop ebp       ; housekeeping
    [000020b3] c3         ret           ; never gets here
    Size in bytes:(0018) [000020b3]

    Exactly which step of DDD emulated by H0 was emulated
    incorrectly such that this emulation would be complete?
    AKA DDD emulated by H0 reaches machine address [000020b3]


    Yes, that is your attitude. An example that proves you are wrong are
    called 'screwy'. You prefer more complex examples, for which you can
    easier hide the essential details.


    void DDD()
    {
      HH0(DDD);
    }

    int main()
    {
      HH0(DDD);
    }

    _DDD()
    [00002093] 55         push ebp
    [00002094] 8bec       mov ebp,esp
    [00002096] 6893200000 push 00002093 ; push DDD
    [0000209b] e853f4ffff call 000014f3 ; call HH0
    [000020a0] 83c404     add esp,+04
    [000020a3] 5d         pop ebp
    [000020a4] c3         ret
    Size in bytes:(0018) [000020a4]

    _main()
    [000020b3] 55         push ebp
    [000020b4] 8bec       mov ebp,esp
    [000020b6] 6893200000 push 00002093 ; push DDD
    [000020bb] e833f4ffff call 000014f3 ; call HH0
    [000020c0] 83c404     add esp,+04
    [000020c3] eb04       jmp 000020c9
    [000020c5] 33c0       xor eax,eax
    [000020c7] eb02       jmp 000020cb
    [000020c9] 33c0       xor eax,eax
    [000020cb] 5d         pop ebp
    [000020cc] c3         ret
    Size in bytes:(0026) [000020cc]

     machine   stack     stack     machine    assembly
     address   address   data      code       language
     ========  ========  ========  =========  ============= [000020b3][00103680][00000000] 55         push ebp      ; begin main
    [000020b4][00103680][00000000] 8bec       mov ebp,esp [000020b6][0010367c][00002093] 6893200000 push 00002093 ; push DDD [000020bb][00103678][000020c0] e833f4ffff call 000014f3 ; call HH0
    New slave_stack at:103724

    Begin Local Halt Decider Simulation   Execution Trace Stored at:11372c [00002093][0011371c][00113720] 55         push ebp      ; begin DDD
    [00002094][0011371c][00113720] 8bec       mov ebp,esp [00002096][00113718][00002093] 6893200000 push 00002093 ; push DDD [0000209b][00113714][000020a0] e853f4ffff call 000014f3 ; call HH0

    That call right there to HH0 is fully simulated by the directly
    executed HH0 and the 150 pages of steps are not displayed so that
    the next four steps of DDD correctly simulated by the correctly
    simulated HH0 can be clearly seen and not mixed into the 150 pages
    of the instructions of the simulated HH0.

    New slave_stack at:14e14c
    [00002093][0015e144][0015e148] 55         push ebp      ; begin DDD
    [00002094][0015e144][0015e148] 8bec       mov ebp,esp [00002096][0015e140][00002093] 6893200000 push 00002093 ; push DDD [0000209b][0015e13c][000020a0] e853f4ffff call 000014f3 ; call HH0
    Local Halt Decider: Infinite Recursion Detected Simulation Stopped

    [000020c0][00103680][00000000] 83c404     add esp,+04   ; return to main
    [000020c3][00103680][00000000] eb04       jmp 000020c9 [000020c9][00103680][00000000] 33c0       xor eax,eax [000020cb][00103684][00000018] 5d         pop ebp [000020cc][00103688][00000000] c3         ret           ; end main
    Number of Instructions Executed(10067) == 150 Pages

    Exactly what I said. Ignore simple proofs like:

    int main()
    {
    return H(main, 0);
    }

    For which you proved that it reports a false negative.

    You prefer more complex examples, for which you can easier hide the
    essential details. But even your more complex example is simply a false negative.
    We still do not see the 'ret' instruction of the simulated HH0, even
    though HH0 is required to halt.
    It assumes an infinite recursion, although one cycle later the simulated
    HH0 would also halt, because it runs only one cycle behind the
    simulating HH0. Thus: a false negative.
    The abort is premature. That is to be expected, because a simulator is
    unable to simulate itself up to the end.

    --- SoupGate-Win32 v1.05
    * Origin: fsxNet Usenet Gateway (21:1/5)
  • From joes@21:1/5 to All on Wed Jun 19 17:45:49 2024
    Am Wed, 19 Jun 2024 08:47:17 -0500 schrieb olcott:
    On 6/19/2024 4:30 AM, Mikko wrote:
    On 2024-06-18 16:45:42 +0000, olcott said:
    On 6/18/2024 11:37 AM, Mikko wrote:
    On 2024-06-18 16:30:46 +0000, olcott said:
    On 6/18/2024 11:21 AM, Mikko wrote:
    On 2024-06-17 03:33:50 +0000, olcott said:

    The subject line is incorrect. The OP of "Simulating termination
    analyzers for dummies" should tell what a "simulating termination
    analyzer" is.
    The OP of this thread does not.
    I state the prerequisites if you don't have them then you cannot
    understand. If you have them then what I say is self-evidently true.
    What do you call this, argument from obscurity? You should explain better.


    --
    joes

    --- SoupGate-Win32 v1.05
    * Origin: fsxNet Usenet Gateway (21:1/5)
  • From Richard Damon@21:1/5 to olcott on Wed Jun 19 20:23:57 2024
    XPost: sci.logic

    On 6/19/24 9:00 AM, olcott wrote:
    On 6/19/2024 3:08 AM, Fred. Zwarts wrote:
    Op 18.jun.2024 om 18:26 schreef olcott:
    On 6/18/2024 10:47 AM, Fred. Zwarts wrote:
    Op 18.jun.2024 om 17:33 schreef olcott:
    On 6/18/2024 10:20 AM, Fred. Zwarts wrote:

    It is a verified fact that serious C people have recently
    agreed to the following verbatim statement in the C group.

    http://al.howardknight.net/?STYPE=msgid&MSGI=%3Cv4pg5p%24morv%241%40raubtier-asyl.eternal-september.org%3E+

    You either lack this degree of skill in C or are only
    interested in playing head games.

    I have seen the response. It was most certainly not a serious reply.
    But you know apparently to little of C to understand that.
    Probably, because you are unable to escape from rebuttal mode, even
    if the truth is obvious.


    I have known C since K&R was the standard and met
    Bjarne Stroustrup when he came to our university
    to promote his new C++ programming language.

    *You seem to be willfully ignorant*

    It was your own proof that showed that in

            int main()
            {
              return H(main);
            }


    main halts, whereas H reported non-halting. So, it you were honest
    you would stop claiming that H is correct.


    That is merely a more difficult to understand version of this
    same pathological relationship.

    int main()
    {
       Output("Input_Halts = ", HH0(main));
    }

    _main()
    [000020c2] 55         push ebp
    [000020c3] 8bec       mov ebp,esp
    [000020c5] 68c2200000 push 000020c2 ; push main
    [000020ca] e833f4ffff call 00001502 ; call HH0
    [000020cf] 83c404     add esp,+04
    [000020d2] 50         push eax
    [000020d3] 6843070000 push 00000743
    [000020d8] e885e6ffff call 00000762
    [000020dd] 83c408     add esp,+08
    [000020e0] eb04       jmp 000020e6
    [000020e2] 33c0       xor eax,eax
    [000020e4] eb02       jmp 000020e8
    [000020e6] 33c0       xor eax,eax
    [000020e8] 5d         pop ebp
    [000020e9] c3         ret
    Size in bytes:(0040) [000020e9]

      machine   stack     stack     machine    assembly
      address   address   data      code       language
      ========  ========  ========  =========  =============
    [000020c2][001036c3][00000000] 55         push ebp
    [000020c3][001036c3][00000000] 8bec       mov ebp,esp
    [000020c5][001036bf][000020c2] 68c2200000 push 000020c2 ; push main
    [000020ca][001036bb][000020cf] e833f4ffff call 00001502 ; call HH0
    New slave_stack at:103767

    Begin Local Halt Decider Simulation   Execution Trace Stored at:11376f >>> [000020c2][0011375f][00113763] 55         push ebp      ; begin main
    [000020c3][0011375f][00113763] 8bec       mov ebp,esp
    [000020c5][0011375b][000020c2] 68c2200000 push 000020c2 ; push main
    [000020ca][00113757][000020cf] e833f4ffff call 00001502 ; call HH0
    New slave_stack at:14e18f
    [000020c2][0015e187][0015e18b] 55         push ebp      ; begin main
    [000020c3][0015e187][0015e18b] 8bec       mov ebp,esp
    [000020c5][0015e183][000020c2] 68c2200000 push 000020c2 ; push main
    [000020ca][0015e17f][000020cf] e833f4ffff call 00001502 ; call HH0
    Local Halt Decider: Infinite Recursion Detected Simulation Stopped

    [000020cf][001036c3][00000000] 83c404     add esp,+04
    [000020d2][001036bf][00000000] 50         push eax
    [000020d3][001036bb][00000743] 6843070000 push 00000743
    [000020d8][001036bb][00000743] e885e6ffff call 00000762
    Input_Halts = 0
    [000020dd][001036c3][00000000] 83c408     add esp,+08
    [000020e0][001036c3][00000000] eb04       jmp 000020e6
    [000020e6][001036c3][00000000] 33c0       xor eax,eax
    [000020e8][001036c7][00000018] 5d         pop ebp
    [000020e9][001036cb][00000000] c3         ret           ; exit main
    Number of Instructions Executed(10070) == 150 Pages


    It is easier to understand because a print statement was added.
    You proved that it halts, but H0 reports non-halting.
    So, it produces a false negative.
    So, now it has been proved that H, H0, etc produce false negatives,
    when used to determine halting behaviour, please, stop to call them
    halt-deciders, or termination-deciders.
    They might be "simulation deciders". When returning true, the
    simulation was correct, when false, the full simulation was not possible.

    I don't want to discuss your screwy example because I
    can't use screwy examples in my paper.

    void DDD()
    {
      H0(DDD);
    }

    _DDD()
    [000020a2] 55         push ebp      ; housekeeping
    [000020a3] 8bec       mov ebp,esp   ; housekeeping
    [000020a5] 68a2200000 push 000020a2 ; push DDD
    [000020aa] e8f3f9ffff call 00001aa2 ; call H0
    [000020af] 83c404     add esp,+04   ; housekeeping
    [000020b2] 5d         pop ebp       ; housekeeping
    [000020b3] c3         ret           ; never gets here
    Size in bytes:(0018) [000020b3]

    Exactly which step of DDD emulated by H0 was emulated
    incorrectly such that this emulation would be complete?
    AKA DDD emulated by H0 reaches machine address [000020b3]



    Why does H0 NEED to be able to correctly simulate its input?

    Your question is just a Strawman, replacing the OBJECTIVE criteria of
    the behavior of the machine represented by the input (which inlcudes the
    code for H0) with the SUBJECTIVE question of what H0 thinks about it.

    And, your H0 doesn't correctly simulate the input, as the *ONLY* correct simulation of that input would be:

    simulate the push ebp
    simulate the mov ebp,esp
    simulate the push 000020a2
    simulate the call 00001aa2
    simulate the instruction at 00001aa2

    since that isn't what you have ever shown as the simulation by H0, you
    have lost the right to call its simulation "correct".

    Sorry, your argument is just a lie.

    --- SoupGate-Win32 v1.05
    * Origin: fsxNet Usenet Gateway (21:1/5)
  • From Richard Damon@21:1/5 to olcott on Wed Jun 19 21:39:57 2024
    XPost: sci.logic

    On 6/19/24 8:44 PM, olcott wrote:
    On 6/19/2024 7:23 PM, Richard Damon wrote:
    On 6/19/24 9:00 AM, olcott wrote:
    On 6/19/2024 3:08 AM, Fred. Zwarts wrote:
    Op 18.jun.2024 om 18:26 schreef olcott:
    On 6/18/2024 10:47 AM, Fred. Zwarts wrote:
    Op 18.jun.2024 om 17:33 schreef olcott:
    On 6/18/2024 10:20 AM, Fred. Zwarts wrote:

    It is a verified fact that serious C people have recently
    agreed to the following verbatim statement in the C group.

    http://al.howardknight.net/?STYPE=msgid&MSGI=%3Cv4pg5p%24morv%241%40raubtier-asyl.eternal-september.org%3E+

    You either lack this degree of skill in C or are only
    interested in playing head games.

    I have seen the response. It was most certainly not a serious reply. >>>>>> But you know apparently to little of C to understand that.
    Probably, because you are unable to escape from rebuttal mode,
    even if the truth is obvious.


    I have known C since K&R was the standard and met
    Bjarne Stroustrup when he came to our university
    to promote his new C++ programming language.

    *You seem to be willfully ignorant*

    It was your own proof that showed that in

            int main()
            {
              return H(main);
            }


    main halts, whereas H reported non-halting. So, it you were honest >>>>>> you would stop claiming that H is correct.


    That is merely a more difficult to understand version of this
    same pathological relationship.

    int main()
    {
       Output("Input_Halts = ", HH0(main));
    }

    _main()
    [000020c2] 55         push ebp
    [000020c3] 8bec       mov ebp,esp
    [000020c5] 68c2200000 push 000020c2 ; push main
    [000020ca] e833f4ffff call 00001502 ; call HH0
    [000020cf] 83c404     add esp,+04
    [000020d2] 50         push eax
    [000020d3] 6843070000 push 00000743
    [000020d8] e885e6ffff call 00000762
    [000020dd] 83c408     add esp,+08
    [000020e0] eb04       jmp 000020e6
    [000020e2] 33c0       xor eax,eax
    [000020e4] eb02       jmp 000020e8
    [000020e6] 33c0       xor eax,eax
    [000020e8] 5d         pop ebp
    [000020e9] c3         ret
    Size in bytes:(0040) [000020e9]

      machine   stack     stack     machine    assembly
      address   address   data      code       language >>>>>   ========  ========  ========  =========  =============
    [000020c2][001036c3][00000000] 55         push ebp
    [000020c3][001036c3][00000000] 8bec       mov ebp,esp
    [000020c5][001036bf][000020c2] 68c2200000 push 000020c2 ; push main
    [000020ca][001036bb][000020cf] e833f4ffff call 00001502 ; call HH0
    New slave_stack at:103767

    Begin Local Halt Decider Simulation   Execution Trace Stored at:11376f >>>>> [000020c2][0011375f][00113763] 55         push ebp      ; begin main
    [000020c3][0011375f][00113763] 8bec       mov ebp,esp
    [000020c5][0011375b][000020c2] 68c2200000 push 000020c2 ; push main
    [000020ca][00113757][000020cf] e833f4ffff call 00001502 ; call HH0
    New slave_stack at:14e18f
    [000020c2][0015e187][0015e18b] 55         push ebp      ; begin main
    [000020c3][0015e187][0015e18b] 8bec       mov ebp,esp
    [000020c5][0015e183][000020c2] 68c2200000 push 000020c2 ; push main
    [000020ca][0015e17f][000020cf] e833f4ffff call 00001502 ; call HH0
    Local Halt Decider: Infinite Recursion Detected Simulation Stopped

    [000020cf][001036c3][00000000] 83c404     add esp,+04
    [000020d2][001036bf][00000000] 50         push eax
    [000020d3][001036bb][00000743] 6843070000 push 00000743
    [000020d8][001036bb][00000743] e885e6ffff call 00000762
    Input_Halts = 0
    [000020dd][001036c3][00000000] 83c408     add esp,+08
    [000020e0][001036c3][00000000] eb04       jmp 000020e6
    [000020e6][001036c3][00000000] 33c0       xor eax,eax
    [000020e8][001036c7][00000018] 5d         pop ebp
    [000020e9][001036cb][00000000] c3         ret           ; exit main
    Number of Instructions Executed(10070) == 150 Pages


    It is easier to understand because a print statement was added.
    You proved that it halts, but H0 reports non-halting.
    So, it produces a false negative.
    So, now it has been proved that H, H0, etc produce false negatives,
    when used to determine halting behaviour, please, stop to call them
    halt-deciders, or termination-deciders.
    They might be "simulation deciders". When returning true, the
    simulation was correct, when false, the full simulation was not
    possible.

    I don't want to discuss your screwy example because I
    can't use screwy examples in my paper.

    void DDD()
    {
       H0(DDD);
    }

    _DDD()
    [000020a2] 55         push ebp      ; housekeeping
    [000020a3] 8bec       mov ebp,esp   ; housekeeping
    [000020a5] 68a2200000 push 000020a2 ; push DDD
    [000020aa] e8f3f9ffff call 00001aa2 ; call H0
    [000020af] 83c404     add esp,+04   ; housekeeping
    [000020b2] 5d         pop ebp       ; housekeeping
    [000020b3] c3         ret           ; never gets here
    Size in bytes:(0018) [000020b3]

    Exactly which step of DDD emulated by H0 was emulated
    incorrectly such that this emulation would be complete?
    AKA DDD emulated by H0 reaches machine address [000020b3]



    Why does H0 NEED to be able to correctly simulate its input?


    Decider must compute the mapping from their finite string
    input to the actual behavior that this finite string specifies.
    They are not free to imagine the behavior that the authors of
    textbooks expect.

    AND THE DEFINITION OF THAT BEHAVIOR IS THE BEHAVIOR OF THE DIRECT
    EXECUTION OF THE PROGRAM THE INPUT REPRESENTS.

    Yes, the DO need to follow the behavior that the author of the problem
    defined.

    You are just showing you think it is ok to not follow the REQURIEMENTS
    and just LIE about what you are doing.


    Your question is just a Strawman, replacing the OBJECTIVE criteria of
    the behavior of the machine represented by the input (which inlcudes
    the code for H0) with the SUBJECTIVE question of what H0 thinks about it.

    And, your H0 doesn't correctly simulate the input, as the *ONLY*
    correct simulation of that input would be:

    simulate the push ebp
    simulate the mov ebp,esp
    simulate the push 000020a2
    simulate the call 00001aa2
    simulate the instruction at 00001aa2


    I now have a 195 page color-coded execution trace
    showing HH0 correctly simulating DDD calling
    a simulated HH0 simulating another instance of DDD. https://liarparadox.org/HH0_(DDD)_Full_Trace.pdf

    I'll look into it in more details later, but this is what comes from a
    quick look.

    The first thing I note, is just like that last one, the TRACE doesn't
    start until page 36, so is not as long as you claim. It is nice that you include the x86 assembly of the program. But it also shows that
    something isn't as it seems as there are a lot of functions like:

    _OutputString()
    [00000743] 55 push ebp
    [00000744] 8bec move ebp, esp
    [00000746] 5d pop. ebp
    [00000747] c3 ret
    Size in bytes:(0005) [00000747]

    Which your tracing seems to ignore, and the seem to end up doing
    something not shown, so clearly, there is activity not being traced and
    being hidden. This could be called a LIE.


    Also, something is funny about the formatting of the text of the PDF,
    like it is edited and reformatted as it doesn't copy and paste well.

    First, again, the simulation starts as:
    [000020b3][00103680][00000000] 55. push. ebp [000020b4][00103680][00000000] 8bec. mov ebp, esp [000020b6][0010367c][00002093] 6893200000 push 00002093

    and the code at 20b3 is the code of main, not DDD, so again, this is the
    wrong trace. The trace from H0, will start at the instructions of DDD,
    at address 00002093

    So, this is NOT the trace of HH0(DDD,DDD)

    Did you confuse me with someone else you were arguing about and forgot
    what the actual problem was.


    Then on page 37, we see:

    [000012d1][00103620][000003db] e87df4ffff call 00000753
    New slave_stack at:103724
    [000012d6][00103628][00103674] 83c408 add esp,+08


    So, again, your trace isn't actually a correct x86 trace of the actual
    code being executed. And these functions at these addresses seem to be something "magic" as the code shown doesn't match the names given.

    SO, it seems something may be rotten in Denmark here.

    Then we have on page 43: (spaces and comments added)

    [000011dc][00103604][001036ac] 52. push edx [000011dd][00103604][001036ac] e8b1f5ffff call 00000793

    [0000209b][00113714][000020a0] e853f4ffff call 000014f3

    The above is NOT a correct simulation of the code that is currently
    being simulated by the top level decider, then it gets back to its
    proper trace.

    [000011e2][00103610][0011372c] 83c40c add esp,+0c

    If this is showing a simulation at a different level, it really should
    be more clearly indicated


    since that isn't what you have ever shown as the simulation by H0, you
    have lost the right to call its simulation "correct".

    Sorry, your argument is just a lie.

    *It never has been a falsehood*


    It has ALWAYS been. You just don't seem to know the meaning of truth.


    Look, you repeated the exact same error, even though you apparently did
    look at the document to add color coding. (or had a program do it).


    It is clear you don't understand about what a correct simulation trace
    of your decider simulating the input DDD,DDD

    --- SoupGate-Win32 v1.05
    * Origin: fsxNet Usenet Gateway (21:1/5)
  • From Richard Damon@21:1/5 to olcott on Wed Jun 19 22:17:20 2024
    XPost: sci.logic

    On 6/19/24 10:02 PM, olcott wrote:
    On 6/19/2024 8:39 PM, Richard Damon wrote:
    On 6/19/24 8:44 PM, olcott wrote:
    On 6/19/2024 7:23 PM, Richard Damon wrote:
    On 6/19/24 9:00 AM, olcott wrote:
    On 6/19/2024 3:08 AM, Fred. Zwarts wrote:
    Op 18.jun.2024 om 18:26 schreef olcott:
    On 6/18/2024 10:47 AM, Fred. Zwarts wrote:
    Op 18.jun.2024 om 17:33 schreef olcott:
    On 6/18/2024 10:20 AM, Fred. Zwarts wrote:

    It is a verified fact that serious C people have recently
    agreed to the following verbatim statement in the C group.

    http://al.howardknight.net/?STYPE=msgid&MSGI=%3Cv4pg5p%24morv%241%40raubtier-asyl.eternal-september.org%3E+

    You either lack this degree of skill in C or are only
    interested in playing head games.

    I have seen the response. It was most certainly not a serious
    reply.
    But you know apparently to little of C to understand that.
    Probably, because you are unable to escape from rebuttal mode, >>>>>>>> even if the truth is obvious.


    I have known C since K&R was the standard and met
    Bjarne Stroustrup when he came to our university
    to promote his new C++ programming language.

    *You seem to be willfully ignorant*

    It was your own proof that showed that in

            int main()
            {
              return H(main);
            }


    main halts, whereas H reported non-halting. So, it you were
    honest you would stop claiming that H is correct.


    That is merely a more difficult to understand version of this
    same pathological relationship.

    int main()
    {
       Output("Input_Halts = ", HH0(main));
    }

    _main()
    [000020c2] 55         push ebp
    [000020c3] 8bec       mov ebp,esp
    [000020c5] 68c2200000 push 000020c2 ; push main
    [000020ca] e833f4ffff call 00001502 ; call HH0
    [000020cf] 83c404     add esp,+04
    [000020d2] 50         push eax
    [000020d3] 6843070000 push 00000743
    [000020d8] e885e6ffff call 00000762
    [000020dd] 83c408     add esp,+08
    [000020e0] eb04       jmp 000020e6
    [000020e2] 33c0       xor eax,eax
    [000020e4] eb02       jmp 000020e8
    [000020e6] 33c0       xor eax,eax
    [000020e8] 5d         pop ebp
    [000020e9] c3         ret
    Size in bytes:(0040) [000020e9]

      machine   stack     stack     machine    assembly >>>>>>>   address   address   data      code       language >>>>>>>   ========  ========  ========  =========  =============
    [000020c2][001036c3][00000000] 55         push ebp
    [000020c3][001036c3][00000000] 8bec       mov ebp,esp
    [000020c5][001036bf][000020c2] 68c2200000 push 000020c2 ; push main >>>>>>> [000020ca][001036bb][000020cf] e833f4ffff call 00001502 ; call HH0 >>>>>>> New slave_stack at:103767

    Begin Local Halt Decider Simulation   Execution Trace Stored
    at:11376f
    [000020c2][0011375f][00113763] 55         push ebp      ; begin main
    [000020c3][0011375f][00113763] 8bec       mov ebp,esp
    [000020c5][0011375b][000020c2] 68c2200000 push 000020c2 ; push main >>>>>>> [000020ca][00113757][000020cf] e833f4ffff call 00001502 ; call HH0 >>>>>>> New slave_stack at:14e18f
    [000020c2][0015e187][0015e18b] 55         push ebp      ; begin main
    [000020c3][0015e187][0015e18b] 8bec       mov ebp,esp
    [000020c5][0015e183][000020c2] 68c2200000 push 000020c2 ; push main >>>>>>> [000020ca][0015e17f][000020cf] e833f4ffff call 00001502 ; call HH0 >>>>>>> Local Halt Decider: Infinite Recursion Detected Simulation Stopped >>>>>>>
    [000020cf][001036c3][00000000] 83c404     add esp,+04
    [000020d2][001036bf][00000000] 50         push eax
    [000020d3][001036bb][00000743] 6843070000 push 00000743
    [000020d8][001036bb][00000743] e885e6ffff call 00000762
    Input_Halts = 0
    [000020dd][001036c3][00000000] 83c408     add esp,+08
    [000020e0][001036c3][00000000] eb04       jmp 000020e6
    [000020e6][001036c3][00000000] 33c0       xor eax,eax
    [000020e8][001036c7][00000018] 5d         pop ebp
    [000020e9][001036cb][00000000] c3         ret           ; exit main
    Number of Instructions Executed(10070) == 150 Pages


    It is easier to understand because a print statement was added.
    You proved that it halts, but H0 reports non-halting.
    So, it produces a false negative.
    So, now it has been proved that H, H0, etc produce false
    negatives, when used to determine halting behaviour, please, stop
    to call them halt-deciders, or termination-deciders.
    They might be "simulation deciders". When returning true, the
    simulation was correct, when false, the full simulation was not
    possible.

    I don't want to discuss your screwy example because I
    can't use screwy examples in my paper.

    void DDD()
    {
       H0(DDD);
    }

    _DDD()
    [000020a2] 55         push ebp      ; housekeeping
    [000020a3] 8bec       mov ebp,esp   ; housekeeping
    [000020a5] 68a2200000 push 000020a2 ; push DDD
    [000020aa] e8f3f9ffff call 00001aa2 ; call H0
    [000020af] 83c404     add esp,+04   ; housekeeping
    [000020b2] 5d         pop ebp       ; housekeeping
    [000020b3] c3         ret           ; never gets here >>>>> Size in bytes:(0018) [000020b3]

    Exactly which step of DDD emulated by H0 was emulated
    incorrectly such that this emulation would be complete?
    AKA DDD emulated by H0 reaches machine address [000020b3]



    Why does H0 NEED to be able to correctly simulate its input?


    Decider must compute the mapping from their finite string
    input to the actual behavior that this finite string specifies.
    They are not free to imagine the behavior that the authors of
    textbooks expect.

    AND THE DEFINITION OF THAT BEHAVIOR IS THE BEHAVIOR OF THE DIRECT
    EXECUTION OF THE PROGRAM THE INPUT REPRESENTS.

    Yes, the DO need to follow the behavior that the author of the problem
    defined.

    You are just showing you think it is ok to not follow the REQURIEMENTS
    and just LIE about what you are doing.

    The finite string input does not communicate the behavior
    that the textbook authors expect it to communicate.


    The finite string certainly DOES communicate what is needed to determine
    the behavior, or it wasn't a correct representation.

    For instance, the x86 code of the full program DDD gives enough
    information to fully determine the bahavior of the program the input represents.

    If you don't give the full code, then you LIED in saying that DDD was constructed per the Linz proof.

    Your LIE of showing he input as only inlcuding the x86 code of the
    immediate function says either you don't understand what is needed for
    the the decider to understand its input, or have just been lying about
    what you are doing.

    Of course, your decider treats the input as if it was given all the data
    it needed, as it at least claims to undertand the meaning of the call to
    the decider.

    Now, the finite string do NOT give the definition of the question the
    decider is supposed to be answering, because that isn't the job of the
    input.

    That is the job of the programmer who wrote the decider, and if he can't
    read the textbook, he should claim that he followed their rules and
    built a Halt Decider.

    Now, if you want to claim your H as a Universal decider, then you need
    to define how we are to specify every question, and if you can't show
    how to do, you just admitted that you didn't do what you claimed.

    So, in summary, you just showed you don't understand what a requirement
    is, so you can't understand what truth is as it is based on requirements.

    Sorry, you are just showing your complete stupidity.


    I note, you didn't comment on how I quickly determined that you AGAIN
    lied about producing the output of your decider correctly simulating its
    input of the pathological program.

    I guess you are just making it VERY CLEAR that you just don't understand
    what you are talking about.

    --- SoupGate-Win32 v1.05
    * Origin: fsxNet Usenet Gateway (21:1/5)
  • From Mikko@21:1/5 to olcott on Thu Jun 20 08:17:46 2024
    On 2024-06-19 13:00:57 +0000, olcott said:

    On 6/19/2024 3:08 AM, Fred. Zwarts wrote:
    Op 18.jun.2024 om 18:26 schreef olcott:
    On 6/18/2024 10:47 AM, Fred. Zwarts wrote:
    Op 18.jun.2024 om 17:33 schreef olcott:
    On 6/18/2024 10:20 AM, Fred. Zwarts wrote:

    It is a verified fact that serious C people have recently
    agreed to the following verbatim statement in the C group.

    http://al.howardknight.net/?STYPE=msgid&MSGI=%3Cv4pg5p%24morv%241%40raubtier-asyl.eternal-september.org%3E+


    You either lack this degree of skill in C or are only
    interested in playing head games.

    I have seen the response. It was most certainly not a serious reply.
    But you know apparently to little of C to understand that.
    Probably, because you are unable to escape from rebuttal mode, even if >>>> the truth is obvious.


    I have known C since K&R was the standard and met
    Bjarne Stroustrup when he came to our university
    to promote his new C++ programming language.

    *You seem to be willfully ignorant*

    It was your own proof that showed that in

            int main()
            {
              return H(main);
            }


    main halts, whereas H reported non-halting. So, it you were honest you >>>> would stop claiming that H is correct.


    That is merely a more difficult to understand version of this
    same pathological relationship.

    int main()
    {
       Output("Input_Halts = ", HH0(main));
    }

    _main()
    [000020c2] 55         push ebp
    [000020c3] 8bec       mov ebp,esp
    [000020c5] 68c2200000 push 000020c2 ; push main
    [000020ca] e833f4ffff call 00001502 ; call HH0
    [000020cf] 83c404     add esp,+04
    [000020d2] 50         push eax
    [000020d3] 6843070000 push 00000743
    [000020d8] e885e6ffff call 00000762
    [000020dd] 83c408     add esp,+08
    [000020e0] eb04       jmp 000020e6
    [000020e2] 33c0       xor eax,eax
    [000020e4] eb02       jmp 000020e8
    [000020e6] 33c0       xor eax,eax
    [000020e8] 5d         pop ebp
    [000020e9] c3         ret
    Size in bytes:(0040) [000020e9]

      machine   stack     stack     machine    assembly
      address   address   data      code       language
      ========  ========  ========  =========  =============
    [000020c2][001036c3][00000000] 55         push ebp
    [000020c3][001036c3][00000000] 8bec       mov ebp,esp
    [000020c5][001036bf][000020c2] 68c2200000 push 000020c2 ; push main
    [000020ca][001036bb][000020cf] e833f4ffff call 00001502 ; call HH0
    New slave_stack at:103767

    Begin Local Halt Decider Simulation   Execution Trace Stored at:11376f >>> [000020c2][0011375f][00113763] 55         push ebp      ; begin main
    [000020c3][0011375f][00113763] 8bec       mov ebp,esp
    [000020c5][0011375b][000020c2] 68c2200000 push 000020c2 ; push main
    [000020ca][00113757][000020cf] e833f4ffff call 00001502 ; call HH0
    New slave_stack at:14e18f
    [000020c2][0015e187][0015e18b] 55         push ebp      ; begin main
    [000020c3][0015e187][0015e18b] 8bec       mov ebp,esp
    [000020c5][0015e183][000020c2] 68c2200000 push 000020c2 ; push main
    [000020ca][0015e17f][000020cf] e833f4ffff call 00001502 ; call HH0
    Local Halt Decider: Infinite Recursion Detected Simulation Stopped

    [000020cf][001036c3][00000000] 83c404     add esp,+04
    [000020d2][001036bf][00000000] 50         push eax
    [000020d3][001036bb][00000743] 6843070000 push 00000743
    [000020d8][001036bb][00000743] e885e6ffff call 00000762
    Input_Halts = 0
    [000020dd][001036c3][00000000] 83c408     add esp,+08
    [000020e0][001036c3][00000000] eb04       jmp 000020e6
    [000020e6][001036c3][00000000] 33c0       xor eax,eax
    [000020e8][001036c7][00000018] 5d         pop ebp
    [000020e9][001036cb][00000000] c3         ret           ; exit main
    Number of Instructions Executed(10070) == 150 Pages


    It is easier to understand because a print statement was added.
    You proved that it halts, but H0 reports non-halting.
    So, it produces a false negative.
    So, now it has been proved that H, H0, etc produce false negatives,
    when used to determine halting behaviour, please, stop to call them
    halt-deciders, or termination-deciders.
    They might be "simulation deciders". When returning true, the
    simulation was correct, when false, the full simulation was not
    possible.

    I don't want to discuss your screwy example because I
    can't use screwy examples in my paper.

    If you could ever publish a paper there would soon be papers with examples (which you may call "screwy") that your method gets wrong.

    --
    Mikko

    --- SoupGate-Win32 v1.05
    * Origin: fsxNet Usenet Gateway (21:1/5)
  • From Mikko@21:1/5 to olcott on Thu Jun 20 08:53:25 2024
    On 2024-06-19 13:47:17 +0000, olcott said:

    On 6/19/2024 4:30 AM, Mikko wrote:
    On 2024-06-18 16:45:42 +0000, olcott said:

    On 6/18/2024 11:37 AM, Mikko wrote:
    On 2024-06-18 16:30:46 +0000, olcott said:

    On 6/18/2024 11:21 AM, Mikko wrote:
    On 2024-06-17 03:33:50 +0000, olcott said:

    To understand this analysis requires a sufficient knowledge of
    the C programming language and what an x86 emulator does.

    Unless every single detail is made 100% explicit false assumptions >>>>>>> always slip though the cracks. This is why it must be examined at >>>>>>> the C level before it is examined at the Turing Machine level.

    typedef void (*ptr)();
    int H0(ptr P);

    void Infinite_Loop()
    {
       HERE: goto HERE;
    }

    void Infinite_Recursion()
    {
       Infinite_Recursion();
    }

    void DDD()
    {
       H0(DDD);
       return;
    }

    int main()
    {
       H0(Infinite_Loop);
       H0(Infinite_Recursion);
       H0(DDD);
    }

    Every C programmer that knows what an x86 emulator is knows that when H0
    emulates the machine language of Infinite_Loop, Infinite_Recursion, and >>>>>>> DDD that it must abort these emulations so that itself can terminate >>>>>>> normally.

    When this is construed as non-halting criteria then simulating
    termination analyzer H0 is correct to reject these inputs as non- >>>>>>> halting.

    The subject line is incorrect. The OP of "Simulating termination analyzers
    for dummies" should tell what a "simulating termination analyzer" is. >>>>>> The OP of this thread does not.


    I state the prerequisites if you don't have them
    then you cannot understand. If you have them then
    what I say is self-evidently true.

    What you sais ooes not include what the subject line promised.


    If all that you know is C and what and x86 emulator does
    then you do obtain the gist of what a simulating termination
    and analyzer does.

    I am not in your target audience (dummies who have good knowledge
    of C and x86 emulator) so what I know or understand is outside of
    the scope of this discussion.

    Because most people only glance at a couple of my words before
    forming their rebuttal I had to make it overly concise.

    If there is an error in those couple of words then there is no
    need to discuss the rest.


    OK so if you flat out don't have the mandatory prerequisites
    there is no sense continuing our conversion. My impression
    was that you understood these things quite well.

    People oftehn get the impression that I understand quite well
    whatever I happen to talk about. The probable reason is that
    I prefer to say only what I know and understand and to leave
    the rest to others.

    About the particular topic of subject lines, nobody has pointed out
    any defects in my understanding. Perhaps my understanding is good
    enough or perhaps they just don't care.

    --
    Mikko

    --- SoupGate-Win32 v1.05
    * Origin: fsxNet Usenet Gateway (21:1/5)
  • From Fred. Zwarts@21:1/5 to All on Thu Jun 20 10:17:44 2024
    XPost: sci.logic

    Op 19.jun.2024 om 18:08 schreef olcott:
    On 6/19/2024 10:47 AM, Fred. Zwarts wrote:
    Op 19.jun.2024 om 17:01 schreef olcott:
    On 6/19/2024 8:56 AM, Fred. Zwarts wrote:
    Op 19.jun.2024 om 15:00 schreef olcott:
    On 6/19/2024 3:08 AM, Fred. Zwarts wrote:
    Op 18.jun.2024 om 18:26 schreef olcott:
    On 6/18/2024 10:47 AM, Fred. Zwarts wrote:
    Op 18.jun.2024 om 17:33 schreef olcott:
    On 6/18/2024 10:20 AM, Fred. Zwarts wrote:

    It is a verified fact that serious C people have recently
    agreed to the following verbatim statement in the C group.

    http://al.howardknight.net/?STYPE=msgid&MSGI=%3Cv4pg5p%24morv%241%40raubtier-asyl.eternal-september.org%3E+

    You either lack this degree of skill in C or are only
    interested in playing head games.

    I have seen the response. It was most certainly not a serious
    reply.
    But you know apparently to little of C to understand that.
    Probably, because you are unable to escape from rebuttal mode, >>>>>>>> even if the truth is obvious.


    I have known C since K&R was the standard and met
    Bjarne Stroustrup when he came to our university
    to promote his new C++ programming language.

    *You seem to be willfully ignorant*

    It was your own proof that showed that in

            int main()
            {
              return H(main);
            }


    main halts, whereas H reported non-halting. So, it you were
    honest you would stop claiming that H is correct.


    That is merely a more difficult to understand version of this
    same pathological relationship.

    int main()
    {
       Output("Input_Halts = ", HH0(main));
    }

    _main()
    [000020c2] 55         push ebp
    [000020c3] 8bec       mov ebp,esp
    [000020c5] 68c2200000 push 000020c2 ; push main
    [000020ca] e833f4ffff call 00001502 ; call HH0
    [000020cf] 83c404     add esp,+04
    [000020d2] 50         push eax
    [000020d3] 6843070000 push 00000743
    [000020d8] e885e6ffff call 00000762
    [000020dd] 83c408     add esp,+08
    [000020e0] eb04       jmp 000020e6
    [000020e2] 33c0       xor eax,eax
    [000020e4] eb02       jmp 000020e8
    [000020e6] 33c0       xor eax,eax
    [000020e8] 5d         pop ebp
    [000020e9] c3         ret
    Size in bytes:(0040) [000020e9]

      machine   stack     stack     machine    assembly >>>>>>>   address   address   data      code       language >>>>>>>   ========  ========  ========  =========  =============
    [000020c2][001036c3][00000000] 55         push ebp
    [000020c3][001036c3][00000000] 8bec       mov ebp,esp
    [000020c5][001036bf][000020c2] 68c2200000 push 000020c2 ; push main >>>>>>> [000020ca][001036bb][000020cf] e833f4ffff call 00001502 ; call HH0 >>>>>>> New slave_stack at:103767

    Begin Local Halt Decider Simulation   Execution Trace Stored
    at:11376f
    [000020c2][0011375f][00113763] 55         push ebp      ; begin main
    [000020c3][0011375f][00113763] 8bec       mov ebp,esp
    [000020c5][0011375b][000020c2] 68c2200000 push 000020c2 ; push main >>>>>>> [000020ca][00113757][000020cf] e833f4ffff call 00001502 ; call HH0 >>>>>>> New slave_stack at:14e18f
    [000020c2][0015e187][0015e18b] 55         push ebp      ; begin main
    [000020c3][0015e187][0015e18b] 8bec       mov ebp,esp
    [000020c5][0015e183][000020c2] 68c2200000 push 000020c2 ; push main >>>>>>> [000020ca][0015e17f][000020cf] e833f4ffff call 00001502 ; call HH0 >>>>>>> Local Halt Decider: Infinite Recursion Detected Simulation Stopped >>>>>>>
    [000020cf][001036c3][00000000] 83c404     add esp,+04
    [000020d2][001036bf][00000000] 50         push eax
    [000020d3][001036bb][00000743] 6843070000 push 00000743
    [000020d8][001036bb][00000743] e885e6ffff call 00000762
    Input_Halts = 0
    [000020dd][001036c3][00000000] 83c408     add esp,+08
    [000020e0][001036c3][00000000] eb04       jmp 000020e6
    [000020e6][001036c3][00000000] 33c0       xor eax,eax
    [000020e8][001036c7][00000018] 5d         pop ebp
    [000020e9][001036cb][00000000] c3         ret           ; exit main
    Number of Instructions Executed(10070) == 150 Pages


    It is easier to understand because a print statement was added.
    You proved that it halts, but H0 reports non-halting.
    So, it produces a false negative.
    So, now it has been proved that H, H0, etc produce false
    negatives, when used to determine halting behaviour, please, stop
    to call them halt-deciders, or termination-deciders.
    They might be "simulation deciders". When returning true, the
    simulation was correct, when false, the full simulation was not
    possible.

    I don't want to discuss your screwy example because I
    can't use screwy examples in my paper.

    void DDD()
    {
       H0(DDD);
    }

    _DDD()
    [000020a2] 55         push ebp      ; housekeeping
    [000020a3] 8bec       mov ebp,esp   ; housekeeping
    [000020a5] 68a2200000 push 000020a2 ; push DDD
    [000020aa] e8f3f9ffff call 00001aa2 ; call H0
    [000020af] 83c404     add esp,+04   ; housekeeping
    [000020b2] 5d         pop ebp       ; housekeeping
    [000020b3] c3         ret           ; never gets here >>>>> Size in bytes:(0018) [000020b3]

    Exactly which step of DDD emulated by H0 was emulated
    incorrectly such that this emulation would be complete?
    AKA DDD emulated by H0 reaches machine address [000020b3]


    Yes, that is your attitude. An example that proves you are wrong are
    called 'screwy'. You prefer more complex examples, for which you can
    easier hide the essential details.


    void DDD()
    {
       HH0(DDD);
    }

    int main()
    {
       HH0(DDD);
    }

    _DDD()
    [00002093] 55         push ebp
    [00002094] 8bec       mov ebp,esp
    [00002096] 6893200000 push 00002093 ; push DDD
    [0000209b] e853f4ffff call 000014f3 ; call HH0
    [000020a0] 83c404     add esp,+04
    [000020a3] 5d         pop ebp
    [000020a4] c3         ret
    Size in bytes:(0018) [000020a4]

    _main()
    [000020b3] 55         push ebp
    [000020b4] 8bec       mov ebp,esp
    [000020b6] 6893200000 push 00002093 ; push DDD
    [000020bb] e833f4ffff call 000014f3 ; call HH0
    [000020c0] 83c404     add esp,+04
    [000020c3] eb04       jmp 000020c9
    [000020c5] 33c0       xor eax,eax
    [000020c7] eb02       jmp 000020cb
    [000020c9] 33c0       xor eax,eax
    [000020cb] 5d         pop ebp
    [000020cc] c3         ret
    Size in bytes:(0026) [000020cc]

      machine   stack     stack     machine    assembly
      address   address   data      code       language
      ========  ========  ========  =========  =============
    [000020b3][00103680][00000000] 55         push ebp      ; begin main
    [000020b4][00103680][00000000] 8bec       mov ebp,esp
    [000020b6][0010367c][00002093] 6893200000 push 00002093 ; push DDD
    [000020bb][00103678][000020c0] e833f4ffff call 000014f3 ; call HH0
    New slave_stack at:103724

    Begin Local Halt Decider Simulation   Execution Trace Stored at:11372c >>> [00002093][0011371c][00113720] 55         push ebp      ; begin DDD
    [00002094][0011371c][00113720] 8bec       mov ebp,esp
    [00002096][00113718][00002093] 6893200000 push 00002093 ; push DDD
    [0000209b][00113714][000020a0] e853f4ffff call 000014f3 ; call HH0

    That call right there to HH0 is fully simulated by the directly
    executed HH0 and the 150 pages of steps are not displayed so that
    the next four steps of DDD correctly simulated by the correctly
    simulated HH0 can be clearly seen and not mixed into the 150 pages
    of the instructions of the simulated HH0.

    New slave_stack at:14e14c
    [00002093][0015e144][0015e148] 55         push ebp      ; begin DDD
    [00002094][0015e144][0015e148] 8bec       mov ebp,esp
    [00002096][0015e140][00002093] 6893200000 push 00002093 ; push DDD
    [0000209b][0015e13c][000020a0] e853f4ffff call 000014f3 ; call HH0
    Local Halt Decider: Infinite Recursion Detected Simulation Stopped

    [000020c0][00103680][00000000] 83c404     add esp,+04   ; return to main
    [000020c3][00103680][00000000] eb04       jmp 000020c9
    [000020c9][00103680][00000000] 33c0       xor eax,eax
    [000020cb][00103684][00000018] 5d         pop ebp
    [000020cc][00103688][00000000] c3         ret           ; end main
    Number of Instructions Executed(10067) == 150 Pages

    Exactly what I said. Ignore simple proofs like:

            int main()
            {
              return H(main, 0);
            }

    For which you proved that it reports a false negative.


    The correctly emulated input DOES NOT HALT.

    No, the *incorrectly* emulated input is prevented to halt, because it
    was aborted *too soon*. It aborted one cycle before the simulated H
    would abort and halt by itself. Unfortunately, there is never a good
    moment to abort, because the simulated self keeps running one cycle
    behind the simulating H. So, H is always incorrect.

    The directly executed main() only seems to halt
    because the directly executed main() is essentially
    the first call in a recursive chain where the
    second call is always aborted.


    Aborted too soon, because one cycle later it would halt by itself.

    And since it was aborted, it produces a false negative. That is the fate
    of a simulating halt decider.

    --- SoupGate-Win32 v1.05
    * Origin: fsxNet Usenet Gateway (21:1/5)
  • From Richard Damon@21:1/5 to olcott on Thu Jun 20 07:33:51 2024
    XPost: sci.logic

    On 6/19/24 10:25 PM, olcott wrote:
    On 6/19/2024 9:17 PM, Richard Damon wrote:
    On 6/19/24 10:02 PM, olcott wrote:
    On 6/19/2024 8:39 PM, Richard Damon wrote:
    On 6/19/24 8:44 PM, olcott wrote:
    On 6/19/2024 7:23 PM, Richard Damon wrote:
    On 6/19/24 9:00 AM, olcott wrote:
    On 6/19/2024 3:08 AM, Fred. Zwarts wrote:
    Op 18.jun.2024 om 18:26 schreef olcott:
    On 6/18/2024 10:47 AM, Fred. Zwarts wrote:
    Op 18.jun.2024 om 17:33 schreef olcott:
    On 6/18/2024 10:20 AM, Fred. Zwarts wrote:

    It is a verified fact that serious C people have recently >>>>>>>>>>> agreed to the following verbatim statement in the C group. >>>>>>>>>
    http://al.howardknight.net/?STYPE=msgid&MSGI=%3Cv4pg5p%24morv%241%40raubtier-asyl.eternal-september.org%3E+

    You either lack this degree of skill in C or are only
    interested in playing head games.

    I have seen the response. It was most certainly not a serious >>>>>>>>>> reply.
    But you know apparently to little of C to understand that. >>>>>>>>>> Probably, because you are unable to escape from rebuttal mode, >>>>>>>>>> even if the truth is obvious.


    I have known C since K&R was the standard and met
    Bjarne Stroustrup when he came to our university
    to promote his new C++ programming language.

    *You seem to be willfully ignorant*

    It was your own proof that showed that in

            int main()
            {
              return H(main);
            }


    main halts, whereas H reported non-halting. So, it you were >>>>>>>>>> honest you would stop claiming that H is correct.


    That is merely a more difficult to understand version of this >>>>>>>>> same pathological relationship.

    int main()
    {
       Output("Input_Halts = ", HH0(main));
    }

    _main()
    [000020c2] 55         push ebp
    [000020c3] 8bec       mov ebp,esp
    [000020c5] 68c2200000 push 000020c2 ; push main
    [000020ca] e833f4ffff call 00001502 ; call HH0
    [000020cf] 83c404     add esp,+04
    [000020d2] 50         push eax
    [000020d3] 6843070000 push 00000743
    [000020d8] e885e6ffff call 00000762
    [000020dd] 83c408     add esp,+08
    [000020e0] eb04       jmp 000020e6
    [000020e2] 33c0       xor eax,eax
    [000020e4] eb02       jmp 000020e8
    [000020e6] 33c0       xor eax,eax
    [000020e8] 5d         pop ebp
    [000020e9] c3         ret
    Size in bytes:(0040) [000020e9]

      machine   stack     stack     machine    assembly >>>>>>>>>   address   address   data      code       language >>>>>>>>>   ========  ========  ========  =========  ============= >>>>>>>>> [000020c2][001036c3][00000000] 55         push ebp
    [000020c3][001036c3][00000000] 8bec       mov ebp,esp
    [000020c5][001036bf][000020c2] 68c2200000 push 000020c2 ; push >>>>>>>>> main
    [000020ca][001036bb][000020cf] e833f4ffff call 00001502 ; call HH0 >>>>>>>>> New slave_stack at:103767

    Begin Local Halt Decider Simulation   Execution Trace Stored >>>>>>>>> at:11376f
    [000020c2][0011375f][00113763] 55         push ebp      ; begin
    main
    [000020c3][0011375f][00113763] 8bec       mov ebp,esp
    [000020c5][0011375b][000020c2] 68c2200000 push 000020c2 ; push >>>>>>>>> main
    [000020ca][00113757][000020cf] e833f4ffff call 00001502 ; call HH0 >>>>>>>>> New slave_stack at:14e18f
    [000020c2][0015e187][0015e18b] 55         push ebp      ; begin
    main
    [000020c3][0015e187][0015e18b] 8bec       mov ebp,esp
    [000020c5][0015e183][000020c2] 68c2200000 push 000020c2 ; push >>>>>>>>> main
    [000020ca][0015e17f][000020cf] e833f4ffff call 00001502 ; call HH0 >>>>>>>>> Local Halt Decider: Infinite Recursion Detected Simulation Stopped >>>>>>>>>
    [000020cf][001036c3][00000000] 83c404     add esp,+04
    [000020d2][001036bf][00000000] 50         push eax
    [000020d3][001036bb][00000743] 6843070000 push 00000743
    [000020d8][001036bb][00000743] e885e6ffff call 00000762
    Input_Halts = 0
    [000020dd][001036c3][00000000] 83c408     add esp,+08
    [000020e0][001036c3][00000000] eb04       jmp 000020e6 >>>>>>>>> [000020e6][001036c3][00000000] 33c0       xor eax,eax
    [000020e8][001036c7][00000018] 5d         pop ebp
    [000020e9][001036cb][00000000] c3         ret           ; exit
    main
    Number of Instructions Executed(10070) == 150 Pages


    It is easier to understand because a print statement was added. >>>>>>>> You proved that it halts, but H0 reports non-halting.
    So, it produces a false negative.
    So, now it has been proved that H, H0, etc produce false
    negatives, when used to determine halting behaviour, please,
    stop to call them halt-deciders, or termination-deciders.
    They might be "simulation deciders". When returning true, the
    simulation was correct, when false, the full simulation was not >>>>>>>> possible.

    I don't want to discuss your screwy example because I
    can't use screwy examples in my paper.

    void DDD()
    {
       H0(DDD);
    }

    _DDD()
    [000020a2] 55         push ebp      ; housekeeping
    [000020a3] 8bec       mov ebp,esp   ; housekeeping
    [000020a5] 68a2200000 push 000020a2 ; push DDD
    [000020aa] e8f3f9ffff call 00001aa2 ; call H0
    [000020af] 83c404     add esp,+04   ; housekeeping
    [000020b2] 5d         pop ebp       ; housekeeping >>>>>>> [000020b3] c3         ret           ; never gets here >>>>>>> Size in bytes:(0018) [000020b3]

    Exactly which step of DDD emulated by H0 was emulated
    incorrectly such that this emulation would be complete?
    AKA DDD emulated by H0 reaches machine address [000020b3]



    Why does H0 NEED to be able to correctly simulate its input?


    Decider must compute the mapping from their finite string
    input to the actual behavior that this finite string specifies.
    They are not free to imagine the behavior that the authors of
    textbooks expect.

    AND THE DEFINITION OF THAT BEHAVIOR IS THE BEHAVIOR OF THE DIRECT
    EXECUTION OF THE PROGRAM THE INPUT REPRESENTS.

    Yes, the DO need to follow the behavior that the author of the
    problem defined.

    You are just showing you think it is ok to not follow the
    REQURIEMENTS and just LIE about what you are doing.

    The finite string input does not communicate the behavior
    that the textbook authors expect it to communicate.


    The finite string certainly DOES communicate what is needed to
    determine the behavior, or it wasn't a correct representation.


    There is no sequence of truth preserving operations from the finite
    string machine code of DDD that can correctly ignore the pathological relationship between H0 and DDD as an aspect of the behavior that
    this finite string specifies.


    Why does it need to "ignore" the relationship. We can in a finite number
    of operations show that the machine code of DDD (but we need ALL the
    machine code of DDD, including the functions it calls) show that DDD
    represents a Halting Program if the decider does what you claim, and
    returns 0 in a finite amount of time.

    Therefore, we can PROVE that your decider is wrong, and that you don;t understand what you are talkinga about.

    No one has noticed this before because no one ever thought to make
    every single detail 100% concrete, thus leaving huge gaps in all
    prior reasoning.


    Nope, you are seeing phantoms, because you somehow think that the
    Decider MUST be right, and if the world doesn't let it be, then the
    world is wrong.

    This is your fundamental problem, you think, because of your "god
    complex" that you must be right, but that is not so. If you were diety,
    then you would not be dying of cancer. IF you don't have enough command
    over your body to fix that, you don't have command over truth to make it
    what you want.

    You have just lied to yourself so much that you believe in yourself, but
    that means you have beleived in a liar.

    --- SoupGate-Win32 v1.05
    * Origin: fsxNet Usenet Gateway (21:1/5)
  • From Mikko@21:1/5 to olcott on Thu Jun 20 17:54:09 2024
    On 2024-06-20 05:22:27 +0000, olcott said:

    On 6/20/2024 12:17 AM, Mikko wrote:
    On 2024-06-19 13:00:57 +0000, olcott said:

    On 6/19/2024 3:08 AM, Fred. Zwarts wrote:
    Op 18.jun.2024 om 18:26 schreef olcott:
    On 6/18/2024 10:47 AM, Fred. Zwarts wrote:
    Op 18.jun.2024 om 17:33 schreef olcott:
    On 6/18/2024 10:20 AM, Fred. Zwarts wrote:

    It is a verified fact that serious C people have recently
    agreed to the following verbatim statement in the C group.

    http://al.howardknight.net/?STYPE=msgid&MSGI=%3Cv4pg5p%24morv%241%40raubtier-asyl.eternal-september.org%3E+


    You either lack this degree of skill in C or are only
    interested in playing head games.

    I have seen the response. It was most certainly not a serious reply. >>>>>> But you know apparently to little of C to understand that.
    Probably, because you are unable to escape from rebuttal mode, even if >>>>>> the truth is obvious.


    I have known C since K&R was the standard and met
    Bjarne Stroustrup when he came to our university
    to promote his new C++ programming language.

    *You seem to be willfully ignorant*

    It was your own proof that showed that in

            int main()
            {
              return H(main);
            }


    main halts, whereas H reported non-halting. So, it you were honest you >>>>>> would stop claiming that H is correct.


    That is merely a more difficult to understand version of this
    same pathological relationship.

    int main()
    {
       Output("Input_Halts = ", HH0(main));
    }

    _main()
    [000020c2] 55         push ebp
    [000020c3] 8bec       mov ebp,esp
    [000020c5] 68c2200000 push 000020c2 ; push main
    [000020ca] e833f4ffff call 00001502 ; call HH0
    [000020cf] 83c404     add esp,+04
    [000020d2] 50         push eax
    [000020d3] 6843070000 push 00000743
    [000020d8] e885e6ffff call 00000762
    [000020dd] 83c408     add esp,+08
    [000020e0] eb04       jmp 000020e6
    [000020e2] 33c0       xor eax,eax
    [000020e4] eb02       jmp 000020e8
    [000020e6] 33c0       xor eax,eax
    [000020e8] 5d         pop ebp
    [000020e9] c3         ret
    Size in bytes:(0040) [000020e9]

      machine   stack     stack     machine    assembly
      address   address   data      code       language >>>>>   ========  ========  ========  =========  =============
    [000020c2][001036c3][00000000] 55         push ebp
    [000020c3][001036c3][00000000] 8bec       mov ebp,esp
    [000020c5][001036bf][000020c2] 68c2200000 push 000020c2 ; push main
    [000020ca][001036bb][000020cf] e833f4ffff call 00001502 ; call HH0
    New slave_stack at:103767

    Begin Local Halt Decider Simulation   Execution Trace Stored at:11376f >>>>> [000020c2][0011375f][00113763] 55         push ebp      ; begin main
    [000020c3][0011375f][00113763] 8bec       mov ebp,esp
    [000020c5][0011375b][000020c2] 68c2200000 push 000020c2 ; push main
    [000020ca][00113757][000020cf] e833f4ffff call 00001502 ; call HH0
    New slave_stack at:14e18f
    [000020c2][0015e187][0015e18b] 55         push ebp      ; begin main
    [000020c3][0015e187][0015e18b] 8bec       mov ebp,esp
    [000020c5][0015e183][000020c2] 68c2200000 push 000020c2 ; push main
    [000020ca][0015e17f][000020cf] e833f4ffff call 00001502 ; call HH0
    Local Halt Decider: Infinite Recursion Detected Simulation Stopped

    [000020cf][001036c3][00000000] 83c404     add esp,+04
    [000020d2][001036bf][00000000] 50         push eax
    [000020d3][001036bb][00000743] 6843070000 push 00000743
    [000020d8][001036bb][00000743] e885e6ffff call 00000762
    Input_Halts = 0
    [000020dd][001036c3][00000000] 83c408     add esp,+08
    [000020e0][001036c3][00000000] eb04       jmp 000020e6
    [000020e6][001036c3][00000000] 33c0       xor eax,eax
    [000020e8][001036c7][00000018] 5d         pop ebp
    [000020e9][001036cb][00000000] c3         ret           ; exit main
    Number of Instructions Executed(10070) == 150 Pages


    It is easier to understand because a print statement was added.
    You proved that it halts, but H0 reports non-halting.
    So, it produces a false negative.
    So, now it has been proved that H, H0, etc produce false negatives,
    when used to determine halting behaviour, please, stop to call them
    halt-deciders, or termination-deciders.
    They might be "simulation deciders". When returning true, the
    simulation was correct, when false, the full simulation was not
    possible.

    I don't want to discuss your screwy example because I
    can't use screwy examples in my paper.

    If you could ever publish a paper there would soon be papers with examples >> (which you may call "screwy") that your method gets wrong.


    My whole purpose is to refute the conventional proofs.

    After so many years, why it is still a purpose and not a publication?

    --
    Mikko

    --- SoupGate-Win32 v1.05
    * Origin: fsxNet Usenet Gateway (21:1/5)
  • From joes@21:1/5 to All on Thu Jun 20 22:48:17 2024
    XPost: sci.logic

    Am Wed, 19 Jun 2024 21:25:31 -0500 schrieb olcott:
    On 6/19/2024 9:17 PM, Richard Damon wrote:
    On 6/19/24 10:02 PM, olcott wrote:
    On 6/19/2024 8:39 PM, Richard Damon wrote:
    On 6/19/24 8:44 PM, olcott wrote:
    On 6/19/2024 7:23 PM, Richard Damon wrote:
    On 6/19/24 9:00 AM, olcott wrote:
    On 6/19/2024 3:08 AM, Fred. Zwarts wrote:
    Op 18.jun.2024 om 18:26 schreef olcott:
    On 6/18/2024 10:47 AM, Fred. Zwarts wrote:
    Op 18.jun.2024 om 17:33 schreef olcott:
    On 6/18/2024 10:20 AM, Fred. Zwarts wrote:

    It is easier to understand because a print statement was added. >>>>>>>> You proved that it halts, but H0 reports non-halting.
    So, it produces a false negative.
    So, now it has been proved that H, H0, etc produce false
    negatives, when used to determine halting behaviour, please, stop >>>>>>>> to call them halt-deciders, or termination-deciders.
    They might be "simulation deciders". When returning true, the
    simulation was correct, when false, the full simulation was not >>>>>>>> possible.

    Why does H0 NEED to be able to simulate its input?
    Yeah, why? That just adds a contradictory requirement. Not that it were possible otherwise.

    Decider must compute the mapping from their finite string input to
    the actual behavior that this finite string specifies.
    If possible.
    They are not free to imagine the behavior that the authors of
    textbooks expect.
    Nor crackpots.

    The finite string input does not communicate the behavior that the
    textbook authors expect it to communicate.
    Bullshit. Your neither-decider-nor-simulator just can't handle it.
    The direct execution of DDD is the measure of things. A simulation
    must behave identically. Of course you may be able to do analysis
    on whether it halts, but that's different. Simulation is dumb.

    The finite string certainly DOES communicate what is needed to
    determine the behavior, or it wasn't a correct representation.
    Deflection follows:
    There is no sequence of truth preserving operations from the finite
    string machine code of DDD that can correctly ignore the pathological relationship between H0 and DDD as an aspect of the behavior that this
    finite string specifies.
    Many other simulators or deciders work correctly with DDD, just not the
    one it calls. But they each get a different one wrong.
    What do you mean with "ignore the relationship"?

    No one has noticed this before because no one ever thought to make every single detail 100% concrete, thus leaving huge gaps in all prior
    reasoning.
    We have a proof.

    --
    Man kann mit dunklen Zahlen nicht rechnen. Für die eigentliche Mathematik
    sind sie vollkommen nutzlos. --Wolfgang Mückenheim

    --- SoupGate-Win32 v1.05
    * Origin: fsxNet Usenet Gateway (21:1/5)
  • From joes@21:1/5 to All on Thu Jun 20 23:05:06 2024
    XPost: sci.logic

    Am Thu, 20 Jun 2024 17:52:17 -0500 schrieb olcott:
    On 6/20/2024 5:48 PM, joes wrote:
    Am Wed, 19 Jun 2024 21:25:31 -0500 schrieb olcott:
    On 6/19/2024 9:17 PM, Richard Damon wrote:
    On 6/19/24 10:02 PM, olcott wrote:
    On 6/19/2024 8:39 PM, Richard Damon wrote:
    On 6/19/24 8:44 PM, olcott wrote:
    On 6/19/2024 7:23 PM, Richard Damon wrote:
    On 6/19/24 9:00 AM, olcott wrote:
    On 6/19/2024 3:08 AM, Fred. Zwarts wrote:
    Op 18.jun.2024 om 18:26 schreef olcott:
    On 6/18/2024 10:47 AM, Fred. Zwarts wrote:
    Op 18.jun.2024 om 17:33 schreef olcott:
    On 6/18/2024 10:20 AM, Fred. Zwarts wrote:

    Why does H0 NEED to be able to simulate its input?
    Yeah, why? That just adds a contradictory requirement. Not that it were
    possible otherwise.
    Why do you want to decide halting by incomplete simulation?

    Decider must compute the mapping from their finite string input to >>>>>>> the actual behavior that this finite string specifies.
    If possible.
    Which it is not.

    They are not free to imagine the behavior that the authors of
    textbooks expect.
    Nor crackpots.

    The finite string input does not communicate the behavior that the
    textbook authors expect it to communicate.
    Bullshit. Your neither-decider-nor-simulator just can't handle it.
    The direct execution of DDD is the measure of things. A simulation must
    behave identically. Of course you may be able to do analysis on whether
    it halts, but that's different. Simulation is dumb.
    Your "simulator" is wrong.

    The finite string certainly DOES communicate what is needed to
    determine the behavior, or it wasn't a correct representation.

    There is no sequence of truth preserving operations from the finite
    string machine code of DDD that can correctly ignore the pathological
    relationship between H0 and DDD as an aspect of the behavior that this
    finite string specifies.
    What do you mean with "ignore the relationship"?
    Your H0 can not derive the behaviour of DDD, because it contradicts its
    own result.

    We have a proof.
    You have dogmatic false assumptions.
    Go ahead, disprove Turing.
    It is an verified fact that the input to H(D,D) cannot be mapped to the behavior of D(D).
    Yes, H can not decide/simulate D(D). G can that exact D constructed
    on H, but not the E which calls G.

    When I say "mapped" I don't mean look something up in Google maps.
    Cut the insults.

    --
    Man kann mit dunklen Zahlen nicht rechnen. Für die eigentliche Mathematik
    sind sie vollkommen nutzlos. --Wolfgang Mückenheim

    --- SoupGate-Win32 v1.05
    * Origin: fsxNet Usenet Gateway (21:1/5)
  • From Richard Damon@21:1/5 to olcott on Thu Jun 20 21:55:28 2024
    XPost: sci.logic

    On 6/20/24 6:52 PM, olcott wrote:
    On 6/20/2024 5:48 PM, joes wrote:
    Am Wed, 19 Jun 2024 21:25:31 -0500 schrieb olcott:
    On 6/19/2024 9:17 PM, Richard Damon wrote:
    On 6/19/24 10:02 PM, olcott wrote:
    On 6/19/2024 8:39 PM, Richard Damon wrote:
    On 6/19/24 8:44 PM, olcott wrote:
    On 6/19/2024 7:23 PM, Richard Damon wrote:
    On 6/19/24 9:00 AM, olcott wrote:
    On 6/19/2024 3:08 AM, Fred. Zwarts wrote:
    Op 18.jun.2024 om 18:26 schreef olcott:
    On 6/18/2024 10:47 AM, Fred. Zwarts wrote:
    Op 18.jun.2024 om 17:33 schreef olcott:
    On 6/18/2024 10:20 AM, Fred. Zwarts wrote:

    It is easier to understand because a print statement was added. >>>>>>>>>> You proved that it halts, but H0 reports non-halting.
    So, it produces a false negative.
    So, now it has been proved that H, H0, etc produce false
    negatives, when used to determine halting behaviour, please, stop >>>>>>>>>> to call them halt-deciders, or termination-deciders.
    They might be "simulation deciders". When returning true, the >>>>>>>>>> simulation was correct, when false, the full simulation was not >>>>>>>>>> possible.

    Why does H0 NEED to be able to simulate its input?
    Yeah, why? That just adds a contradictory requirement. Not that it were
    possible otherwise.

    Decider must compute the mapping from their finite string input to >>>>>>> the actual behavior that this finite string specifies.
    If possible.
    They are not free to imagine the behavior that the authors of
    textbooks expect.
    Nor crackpots.

    The finite string input does not communicate the behavior that the
    textbook authors expect it to communicate.
    Bullshit. Your neither-decider-nor-simulator just can't handle it.
    The direct execution of DDD is the measure of things. A simulation
    must behave identically. Of course you may be able to do analysis
    on whether it halts, but that's different. Simulation is dumb.

    The finite string certainly DOES communicate what is needed to
    determine the behavior, or it wasn't a correct representation.
    Deflection follows:
    There is no sequence of truth preserving operations from the finite
    string machine code of DDD that can correctly ignore the pathological
    relationship between H0 and DDD as an aspect of the behavior that this
    finite string specifies.
    Many other simulators or deciders work correctly with DDD, just not the
    one it calls. But they each get a different one wrong.
    What do you mean with "ignore the relationship"?

    No one has noticed this before because no one ever thought to make every >>> single detail 100% concrete, thus leaving huge gaps in all prior
    reasoning.
    We have a proof.


    You have dogmatic false assumptions.
    It is an verified fact that the input to H(D,D) cannot
    be mapped to the behavior of D(D).


    ????

    But the Halting Function does that map.


    When I say "mapped" I don't mean look something
    up in Google maps.


    No, and you don't mean a defined mapping of the input to the output, you
    LIE by trying to mean only COMPUTABLE mappings, which is just a LIE.


    I guess you are just admitting that you are just a totally ignorant liar.

    --- SoupGate-Win32 v1.05
    * Origin: fsxNet Usenet Gateway (21:1/5)
  • From Richard Damon@21:1/5 to olcott on Thu Jun 20 22:43:16 2024
    XPost: sci.logic

    On 6/20/24 10:29 PM, olcott wrote:
    On 6/20/2024 8:55 PM, Richard Damon wrote:
    On 6/20/24 6:52 PM, olcott wrote:
    On 6/20/2024 5:48 PM, joes wrote:
    Am Wed, 19 Jun 2024 21:25:31 -0500 schrieb olcott:
    On 6/19/2024 9:17 PM, Richard Damon wrote:
    On 6/19/24 10:02 PM, olcott wrote:
    On 6/19/2024 8:39 PM, Richard Damon wrote:
    On 6/19/24 8:44 PM, olcott wrote:
    On 6/19/2024 7:23 PM, Richard Damon wrote:
    On 6/19/24 9:00 AM, olcott wrote:
    On 6/19/2024 3:08 AM, Fred. Zwarts wrote:
    Op 18.jun.2024 om 18:26 schreef olcott:
    On 6/18/2024 10:47 AM, Fred. Zwarts wrote:
    Op 18.jun.2024 om 17:33 schreef olcott:
    On 6/18/2024 10:20 AM, Fred. Zwarts wrote:

    It is easier to understand because a print statement was added. >>>>>>>>>>>> You proved that it halts, but H0 reports non-halting.
    So, it produces a false negative.
    So, now it has been proved that H, H0, etc produce false >>>>>>>>>>>> negatives, when used to determine halting behaviour, please, >>>>>>>>>>>> stop
    to call them halt-deciders, or termination-deciders.
    They might be "simulation deciders". When returning true, the >>>>>>>>>>>> simulation was correct, when false, the full simulation was not >>>>>>>>>>>> possible.

    Why does H0 NEED to be able to simulate its input?
    Yeah, why? That just adds a contradictory requirement. Not that it were >>>> possible otherwise.

    Decider must compute the mapping from their finite string input to >>>>>>>>> the actual behavior that this finite string specifies.
    If possible.
    They are not free to imagine the behavior that the authors of >>>>>>>>> textbooks expect.
    Nor crackpots.

    The finite string input does not communicate the behavior that the >>>>>>> textbook authors expect it to communicate.
    Bullshit. Your neither-decider-nor-simulator just can't handle it.
    The direct execution of DDD is the measure of things. A simulation
    must behave identically. Of course you may be able to do analysis
    on whether it halts, but that's different. Simulation is dumb.

    The finite string certainly DOES communicate what is needed to
    determine the behavior, or it wasn't a correct representation.
    Deflection follows:
    There is no sequence of truth preserving operations from the finite
    string machine code of DDD that can correctly ignore the pathological >>>>> relationship between H0 and DDD as an aspect of the behavior that this >>>>> finite string specifies.
    Many other simulators or deciders work correctly with DDD, just not the >>>> one it calls. But they each get a different one wrong.
    What do you mean with "ignore the relationship"?

    No one has noticed this before because no one ever thought to make
    every
    single detail 100% concrete, thus leaving huge gaps in all prior
    reasoning.
    We have a proof.


    You have dogmatic false assumptions.
    It is an verified fact that the input to H(D,D) cannot
    be mapped to the behavior of D(D).


    ????

    But the Halting Function does that map.


    I ask you to show the detailed steps of that map and
    you always dodge. This leads me to believe that you
    know you are lying.

    "maps" don't HAVE steps, they have results.

    Since DDD WILL HALT, since HH0(DDD) will return or you have lies that
    HH0 is a decider, then the map is:

    DDD -> Halting.

    The mapping is DEFINED not by a finite sequence of steps, but by a
    result which is determined by the factual basis of does the program
    represented by the input come to a final state in a finite number of
    steps of that program when it is run. And it does, since you have
    indicated that HH0 is defined to alway return an answer in a finite
    number of steps.

    So, DDD will halt unless you are a liar.



    _DDD()
    [00002093] 55               push ebp
    [00002094] 8bec             mov ebp,esp
    [00002096] 6893200000       push 00002093 ; push DDD
    [0000209b] e853f4ffff       call 000014f3 ; call HH0
    [000020a0] 83c404           add esp,+04
    [000020a3] 5d               pop ebp
    [000020a4] c3               ret
    Size in bytes:(0018) [000020a4]


    --- SoupGate-Win32 v1.05
    * Origin: fsxNet Usenet Gateway (21:1/5)