DDD correctly emulated by HHH diverges from DDD
correctly emulated by HHH1 as soon as HHH begins
emulating itself emulating DDD, marked below.
*HHH1 never emulates itself emulating DDD*
void DDD()
{
 HHH(DDD);
 return;
}
int main()
{
 HHH1(DDD);
}
_DDD()
[00002183] 55Â Â Â Â Â Â Â Â Â Â Â Â push ebp
[00002184] 8bec          mov ebp,esp
[00002186] 6883210000Â Â Â Â push 00002183 ; push DDD
[0000218b] e833f4ffff    call 000015c3 ; call HHH
[00002190] 83c404Â Â Â Â Â Â Â Â add esp,+04
[00002193] 5d            pop ebp
[00002194] c3Â Â Â Â Â Â Â Â Â Â Â Â ret
Size in bytes:(0018) [00002194]
_main()
[000021a3] 55Â Â Â Â Â Â Â Â Â Â Â Â push ebp
[000021a4] 8bec          mov ebp,esp
[000021a6] 6883210000Â Â Â Â push 00002183 ; push DDD
[000021ab] e843f3ffff    call 000014f3 ; call HHH1
[000021b0] 83c404Â Â Â Â Â Â Â Â add esp,+04
[000021b3] 33c0Â Â Â Â Â Â Â Â Â Â xor eax,eax
[000021b5] 5d            pop ebp
[000021b6] c3Â Â Â Â Â Â Â Â Â Â Â Â ret
Size in bytes:(0020) [000021b6]
 machine  stack    stack    machine   assembly
 address  address  data     code      language
 ======== ======== ======== ========== ============= [000021a3][0010382d][00000000] 55        push ebp     ; main() [000021a4][0010382d][00000000] 8bec      mov ebp,esp  ; main() [000021a6][00103829][00002183] 6883210000 push 00002183 ; push DDD [000021ab][00103825][000021b0] e843f3ffff call 000014f3 ; call HHH1
New slave_stack at:1038d1
Begin Local Halt Decider Simulation  Execution Trace Stored at:1138d9 [00002183][001138c9][001138cd] 55        push ebp     ; DDD of HHH1
[00002184][001138c9][001138cd] 8bec      mov ebp,esp  ; DDD of HHH1 [00002186][001138c5][00002183] 6883210000 push 00002183 ; push DDD [0000218b][001138c1][00002190] e833f4ffff call 000015c3 ; call HHH
New slave_stack at:14e2f9
Begin Local Halt Decider Simulation  Execution Trace Stored at:15e301 [00002183][0015e2f1][0015e2f5] 55        push ebp     ; DDD of HHH[0]
[00002184][0015e2f1][0015e2f5] 8bec      mov ebp,esp  ; DDD of HHH[0]
[00002186][0015e2ed][00002183] 6883210000 push 00002183 ; push DDD [0000218b][0015e2e9][00002190] e833f4ffff call 000015c3 ; call HHH
*This is the beginning of the divergence of the behavior*
*of DDD emulated by HHH versus DDD emulated by HHH1*
New slave_stack at:198d21
[00002183][001a8d19][001a8d1d] 55        push ebp     ; DDD of HHH[1]
[00002184][001a8d19][001a8d1d] 8bec      mov ebp,esp  ; DDD of HHH[1]
[00002186][001a8d15][00002183] 6883210000 push 00002183 ; push DDD [0000218b][001a8d11][00002190] e833f4ffff call 000015c3 ; call HHH
Local Halt Decider: Infinite Recursion Detected Simulation Stopped
[00002190][001138c9][001138cd] 83c404    add esp,+04 ; DDD of HHH1 [00002193][001138cd][000015a8] 5d        pop ebp    ; DDD of HHH1
[00002194][001138d1][0003a980] c3        ret        ; DDD of HHH1
[000021b0][0010382d][00000000] 83c404    add esp,+04 ; main() [000021b3][0010382d][00000000] 33c0      xor eax,eax ; main() [000021b5][00103831][00000018] 5d        pop ebp    ; main() [000021b6][00103835][00000000] c3        ret        ; main()
Number of Instructions Executed(352831) == 5266 Pages
DDD correctly emulated by HHH diverges from DDD
correctly emulated by HHH1 as soon as HHH begins
emulating itself emulating DDD, marked below.
DDD correctly emulated by HHH diverges from DDD
correctly emulated by HHH1 as soon as HHH begins
emulating itself emulating DDD, marked below.
*HHH1 never emulates itself emulating DDD*
void DDD()
{
 HHH(DDD);
 return;
}
int main()
{
 HHH1(DDD);
}
_DDD()
[00002183] 55Â Â Â Â Â Â Â Â Â Â Â Â push ebp
[00002184] 8bec          mov ebp,esp
[00002186] 6883210000Â Â Â Â push 00002183 ; push DDD
[0000218b] e833f4ffff    call 000015c3 ; call HHH
[00002190] 83c404Â Â Â Â Â Â Â Â add esp,+04
[00002193] 5d            pop ebp
[00002194] c3Â Â Â Â Â Â Â Â Â Â Â Â ret
Size in bytes:(0018) [00002194]
_main()
[000021a3] 55Â Â Â Â Â Â Â Â Â Â Â Â push ebp
[000021a4] 8bec          mov ebp,esp
[000021a6] 6883210000Â Â Â Â push 00002183 ; push DDD
[000021ab] e843f3ffff    call 000014f3 ; call HHH1
[000021b0] 83c404Â Â Â Â Â Â Â Â add esp,+04
[000021b3] 33c0Â Â Â Â Â Â Â Â Â Â xor eax,eax
[000021b5] 5d            pop ebp
[000021b6] c3Â Â Â Â Â Â Â Â Â Â Â Â ret
Size in bytes:(0020) [000021b6]
 machine  stack    stack    machine   assembly
 address  address  data     code      language
 ======== ======== ======== ========== ============= [000021a3][0010382d][00000000] 55        push ebp     ; main() [000021a4][0010382d][00000000] 8bec      mov ebp,esp  ; main() [000021a6][00103829][00002183] 6883210000 push 00002183 ; push DDD [000021ab][00103825][000021b0] e843f3ffff call 000014f3 ; call HHH1
New slave_stack at:1038d1
Begin Local Halt Decider Simulation  Execution Trace Stored at:1138d9 [00002183][001138c9][001138cd] 55        push ebp     ; DDD of HHH1
[00002184][001138c9][001138cd] 8bec      mov ebp,esp  ; DDD of HHH1 [00002186][001138c5][00002183] 6883210000 push 00002183 ; push DDD [0000218b][001138c1][00002190] e833f4ffff call 000015c3 ; call HHH
New slave_stack at:14e2f9
Begin Local Halt Decider Simulation  Execution Trace Stored at:15e301 [00002183][0015e2f1][0015e2f5] 55        push ebp     ; DDD of HHH[0]
[00002184][0015e2f1][0015e2f5] 8bec      mov ebp,esp  ; DDD of HHH[0]
[00002186][0015e2ed][00002183] 6883210000 push 00002183 ; push DDD [0000218b][0015e2e9][00002190] e833f4ffff call 000015c3 ; call HHH
*This is the beginning of the divergence of the behavior*
*of DDD emulated by HHH versus DDD emulated by HHH1*
New slave_stack at:198d21
[00002183][001a8d19][001a8d1d] 55        push ebp     ; DDD of HHH[1]
[00002184][001a8d19][001a8d1d] 8bec      mov ebp,esp  ; DDD of HHH[1]
[00002186][001a8d15][00002183] 6883210000 push 00002183 ; push DDD [0000218b][001a8d11][00002190] e833f4ffff call 000015c3 ; call HHH
Local Halt Decider: Infinite Recursion Detected Simulation Stopped
[00002190][001138c9][001138cd] 83c404    add esp,+04 ; DDD of HHH1 [00002193][001138cd][000015a8] 5d        pop ebp    ; DDD of HHH1
[00002194][001138d1][0003a980] c3        ret        ; DDD of HHH1
[000021b0][0010382d][00000000] 83c404    add esp,+04 ; main() [000021b3][0010382d][00000000] 33c0      xor eax,eax ; main() [000021b5][00103831][00000018] 5d        pop ebp    ; main() [000021b6][00103835][00000000] c3        ret        ; main()
Number of Instructions Executed(352831) == 5266 Pages
DDD correctly emulated by HHH diverges from DDD correctly emulated byNo, it simulates HHH simulating DDD, just like HHH does. Of course
HHH1 as soon as HHH begins emulating itself emulating DDD, marked below. *HHH1 never emulates itself emulating DDD*
machine stack stack machine assembly address address
data code language ======== ======== ======== ==========
=============
[000021a3][0010382d][00000000] 55 push ebp ; main() [000021a4][0010382d][00000000] 8bec mov ebp,esp ; main() [000021a6][00103829][00002183] 6883210000 push 00002183 ; push DDD [000021ab][00103825][000021b0] e843f3ffff call 000014f3 ; call HHH1 New slave_stack at:1038d1
Begin Local Halt Decider Simulation Execution Trace Stored at:1138d9 [00002183][001138c9][001138cd] 55 push ebp ; DDD of HHH1 [00002184][001138c9][001138cd] 8bec mov ebp,esp ; DDD of HHH1 [00002186][001138c5][00002183] 6883210000 push 00002183 ; push DDD [0000218b][001138c1][00002190] e833f4ffff call 000015c3 ; call HHH New slave_stack at:14e2f9
Begin Local Halt Decider Simulation Execution Trace Stored at:15e301 [00002183][0015e2f1][0015e2f5] 55 push ebp ; DDD of HHH[0] [00002184][0015e2f1][0015e2f5] 8bec mov ebp,esp ; DDD of HHH[0] [00002186][0015e2ed][00002183] 6883210000 push 00002183 ; push DDD [0000218b][0015e2e9][00002190] e833f4ffff call 000015c3 ; call HHH
*This is the beginning of the divergence of the behavior*
*of DDD emulated by HHH versus DDD emulated by HHH1*
New slave_stack at:198d21 [00002183][001a8d19][001a8d1d] 55 push--
ebp ; DDD of HHH[1]
[00002184][001a8d19][001a8d1d] 8bec mov ebp,esp ; DDD of HHH[1] [00002186][001a8d15][00002183] 6883210000 push 00002183 ; push DDD [0000218b][001a8d11][00002190] e833f4ffff call 000015c3 ; call HHH Local
Halt Decider: Infinite Recursion Detected Simulation Stopped
[00002190][001138c9][001138cd] 83c404 add esp,+04 ; DDD of HHH1 [00002193][001138cd][000015a8] 5d pop ebp ; DDD of HHH1 [00002194][001138d1][0003a980] c3 ret ; DDD of HHH1 [000021b0][0010382d][00000000] 83c404 add esp,+04 ; main() [000021b3][0010382d][00000000] 33c0 xor eax,eax ; main() [000021b5][00103831][00000018] 5d pop ebp ; main() [000021b6][00103835][00000000] c3 ret ; main()
Number of Instructions Executed(352831) == 5266 Pages
On 6/3/2025 3:28 AM, Fred. Zwarts wrote:Yes, that is exactly the point where HHH aborts. There is no divergence
Op 02.jun.2025 om 17:52 schreef olcott:
DDD correctly emulated by HHH diverges from DDD correctly emulated by
HHH1 as soon as HHH begins emulating itself emulating DDD, marked
below.
*HHH1 never emulates itself emulating DDD*
*This is the beginning of the divergence of the behavior*
*of DDD emulated by HHH versus DDD emulated by HHH1*
Misleading words when you change the meaning of diverging.
Mike showed the traces side by side. Even after many requests, you
still cannot show the first instruction that is interpreted differently
by HHH and HHH1. The only difference is that HHH gives up the
simulation too early.
As soon as HHH begins emulating itself and HHH1 NEVER begins emulating
itself THIS IS THE DIVERGENCE.
--You start to call that as diverging, but that is not a divergence in
simulation, but an error in the decision to give up. There is no
divergence in the simulation up to the point when that erroneous
decision is made, proving that the simulation up to that point gives no
reason for that decision.
On 6/3/2025 2:37 AM, Mikko wrote:
On 2025-06-02 15:52:53 +0000, olcott said:
DDD correctly emulated by HHH diverges from DDD
correctly emulated by HHH1 as soon as HHH begins
emulating itself emulating DDD, marked below.
The DDD emulated (correctly or otherwise) by HHH is the same DDD as
the one emulated (correctly or otherwise) so both specify the same
behaviour.
No they do not. When DDD calls its own emulator its behavior
is different than when DDD calls another different emulator.
The moment that HHH begins emulating itself emulating
DDD is where the emulation by HHH and HHH1 diverge.
As soon as the emulations diverge (if not even sooner)
at lest one of the emulators is no longer emulating correctly.
On 6/3/2025 3:28 AM, Fred. Zwarts wrote:
Op 02.jun.2025 om 17:52 schreef olcott:
DDD correctly emulated by HHH diverges from DDD
correctly emulated by HHH1 as soon as HHH begins
emulating itself emulating DDD, marked below.
*HHH1 never emulates itself emulating DDD*
void DDD()
{
  HHH(DDD);
  return;
}
int main()
{
  HHH1(DDD);
}
_DDD()
[00002183] 55Â Â Â Â Â Â Â Â Â Â Â Â push ebp
[00002184] 8bec          mov ebp,esp
[00002186] 6883210000Â Â Â Â push 00002183 ; push DDD
[0000218b] e833f4ffff    call 000015c3 ; call HHH
[00002190] 83c404Â Â Â Â Â Â Â Â add esp,+04
[00002193] 5d            pop ebp
[00002194] c3Â Â Â Â Â Â Â Â Â Â Â Â ret
Size in bytes:(0018) [00002194]
_main()
[000021a3] 55Â Â Â Â Â Â Â Â Â Â Â Â push ebp
[000021a4] 8bec          mov ebp,esp
[000021a6] 6883210000Â Â Â Â push 00002183 ; push DDD
[000021ab] e843f3ffff    call 000014f3 ; call HHH1
[000021b0] 83c404Â Â Â Â Â Â Â Â add esp,+04
[000021b3] 33c0Â Â Â Â Â Â Â Â Â Â xor eax,eax
[000021b5] 5d            pop ebp
[000021b6] c3Â Â Â Â Â Â Â Â Â Â Â Â ret
Size in bytes:(0020) [000021b6]
  machine  stack    stack    machine   assembly
  address  address  data     code      language
  ======== ======== ======== ========== =============
