Path: news.eternal-september.org!eternal-september.org!.POSTED!not-for-mail From: olcott Newsgroups: comp.lang.c Subject: Re: How do simulating termination analyzers work? (in C and C++) Date: Thu, 19 Jun 2025 09:52:35 -0500 Organization: A noiseless patient Spider Lines: 85 Message-ID: <103187j$3u901$2@dont-email.me> References: <102stfv$2mgvq$1@dont-email.me> <102uk8v$369b2$5@dont-email.me> <102uku3$36q7c$1@raubtier-asyl.eternal-september.org> <102umks$369b2$12@dont-email.me> <1030cq2$3o747$1@dont-email.me> MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8; format=flowed Content-Transfer-Encoding: 8bit Injection-Date: Thu, 19 Jun 2025 16:52:36 +0200 (CEST) Injection-Info: dont-email.me; posting-host="030154485115acd58dbc4da32e6ee0de"; logging-data="4137985"; mail-complaints-to="abuse@eternal-september.org"; posting-account="U2FsdGVkX18+r6uSgEVf0X0z2PQey8UE" User-Agent: Mozilla Thunderbird Cancel-Lock: sha1:bf4xxoiPywPvQwx06dWxOV1++gM= X-Antivirus: Norton (VPS 250619-2, 6/19/2025), Outbound message Content-Language: en-US In-Reply-To: <1030cq2$3o747$1@dont-email.me> X-Antivirus-Status: Clean On 6/19/2025 2:04 AM, Mikko wrote: > On 2025-06-18 15:40:12 +0000, olcott said: > >> On 6/18/2025 10:11 AM, Bonita Montero wrote: >>> Am 18.06.2025 um 16:59 schrieb olcott: >>>> On 6/17/2025 6:24 PM, olcott wrote: >>>>> void Infinite_Recursion() >>>>> { >>>>>    Infinite_Recursion(); >>>>>    return; >>>>> } >>>>> >>>>> void Infinite_Loop() >>>>> { >>>>>    HERE: goto HERE; >>>>>    return; >>>>> } >>>>> >>>>> void DDD() >>>>> { >>>>>    HHH(DDD); >>>>>    return; >>>>> } >>>>> >>>>> When it is understood that HHH does simulate itself >>>>> simulating DDD then any first year CS student knows >>>>> that when each of the above are correctly simulated >>>>> by HHH that none of them ever stop running unless aborted. >>>>> (recursive simulation is similar to infinite recursion). >>>>> >>>>> The same thing equally applies to these two, yet they may >>>>> be  too difficult for a first year CS student. >>>>> >>>>> int Sipser_D() >>>>> { >>>>>    if (HHH(Sipser_D) == 1) >>>>>      return 0; >>>>>    return 1; >>>>> } >>>>> >>>>> int DD() >>>>> { >>>>>    int Halt_Status = HHH(DD); >>>>>    if (Halt_Status) >>>>>      HERE: goto HERE; >>>>>    return Halt_Status; >>>>> } >>>>> >>>>> *Fully operational code* >>>>> https://github.com/plolcott/x86utm/blob/master/Halt7.c >>>>> >>>> >>>> I am only asking whether or not people here can understand >>>> that when each of the above functions are correctly simulated >>>> by simulating termination analyzer HHH that they would never >>>> stop running unless aborted. *Please start with the first three* >>>> >>> >>> Ask in comp.theory, here your posting is wrong. >> >> Asking about the behavior of a C function in a C group >> is not wrong. > > It is if essential aspects of the bhaviour depend on non-standard > extensions to C. > That is not true. We are only asking about the above functions correctly simulated by termination analyzer HHH. I am assuming that people here know what a C interpreter is. They don't really need to know what a termination analyzer is. > Nobody is going to answer about a complex program. The way to ask about > a complex program is to ask the same question about a simple program. > That is why I give the first three examples. The second two examples are merely a more complex form of the third example. -- Copyright 2025 Olcott "Talent hits a target no one else can hit; Genius hits a target no one else can see." Arthur Schopenhauer