Sujet : Re: DDD correctly emulated by HHH is INcorrectly rejected as non-halting.
De : richard (at) *nospam* damon-family.org (Richard Damon)
Groupes : comp.theoryDate : 13. Jul 2024, 15:15:39
Autres entêtes
Organisation : i2pn2 (i2pn.org)
Message-ID : <cd06ac664dce3d060dfba5b33fe5ec42ef519d90@i2pn2.org>
References : 1 2 3 4 5 6 7 8 9
User-Agent : Mozilla Thunderbird
On 7/13/24 8:22 AM, olcott wrote:
On 7/13/2024 3:00 AM, Mikko wrote:
On 2024-07-12 13:20:53 +0000, olcott said:
>
On 7/12/2024 3:03 AM, Mikko wrote:
On 2024-07-11 14:10:24 +0000, olcott said:
>
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.
>
There is not "must" anywhere in the semantics of the programming language.
>
>
The semantics of the language specifies the behavior of
the machine code thus deriving the must.
>
How can one derive "must" from the semantics of the machine code?
>
Deciders are required to (thus must) halt.
And must give the RIGHT answer to the question they are defined to be deciding.
Sometimes, you can't do both, and that makes that question uncomputable.
Like Halting turns out to be.