Deutsch English Français Italiano |
<v6uk7h$3nd6t$1@dont-email.me> View for Bookmarking (what is this?) Look up another Usenet article |
Path: ...!3.eu.feeder.erje.net!feeder.erje.net!weretis.net!feeder8.news.weretis.net!eternal-september.org!feeder3.eternal-september.org!news.eternal-september.org!.POSTED!not-for-mail From: olcott <polcott333@gmail.com> Newsgroups: comp.theory Subject: Re: What is the correct halt status for HHH(DDD) ? --- Tautology Date: Sat, 13 Jul 2024 14:23:29 -0500 Organization: A noiseless patient Spider Lines: 115 Message-ID: <v6uk7h$3nd6t$1@dont-email.me> References: <v6ub4i$3luop$1@dont-email.me> <ad93b25297ec232cc5605c0979e3b3fe3c9283f2@i2pn2.org> <v6ug87$3mpsd$1@dont-email.me> <29624b83c2e7ab328d56a2bcbebde2a00b1f7790@i2pn2.org> <v6uifl$3n55j$2@dont-email.me> <0e5183b652b6c4f856314d6d9ba950d06499e24f@i2pn2.org> MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8; format=flowed Content-Transfer-Encoding: 8bit Injection-Date: Sat, 13 Jul 2024 21:23:29 +0200 (CEST) Injection-Info: dont-email.me; posting-host="52398669a80ff5113c36343403a598c9"; logging-data="3912925"; mail-complaints-to="abuse@eternal-september.org"; posting-account="U2FsdGVkX1/zs/yLmC7Tce6xC6GXhPWH" User-Agent: Mozilla Thunderbird Cancel-Lock: sha1:gpbEhxazaabQhRUqMZXvWUe9Cxc= In-Reply-To: <0e5183b652b6c4f856314d6d9ba950d06499e24f@i2pn2.org> Content-Language: en-US Bytes: 5229 On 7/13/2024 2:10 PM, Richard Damon wrote: > On 7/13/24 2:53 PM, olcott wrote: >> On 7/13/2024 1:33 PM, Richard Damon wrote: >>> On 7/13/24 2:15 PM, olcott wrote: >>>> On 7/13/2024 12:25 PM, Richard Damon wrote: >>>>> On 7/13/24 12:48 PM, olcott wrote: >>>>>> What is the correct halt status for an input to >>>>>> a simulating termination analyzer that calls its >>>>>> own termination analyzer? >>>>>> >>>>>> typedef void (*ptr)(); >>>>>> int HHH(ptr P); >>>>>> >>>>>> void DDD() >>>>>> { >>>>>> HHH(DDD); >>>>>> } >>>>>> >>>>>> int main() >>>>>> { >>>>>> HHH(DDD); >>>>>> } >>>>>> >>>>> >>>>> Halting. >>>>> >>>>> Since HHH defined to be a termination analyzer, by that definition >>>>> it must return to its caller. >>>>> >>>>> Since DDD has no inputs, its behavior isn't affected by any inputs, >>>>> and thus DDD will halt for ALL input conditions, so >>>> >>>> You are stupidly saying that Infinite_Loop() will halt because >>>> it has no inputs. >>>> >>> >>> Where did I say no input means halting? >>> >>> I said that since DDD has no inputs, a Termination analyizer doesn't >>> need to look over all inputs, as there are no inputs to affect it. >>> >>> Maybe you forget that a Termination Analyzer is not the same thing as >>> a Halt Decider. >>> >>> A Halt Decider determines if the given program will halt for the >>> given input, and needs to be given both (if the program takes an input). >>> >>> A Termination Analyzer determines if a given program will halt for >>> every possible input, and thus is only given the program, and not the >>> input to test. >>> >>> >>> Note, for Infinite_Loop below, it IS possible for a simulator to >>> detect a condition in a finite amount of time that an unbounded >>> emulation would never halt, so can answer correctly non-halting. >>> >>> The problem with trying to apply that to DDD is it isn't true, give >>> the DDD that uses the HHH that tries to think it has determined it to >>> never halt to a actual pure emulator (and thus DDD still calls that >>> HHH that thinks it has determined that DDD will not halt and aborts >>> its emulation and returns) then the pure emulatior will see that HHH >>> make that decisioin and return to DDD which will return. >>> >>> Thus HHH can never actually make that same conclusion. You logic is >>> incorrrect as you presume the input changes with the emulator, but it >>> actually doesn't, it changes with the emulator you have stated is the >>> one that gives the correct answer, which you can't change in the >>> middle of the problem. >>> >>>> void Infinite_Loop() >>>> { >>>> HERE: goto HERE; >>>> } >>>> >>>>> for HHH to be a correct termination analysizer it needs to return >>>>> the value to indicate Halting. >>>>> >>>> Yes >>> >>> And thus, it WILL return that value to the DDD that calls it, and >>> that DDD will halt. >>> >>>> >>>>> Your version >>>> >>>> I am asking What is the correct halt status for HHH(DDD) >>>> that at least one element of every possible pure function >>>> HHH can provide. >>>> >>> >>> The only correct answer it is able to give is Halt. >>> >> >> Yet 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. > > But the DDD that this HHH is given doesn't need to be aborted. > > That is proven by HHH1(DDD). > That is not the same DDD instance and you know it. That is the DDD after HHH has aborted its DDD. My code shows HHH1 creating a process context and HHH creating two more different contexts. HHH1 depends on HHH aborting its own different DDD for the DDD of HHH1 to halt. -- Copyright 2024 Olcott "Talent hits a target no one else can hit; Genius hits a target no one else can see." Arthur Schopenhauer