Path: ...!weretis.net!feeder9.news.weretis.net!news.nk.ca!rocksolid2!i2pn2.org!.POSTED!not-for-mail From: Richard Damon Newsgroups: comp.theory Subject: Re: My reviewers think that halt deciders must report on the behavior of their caller Date: Wed, 4 Jun 2025 21:43:23 -0400 Organization: i2pn2 (i2pn.org) Message-ID: <15abd00ec5b1e4a13892e85ee6ace9ac10d92c56@i2pn2.org> References: <101nq32$99vd$1@dont-email.me> <101or6b$maj5$1@dont-email.me> <101pq02$ta6v$4@dont-email.me> MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8; format=flowed Content-Transfer-Encoding: 8bit Injection-Date: Thu, 5 Jun 2025 01:57:23 -0000 (UTC) Injection-Info: i2pn2.org; logging-data="3330689"; mail-complaints-to="usenet@i2pn2.org"; posting-account="diqKR1lalukngNWEqoq9/uFtbkm5U+w3w6FQ0yesrXg"; User-Agent: Mozilla Thunderbird In-Reply-To: <101pq02$ta6v$4@dont-email.me> X-Spam-Checker-Version: SpamAssassin 4.0.0 Content-Language: en-US Bytes: 3945 Lines: 87 On 6/4/25 11:50 AM, olcott wrote: > On 6/4/2025 2:04 AM, Mikko wrote: >> On 2025-06-03 21:39:46 +0000, olcott said: >> >>> They all say that HHH must report on the behavior of >>> direct execution of DDD() >> >> No, they don't say that. A halting decider (and a partial halting >> decider when it reports) must report whether the direct execution >> of the computation asked about terminates. Unless that computation >> happens to be DDD() it must report about another behaviour instead >> of DDD(). >> >>> yet never bother to notice that the directly executed DDD() is >>> the caller of HHH(DDD). >> >> To say that nobody has noticed that is a lie. Perhaps they have not >> mentioned what is irrelevant to whatever they said. In particular, >> whether DDD() calls HHH(DDD) is irrelevant to the requirement that >> a halting decider must report about a direct exection of the >> computation the input specifies. >> > > *People have ignored this for 90 years* > *People have ignored this for 90 years* > *People have ignored this for 90 years* > > The only possible way that HHH can report on the > direct execution of DDD() is for HHH to report on > the behavior of its caller: So? It *IS* a fact that to be correct, it needs to answer about the direct executiom of the program that input represents. That is DEFINITION. That you don't undertstand that, just shows you don't understand what definitions mean, and thus you idea of truth coming from the "Meaning of the words" is just a contradiction in your system, as words apparently don't HAVE meaning. > > int main() > { >   DDD(); // calls HHH(DDD) > } > > void DDD() > { >   HHH(DDD); >   return; > } > > *The input to HHH(DDD) specifies* >  HHH simulates DDD that calls HHH(DDD) Note, the input doesn't START at the simulaton done by HHH, but as the execution of DDD. What you are describing is the behavior specified by your HHH. > that simulates DDD that calls HHH(DDD) > that simulates DDD that calls HHH(DDD) > that simulates DDD that calls HHH(DDD)... > Never reaching the "return" instruction final halt state. > And if that *IS* what HHH does, it NEVER answers and fails to be a decider. If HHH instead, as you say, WILL abort its simulation and returns 0 at some point, because it THINKS that its input is non-halting then the actaul behavior of that DDD specifies is: DDD will call HHH(DDD) Which will simulate DDD, which will call HHH(DDD) which causes the simulated HHH to simulate DDD until the top level HHH decides its input is non-halting and aborts and returns 0 to DDD Which then halts. *THAT* is the behavior that DDD specifies, to HHH or anyone else, with the definition that HHH does abort at some point to avoid looping forever. Sorry, just shows that you don't know what you are talking about.