Sujet : Re: DD simulated by HHH cannot possibly halt (Halting Problem)
De : rjh (at) *nospam* cpax.org.uk (Richard Heathfield)
Groupes : comp.lang.cDate : 05. Apr 2025, 08:42:41
Autres entêtes
Organisation : Fix this later
Message-ID : <vsqmth$1mglg$2@dont-email.me>
References : 1 2 3 4 5 6 7 8 9 10 11
User-Agent : Mozilla Thunderbird
On 05/04/2025 07:14, olcott wrote:
On 4/4/2025 10:49 PM, Richard Heathfield wrote:
On 05/04/2025 00:41, olcott wrote:
*Simulating termination analyzer Principle*
It is always correct for any simulating termination
analyzer to stop simulating and reject any input that
would otherwise prevent its own termination. The
only rebuttal to this is rejecting the notion that
deciders must always halt.
>
typedef void (*ptr)();
int HHH(ptr P);
int DD()
{
int Halt_Status = HHH(DD);
if (Halt_Status)
HERE: goto HERE;
return Halt_Status;
}
int main()
{
HHH(DD);
}
In other words, you operate on the principle that deciders don't have to (and indeed can't) always make a correct decision on whether an input program halts.
>
The termination analyzer HHH would be correct
to determine that it must stop simulating DD to
prevent its own non-termination
Fine, but then it fails to do its job. What you are learning (albeit slowly) is that the termination analyser HHH can't analyse whether DD terminates. It is therefore not a general purpose termination analyser.
Your reasoning is that it has a good excuse and can be forgiven for failing. Fine, but it still fails. Calling an abort 'correct' doesn't stop it being an abort.
-- Richard HeathfieldEmail: rjh at cpax dot org dot uk"Usenet is a strange place" - dmr 29 July 1999Sig line 4 vacant - apply within
| Date | Sujet | # | | Auteur |
| 21 Apr 26 | … | | | |
Haut de la page
Les messages affichés proviennent d'usenet.
NewsPortal