Path: ...!eternal-september.org!feeder3.eternal-september.org!news.eternal-september.org!.POSTED!not-for-mail From: olcott Newsgroups: comp.lang.c,comp.lang.c++ Subject: Re: Can D correctly simulated by H reach its own line 06 and halt? Date: Tue, 21 May 2024 21:17:59 -0500 Organization: A noiseless patient Spider Lines: 76 Message-ID: References: MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8; format=flowed Content-Transfer-Encoding: 8bit Injection-Date: Wed, 22 May 2024 04:17:59 +0200 (CEST) Injection-Info: dont-email.me; posting-host="9557ecc38a2c6e613b1947df9dd7fc56"; logging-data="1042899"; mail-complaints-to="abuse@eternal-september.org"; posting-account="U2FsdGVkX18QgC3fT7OYuoB9GNcke7CD" User-Agent: Mozilla Thunderbird Cancel-Lock: sha1:IpiozU9MrKjdXud/H2hqok/trwU= In-Reply-To: Content-Language: en-US Bytes: 4108 On 5/21/2024 9:10 PM, Sam wrote: > olcott writes: > >> On 5/21/2024 8:31 PM, Sam wrote: >>> olcott writes: >>> >>>> I learned C when K & R was the standard. >>>> I met Bjarne Stroustrup are our local university when he >>>> was promoting his new language. I have been a professional >>>> programmer since 1984, and a professional C++ software >>>> engineer since Y2K. >>> >>> And I have been Lord High Posterchild Of The Known Universe, since >>> birth. So what? > > Undeniable Truth Of Life #1 > >>>> I know that my C function template will not execute. >>> >>> Not only that, there is no such thing as "C function template" in the >>> first place. Templates are a C++ thing. There are not templates in C. >>> >>>> I can't provide the details of this because this template refers to >>>> an infinite set of H/D pairs where H is only required to correctly >>>> simulate N steps of D using an x86 emulator. H must be a pure function. >>> >>> Unfortunately, all our psychics are out to lunch and there's noone in >>> the office who knows how to operate the magical mind ray-beam machine >>> that's needed in order to extract all the relevant details from your >>> head. You'll need to patiently wait until the lunch break is over. >>> >>> We apologize for the inconvenience. > > Undeniable Truth Of Life #2 > >> typedef int (*ptr)();  // ptr is pointer to int function in C >> 00       int H(ptr p, ptr i); >> 01       int D(ptr p) >> 02       { >> 03         int Halt_Status = H(p, p); >> 04         if (Halt_Status) >> 05           HERE: goto HERE; >> 06         return Halt_Status; >> 07       } >> 08 >> 09       int main() >> 10       { >> 11         H(D,D); >> 12         return 0; >> 13       } > > More low-quality BASIC code. > >> It is essentially trivial to see that D correctly simulated by H >> cannot possibly reach its own final state at line 06 because >> D correctly simulated by H remains stuck in recursive simulation. >> >> This provides the basis for simulating termination analyzer H to >> correctly determine that the halting problem's counter-example >> input D cannot possibly halt. > > Negative. It is trivial to see that the above code does not execute, > and, as such, any claims about what it does or does not do are void, by > default. > > Oh I forgot to endlessly repeat that that the above is a code template such that every H/D pair of the infinite set of H/D pairs is only required to correctly simulate N steps of D using an x86 emulator. -- Copyright 2024 Olcott "Talent hits a target no one else can hit; Genius hits a target no one else can see." Arthur Schopenhauer