All partial simulations of DD are the same, right up to the point the simulator stops simulating

Liste des GroupesRevenir à theory 
Sujet : All partial simulations of DD are the same, right up to the point the simulator stops simulating
De : news.dead.person.stones (at) *nospam* darjeeling.plus.com (Mike Terry)
Groupes : comp.theory
Date : 08. May 2025, 04:03:56
Autres entêtes
Organisation : A noiseless patient Spider
Message-ID : <vvh6v9$1h0e8$2@dont-email.me>
User-Agent : Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:91.0) Gecko/20100101 Firefox/91.0 SeaMonkey/2.53.18.2
In a recent PO thread, DBush correctly pointed out that two different simulators UTM and HHH emulate DD exactly the same up until the point that HHH aborts:
On 06/05/2025 21:25, olcott wrote:> On 5/6/2025 2:35 PM, dbush wrote:
 >> On 5/6/2025 2:47 PM, olcott wrote:
 >>
 >> HHH and UTM emulate DD exactly the same up until the point that HHH aborts,
 >
 > When you trace through the actual steps you
 > will see that this is counter-factual.
 >
 > That you lack the technical knowledge required
 > to trace through the steps and say that I am
 > wrong anyway is a reckless disregard for the truth.
 >
PO's typical response questions DBush's technical knowledge, and calls the claim "counter-factual".
When I pointed out that I had previously posted showing traces of HHH simulating DD and HHH1 simulating DD, compared side by side, proving that they are the same up to the point where HHH stops simulating, PO's response was just to double down, again saying that is counter-factual, and questioning my competence to interpret traces, etc..
Of course, we're all used to PO's arrogance and lack of technical knowledge, so we can readily dismiss his responses - but it seems PO really does believe what he claims.  He has produced actual traces of HHH and HHH1 simulating DD, which he would presumably not have done had he had the technical competence to interpret those traces to see who's arguments they support!  So PO is not just trolling here...
Anyhow, from PO's raw traces I have extracted the required "traces of simulation of DD by HHH and HHH1, and here they are in cut down form presented side by side for comparrison:
  HHH1 Simulation of DD (HHH1 never aborts)             HHH Simulation of DD
==========================================           ==========================================
  S  machine   machine        assembly                 S  machine   machine        assembly
  D  address   code           language                 D  address   code           language
  =  ========  ============== =============            =  ========  ============== =============
