Deutsch English Français Italiano |
<v85jif$3v9fb$1@dont-email.me> View for Bookmarking (what is this?) Look up another Usenet article |
Path: ...!2.eu.feeder.erje.net!feeder.erje.net!news.swapon.de!eternal-september.org!feeder3.eternal-september.org!news.eternal-september.org!.POSTED!not-for-mail From: olcott <polcott333@gmail.com> Newsgroups: comp.theory Subject: Re: This function proves that only the outermost HHH examines the execution trace Date: Sun, 28 Jul 2024 09:11:25 -0500 Organization: A noiseless patient Spider Lines: 230 Message-ID: <v85jif$3v9fb$1@dont-email.me> References: <v80h07$2su8m$3@dont-email.me> <0amdndFJSZSzYD77nZ2dnZfqnPednZ2d@brightview.co.uk> <v8102f$2vo8u$1@dont-email.me> <v83fhe$3gihn$1@dont-email.me> <v83hmk$3gvj7$1@dont-email.me> <v83jc9$3gihm$1@dont-email.me> <v83juc$3ham9$1@dont-email.me> <v84t90$3rc90$1@dont-email.me> MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8; format=flowed Content-Transfer-Encoding: 8bit Injection-Date: Sun, 28 Jul 2024 16:11:28 +0200 (CEST) Injection-Info: dont-email.me; posting-host="e780778616be4582a0134c2484eeadc2"; logging-data="4171243"; mail-complaints-to="abuse@eternal-september.org"; posting-account="U2FsdGVkX1+brUsVJWqyPTXqNL2szxRj" User-Agent: Mozilla Thunderbird Cancel-Lock: sha1:PzT2xCGkAiMcocXc2mLMi0gGbkg= In-Reply-To: <v84t90$3rc90$1@dont-email.me> Content-Language: en-US Bytes: 10788 On 7/28/2024 2:50 AM, Fred. Zwarts wrote: > Op 27.jul.2024 om 22:05 schreef olcott: >> On 7/27/2024 2:55 PM, Fred. Zwarts wrote: >>> Op 27.jul.2024 om 21:27 schreef olcott: >>>> On 7/27/2024 1:50 PM, Fred. Zwarts wrote: >>>>> Op 26.jul.2024 om 22:14 schreef olcott: >>>>>> On 7/26/2024 2:46 PM, Mike Terry wrote: >>>>>>> On 26/07/2024 16:56, olcott wrote: >>>>>>>> This is meant for Mike, Joes and Fred don't have the technical >>>>>>>> competence to understand it. >>>>>>>> >>>>>>>> Richard might be able to understand it yet the fact that he is >>>>>>>> stuck in rebuttal mode makes any understanding that he may have >>>>>>>> utterly useless. >>>>>>>> >>>>>>>> Mike: It seems that HHH has been a pure function of its inputs >>>>>>>> and never has provided data downward to its slaves that corrupts >>>>>>>> their halt status decision. They don't even make a halt status >>>>>>>> decision thus cannot make a corrupted one. >>>>>>> >>>>>>> Well, the first two claims are literally untrue - outer HHH >>>>>>> effectively uses the static mutable data to pass flags to the >>>>>>> inner HHH that modify its behaviour. The Root flag below is >>>>>>> derived from the actual static data and causes inner HHH to >>>>>>> totally skip its own abort logic! >>>>>>> >>>>>>> You seem to acknowledge this, but claim it does not matter for >>>>>>> various reasons, because whatever mistakes you are making, what >>>>>>> finally gets printed out is saying the right thing! >>>>>>> >>>>>> >>>>>> If HHH gets the correct answer in an impure way then it only >>>>>> counts that it gets it in an impure way if it is impossible >>>>>> to get in a pure way. This makes it possible for HHH to get >>>>>> this answer in a pure way: >>>>>> >>>>>> Message-ID: <rLmcnQQ3-N_tvH_4nZ2dnZfqnPGdnZ2d@brightview.co.uk> >>>>>> On 3/1/2024 12:41 PM, Mike Terry wrote: >>>>>> > >>>>>> > Obviously a simulator has access to the internal state >>>>>> > (tape contents etc.) of the simulated machine. No problem there. >>>>>> >>>>> >>>>> Mike Terry is right that a simulator has access to the internal >>>>> state of the simulated machine, but he did not say that it is >>>>> correct to *change in this way* the state of the simulated machine. >>>>> Changing the state of the simulated machine is cheating. >>>> >>>> I know this and agree with him on this. >>>> >>>>> Of course a simulator can modify the input before of during the >>>>> simulation. >>>> >>>> No that is cheating too. >>> >>> That is exactly what you do when you change the value of the variable >>> 'Root'. 'Root' is a hidden input for HHH. >> >> If you had sufficient understanding of the x86 language >> you would know that DDD is correctly emulated by HHH. > > If you understood only a little bit of x86, you would know that changing > the value of a variable (like Root), will modify the behaviour of a > program, making a cheating simulator. > I have been programming in the x86 language since it was new. I commented the whole block of code out that does the abort so that HHH is just a simulator and not a termination analyzer and it just keeps on running until the instruction limited of 50,000,000 instructions have been emulated. Every recursive emulation take about 100-fold more steps than the prior one. _DDD() [00002137] 55 push ebp [00002138] 8bec mov ebp,esp [0000213a] 6837210000 push 00002137 [0000213f] e853f4ffff call 00001597 [00002144] 83c404 add esp,+04 [00002147] 5d pop ebp [00002148] c3 ret Size in bytes:(0018) [00002148] _main() [00002157] 55 push ebp [00002158] 8bec mov ebp,esp [0000215a] e8d8ffffff call 00002137 [0000215f] 33c0 xor eax,eax [00002161] 5d pop ebp [00002162] c3 ret Size in bytes:(0012) [00002162] machine stack stack machine assembly address address data code language ======== ======== ======== ========= ============= [00002157][0010379f][00000000] 55 push ebp [00002158][0010379f][00000000] 8bec mov ebp,esp [0000215a][0010379b][0000215f] e8d8ffffff call 00002137 [00002137][00103797][0010379f] 55 push ebp [00002138][00103797][0010379f] 8bec mov ebp,esp [0000213a][00103793][00002137] 6837210000 push 00002137 [0000213f][0010378f][00002144] e853f4ffff call 00001597 New slave_stack at:103843 Begin Local Halt Decider Simulation Execution Trace Stored at:11384b [00002137][0011383b][0011383f] 55 push ebp [00002138][0011383b][0011383f] 8bec mov ebp,esp [0000213a][00113837][00002137] 6837210000 push 00002137 [0000213f][00113833][00002144] e853f4ffff call 00001597 New slave_stack at:14e26b [00002137][0015e263][0015e267] 55 push ebp [00002138][0015e263][0015e267] 8bec mov ebp,esp [0000213a][0015e25f][00002137] 6837210000 push 00002137 [0000213f][0015e25b][00002144] e853f4ffff call 00001597 New slave_stack at:15e30b [00002137][0016e303][0016e307] 55 push ebp [00002138][0016e303][0016e307] 8bec mov ebp,esp [0000213a][0016e2ff][00002137] 6837210000 push 00002137 [0000213f][0016e2fb][00002144] e853f4ffff call 00001597 New slave_stack at:16e3ab [00002137][0017e3a3][0017e3a7] 55 push ebp [00002138][0017e3a3][0017e3a7] 8bec mov ebp,esp [0000213a][0017e39f][00002137] 6837210000 push 00002137 [0000213f][0017e39b][00002144] e853f4ffff call 00001597 New slave_stack at:17e44b [00002137][0018e443][0018e447] 55 push ebp Number of Instructions Executed(50000000) == 746269 Pages >> >> That you don't know this conclusively proves that you >> don't have sufficient understanding of the x86 language. > > Irrelevant nonsense ignored. > >> >> All of the issues that Mike bought up have nothing to >> do with correct emulation. They only pertain to how >> the halt status decision is derived. > > So, why do you bring up x86? > > But you keep talking about a halt status. E.g. that the simulator must > abort to halt a non-halting program. > You are twisting the meaning of simulator often, as you think that > aborting is part of a simulation. > You seem to think that aborting is part of the semantics of the x86 > language. > >> >> That the halt status decision is proven to be correct >> on the basis that its behavior pattern exactly matches >> this infinite recursion behavior pattern is proven. >> >> void Infinite_Recursion() >> { >> Infinite_Recursion(); >> } >> >> _Infinite_Recursion() >> [0000215a] 55 push ebp >> [0000215b] 8bec mov ebp,esp >> [0000215d] e8f8ffffff call 0000215a ; recursive call >> [00002162] 5d pop ebp >> [00002163] c3 ret >> Size in bytes:(0010) [00002163] >> >> Begin Local Halt Decider Simulation Execution Trace Stored at:113934 >> [0000215a][00113924][00113928] 55 push ebp >> [0000215b][00113924][00113928] 8bec mov ebp,esp >> [0000215d][00113920][00002162] e8f8ffffff call 0000215a >> [0000215a][0011391c][00113924] 55 push ebp ========== REMAINDER OF ARTICLE TRUNCATED ==========