Sujet : Re: Flat out dishonest or totally ignorant?
De : F.Zwarts (at) *nospam* HetNet.nl (Fred. Zwarts)
Groupes : comp.theory sci.logicDate : 02. Jul 2024, 09:22:42
Autres entêtes
Organisation : A noiseless patient Spider
Message-ID : <v60dci$1ib5p$1@dont-email.me>
References : 1
User-Agent : Mozilla Thunderbird
Op 02.jul.2024 om 03:25 schreef olcott:
typedef void (*ptr)();
int HHH(ptr P);
void Infinite_Loop()
{
HERE: goto HERE;
}
void Infinite_Recursion()
{
Infinite_Recursion();
}
void DDD()
{
HHH(DDD);
}
int main()
{
HHH(Infinite_Loop);
HHH(Infinite_Recursion);
HHH(DDD);
}
Every C programmer that knows what an x86 emulator is knows
that when HHH emulates the machine language of Infinite_Loop,
Infinite_Recursion, and DDD that it must abort these emulations
so that itself can terminate normally.
Whether or not it *must* abort is not very relevant. It is relevant that it *does* abort. That is relevant when determining whether it is correct.
When this is construed as non-halting criteria then simulating
termination analyzer HHH is correct to reject these inputs as
non-halting by returning 0 to its caller.
Therefore, whether or not it must abort, is incorrect criteria. The fact that it *does* abort (and aborts too early to see correctly the behaviour) shows that the simulation is incorrect.
Simulating termination analyzers must report on the behavior
that their finite string input specifies thus HHH must report
that DDD correctly emulated by HHH remains stuck in recursive
simulation.
It is not stuck in recursive simulation. We are speaking about an HHH that *does* abort after two cycles. So, not stuck, the simulation is only aborted too soon.
Dreaming of another HHH that got stuck because it does not abort is irrelevant, because this HHH *does* abort.
Everyone else seems to be flat out dishonest or totally ignorant.
At least one of my reviewers does not seem to understand that
infinite recursion does not halt.
It is dishonest to claim that two equals infinite.
Two cycles of recursive simulation is not equal to an infinite recursion.
You don't seem to understand such simple facts.