[000021a3][0010382d][00000000] 55        push ebp     ; main()
[000021a4][0010382d][00000000] 8bec      mov ebp,esp  ; main() >>> [000021a6][00103829][00002183] 6883210000 push 00002183 ; push DDD
[000021ab][00103825][000021b0] e843f3ffff call 000014f3 ; call HHH1
New slave_stack at:1038d1
Begin Local Halt Decider Simulation  Execution Trace Stored at:1138d9 >>> [00002183][001138c9][001138cd] 55        push ebp     ; DDD of HHH1
[00002184][001138c9][001138cd] 8bec      mov ebp,esp  ; DDD of HHH1
[00002186][001138c5][00002183] 6883210000 push 00002183 ; push DDD
[0000218b][001138c1][00002190] e833f4ffff call 000015c3 ; call HHH
New slave_stack at:14e2f9
Begin Local Halt Decider Simulation  Execution Trace Stored at:15e301 >>> [00002183][0015e2f1][0015e2f5] 55        push ebp     ; DDD of HHH[0]
[00002184][0015e2f1][0015e2f5] 8bec      mov ebp,esp  ; DDD of HHH[0]
[00002186][0015e2ed][00002183] 6883210000 push 00002183 ; push DDD
[0000218b][0015e2e9][00002190] e833f4ffff call 000015c3 ; call HHH
*This is the beginning of the divergence of the behavior*
*of DDD emulated by HHH versus DDD emulated by HHH1*
New slave_stack at:198d21
[00002183][001a8d19][001a8d1d] 55        push ebp     ; DDD of HHH[1]
[00002184][001a8d19][001a8d1d] 8bec      mov ebp,esp  ; DDD of HHH[1]
[00002186][001a8d15][00002183] 6883210000 push 00002183 ; push DDD
[0000218b][001a8d11][00002190] e833f4ffff call 000015c3 ; call HHH
Local Halt Decider: Infinite Recursion Detected Simulation Stopped
[00002190][001138c9][001138cd] 83c404Â Â Â Â add esp,+04 ; DDD of HHH1
[00002193][001138cd][000015a8] 5d        pop ebp    ; DDD of HHH1
[00002194][001138d1][0003a980] c3        ret        ; DDD of HHH1
[000021b0][0010382d][00000000] 83c404Â Â Â Â add esp,+04 ; main()
[000021b3][0010382d][00000000] 33c0Â Â Â Â Â Â xor eax,eax ; main()
[000021b5][00103831][00000018] 5d        pop ebp    ; main() >>> [000021b6][00103835][00000000] c3        ret        ; main()
Number of Instructions Executed(352831) == 5266 Pages
Misleading words when you change the meaning of diverging.
Mike showed the traces side by side. Even after many requests, you
still cannot show the first instruction that is interpreted
differently by HHH and HHH1. The only difference is that HHH gives up
the simulation too early.
As soon as HHH begins emulating itself
and HHH1 NEVER begins emulating itself
THIS IS THE DIVERGENCE.
You start to call that as diverging, but that is not a divergence in
simulation, but an error in the decision to give up. There is no
divergence in the simulation up to the point when that erroneous
decision is made, proving that the simulation up to that point gives
no reason for that decision.
On 6/3/2025 2:37 AM, Mikko wrote:
On 2025-06-02 15:52:53 +0000, olcott said:
DDD correctly emulated by HHH diverges from DDD
correctly emulated by HHH1 as soon as HHH begins
emulating itself emulating DDD, marked below.
The DDD emulated (correctly or otherwise) by HHH is the same DDD as
the one emulated (correctly or otherwise) so both specify the same
behaviour.
No they do not. When DDD calls its own emulator its behavior
is different than when DDD calls another different emulator.
On 6/3/2025 3:28 AM, Fred. Zwarts wrote:
Op 02.jun.2025 om 17:52 schreef olcott:
DDD correctly emulated by HHH diverges from DDD
correctly emulated by HHH1 as soon as HHH begins
emulating itself emulating DDD, marked below.
*HHH1 never emulates itself emulating DDD*
void DDD()
{
  HHH(DDD);
  return;
}
int main()
{
  HHH1(DDD);
}
_DDD()
[00002183] 55Â Â Â Â Â Â Â Â Â Â Â Â push ebp
[00002184] 8bec          mov ebp,esp
[00002186] 6883210000Â Â Â Â push 00002183 ; push DDD
[0000218b] e833f4ffff    call 000015c3 ; call HHH
[00002190] 83c404Â Â Â Â Â Â Â Â add esp,+04
[00002193] 5d            pop ebp
[00002194] c3Â Â Â Â Â Â Â Â Â Â Â Â ret
Size in bytes:(0018) [00002194]
_main()
[000021a3] 55Â Â Â Â Â Â Â Â Â Â Â Â push ebp
[000021a4] 8bec          mov ebp,esp
[000021a6] 6883210000Â Â Â Â push 00002183 ; push DDD
[000021ab] e843f3ffff    call 000014f3 ; call HHH1
[000021b0] 83c404Â Â Â Â Â Â Â Â add esp,+04
[000021b3] 33c0Â Â Â Â Â Â Â Â Â Â xor eax,eax
[000021b5] 5d            pop ebp
[000021b6] c3Â Â Â Â Â Â Â Â Â Â Â Â ret
Size in bytes:(0020) [000021b6]
  machine  stack    stack    machine   assembly
  address  address  data     code      language
  ======== ======== ======== ========== =============
[000021a3][0010382d][00000000] 55        push ebp     ; main()
[000021a4][0010382d][00000000] 8bec      mov ebp,esp  ; main() >>> [000021a6][00103829][00002183] 6883210000 push 00002183 ; push DDD
[000021ab][00103825][000021b0] e843f3ffff call 000014f3 ; call HHH1
New slave_stack at:1038d1
Begin Local Halt Decider Simulation  Execution Trace Stored at:1138d9 >>> [00002183][001138c9][001138cd] 55        push ebp     ; DDD of HHH1
[00002184][001138c9][001138cd] 8bec      mov ebp,esp  ; DDD of HHH1
[00002186][001138c5][00002183] 6883210000 push 00002183 ; push DDD
[0000218b][001138c1][00002190] e833f4ffff call 000015c3 ; call HHH
New slave_stack at:14e2f9
Begin Local Halt Decider Simulation  Execution Trace Stored at:15e301 >>> [00002183][0015e2f1][0015e2f5] 55        push ebp     ; DDD of HHH[0]
[00002184][0015e2f1][0015e2f5] 8bec      mov ebp,esp  ; DDD of HHH[0]
[00002186][0015e2ed][00002183] 6883210000 push 00002183 ; push DDD
[0000218b][0015e2e9][00002190] e833f4ffff call 000015c3 ; call HHH
*This is the beginning of the divergence of the behavior*
*of DDD emulated by HHH versus DDD emulated by HHH1*
New slave_stack at:198d21
[00002183][001a8d19][001a8d1d] 55        push ebp     ; DDD of HHH[1]
[00002184][001a8d19][001a8d1d] 8bec      mov ebp,esp  ; DDD of HHH[1]
[00002186][001a8d15][00002183] 6883210000 push 00002183 ; push DDD
[0000218b][001a8d11][00002190] e833f4ffff call 000015c3 ; call HHH
Local Halt Decider: Infinite Recursion Detected Simulation Stopped
[00002190][001138c9][001138cd] 83c404Â Â Â Â add esp,+04 ; DDD of HHH1
[00002193][001138cd][000015a8] 5d        pop ebp    ; DDD of HHH1
[00002194][001138d1][0003a980] c3        ret        ; DDD of HHH1
[000021b0][0010382d][00000000] 83c404Â Â Â Â add esp,+04 ; main()
[000021b3][0010382d][00000000] 33c0Â Â Â Â Â Â xor eax,eax ; main()
[000021b5][00103831][00000018] 5d        pop ebp    ; main() >>> [000021b6][00103835][00000000] c3        ret        ; main()
Number of Instructions Executed(352831) == 5266 Pages
Misleading words when you change the meaning of diverging.
Mike showed the traces side by side. Even after many requests, you
still cannot show the first instruction that is interpreted
differently by HHH and HHH1. The only difference is that HHH gives up
the simulation too early.
As soon as HHH begins emulating itself
and HHH1 NEVER begins emulating itself
THIS IS THE DIVERGENCE.
On 6/3/2025 9:13 PM, Richard Damon wrote:
On 6/3/25 3:47 PM, olcott wrote:
On 6/3/2025 3:28 AM, Fred. Zwarts wrote:
Op 02.jun.2025 om 17:52 schreef olcott:
DDD correctly emulated by HHH diverges from DDD
correctly emulated by HHH1 as soon as HHH begins
emulating itself emulating DDD, marked below.
*HHH1 never emulates itself emulating DDD*
void DDD()
{
  HHH(DDD);
  return;
}
int main()
{
  HHH1(DDD);
}
_DDD()
[00002183] 55Â Â Â Â Â Â Â Â Â Â Â Â push ebp
[00002184] 8bec          mov ebp,esp
[00002186] 6883210000Â Â Â Â push 00002183 ; push DDD
[0000218b] e833f4ffff    call 000015c3 ; call HHH
[00002190] 83c404Â Â Â Â Â Â Â Â add esp,+04
[00002193] 5d            pop ebp
[00002194] c3Â Â Â Â Â Â Â Â Â Â Â Â ret
Size in bytes:(0018) [00002194]
_main()
[000021a3] 55Â Â Â Â Â Â Â Â Â Â Â Â push ebp
[000021a4] 8bec          mov ebp,esp
[000021a6] 6883210000Â Â Â Â push 00002183 ; push DDD
[000021ab] e843f3ffff    call 000014f3 ; call HHH1
[000021b0] 83c404Â Â Â Â Â Â Â Â add esp,+04
[000021b3] 33c0Â Â Â Â Â Â Â Â Â Â xor eax,eax
[000021b5] 5d            pop ebp
[000021b6] c3Â Â Â Â Â Â Â Â Â Â Â Â ret
Size in bytes:(0020) [000021b6]
  machine  stack    stack    machine   assembly
  address  address  data     code      language >>>>>   ======== ======== ======== ========== =============
[000021a3][0010382d][00000000] 55        push ebp     ; main()
[000021a4][0010382d][00000000] 8bec      mov ebp,esp  ; main() >>>>> [000021a6][00103829][00002183] 6883210000 push 00002183 ; push DDD
[000021ab][00103825][000021b0] e843f3ffff call 000014f3 ; call HHH1
New slave_stack at:1038d1
Begin Local Halt Decider Simulation  Execution Trace Stored at:1138d9 >>>>> [00002183][001138c9][001138cd] 55        push ebp     ; DDD of HHH1
[00002184][001138c9][001138cd] 8bec      mov ebp,esp  ; DDD of HHH1
[00002186][001138c5][00002183] 6883210000 push 00002183 ; push DDD
[0000218b][001138c1][00002190] e833f4ffff call 000015c3 ; call HHH
New slave_stack at:14e2f9
Begin Local Halt Decider Simulation  Execution Trace Stored at:15e301 >>>>> [00002183][0015e2f1][0015e2f5] 55        push ebp     ; DDD of
HHH[0]
[00002184][0015e2f1][0015e2f5] 8bec      mov ebp,esp  ; DDD of >>>>> HHH[0]
[00002186][0015e2ed][00002183] 6883210000 push 00002183 ; push DDD
[0000218b][0015e2e9][00002190] e833f4ffff call 000015c3 ; call HHH
*This is the beginning of the divergence of the behavior*
*of DDD emulated by HHH versus DDD emulated by HHH1*
New slave_stack at:198d21
[00002183][001a8d19][001a8d1d] 55        push ebp     ; DDD of
HHH[1]
[00002184][001a8d19][001a8d1d] 8bec      mov ebp,esp  ; DDD of >>>>> HHH[1]
[00002186][001a8d15][00002183] 6883210000 push 00002183 ; push DDD
[0000218b][001a8d11][00002190] e833f4ffff call 000015c3 ; call HHH
Local Halt Decider: Infinite Recursion Detected Simulation Stopped
[00002190][001138c9][001138cd] 83c404    add esp,+04 ; DDD of HHH1 >>>>> [00002193][001138cd][000015a8] 5d        pop ebp    ; DDD of HHH1
[00002194][001138d1][0003a980] c3        ret        ; DDD of HHH1
[000021b0][0010382d][00000000] 83c404Â Â Â Â add esp,+04 ; main()
[000021b3][0010382d][00000000] 33c0      xor eax,eax ; main() >>>>> [000021b5][00103831][00000018] 5d        pop ebp    ; main()
[000021b6][00103835][00000000] c3        ret        ; main()
Number of Instructions Executed(352831) == 5266 Pages
Misleading words when you change the meaning of diverging.
Mike showed the traces side by side. Even after many requests, you
still cannot show the first instruction that is interpreted
differently by HHH and HHH1. The only difference is that HHH gives
up the simulation too early.
As soon as HHH begins emulating itself
and HHH1 NEVER begins emulating itself
THIS IS THE DIVERGENCE.
So, WHAT INSTRUCTION, correctly simulated did that.
HHH emulates DDD two times and HHH1 emulates DDD one time
the whole second time is the divergence.
On 6/3/2025 9:42 PM, dbush wrote:
On 6/3/2025 10:29 PM, olcott wrote:
On 6/3/2025 8:57 PM, dbush wrote:
On 6/3/2025 5:14 PM, olcott wrote:
On 6/3/2025 3:48 PM, joes wrote:
Am Tue, 03 Jun 2025 14:47:23 -0500 schrieb olcott:
On 6/3/2025 3:28 AM, Fred. Zwarts wrote:Yes, that is exactly the point where HHH aborts.
Op 02.jun.2025 om 17:52 schreef olcott:
DDD correctly emulated by HHH diverges from DDD correctly
emulated by
HHH1 as soon as HHH begins emulating itself emulating DDD, marked >>>>>>>>> below.
*HHH1 never emulates itself emulating DDD*
*This is the beginning of the divergence of the behavior*
*of DDD emulated by HHH versus DDD emulated by HHH1*
Misleading words when you change the meaning of diverging.
Mike showed the traces side by side. Even after many requests, you >>>>>>>> still cannot show the first instruction that is interpreted
differently
by HHH and HHH1. The only difference is that HHH gives up the
simulation too early.
As soon as HHH begins emulating itself and HHH1 NEVER begins
emulating
itself THIS IS THE DIVERGENCE.
Both the divergence and the abort are shown below.
_DDD()
[00002183] 55Â Â Â Â Â Â Â Â Â Â Â Â push ebp
[00002184] 8bec          mov ebp,esp
[00002186] 6883210000Â Â Â Â push 00002183 ; push DDD
[0000218b] e833f4ffff    call 000015c3 ; call HHH
[00002190] 83c404Â Â Â Â Â Â Â Â add esp,+04
[00002193] 5d            pop ebp
[00002194] c3Â Â Â Â Â Â Â Â Â Â Â Â ret
Size in bytes:(0018) [00002194]
_main()
[000021a3] 55Â Â Â Â Â Â Â Â Â Â Â Â push ebp
[000021a4] 8bec          mov ebp,esp
[000021a6] 6883210000Â Â Â Â push 00002183 ; push DDD
[000021ab] e843f3ffff    call 000014f3 ; call HHH1
[000021b0] 83c404Â Â Â Â Â Â Â Â add esp,+04
[000021b3] 33c0Â Â Â Â Â Â Â Â Â Â xor eax,eax
[000021b5] 5d            pop ebp
[000021b6] c3Â Â Â Â Â Â Â Â Â Â Â Â ret
Size in bytes:(0020) [000021b6]
  machine  stack    stack    machine   assembly
  address  address  data     code      language >>>>>   ======== ======== ======== ========== =============
