Path: ...!npeer.as286.net!npeer-ng0.as286.net!weretis.net!feeder8.news.weretis.net!eternal-september.org!feeder3.eternal-september.org!news.eternal-september.org!.POSTED!not-for-mail From: olcott <polcott333@gmail.com> Newsgroups: comp.theory,sci.logic Subject: Richard KEEPS TRYING to get away with this falsehood Date: Fri, 10 May 2024 15:27:04 -0500 Organization: A noiseless patient Spider Lines: 259 Message-ID: <v1lvuo$1i47i$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> <v1dtdv$3dqg4$1@dont-email.me> <v1du2i$3dt7u$1@dont-email.me> <v1fetd$3s7jo$1@dont-email.me> <v1ft42$3vdau$2@dont-email.me> <-5Gdnf-nQvstC6b7nZ2dnZfqnPadnZ2d@brightview.co.uk> <v1gid8$4ilc$1@dont-email.me> <v1h9eu$9faf$1@dont-email.me> <v1iqli$nsva$1@dont-email.me> <v1k0ts$iuna$1@i2pn2.org> <v1k381$14mbi$2@dont-email.me> <v1labh$kf53$1@i2pn2.org> <v1lfnq$1e7af$1@dont-email.me> <v1lh1g$kf52$4@i2pn2.org> <v1lmo1$1g1mj$1@dont-email.me> <v1luu1$lbo5$3@i2pn2.org> MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8; format=flowed Content-Transfer-Encoding: 8bit Injection-Date: Fri, 10 May 2024 22:27:05 +0200 (CEST) Injection-Info: dont-email.me; posting-host="7c0c43cbc173c29c782eabc90f798410"; logging-data="1642738"; mail-complaints-to="abuse@eternal-september.org"; posting-account="U2FsdGVkX1+nPJ1gZZ+VXxHVQ+3lFEhn" User-Agent: Mozilla Thunderbird Cancel-Lock: sha1:hVeOgRDsn3iA1KFE6G3RMwlyG+o= In-Reply-To: <v1luu1$lbo5$3@i2pn2.org> Content-Language: en-US Bytes: 12614 On 5/10/2024 3:09 PM, Richard Damon wrote: > On 5/10/24 1:49 PM, olcott wrote: >> On 5/10/2024 11:12 AM, Richard Damon wrote: >>> On 5/10/24 11:50 AM, olcott wrote: >>>> On 5/10/2024 9:18 AM, Richard Damon wrote: >>>>> On 5/9/24 11:10 PM, olcott wrote: >>>>>> On 5/9/2024 9:31 PM, Richard Damon wrote: >>>>>>> On 5/9/24 11:38 AM, olcott wrote: >>>>>>>> On 5/8/2024 8:38 PM, immibis wrote: >>>>>>>>> On 8/05/24 21:05, olcott wrote: >>>>>>>>>> On 5/8/2024 10:13 AM, Mike Terry wrote: >>>>>>>>>>> On 08/05/2024 14:01, olcott wrote: >>>>>>>>>>>> On 5/8/2024 3:59 AM, Mikko wrote: >>>>>>>>>>>>> On 2024-05-07 19:05:54 +0000, olcott said: >>>>>>>>>>>>> >>>>>>>>>>>>>> On 5/7/2024 1:54 PM, Fred. Zwarts wrote: >>>>>>>>>>>>>>> Op 07.mei.2024 om 17:40 schreef olcott: >>>>>>>>>>>>>>>> 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). >>>>>>>>>>>>>>>> >>>>>>>>>>>>>>>> These H/D pairs can be enumerated by the one to ∞ >>>>>>>>>>>>>>>> simulated steps of D and involve zero to ∞ recursive >>>>>>>>>>>>>>>> simulations of H simulating itself simulating D(D). >>>>>>>>>>>>>>>> Every time Lines 1,2,3 are simulated again defines >>>>>>>>>>>>>>>> one more level of recursive simulation. >>>>>>>>>>>>>>>> >>>>>>>>>>>>>>>> 1st element of H/D pairs 1 step of D is simulated by H >>>>>>>>>>>>>>>> 2nd element of H/D pairs 2 steps of D are simulated by H >>>>>>>>>>>>>>>> 3rd element of H/D pairs 3 steps of D are simulated by H >>>>>>>>>>>>>>>> >>>>>>>>>>>>>>>> 4th element of H/D pairs 4 steps of D are simulated by H >>>>>>>>>>>>>>>> this begins the first recursive simulation at line 01 >>>>>>>>>>>>>>>> >>>>>>>>>>>>>>>> 5th element of H/D pairs 5 steps of D are simulated by >>>>>>>>>>>>>>>> next step of the first recursive simulation at line 02 >>>>>>>>>>>>>>>> >>>>>>>>>>>>>>>> 6th element of H/D pairs 6 steps of D are simulated by >>>>>>>>>>>>>>>> last step of the first recursive simulation at line 03 >>>>>>>>>>>>>>>> >>>>>>>>>>>>>>>> 7th element of H/D pairs 7 steps of D are simulated by H >>>>>>>>>>>>>>>> this begins the second recursive simulation at line 01 >>>>>>>>>>>>>>> >>>>>>>>>>>>>>> Is this the definition of the infinite set of H? We can >>>>>>>>>>>>>>> think of many more simulations that only these. >>>>>>>>>>>>>> >>>>>>>>>>>>>> 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-one can possibly show one element of this set where >>>>>>>>>>>>>> D(D) reaches >>>>>>>>>>>>>> past its own line 03. >>>>>>>>>>>>> >>>>>>>>>>>>> If H is a decider of any kind then the D build from it >>>>>>>>>>>>> reaches its line >>>>>>>>>>>>> 4 as numberd above. Whether the simulation of D by H >>>>>>>>>>>>> reaches that line >>>>>>>>>>>>> is another question. >>>>>>>>>>>>> >>>>>>>>>>>> >>>>>>>>>>>> *My fully operational code proves otherwise* >>>>>>>>>>>> >>>>>>>>>>>> I seems like you guys don't have a clue about how infinite >>>>>>>>>>>> recursion works. You can run the code and see that I am >>>>>>>>>>>> correct. >>>>>>>>>>>> >>>>>>>>>>>> I have one concrete instance as fully operational code. >>>>>>>>>>>> https://github.com/plolcott/x86utm/blob/master/Halt7.c >>>>>>>>>>>> line 555 u32 HH(ptr P, ptr I) its input in on >>>>>>>>>>>> line 932 int DD(int (*x)()) >>>>>>>>>>> >>>>>>>>>>> HH is completely broken - it uses a global variable which is >>>>>>>>>>> allows HH to detect whether it is the outer HH or a nested >>>>>>>>>>> (simulated) HH. As a result, the nested HH behaves completely >>>>>>>>>>> differently to the outer HH - I mean /completely/ >>>>>>>>>>> differently: it goes through a totally separate "I am called >>>>>>>>>>> in nested mode" code path! >>>>>>>>>>> >>>>>>>>>> >>>>>>>>>> The encoding of HH is not the pure function that it needs to >>>>>>>>>> be to >>>>>>>>>> be a computable function. >>>>>>>>>> >>>>>>>>>> *Maybe you can settle this* >>>>>>>>>> >>>>>>>>>> The disagreement is entirely over an enormously much simpler >>>>>>>>>> thing. >>>>>>>>>> The disagreement is that Richard says that a D simulated by H >>>>>>>>>> could >>>>>>>>>> reach past its own line 03 and halt. >>>>>>>>> >>>>>>>>> Here's the proof: >>>>>>>>> >>>>>>>>> 1. A simulation always produces an identical execution trace to >>>>>>>>> the direct execution. >>>>>>>> ========== REMAINDER OF ARTICLE TRUNCATED ==========