Liste des Groupes | Revenir à theory |
On 5/17/2024 4:42 AM, Mikko wrote:Which, since I posted over two weeks ago how to do it in C, means that you don't have the needed knowledge of the C programming language, or about what truth actually is.On 2024-05-16 15:34:48 +0000, olcott said:*I call bullshit on your notion of proof*Repeatedly claiming that I am wrong without providing the required>
counter-example when this counter-example is repeatedly requested
(and categorically impossible) does meet the standard of a reckless
disregard for the truth.
No, it does not. A different kind of proof is sufficient to meet
the standard, and even a good justification of another kind.
>
*I call bullshit on your notion of proof*
*I call bullshit on your notion of proof*
The following is self-evidently true on the basis of the
semantics of the C programming language:
typedef int (*ptr)(); // ptr is pointer to int function
00 int H(ptr x, ptr x);
01 int D(ptr x)
02 {
03 int Halt_Status = H(x, x);
04 if (Halt_Status)
05 HERE: goto HERE;
06 return Halt_Status;
07 }
08
09 int main()
10 {
11 H(D,D);
12 return 0;
13 }
In the above case a simulator is an x86 emulator that correctly
emulates at least one of the x86 instructions of D in the order
specified by the x86 instructions of D.
This may include correctly emulating the x86 instructions of H
in the order specified by the x86 instructions of H thus calling
H(D,D) in recursive simulation.
Execution Trace
Line 11: main() invokes H(D,D);
keeps repeating (unless aborted)
Line 01
Line 02
Line 03: simulated D(D) invokes simulated H(D,D) that simulates D(D)
Simulation invariant:
D correctly simulated by H cannot possibly reach past its own line 03.
The key thing to note is that no D simulated by any H of every H/D pair
specified by the above template ever reaches its own line 06 and halts.
The above is self-evidently true to anyone having sufficient
knowledge of the semantics of the C programming language.
Les messages affichés proviennent d'usenet.