[000021a3][0010382d][00000000] 55        push ebp     ; main()
[000021a4][0010382d][00000000] 8bec      mov ebp,esp  ; main() >>>>> [000021a6][00103829][00002183] 6883210000 push 00002183 ; push DDD
[000021ab][00103825][000021b0] e843f3ffff call 000014f3 ; call HHH1
New slave_stack at:1038d1
Begin Local Halt Decider Simulation  Execution Trace Stored at:1138d9 >>>>> [00002183][001138c9][001138cd] 55        push ebp     ; DDD of HHH1
[00002184][001138c9][001138cd] 8bec      mov ebp,esp  ; DDD of HHH1
[00002186][001138c5][00002183] 6883210000 push 00002183 ; push DDD
[0000218b][001138c1][00002190] e833f4ffff call 000015c3 ; call HHH
New slave_stack at:14e2f9
Begin Local Halt Decider Simulation  Execution Trace Stored at:15e301 >>>>> [00002183][0015e2f1][0015e2f5] 55        push ebp     ; DDD of
HHH[0]
[00002184][0015e2f1][0015e2f5] 8bec      mov ebp,esp  ; DDD of >>>>> HHH[0]
[00002186][0015e2ed][00002183] 6883210000 push 00002183 ; push DDD
[0000218b][0015e2e9][00002190] e833f4ffff call 000015c3 ; call HHH
New slave_stack at:198d21
THIS IS WHERE THE DIVERGENCE OF DDD EMULATED BY HHH
AND DDD EMULATED BY HHH1 BEGINS
So how exactly do HHH and HHH1 emulate the first instruction of HHH
differently?
The question is incorrect.
HHH emulates DDD two times and HHH1 emulates DDD one time
the whole second time is the divergence.
There is no divergence if the instructions are emulated exactly the
same in both cases.
HHH1(DDD) emulates DDD exactly one time.
HHH(DDD) emulates DDD exactly two times.
The whole second time that HHH emulates DDD is
divergence.
On 6/3/2025 9:13 PM, Richard Damon wrote:
On 6/3/25 3:47 PM, olcott wrote:
On 6/3/2025 3:28 AM, Fred. Zwarts wrote:
Op 02.jun.2025 om 17:52 schreef olcott:
DDD correctly emulated by HHH diverges from DDD
correctly emulated by HHH1 as soon as HHH begins
emulating itself emulating DDD, marked below.
*HHH1 never emulates itself emulating DDD*
void DDD()
{
  HHH(DDD);
  return;
}
int main()
{
  HHH1(DDD);
}
_DDD()
[00002183] 55Â Â Â Â Â Â Â Â Â Â Â Â push ebp
[00002184] 8bec          mov ebp,esp
[00002186] 6883210000Â Â Â Â push 00002183 ; push DDD
[0000218b] e833f4ffff    call 000015c3 ; call HHH
[00002190] 83c404Â Â Â Â Â Â Â Â add esp,+04
[00002193] 5d            pop ebp
[00002194] c3Â Â Â Â Â Â Â Â Â Â Â Â ret
Size in bytes:(0018) [00002194]
_main()
[000021a3] 55Â Â Â Â Â Â Â Â Â Â Â Â push ebp
[000021a4] 8bec          mov ebp,esp
[000021a6] 6883210000Â Â Â Â push 00002183 ; push DDD
[000021ab] e843f3ffff    call 000014f3 ; call HHH1
[000021b0] 83c404Â Â Â Â Â Â Â Â add esp,+04
[000021b3] 33c0Â Â Â Â Â Â Â Â Â Â xor eax,eax
[000021b5] 5d            pop ebp
[000021b6] c3Â Â Â Â Â Â Â Â Â Â Â Â ret
Size in bytes:(0020) [000021b6]
  machine  stack    stack    machine   assembly
  address  address  data     code      language >>>>>   ======== ======== ======== ========== =============
[000021a3][0010382d][00000000] 55        push ebp     ; main()
[000021a4][0010382d][00000000] 8bec      mov ebp,esp  ; main() >>>>> [000021a6][00103829][00002183] 6883210000 push 00002183 ; push DDD
[000021ab][00103825][000021b0] e843f3ffff call 000014f3 ; call HHH1
New slave_stack at:1038d1
Begin Local Halt Decider Simulation  Execution Trace Stored at:1138d9 >>>>> [00002183][001138c9][001138cd] 55        push ebp     ; DDD of HHH1
[00002184][001138c9][001138cd] 8bec      mov ebp,esp  ; DDD of HHH1
[00002186][001138c5][00002183] 6883210000 push 00002183 ; push DDD
[0000218b][001138c1][00002190] e833f4ffff call 000015c3 ; call HHH
New slave_stack at:14e2f9
Begin Local Halt Decider Simulation  Execution Trace Stored at:15e301 >>>>> [00002183][0015e2f1][0015e2f5] 55        push ebp     ; DDD of
HHH[0]
[00002184][0015e2f1][0015e2f5] 8bec      mov ebp,esp  ; DDD of >>>>> HHH[0]
[00002186][0015e2ed][00002183] 6883210000 push 00002183 ; push DDD
[0000218b][0015e2e9][00002190] e833f4ffff call 000015c3 ; call HHH
*This is the beginning of the divergence of the behavior*
*of DDD emulated by HHH versus DDD emulated by HHH1*
New slave_stack at:198d21
[00002183][001a8d19][001a8d1d] 55        push ebp     ; DDD of
HHH[1]
[00002184][001a8d19][001a8d1d] 8bec      mov ebp,esp  ; DDD of >>>>> HHH[1]
[00002186][001a8d15][00002183] 6883210000 push 00002183 ; push DDD
[0000218b][001a8d11][00002190] e833f4ffff call 000015c3 ; call HHH
Local Halt Decider: Infinite Recursion Detected Simulation Stopped
[00002190][001138c9][001138cd] 83c404    add esp,+04 ; DDD of HHH1 >>>>> [00002193][001138cd][000015a8] 5d        pop ebp    ; DDD of HHH1
[00002194][001138d1][0003a980] c3        ret        ; DDD of HHH1
[000021b0][0010382d][00000000] 83c404Â Â Â Â add esp,+04 ; main()
[000021b3][0010382d][00000000] 33c0      xor eax,eax ; main() >>>>> [000021b5][00103831][00000018] 5d        pop ebp    ; main()
[000021b6][00103835][00000000] c3        ret        ; main()
Number of Instructions Executed(352831) == 5266 Pages
Misleading words when you change the meaning of diverging.
Mike showed the traces side by side. Even after many requests, you
still cannot show the first instruction that is interpreted
differently by HHH and HHH1. The only difference is that HHH gives
up the simulation too early.
As soon as HHH begins emulating itself
and HHH1 NEVER begins emulating itself
THIS IS THE DIVERGENCE.
So, WHAT INSTRUCTION, correctly simulated did that.
HHH emulates DDD two times and HHH1 emulates DDD one time
the whole second time is the divergence.
On 6/3/2025 8:57 PM, dbush wrote:
On 6/3/2025 5:14 PM, olcott wrote:
On 6/3/2025 3:48 PM, joes wrote:
Am Tue, 03 Jun 2025 14:47:23 -0500 schrieb olcott:
On 6/3/2025 3:28 AM, Fred. Zwarts wrote:Yes, that is exactly the point where HHH aborts.
Op 02.jun.2025 om 17:52 schreef olcott:
DDD correctly emulated by HHH diverges from DDD correctly
emulated by
HHH1 as soon as HHH begins emulating itself emulating DDD, marked >>>>>>> below.
*HHH1 never emulates itself emulating DDD*
*This is the beginning of the divergence of the behavior*
*of DDD emulated by HHH versus DDD emulated by HHH1*
Misleading words when you change the meaning of diverging.
Mike showed the traces side by side. Even after many requests, you >>>>>> still cannot show the first instruction that is interpreted
differently
by HHH and HHH1. The only difference is that HHH gives up the
simulation too early.
As soon as HHH begins emulating itself and HHH1 NEVER begins emulating >>>>> itself THIS IS THE DIVERGENCE.
Both the divergence and the abort are shown below.
_DDD()
[00002183] 55Â Â Â Â Â Â Â Â Â Â Â Â push ebp
[00002184] 8bec          mov ebp,esp
[00002186] 6883210000Â Â Â Â push 00002183 ; push DDD
[0000218b] e833f4ffff    call 000015c3 ; call HHH
[00002190] 83c404Â Â Â Â Â Â Â Â add esp,+04
[00002193] 5d            pop ebp
[00002194] c3Â Â Â Â Â Â Â Â Â Â Â Â ret
Size in bytes:(0018) [00002194]
_main()
[000021a3] 55Â Â Â Â Â Â Â Â Â Â Â Â push ebp
[000021a4] 8bec          mov ebp,esp
[000021a6] 6883210000Â Â Â Â push 00002183 ; push DDD
[000021ab] e843f3ffff    call 000014f3 ; call HHH1
[000021b0] 83c404Â Â Â Â Â Â Â Â add esp,+04
[000021b3] 33c0Â Â Â Â Â Â Â Â Â Â xor eax,eax
[000021b5] 5d            pop ebp
[000021b6] c3Â Â Â Â Â Â Â Â Â Â Â Â ret
Size in bytes:(0020) [000021b6]
  machine  stack    stack    machine   assembly
  address  address  data     code      language
  ======== ======== ======== ========== =============
