Deutsch   English   Français   Italiano  
<v78hbf$1rnr3$2@dont-email.me>

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

Path: ...!eternal-september.org!feeder3.eternal-september.org!news.eternal-september.org!.POSTED!not-for-mail
From: "Fred. Zwarts" <F.Zwarts@HetNet.nl>
Newsgroups: comp.theory
Subject: Re: DDD correctly emulated by HHH is Correctly rejected as
 non-halting V2
Date: Wed, 17 Jul 2024 15:35:43 +0200
Organization: A noiseless patient Spider
Lines: 95
Message-ID: <v78hbf$1rnr3$2@dont-email.me>
References: <v6rg65$32o1o$3@dont-email.me>
 <97e0632d0d889d141bdc6005ce6e513c53867798@i2pn2.org>
 <v6sdlu$382g0$1@dont-email.me> <v6td3a$3ge79$1@dont-email.me>
 <v6tp1j$3imib$2@dont-email.me> <v6trdu$3irhh$1@dont-email.me>
 <v6tu01$3imib$11@dont-email.me>
 <a177dd76613794d6bb877c65ffe6c587a8f31bc1@i2pn2.org>
 <v6tvpv$3imib$14@dont-email.me>
 <091e8b7baeea467ee894b1c79c8943cb9773adb7@i2pn2.org>
 <v6u346$3khl8$1@dont-email.me>
 <16ac79611a441e7e01119631051f69119eee958a@i2pn2.org>
 <v6v06i$3pivt$1@dont-email.me>
 <23cb2d2401b87bf4f6a604aa1a78b93ffc9a29bc@i2pn2.org>
 <v6v2t1$3pmjn$3@dont-email.me>
 <3fc6548531f91ed14a27420caf9679a634573ed0@i2pn2.org>
 <v70lmo$61d8$1@dont-email.me>
 <8a6e6d9ff49aabe2525ce5729a439c807de4768a@i2pn2.org>
 <v71qj3$bvm2$2@dont-email.me>
 <3d124d535f6d59565df213fa58242ee156ee96bb@i2pn2.org>
 <v7349r$mjis$1@dont-email.me> <v756vv$15rrp$1@dont-email.me>
 <v7658i$1b4io$1@dont-email.me> <v77pf4$1nn5l$1@dont-email.me>
 <v78fd7$1rc43$3@dont-email.me>
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8; format=flowed
Content-Transfer-Encoding: 8bit
Injection-Date: Wed, 17 Jul 2024 15:35:44 +0200 (CEST)
Injection-Info: dont-email.me; posting-host="1fdd4e182586bca308b558ff6626f471";
	logging-data="1957731"; mail-complaints-to="abuse@eternal-september.org";	posting-account="U2FsdGVkX1+tVBDSfRladrE5/PZ9raE5"
User-Agent: Mozilla Thunderbird
Cancel-Lock: sha1:f8R0G4OMu/Mm3dqCmmlxlRxQKW4=
Content-Language: en-GB
In-Reply-To: <v78fd7$1rc43$3@dont-email.me>
Bytes: 5977

Op 17.jul.2024 om 15:02 schreef olcott:
> On 7/17/2024 1:48 AM, Mikko wrote:
>> On 2024-07-16 15:57:04 +0000, olcott said:
>>
>>>>>
>>>>> New slave_stack at:1038c4
>>>>> Begin Local Halt Decider Simulation   Execution Trace Stored at:1138cc
>>>>> [00002172][001138bc][001138c0] 55         push ebp      ; housekeeping
>>>>> [00002173][001138bc][001138c0] 8bec       mov ebp,esp   ; housekeeping
>>>>> [00002175][001138b8][00002172] 6872210000 push 00002172 ; push DDD
>>>>> [0000217a][001138b4][0000217f] e853f4ffff call 000015d2 ; call 
>>>>> HHH(DDD)
>>>>> New slave_stack at:14e2ec
>>>>> [00002172][0015e2e4][0015e2e8] 55         push ebp      ; housekeeping
>>>>> [00002173][0015e2e4][0015e2e8] 8bec       mov ebp,esp   ; housekeeping
>>>>> [00002175][0015e2e0][00002172] 6872210000 push 00002172 ; push DDD
>>>>> [0000217a][0015e2dc][0000217f] e853f4ffff call 000015d2 ; call 
>>>>> HHH(DDD)
>>>>> Local Halt Decider: Infinite Recursion Detected Simulation Stopped
>>>>
>>>> The trace does not show that HHH returns so there is no basis to
>>>> think that HHH is a decider.
>>>>
>>>
>>> The trace shows the data of the executed program of HHH that
>>> does halt.
>>
>> It shows some of the data, not all, and in particular, not the halting.
>>
> 
> _DDD()
> [00002163] 55         push ebp      ; housekeeping
> [00002164] 8bec       mov ebp,esp   ; housekeeping
> [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]
> 
> DDD emulated by HHH according to the semantic meaning of
> its x86 instructions never stop running unless aborted.
> 
> 

You have shown that you do not understand the semantics of the x86 language.
HHH does abort and halt after N cycles, but it is aborted when only N-1 
cycles have been simulated. This shows that the simulation is incorrect. 
No abort was needed to make it halt.
But HHH is programmed to abort, even when incorrect.
Therefore, HHH cannot possibly simulate itself correctly.

DDD has nothing to do with it. It is easy to eliminate DDD:

        int main() {
          return HHH(main);
        }

This has the same problem. This proves that the problem is not in DDD, 
but in HHH, which halts when it aborts the simulation, but it decides 
that the simulation of itself does not halt.

HHH is unable to decide about finite recursions.

void Finite_Recursion (int N) {
   if (N > 0) Finite_Recursion (N - 1);
}

It decides after N recursions that there is an infinite recursion, which 
is incorrect.

Your HHH is programmed to abort the simulation after N cycles of 
recursive simulations. Therefore, it is incorrect to abort the 
simulation of HHH when the simulated HHH has performed only N-1 cycles, 
because that changes the behaviour of HHH.
Since the simulated HHH always runs one cycle behind the simulating HHH, 
it is clear that HHH can never simulate enough cycles for a correct 
simulation, as is required by the x86 language.
Therefore, the simulation is incorrect according to the criteria you 
stipulated.
The conclusion is simple:
HHH cannot possibly simulate itself correctly.

No matter how much you want it to be correct, or how many times you 
repeat that it is correct, it does not change the fact that such a 
simulation is incorrect, because it is unable to reach the end.
Your own claim that the simulated HHH does not reach its end confirms 
it. The trace you have shown also proves that HHH cannot reach the end 
of its own simulation. So, your own claims prove that it is true that 
HHH cannot possibly simulate itself up to the end, which makes the 
simulation incorrect.

Sipser would agree that this incorrect simulation cannot be used to 
detect a non-halting behaviour.