Sujet : Re: Everyone here seems to consistently lie about this
De : F.Zwarts (at) *nospam* HetNet.nl (Fred. Zwarts)
Groupes : comp.theoryDate : 03. Aug 2024, 15:01:32
Autres entêtes
Organisation : A noiseless patient Spider
Message-ID : <v8ld7u$3fcgg$1@dont-email.me>
References : 1 2 3
User-Agent : Mozilla Thunderbird
Op 03.aug.2024 om 15:48 schreef olcott:
On 8/3/2024 3:06 AM, Mikko wrote:
On 2024-08-02 02:09:38 +0000, olcott said:
>
*This algorithm is used by all the simulating termination analyzers*
<MIT Professor Sipser agreed to ONLY these verbatim words 10/13/2022>
If simulating halt decider H correctly simulates its input D
until H correctly determines that its simulated D would never
stop running unless aborted then
>
H can abort its simulation of D and correctly report that D
specifies a non-halting sequence of configurations.
</MIT Professor Sipser agreed to ONLY these verbatim words 10/13/2022>
>
DDD is correctly emulated by HHH according to the x86
language semantics of DDD and HHH including when DDD
emulates itself emulating DDD
>
*UNTIL*
>
HHH correctly determines that never aborting this
emulation would cause DDD and HHH to endlessly repeat.
>
The determination is not correct. DDD is a halting computation, as
correctely determined by HHH1 or simly calling it from main. It is
not possible to correctly determine that ha haling computation is
non-halting, as is self-evdent from the meaning of the words.
>
[Who here is too stupid to know that DDD correctly simulated
by HHH cannot possibly reach its own return instruction?]
void DDD()
{
HHH(DDD);
return;
}
When it cannot possibly reach its own return instruction, it is an incorrect simulation, no matter how often you repeat the word 'correct'.
It does not help to repeat the same error hundreds of times, without any evidence.
It is clear that HHH that aborts also halts, so when the simulation of such a halting function cannot reach its return, the simulation fails.
It halts too soon. One cycle before the simulated HHH would abort and halt. Skipping the last few instructions makes the simulation incorrect.
DDD is a misleading and unneeded complication. 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.
It shows that HHH cannot possibly simulate itself correctly.