[000021a3][0010382d][00000000] 55        push ebp     ; main()
[000021a4][0010382d][00000000] 8bec      mov ebp,esp  ; main() >>> [000021a6][00103829][00002183] 6883210000 push 00002183 ; push DDD
[000021ab][00103825][000021b0] e843f3ffff call 000014f3 ; call HHH1
New slave_stack at:1038d1
Begin Local Halt Decider Simulation  Execution Trace Stored at:1138d9 >>> [00002183][001138c9][001138cd] 55        push ebp     ; DDD of HHH1
[00002184][001138c9][001138cd] 8bec      mov ebp,esp  ; DDD of HHH1
[00002186][001138c5][00002183] 6883210000 push 00002183 ; push DDD
[0000218b][001138c1][00002190] e833f4ffff call 000015c3 ; call HHH
New slave_stack at:14e2f9
Begin Local Halt Decider Simulation  Execution Trace Stored at:15e301 >>> [00002183][0015e2f1][0015e2f5] 55        push ebp     ; DDD of HHH[0]
[00002184][0015e2f1][0015e2f5] 8bec      mov ebp,esp  ; DDD of HHH[0]
[00002186][0015e2ed][00002183] 6883210000 push 00002183 ; push DDD
[0000218b][0015e2e9][00002190] e833f4ffff call 000015c3 ; call HHH
New slave_stack at:198d21
THIS IS WHERE THE DIVERGENCE OF DDD EMULATED BY HHH
AND DDD EMULATED BY HHH1 BEGINS
So how exactly do HHH and HHH1 emulate the first instruction of HHH
differently?
The question is incorrect.
HHH emulates DDD two times and HHH1 emulates DDD one time
the whole second time is the divergence.
Failure to provide the above explanation in your next reply or within
one hour of your next post in this newsgroup will be taken as your
official on-the-record admission that the emulations of DDD performed
by HHH and HHH1 do *not* diverge but are in fact the same up to the
point that HHH aborts.
*The above call causes HHH to emulate itself emulating DDD*
*HHH1 never emulates itself at all*
[00002183][001a8d19][001a8d1d] 55        push ebp     ; DDD of HHH[1]
[00002184][001a8d19][001a8d1d] 8bec      mov ebp,esp  ; DDD of HHH[1]
[00002186][001a8d15][00002183] 6883210000 push 00002183 ; push DDD
[0000218b][001a8d11][00002190] e833f4ffff call 000015c3 ; call HHH
Local Halt Decider: Infinite Recursion Detected Simulation Stopped
[00002190][001138c9][001138cd] 83c404Â Â Â Â add esp,+04 ; DDD of HHH1
[00002193][001138cd][000015a8] 5d        pop ebp    ; DDD of HHH1
[00002194][001138d1][0003a980] c3        ret        ; DDD of HHH1
[000021b0][0010382d][00000000] 83c404Â Â Â Â add esp,+04 ; main()
[000021b3][0010382d][00000000] 33c0Â Â Â Â Â Â xor eax,eax ; main()
[000021b5][00103831][00000018] 5d        pop ebp    ; main() >>> [000021b6][00103835][00000000] c3        ret        ; main()
Number of Instructions Executed(352831) == 5266 Pages
On 6/4/2025 4:20 AM, Fred. Zwarts wrote:What? No. There is simply no instruction to compare to, because HHH
Op 04.jun.2025 om 04:37 schreef olcott:
On 6/3/2025 9:13 PM, Richard Damon wrote:
On 6/3/25 3:47 PM, olcott wrote:
On 6/3/2025 3:28 AM, Fred. Zwarts wrote:
Op 02.jun.2025 om 17:52 schreef olcott:
DDD correctly emulated by HHH diverges from DDD correctly emulated >>>>>>> by HHH1 as soon as HHH begins emulating itself emulating DDD,
marked below.
*HHH1 never emulates itself emulating DDD*
*This is the beginning of the divergence of the behavior*
*of DDD emulated by HHH versus DDD emulated by HHH1*
That did not answer the question: WHAT INSTRUCTION, correctly simulatedHHH emulates DDD two times and HHH1 emulates DDD one time the wholeSo, WHAT INSTRUCTION, correctly simulated did that.Misleading words when you change the meaning of diverging.
Mike showed the traces side by side. Even after many requests, you >>>>>> still cannot show the first instruction that is interpreted
differently by HHH and HHH1. The only difference is that HHH gives >>>>>> up the simulation too early.
As soon as HHH begins emulating itself and HHH1 NEVER begins
emulating itself THIS IS THE DIVERGENCE.
second time is the divergence.
did that?
When HHH1(DDD) simulates DDD it never simulates itself. When HHH(DDD) simulates DDD then simulates itself simulating DDD the first instruction
that this simulated HHH simulates diverges from the simulation that HHH1
did.
Yes, there is no divergence. You couldn't tell the simulator just fromYou cannot point to any instruction interpreted differently by the twoThere are no instructions interpreted differently. It is the fact that HHH(DDD) emulates DDD twice and HHH1(DDD) only emulates DDD once that is
simulators.
the key difference.
--It seems you understand that the trace does not show a difference, but
that the divergence is only in your interpretation of the trace.
On 6/4/2025 1:54 AM, Mikko wrote:
On 2025-06-03 19:57:09 +0000, olcott said:
On 6/3/2025 2:37 AM, Mikko wrote:
On 2025-06-02 15:52:53 +0000, olcott said:
DDD correctly emulated by HHH diverges from DDD
correctly emulated by HHH1 as soon as HHH begins
emulating itself emulating DDD, marked below.
The DDD emulated (correctly or otherwise) by HHH is the same DDD as
the one emulated (correctly or otherwise) so both specify the same
behaviour.
No they do not. When DDD calls its own emulator its behavior
is different than when DDD calls another different emulator.
If the input string does not unambiguously specify one and only one
behaviour it is incorrectly encoded and not a valid input string.
The halting problem of Truing machines requires that every pair of
a Turing macnine and input is descibed so that the behaviour to
be decided about is the only behaviour that meets to the description.
The code proves what it proves.
_DDD()
[00002183] 55Â Â Â Â Â Â Â Â Â Â Â Â push ebp
[00002184] 8bec          mov ebp,esp
[00002186] 6883210000Â Â Â Â push 00002183 ; push DDD
[0000218b] e833f4ffff    call 000015c3 ; call HHH
[00002190] 83c404Â Â Â Â Â Â Â Â add esp,+04
[00002193] 5d            pop ebp
[00002194] c3Â Â Â Â Â Â Â Â Â Â Â Â ret
Size in bytes:(0018) [00002194]
_main()
[000021a3] 55Â Â Â Â Â Â Â Â Â Â Â Â push ebp
[000021a4] 8bec          mov ebp,esp
[000021a6] 6883210000Â Â Â Â push 00002183 ; push DDD
[000021ab] e843f3ffff    call 000014f3 ; call HHH1
[000021b0] 83c404Â Â Â Â Â Â Â Â add esp,+04
[000021b3] 33c0Â Â Â Â Â Â Â Â Â Â xor eax,eax
[000021b5] 5d            pop ebp
[000021b6] c3Â Â Â Â Â Â Â Â Â Â Â Â ret
Size in bytes:(0020) [000021b6]
 machine  stack    stack    machine   assembly
 address  address  data     code      language
 ======== ======== ======== ========== ============= [000021a3][0010382d][00000000] 55        push ebp     ; main() [000021a4][0010382d][00000000] 8bec      mov ebp,esp  ; main() [000021a6][00103829][00002183] 6883210000 push 00002183 ; push DDD [000021ab][00103825][000021b0] e843f3ffff call 000014f3 ; call HHH1
New slave_stack at:1038d1
Begin Local Halt Decider Simulation  Execution Trace Stored at:1138d9 [00002183][001138c9][001138cd] 55        push ebp     ; DDD of HHH1
[00002184][001138c9][001138cd] 8bec      mov ebp,esp  ; DDD of HHH1 [00002186][001138c5][00002183] 6883210000 push 00002183 ; push DDD [0000218b][001138c1][00002190] e833f4ffff call 000015c3 ; call HHH
New slave_stack at:14e2f9
Begin Local Halt Decider Simulation  Execution Trace Stored at:15e301 [00002183][0015e2f1][0015e2f5] 55        push ebp     ; DDD of HHH[0]
[00002184][0015e2f1][0015e2f5] 8bec      mov ebp,esp  ; DDD of HHH[0]
[00002186][0015e2ed][00002183] 6883210000 push 00002183 ; push DDD [0000218b][0015e2e9][00002190] e833f4ffff call 000015c3 ; call HHH
New slave_stack at:198d21
*This is the beginning of the divergence of the behavior*
*of DDD emulated by HHH versus DDD emulated by HHH1*
[00002183][001a8d19][001a8d1d] 55        push ebp     ; DDD of HHH[1]
[00002184][001a8d19][001a8d1d] 8bec      mov ebp,esp  ; DDD of HHH[1]
[00002186][001a8d15][00002183] 6883210000 push 00002183 ; push DDD [0000218b][001a8d11][00002190] e833f4ffff call 000015c3 ; call HHH
Local Halt Decider: Infinite Recursion Detected Simulation Stopped
[00002190][001138c9][001138cd] 83c404    add esp,+04 ; DDD of HHH1 [00002193][001138cd][000015a8] 5d        pop ebp    ; DDD of HHH1
[00002194][001138d1][0003a980] c3        ret        ; DDD of HHH1
[000021b0][0010382d][00000000] 83c404    add esp,+04 ; main() [000021b3][0010382d][00000000] 33c0      xor eax,eax ; main() [000021b5][00103831][00000018] 5d        pop ebp    ; main() [000021b6][00103835][00000000] c3        ret        ; main()
Number of Instructions Executed(352831) == 5266 Pages
On 6/4/2025 6:22 AM, Richard Damon wrote:
On 6/3/25 10:51 PM, olcott wrote:
On 6/3/2025 9:42 PM, dbush wrote:
On 6/3/2025 10:29 PM, olcott wrote:
On 6/3/2025 8:57 PM, dbush wrote:
On 6/3/2025 5:14 PM, olcott wrote:
On 6/3/2025 3:48 PM, joes wrote:
Am Tue, 03 Jun 2025 14:47:23 -0500 schrieb olcott:
On 6/3/2025 3:28 AM, Fred. Zwarts wrote:Yes, that is exactly the point where HHH aborts.
Op 02.jun.2025 om 17:52 schreef olcott:
DDD correctly emulated by HHH diverges from DDD correctly >>>>>>>>>>> emulated by
HHH1 as soon as HHH begins emulating itself emulating DDD, >>>>>>>>>>> marked
below.
*HHH1 never emulates itself emulating DDD*
*This is the beginning of the divergence of the behavior* >>>>>>>>>>> *of DDD emulated by HHH versus DDD emulated by HHH1*
Misleading words when you change the meaning of diverging. >>>>>>>>>> Mike showed the traces side by side. Even after many requests, >>>>>>>>>> you
still cannot show the first instruction that is interpreted >>>>>>>>>> differently
by HHH and HHH1. The only difference is that HHH gives up the >>>>>>>>>> simulation too early.
As soon as HHH begins emulating itself and HHH1 NEVER begins >>>>>>>>> emulating
itself THIS IS THE DIVERGENCE.
Both the divergence and the abort are shown below.
_DDD()
[00002183] 55Â Â Â Â Â Â Â Â Â Â Â Â push ebp
[00002184] 8bec          mov ebp,esp
[00002186] 6883210000Â Â Â Â push 00002183 ; push DDD
[0000218b] e833f4ffff    call 000015c3 ; call HHH
[00002190] 83c404Â Â Â Â Â Â Â Â add esp,+04
[00002193] 5d            pop ebp
[00002194] c3Â Â Â Â Â Â Â Â Â Â Â Â ret
Size in bytes:(0018) [00002194]
_main()
[000021a3] 55Â Â Â Â Â Â Â Â Â Â Â Â push ebp
[000021a4] 8bec          mov ebp,esp
[000021a6] 6883210000Â Â Â Â push 00002183 ; push DDD
[000021ab] e843f3ffff    call 000014f3 ; call HHH1
[000021b0] 83c404Â Â Â Â Â Â Â Â add esp,+04
[000021b3] 33c0Â Â Â Â Â Â Â Â Â Â xor eax,eax
[000021b5] 5d            pop ebp
[000021b6] c3Â Â Â Â Â Â Â Â Â Â Â Â ret
Size in bytes:(0020) [000021b6]
  machine  stack    stack    machine   assembly >>>>>>>   address  address  data     code      language >>>>>>>   ======== ======== ======== ========== =============
[000021a3][0010382d][00000000] 55        push ebp     ; main()
[000021a4][0010382d][00000000] 8bec      mov ebp,esp  ; main()
[000021a6][00103829][00002183] 6883210000 push 00002183 ; push DDD >>>>>>> [000021ab][00103825][000021b0] e843f3ffff call 000014f3 ; call HHH1 >>>>>>> New slave_stack at:1038d1
Begin Local Halt Decider Simulation  Execution Trace Stored
at:1138d9
[00002183][001138c9][001138cd] 55        push ebp     ; DDD of
HHH1
[00002184][001138c9][001138cd] 8bec      mov ebp,esp  ; DDD of
HHH1
[00002186][001138c5][00002183] 6883210000 push 00002183 ; push DDD >>>>>>> [0000218b][001138c1][00002190] e833f4ffff call 000015c3 ; call HHH >>>>>>> New slave_stack at:14e2f9
Begin Local Halt Decider Simulation  Execution Trace Stored
at:15e301
[00002183][0015e2f1][0015e2f5] 55        push ebp     ; DDD of
HHH[0]
[00002184][0015e2f1][0015e2f5] 8bec      mov ebp,esp  ; DDD of
HHH[0]
[00002186][0015e2ed][00002183] 6883210000 push 00002183 ; push DDD >>>>>>> [0000218b][0015e2e9][00002190] e833f4ffff call 000015c3 ; call HHH >>>>>>> New slave_stack at:198d21
THIS IS WHERE THE DIVERGENCE OF DDD EMULATED BY HHH
AND DDD EMULATED BY HHH1 BEGINS
So how exactly do HHH and HHH1 emulate the first instruction of
HHH differently?
The question is incorrect.
HHH emulates DDD two times and HHH1 emulates DDD one time
the whole second time is the divergence.
There is no divergence if the instructions are emulated exactly the
same in both cases.
HHH1(DDD) emulates DDD exactly one time.
HHH(DDD) emulates DDD exactly two times.
The whole second time that HHH emulates DDD is
divergence.
You mean it INCORRECT imagining of what it THINKS HHH should do
because it thinks that HHH is just a correct simulator?
The question is:
At exactly what point does DDD simulated by HHH
diverge from DDD simulated by HHH1?
As soon as HHH simulates itself simulating DDD it is
simulating DDD one more time than DDD simulated by
HHH1 ever gets to.
On 6/4/2025 6:34 AM, Richard Damon wrote:
On 6/3/25 10:37 PM, olcott wrote:
On 6/3/2025 9:13 PM, Richard Damon wrote:
On 6/3/25 3:47 PM, olcott wrote:
On 6/3/2025 3:28 AM, Fred. Zwarts wrote:
Op 02.jun.2025 om 17:52 schreef olcott:
DDD correctly emulated by HHH diverges from DDD
correctly emulated by HHH1 as soon as HHH begins
emulating itself emulating DDD, marked below.
*HHH1 never emulates itself emulating DDD*
void DDD()
{
  HHH(DDD);
  return;
}
int main()
{
  HHH1(DDD);
}
_DDD()
[00002183] 55Â Â Â Â Â Â Â Â Â Â Â Â push ebp
[00002184] 8bec          mov ebp,esp
[00002186] 6883210000Â Â Â Â push 00002183 ; push DDD
[0000218b] e833f4ffff    call 000015c3 ; call HHH
[00002190] 83c404Â Â Â Â Â Â Â Â add esp,+04
[00002193] 5d            pop ebp
[00002194] c3Â Â Â Â Â Â Â Â Â Â Â Â ret
Size in bytes:(0018) [00002194]
_main()
[000021a3] 55Â Â Â Â Â Â Â Â Â Â Â Â push ebp
[000021a4] 8bec          mov ebp,esp
[000021a6] 6883210000Â Â Â Â push 00002183 ; push DDD
[000021ab] e843f3ffff    call 000014f3 ; call HHH1
[000021b0] 83c404Â Â Â Â Â Â Â Â add esp,+04
[000021b3] 33c0Â Â Â Â Â Â Â Â Â Â xor eax,eax
[000021b5] 5d            pop ebp
[000021b6] c3Â Â Â Â Â Â Â Â Â Â Â Â ret
Size in bytes:(0020) [000021b6]
  machine  stack    stack    machine   assembly >>>>>>>   address  address  data     code      language >>>>>>>   ======== ======== ======== ========== =============
