Deutsch English Français Italiano |
<v2b78t$2vima$1@dont-email.me> View for Bookmarking (what is this?) Look up another Usenet article |
Path: ...!eternal-september.org!feeder3.eternal-september.org!news.eternal-september.org!.POSTED!not-for-mail From: olcott <polcott333@gmail.com> Newsgroups: comp.lang.c,comp.lang.c++ Subject: Can someone please verify the execution trace of this? Date: Sat, 18 May 2024 16:40:45 -0500 Organization: A noiseless patient Spider Lines: 45 Message-ID: <v2b78t$2vima$1@dont-email.me> MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8; format=flowed Content-Transfer-Encoding: 7bit Injection-Date: Sat, 18 May 2024 23:40:46 +0200 (CEST) Injection-Info: dont-email.me; posting-host="95afb1fc0a4871125108def5044e156a"; logging-data="3132106"; mail-complaints-to="abuse@eternal-september.org"; posting-account="U2FsdGVkX1/4AUIE7UDSRR0nbGU1avMd" User-Agent: Mozilla Thunderbird Cancel-Lock: sha1:Md6s5OEybS4c+dCAk8+TSpVxfSU= Content-Language: en-US Bytes: 2225 People are saying that they have no idea what this code does because they do not believe it conforms to c11 or c17. typedef int (*ptr)(); // ptr is pointer to int function 00 int H(ptr x, ptr y); 01 int D(ptr x) 02 { 03 int Halt_Status = H(x, x); 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 } In the above case a simulator is an x86 emulator that correctly emulates at least one of the x86 instructions of D in the order specified by the x86 instructions of D. This may include correctly emulating the x86 instructions of H in the order specified by the x86 instructions of H thus calling H(D,D) in recursive simulation. *Execution Trace* Line 11: main() invokes H(D,D); *keeps repeating* (unless aborted) Line 01: Line 02: Line 03: simulated D(D) invokes simulated H(D,D) that simulates D(D) *Simulation invariant* D correctly simulated by H cannot possibly reach past its own line 03. The key thing to note is that no D correctly simulated by any H of every H/D pair specified by the above template ever reaches its own line 06 and halts. -- Copyright 2024 Olcott "Talent hits a target no one else can hit; Genius hits a target no one else can see." Arthur Schopenhauer