Re: Simulating termination analyzers for dummies

Liste des GroupesRevenir à theory 
Sujet : Re: Simulating termination analyzers for dummies
De : mikko.levanto (at) *nospam* iki.fi (Mikko)
Groupes : comp.theory
Date : 20. Jun 2024, 07:17:46
Autres entêtes
Organisation : -
Message-ID : <v50e1q$2e95t$1@dont-email.me>
References : 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17
User-Agent : Unison/2.2
On 2024-06-19 13:00:57 +0000, olcott said:

On 6/19/2024 3:08 AM, Fred. Zwarts wrote:
Op 18.jun.2024 om 18:26 schreef olcott:
On 6/18/2024 10:47 AM, Fred. Zwarts wrote:
Op 18.jun.2024 om 17:33 schreef olcott:
On 6/18/2024 10:20 AM, Fred. Zwarts wrote:
 It is a verified fact that serious C people have recently
agreed to the following verbatim statement in the C group.
 http://al.howardknight.net/?STYPE=msgid&MSGI=%3Cv4pg5p%24morv%241%40raubtier-asyl.eternal-september.org%3E+  
You either lack this degree of skill in C or are only
interested in playing head games.
 I have seen the response. It was most certainly not a serious reply.
But you know apparently to little of C to understand that.
Probably, because you are unable to escape from rebuttal mode, even if the truth is obvious.
 
 I have known C since K&R was the standard and met
Bjarne Stroustrup when he came to our university
to promote his new C++ programming language.
 *You seem to be willfully ignorant*
 
It was your own proof that showed that in
         int main()
        {
          return H(main);
        }
  main halts, whereas H reported non-halting. So, it you were honest you would stop claiming that H is correct.
 
 That is merely a more difficult to understand version of this
same pathological relationship.
 int main()
{
   Output("Input_Halts = ", HH0(main));
}
 _main()
[000020c2] 55         push ebp
[000020c3] 8bec       mov ebp,esp
[000020c5] 68c2200000 push 000020c2 ; push main
[000020ca] e833f4ffff call 00001502 ; call HH0
[000020cf] 83c404     add esp,+04
[000020d2] 50         push eax
[000020d3] 6843070000 push 00000743
[000020d8] e885e6ffff call 00000762
[000020dd] 83c408     add esp,+08
[000020e0] eb04       jmp 000020e6
[000020e2] 33c0       xor eax,eax
[000020e4] eb02       jmp 000020e8
[000020e6] 33c0       xor eax,eax
[000020e8] 5d         pop ebp
[000020e9] c3         ret
Size in bytes:(0040) [000020e9]
   machine   stack     stack     machine    assembly
  address   address   data      code       language
  ========  ========  ========  =========  =============
[000020c2][001036c3][00000000] 55         push ebp
[000020c3][001036c3][00000000] 8bec       mov ebp,esp
[000020c5][001036bf][000020c2] 68c2200000 push 000020c2 ; push main
[000020ca][001036bb][000020cf] e833f4ffff call 00001502 ; call HH0
New slave_stack at:103767
 Begin Local Halt Decider Simulation   Execution Trace Stored at:11376f
[000020c2][0011375f][00113763] 55         push ebp      ; begin main
[000020c3][0011375f][00113763] 8bec       mov ebp,esp
[000020c5][0011375b][000020c2] 68c2200000 push 000020c2 ; push main
[000020ca][00113757][000020cf] e833f4ffff call 00001502 ; call HH0
New slave_stack at:14e18f
[000020c2][0015e187][0015e18b] 55         push ebp      ; begin main
[000020c3][0015e187][0015e18b] 8bec       mov ebp,esp
[000020c5][0015e183][000020c2] 68c2200000 push 000020c2 ; push main
[000020ca][0015e17f][000020cf] e833f4ffff call 00001502 ; call HH0
Local Halt Decider: Infinite Recursion Detected Simulation Stopped
 [000020cf][001036c3][00000000] 83c404     add esp,+04
[000020d2][001036bf][00000000] 50         push eax
[000020d3][001036bb][00000743] 6843070000 push 00000743
[000020d8][001036bb][00000743] e885e6ffff call 00000762
Input_Halts = 0
[000020dd][001036c3][00000000] 83c408     add esp,+08
[000020e0][001036c3][00000000] eb04       jmp 000020e6
[000020e6][001036c3][00000000] 33c0       xor eax,eax
[000020e8][001036c7][00000018] 5d         pop ebp
[000020e9][001036cb][00000000] c3         ret           ; exit main
Number of Instructions Executed(10070) == 150 Pages
 
 It is easier to understand because a print statement was added.
You proved that it halts, but H0 reports non-halting.
So, it produces a false negative.
So, now it has been proved that H, H0, etc produce false negatives, when used to determine halting behaviour, please, stop to call them halt-deciders, or termination-deciders.
They might be "simulation deciders". When returning true, the simulation was correct, when false, the full simulation was not possible.
 I don't want to discuss your screwy example because I
can't use screwy examples in my paper.
If you could ever publish a paper there would soon be papers with examples
(which you may call "screwy") that your method gets wrong.
--
Mikko

Date Sujet#  Auteur
10 Nov 24 o 

Haut de la page

Les messages affichés proviennent d'usenet.

NewsPortal