[000021a3][0010382d][00000000] 55        push ebp     ; main()
[000021a4][0010382d][00000000] 8bec      mov ebp,esp  ; main()
[000021a6][00103829][00002183] 6883210000 push 00002183 ; push DDD >>>>>>> [000021ab][00103825][000021b0] e843f3ffff call 000014f3 ; call HHH1 >>>>>>> New slave_stack at:1038d1
Begin Local Halt Decider Simulation  Execution Trace Stored
at:1138d9
[00002183][001138c9][001138cd] 55        push ebp     ; DDD of
HHH1
[00002184][001138c9][001138cd] 8bec      mov ebp,esp  ; DDD of
HHH1
[00002186][001138c5][00002183] 6883210000 push 00002183 ; push DDD >>>>>>> [0000218b][001138c1][00002190] e833f4ffff call 000015c3 ; call HHH >>>>>>> New slave_stack at:14e2f9
Begin Local Halt Decider Simulation  Execution Trace Stored
at:15e301
[00002183][0015e2f1][0015e2f5] 55        push ebp     ; DDD of
HHH[0]
[00002184][0015e2f1][0015e2f5] 8bec      mov ebp,esp  ; DDD of
HHH[0]
[00002186][0015e2ed][00002183] 6883210000 push 00002183 ; push DDD >>>>>>> [0000218b][0015e2e9][00002190] e833f4ffff call 000015c3 ; call HHH >>>>>>>
*This is the beginning of the divergence of the behavior*
*of DDD emulated by HHH versus DDD emulated by HHH1*
New slave_stack at:198d21
[00002183][001a8d19][001a8d1d] 55        push ebp     ; DDD of
HHH[1]
[00002184][001a8d19][001a8d1d] 8bec      mov ebp,esp  ; DDD of
HHH[1]
[00002186][001a8d15][00002183] 6883210000 push 00002183 ; push DDD >>>>>>> [0000218b][001a8d11][00002190] e833f4ffff call 000015c3 ; call HHH >>>>>>> Local Halt Decider: Infinite Recursion Detected Simulation Stopped >>>>>>>
[00002190][001138c9][001138cd] 83c404    add esp,+04 ; DDD of HHH1 >>>>>>> [00002193][001138cd][000015a8] 5d        pop ebp    ; DDD of HHH1
[00002194][001138d1][0003a980] c3        ret        ; DDD of HHH1
[000021b0][0010382d][00000000] 83c404    add esp,+04 ; main() >>>>>>> [000021b3][0010382d][00000000] 33c0      xor eax,eax ; main() >>>>>>> [000021b5][00103831][00000018] 5d        pop ebp    ; main()
[000021b6][00103835][00000000] c3        ret        ; main()
Number of Instructions Executed(352831) == 5266 Pages
Misleading words when you change the meaning of diverging.
Mike showed the traces side by side. Even after many requests, you >>>>>> still cannot show the first instruction that is interpreted
differently by HHH and HHH1. The only difference is that HHH gives >>>>>> up the simulation too early.
As soon as HHH begins emulating itself
and HHH1 NEVER begins emulating itself
THIS IS THE DIVERGENCE.
So, WHAT INSTRUCTION, correctly simulated did that.
HHH emulates DDD two times and HHH1 emulates DDD one time
the whole second time is the divergence.
In other words, you are just admitting you can't point to the
instruction that things diverged,
I just did you nitwit. Go back and reread it again and again
until you see that I already answered your question.
On 6/4/2025 8:28 PM, dbush wrote:
On 6/4/2025 9:08 PM, olcott wrote:
On 6/4/2025 7:41 PM, dbush wrote:
On 6/4/2025 8:32 PM, olcott wrote:
Show me this side-by-side trace and I will point out your mistake.
See below, which shows that the simulations performed by HHH and HHH1 are identical up to the
point that HHH aborts, as you have agreed on the record.
False. The correct trace is the one I posted, which shows all levels of emulation performed by
HHH and HHH1. See the corrections I made to your comments
It is not supposed to do that.
It is supposed to show
the emulation of DDD by HHH1 and
the emulation of DDD by HHH
side-by-side to show the point where these
emulations diverge.
DDD emulated by HHH1 DDD emulated by HHH
[00002183] push ebp [00002183] push ebp
[00002184] mov ebp,esp [00002184] mov ebp,esp
[00002186] push 00002183 ; DDD [00002186] push 00002183 ; DDD
[0000218b] call 000015c3 ; HHH [0000218b] call 000015c3 ; HHH
DDD emulated by HHH emulating itself
[00002183] push ebp ;
[00002184] mov ebp,esp ;
[00002186] push 00002183 ; DDD
[0000218b] call 000015c3 ; HHH
On 6/4/2025 4:20 AM, Fred. Zwarts wrote:
Op 04.jun.2025 om 04:37 schreef olcott:
On 6/3/2025 9:13 PM, Richard Damon wrote:
On 6/3/25 3:47 PM, olcott wrote:
On 6/3/2025 3:28 AM, Fred. Zwarts wrote:
Op 02.jun.2025 om 17:52 schreef olcott:
DDD correctly emulated by HHH diverges from DDD
correctly emulated by HHH1 as soon as HHH begins
emulating itself emulating DDD, marked below.
*HHH1 never emulates itself emulating DDD*
void DDD()
{
  HHH(DDD);
  return;
}
int main()
{
  HHH1(DDD);
}
_DDD()
[00002183] 55Â Â Â Â Â Â Â Â Â Â Â Â push ebp
[00002184] 8bec          mov ebp,esp
[00002186] 6883210000Â Â Â Â push 00002183 ; push DDD
[0000218b] e833f4ffff    call 000015c3 ; call HHH
[00002190] 83c404Â Â Â Â Â Â Â Â add esp,+04
[00002193] 5d            pop ebp
[00002194] c3Â Â Â Â Â Â Â Â Â Â Â Â ret
Size in bytes:(0018) [00002194]
_main()
[000021a3] 55Â Â Â Â Â Â Â Â Â Â Â Â push ebp
[000021a4] 8bec          mov ebp,esp
[000021a6] 6883210000Â Â Â Â push 00002183 ; push DDD
[000021ab] e843f3ffff    call 000014f3 ; call HHH1
[000021b0] 83c404Â Â Â Â Â Â Â Â add esp,+04
[000021b3] 33c0Â Â Â Â Â Â Â Â Â Â xor eax,eax
[000021b5] 5d            pop ebp
[000021b6] c3Â Â Â Â Â Â Â Â Â Â Â Â ret
Size in bytes:(0020) [000021b6]
  machine  stack    stack    machine   assembly >>>>>>>   address  address  data     code      language >>>>>>>   ======== ======== ======== ========== =============
[000021a3][0010382d][00000000] 55        push ebp     ; main()
[000021a4][0010382d][00000000] 8bec      mov ebp,esp  ; main()
[000021a6][00103829][00002183] 6883210000 push 00002183 ; push DDD >>>>>>> [000021ab][00103825][000021b0] e843f3ffff call 000014f3 ; call HHH1 >>>>>>> New slave_stack at:1038d1
Begin Local Halt Decider Simulation  Execution Trace Stored
at:1138d9
[00002183][001138c9][001138cd] 55        push ebp     ; DDD of
HHH1
[00002184][001138c9][001138cd] 8bec      mov ebp,esp  ; DDD of
HHH1
[00002186][001138c5][00002183] 6883210000 push 00002183 ; push DDD >>>>>>> [0000218b][001138c1][00002190] e833f4ffff call 000015c3 ; call HHH >>>>>>> New slave_stack at:14e2f9
Begin Local Halt Decider Simulation  Execution Trace Stored
at:15e301
[00002183][0015e2f1][0015e2f5] 55        push ebp     ; DDD of
HHH[0]
[00002184][0015e2f1][0015e2f5] 8bec      mov ebp,esp  ; DDD of
HHH[0]
[00002186][0015e2ed][00002183] 6883210000 push 00002183 ; push DDD >>>>>>> [0000218b][0015e2e9][00002190] e833f4ffff call 000015c3 ; call HHH >>>>>>>
*This is the beginning of the divergence of the behavior*
*of DDD emulated by HHH versus DDD emulated by HHH1*
New slave_stack at:198d21
[00002183][001a8d19][001a8d1d] 55        push ebp     ; DDD of
HHH[1]
[00002184][001a8d19][001a8d1d] 8bec      mov ebp,esp  ; DDD of
HHH[1]
[00002186][001a8d15][00002183] 6883210000 push 00002183 ; push DDD >>>>>>> [0000218b][001a8d11][00002190] e833f4ffff call 000015c3 ; call HHH >>>>>>> Local Halt Decider: Infinite Recursion Detected Simulation Stopped >>>>>>>
[00002190][001138c9][001138cd] 83c404    add esp,+04 ; DDD of HHH1 >>>>>>> [00002193][001138cd][000015a8] 5d        pop ebp    ; DDD of HHH1
[00002194][001138d1][0003a980] c3        ret        ; DDD of HHH1
[000021b0][0010382d][00000000] 83c404    add esp,+04 ; main() >>>>>>> [000021b3][0010382d][00000000] 33c0      xor eax,eax ; main() >>>>>>> [000021b5][00103831][00000018] 5d        pop ebp    ; main()
[000021b6][00103835][00000000] c3        ret        ; main()
Number of Instructions Executed(352831) == 5266 Pages
Misleading words when you change the meaning of diverging.
Mike showed the traces side by side. Even after many requests, you >>>>>> still cannot show the first instruction that is interpreted
differently by HHH and HHH1. The only difference is that HHH gives >>>>>> up the simulation too early.
As soon as HHH begins emulating itself
and HHH1 NEVER begins emulating itself
THIS IS THE DIVERGENCE.
So, WHAT INSTRUCTION, correctly simulated did that.
HHH emulates DDD two times and HHH1 emulates DDD one time
the whole second time is the divergence.
That did not answer the question: WHAT INSTRUCTION, correctly
simulated did that?
When HHH1(DDD) simulates DDD it never simulates itself.
When HHH(DDD) simulates DDD then simulates itself simulating
DDD the first instruction that this simulated HHH simulates
diverges from the simulation that HHH1 did.
You cannot point to any instruction interpreted differently by the two
simulators.
There are no instructions interpreted differently. It is
the fact that HHH(DDD) emulates DDD twice and HHH1(DDD)
only emulates DDD once that is the key difference.
It seems you understand that the trace does not show a difference, but
that the divergence is only in your interpretation of the trace.
On 6/4/2025 8:48 PM, Richard Damon wrote:
On 6/4/25 10:52 AM, olcott wrote:
On 6/4/2025 1:54 AM, Mikko wrote:
On 2025-06-03 19:57:09 +0000, olcott said:
On 6/3/2025 2:37 AM, Mikko wrote:
On 2025-06-02 15:52:53 +0000, olcott said:
DDD correctly emulated by HHH diverges from DDD
correctly emulated by HHH1 as soon as HHH begins
emulating itself emulating DDD, marked below.
The DDD emulated (correctly or otherwise) by HHH is the same DDD as >>>>>> the one emulated (correctly or otherwise) so both specify the same >>>>>> behaviour.
No they do not. When DDD calls its own emulator its behavior
is different than when DDD calls another different emulator.
If the input string does not unambiguously specify one and only one
behaviour it is incorrectly encoded and not a valid input string.
The halting problem of Truing machines requires that every pair of
a Turing macnine and input is descibed so that the behaviour to
be decided about is the only behaviour that meets to the description.
The code proves what it proves.
_DDD()
[00002183] 55Â Â Â Â Â Â Â Â Â Â Â Â push ebp
[00002184] 8bec          mov ebp,esp
[00002186] 6883210000Â Â Â Â push 00002183 ; push DDD
[0000218b] e833f4ffff    call 000015c3 ; call HHH
[00002190] 83c404Â Â Â Â Â Â Â Â add esp,+04
[00002193] 5d            pop ebp
[00002194] c3Â Â Â Â Â Â Â Â Â Â Â Â ret
Size in bytes:(0018) [00002194]
_main()
[000021a3] 55Â Â Â Â Â Â Â Â Â Â Â Â push ebp
[000021a4] 8bec          mov ebp,esp
[000021a6] 6883210000Â Â Â Â push 00002183 ; push DDD
[000021ab] e843f3ffff    call 000014f3 ; call HHH1
[000021b0] 83c404Â Â Â Â Â Â Â Â add esp,+04
[000021b3] 33c0Â Â Â Â Â Â Â Â Â Â xor eax,eax
[000021b5] 5d            pop ebp
[000021b6] c3Â Â Â Â Â Â Â Â Â Â Â Â ret
Size in bytes:(0020) [000021b6]
  machine  stack    stack    machine   assembly
  address  address  data     code      language
  ======== ======== ======== ========== =============
[000021a3][0010382d][00000000] 55        push ebp     ; main()
[000021a4][0010382d][00000000] 8bec      mov ebp,esp  ; main() >>> [000021a6][00103829][00002183] 6883210000 push 00002183 ; push DDD
[000021ab][00103825][000021b0] e843f3ffff call 000014f3 ; call HHH1
New slave_stack at:1038d1
So what "simulation" is the above? It seems that you are showing a
trace from x86, not what HHH is doing.
What I am showing is DDD emulated by HHH1
side-by-side with DDD emulated by HHH
*They initially match up*
DDD emulated by HHH1Â Â Â Â Â Â Â Â Â Â Â Â Â DDD emulated by HHH
[00002183] push ebp              [00002183] push ebp [00002184] mov ebp,esp           [00002184] mov ebp,esp [00002186] push 00002183 ; DDD   [00002186] push 00002183 ; DDD [0000218b] call 000015c3 ; HHH   [0000218b] call 000015c3 ; HHH
*The matching is now all used up*
*Then DDD emulated by HHH does something*
*that DDD emulated by HHH1 never does*
*it emulates DDD all over again*
[00002183] push ebp     ;
[00002184] mov ebp,esp  ;
[00002186] push 00002183 ; DDD
[0000218b] call 000015c3 ; HHH
On 6/4/2025 8:28 PM, dbush wrote:
On 6/4/2025 9:08 PM, olcott wrote:
On 6/4/2025 7:41 PM, dbush wrote:
On 6/4/2025 8:32 PM, olcott wrote:
Show me this side-by-side trace and I will point out your mistake.
See below, which shows that the simulations performed by HHH and
HHH1 are identical up to the point that HHH aborts, as you have
agreed on the record.
False. The correct trace is the one I posted, which shows all levels
of emulation performed by HHH and HHH1. See the corrections I made to
your comments
It is not supposed to do that.
It is supposed to show
the emulation of DDD by HHH1 and
the emulation of DDD by HHH
side-by-side to show the point where these
emulations diverge.
DDD emulated by HHH1Â Â Â Â Â Â Â Â Â Â Â Â Â DDD emulated by HHH
[00002183] push ebp              [00002183] push ebp [00002184] mov ebp,esp           [00002184] mov ebp,esp [00002186] push 00002183 ; DDD   [00002186] push 00002183 ; DDD [0000218b] call 000015c3 ; HHH   [0000218b] call 000015c3 ; HHH
DDD emulated by HHH emulating itself
[00002183] push ebp     ;
[00002184] mov ebp,esp  ;
[00002186] push 00002183 ; DDD
[0000218b] call 000015c3 ; HHH
On 6/4/2025 8:48 PM, dbush wrote:
On 6/4/2025 9:39 PM, olcott wrote:
On 6/4/2025 8:28 PM, dbush wrote:
DDD emulated by HHH1 emulating HHHÂ DDD emulated by HHH emulating HHH
[00002183] push ebp     ;         [00002183] push ebp     ;
[00002184] mov ebp,esp  ;         [00002184] mov ebp,esp  ; >> [00002186] push 00002183 ; DDD     [00002186] push 00002183 ; DDD
[0000218b] call 000015c3 ; HHHÂ Â Â Â Â [0000218b] call 000015c3 ; HHH
                                    ### HHH aborts ###
