Path: ...!eternal-september.org!feeder3.eternal-september.org!news.eternal-september.org!.POSTED!not-for-mail From: "Fred. Zwarts" Newsgroups: comp.theory Subject: Re: Liar detector: Fred, Richard, Joes and Alan --- Ben's agreement Date: Tue, 16 Jul 2024 20:09:58 +0200 Organization: A noiseless patient Spider Lines: 73 Message-ID: References: <60a1c2490e9bd9a5478fd173a20ed64d5eb158f9@i2pn2.org> MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8; format=flowed Content-Transfer-Encoding: 7bit Injection-Date: Tue, 16 Jul 2024 20:09:59 +0200 (CEST) Injection-Info: dont-email.me; posting-host="cb5b2ac19d0ddbc2ff8103cfb1db1c46"; logging-data="1458005"; mail-complaints-to="abuse@eternal-september.org"; posting-account="U2FsdGVkX1/FTTy/wJzuGTAFQ2O3VrbT" User-Agent: Mozilla Thunderbird Cancel-Lock: sha1:NSpJbLugeXOETy7HbzNGvd1mxDk= In-Reply-To: Content-Language: en-GB Bytes: 4761 Op 16.jul.2024 om 16:21 schreef olcott: > On 7/16/2024 1:58 AM, Mikko wrote: >> On 2024-07-15 12:55:21 +0000, olcott said: >> >>> On 7/15/2024 2:15 AM, Mikko wrote: >>>> On 2024-07-14 14:15:45 +0000, olcott said: >>>>> >>>>> *You can comprehend this is a truism or fail to* >>>>> *comprehend it disagreement is necessarily incorrect* >>>>> Any input that must be aborted to prevent the non >>>>> termination of HHH necessarily specifies non-halting >>>>> behavior or it would never need to be aborted. >>>> >>>> No, it is false. What the input specifies is a property of the input >>>> alone. >>>> Whether some HHH is able to process it without looping forever is not a >>>> property of the input and not relevant to the meaning of the input. >>> >>> In other words you believe that you can correctly >>> ignore the verified fact that DDD correctly emulated >>> by HHH does call HHH(DDD) in recursive emulation. >> >> It is not a fact and not verified but otherwise, yes, that is not >> relevant. >> > > When simulated input DDD stops running {if and only if} > the simulation of this input DDD has been aborted this > necessitates that input DDD specifies non-halting behavior > > Which is simply not true. That you believe it is true, means that you do not understand what a program is. DDD has nothing to do with it. It is easy to eliminate DDD: int main() { return HHH(main); } This has the same problem. This proves that the problem is not in DDD, but in HHH, which halts when it aborts the simulation, but it decides that the simulation of itself does not halt. HHH is unable to decide about finite recursions. void Finite_Recursion (int N) { if (N > 0) Finite_Recursion (N - 1); } It decides after N recursions that there is an infinite recursion, which is incorrect. Your HHH is programmed to abort the simulation after N cycles of recursive simulations. Therefore, it is incorrect to abort the simulation of HHH when the simulated HHH has performed N-1 cycles, because that changes the behaviour of HHH. Since the simulated HHH always runs one cycle behind the simulating HHH, it is clear that HHH can never simulate enough cycles for a correct simulation, as is required by the x86 language. Therefore, the simulation is incorrect according to the criteria you stipulated. The conclusion is simple: HHH cannot possibly simulate itself correctly. No matter how much you want it to be correct, or how many times you repeat that it is correct, it does not change the fact that such a simulation is incorrect, because it is unable to reach the end. Sipser would agree that this incorrect simulation cannot be used to detect a non-halting behaviour.