Deutsch English Français Italiano |
<v1fe59$3s2pt$1@dont-email.me> View for Bookmarking (what is this?) Look up another Usenet article |
Path: ...!news.nobody.at!eternal-september.org!feeder3.eternal-september.org!news.eternal-september.org!.POSTED!not-for-mail From: Mikko <mikko.levanto@iki.fi> Newsgroups: comp.theory Subject: Re: Every D(D) simulated by H presents non-halting behavior to H Date: Wed, 8 May 2024 11:46:33 +0300 Organization: - Lines: 67 Message-ID: <v1fe59$3s2pt$1@dont-email.me> References: <v18e32$1vbql$1@dont-email.me> <v1avuv$2lks2$1@dont-email.me> <v1b7gl$2ndka$1@dont-email.me> <v1cla9$34iis$1@dont-email.me> <v1d2mi$9f72$11@i2pn2.org> <v1di1h$3b2m5$1@dont-email.me> MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8; format=flowed Content-Transfer-Encoding: 8bit Injection-Date: Wed, 08 May 2024 10:46:34 +0200 (CEST) Injection-Info: dont-email.me; posting-host="2f6d3dae41f5002be9ff9942331a220e"; logging-data="4066109"; mail-complaints-to="abuse@eternal-september.org"; posting-account="U2FsdGVkX18Cq2Um5HTPWO4vbUGoe8oO" User-Agent: Unison/2.2 Cancel-Lock: sha1:chX8Dlrs6BnyMXpWbFbUUkZEyig= Bytes: 3633 On 2024-05-07 15:40:32 +0000, olcott said: > On 5/7/2024 6:18 AM, Richard Damon wrote: >> On 5/7/24 3:30 AM, Mikko wrote: >>> On 2024-05-06 18:28:37 +0000, olcott said: >>> >>>> On 5/6/2024 11:19 AM, Mikko wrote: >>>>> On 2024-05-05 17:02:25 +0000, olcott said: >>>>> >>>>>> The x86utm operating system: https://github.com/plolcott/x86utm enables >>>>>> one C function to execute another C function in debug step mode. >>>>>> Simulating Termination analyzer H simulates the x86 machine code of its >>>>>> input (using libx86emu) in debug step mode until it correctly matches a >>>>>> correct non-halting behavior pattern proving that its input will never >>>>>> stop running unless aborted. >>>>>> >>>>>> Can D correctly simulated by H terminate normally? >>>>>> 00 int H(ptr x, ptr x) // ptr is pointer to int function >>>>>> 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 } >>>>>> >>>>>> *Execution Trace* >>>>>> Line 11: main() invokes H(D,D); >>>>>> >>>>>> *keeps repeating* (unless aborted) >>>>>> 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 above execution trace proves that (for every H/D pair of the >>>>>> infinite set of H/D pairs) each D(D) simulated by the H that this D(D) >>>>>> calls cannot possibly reach past its own line 03. >>>>> >>>>> When you say "every H/D pair" you should specify which set of pairs >>>>> you are talking about. As you don't, your words don't mean anything. >>>>> >>>> >>>> Every H/D pair in the universe where D(D) is simulated by the >>>> same H(D,D) that D(D) calls. This involves 1 to ∞ steps of D >>>> and also includes zero to ∞ recursive simulations where H >>>> H simulates itself simulating D(D). >>> >>> "In the universe" is not a set. In typical set theories like ZFC there >>> is no universal set. >> > > This template defines an infinite set of finite string H/D pairs where > each D(D) that is simulated by H(D,D) also calls this same H(D,D). No, it does not. D does not know which H simulates it or even whther is simulated at all. D calls the one whose name is H. The association of D with the H of the same pair, if desired, must be done outside of D. -- Mikko