*That is dishonest*
HHH1 emulates DDD once and this matches
the first time that HHH emulates DDD.
DDD emulated by HHH1Â Â Â Â Â Â Â Â Â Â Â Â Â DDD emulated by HHH
[00002183] push ebp              [00002183] push ebp [00002184] mov ebp,esp           [00002184] mov ebp,esp [00002186] push 00002183 ; DDD   [00002186] push 00002183 ; DDD [0000218b] call 000015c3 ; HHH   [0000218b] call 000015c3 ; HHH
*THE MATCHING IS NOW USED UP*
*THE MATCHING IS NOW USED UP*
*THE MATCHING IS NOW USED UP*
*Then DDD emulated by HHH diverges from DDD emulated by HHH1*
DDD emulated by HHH emulating itself
[00002183] push ebp     ;
[00002184] mov ebp,esp  ;
[00002186] push 00002183 ; DDD
[0000218b] call 000015c3 ; HHH
On 6/4/2025 8:53 PM, Richard Damon wrote:
On 6/4/25 11:40 AM, olcott wrote:
On 6/4/2025 6:22 AM, Richard Damon wrote:
On 6/3/25 10:51 PM, olcott wrote:
On 6/3/2025 9:42 PM, dbush wrote:
On 6/3/2025 10:29 PM, olcott wrote:
On 6/3/2025 8:57 PM, dbush wrote:
On 6/3/2025 5:14 PM, olcott wrote:
On 6/3/2025 3:48 PM, joes wrote:
Am Tue, 03 Jun 2025 14:47:23 -0500 schrieb olcott:
On 6/3/2025 3:28 AM, Fred. Zwarts wrote:Yes, that is exactly the point where HHH aborts.
Op 02.jun.2025 om 17:52 schreef olcott:
DDD correctly emulated by HHH diverges from DDD correctly >>>>>>>>>>>>> emulated by
HHH1 as soon as HHH begins emulating itself emulating DDD, >>>>>>>>>>>>> marked
below.
*HHH1 never emulates itself emulating DDD*
*This is the beginning of the divergence of the behavior* >>>>>>>>>>>>> *of DDD emulated by HHH versus DDD emulated by HHH1*
Misleading words when you change the meaning of diverging. >>>>>>>>>>>> Mike showed the traces side by side. Even after many
requests, you
still cannot show the first instruction that is interpreted >>>>>>>>>>>> differently
by HHH and HHH1. The only difference is that HHH gives up the >>>>>>>>>>>> simulation too early.
As soon as HHH begins emulating itself and HHH1 NEVER begins >>>>>>>>>>> emulating
itself THIS IS THE DIVERGENCE.
Both the divergence and the abort are shown below.
_DDD()
[00002183] 55Â Â Â Â Â Â Â Â Â Â Â Â push ebp
[00002184] 8bec          mov ebp,esp
[00002186] 6883210000Â Â Â Â push 00002183 ; push DDD
[0000218b] e833f4ffff    call 000015c3 ; call HHH
[00002190] 83c404Â Â Â Â Â Â Â Â add esp,+04
[00002193] 5d            pop ebp
[00002194] c3Â Â Â Â Â Â Â Â Â Â Â Â ret
Size in bytes:(0018) [00002194]
_main()
[000021a3] 55Â Â Â Â Â Â Â Â Â Â Â Â push ebp
[000021a4] 8bec          mov ebp,esp
[000021a6] 6883210000Â Â Â Â push 00002183 ; push DDD
[000021ab] e843f3ffff    call 000014f3 ; call HHH1
[000021b0] 83c404Â Â Â Â Â Â Â Â add esp,+04
[000021b3] 33c0Â Â Â Â Â Â Â Â Â Â xor eax,eax
[000021b5] 5d            pop ebp
[000021b6] c3Â Â Â Â Â Â Â Â Â Â Â Â ret
Size in bytes:(0020) [000021b6]
  machine  stack    stack    machine   assembly >>>>>>>>>   address  address  data     code      language >>>>>>>>>   ======== ======== ======== ========== ============= >>>>>>>>> [000021a3][0010382d][00000000] 55        push ebp     ; main()
[000021a4][0010382d][00000000] 8bec      mov ebp,esp  ; main()
[000021a6][00103829][00002183] 6883210000 push 00002183 ; push DDD >>>>>>>>> [000021ab][00103825][000021b0] e843f3ffff call 000014f3 ; call >>>>>>>>> HHH1
New slave_stack at:1038d1
Begin Local Halt Decider Simulation  Execution Trace Stored >>>>>>>>> at:1138d9
[00002183][001138c9][001138cd] 55        push ebp     ; DDD
of HHH1
[00002184][001138c9][001138cd] 8bec      mov ebp,esp  ; DDD >>>>>>>>> of HHH1
[00002186][001138c5][00002183] 6883210000 push 00002183 ; push DDD >>>>>>>>> [0000218b][001138c1][00002190] e833f4ffff call 000015c3 ; call HHH >>>>>>>>> New slave_stack at:14e2f9
Begin Local Halt Decider Simulation  Execution Trace Stored >>>>>>>>> at:15e301
[00002183][0015e2f1][0015e2f5] 55        push ebp     ; DDD
of HHH[0]
[00002184][0015e2f1][0015e2f5] 8bec      mov ebp,esp  ; DDD >>>>>>>>> of HHH[0]
[00002186][0015e2ed][00002183] 6883210000 push 00002183 ; push DDD >>>>>>>>> [0000218b][0015e2e9][00002190] e833f4ffff call 000015c3 ; call HHH >>>>>>>>> New slave_stack at:198d21
THIS IS WHERE THE DIVERGENCE OF DDD EMULATED BY HHH
AND DDD EMULATED BY HHH1 BEGINS
So how exactly do HHH and HHH1 emulate the first instruction of >>>>>>>> HHH differently?
The question is incorrect.
HHH emulates DDD two times and HHH1 emulates DDD one time
the whole second time is the divergence.
There is no divergence if the instructions are emulated exactly
the same in both cases.
HHH1(DDD) emulates DDD exactly one time.
HHH(DDD) emulates DDD exactly two times.
The whole second time that HHH emulates DDD is
divergence.
You mean it INCORRECT imagining of what it THINKS HHH should do
because it thinks that HHH is just a correct simulator?
The question is:
At exactly what point does DDD simulated by HHH
diverge from DDD simulated by HHH1?
Right, which x86 instruction, correctly simulated, had differing results.
As soon as HHH simulates itself simulating DDD it is
simulating DDD one more time than DDD simulated by
HHH1 ever gets to.
In other words, your idea of "simulation per the language of the x86
language" isn't actually based on actually emulating the actual x86
instrucitons, but instead presuming that HHH is just a pure simulator
that never aborts, and then you let it abort.
Counter-factual.
HHH simulates DDD exactly twice
HHH1 simulates DDD exactly once
Dennis Bush does not seem to understand that 1 != 2
On 6/5/2025 6:29 AM, Richard Damon wrote:
On 6/4/25 10:15 PM, olcott wrote:
On 6/4/2025 8:48 PM, Richard Damon wrote:
On 6/4/25 10:52 AM, olcott wrote:
On 6/4/2025 1:54 AM, Mikko wrote:
On 2025-06-03 19:57:09 +0000, olcott said:
On 6/3/2025 2:37 AM, Mikko wrote:
On 2025-06-02 15:52:53 +0000, olcott said:
DDD correctly emulated by HHH diverges from DDD
correctly emulated by HHH1 as soon as HHH begins
emulating itself emulating DDD, marked below.
The DDD emulated (correctly or otherwise) by HHH is the same DDD as >>>>>>>> the one emulated (correctly or otherwise) so both specify the same >>>>>>>> behaviour.
No they do not. When DDD calls its own emulator its behavior
is different than when DDD calls another different emulator.
If the input string does not unambiguously specify one and only one >>>>>> behaviour it is incorrectly encoded and not a valid input string.
The halting problem of Truing machines requires that every pair of >>>>>> a Turing macnine and input is descibed so that the behaviour to
be decided about is the only behaviour that meets to the description. >>>>>>
The code proves what it proves.
_DDD()
[00002183] 55Â Â Â Â Â Â Â Â Â Â Â Â push ebp
[00002184] 8bec          mov ebp,esp
[00002186] 6883210000Â Â Â Â push 00002183 ; push DDD
[0000218b] e833f4ffff    call 000015c3 ; call HHH
[00002190] 83c404Â Â Â Â Â Â Â Â add esp,+04
[00002193] 5d            pop ebp
[00002194] c3Â Â Â Â Â Â Â Â Â Â Â Â ret
Size in bytes:(0018) [00002194]
_main()
[000021a3] 55Â Â Â Â Â Â Â Â Â Â Â Â push ebp
[000021a4] 8bec          mov ebp,esp
[000021a6] 6883210000Â Â Â Â push 00002183 ; push DDD
[000021ab] e843f3ffff    call 000014f3 ; call HHH1
[000021b0] 83c404Â Â Â Â Â Â Â Â add esp,+04
[000021b3] 33c0Â Â Â Â Â Â Â Â Â Â xor eax,eax
[000021b5] 5d            pop ebp
[000021b6] c3Â Â Â Â Â Â Â Â Â Â Â Â ret
Size in bytes:(0020) [000021b6]
  machine  stack    stack    machine   assembly
  address  address  data     code      language >>>>>   ======== ======== ======== ========== =============
