Deutsch English Français Italiano |
<v6iu0s$1acpg$1@dont-email.me> View for Bookmarking (what is this?) Look up another Usenet article |
Path: ...!eternal-september.org!feeder3.eternal-september.org!news.eternal-september.org!.POSTED!not-for-mail From: "Fred. Zwarts" <F.Zwarts@HetNet.nl> Newsgroups: comp.theory,sci.logic Subject: Re: Liar detector: Fred, Richard, Joes and Alan --- Ben's agreement Date: Tue, 9 Jul 2024 10:56:59 +0200 Organization: A noiseless patient Spider Lines: 109 Message-ID: <v6iu0s$1acpg$1@dont-email.me> References: <v644pn$29t4h$3@dont-email.me> <v665c9$2oun1$4@dont-email.me> <v66t0p$2n56v$1@dont-email.me> <v66t7p$2srk8$1@dont-email.me> <v66tql$2n56v$3@dont-email.me> <v66u56$2suut$1@dont-email.me> <v66v8i$2n56v$4@dont-email.me> <v67028$2t9el$1@dont-email.me> <v68b3f$2n56v$5@dont-email.me> <v68ocd$39dkv$5@dont-email.me> <v68pfo$2n56v$7@dont-email.me> <v68rnv$39tml$2@dont-email.me> <v68tvd$3ac9t$1@dont-email.me> <v68uj0$3ahel$1@dont-email.me> <v694k4$3bevk$1@dont-email.me> <v69502$3bh3f$1@dont-email.me> <v6b1k4$3odj5$1@dont-email.me> <v6bf7r$3qiio$2@dont-email.me> <v6bm5v$3rj8n$1@dont-email.me> <v6bmoe$3ri0l$2@dont-email.me> <v6bnt2$3rj8n$3@dont-email.me> <v6brfj$3skuk$2@dont-email.me> <v6c3vh$3ttem$1@dont-email.me> <v6c539$3u2mj$1@dont-email.me> <v6dda0$7s8u$1@dont-email.me> <v6e67v$bbcb$4@dont-email.me> <v6gss2$t87a$1@dont-email.me> <v6gv65$to0m$1@dont-email.me> <v6h2li$ud7p$1@dont-email.me> <v6h2rm$ue7s$1@dont-email.me> <v6h3cu$ud7p$2@dont-email.me> <v6h83q$vag9$1@dont-email.me> MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8; format=flowed Content-Transfer-Encoding: 8bit Injection-Date: Tue, 09 Jul 2024 10:57:01 +0200 (CEST) Injection-Info: dont-email.me; posting-host="2f8ca44fc674f1b77eeed6105e880097"; logging-data="1389360"; mail-complaints-to="abuse@eternal-september.org"; posting-account="U2FsdGVkX19ppkYVdm92c3bElaYlvNik" User-Agent: Mozilla Thunderbird Cancel-Lock: sha1:a90eWRqy0b0TJ9lx7UawtXP3sP8= Content-Language: en-GB In-Reply-To: <v6h83q$vag9$1@dont-email.me> Bytes: 6058 Op 08.jul.2024 om 19:36 schreef olcott: > On 7/8/2024 11:16 AM, Fred. Zwarts wrote: >> Op 08.jul.2024 om 18:07 schreef olcott: >>> On 7/8/2024 11:04 AM, Fred. Zwarts wrote: >>>> Op 08.jul.2024 om 17:04 schreef olcott: >>>>> On 7/8/2024 9:25 AM, Fred. Zwarts wrote: >>>>>> Op 07.jul.2024 om 15:46 schreef olcott: >>>>>>> >>>>>>> Correctly is measured by the semantics of the x86 language. >>>>>>> This specifies that when DDD is correctly simulated by HHH >>>>>>> calls emulated HHH(DDD) that this call cannot return. >>>>>> >>>>>> Yes. This shows that the simulation is incorrect. >>>>>> >>>>>>> >>>>>>> You smash a bottle on the ground. No matter how much you >>>>>>> want the bottle to hold water it will not hold water. >>>>>> >>>>>> Similarly, HHH cannot possibly simulate itself correctly, no >>>>>> matter how much you want it to be correct, >>>>> >>>>> Where correct is understood to be what-ever-the-Hell that the >>>>> machine code of DDD specifies within the semantics of the x86 >>>>> language then: >>>>> >>>>> When DDD is correctly simulated by any pure function x86 emulator >>>>> HHH that aborts its emulation at some point calls HHH(DDD) then >>>>> it is correctly understood that this call cannot possibly return. >>>>> The proof of this is something like mathematical induction. >>>>> >>>>> When DDD is correctly emulated by any HHH that aborts >>>>> its emulation after N repetitions: >>>>> (1) DDD is correctly emulated by HHH >>>> >>>> But only the first part is simulated, not the full input. The >>>> simulation must simulate the full input. It will will only become >>>> correct if also the other behaviour of HHH is simulated. But HHH is >>>> unable to simulate itself up to that point. >>>> That is what the x86 code specifies. >>>> >>>>> (2) that calls an emulated HHH(DDD) that >>>>> (3) emulates another DDD... goto (2) or abort >>>> >>>> And when it aborts, it is one cycle to soon. >>> >>> Try to show how infinity is one cycle too soon. >>> >> You believe that two equals infinity. > > void Infinite_Loop() > { > HERE: goto HERE; > } > > void Infinite_Recursion() > { > Infinite_Recursion(); > } > > void DDD() > { > HHH(DDD); > } > > Two cycles is enough to correctly determine that none > of the above functions correctly emulated by HHH can > possibly halt. > > That you don't see this is ignorance or deception. > The first two irrelevant examples cannot halt, but they differ fundamentally from DDD, because DDD, like Finite_Recursion, halts after N repetitions. void Finite_Recursion (int N) { if (N > 0) Finite_Recursion (N - 1); } DDD, is is an unneeded complication, the simple case is: int main() { return H(main, 0); } Yes, your are right that HHH cannot possibly simulate itself correctly. That is because HHH aborts after simulating two cycles of itself. Then it aborts. It does not simulate the full behaviour of the input, which would abort and return one cycle later. So, it misses the most important part of itself, namely, that it aborts and returns. It assumes that two cycles are equivalent to an infinite number of cycles, which, of course, is an invalid assumption. TWO DOES NOT EQUAL INFINITY! That makes the simulation incorrect. A simulation must process the full input, not only the first part, in particular when the last part halts by its own and does not need an abort. You have shown that other simulators are able to show that a correct simulation of HHH halts. It is only HHH that cannot possibly simulate itself correctly. This is supported by your claim that the simulation cannot possibly reach the 'ret' instruction. It is also supported by the full trace, you published, where we see that the x86 code of the simulated HHH is not completely simulated, but aborted one cycle too early. So, this incorrect simulation cannot be used to get support from Sipser, who only spoke about a correct simulation.