I don't really see that PO has declined recently - It seems to me he's
been the way he is for as long as I recall.-a I would say he's become markedly ruder of late, though!-a Maybe that's all related to his LLMs pandering to his delusions and giving him a renewed confidence.
Mike.
How about this minimal viable H:
#include <interpret.h> // C interpreter's own API
bool H(fptr P)
{
interp *s = interp_init(P);
for (int i = 0; i < 3; i++) {
if (interp_step(s))
return true;
}
return false;
}
H initializes an interpreter for its argument P.
Then it applies a very simple abort logic: it
steps the interpreter state three times. If
during those three steps, P terminates, it returns
true. Otherwise it assumes P is nonterminating and
returns false.
(Pretend that more complicated abort criteria are there.)
The interpreter API consists of primitives built
into the system, so it isn't traced.
So then we have D:
void D(void)
{
if (H(D)) { for (;;); }
return;
}
Let's trace H(D). We indicate the simulation levels from 0,
step numbers from 1 within each level, with a bit of indentation
to tell apart the levels:
| Sysop: | Amessyroom |
|---|---|
| Location: | Fayetteville, NC |
| Users: | 54 |
| Nodes: | 6 (1 / 5) |
| Uptime: | 21:00:00 |
| Calls: | 742 |
| Files: | 1,218 |
| D/L today: |
6 files (8,794K bytes) |
| Messages: | 185,811 |
| Posted today: | 1 |