Deutsch English Français Italiano |
<a2751114ef9a6ef24479be0a3f97f630b4803c6c@i2pn2.org> View for Bookmarking (what is this?) Look up another Usenet article |
Path: ...!weretis.net!feeder9.news.weretis.net!news.nk.ca!rocksolid2!i2pn2.org!.POSTED!not-for-mail From: Richard Damon <richard@damon-family.org> Newsgroups: comp.theory Subject: Re: DDD correctly emulated by HHH is correctly rejected as non-halting. Date: Thu, 11 Jul 2024 22:08:31 -0400 Organization: i2pn2 (i2pn.org) Message-ID: <a2751114ef9a6ef24479be0a3f97f630b4803c6c@i2pn2.org> References: <v6m7si$1uq86$2@dont-email.me> <v6mhc7$20hbo$2@dont-email.me> <v6mhr3$20kkr$2@dont-email.me> <v6nts5$2be3m$1@dont-email.me> <v6op4h$2fuva$4@dont-email.me> MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8; format=flowed Content-Transfer-Encoding: 8bit Injection-Date: Fri, 12 Jul 2024 02:08:31 -0000 (UTC) Injection-Info: i2pn2.org; logging-data="2973854"; mail-complaints-to="usenet@i2pn2.org"; posting-account="diqKR1lalukngNWEqoq9/uFtbkm5U+w3w6FQ0yesrXg"; User-Agent: Mozilla Thunderbird X-Spam-Checker-Version: SpamAssassin 4.0.0 In-Reply-To: <v6op4h$2fuva$4@dont-email.me> Content-Language: en-US Bytes: 3751 Lines: 77 On 7/11/24 10:10 AM, olcott wrote: > On 7/11/2024 1:25 AM, Mikko wrote: >> On 2024-07-10 17:53:38 +0000, olcott said: >> >>> On 7/10/2024 12:45 PM, Fred. Zwarts wrote: >>>> Op 10.jul.2024 om 17:03 schreef olcott: >>>>> typedef void (*ptr)(); >>>>> int HHH(ptr P); >>>>> >>>>> void DDD() >>>>> { >>>>> HHH(DDD); >>>>> } >>>>> >>>>> int main() >>>>> { >>>>> HHH(DDD); >>>>> } >>>> >>>> Unneeded complexity. It is equivalent to: >>>> >>>> int main() >>>> { >>>> return HHH(main); >>>> } >>>> >>> >>> >>> Every time any HHH correctly emulates DDD it calls the >>> x86utm operating system to create a separate process >>> context with its own memory virtual registers and stack, >>> thus each recursively emulated DDD is a different instance. >> >> However, each of those instances has the same sequence of instructions >> that the x86 language specifies the same operational meaning. >> > > *That is counter-factual* > When DDD is correctly emulated by HHH according to the > semantics of the x86 programming language HHH must abort > its emulation of DDD or both HHH and DDD never halt. But it CAN'T abort its simulation and still fully follow the semantics of the x86 language. So, you have to decide which one it is, is it a correct simulator, or a decider. When HHH aborts its simulation, it gives up the property that its simulation shows the full behavior of the input, and thus HHH has no grounds to claim that the DDD that is based on itself (the HHH that aborts) is non-halting, and in fact, by the definition of the x86 instruction set, it is halting, since that HHH (which it includes) is halting and DDD will halt whenever HHH returns to its caller. > > When DDD is correctly emulated by HHH1 according to the > semantics of the x86 programming language HHH1 need not > abort its emulation of DDD because HHH has already done this. Which just shows that THIS HHH didn't actually need to abort its simulation of the DDD tha calls the aborting HHH, it just did it, because that is what it is. > > The behavior of DDD emulated by HHH1 is identical to the > behavior of the directly executed DDD(). > Right, and contains ALL the behavior of the PARTIAL emulation done by HHH, and more, showing what HHH didn't get to see. It is the exact same input, including the code of the same HHH, and thus if the behavior of "of the input" it CAN NOT CHANGE. Thus showing your POOP problem, which tries to talk about needing to abort, is not a problem about the behavior of the input, but is something else.