[1][0000213e] 55             push ebp                [1][0000213e] 55             push ebp
[1][0000213f] 8bec           mov ebp,esp             [1][0000213f] 8bec           mov ebp,esp
[1][00002141] 51             push ecx                [1][00002141] 51             push ecx
[1][00002142] 683e210000     push 0000213e           [1][00002142] 683e210000     push 0000213e
[1][00002147] e8a2f4ffff     call 000015ee           [1][00002147] e8a2f4ffff     call 000015ee
[1]New slave_stack at:14e33e                         [1]New slave_stack at:14e33e
[1]Begin Local Halt Decider Simulation
[2][0000213e] 55             push ebp                [2][0000213e] 55             push ebp
[2][0000213f] 8bec           mov ebp,esp             [2][0000213f] 8bec           mov ebp,esp
[2][00002141] 51             push ecx                [2][00002141] 51             push ecx
[2][00002142] 683e210000     push 0000213e           [2][00002142] 683e210000     push 0000213e
[2][00002147] e8a2f4ffff     call 000015ee           [2][00002147] e8a2f4ffff     call 000015ee
[3]New slave_stack at:198d66                         ### THIS IS WHERE HHH stops simulating DD
[3][0000213e] 55             push ebp                ### Right up to this point
[3][0000213f] 8bec           mov ebp,esp             ### HHH and HHH1 traces match as claimed
[3][00002141] 51             push ecx
[3][00002142] 683e210000     push 0000213e
[3][00002147] e8a2f4ffff     call 000015ee
[1]Infinite Recursion Detected Simulation Stopped
[1][0000214c] 83c404         add esp,+04
[1][0000214f] 8945fc         mov [ebp-04],eax
[1][00002152] 837dfc00       cmp dword [ebp-04],+00
[1][00002156] 7402           jz 0000215a
[1][0000215a] 8b45fc         mov eax,[ebp-04]
[1][0000215d] 8be5           mov esp,ebp
[1][0000215f] 5d             pop ebp
[1][00002160] c3             ret
Conclusion:  THE TWO TRACES ARE INDEED IDENTICAL, LINE BY LINE, UP TO THE POINT WHERE HHH STOPS SIMULATING DD.  PO's oft-repeated claim that traces differ depending on who is simulating them is revealed as nonsense, with no supporting evidence.
Just like I and DBush claimed.  PO's claim that it is "counter-factual" is seen as just the usual PO made up stuff, not based on reality.  I predict that PO /still/ won't understand what the implications of the comparison, and it won't be long before he is baldly repeating his nonsense claims.  It sort of makes you wonder exactly what the point of all this arguing with PO could be! What is actually changed as a result of these threads with thousands of posts going over and over the same claims?
Hmmm, I should say that the SD column above is just the "Simulation Depth" which I added manually. It is not essential, yet makes the traces much easier to understand.  [PO has said the opposite: that an SD column "confuses" posters...  If you find yourself confused by that column, just ignore it!]
-----------------------------------------
Remainder of post is just the full traces supplied by PO in article msgid=<vvgooc$1a47o$1@dont-email.me> with added SD column, from which the above comparison was constructed.  Probably not interesting to most readers...  These traces are "PO-filtered", showing only instructions within HHH.  That's enough to see the MT/DB claims are correct, but in the past I also produced a FULL traces showing /all/ instructions (including HHH + subroutines etc.).  I verified that it is still the case that HHH1/HHH simulations of DD were still identical line by line up to the point HHH stops simulating.  That was quite a bit of effort, so I won't be repeating that any time soon!  :)
Note in the traces, the SD=0 entries are from the outer level code which is directly executed, so includes main().  None of that is part of the trace of HHH's/HHH1's simulation, which is just SD=1 and greater entries.
--------------
For HHH1 simulating DD:
  S  machine   stack     stack     machine        assembly
  D  address   address   data      code           language
  =  ========  ========  ========  ============== =============
[0][000021be][00103872][00000000] 55             push ebp
[0][000021bf][00103872][00000000] 8bec           mov ebp,esp
[0][000021c1][0010386e][0000213e] 683e210000     push 0000213e // push DD
[0][000021c6][0010386a][000021cb] e853f3ffff     call 0000151e // call HHH1
[0]New slave_stack at:103916
[0]Begin Local Halt Decider Simulation   Execution Trace Stored at:11391e
[1][0000213e][0011390e][00113912] 55             push ebp
[1][0000213f][0011390e][00113912] 8bec           mov ebp,esp
[1][00002141][0011390a][00103916] 51             push ecx
[1][00002142][00113906][0000213e] 683e210000     push 0000213e // push DD
[1][00002147][00113902][0000214c] e8a2f4ffff     call 000015ee // call HHH
[1]New slave_stack at:14e33e
[1]Begin Local Halt Decider Simulation   Execution Trace Stored at:15e346
[2][0000213e][0015e336][0015e33a] 55             push ebp
[2][0000213f][0015e336][0015e33a] 8bec           mov ebp,esp
[2][00002141][0015e332][0014e33e] 51             push ecx
[2][00002142][0015e32e][0000213e] 683e210000     push 0000213e // push DD
[2][00002147][0015e32a][0000214c] e8a2f4ffff     call 000015ee // call HHH
[3]New slave_stack at:198d66
[3][0000213e][001a8d5e][001a8d62] 55             push ebp
[3][0000213f][001a8d5e][001a8d62] 8bec           mov ebp,esp
[3][00002141][001a8d5a][00198d66] 51             push ecx
[3][00002142][001a8d56][0000213e] 683e210000     push 0000213e
[3][00002147][001a8d52][0000214c] e8a2f4ffff     call 000015ee
[1]Local Halt Decider: Infinite Recursion Detected Simulation Stopped
[1][0000214c][0011390a][00103916] 83c404         add esp,+04
[1][0000214f][0011390a][00000000] 8945fc         mov [ebp-04],eax
[1][00002152][0011390a][00000000] 837dfc00       cmp dword [ebp-04],+00
[1][00002156][0011390a][00000000] 7402           jz 0000215a
[1][0000215a][0011390a][00000000] 8b45fc         mov eax,[ebp-04]
[1][0000215d][0011390e][00113912] 8be5           mov esp,ebp
[1][0000215f][00113912][000015d3] 5d             pop ebp
[1][00002160][00113916][0003a980] c3             ret
[0][000021cb][00103872][00000000] 83c404         add esp,+04
[0][000021ce][0010386e][00000001] 50             push eax
[0][000021cf][0010386a][0000075f] 685f070000     push 0000075f
[0][000021d4][0010386a][0000075f] e8a5e5ffff     call 0000077e
[0]Input_Halts = 1
[0][000021d9][00103872][00000000] 83c408         add esp,+08
[0][000021dc][00103872][00000000] 33c0           xor eax,eax
[0][000021de][00103876][00000018] 5d             pop ebp
[0][000021df][0010387a][00000000] c3             ret
    Number of Instructions Executed(400885) == 5983 Pages
