Path: csiph.com!eternal-september.org!feeder3.eternal-september.org!news.eternal-september.org!eternal-september.org!.POSTED!not-for-mail From: Keith Thompson Newsgroups: comp.theory Subject: Re: Incorrect requirements --- Computing the mapping from the input to HHH(DD) Date: Thu, 08 May 2025 19:23:41 -0700 Organization: None to speak of Lines: 49 Message-ID: <87bjs2cyj6.fsf@nosuchdomain.example.com> References: <87msbmeo3b.fsf@nosuchdomain.example.com> <87ecwyekg2.fsf@nosuchdomain.example.com> MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit Injection-Date: Fri, 09 May 2025 04:23:41 +0200 (CEST) Injection-Info: dont-email.me; posting-host="302a6dd640940106301f9e87fdade96e"; logging-data="2450542"; mail-complaints-to="abuse@eternal-september.org"; posting-account="U2FsdGVkX1/+m+XOozdWFdue5GmF3hD/" User-Agent: Gnus/5.13 (Gnus v5.13) Cancel-Lock: sha1:2VBgaYmD3YpdG7zQrQ++NLVTKSo= sha1:q9NcwXhkgeXPCOhkF6xQ8CsS+Es= Xref: csiph.com comp.theory:118089 Richard Damon writes: > On 5/8/25 7:53 PM, olcott wrote: [...] >> void DDD() >> { >>   HHH(DDD); >>   return; >> } >> We don't need to look at any of my code for me >> to totally prove my point. For example when >> the above DDD is correctly simulated by HHH >> this simulated DDD cannot possibly reach its own >> "return" instruction. > > And thus not correctly simulatd. > > Sorry, there is no "OS Exemption" to correct simulaiton;. Perhaps I've missed something. I don't see anything in the above that implies that HHH does not correctly simulate DDD. Richard, you've read far more of olcott's posts than I have, so perhaps you can clarify. If we assume that HHH correctly simulates DDD, then the above code is equivalent to: void DDD() { DDD(); return; } which is a trivial case of infinite recursion. As far as I can tell, assuming that DDD() is actually called at some point, neither the outer execution of DDD nor the nested (simulated) execution of DDD can reach the return statement. Infinite recursion might either cause a stack overflow and a probable program crash, or an unending loop if the compiler implements tail call optimization. I see no contradiction, just an uninteresting case of infinite recursion, something that's well understood by anyone with a reasonable level of programming experience. (And it has nothing to do with the halting problem as far as I can tell, though of course olcott has discussed the halting problem elsewhere.) Richard, what am I missing? -- Keith Thompson (The_Other_Keith) Keith.S.Thompson+u@gmail.com void Void(void) { Void(); } /* The recursive call of the void */