Deutsch English Français Italiano |
<v4slo4$1g4ib$1@dont-email.me> View for Bookmarking (what is this?) Look up another Usenet article |
Path: ...!feed.opticnetworks.net!eternal-september.org!feeder3.eternal-september.org!news.eternal-september.org!.POSTED!not-for-mail From: olcott <polcott333@gmail.com> Newsgroups: comp.theory Subject: Re: H(D,D) cannot even be asked about the behavior of D(D) V3 ---IGNORING ALL OTHER REPLIES Date: Tue, 18 Jun 2024 14:04:36 -0500 Organization: A noiseless patient Spider Lines: 122 Message-ID: <v4slo4$1g4ib$1@dont-email.me> References: <v4kf3h$3h3iu$7@dont-email.me> <v4m5l6$3v4ql$1@dont-email.me> <v4mmsd$1qt6$3@dont-email.me> <v4oo36$hnns$1@dont-email.me> <v4pc7t$ln46$3@dont-email.me> <v4revs$18him$1@dont-email.me> <v4s07h$1boeu$5@dont-email.me> <v4sb8k$1e266$2@dont-email.me> MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8; format=flowed Content-Transfer-Encoding: 8bit Injection-Date: Tue, 18 Jun 2024 21:04:37 +0200 (CEST) Injection-Info: dont-email.me; posting-host="817dd47f58e869d78494e0bf13c00909"; logging-data="1577547"; mail-complaints-to="abuse@eternal-september.org"; posting-account="U2FsdGVkX1/aaMUCitBugRrR0plCSTmC" User-Agent: Mozilla Thunderbird Cancel-Lock: sha1:A9kY0jHRyFy2oriiBBNJ/MhRKqs= Content-Language: en-US In-Reply-To: <v4sb8k$1e266$2@dont-email.me> Bytes: 5520 On 6/18/2024 11:05 AM, Mikko wrote: > On 2024-06-18 12:57:21 +0000, olcott said: > >> On 6/18/2024 3:03 AM, Mikko wrote: >>> On 2024-06-17 13:03:56 +0000, olcott said: >>> >>>> On 6/17/2024 2:20 AM, Mikko wrote: >>>>> On 2024-06-16 12:47:09 +0000, olcott said: >>>>> >>>>>> On 6/16/2024 2:53 AM, Mikko wrote: >>>>>>> On 2024-06-15 16:22:09 +0000, olcott said: >>>>>>> >>>>>>>> On 6/13/2024 8:24 PM, Richard Damon wrote: >>>>>>>> > On 6/13/24 11:32 AM, olcott wrote: >>>>>>>> >> >>>>>>>> >> It is contingent upon you to show the exact steps of how H >>>>>>>> computes >>>>>>>> >> the mapping from the x86 machine language finite string >>>>>>>> input to >>>>>>>> >> H(D,D) using the finite string transformation rules >>>>>>>> specified by >>>>>>>> >> the semantics of the x86 programming language that reaches the >>>>>>>> >> behavior of the directly executed D(D) >>>>>>>> >> >>>>>>>> > >>>>>>>> > Why? I don't claim it can. >>>>>>>> >>>>>>>> The first six steps of this mapping are when instructions >>>>>>>> at the machine address range of [00000cfc] to [00000d06] >>>>>>>> are simulated/executed. >>>>>>>> >>>>>>>> After that the behavior of D correctly simulated by H diverges >>>>>>>> from the behavior of D(D) because the call to H(D,D) by D >>>>>>>> correctly simulated by H cannot possibly return to D. >>>>>>>> >>>>>>>> _D() >>>>>>>> [00000cfc](01) 55 push ebp >>>>>>>> [00000cfd](02) 8bec mov ebp,esp >>>>>>>> [00000cff](03) 8b4508 mov eax,[ebp+08] >>>>>>>> [00000d02](01) 50 push eax ; push D >>>>>>>> [00000d03](03) 8b4d08 mov ecx,[ebp+08] >>>>>>>> [00000d06](01) 51 push ecx ; push D >>>>>>>> [00000d07](05) e800feffff call 00000b0c ; call H >>>>>>>> [00000d0c](03) 83c408 add esp,+08 >>>>>>>> [00000d0f](02) 85c0 test eax,eax >>>>>>>> [00000d11](02) 7404 jz 00000d17 >>>>>>>> [00000d13](02) 33c0 xor eax,eax >>>>>>>> [00000d15](02) eb05 jmp 00000d1c >>>>>>>> [00000d17](05) b801000000 mov eax,00000001 >>>>>>>> [00000d1c](01) 5d pop ebp >>>>>>>> [00000d1d](01) c3 ret >>>>>>>> Size in bytes:(0034) [00000d1d] >>>>>>> >>>>>>> When you put "V2" or "V3" or something similar on the subject line >>>>>>> you should tell what is different from the original version. >>>>>>> >>>>>> >>>>>> I ask what are the steps >>>>>> I provide 6 steps and then ask what are the next steps. >>>>>> I provide all of the steps. >>>>> >>>>> In which version? >>>>> >>>> >>>> *This is the simplest possible version* >>>> >>>> void DDD() >>>> { >>>> H0(DDD); >>>> } >>>> >>>> After six steps of DDD are correctly emulated by H0 >>>> what machine address of DDD would it be at? >>>> >>>> _DDD() >>>> [00001fd2] 55 push ebp ; housekeeping >>>> [00001fd3] 8bec mov ebp,esp ; housekeeping >>>> [00001fd5] 68d21f0000 push 00001fd2 ; push DDD >>>> [00001fda] e8f3f9ffff call 000019d2 ; call H0 >>>> [00001fdf] 83c404 add esp,+04 ; housekeeping >>>> [00001fe2] 5d pop ebp ; housekeeping >>>> [00001fe3] c3 ret ; return to caller >>>> Size in bytes:(0018) [00001fe3] >>> >>> So how is this a difference between the original version and V2 and V3? >>> >> >> No params thus easier to see that it pushes its own machine address. > > My question is still unanswered. > *The simplest possible case* void DDD() { H0(DDD); } *The next simplest case* typedef void (*ptr)(); void DDD(ptr x) { HH(x, x); } *The conventional case* typedef int (*ptr2)(); int P(ptr2 x) { int Halt_Status = H(x, x); if (Halt_Status) HERE: goto HERE; return Halt_Status; } I had to keep dumbing it down to make it more difficult to reject out-of-hand without review. -- Copyright 2024 Olcott "Talent hits a target no one else can hit; Genius hits a target no one else can see." Arthur Schopenhauer