Warning: mysqli::__construct(): (HY000/1203): User howardkn already has more than 'max_user_connections' active connections in D:\Inetpub\vhosts\howardknight.net\al.howardknight.net\includes\artfuncs.php on line 21
Failed to connect to MySQL: (1203) User howardkn already has more than 'max_user_connections' active connections
Warning: mysqli::query(): Couldn't fetch mysqli in D:\Inetpub\vhosts\howardknight.net\al.howardknight.net\index.php on line 66
Article <v73s5q$qkp2$2@dont-email.me>
Deutsch   English   Français   Italiano  
<v73s5q$qkp2$2@dont-email.me>

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

Path: ...!weretis.net!feeder8.news.weretis.net!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: Mon, 15 Jul 2024 21:09:46 +0200
Organization: A noiseless patient Spider
Lines: 97
Message-ID: <v73s5q$qkp2$2@dont-email.me>
References: <v6rg65$32o1o$3@dont-email.me> <v7085g$3j1h$1@dont-email.me>
 <v70ok7$61d8$10@dont-email.me> <v72lvl$k9t3$1@dont-email.me>
 <v73926$mjis$17@dont-email.me>
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8; format=flowed
Content-Transfer-Encoding: 8bit
Injection-Date: Mon, 15 Jul 2024 21:09:47 +0200 (CEST)
Injection-Info: dont-email.me; posting-host="11cf5ed0512e2277f3e9eeb7013e4f25";
	logging-data="873250"; mail-complaints-to="abuse@eternal-september.org";	posting-account="U2FsdGVkX19tdTvldD9iPN6mbZXRrmLL"
User-Agent: Mozilla Thunderbird
Cancel-Lock: sha1:Q05IMPNWDRHVVC//WNvvwrTTnOg=
In-Reply-To: <v73926$mjis$17@dont-email.me>
Content-Language: en-GB
Bytes: 4894

Op 15.jul.2024 om 15:43 schreef olcott:
> On 7/15/2024 3:17 AM, Mikko wrote:
>> On 2024-07-14 14:50:47 +0000, olcott said:
>>
>>> On 7/14/2024 5:09 AM, Mikko wrote:
>>>> On 2024-07-12 14:56:05 +0000, olcott said:
>>>>
>>>>> We stipulate that the only measure of a correct emulation is the
>>>>> semantics of the x86 programming language.
>>>>>
>>>>> _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]
>>>>>
>>>>> When N steps of DDD are emulated by HHH according to the
>>>>> semantics of the x86 language then N steps are emulated correctly.
>>>>>
>>>>> When we examine the infinite set of every HHH/DDD pair such that:
>>>>> HHH₁ one step of DDD is correctly emulated by HHH.
>>>>> HHH₂ two steps of DDD are correctly emulated by HHH.
>>>>> HHH₃ three steps of DDD are correctly emulated by HHH.
>>>>> ...
>>>>> HHH∞ The emulation of DDD by HHH never stops running.
>>>>>
>>>>> The above specifies the infinite set of every HHH/DDD pair
>>>>> where 1 to infinity steps of DDD are correctly emulated by HHH.
>>>>
>>>> You should use the indices here, too, e.g., "where 1 to infinity 
>>>> steps of
>>>> DDD₁ are correctly emulated by HHH₃" or whatever you mean.
>>>>
>>>
>>> DDD is the exact same fixed constant finite string that
>>> always calls HHH at the same fixed constant machine
>>> address.
>>
>> If the function called by DDD is not part of the input then the input 
>> does
>> not specify a behaviour and the question whether DDD halts is ill-posed.
>>
> 
> We don't care about whether HHH halts. We know that
> HHH halts or fails to meet its design spec.
> 
> We are only seeing if DDD correctly emulated by HHH
> can can possibly reach its own final state.
> 

We know that DDD can reach its final state. The reason that the 
simulated DDD cannot reach its final state is that it is aborted one 
cycle to soon.

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 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.

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