Deutsch   English   Français   Italiano  
<2aa87b5affde40f3265e6857a3c44c7f91fe0b0b@i2pn2.org>

View for Bookmarking (what is this?)
Look up another Usenet article

Path: ...!weretis.net!feeder9.news.weretis.net!i2pn.org!i2pn2.org!.POSTED!not-for-mail
From: Richard Damon <richard@damon-family.org>
Newsgroups: comp.theory
Subject: Re: People are still trying to get away with disagreeing with the
 semantics of the x86 language
Date: Thu, 4 Jul 2024 11:25:20 -0400
Organization: i2pn2 (i2pn.org)
Message-ID: <2aa87b5affde40f3265e6857a3c44c7f91fe0b0b@i2pn2.org>
References: <v5pbjf$55h$1@dont-email.me> <v5r5q9$ekvf$1@dont-email.me>
 <v5s40h$jvgt$1@dont-email.me> <v5tgvj$utcb$1@dont-email.me>
 <v5u8c9$12udb$1@dont-email.me> <v608ft$1hqo6$1@dont-email.me>
 <v61hoo$1og2o$1@dont-email.me> <v61k27$1oec9$3@dont-email.me>
 <v61li2$1p1uo$2@dont-email.me> <v63205$23ohl$1@dont-email.me>
 <v63j94$26loi$4@dont-email.me>
 <db9212dd66972657132755b66b6c473167119450@i2pn2.org>
 <v63o75$27nhv$2@dont-email.me>
 <6ca7c213b3ec5e20ae45c951ea48fbffcf5aae91@i2pn2.org>
 <v665in$2oun1$7@dont-email.me>
 <b36744609d2139c1264ecb8d6e348c1f4b68787e@i2pn2.org>
 <v668q2$2pc84$2@dont-email.me>
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8; format=flowed
Content-Transfer-Encoding: 8bit
Injection-Date: Thu, 4 Jul 2024 15:25:20 -0000 (UTC)
Injection-Info: i2pn2.org;
	logging-data="2132707"; mail-complaints-to="usenet@i2pn2.org";
	posting-account="diqKR1lalukngNWEqoq9/uFtbkm5U+w3w6FQ0yesrXg";
User-Agent: Mozilla Thunderbird
In-Reply-To: <v668q2$2pc84$2@dont-email.me>
X-Spam-Checker-Version: SpamAssassin 4.0.0
Content-Language: en-US
Bytes: 7432
Lines: 128

On 7/4/24 9:41 AM, olcott wrote:
> On 7/4/2024 8:26 AM, joes wrote:
>> Am Thu, 04 Jul 2024 07:46:15 -0500 schrieb olcott:
>>> On 7/4/2024 5:15 AM, joes wrote:
>>>> Am Wed, 03 Jul 2024 09:45:57 -0500 schrieb olcott:
>>>>> On 7/3/2024 9:39 AM, joes wrote:
>>>>>> Am Wed, 03 Jul 2024 08:21:40 -0500 schrieb olcott:
>>>>>>> On 7/3/2024 3:26 AM, Fred. Zwarts wrote:
>>>>>>>> Op 02.jul.2024 om 21:48 schreef olcott:
>>>>>>>>> On 7/2/2024 2:22 PM, Fred. Zwarts wrote:
>>>>>>>>>> Op 02.jul.2024 om 20:43 schreef olcott:
>>>>>>>>>>> On 7/2/2024 1:59 AM, Mikko wrote:
>>>>>>>>>>>> On 2024-07-01 12:44:57 +0000, olcott said:
>>>>>>>>>>>>> On 7/1/2024 1:05 AM, Mikko wrote:
>>>>>>>>>>>>>> On 2024-06-30 17:18:09 +0000, olcott said:
>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>> Richard just said that he affirms that when DDD correctly
>>>>>>>>>>>>>>> simulated by HHH calls HHH(DDD) that this call returns even
>>>>>>>>>>>>>>> though the semantics of the x86 language disagrees.
>>>>>> Which semantics?
>>>> I repeat.
>> What x86 semantics say that HHH can’t return?
>>
>>>>>>> DDD correctly emulated by HHH calls an emulated HHH(DDD) that
>>>>>>> emulates DDD that calls an emulated HHH(DDD)
>>>>>>> in a cycle that cannot end unless aborted.
>>>>>> But HHH aborts, so the cycle does end.
>>>>> As long as it is impossible for DDD correctly emulated by HHH to reach
>>>>> its own ret instruction then DDD never halts even when its stops
>>>>> running because its emulation was aborted.
>>>> HHH halts by definition. Why can’t DDD?
>>> By definition DDD calls its simulator.
>> Yes, and nothing else. So when HHH returns, so does DDD.
>>
> 
> You simply lack sufficient technical competence of these things
> *Machine address 00002174 of DDD is never reached*
> I am using an x86 emulator with decades of development effort.
> 
> _DDD()
> [00002163] 55         push ebp
> [00002164] 8bec       mov ebp,esp
> [00002166] 6863210000 push 00002163 ; push DDD
> [0000216b] e853f4ffff call 000015c3 ; call HHH(DDD)
> [00002170] 83c404     add esp,+04
> [00002173] 5d         pop ebp
> [00002174] c3         ret
> Size in bytes:(0018) [00002174]
> 
> _main()
> [00002183] 55         push ebp
> [00002184] 8bec       mov ebp,esp
> [00002186] 6863210000 push 00002163
> [0000218b] e833f4ffff call 000015c3
> [00002190] 83c404     add esp,+04
> [00002193] 33c0       xor eax,eax
> [00002195] 5d         pop ebp
> [00002196] c3         ret
> Size in bytes:(0020) [00002196]
> 
>   machine   stack     stack     machine    assembly
>   address   address   data      code       language
>   ========  ========  ========  =========  =============
> [00002183][001037dd][00000000] 55         push ebp
> [00002184][001037dd][00000000] 8bec       mov ebp,esp
> [00002186][001037d9][00002163] 6863210000 push 00002163
> [0000218b][001037d5][00002190] e833f4ffff call 000015c3
> New slave_stack at:103881 ; *create a different process context*
> Begin Local Halt Decider Simulation   Execution Trace Stored at:113889