[000021a3][0010382d][00000000] 55        push ebp     ; main()
[000021a4][0010382d][00000000] 8bec      mov ebp,esp  ; main() >>>>> [000021a6][00103829][00002183] 6883210000 push 00002183 ; push DDD
[000021ab][00103825][000021b0] e843f3ffff call 000014f3 ; call HHH1
New slave_stack at:1038d1
So what "simulation" is the above? It seems that you are showing a
trace from x86, not what HHH is doing.
What I am showing is DDD emulated by HHH1
side-by-side with DDD emulated by HHH
No you are not, as you don't c
*They initially match up*
DDD emulated by HHH1Â Â Â Â Â Â Â Â Â Â Â Â Â DDD emulated by HHH
[00002183] push ebp              [00002183] push ebp
[00002184] mov ebp,esp           [00002184] mov ebp,esp
[00002186] push 00002183 ; DDDÂ Â Â [00002186] push 00002183 ; DDD
[0000218b] call 000015c3 ; HHHÂ Â Â [0000218b] call 000015c3 ; HHH
*The matching is now all used up*
And that this point, NEITHER of them actually correctly emulate their
input, at least not by the output that they generate.
When I say correctly emulated input I mean
that every instruction that has been emulated
so far was correctly emulated.
Thus, you "argument" is just based on lies.
You argument is based on the psychosis
of insisting that a non-terminating input
be simulated completely otherwise every
single steps of this simulation is wrong.
*Then DDD emulated by HHH does something*
*that DDD emulated by HHH1 never does*
*it emulates DDD all over again*
[00002183] push ebp     ;
[00002184] mov ebp,esp  ;
[00002186] push 00002183 ; DDD
[0000218b] call 000015c3 ; HHH
But that ISN'T what a correct emulation of the input should do, and
thus AGAIN, I point out that you "logic" is built on the concept that
lying is valid.
A correct emulation of the input to HHH and HHH1 will be IDENTICAL, as
both use the same HHH in them. (One point you miss is that just the
code of the C function DDD is INVALID as an input, but when seens as a
program automatically include all the code it uses, that is the code
of the HHH that gives the answer you claim it correctly gives.)
This emulation will exaxtly follow the path of the directly executed
DDD, into HHH, and see it emulating DDD, and never again "directly
execute" the code of DDD in that context. Thus, a "correct emulation"
of this input will NEVER show the creation of a new context as in the
path of emulation, as at the x86 processor level, this just doesn't
happen.
We WILL see the operations, that at the meta-level can be interpreted
as setting up such a context and the emulation of the program in the
meta- level, but that is NOT something in the actual context of the
emulation of the input.
Your random changing of levels of abstrction just get you the wrong
answers, as you neglect some of the actions that are happening at the
outer levels of abstraction that do affect the behavior.
Perhaps in words you might understand, your "emulation" LIES about the
behavior of the HHH that it sees getting called, PRESUMING for the
meta- analysis that it isn't actually the code that is there, but that
it is just a pure emulator, and by starting with this LIE, it can show
that the results will be non-halting.
But since that IS a lie, the proof isn't valid, but just another of
our multitude of lies showing you don't know what you are talking about.
On 6/5/2025 6:35 AM, Richard Damon wrote:
On 6/4/25 9:39 PM, olcott wrote:
On 6/4/2025 8:28 PM, dbush wrote:
On 6/4/2025 9:08 PM, olcott wrote:
On 6/4/2025 7:41 PM, dbush wrote:
On 6/4/2025 8:32 PM, olcott wrote:
See below, which shows that the simulations performed by HHH and
Show me this side-by-side trace and I will point out your mistake. >>>>>>
HHH1 are identical up to the point that HHH aborts, as you have
agreed on the record.
False. The correct trace is the one I posted, which shows all
levels of emulation performed by HHH and HHH1. See the corrections
I made to your comments
It is not supposed to do that.
It is supposed to show
the emulation of DDD by HHH1 and
the emulation of DDD by HHH
side-by-side to show the point where these
emulations diverge.
But both of those, to be correct, need to follow the execution path
INTO HHH and show the operation of that code.
After three years no one besides me has
been able to understand my one half page
execution trace. Add 5,200 more pages is
sure to not help.
We must at least consider when this code is entered.
Directly executed HHH1(DDD) simulates DDD
that calls a simulated HHH(DDD) that simulates DDD
that calls a simulated simulated HHH(DDD) that simulates DDD
On 6/5/2025 6:37 AM, Richard Damon wrote:
On 6/4/25 10:06 PM, olcott wrote:
On 6/4/2025 8:48 PM, dbush wrote:
On 6/4/2025 9:39 PM, olcott wrote:
On 6/4/2025 8:28 PM, dbush wrote:
DDD emulated by HHH1 emulating HHH DDD emulated by HHH emulating HHH >>>> [00002183] push ebp     ;         [00002183] push ebp     ;
[00002184] mov ebp,esp  ;         [00002184] mov ebp,esp  ;
[00002186] push 00002183 ; DDDÂ Â Â Â Â [00002186] push 00002183 ; DDD >>>> [0000218b] call 000015c3 ; HHHÂ Â Â Â Â [0000218b] call 000015c3 ; HHH >>>> Â Â Â Â Â Â Â Â Â Â Â Â Â Â Â Â Â Â Â Â Â Â Â Â Â Â Â Â Â Â Â Â Â Â Â Â ### HHH aborts ###
*That is dishonest*
HHH1 emulates DDD once and this matches
the first time that HHH emulates DDD.
DDD emulated by HHH1Â Â Â Â Â Â Â Â Â Â Â Â Â DDD emulated by HHH
[00002183] push ebp              [00002183] push ebp
[00002184] mov ebp,esp           [00002184] mov ebp,esp
[00002186] push 00002183 ; DDDÂ Â Â [00002186] push 00002183 ; DDD
[0000218b] call 000015c3 ; HHHÂ Â Â [0000218b] call 000015c3 ; HHH
*THE MATCHING IS NOW USED UP*
*THE MATCHING IS NOW USED UP*
*THE MATCHING IS NOW USED UP*
Right, becuase HHH gives up when HHH1 proves that the complete
emulation would halt.
*Then DDD emulated by HHH diverges from DDD emulated by HHH1*
DDD emulated by HHH emulating itself
[00002183] push ebp     ;
[00002184] mov ebp,esp  ;
[00002186] push 00002183 ; DDD
[0000218b] call 000015c3 ; HHH
Which is the emulation done by HHH1, that shows that HHH will abort
and return 0 and thus DDD halts.
The above is not an emulation done by HHH1
it is done by a simulated simulated HHH.
You have to keep the basic facts straight
or you will never understand.
Which goes against the INCORRECT assumptions that HHH used, and thus
HHH was just incorrect, and you are proven to not understand how logic
works,
On 6/5/2025 6:42 AM, Richard Damon wrote:
On 6/4/25 10:40 PM, olcott wrote:
On 6/4/2025 8:53 PM, Richard Damon wrote:
On 6/4/25 11:40 AM, olcott wrote:
On 6/4/2025 6:22 AM, Richard Damon wrote:
On 6/3/25 10:51 PM, olcott wrote:
On 6/3/2025 9:42 PM, dbush wrote:
On 6/3/2025 10:29 PM, olcott wrote:
On 6/3/2025 8:57 PM, dbush wrote:
On 6/3/2025 5:14 PM, olcott wrote:
On 6/3/2025 3:48 PM, joes wrote:
Am Tue, 03 Jun 2025 14:47:23 -0500 schrieb olcott:
On 6/3/2025 3:28 AM, Fred. Zwarts wrote:Yes, that is exactly the point where HHH aborts.
Op 02.jun.2025 om 17:52 schreef olcott:
DDD correctly emulated by HHH diverges from DDD correctly >>>>>>>>>>>>>>> emulated by
HHH1 as soon as HHH begins emulating itself emulating >>>>>>>>>>>>>>> DDD, marked
below.
*HHH1 never emulates itself emulating DDD*
*This is the beginning of the divergence of the behavior* >>>>>>>>>>>>>>> *of DDD emulated by HHH versus DDD emulated by HHH1* >>>>>>>>>>>>Misleading words when you change the meaning of diverging. >>>>>>>>>>>>>> Mike showed the traces side by side. Even after many >>>>>>>>>>>>>> requests, you
still cannot show the first instruction that is
interpreted differently
by HHH and HHH1. The only difference is that HHH gives up the >>>>>>>>>>>>>> simulation too early.
As soon as HHH begins emulating itself and HHH1 NEVER >>>>>>>>>>>>> begins emulating
itself THIS IS THE DIVERGENCE.
Both the divergence and the abort are shown below.
_DDD()
[00002183] 55Â Â Â Â Â Â Â Â Â Â Â Â push ebp
[00002184] 8bec          mov ebp,esp
[00002186] 6883210000Â Â Â Â push 00002183 ; push DDD
[0000218b] e833f4ffff    call 000015c3 ; call HHH
[00002190] 83c404Â Â Â Â Â Â Â Â add esp,+04
[00002193] 5d            pop ebp
[00002194] c3Â Â Â Â Â Â Â Â Â Â Â Â ret
Size in bytes:(0018) [00002194]
_main()
[000021a3] 55Â Â Â Â Â Â Â Â Â Â Â Â push ebp
[000021a4] 8bec          mov ebp,esp
[000021a6] 6883210000Â Â Â Â push 00002183 ; push DDD
[000021ab] e843f3ffff    call 000014f3 ; call HHH1
[000021b0] 83c404Â Â Â Â Â Â Â Â add esp,+04
[000021b3] 33c0Â Â Â Â Â Â Â Â Â Â xor eax,eax
[000021b5] 5d            pop ebp
[000021b6] c3Â Â Â Â Â Â Â Â Â Â Â Â ret
Size in bytes:(0020) [000021b6]
  machine  stack    stack    machine   assembly >>>>>>>>>>>   address  address  data     code      language
  ======== ======== ======== ========== ============= >>>>>>>>>>> [000021a3][0010382d][00000000] 55        push ebp     ; main()
[000021a4][0010382d][00000000] 8bec      mov ebp,esp  ; main()
[000021a6][00103829][00002183] 6883210000 push 00002183 ; >>>>>>>>>>> push DDD
[000021ab][00103825][000021b0] e843f3ffff call 000014f3 ; >>>>>>>>>>> call HHH1
New slave_stack at:1038d1
Begin Local Halt Decider Simulation  Execution Trace Stored >>>>>>>>>>> at:1138d9
[00002183][001138c9][001138cd] 55        push ebp     ; DDD
of HHH1
[00002184][001138c9][001138cd] 8bec      mov ebp,esp  ; DDD
of HHH1
[00002186][001138c5][00002183] 6883210000 push 00002183 ; >>>>>>>>>>> push DDD
[0000218b][001138c1][00002190] e833f4ffff call 000015c3 ; >>>>>>>>>>> call HHH
New slave_stack at:14e2f9
Begin Local Halt Decider Simulation  Execution Trace Stored >>>>>>>>>>> at:15e301
[00002183][0015e2f1][0015e2f5] 55        push ebp     ; DDD
of HHH[0]
[00002184][0015e2f1][0015e2f5] 8bec      mov ebp,esp  ; DDD
of HHH[0]
[00002186][0015e2ed][00002183] 6883210000 push 00002183 ; >>>>>>>>>>> push DDD
[0000218b][0015e2e9][00002190] e833f4ffff call 000015c3 ; >>>>>>>>>>> call HHH
New slave_stack at:198d21
THIS IS WHERE THE DIVERGENCE OF DDD EMULATED BY HHH
AND DDD EMULATED BY HHH1 BEGINS
So how exactly do HHH and HHH1 emulate the first instruction >>>>>>>>>> of HHH differently?
The question is incorrect.
HHH emulates DDD two times and HHH1 emulates DDD one time
the whole second time is the divergence.
There is no divergence if the instructions are emulated exactly >>>>>>>> the same in both cases.
HHH1(DDD) emulates DDD exactly one time.
HHH(DDD) emulates DDD exactly two times.
The whole second time that HHH emulates DDD is
divergence.
You mean it INCORRECT imagining of what it THINKS HHH should do
because it thinks that HHH is just a correct simulator?
The question is:
At exactly what point does DDD simulated by HHH
diverge from DDD simulated by HHH1?
Right, which x86 instruction, correctly simulated, had differing
results.
As soon as HHH simulates itself simulating DDD it is
simulating DDD one more time than DDD simulated by
HHH1 ever gets to.
In other words, your idea of "simulation per the language of the x86
language" isn't actually based on actually emulating the actual x86
instrucitons, but instead presuming that HHH is just a pure
simulator that never aborts, and then you let it abort.
Counter-factual.
HHH simulates DDD exactly twice
HHH1 simulates DDD exactly once
Dennis Bush does not seem to understand that 1 != 2
No, your traces show exactly the opposite.
HHH simuated DDD once,
*HHH is simulated THREE TIMES*Â Why lie ?
(Search for machine address 000021a3)
_DDD()
*00002183* 55Â Â Â Â Â Â Â Â Â Â Â Â push ebp
[00002184] 8bec          mov ebp,esp
[00002186] 6883210000Â Â Â Â push 00002183 ; push DDD
[0000218b] e833f4ffff    call 000015c3 ; call HHH
[00002190] 83c404Â Â Â Â Â Â Â Â add esp,+04
[00002193] 5d            pop ebp
[00002194] c3Â Â Â Â Â Â Â Â Â Â Â Â ret
Size in bytes:(0018) [00002194]
_main()
[000021a3] 55Â Â Â Â Â Â Â Â Â Â Â Â push ebp
[000021a4] 8bec          mov ebp,esp
[000021a6] 6883210000Â Â Â Â push 00002183 ; push DDD
[000021ab] e843f3ffff    call 000014f3 ; call HHH1
[000021b0] 83c404Â Â Â Â Â Â Â Â add esp,+04
[000021b3] 33c0Â Â Â Â Â Â Â Â Â Â xor eax,eax
[000021b5] 5d            pop ebp
[000021b6] c3Â Â Â Â Â Â Â Â Â Â Â Â ret
Size in bytes:(0020) [000021b6]
 machine  stack    stack    machine   assembly
 address  address  data     code      language
 ======== ======== ======== ========== ============= [000021a3][0010382d][00000000] 55        push ebp     ; main() [000021a4][0010382d][00000000] 8bec      mov ebp,esp  ; main() [000021a6][00103829][00002183] 6883210000 push 00002183 ; push DDD [000021ab][00103825][000021b0] e843f3ffff call 000014f3 ; call HHH1
