• Re: Ben's agreement that D must be aborted by H

    From joes@21:1/5 to All on Mon Jul 22 21:25:38 2024
    Am Mon, 22 Jul 2024 14:50:08 -0500 schrieb olcott:
    On 10/14/2022 7:44 PM, Ben Bacarisse wrote:
    Python <python@invalid.org> writes:

    I don't think that is the shell game. PO really /has/ an H (it's
    trivial to do for this one case) that correctly determines that P(P)
    *would* never stop running *unless* aborted. He knows and accepts that
    P(P) actually does stop. The wrong answer is justified by what would
    happen if H (and hence a different P) where not what they actually are.

    In other words: "if the simulation were right the answer would be
    right".
    I don't think that's the right paraphrase. He is saying if P were
    different (built from a non-aborting H) H's answer would be the right
    one.

    But the simulation is not right. D actually halts.
    But H determines (correctly) that D would not halt if it were not
    halted. That much is a truism.
    Why did you dig up a 2 year old post that doesn't even agree with you?

    It is also a truism that any input that must be aborted to prevent the non-termination of the simulating termination analyzer does specify non-terminating behavior or it would never need to aborted.
    Changing HHH to abort changes the behaviour of DDD, which calls it.

    What's wrong is to pronounce that answer as being correct for the D
    that does, in fact, stop.

    It's certainly dishonest to claim support from an expert who clearly
    does not agree with the conclusions. Pestering, and then tricking,
    someone into agreeing to some vague hypothetical is not how academic
    research is done. Had PO come clean and ended his magic paragraph with
    "and therefore 'does not 'halt' is the correct answer even though D
    halts" he would have got a more useful reply.

    You are conflating two different process instances that have different process states. The D correctly simulated by H is an entirely different process than D(D) directly executed in main().
    Same input, same output.

    D correctly emulated by H specifies recursive emulation that must be
    aborted. D(D) directly executed in main() does not specify recursive emulation that must be aborted.
    Eh, it does. Simulation doesn't make a difference.

    Let's keep in mind this is exactly what he's saying:
    "Yes [H(P,P) == false] is the correct answer even though P(P)
    halts."
    Why? Because:
    "we can prove that Halts() did make the correct halting decision
    when we comment out the part of Halts() that makes this decision and
    H_Hat() remains in infinite recursion"
    --
    Am Sat, 20 Jul 2024 12:35:31 +0000 schrieb WM in sci.math:
    It is not guaranteed that n+1 exists for every n.

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