HHH1 does not abort, so the trace of HHH1 simulation exactly matches those from a UTM simulating DD, or alternatively a trace of the direct execution of DD.  HHH1 simulates the final ret from DD. Above, that is the line: [1][00002160][00113916][0003a980] c3  ret
Also in the trace we can see the simulated HHH aborting its own (nested) simulation of DD, before going on to terminate a few lines later.
Above, the simulated abort is the line: [1]Local Halt Decider: Infinite Recursion Detected Simulation Stopped.  Hmmm, without the Simulation Depth column it is not at all obvious that the abort is from the simulated HHH rather than something else, e.g. from outer HHHH1.
--------------
For HHH simulating DD.
  S  machine   stack     stack     machine        assembly
  D  address   address   data      code           language
  =  ========  ========  ========  ============== =============
[0][000021be][00103872][00000000] 55             push ebp
[0][000021bf][00103872][00000000] 8bec           mov ebp,esp
[0][000021c1][0010386e][0000213e] 683e210000     push 0000213e // push DD
[0][000021c6][0010386a][000021cb] e823f4ffff     call 000015ee // call HHH
[0]New slave_stack at:103916
[0]Begin Local Halt Decider Simulation   Execution Trace Stored at:11391e
[1][0000213e][0011390e][00113912] 55             push ebp
[1][0000213f][0011390e][00113912] 8bec           mov ebp,esp
[1][00002141][0011390a][00103916] 51             push ecx
[1][00002142][00113906][0000213e] 683e210000     push 0000213e // push DD
[1][00002147][00113902][0000214c] e8a2f4ffff     call 000015ee // calls HHH
[1]New slave_stack at:14e33e
[2][0000213e][0015e336][0015e33a] 55             push ebp
[2][0000213f][0015e336][0015e33a] 8bec           mov ebp,esp
[2][00002141][0015e332][0014e33e] 51             push ecx
[2][00002142][0015e32e][0000213e] 683e210000     push 0000213e // push DD
[2][00002147][0015e32a][0000214c] e8a2f4ffff     call 000015ee // call HHH
[0]Local Halt Decider: Infinite Recursion Detected Simulation Stopped
[0][000021cb][00103872][00000000] 83c404         add esp,+04
[0][000021ce][0010386e][00000000] 50             push eax
[0][000021cf][0010386a][0000075f] 685f070000     push 0000075f
[0][000021d4][0010386a][0000075f] e8a5e5ffff     call 0000077e
[0]Input_Halts = 0
[0][000021d9][00103872][00000000] 83c408         add esp,+08
[0][000021dc][00103872][00000000] 33c0           xor eax,eax
[0][000021de][00103876][00000018] 5d             pop ebp
[0][000021df][0010387a][00000000] c3             ret
Number of Instructions Executed(11427) == 171 Pages
HHH aborts its simulation,
Above, that is the line: [0]Local Halt Decider: Infinite Recursion Detected Simulation Stopped.
Mike.

Date Sujet#  Auteur
8 May 25 o All partial simulations of DD are the same, right up to the point the simulator stops simulating1Mike Terry

Haut de la page

Les messages affichés proviennent d'usenet.

NewsPortal