New slave_stack at:1038d1
Begin Local Halt Decider Simulation  Execution Trace Stored at:1138d9 *00002183*[001138c9][001138cd] 55        push ebp     ; DDD of HHH1
[00002184][001138c9][001138cd] 8bec      mov ebp,esp  ; DDD of HHH1 [00002186][001138c5][00002183] 6883210000 push 00002183 ; push DDD [0000218b][001138c1][00002190] e833f4ffff call 000015c3 ; call HHH
New slave_stack at:14e2f9
Begin Local Halt Decider Simulation  Execution Trace Stored at:15e301 *00002183*[0015e2f1][0015e2f5] 55        push ebp     ; DDD of HHH[0]
[00002184][0015e2f1][0015e2f5] 8bec      mov ebp,esp  ; DDD of HHH[0]
[00002186][0015e2ed][00002183] 6883210000 push 00002183 ; push DDD [0000218b][0015e2e9][00002190] e833f4ffff call 000015c3 ; call HHH
New slave_stack at:198d21
*This is the beginning of the divergence of the behavior*
*of DDD emulated by HHH versus DDD emulated by HHH1*
*00002183*[001a8d19][001a8d1d] 55        push ebp     ; DDD of HHH[1]
[00002184][001a8d19][001a8d1d] 8bec      mov ebp,esp  ; DDD of HHH[1]
[00002186][001a8d15][00002183] 6883210000 push 00002183 ; push DDD [0000218b][001a8d11][00002190] e833f4ffff call 000015c3 ; call HHH
Local Halt Decider: Infinite Recursion Detected Simulation Stopped
[00002190][001138c9][001138cd] 83c404    add esp,+04 ; DDD of HHH1 [00002193][001138cd][000015a8] 5d        pop ebp    ; DDD of HHH1
[00002194][001138d1][0003a980] c3        ret        ; DDD of HHH1
[000021b0][0010382d][00000000] 83c404    add esp,+04 ; main() [000021b3][0010382d][00000000] 33c0      xor eax,eax ; main() [000021b5][00103831][00000018] 5d        pop ebp    ; main() [000021b6][00103835][00000000] c3        ret        ; main()
Number of Instructions Executed(352831) == 5266 Pages
On 6/4/2025 1:54 AM, Mikko wrote:
On 2025-06-03 19:57:09 +0000, olcott said:
On 6/3/2025 2:37 AM, Mikko wrote:
On 2025-06-02 15:52:53 +0000, olcott said:
DDD correctly emulated by HHH diverges from DDD
correctly emulated by HHH1 as soon as HHH begins
emulating itself emulating DDD, marked below.
The DDD emulated (correctly or otherwise) by HHH is the same DDD as
the one emulated (correctly or otherwise) so both specify the same
behaviour.
No they do not. When DDD calls its own emulator its behavior
is different than when DDD calls another different emulator.
If the input string does not unambiguously specify one and only one
behaviour it is incorrectly encoded and not a valid input string.
The halting problem of Truing machines requires that every pair of
a Turing macnine and input is descibed so that the behaviour to
be decided about is the only behaviour that meets to the description.
The code proves what it proves.
_DDD()
[00002183] 55 push ebp
[00002184] 8bec mov ebp,esp
[00002186] 6883210000 push 00002183 ; push DDD
[0000218b] e833f4ffff call 000015c3 ; call HHH
[00002190] 83c404 add esp,+04
[00002193] 5d pop ebp
[00002194] c3 ret
Size in bytes:(0018) [00002194]
_main()
[000021a3] 55 push ebp
[000021a4] 8bec mov ebp,esp
[000021a6] 6883210000 push 00002183 ; push DDD
[000021ab] e843f3ffff call 000014f3 ; call HHH1
[000021b0] 83c404 add esp,+04
[000021b3] 33c0 xor eax,eax
[000021b5] 5d pop ebp
[000021b6] c3 ret
Size in bytes:(0020) [000021b6]
On 6/4/2025 10:55 PM, Mike Terry wrote:
On 05/06/2025 02:39, olcott wrote:
On 6/4/2025 8:28 PM, dbush wrote:
On 6/4/2025 9:08 PM, olcott wrote:
On 6/4/2025 7:41 PM, dbush wrote:
On 6/4/2025 8:32 PM, olcott wrote:
See below, which shows that the simulations performed by HHH and HHH1 are identical up to the
Show me this side-by-side trace and I will point out your mistake. >>>>>>
point that HHH aborts, as you have agreed on the record.
False. The correct trace is the one I posted, which shows all levels of emulation performed by
HHH and HHH1. See the corrections I made to your comments
It is not supposed to do that.
Are you saying it's not supposed to include /nested/ emulations? It is perfectly sensible to
include nested emulations.
It can include nested simulations yet nested
simulations are in a hierarchy thus not side-by-side.
A side-by-side analysis must be side-by-side.
It is supposed to show
the emulation of DDD by HHH1 and
the emulation of DDD by HHH
side-by-side to show the point where these
emulations diverge.
Just to be perfectly clear:
It is supposed to show
the emulation of DDD by *OUTER* HHH1 and
the emulation of DDD by *OUTER* HHH
side-by-side to show the point where these
emulations diverge.
No, that is not the way I was doing it.
I was
doing it all in the execution trace of HHH1(DDD).
On 6/4/2025 8:48 PM, Richard Damon wrote:Their code is the same and has the same meaning. DDD always calls HHH.
On 6/4/25 10:52 AM, olcott wrote:
On 6/4/2025 1:54 AM, Mikko wrote:
On 2025-06-03 19:57:09 +0000, olcott said:
On 6/3/2025 2:37 AM, Mikko wrote:
On 2025-06-02 15:52:53 +0000, olcott said:
The DDD emulated (correctly or otherwise) by HHH is the same DDD as >>>>>> the one emulated (correctly or otherwise) so both specify the same >>>>>> behaviour.
No they do not. When DDD calls its own emulator its behavior is
different than when DDD calls another different emulator.
If the input string does not unambiguously specify one and only oneThe code proves what it proves.
behaviour it is incorrectly encoded and not a valid input string. The
halting problem of Truing machines requires that every pair of a
Turing macnine and input is descibed so that the behaviour to be
decided about is the only behaviour that meets to the description.
So what "simulation" is the above? It seems that you are showing aWhat I am showing is DDD emulated by HHH1 side-by-side with DDD emulated
trace from x86, not what HHH is doing.
by HHH
*They initially match up*
DDD emulated by HHH1 DDD emulated by HHH [00002183] push
ebp [00002183] push ebp [00002184] mov ebp,esp
[00002184] mov ebp,esp [00002186] push 00002183 ; DDD [00002186] push 00002183 ; DDD [0000218b] call 000015c3 ; HHH [0000218b] call
000015c3 ; HHH *The matching is now all used up*
*Then DDD emulated by HHH does something*
*that DDD emulated by HHH1 never does*
*it emulates DDD all over again*
On 6/4/2025 9:10 PM, dbush wrote:
On 6/4/2025 10:06 PM, olcott wrote:
The is not the way that side-by-side comparisons of DDD simulated byDDD emulated by HHH1Â Â Â Â Â Â Â Â Â Â Â Â Â DDD emulated by HHH [00002183] push
ebp              [00002183] push ebp [00002184] mov
ebp,esp           [00002184] mov ebp,esp [00002186] push 00002183 ;
DDDÂ Â Â [00002186] push 00002183 ; DDD [0000218b] call 000015c3 ;
HHHÂ Â Â [0000218b] call 000015c3 ; HHH
*THE MATCHING IS NOW USED UP*
False. HHH1 is still simulating the left side by simulating HHH as
shown above.
HHH1 versus DDD simulated by HHH are made.
There is a list of DDD instructions that are directly simulated by HHH1See?
and directly simulated by HHH right here:
DDD emulated by HHH1 DDD emulated by HHH [00002183] push
ebp [00002183] push ebp [00002184] mov ebp,esp
[00002184] mov ebp,esp [00002186] push 00002183 ; DDD [00002186] push 00002183 ; DDD [0000218b] call 000015c3 ; HHH [0000218b] call
000015c3 ; HHH
HHH1 never directly emulates any other DDD.Other than what? Either it does or or HHH doesn't either.
Another instance of HHH does directly emulate DDD.Duh, there is only one instance of HHH1. But both it and the outermost
No instance of HHH1 ever does this.
On 6/6/2025 12:26 PM, joes wrote:
Am Wed, 04 Jun 2025 21:15:52 -0500 schrieb olcott:
On 6/4/2025 8:48 PM, Richard Damon wrote:
On 6/4/25 10:52 AM, olcott wrote:
On 6/4/2025 1:54 AM, Mikko wrote:
On 2025-06-03 19:57:09 +0000, olcott said:
On 6/3/2025 2:37 AM, Mikko wrote:
On 2025-06-02 15:52:53 +0000, olcott said:
The DDD emulated (correctly or otherwise) by HHH is the same DDD >>>>>>>> as the one emulated (correctly or otherwise) so both specify the >>>>>>>> same behaviour.
No they do not. When DDD calls its own emulator its behavior is
different than when DDD calls another different emulator.
Their code is the same and has the same meaning. DDD always calls HHH.
I didn't say that it did. Like HHH it simulates HHH simulating DDD.HHH emulates itself emulating DDDIf the input string does not unambiguously specify one and only one >>>>>> behaviour it is incorrectly encoded and not a valid input string.The code proves what it proves.
The halting problem of Truing machines requires that every pair of >>>>>> a Turing macnine and input is descibed so that the behaviour to be >>>>>> decided about is the only behaviour that meets to the description. >>>>>>
So what "simulation" is the above? It seems that you are showing aWhat I am showing is DDD emulated by HHH1 side-by-side with DDD
trace from x86, not what HHH is doing.
emulated by HHH
*They initially match up*
DDD emulated by HHH1 DDD emulated by HHH [00002183] push
ebp [00002183] push ebp [00002184] mov ebp,esp
[00002184] mov ebp,esp [00002186] push 00002183 ; DDD [00002186]
push 00002183 ; DDD [0000218b] call 000015c3 ; HHH [0000218b] call
000015c3 ; HHH *The matching is now all used up*
*Then DDD emulated by HHH does something*
*that DDD emulated by HHH1 never does*
*it emulates DDD all over again*
HHH1 also does that, and more, because it doesn't abort.
HHH1 NEVER emulates itself
On 6/6/2025 2:14 PM, joes wrote:
Am Fri, 06 Jun 2025 12:35:40 -0500 schrieb olcott:
On 6/6/2025 12:26 PM, joes wrote:
Am Wed, 04 Jun 2025 21:15:52 -0500 schrieb olcott:
On 6/4/2025 8:48 PM, Richard Damon wrote:
On 6/4/25 10:52 AM, olcott wrote:
On 6/4/2025 1:54 AM, Mikko wrote:
On 2025-06-03 19:57:09 +0000, olcott said:
On 6/3/2025 2:37 AM, Mikko wrote:
On 2025-06-02 15:52:53 +0000, olcott said:
The DDD emulated (correctly or otherwise) by HHH is the same >>>>>>>>>> DDD as the one emulated (correctly or otherwise) so both
specify the same behaviour.
No they do not. When DDD calls its own emulator its behavior is >>>>>>>>> different than when DDD calls another different emulator.
Their code is the same and has the same meaning. DDD always calls
HHH.
You overlooked this.
There is no "DDD that doesn't halt". *HHH* doesn't simulate it far enough. Indeed no simulator can simulate itself further than it has executed. ThatHHH1(DDD) simulates DDD that eventually halts. HHH(DDD) simulates DDDI didn't say that it did. Like HHH it simulates HHH simulating DDD.HHH emulates itself emulating DDD HHH1 NEVER emulates itselfIf the input string does not unambiguously specify one and only >>>>>>>> one behaviour it is incorrectly encoded and not a valid inputThe code proves what it proves.
string. The halting problem of Truing machines requires that
every pair of a Turing macnine and input is descibed so that the >>>>>>>> behaviour to be decided about is the only behaviour that meets to >>>>>>>> the description.
So what "simulation" is the above? It seems that you are showing a >>>>>> trace from x86, not what HHH is doing.What I am showing is DDD emulated by HHH1 side-by-side with DDD
emulated by HHH
*They initially match up*
DDD emulated by HHH1 DDD emulated by HHH [00002183]
push ebp [00002183] push ebp [00002184] mov ebp,esp
[00002184] mov ebp,esp [00002186] push 00002183 ; DDD [00002186]
push 00002183 ; DDD [0000218b] call 000015c3 ; HHH [0000218b]
call 000015c3 ; HHH *The matching is now all used up*
*Then DDD emulated by HHH does something*
*that DDD emulated by HHH1 never does*
*it emulates DDD all over again*
HHH1 also does that, and more, because it doesn't abort.
that cannot possibly halt.
You must pay actual attention to the actual execution traces. When youI don't need to assume. Your traces show it.
simply assume what these traces should be you are stupidly wrong.
On 6/6/2025 12:26 PM, joes wrote:
Am Wed, 04 Jun 2025 21:15:52 -0500 schrieb olcott:
On 6/4/2025 8:48 PM, Richard Damon wrote:Their code is the same and has the same meaning. DDD always calls HHH.
On 6/4/25 10:52 AM, olcott wrote:
On 6/4/2025 1:54 AM, Mikko wrote:
On 2025-06-03 19:57:09 +0000, olcott said:
On 6/3/2025 2:37 AM, Mikko wrote:
On 2025-06-02 15:52:53 +0000, olcott said:
The DDD emulated (correctly or otherwise) by HHH is the same DDD as >>>>>>>> the one emulated (correctly or otherwise) so both specify the same >>>>>>>> behaviour.
No they do not. When DDD calls its own emulator its behavior is
different than when DDD calls another different emulator.
If the input string does not unambiguously specify one and only one >>>>>> behaviour it is incorrectly encoded and not a valid input string. The >>>>>> halting problem of Truing machines requires that every pair of aThe code proves what it proves.
Turing macnine and input is descibed so that the behaviour to be
decided about is the only behaviour that meets to the description. >>>>>>
So what "simulation" is the above? It seems that you are showing aWhat I am showing is DDD emulated by HHH1 side-by-side with DDD emulated >>> by HHH
trace from x86, not what HHH is doing.
*They initially match up*
DDD emulated by HHH1Â Â Â Â Â Â Â Â Â Â Â Â Â DDD emulated by HHH [00002183] push
ebp              [00002183] push ebp [00002184] mov ebp,esp >>> [00002184] mov ebp,esp [00002186] push 00002183 ; DDD   [00002186] push >>> 00002183 ; DDD [0000218b] call 000015c3 ; HHH   [0000218b] call
000015c3 ; HHH *The matching is now all used up*
*Then DDD emulated by HHH does something*
*that DDD emulated by HHH1 never does*
*it emulates DDD all over again*
HHH1 also does that, and more, because it doesn't abort.
HHH emulates itself emulating DDD
HHH1 NEVER emulates itself
People with IQ's less than 5 don't know
the difference between ALWAYS and NEVER.
To these people the words ALWAYS and NEVER
are mere gibberish noises.
On 6/6/2025 2:36 PM, joes wrote:
Am Fri, 06 Jun 2025 14:18:26 -0500 schrieb olcott:
On 6/6/2025 2:14 PM, joes wrote:
Am Fri, 06 Jun 2025 12:35:40 -0500 schrieb olcott:
On 6/6/2025 12:26 PM, joes wrote:
Am Wed, 04 Jun 2025 21:15:52 -0500 schrieb olcott:
On 6/4/2025 8:48 PM, Richard Damon wrote:
On 6/4/25 10:52 AM, olcott wrote:
On 6/4/2025 1:54 AM, Mikko wrote:
On 2025-06-03 19:57:09 +0000, olcott said:
On 6/3/2025 2:37 AM, Mikko wrote:
On 2025-06-02 15:52:53 +0000, olcott said:
The DDD emulated (correctly or otherwise) by HHH is the same >>>>>>>>>>>> DDD as the one emulated (correctly or otherwise) so both >>>>>>>>>>>> specify the same behaviour.
No they do not. When DDD calls its own emulator its behavior is >>>>>>>>>>> different than when DDD calls another different emulator.
Their code is the same and has the same meaning. DDD always calls
HHH.
You overlooked this.
Please cut the above if you read it.
HHH1(DDD) simulates DDD that eventually halts. HHH(DDD) simulates DDDI didn't say that it did. Like HHH it simulates HHH simulating DDD.HHH emulates itself emulating DDD HHH1 NEVER emulates itselfIf the input string does not unambiguously specify one and only >>>>>>>>>> one behaviour it is incorrectly encoded and not a valid input >>>>>>>>>> string. The halting problem of Truing machines requires that >>>>>>>>>> every pair of a Turing macnine and input is descibed so that the >>>>>>>>>> behaviour to be decided about is the only behaviour that meets to >>>>>>>>>> the description.The code proves what it proves.
So what "simulation" is the above? It seems that you are showing a >>>>>>>> trace from x86, not what HHH is doing.What I am showing is DDD emulated by HHH1 side-by-side with DDD
emulated by HHH
*They initially match up*
DDD emulated by HHH1Â Â Â Â Â Â Â Â Â Â Â Â Â DDD emulated by HHH [00002183]
push ebp              [00002183] push ebp [00002184] mov ebp,esp
[00002184] mov ebp,esp [00002186] push 00002183 ; DDDÂ Â Â [00002186] >>>>>>> push 00002183 ; DDD [0000218b] call 000015c3 ; HHHÂ Â Â [0000218b] >>>>>>> call 000015c3 ; HHH *The matching is now all used up*
*Then DDD emulated by HHH does something*
*that DDD emulated by HHH1 never does*
*it emulates DDD all over again*
HHH1 also does that, and more, because it doesn't abort.
that cannot possibly halt.
There is no "DDD that doesn't halt".
You change the words that I said before
rebutting these changed words.
DDD correctly emulated by HHH cannot possibly
reach its own emulated "return" instruction
final state.
The input to HHH(DDD) SPECIFIES NON-HALTING BEHAVIOR.
That the caller of HHH(DDD) halts is none of the damn
business of HHH.
Sysop: | Keyop |
---|---|
Location: | Huddersfield, West Yorkshire, UK |
Users: | 546 |
Nodes: | 16 (2 / 14) |
Uptime: | 18:17:56 |
Calls: | 10,389 |
Files: | 14,061 |
Messages: | 6,416,956 |