Path: ...!news.mixmin.net!eternal-september.org!feeder3.eternal-september.org!news.eternal-september.org!.POSTED!not-for-mail From: Mikko Newsgroups: comp.lang.c Subject: Re: D correctly simulated by pure function H cannot possibly reach its, own line 06 Date: Mon, 27 May 2024 11:47:05 +0300 Organization: - Lines: 43 Message-ID: References: MIME-Version: 1.0 Content-Type: text/plain; charset=iso-8859-1; format=flowed Content-Transfer-Encoding: 8bit Injection-Date: Mon, 27 May 2024 10:47:05 +0200 (CEST) Injection-Info: dont-email.me; posting-host="6b7c617f2a266f93b18d4555ba1c6467"; logging-data="4160315"; mail-complaints-to="abuse@eternal-september.org"; posting-account="U2FsdGVkX19Xq9RQAIpQYponlRFzTp+n" User-Agent: Unison/2.2 Cancel-Lock: sha1:5ZbhpgCNlXKMfRf46yb5RFCQrw0= Bytes: 2464 On 2024-05-26 16:54:51 +0000, olcott said: > On 5/26/2024 11:04 AM, Mikko wrote: >> On 2024-05-26 13:12:08 +0000, olcott said: >>> I had to make the subject line of the thread a little less accurate >>> so that people could get the gist of what I was saying. Now I have >>> made it precise. >> >> Subject lines typically are as they are limited to one line. That's >> not a problem. >> > > *I finally have much better words* > > 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 } > > When we see that D correctly simulated by pure simulator H would remain > stuck in recursive simulation then we also know that D never reaches its > own line 06 and halts in less than an infinite number of correctly > simulated steps. > > This means that D correctly simulated by pure function H also never > reaches it own line 06 and halts. Nothing C specific there. Other aspects are discussed in comp.theory. -- Mikko