Why does main calling HHH create a new "process context" that isn't what 
CALL Instructions do.

SO, you simulation is clearly not correct, or not correctly interpreted.

The trace of the program should have continued showing the PROGRAMs 
execution path.

Yes, at some point that HHH will creeate a virtual process context to 
simulate that you show below, but that means that the below trace is no 
longer a trace of main calling HHH, but of the simulation of HHH.



> [00002163][00113879][0011387d] 55         push ebp
> [00002164][00113879][0011387d] 8bec       mov ebp,esp
> [00002166][00113875][00002163] 6863210000 push 00002163 ; push DDD
> [0000216b][00113871][00002170] e853f4ffff call 000015c3 ; call HHH(DDD)
> New slave_stack at:14e2a9 ; *create a different process context*

And calling HHH(DDD) doesn't create a new process context either, it 
calls the function HHH which is what should be traced here.

Yes, your simulated HHH will create within itself a new virtual process 
context and this is now a THIRD DISTINCT SIMULATION which is INCORRECTLY 
shown as part of the simulation of the above two different simulations.

THAT IS AN ERROR.

> [00002163][0015e2a1][0015e2a5] 55         push ebp
> [00002164][0015e2a1][0015e2a5] 8bec       mov ebp,esp
> [00002166][0015e29d][00002163] 6863210000 push 00002163 ; push DDD
> [0000216b][0015e299][00002170] e853f4ffff call 000015c3 ; call HHH(DDD)
> Local Halt Decider: Infinite Recursion Detected Simulation Stopped
> 
> [00002190][001037dd][00000000] 83c404     add esp,+04
> [00002193][001037dd][00000000] 33c0       xor eax,eax
> [00002195][001037e1][00000018] 5d         pop ebp
> [00002196][001037e5][00000000] c3         ret
> Number of Instructions Executed(10066) == 150 Pages
> 
> 

So, by playing the shell games and mixing up three different program 
context that exists you confused yourself in beleiving your own lies.

The simulation of the second program context was shown to be terminated, 
but that same program context, when fully simulated will show the same 
sort of behavior, of it aborting its simulation of the third program 
context, and returning, and thus the CORRECT behavior of the second 
context is that it will be finite and return.

Your problem is you don't understand that simulation doesn't define the 
behavior of the input, it reveals that part of it that it does. The full 
behavior of the input is defined by what the program it represents does, 
which is what a COMPLETE simulation of it will show.

This is just more of your confusion of Truth and Knowledge which has 
made your logic system broken.