Rocksolid Light

Welcome to novaBBS (click a section below)

mail  files  register  newsreader  groups  login

Message-ID:  

"One day I woke up and discovered that I was in love with tripe." -- Tom Anderson


computers / comp.ai.philosophy / Re: Technically competent Software engineers can verify this halting problem proof refutation

SubjectAuthor
* Technically competent Software engineers can verify this haltingolcott
+* Re: Technically competent Software engineers can verify this haltingRichard Damon
|`* Re: Technically competent Software engineers can verify this haltingolcott
| +- Re: Technically competent Software engineers can verify this haltingRichard Damon
| `* Re: Technically competent Software engineers can verify this haltingolcott
|  +* Re: Technically competent Software engineers can verify this haltingolcott
|  |`* Re: Technically competent Software engineers can verify this haltingolcott
|  | `* Re: Technically competent Software engineers can verify this haltingRichard Damon
|  |  `* Re: Technically competent Software engineers can verify this haltingolcott
|  |   `* Re: Technically competent Software engineers can verify this haltingRichard Damon
|  |    `* Re: Technically competent Software engineers can verify this haltingolcott
|  |     `* Re: Technically competent Software engineers can verify this haltingRichard Damon
|  |      `* Re: Technically competent Software engineers can verify this haltingolcott
|  |       `* Re: Technically competent Software engineers can verify this haltingRichard Damon
|  |        `* Re: Technically competent Software engineers can verify this haltingolcott
|  |         `- Re: Technically competent Software engineers can verify this haltingRichard Damon
|  +* Re: Technically competent Software engineers can verify this haltingolcott
|  |`* Re: Technically competent Software engineers can verify this haltingRichard Damon
|  | `* Re: Technically competent Software engineers can verify this haltingolcott
|  |  `* Re: Technically competent Software engineers can verify this haltingRichard Damon
|  |   `* Re: Technically competent Software engineers can verify this haltingolcott
|  |    `- Re: Technically competent Software engineers can verify this haltingRichard Damon
|  +* Software engineers can verify this halting problem proof refutation [olcott
|  |`- Re: Software engineers can verify this halting problem proofRichard Damon
|  +* Re: Technically competent Software engineers can verify this haltingolcott
|  |+- Re: Technically competent Software engineers can verify this haltingRichard Damon
|  |+* Re: Technically competent Software engineers can verify this haltingolcott
|  ||`- Re: Technically competent Software engineers can verify this haltingRichard Damon
|  |`* Re: Technically competent Software engineers can verify this haltingolcott
|  | `* Re: Technically competent Software engineers can verify this haltingolcott
|  |  +- Re: Technically competent Software engineers can verify this haltingRichard Damon
|  |  +* Re: Technically competent Software engineers can verify this haltingolcott
|  |  |`- Re: Technically competent Software engineers can verify this haltingRichard Damon
|  |  `* Re: Technically competent Software engineers can verify this haltingolcott
|  |   +- Re: Technically competent Software engineers can verify this haltingRichard Damon
|  |   `- Re: Technically competent Software engineers can verify this haltingolcott
|  +* Re: Technically competent Software engineers can verify this haltingolcott
|  |`- Re: Technically competent Software engineers can verify this haltingRichard Damon
|  +* Re: Technically competent Software engineers can verify this haltingolcott
|  |`* Re: Technically competent Software engineers can verify this haltingolcott
|  | +- Re: Technically competent Software engineers can verify this haltingRichard Damon
|  | `- Re: Technically competent Software engineers can verify this haltingolcott
|  +* Re: Technically competent Software engineers can verify this haltingolcott
|  |+- Re: Technically competent Software engineers can verify this haltingRichard Damon
|  |`* Re: Technically competent Software engineers can verify this haltingolcott
|  | `* Re: Technically competent Software engineers can verify this haltingolcott
|  |  `* Re: Technically competent Software engineers can verify thisMr Flibble
|  |   `* Re: Technically competent Software engineers can verify this haltingolcott
|  |    +* Re: Technically competent Software engineers can verify thisMr Flibble
|  |    |`* Re: Technically competent Software engineers can verify this haltingolcott
|  |    | `* Re: Technically competent Software engineers can verify thisMr Flibble
|  |    |  `* Re: Technically competent Software engineers can verify this haltingolcott
|  |    |   +* Re: Technically competent Software engineers can verify thisMr Flibble
|  |    |   |`* Re: Technically competent Software engineers can verify this haltingolcott
|  |    |   | `* Re: Technically competent Software engineers can verify thisMr Flibble
|  |    |   |  `* Re: Technically competent Software engineers can verify this haltingolcott
|  |    |   |   `- Re: Technically competent Software engineers can verify thisMr Flibble
|  |    |   `- Re: Technically competent Software engineers can verify this haltingRichard Damon
|  |    `- Re: Technically competent Software engineers can verify this haltingRichard Damon
|  +* Re: Technically competent Software engineers can verify this haltingolcott
|  |`* Re: Technically competent Software engineers can verify thisMr Flibble
|  | `* Re: Technically competent Software engineers can verify this haltingolcott
|  |  `* Re: Technically competent Software engineers can verify this haltingRichard Damon
|  |   `* Re: Technically competent Software engineers can verify thisMr Flibble
|  |    `- Re: Technically competent Software engineers can verify this haltingolcott
|  +* Re: Technically competent Software engineers can verify this haltingolcott
|  |+* Re: Technically competent Software engineers can verify thisMr Flibble
|  ||`* Re: Technically competent Software engineers can verify this haltingolcott
|  || +* Re: Technically competent Software engineers can verify thisMr Flibble
|  || |`* Re: Technically competent Software engineers can verify this haltingolcott
|  || | `* Re: Technically competent Software engineers can verify thisMr Flibble
|  || |  `* Re: Technically competent Software engineers can verify this haltingolcott
|  || |   `* Re: Technically competent Software engineers can verify thisMr Flibble
|  || |    `* Re: Technically competent Software engineers can verify this haltingolcott
|  || |     `* Re: Technically competent Software engineers can verify thisMr Flibble
|  || |      `* Re: Technically competent Software engineers can verify this haltingolcott
|  || |       `* Re: Technically competent Software engineers can verify thisMr Flibble
|  || |        `* Re: Technically competent Software engineers can verify this haltingolcott
|  || |         `* Re: Technically competent Software engineers can verify thisMr Flibble
|  || |          `- Re: Technically competent Software engineers can verify this haltingolcott
|  || `- Re: Technically competent Software engineers can verify this haltingRichard Damon
|  |`* Re: Technically competent Software engineers can verify this haltingRichard Damon
|  | `- Re: Technically competent Software engineers can verify thisMr Flibble
|  `* Re: Technically competent Software engineers can verify this haltingolcott
|   `- Re: Technically competent Software engineers can verify this haltingolcott
+* Re: Technically competent Software engineers can verify this haltingJeff Barnett
|`* Re: Technically competent Software engineers can verify this haltingolcott
| `* Re: Technically competent Software engineers can verify this haltingJeff Barnett
|  +- Re: Technically competent Software engineers can verify this haltingolcott
|  +- Re: Technically competent Software engineers can verify this haltingolcott
|  `- Re: Technically competent Software engineers can verify this haltingolcott
`* Re: Technically competent Software engineers can verify thisMr Flibble
 +* Re: Technically competent Software engineers can verify this haltingolcott
 |+* Re: Technically competent Software engineers can verify thisMr Flibble
 ||`* Re: Technically competent Software engineers can verify this haltingolcott
 || +* Re: Technically competent Software engineers can verify thisMr Flibble
 || |`* Re: Technically competent Software engineers can verify this haltingolcott
 || | `* Re: Technically competent Software engineers can verify thisMr Flibble
 || |  `- Re: Technically competent Software engineers can verify this haltingolcott
 || `* Re: Technically competent Software engineers can verify this haltingolcott
 ||  `* Re: Technically competent Software engineers can verify this haltingolcott
 |`* Re: Technically competent Software engineers can verify this haltingRichard Damon
 `* Re: Technically competent Software engineers can verify this haltingolcott

Pages:1234567
Re: Technically competent Software engineers can verify this halting problem proof refutation [ truism ]

<pHPsK.102533$ssF.36709@fx14.iad>

  copy mid

https://www.novabbs.com/computers/article-flat.php?id=9708&group=comp.ai.philosophy#9708

  copy link   Newsgroups: comp.theory comp.ai.philosophy sci.logic sci.math
Path: i2pn2.org!i2pn.org!usenet.blueworldhosting.com!feed1.usenet.blueworldhosting.com!peer03.iad!feed-me.highwinds-media.com!news.highwinds-media.com!fx14.iad.POSTED!not-for-mail
MIME-Version: 1.0
User-Agent: Mozilla/5.0 (Macintosh; Intel Mac OS X 10.15; rv:91.0)
Gecko/20100101 Thunderbird/91.10.0
Subject: Re: Technically competent Software engineers can verify this halting
problem proof refutation [ truism ]
Content-Language: en-US
Newsgroups: comp.theory,comp.ai.philosophy,sci.logic,sci.math
References: <EOydnaeszcdfHS__nZ2dnUU7_83NnZ2d@giganews.com>
<20220622203106.00003fa2@reddwarf.jmc>
<xqSdnb2KKdOL5i7_nZ2dnUU7_81g4p2d@giganews.com>
<20220622222043.00001cb9@reddwarf.jmc>
<_eidnf40g7wFES7_nZ2dnUU7_8zNnZ2d@giganews.com>
<de67d3d5-10f3-4e28-9b31-082e97c1145en@googlegroups.com>
<MtadnVqn1dCkCy7_nZ2dnUU7_8zNnZ2d@giganews.com>
<5f26b879-5cd4-4f28-b7c4-c3e4ed0614c2n@googlegroups.com>
<9OydnaRCCvQ9PC7_nZ2dnUU7_83NnZ2d@giganews.com>
<58dc4a7a-d635-44bb-bf2a-3a959d9d808an@googlegroups.com>
<SJ-dnXBdiJ6aIi7_nZ2dnUU7_83NnZ2d@giganews.com>
<d59b136e-6411-462f-9b62-229c0ac00608n@googlegroups.com>
<NZmdnRY_I-BpXi7_nZ2dnUU7_83NnZ2d@giganews.com>
From: Rich...@Damon-Family.org (Richard Damon)
In-Reply-To: <NZmdnRY_I-BpXi7_nZ2dnUU7_83NnZ2d@giganews.com>
Content-Type: text/plain; charset=UTF-8; format=flowed
Content-Transfer-Encoding: 8bit
Lines: 293
Message-ID: <pHPsK.102533$ssF.36709@fx14.iad>
X-Complaints-To: abuse@easynews.com
Organization: Forte - www.forteinc.com
X-Complaints-Info: Please be sure to forward a copy of ALL headers otherwise we will be unable to process your complaint properly.
Date: Wed, 22 Jun 2022 21:52:21 -0400
X-Received-Bytes: 14411
 by: Richard Damon - Thu, 23 Jun 2022 01:52 UTC

On 6/22/22 9:37 PM, olcott wrote:
> On 6/22/2022 8:21 PM, Dennis Bush wrote:
>> On Wednesday, June 22, 2022 at 9:17:02 PM UTC-4, olcott wrote:
>>> On 6/22/2022 8:02 PM, Dennis Bush wrote:
>>>> On Wednesday, June 22, 2022 at 7:11:35 PM UTC-4, olcott wrote:
>>>>> On 6/22/2022 5:48 PM, Dennis Bush wrote:
>>>>>> On Wednesday, June 22, 2022 at 6:22:56 PM UTC-4, olcott wrote:
>>>>>>> On 6/22/2022 4:53 PM, Dennis Bush wrote:
>>>>>>>> On Wednesday, June 22, 2022 at 5:41:51 PM UTC-4, olcott wrote:
>>>>>>>>> On 6/22/2022 4:20 PM, Mr Flibble wrote:
>>>>>>>>>> On Wed, 22 Jun 2022 15:27:01 -0500
>>>>>>>>>> olcott <No...@NoWhere.com> wrote:
>>>>>>>>>>
>>>>>>>>>>> On 6/22/2022 2:31 PM, Mr Flibble wrote:
>>>>>>>>>>>> On Tue, 21 Jun 2022 21:38:56 -0500
>>>>>>>>>>>> olcott <No...@NoWhere.com> wrote:
>>>>>>>>>>>>
>>>>>>>>>>>>> #include <stdint.h>
>>>>>>>>>>>>> #define u32 uint32_t
>>>>>>>>>>>>>
>>>>>>>>>>>>> #include <stdint.h>
>>>>>>>>>>>>> typedef void (*ptr)();
>>>>>>>>>>>>>
>>>>>>>>>>>>> void P(ptr x)
>>>>>>>>>>>>> {
>>>>>>>>>>>>> if (H(x, x))
>>>>>>>>>>>>> HERE: goto HERE;
>>>>>>>>>>>>> return;
>>>>>>>>>>>>> }
>>>>>>>>>>>>>
>>>>>>>>>>>>> int main()
>>>>>>>>>>>>> {
>>>>>>>>>>>>> Output("Input_Halts = ", H(P, P));
>>>>>>>>>>>>> }
>>>>>>>>>>>>>
>>>>>>>>>>>>> _P()
>>>>>>>>>>>>> [000010d2](01) 55 push ebp
>>>>>>>>>>>>> [000010d3](02) 8bec mov ebp,esp
>>>>>>>>>>>>> [000010d5](03) 8b4508 mov eax,[ebp+08]
>>>>>>>>>>>>> [000010d8](01) 50 push eax
>>>>>>>>>>>>> [000010d9](03) 8b4d08 mov ecx,[ebp+08]
>>>>>>>>>>>>> [000010dc](01) 51 push ecx
>>>>>>>>>>>>> [000010dd](05) e820feffff call 00000f02
>>>>>>>>>>>>> [000010e2](03) 83c408 add esp,+08
>>>>>>>>>>>>> [000010e5](02) 85c0 test eax,eax
>>>>>>>>>>>>> [000010e7](02) 7402 jz 000010eb
>>>>>>>>>>>>> [000010e9](02) ebfe jmp 000010e9
>>>>>>>>>>>>> [000010eb](01) 5d pop ebp
>>>>>>>>>>>>> [000010ec](01) c3 ret
>>>>>>>>>>>>> Size in bytes:(0027) [000010ec]
>>>>>>>>>>>>>
>>>>>>>>>>>>> Every sufficiently competent software engineer can easily
>>>>>>>>>>>>> verify
>>>>>>>>>>>>> that the complete and correct x86 emulation of the input to
>>>>>>>>>>>>> H(P,P)
>>>>>>>>>>>>> by H would never reach the "ret" instruction of P because
>>>>>>>>>>>>> both H
>>>>>>>>>>>>> and P would remain stuck in infinitely recursive emulation.
>>>>>>>>>>>>>
>>>>>>>>>>>>> If H does correctly determine that this is the case in a
>>>>>>>>>>>>> finite
>>>>>>>>>>>>> number of steps then H could reject its input on this
>>>>>>>>>>>>> basis. Here
>>>>>>>>>>>>> are the details of exactly how H does this in a finite
>>>>>>>>>>>>> number of
>>>>>>>>>>>>> steps.
>>>>>>>>>>>>>
>>>>>>>>>>>>> typedef struct Decoded
>>>>>>>>>>>>> {
>>>>>>>>>>>>> u32 Address;
>>>>>>>>>>>>> u32 ESP; // Current value of ESP
>>>>>>>>>>>>> u32 TOS; // Current value of Top of Stack
>>>>>>>>>>>>> u32 NumBytes;
>>>>>>>>>>>>> u32 Simplified_Opcode;
>>>>>>>>>>>>> u32 Decode_Target;
>>>>>>>>>>>>> } Decoded_Line_Of_Code;
>>>>>>>>>>>>>
>>>>>>>>>>>>> machine stack stack machine assembly
>>>>>>>>>>>>> address address data code language
>>>>>>>>>>>>> ======== ======== ======== ========= =============
>>>>>>>>>>>>> [000010d2][00211e8a][00211e8e] 55 push ebp
>>>>>>>>>>>>> [000010d3][00211e8a][00211e8e] 8bec mov ebp,esp
>>>>>>>>>>>>> [000010d5][00211e8a][00211e8e] 8b4508 mov eax,[ebp+08]
>>>>>>>>>>>>> [000010d8][00211e86][000010d2] 50 push eax // push P
>>>>>>>>>>>>> [000010d9][00211e86][000010d2] 8b4d08 mov ecx,[ebp+08]
>>>>>>>>>>>>> [000010dc][00211e82][000010d2] 51 push ecx // push P
>>>>>>>>>>>>> [000010dd][00211e7e][000010e2] e820feffff call 00000f02 //
>>>>>>>>>>>>> call H
>>>>>>>>>>>>> Infinitely Recursive Simulation Detected Simulation Stopped
>>>>>>>>>>>>>
>>>>>>>>>>>>> // actual fully operational code in the x86utm operating
>>>>>>>>>>>>> system
>>>>>>>>>>>>> u32 H(u32 P, u32 I)
>>>>>>>>>>>>> {
>>>>>>>>>>>>> HERE:
>>>>>>>>>>>>> u32 End_Of_Code;
>>>>>>>>>>>>> u32 Address_of_H; // 2022-06-17
>>>>>>>>>>>>> u32 code_end = get_code_end(P);
>>>>>>>>>>>>> Decoded_Line_Of_Code *decoded = (Decoded_Line_Of_Code*)
>>>>>>>>>>>>> Allocate(sizeof(Decoded_Line_Of_Code));
>>>>>>>>>>>>> Registers* master_state = (Registers*)
>>>>>>>>>>>>> Allocate(sizeof(Registers));
>>>>>>>>>>>>> Registers* slave_state = (Registers*)
>>>>>>>>>>>>> Allocate(sizeof(Registers));
>>>>>>>>>>>>> u32* slave_stack = Allocate(0x10000); // 64k;
>>>>>>>>>>>>> u32 execution_trace =
>>>>>>>>>>>>> (u32)Allocate(sizeof(Decoded_Line_Of_Code)
>>>>>>>>>>>>> * 1000);
>>>>>>>>>>>>>
>>>>>>>>>>>>> __asm lea eax, HERE // 2022-06-18
>>>>>>>>>>>>> __asm sub eax, 6 // 2022-06-18
>>>>>>>>>>>>> __asm mov Address_of_H, eax // 2022-06-18
>>>>>>>>>>>>> __asm mov eax, END_OF_CODE
>>>>>>>>>>>>> __asm mov End_Of_Code, eax
>>>>>>>>>>>>>
>>>>>>>>>>>>> Output("Address_of_H:", Address_of_H); // 2022-06-11
>>>>>>>>>>>>> Init_slave_state(P, I, End_Of_Code, slave_state, slave_stack);
>>>>>>>>>>>>> Output("\nBegin Simulation Execution Trace Stored at:",
>>>>>>>>>>>>> execution_trace);
>>>>>>>>>>>>> if (Decide_Halting(&execution_trace, &decoded, code_end,
>>>>>>>>>>>>> &master_state, &slave_state, &slave_stack, Address_of_H, P,
>>>>>>>>>>>>> I))
>>>>>>>>>>>>> goto END_OF_CODE;
>>>>>>>>>>>>> return 0; // Does not halt
>>>>>>>>>>>>> END_OF_CODE:
>>>>>>>>>>>>> return 1; // Input has normally terminated
>>>>>>>>>>>>> }
>>>>>>>>>>>>>
>>>>>>>>>>>>> H knows its own machine address and on this basis it can
>>>>>>>>>>>>> easily
>>>>>>>>>>>>> examine its stored execution_trace of P and determine:
>>>>>>>>>>>>> (a) P is calling H with the same arguments that H was
>>>>>>>>>>>>> called with.
>>>>>>>>>>>>> (b) No instructions in P could possibly escape this otherwise
>>>>>>>>>>>>> infinitely recursive emulation.
>>>>>>>>>>>>> (c) H aborts its emulation of P before its call to H is
>>>>>>>>>>>>> invoked.
>>>>>>>>>>>>>
>>>>>>>>>>>>>
>>>>>>>>>>>>>
>>>>>>>>>>>>>
>>>>>>>>>>>>> Technically competent software engineers may not know this
>>>>>>>>>>>>> computer
>>>>>>>>>>>>> science:
>>>>>>>>>>>>>
>>>>>>>>>>>>> A halt decider must compute the mapping from its inputs to an
>>>>>>>>>>>>> accept or reject state on the basis of the actual behavior
>>>>>>>>>>>>> that is
>>>>>>>>>>>>> actually specified by these inputs.
>>>>>>>>>>>>>
>>>>>>>>>>>>> computation that halts … the Turing machine will halt
>>>>>>>>>>>>> whenever it
>>>>>>>>>>>>> enters a final state. (Linz:1990:234)
>>>>>>>>>>>>>
>>>>>>>>>>>>> The "ret" instruction of P is its final state.
>>>>>>>>>>>>>
>>>>>>>>>>>>> Linz, Peter 1990. An Introduction to Formal Languages and
>>>>>>>>>>>>> Automata.
>>>>>>>>>>>>> Lexington/Toronto: D. C. Heath and Company. (317-320)
>>>>>>>>>>>>>
>>>>>>>>>>>>
>>>>>>>>>>>> void Px(u32 x)
>>>>>>>>>>>> {
>>>>>>>>>>>> H(x, x);
>>>>>>>>>>>> return;
>>>>>>>>>>>> }
>>>>>>>>>>>>
>>>>>>>>>>>> int main()
>>>>>>>>>>>> {
>>>>>>>>>>>> Output("Input_Halts = ", H((u32)Px, (u32)Px));
>>>>>>>>>>>> }
>>>>>>>>>>>>
>>>>>>>>>>>> ...[000013e8][00102357][00000000] 83c408 add esp,+08
>>>>>>>>>>>> ...[000013eb][00102353][00000000] 50 push eax
>>>>>>>>>>>> ...[000013ec][0010234f][00000427] 6827040000 push 00000427
>>>>>>>>>>>> ---[000013f1][0010234f][00000427] e880f0ffff call 00000476
>>>>>>>>>>>> Input_Halts = 0
>>>>>>>>>>>> ...[000013f6][00102357][00000000] 83c408 add esp,+08
>>>>>>>>>>>> ...[000013f9][00102357][00000000] 33c0 xor eax,eax
>>>>>>>>>>>> ...[000013fb][0010235b][00100000] 5d pop ebp
>>>>>>>>>>>> ...[000013fc][0010235f][00000004] c3 ret
>>>>>>>>>>>> Number of Instructions Executed(16120)
>>>>>>>>>>>>
>>>>>>>>>>>> It gets the answer wrong, i.e. input has not been decided
>>>>>>>>>>>> correctly.
>>>>>>>>>>>> QED.
>>>>>>>>>>>>
>>>>>>>>>>>> /Flibble
>>>>>>>>>>>>
>>>>>>>>>>>
>>>>>>>>>>> You and Richard are insufficiently technically competent at
>>>>>>>>>>> software
>>>>>>>>>>> engineering not meeting these specs:
>>>>>>>>>>>
>>>>>>>>>>> A software engineer must be an expert in: the C programming
>>>>>>>>>>> language,
>>>>>>>>>>> the x86 programming language, exactly how C translates into
>>>>>>>>>>> x86 and
>>>>>>>>>>> the ability to recognize infinite recursion at the x86 assembly
>>>>>>>>>>> language level. No knowledge of the halting problem is required.
>>>>>>>>>>
>>>>>>>>>> I cannot speak for Richard but I have 30+ years C++
>>>>>>>>>> experience; I also
>>>>>>>>>> have C and x86 assembly experience (I once wrote a Zilog Z80A CPU
>>>>>>>>>> emulator in 80286 assembly) and I can recognize an infinite
>>>>>>>>>> recursion;
>>>>>>>>>> the problem is that you cannot recognize the fact that the
>>>>>>>>>> infinite
>>>>>>>>>> recursion only manifests as part of your invalid simulation-based
>>>>>>>>>> omnishambles:
>>>>>>>>> If you are competent then you already know this is true and lie
>>>>>>>>> about it:
>>>>>>>>> Every sufficiently competent software engineer can easily
>>>>>>>>> verify that
>>>>>>>>> the complete and correct x86 emulation of the input to H(Px,Px)
>>>>>>>>> by H
>>>>>>>>> would never reach the "ret" instruction of P because both H and
>>>>>>>>> P would
>>>>>>>>> remain stuck in infinitely recursive emulation.
>>>>>>>>
>>>>>>>> H (if it was constructed correctly) is a computation, and a
>>>>>>>> computation *always* gives the same output for a given input. So
>>>>>>>> it doesn't make sense to say what it "would" do. It either does
>>>>>>>> or does not perform a complete and correct emulation. And
>>>>>>>> because H contains code to abort, and does abort, it does not do
>>>>>>>> a complete emulation.
>>>>>>>>
>>>>>>>> So the input must be given to a UTM, which by definition does a
>>>>>>>> correct and complete simulation, to see what the actual behavior
>>>>>>>> is. UTM(Px,Px) halts, therefore H(Px,Px)==0 is wrong.
>>>>>>>
>>>>>>> Every sufficiently competent software engineer can easily verify
>>>>>>> that
>>>>>>> the complete and correct x86 emulation of the input to H(Px,Px) by H
>>>>>>> would never reach the "ret" instruction of Px because both H and Px
>>>>>>> would remain stuck in infinitely recursive emulation.
>>>>>>
>>>>>> So you just repeated what you said instead of explaining why I'm
>>>>>> wrong. In other words you provided no rebuttal, which can only be
>>>>>> taken to mean that you have none.
>>>>> Your entire basis and all of assumptions was incorrect so when I
>>>>> provided an infallible one to that cannot possibly be correctly
>>>>> refuted
>>>>> you simply dodged it. That is a smart move for a dishonest person that
>>>>> is only interested in rebuttal.
>>>>>
>>>>> I dare you to go back to the prior post and find any error in my
>>>>> airtight correct reasoning. Another dodge will be construed as a tacit
>>>>> admission of defeat.
>>>>
>>>> As stated before H (or more accurately Ha) does not perform a
>>>> complete and correct emulation because it aborts. So by definition
>>>> it cannot be complete.
>>> I never claimed that H(P,P) performs a complete and correct emulation of
>>> its input so your rebuttal is the strawman deception.
>>>
>>> I claimed that H(P,P) correctly predicts that its complete and correct
>>> x86 emulation of its input would never reach the "ret" instruction of P.
>>
>> But since H, or more accurately Ha, *can't* do a correct and complete
>> emulation of its input, your point is moot.
>
> _Infinite_Loop()
> [00001082](01)  55              push ebp
> [00001083](02)  8bec            mov ebp,esp
> [00001085](02)  ebfe            jmp 00001085
> [00001087](01)  5d              pop ebp
> [00001088](01)  c3              ret
> Size in bytes:(0007) [00001088]
>
> Begin Local Halt Decider Simulation   Execution Trace Stored at:211e8f
> ...[00001082][00211e7f][00211e83] 55       push ebp
> ...[00001083][00211e7f][00211e83] 8bec     mov ebp,esp
> ...[00001085][00211e7f][00211e83] ebfe     jmp 00001085
> ...[00001085][00211e7f][00211e83] ebfe     jmp 00001085
> Infinite Loop Detected Simulation Stopped
>
> On the basis of this exact same utterly moronic reasoning because H
> *can't* do a correct and complete emulation of its input, H cannot
> possibly determine that _Infinite_Loop() never halts.
>


Click here to read the complete article
Re: Technically competent Software engineers can verify this halting problem proof refutation [ truism ]

<AfGdncZCoPo1US7_nZ2dnUU7_83NnZ2d@giganews.com>

  copy mid

https://www.novabbs.com/computers/article-flat.php?id=9709&group=comp.ai.philosophy#9709

  copy link   Newsgroups: comp.theory comp.ai.philosophy sci.logic sci.math
Path: i2pn2.org!i2pn.org!usenet.blueworldhosting.com!feed1.usenet.blueworldhosting.com!3.us.feeder.erje.net!feeder.erje.net!news.misty.com!border2.nntp.dca1.giganews.com!nntp.giganews.com!buffer2.nntp.dca1.giganews.com!news.giganews.com.POSTED!not-for-mail
NNTP-Posting-Date: Wed, 22 Jun 2022 21:15:04 -0500
Date: Wed, 22 Jun 2022 21:15:02 -0500
MIME-Version: 1.0
User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:91.0) Gecko/20100101
Thunderbird/91.10.0
Subject: Re: Technically competent Software engineers can verify this halting
problem proof refutation [ truism ]
Content-Language: en-US
Newsgroups: comp.theory,comp.ai.philosophy,sci.logic,sci.math
References: <EOydnaeszcdfHS__nZ2dnUU7_83NnZ2d@giganews.com>
<20220622203106.00003fa2@reddwarf.jmc>
<xqSdnb2KKdOL5i7_nZ2dnUU7_81g4p2d@giganews.com>
<20220622222043.00001cb9@reddwarf.jmc>
<_eidnf40g7wFES7_nZ2dnUU7_8zNnZ2d@giganews.com>
<de67d3d5-10f3-4e28-9b31-082e97c1145en@googlegroups.com>
<MtadnVqn1dCkCy7_nZ2dnUU7_8zNnZ2d@giganews.com>
<5f26b879-5cd4-4f28-b7c4-c3e4ed0614c2n@googlegroups.com>
<9OydnaRCCvQ9PC7_nZ2dnUU7_83NnZ2d@giganews.com>
<58dc4a7a-d635-44bb-bf2a-3a959d9d808an@googlegroups.com>
<SJ-dnXBdiJ6aIi7_nZ2dnUU7_83NnZ2d@giganews.com>
<d59b136e-6411-462f-9b62-229c0ac00608n@googlegroups.com>
<NZmdnRY_I-BpXi7_nZ2dnUU7_83NnZ2d@giganews.com>
<5934b17d-9607-49d1-97db-813a232a6d94n@googlegroups.com>
From: NoO...@NoWhere.com (olcott)
In-Reply-To: <5934b17d-9607-49d1-97db-813a232a6d94n@googlegroups.com>
Content-Type: text/plain; charset=UTF-8; format=flowed
Content-Transfer-Encoding: 8bit
Message-ID: <AfGdncZCoPo1US7_nZ2dnUU7_83NnZ2d@giganews.com>
Lines: 253
X-Usenet-Provider: http://www.giganews.com
X-Trace: sv3-lCA7l//xY+vhNt0QemC0eBtAexxlDYLvMoWKgjPHDYdhuzhb0Awxa4FSeRAZLyKMjUDwsnDEZwfmokf!hyOj6D8n1hXHJMnu+F4Gdz27wVJYHEt4gIAcwT/7JFG5ZGqly4YXJweKM0V864+WqlzQ0eo5fpuF
X-Complaints-To: abuse@giganews.com
X-DMCA-Notifications: http://www.giganews.com/info/dmca.html
X-Abuse-and-DMCA-Info: Please be sure to forward a copy of ALL headers
X-Abuse-and-DMCA-Info: Otherwise we will be unable to process your complaint properly
X-Postfilter: 1.3.40
X-Original-Bytes: 14563
 by: olcott - Thu, 23 Jun 2022 02:15 UTC

On 6/22/2022 8:44 PM, Dennis Bush wrote:
> On Wednesday, June 22, 2022 at 9:38:03 PM UTC-4, olcott wrote:
>> On 6/22/2022 8:21 PM, Dennis Bush wrote:
>>> On Wednesday, June 22, 2022 at 9:17:02 PM UTC-4, olcott wrote:
>>>> On 6/22/2022 8:02 PM, Dennis Bush wrote:
>>>>> On Wednesday, June 22, 2022 at 7:11:35 PM UTC-4, olcott wrote:
>>>>>> On 6/22/2022 5:48 PM, Dennis Bush wrote:
>>>>>>> On Wednesday, June 22, 2022 at 6:22:56 PM UTC-4, olcott wrote:
>>>>>>>> On 6/22/2022 4:53 PM, Dennis Bush wrote:
>>>>>>>>> On Wednesday, June 22, 2022 at 5:41:51 PM UTC-4, olcott wrote:
>>>>>>>>>> On 6/22/2022 4:20 PM, Mr Flibble wrote:
>>>>>>>>>>> On Wed, 22 Jun 2022 15:27:01 -0500
>>>>>>>>>>> olcott <No...@NoWhere.com> wrote:
>>>>>>>>>>>
>>>>>>>>>>>> On 6/22/2022 2:31 PM, Mr Flibble wrote:
>>>>>>>>>>>>> On Tue, 21 Jun 2022 21:38:56 -0500
>>>>>>>>>>>>> olcott <No...@NoWhere.com> wrote:
>>>>>>>>>>>>>
>>>>>>>>>>>>>> #include <stdint.h>
>>>>>>>>>>>>>> #define u32 uint32_t
>>>>>>>>>>>>>>
>>>>>>>>>>>>>> #include <stdint.h>
>>>>>>>>>>>>>> typedef void (*ptr)();
>>>>>>>>>>>>>>
>>>>>>>>>>>>>> void P(ptr x)
>>>>>>>>>>>>>> {
>>>>>>>>>>>>>> if (H(x, x))
>>>>>>>>>>>>>> HERE: goto HERE;
>>>>>>>>>>>>>> return;
>>>>>>>>>>>>>> }
>>>>>>>>>>>>>>
>>>>>>>>>>>>>> int main()
>>>>>>>>>>>>>> {
>>>>>>>>>>>>>> Output("Input_Halts = ", H(P, P));
>>>>>>>>>>>>>> }
>>>>>>>>>>>>>>
>>>>>>>>>>>>>> _P()
>>>>>>>>>>>>>> [000010d2](01) 55 push ebp
>>>>>>>>>>>>>> [000010d3](02) 8bec mov ebp,esp
>>>>>>>>>>>>>> [000010d5](03) 8b4508 mov eax,[ebp+08]
>>>>>>>>>>>>>> [000010d8](01) 50 push eax
>>>>>>>>>>>>>> [000010d9](03) 8b4d08 mov ecx,[ebp+08]
>>>>>>>>>>>>>> [000010dc](01) 51 push ecx
>>>>>>>>>>>>>> [000010dd](05) e820feffff call 00000f02
>>>>>>>>>>>>>> [000010e2](03) 83c408 add esp,+08
>>>>>>>>>>>>>> [000010e5](02) 85c0 test eax,eax
>>>>>>>>>>>>>> [000010e7](02) 7402 jz 000010eb
>>>>>>>>>>>>>> [000010e9](02) ebfe jmp 000010e9
>>>>>>>>>>>>>> [000010eb](01) 5d pop ebp
>>>>>>>>>>>>>> [000010ec](01) c3 ret
>>>>>>>>>>>>>> Size in bytes:(0027) [000010ec]
>>>>>>>>>>>>>>
>>>>>>>>>>>>>> Every sufficiently competent software engineer can easily verify
>>>>>>>>>>>>>> that the complete and correct x86 emulation of the input to H(P,P)
>>>>>>>>>>>>>> by H would never reach the "ret" instruction of P because both H
>>>>>>>>>>>>>> and P would remain stuck in infinitely recursive emulation.
>>>>>>>>>>>>>>
>>>>>>>>>>>>>> If H does correctly determine that this is the case in a finite
>>>>>>>>>>>>>> number of steps then H could reject its input on this basis. Here
>>>>>>>>>>>>>> are the details of exactly how H does this in a finite number of
>>>>>>>>>>>>>> steps.
>>>>>>>>>>>>>>
>>>>>>>>>>>>>> typedef struct Decoded
>>>>>>>>>>>>>> {
>>>>>>>>>>>>>> u32 Address;
>>>>>>>>>>>>>> u32 ESP; // Current value of ESP
>>>>>>>>>>>>>> u32 TOS; // Current value of Top of Stack
>>>>>>>>>>>>>> u32 NumBytes;
>>>>>>>>>>>>>> u32 Simplified_Opcode;
>>>>>>>>>>>>>> u32 Decode_Target;
>>>>>>>>>>>>>> } Decoded_Line_Of_Code;
>>>>>>>>>>>>>>
>>>>>>>>>>>>>> machine stack stack machine assembly
>>>>>>>>>>>>>> address address data code language
>>>>>>>>>>>>>> ======== ======== ======== ========= =============
>>>>>>>>>>>>>> [000010d2][00211e8a][00211e8e] 55 push ebp
>>>>>>>>>>>>>> [000010d3][00211e8a][00211e8e] 8bec mov ebp,esp
>>>>>>>>>>>>>> [000010d5][00211e8a][00211e8e] 8b4508 mov eax,[ebp+08]
>>>>>>>>>>>>>> [000010d8][00211e86][000010d2] 50 push eax // push P
>>>>>>>>>>>>>> [000010d9][00211e86][000010d2] 8b4d08 mov ecx,[ebp+08]
>>>>>>>>>>>>>> [000010dc][00211e82][000010d2] 51 push ecx // push P
>>>>>>>>>>>>>> [000010dd][00211e7e][000010e2] e820feffff call 00000f02 // call H
>>>>>>>>>>>>>> Infinitely Recursive Simulation Detected Simulation Stopped
>>>>>>>>>>>>>>
>>>>>>>>>>>>>> // actual fully operational code in the x86utm operating system
>>>>>>>>>>>>>> u32 H(u32 P, u32 I)
>>>>>>>>>>>>>> {
>>>>>>>>>>>>>> HERE:
>>>>>>>>>>>>>> u32 End_Of_Code;
>>>>>>>>>>>>>> u32 Address_of_H; // 2022-06-17
>>>>>>>>>>>>>> u32 code_end = get_code_end(P);
>>>>>>>>>>>>>> Decoded_Line_Of_Code *decoded = (Decoded_Line_Of_Code*)
>>>>>>>>>>>>>> Allocate(sizeof(Decoded_Line_Of_Code));
>>>>>>>>>>>>>> Registers* master_state = (Registers*)
>>>>>>>>>>>>>> Allocate(sizeof(Registers));
>>>>>>>>>>>>>> Registers* slave_state = (Registers*)
>>>>>>>>>>>>>> Allocate(sizeof(Registers));
>>>>>>>>>>>>>> u32* slave_stack = Allocate(0x10000); // 64k;
>>>>>>>>>>>>>> u32 execution_trace =
>>>>>>>>>>>>>> (u32)Allocate(sizeof(Decoded_Line_Of_Code)
>>>>>>>>>>>>>> * 1000);
>>>>>>>>>>>>>>
>>>>>>>>>>>>>> __asm lea eax, HERE // 2022-06-18
>>>>>>>>>>>>>> __asm sub eax, 6 // 2022-06-18
>>>>>>>>>>>>>> __asm mov Address_of_H, eax // 2022-06-18
>>>>>>>>>>>>>> __asm mov eax, END_OF_CODE
>>>>>>>>>>>>>> __asm mov End_Of_Code, eax
>>>>>>>>>>>>>>
>>>>>>>>>>>>>> Output("Address_of_H:", Address_of_H); // 2022-06-11
>>>>>>>>>>>>>> Init_slave_state(P, I, End_Of_Code, slave_state, slave_stack);
>>>>>>>>>>>>>> Output("\nBegin Simulation Execution Trace Stored at:",
>>>>>>>>>>>>>> execution_trace);
>>>>>>>>>>>>>> if (Decide_Halting(&execution_trace, &decoded, code_end,
>>>>>>>>>>>>>> &master_state, &slave_state, &slave_stack, Address_of_H, P, I))
>>>>>>>>>>>>>> goto END_OF_CODE;
>>>>>>>>>>>>>> return 0; // Does not halt
>>>>>>>>>>>>>> END_OF_CODE:
>>>>>>>>>>>>>> return 1; // Input has normally terminated
>>>>>>>>>>>>>> }
>>>>>>>>>>>>>>
>>>>>>>>>>>>>> H knows its own machine address and on this basis it can easily
>>>>>>>>>>>>>> examine its stored execution_trace of P and determine:
>>>>>>>>>>>>>> (a) P is calling H with the same arguments that H was called with.
>>>>>>>>>>>>>> (b) No instructions in P could possibly escape this otherwise
>>>>>>>>>>>>>> infinitely recursive emulation.
>>>>>>>>>>>>>> (c) H aborts its emulation of P before its call to H is invoked.
>>>>>>>>>>>>>>
>>>>>>>>>>>>>>
>>>>>>>>>>>>>>
>>>>>>>>>>>>>>
>>>>>>>>>>>>>> Technically competent software engineers may not know this computer
>>>>>>>>>>>>>> science:
>>>>>>>>>>>>>>
>>>>>>>>>>>>>> A halt decider must compute the mapping from its inputs to an
>>>>>>>>>>>>>> accept or reject state on the basis of the actual behavior that is
>>>>>>>>>>>>>> actually specified by these inputs.
>>>>>>>>>>>>>>
>>>>>>>>>>>>>> computation that halts … the Turing machine will halt whenever it
>>>>>>>>>>>>>> enters a final state. (Linz:1990:234)
>>>>>>>>>>>>>>
>>>>>>>>>>>>>> The "ret" instruction of P is its final state.
>>>>>>>>>>>>>>
>>>>>>>>>>>>>> Linz, Peter 1990. An Introduction to Formal Languages and Automata.
>>>>>>>>>>>>>> Lexington/Toronto: D. C. Heath and Company. (317-320)
>>>>>>>>>>>>>>
>>>>>>>>>>>>>
>>>>>>>>>>>>> void Px(u32 x)
>>>>>>>>>>>>> {
>>>>>>>>>>>>> H(x, x);
>>>>>>>>>>>>> return;
>>>>>>>>>>>>> }
>>>>>>>>>>>>>
>>>>>>>>>>>>> int main()
>>>>>>>>>>>>> {
>>>>>>>>>>>>> Output("Input_Halts = ", H((u32)Px, (u32)Px));
>>>>>>>>>>>>> }
>>>>>>>>>>>>>
>>>>>>>>>>>>> ...[000013e8][00102357][00000000] 83c408 add esp,+08
>>>>>>>>>>>>> ...[000013eb][00102353][00000000] 50 push eax
>>>>>>>>>>>>> ...[000013ec][0010234f][00000427] 6827040000 push 00000427
>>>>>>>>>>>>> ---[000013f1][0010234f][00000427] e880f0ffff call 00000476
>>>>>>>>>>>>> Input_Halts = 0
>>>>>>>>>>>>> ...[000013f6][00102357][00000000] 83c408 add esp,+08
>>>>>>>>>>>>> ...[000013f9][00102357][00000000] 33c0 xor eax,eax
>>>>>>>>>>>>> ...[000013fb][0010235b][00100000] 5d pop ebp
>>>>>>>>>>>>> ...[000013fc][0010235f][00000004] c3 ret
>>>>>>>>>>>>> Number of Instructions Executed(16120)
>>>>>>>>>>>>>
>>>>>>>>>>>>> It gets the answer wrong, i.e. input has not been decided correctly.
>>>>>>>>>>>>> QED.
>>>>>>>>>>>>>
>>>>>>>>>>>>> /Flibble
>>>>>>>>>>>>>
>>>>>>>>>>>>
>>>>>>>>>>>> You and Richard are insufficiently technically competent at software
>>>>>>>>>>>> engineering not meeting these specs:
>>>>>>>>>>>>
>>>>>>>>>>>> A software engineer must be an expert in: the C programming language,
>>>>>>>>>>>> the x86 programming language, exactly how C translates into x86 and
>>>>>>>>>>>> the ability to recognize infinite recursion at the x86 assembly
>>>>>>>>>>>> language level. No knowledge of the halting problem is required.
>>>>>>>>>>>
>>>>>>>>>>> I cannot speak for Richard but I have 30+ years C++ experience; I also
>>>>>>>>>>> have C and x86 assembly experience (I once wrote a Zilog Z80A CPU
>>>>>>>>>>> emulator in 80286 assembly) and I can recognize an infinite recursion;
>>>>>>>>>>> the problem is that you cannot recognize the fact that the infinite
>>>>>>>>>>> recursion only manifests as part of your invalid simulation-based
>>>>>>>>>>> omnishambles:
>>>>>>>>>> If you are competent then you already know this is true and lie about it:
>>>>>>>>>> Every sufficiently competent software engineer can easily verify that
>>>>>>>>>> the complete and correct x86 emulation of the input to H(Px,Px) by H
>>>>>>>>>> would never reach the "ret" instruction of P because both H and P would
>>>>>>>>>> remain stuck in infinitely recursive emulation.
>>>>>>>>>
>>>>>>>>> H (if it was constructed correctly) is a computation, and a computation *always* gives the same output for a given input. So it doesn't make sense to say what it "would" do. It either does or does not perform a complete and correct emulation. And because H contains code to abort, and does abort, it does not do a complete emulation.
>>>>>>>>>
>>>>>>>>> So the input must be given to a UTM, which by definition does a correct and complete simulation, to see what the actual behavior is. UTM(Px,Px) halts, therefore H(Px,Px)==0 is wrong.
>>>>>>>>
>>>>>>>> Every sufficiently competent software engineer can easily verify that
>>>>>>>> the complete and correct x86 emulation of the input to H(Px,Px) by H
>>>>>>>> would never reach the "ret" instruction of Px because both H and Px
>>>>>>>> would remain stuck in infinitely recursive emulation.
>>>>>>>
>>>>>>> So you just repeated what you said instead of explaining why I'm wrong. In other words you provided no rebuttal, which can only be taken to mean that you have none.
>>>>>> Your entire basis and all of assumptions was incorrect so when I
>>>>>> provided an infallible one to that cannot possibly be correctly refuted
>>>>>> you simply dodged it. That is a smart move for a dishonest person that
>>>>>> is only interested in rebuttal.
>>>>>>
>>>>>> I dare you to go back to the prior post and find any error in my
>>>>>> airtight correct reasoning. Another dodge will be construed as a tacit
>>>>>> admission of defeat.
>>>>>
>>>>> As stated before H (or more accurately Ha) does not perform a complete and correct emulation because it aborts. So by definition it cannot be complete.
>>>> I never claimed that H(P,P) performs a complete and correct emulation of
>>>> its input so your rebuttal is the strawman deception.
>>>>
>>>> I claimed that H(P,P) correctly predicts that its complete and correct
>>>> x86 emulation of its input would never reach the "ret" instruction of P.
>>>
>>> But since H, or more accurately Ha, *can't* do a correct and complete emulation of its input, your point is moot.
>> _Infinite_Loop()
>> [00001082](01) 55 push ebp
>> [00001083](02) 8bec mov ebp,esp
>> [00001085](02) ebfe jmp 00001085
>> [00001087](01) 5d pop ebp
>> [00001088](01) c3 ret
>> Size in bytes:(0007) [00001088]
>>
>> Begin Local Halt Decider Simulation Execution Trace Stored at:211e8f
>> ...[00001082][00211e7f][00211e83] 55 push ebp
>> ...[00001083][00211e7f][00211e83] 8bec mov ebp,esp
>> ...[00001085][00211e7f][00211e83] ebfe jmp 00001085
>> ...[00001085][00211e7f][00211e83] ebfe jmp 00001085
>> Infinite Loop Detected Simulation Stopped
>>
>> On the basis of this exact same utterly moronic reasoning because H
>> *can't* do a correct and complete emulation of its input, H cannot
>> possibly determine that _Infinite_Loop() never halts.
>
> Now who's using the strawman error? Just because H can determine that _Infinite_Loop does not halt doesn't mean that it gets other cases right. B


Click here to read the complete article
Re: Technically competent Software engineers can verify this halting problem proof refutation [ full closure ]

<jeKdndsSjJTDUC7_nZ2dnUU7_83NnZ2d@giganews.com>

  copy mid

https://www.novabbs.com/computers/article-flat.php?id=9710&group=comp.ai.philosophy#9710

  copy link   Newsgroups: comp.theory comp.ai.philosophy sci.logic sci.math
Path: i2pn2.org!i2pn.org!weretis.net!feeder6.news.weretis.net!news.misty.com!border2.nntp.dca1.giganews.com!nntp.giganews.com!buffer2.nntp.dca1.giganews.com!buffer1.nntp.dca1.giganews.com!news.giganews.com.POSTED!not-for-mail
NNTP-Posting-Date: Wed, 22 Jun 2022 21:18:06 -0500
Date: Wed, 22 Jun 2022 21:18:05 -0500
MIME-Version: 1.0
User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:91.0) Gecko/20100101
Thunderbird/91.10.0
Subject: Re: Technically competent Software engineers can verify this halting
problem proof refutation [ full closure ]
Content-Language: en-US
Newsgroups: comp.theory,comp.ai.philosophy,sci.logic,sci.math
References: <EOydnaeszcdfHS__nZ2dnUU7_83NnZ2d@giganews.com>
<20220622203106.00003fa2@reddwarf.jmc>
<xqSdnb2KKdOL5i7_nZ2dnUU7_81g4p2d@giganews.com>
<TwOsK.191531$JVi.174704@fx17.iad>
<N5WdnY_iDptAKC7_nZ2dnUU7_8xh4p2d@giganews.com>
<nLOsK.9452$mY1.1924@fx01.iad>
<3LmdnVllU6W8Jy7_nZ2dnUU7_8xh4p2d@giganews.com>
<j8PsK.15112$%i2.4898@fx48.iad>
<s9CdndzLkud5XC7_nZ2dnUU7_83NnZ2d@giganews.com>
<%sPsK.15923$nZ1.10923@fx05.iad>
<NZmdnRE_I-AmWS7_nZ2dnUU7_81g4p2d@giganews.com>
<RAPsK.191532$JVi.129665@fx17.iad>
From: NoO...@NoWhere.com (olcott)
In-Reply-To: <RAPsK.191532$JVi.129665@fx17.iad>
Content-Type: text/plain; charset=UTF-8; format=flowed
Content-Transfer-Encoding: 8bit
Message-ID: <jeKdndsSjJTDUC7_nZ2dnUU7_83NnZ2d@giganews.com>
Lines: 192
X-Usenet-Provider: http://www.giganews.com
X-Trace: sv3-wFLKBIZ7yyEJn8NAqbPwJxvBCi7NPktKViZFEiIZ2j7OgStdm4Un4WnD1eEGz+3glfVNVRZZZrR7bl1!4MYi8Wk/tl4ozASl9nwh81OAC2ZJc2y1TN4d2PIxdZvVFtusJYrfGxBymLX1J9WdeQkElT8HU8Rm
X-Complaints-To: abuse@giganews.com
X-DMCA-Notifications: http://www.giganews.com/info/dmca.html
X-Abuse-and-DMCA-Info: Please be sure to forward a copy of ALL headers
X-Abuse-and-DMCA-Info: Otherwise we will be unable to process your complaint properly
X-Postfilter: 1.3.40
X-Original-Bytes: 9663
 by: olcott - Thu, 23 Jun 2022 02:18 UTC

On 6/22/2022 8:45 PM, Richard Damon wrote:
> On 6/22/22 9:41 PM, olcott wrote:
>> On 6/22/2022 8:36 PM, Richard Damon wrote:
>>> On 6/22/22 9:29 PM, olcott wrote:
>>>> On 6/22/2022 8:14 PM, Richard Damon wrote:
>>>>> On 6/22/22 8:55 PM, olcott wrote:
>>>>>> On 6/22/2022 7:48 PM, Richard Damon wrote:
>>>>>>> On 6/22/22 8:37 PM, olcott wrote:
>>>>>>
>>>>>>>> First you agree that my words are perfectly correct within their
>>>>>>>> specified context
>>>>>>>
>>>>>>> Since you haven't actualy defined you context, and imply that it
>>>>>>> is the halting problem, where they can not be correct, that is
>>>>>>> not possible.
>>>>>>>>
>>>>>> First you agree that these words are 100% correct within the
>>>>>> context of software engineering totally ignoring the context of
>>>>>> the halting problem.
>>>>>>
>>>>>> #include <stdint.h>
>>>>>> #define u32 uint32_t
>>>>>>
>>>>>> #include <stdint.h>
>>>>>> typedef void (*ptr)();
>>>>>>
>>>>>> void P(ptr x)
>>>>>> {
>>>>>>    if (H(x, x))
>>>>>>      HERE: goto HERE;
>>>>>>    return;
>>>>>> }
>>>>>>
>>>>>> int main()
>>>>>> {
>>>>>>    Output("Input_Halts = ", H(P, P));
>>>>>> }
>>>>>>
>>>>>> _P()
>>>>>> [000010d2](01)  55              push ebp
>>>>>> [000010d3](02)  8bec            mov ebp,esp
>>>>>> [000010d5](03)  8b4508          mov eax,[ebp+08]
>>>>>> [000010d8](01)  50              push eax
>>>>>> [000010d9](03)  8b4d08          mov ecx,[ebp+08]
>>>>>> [000010dc](01)  51              push ecx
>>>>>> [000010dd](05)  e820feffff      call 00000f02
>>>>>> [000010e2](03)  83c408          add esp,+08
>>>>>> [000010e5](02)  85c0            test eax,eax
>>>>>> [000010e7](02)  7402            jz 000010eb
>>>>>> [000010e9](02)  ebfe            jmp 000010e9
>>>>>> [000010eb](01)  5d              pop ebp
>>>>>> [000010ec](01)  c3              ret
>>>>>> Size in bytes:(0027) [000010ec]
>>>>>>
>>>>>> Every sufficiently competent software engineer can easily verify
>>>>>> that the complete and correct x86 emulation of the input to H(P,P)
>>>>>> by H would never reach the "ret" instruction of P because both H
>>>>>> and P would remain stuck in infinitely recursive emulation.
>>>>>>
>>>>>
>>>>> So, if H actually is a program that does a COMPLETE and correct x86
>>>>> emulation of its input, then YES, as I have said many time before,
>>>>> this combination is non-halting.
>>>>>
>>>>> The fact that you need to keep going back to this, and seem to just
>>>>> be refusing to accept the conditions under which you have proved it
>>>>> just shows the problems with your thought process.
>>>>>
>>>>>> If H does correctly determine that this is the case in a finite
>>>>>> number of steps then H could reject its input on this basis. Here
>>>>>> are the details of exactly how H does this in a finite number of
>>>>>> steps.
>>>>>
>>>>> Except that NOW H isn't the H we were just talking about, so you
>>>>> are just proving that you are either lying or an idiot.
>>>>>
>>>>> Remember, the first analysis had the CONDITION on it that H did a
>>>>> COMPLETE and correct x86 emulation.
>>>>>
>>>>> Once you remove that property form H, that conclusion no long holds
>>>>> and you are shown to be a lying idiot.
>>>>>
>>>>>>
>>>>>> typedef struct Decoded
>>>>>> {
>>>>>>    u32 Address;
>>>>>>    u32 ESP;          // Current value of ESP
>>>>>>    u32 TOS;          // Current value of Top of Stack
>>>>>>    u32 NumBytes;
>>>>>>    u32 Simplified_Opcode;
>>>>>>    u32 Decode_Target;
>>>>>> } Decoded_Line_Of_Code;
>>>>>>
>>>>>>   machine   stack     stack     machine    assembly
>>>>>>   address   address   data      code       language
>>>>>>   ========  ========  ========  =========  =============
>>>>>> [000010d2][00211e8a][00211e8e] 55         push ebp
>>>>>> [000010d3][00211e8a][00211e8e] 8bec       mov ebp,esp
>>>>>> [000010d5][00211e8a][00211e8e] 8b4508     mov eax,[ebp+08]
>>>>>> [000010d8][00211e86][000010d2] 50         push eax        // push P
>>>>>> [000010d9][00211e86][000010d2] 8b4d08     mov ecx,[ebp+08]
>>>>>> [000010dc][00211e82][000010d2] 51         push ecx        // push P
>>>>>> [000010dd][00211e7e][000010e2] e820feffff call 00000f02   // call H
>>>>>> Infinitely Recursive Simulation Detected Simulation Stopped
>>>>>>
>>>>>> // actual fully operational code in the x86utm operating system
>>>>>> u32 H(u32 P, u32 I)
>>>>>> {
>>>>>> HERE:
>>>>>>    u32 End_Of_Code;
>>>>>>    u32 Address_of_H;              // 2022-06-17
>>>>>>    u32 code_end                  = get_code_end(P);
>>>>>>    Decoded_Line_Of_Code *decoded = (Decoded_Line_Of_Code*)
>>>>>> Allocate(sizeof(Decoded_Line_Of_Code));
>>>>>>    Registers*  master_state      = (Registers*)
>>>>>> Allocate(sizeof(Registers));
>>>>>>    Registers*  slave_state       = (Registers*)
>>>>>> Allocate(sizeof(Registers));
>>>>>>    u32*        slave_stack       = Allocate(0x10000); // 64k;
>>>>>>    u32  execution_trace =
>>>>>> (u32)Allocate(sizeof(Decoded_Line_Of_Code) * 1000);
>>>>>>
>>>>>>    __asm lea eax, HERE             // 2022-06-18
>>>>>>    __asm sub eax, 6                // 2022-06-18
>>>>>>    __asm mov Address_of_H, eax     // 2022-06-18
>>>>>>    __asm mov eax, END_OF_CODE
>>>>>>    __asm mov End_Of_Code, eax
>>>>>>
>>>>>>    Output("Address_of_H:", Address_of_H); // 2022-06-11
>>>>>>    Init_slave_state(P, I, End_Of_Code, slave_state, slave_stack);
>>>>>>    Output("\nBegin Simulation   Execution Trace Stored at:",
>>>>>> execution_trace);
>>>>>>    if (Decide_Halting(&execution_trace, &decoded, code_end,
>>>>>> &master_state,
>>>>>>                       &slave_state, &slave_stack, Address_of_H, P,
>>>>>> I))
>>>>>>        goto END_OF_CODE;
>>>>>>    return 0;  // Does not halt
>>>>>> END_OF_CODE:
>>>>>>    return 1; // Input has normally terminated
>>>>>> }
>>>>>>
>>>>>> H knows its own machine address and on this basis it can easily
>>>>>> examine its stored execution_trace of P and determine:
>>>>>> (a) P is calling H with the same arguments that H was called with.
>>>>>> (b) No instructions in P could possibly escape this otherwise
>>>>>> infinitely recursive emulation.
>>>>>> (c) H aborts its emulation of P before its call to H is invoked.
>>>>>>
>>>>>>
>>>>>
>>>>> (b) is NOT a correct rule. Thos has been pointed out before, and
>>>>> you have ignored it.
>>>>>
>>>> That you don't understand what I mean does not mean that it is an
>>>> incorrect rule.
>>>>
>>>> Here is an example where P does have instruction that could possibly
>>>> escape this otherwise infinitely recursive emulation:
>>>>
>>>>
>>>> void P(ptr x)
>>>> {
>>>> static count = 0;
>>>>    count++;
>>>>    if count > 3)
>>>>      return;
>>>>    if (H(x, x))
>>>>      HERE: goto HERE;
>>>>    return;
>>>> }
>>>>
>>>
>>> FALLACY of proof by example. I never said that (b) isn't sometimes
>>> true, just it isn't an always true condition. You fail at elementary
>>> logic.
>>
>> Try and find a valid counter-example. Every attempt at rebuttal that
>> is not a valid counter-example is one form of deception or another.
>>
>>
>
> P(P)


Click here to read the complete article
Re: Technically competent Software engineers can verify this halting problem proof refutation [ truism ]

<J7QsK.4920$kY1.4571@fx06.iad>

  copy mid

https://www.novabbs.com/computers/article-flat.php?id=9711&group=comp.ai.philosophy#9711

  copy link   Newsgroups: comp.theory comp.ai.philosophy sci.logic sci.math
Path: i2pn2.org!i2pn.org!usenet.blueworldhosting.com!feed1.usenet.blueworldhosting.com!peer02.iad!feed-me.highwinds-media.com!news.highwinds-media.com!fx06.iad.POSTED!not-for-mail
MIME-Version: 1.0
User-Agent: Mozilla/5.0 (Macintosh; Intel Mac OS X 10.15; rv:91.0)
Gecko/20100101 Thunderbird/91.10.0
Subject: Re: Technically competent Software engineers can verify this halting
problem proof refutation [ truism ]
Content-Language: en-US
Newsgroups: comp.theory,comp.ai.philosophy,sci.logic,sci.math
References: <EOydnaeszcdfHS__nZ2dnUU7_83NnZ2d@giganews.com>
<20220622203106.00003fa2@reddwarf.jmc>
<xqSdnb2KKdOL5i7_nZ2dnUU7_81g4p2d@giganews.com>
<20220622222043.00001cb9@reddwarf.jmc>
<_eidnf40g7wFES7_nZ2dnUU7_8zNnZ2d@giganews.com>
<de67d3d5-10f3-4e28-9b31-082e97c1145en@googlegroups.com>
<MtadnVqn1dCkCy7_nZ2dnUU7_8zNnZ2d@giganews.com>
<5f26b879-5cd4-4f28-b7c4-c3e4ed0614c2n@googlegroups.com>
<9OydnaRCCvQ9PC7_nZ2dnUU7_83NnZ2d@giganews.com>
<58dc4a7a-d635-44bb-bf2a-3a959d9d808an@googlegroups.com>
<SJ-dnXBdiJ6aIi7_nZ2dnUU7_83NnZ2d@giganews.com>
<d59b136e-6411-462f-9b62-229c0ac00608n@googlegroups.com>
<NZmdnRY_I-BpXi7_nZ2dnUU7_83NnZ2d@giganews.com>
<5934b17d-9607-49d1-97db-813a232a6d94n@googlegroups.com>
<AfGdncZCoPo1US7_nZ2dnUU7_83NnZ2d@giganews.com>
From: Rich...@Damon-Family.org (Richard Damon)
In-Reply-To: <AfGdncZCoPo1US7_nZ2dnUU7_83NnZ2d@giganews.com>
Content-Type: text/plain; charset=UTF-8; format=flowed
Content-Transfer-Encoding: 8bit
Lines: 330
Message-ID: <J7QsK.4920$kY1.4571@fx06.iad>
X-Complaints-To: abuse@easynews.com
Organization: Forte - www.forteinc.com
X-Complaints-Info: Please be sure to forward a copy of ALL headers otherwise we will be unable to process your complaint properly.
Date: Wed, 22 Jun 2022 22:22:33 -0400
X-Received-Bytes: 15993
 by: Richard Damon - Thu, 23 Jun 2022 02:22 UTC

On 6/22/22 10:15 PM, olcott wrote:
> On 6/22/2022 8:44 PM, Dennis Bush wrote:
>> On Wednesday, June 22, 2022 at 9:38:03 PM UTC-4, olcott wrote:
>>> On 6/22/2022 8:21 PM, Dennis Bush wrote:
>>>> On Wednesday, June 22, 2022 at 9:17:02 PM UTC-4, olcott wrote:
>>>>> On 6/22/2022 8:02 PM, Dennis Bush wrote:
>>>>>> On Wednesday, June 22, 2022 at 7:11:35 PM UTC-4, olcott wrote:
>>>>>>> On 6/22/2022 5:48 PM, Dennis Bush wrote:
>>>>>>>> On Wednesday, June 22, 2022 at 6:22:56 PM UTC-4, olcott wrote:
>>>>>>>>> On 6/22/2022 4:53 PM, Dennis Bush wrote:
>>>>>>>>>> On Wednesday, June 22, 2022 at 5:41:51 PM UTC-4, olcott wrote:
>>>>>>>>>>> On 6/22/2022 4:20 PM, Mr Flibble wrote:
>>>>>>>>>>>> On Wed, 22 Jun 2022 15:27:01 -0500
>>>>>>>>>>>> olcott <No...@NoWhere.com> wrote:
>>>>>>>>>>>>
>>>>>>>>>>>>> On 6/22/2022 2:31 PM, Mr Flibble wrote:
>>>>>>>>>>>>>> On Tue, 21 Jun 2022 21:38:56 -0500
>>>>>>>>>>>>>> olcott <No...@NoWhere.com> wrote:
>>>>>>>>>>>>>>
>>>>>>>>>>>>>>> #include <stdint.h>
>>>>>>>>>>>>>>> #define u32 uint32_t
>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>> #include <stdint.h>
>>>>>>>>>>>>>>> typedef void (*ptr)();
>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>> void P(ptr x)
>>>>>>>>>>>>>>> {
>>>>>>>>>>>>>>> if (H(x, x))
>>>>>>>>>>>>>>> HERE: goto HERE;
>>>>>>>>>>>>>>> return;
>>>>>>>>>>>>>>> }
>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>> int main()
>>>>>>>>>>>>>>> {
>>>>>>>>>>>>>>> Output("Input_Halts = ", H(P, P));
>>>>>>>>>>>>>>> }
>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>> _P()
>>>>>>>>>>>>>>> [000010d2](01) 55 push ebp
>>>>>>>>>>>>>>> [000010d3](02) 8bec mov ebp,esp
>>>>>>>>>>>>>>> [000010d5](03) 8b4508 mov eax,[ebp+08]
>>>>>>>>>>>>>>> [000010d8](01) 50 push eax
>>>>>>>>>>>>>>> [000010d9](03) 8b4d08 mov ecx,[ebp+08]
>>>>>>>>>>>>>>> [000010dc](01) 51 push ecx
>>>>>>>>>>>>>>> [000010dd](05) e820feffff call 00000f02
>>>>>>>>>>>>>>> [000010e2](03) 83c408 add esp,+08
>>>>>>>>>>>>>>> [000010e5](02) 85c0 test eax,eax
>>>>>>>>>>>>>>> [000010e7](02) 7402 jz 000010eb
>>>>>>>>>>>>>>> [000010e9](02) ebfe jmp 000010e9
>>>>>>>>>>>>>>> [000010eb](01) 5d pop ebp
>>>>>>>>>>>>>>> [000010ec](01) c3 ret
>>>>>>>>>>>>>>> Size in bytes:(0027) [000010ec]
>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>> Every sufficiently competent software engineer can easily
>>>>>>>>>>>>>>> verify
>>>>>>>>>>>>>>> that the complete and correct x86 emulation of the input
>>>>>>>>>>>>>>> to H(P,P)
>>>>>>>>>>>>>>> by H would never reach the "ret" instruction of P because
>>>>>>>>>>>>>>> both H
>>>>>>>>>>>>>>> and P would remain stuck in infinitely recursive emulation.
>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>> If H does correctly determine that this is the case in a
>>>>>>>>>>>>>>> finite
>>>>>>>>>>>>>>> number of steps then H could reject its input on this
>>>>>>>>>>>>>>> basis. Here
>>>>>>>>>>>>>>> are the details of exactly how H does this in a finite
>>>>>>>>>>>>>>> number of
>>>>>>>>>>>>>>> steps.
>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>> typedef struct Decoded
>>>>>>>>>>>>>>> {
>>>>>>>>>>>>>>> u32 Address;
>>>>>>>>>>>>>>> u32 ESP; // Current value of ESP
>>>>>>>>>>>>>>> u32 TOS; // Current value of Top of Stack
>>>>>>>>>>>>>>> u32 NumBytes;
>>>>>>>>>>>>>>> u32 Simplified_Opcode;
>>>>>>>>>>>>>>> u32 Decode_Target;
>>>>>>>>>>>>>>> } Decoded_Line_Of_Code;
>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>> machine stack stack machine assembly
>>>>>>>>>>>>>>> address address data code language
>>>>>>>>>>>>>>> ======== ======== ======== ========= =============
>>>>>>>>>>>>>>> [000010d2][00211e8a][00211e8e] 55 push ebp
>>>>>>>>>>>>>>> [000010d3][00211e8a][00211e8e] 8bec mov ebp,esp
>>>>>>>>>>>>>>> [000010d5][00211e8a][00211e8e] 8b4508 mov eax,[ebp+08]
>>>>>>>>>>>>>>> [000010d8][00211e86][000010d2] 50 push eax // push P
>>>>>>>>>>>>>>> [000010d9][00211e86][000010d2] 8b4d08 mov ecx,[ebp+08]
>>>>>>>>>>>>>>> [000010dc][00211e82][000010d2] 51 push ecx // push P
>>>>>>>>>>>>>>> [000010dd][00211e7e][000010e2] e820feffff call 00000f02
>>>>>>>>>>>>>>> // call H
>>>>>>>>>>>>>>> Infinitely Recursive Simulation Detected Simulation Stopped
>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>> // actual fully operational code in the x86utm operating
>>>>>>>>>>>>>>> system
>>>>>>>>>>>>>>> u32 H(u32 P, u32 I)
>>>>>>>>>>>>>>> {
>>>>>>>>>>>>>>> HERE:
>>>>>>>>>>>>>>> u32 End_Of_Code;
>>>>>>>>>>>>>>> u32 Address_of_H; // 2022-06-17
>>>>>>>>>>>>>>> u32 code_end = get_code_end(P);
>>>>>>>>>>>>>>> Decoded_Line_Of_Code *decoded = (Decoded_Line_Of_Code*)
>>>>>>>>>>>>>>> Allocate(sizeof(Decoded_Line_Of_Code));
>>>>>>>>>>>>>>> Registers* master_state = (Registers*)
>>>>>>>>>>>>>>> Allocate(sizeof(Registers));
>>>>>>>>>>>>>>> Registers* slave_state = (Registers*)
>>>>>>>>>>>>>>> Allocate(sizeof(Registers));
>>>>>>>>>>>>>>> u32* slave_stack = Allocate(0x10000); // 64k;
>>>>>>>>>>>>>>> u32 execution_trace =
>>>>>>>>>>>>>>> (u32)Allocate(sizeof(Decoded_Line_Of_Code)
>>>>>>>>>>>>>>> * 1000);
>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>> __asm lea eax, HERE // 2022-06-18
>>>>>>>>>>>>>>> __asm sub eax, 6 // 2022-06-18
>>>>>>>>>>>>>>> __asm mov Address_of_H, eax // 2022-06-18
>>>>>>>>>>>>>>> __asm mov eax, END_OF_CODE
>>>>>>>>>>>>>>> __asm mov End_Of_Code, eax
>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>> Output("Address_of_H:", Address_of_H); // 2022-06-11
>>>>>>>>>>>>>>> Init_slave_state(P, I, End_Of_Code, slave_state,
>>>>>>>>>>>>>>> slave_stack);
>>>>>>>>>>>>>>> Output("\nBegin Simulation Execution Trace Stored at:",
>>>>>>>>>>>>>>> execution_trace);
>>>>>>>>>>>>>>> if (Decide_Halting(&execution_trace, &decoded, code_end,
>>>>>>>>>>>>>>> &master_state, &slave_state, &slave_stack, Address_of_H,
>>>>>>>>>>>>>>> P, I))
>>>>>>>>>>>>>>> goto END_OF_CODE;
>>>>>>>>>>>>>>> return 0; // Does not halt
>>>>>>>>>>>>>>> END_OF_CODE:
>>>>>>>>>>>>>>> return 1; // Input has normally terminated
>>>>>>>>>>>>>>> }
>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>> H knows its own machine address and on this basis it can
>>>>>>>>>>>>>>> easily
>>>>>>>>>>>>>>> examine its stored execution_trace of P and determine:
>>>>>>>>>>>>>>> (a) P is calling H with the same arguments that H was
>>>>>>>>>>>>>>> called with.
>>>>>>>>>>>>>>> (b) No instructions in P could possibly escape this
>>>>>>>>>>>>>>> otherwise
>>>>>>>>>>>>>>> infinitely recursive emulation.
>>>>>>>>>>>>>>> (c) H aborts its emulation of P before its call to H is
>>>>>>>>>>>>>>> invoked.
>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>> Technically competent software engineers may not know
>>>>>>>>>>>>>>> this computer
>>>>>>>>>>>>>>> science:
>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>> A halt decider must compute the mapping from its inputs
>>>>>>>>>>>>>>> to an
>>>>>>>>>>>>>>> accept or reject state on the basis of the actual
>>>>>>>>>>>>>>> behavior that is
>>>>>>>>>>>>>>> actually specified by these inputs.
>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>> computation that halts … the Turing machine will halt
>>>>>>>>>>>>>>> whenever it
>>>>>>>>>>>>>>> enters a final state. (Linz:1990:234)
>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>> The "ret" instruction of P is its final state.
>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>> Linz, Peter 1990. An Introduction to Formal Languages and
>>>>>>>>>>>>>>> Automata.
>>>>>>>>>>>>>>> Lexington/Toronto: D. C. Heath and Company. (317-320)
>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>
>>>>>>>>>>>>>> void Px(u32 x)
>>>>>>>>>>>>>> {
>>>>>>>>>>>>>> H(x, x);
>>>>>>>>>>>>>> return;
>>>>>>>>>>>>>> }
>>>>>>>>>>>>>>
>>>>>>>>>>>>>> int main()
>>>>>>>>>>>>>> {
>>>>>>>>>>>>>> Output("Input_Halts = ", H((u32)Px, (u32)Px));
>>>>>>>>>>>>>> }
>>>>>>>>>>>>>>
>>>>>>>>>>>>>> ...[000013e8][00102357][00000000] 83c408 add esp,+08
>>>>>>>>>>>>>> ...[000013eb][00102353][00000000] 50 push eax
>>>>>>>>>>>>>> ...[000013ec][0010234f][00000427] 6827040000 push 00000427
>>>>>>>>>>>>>> ---[000013f1][0010234f][00000427] e880f0ffff call 00000476
>>>>>>>>>>>>>> Input_Halts = 0
>>>>>>>>>>>>>> ...[000013f6][00102357][00000000] 83c408 add esp,+08
>>>>>>>>>>>>>> ...[000013f9][00102357][00000000] 33c0 xor eax,eax
>>>>>>>>>>>>>> ...[000013fb][0010235b][00100000] 5d pop ebp
>>>>>>>>>>>>>> ...[000013fc][0010235f][00000004] c3 ret
>>>>>>>>>>>>>> Number of Instructions Executed(16120)
>>>>>>>>>>>>>>
>>>>>>>>>>>>>> It gets the answer wrong, i.e. input has not been decided
>>>>>>>>>>>>>> correctly.
>>>>>>>>>>>>>> QED.
>>>>>>>>>>>>>>
>>>>>>>>>>>>>> /Flibble
>>>>>>>>>>>>>>
>>>>>>>>>>>>>
>>>>>>>>>>>>> You and Richard are insufficiently technically competent at
>>>>>>>>>>>>> software
>>>>>>>>>>>>> engineering not meeting these specs:
>>>>>>>>>>>>>
>>>>>>>>>>>>> A software engineer must be an expert in: the C programming
>>>>>>>>>>>>> language,
>>>>>>>>>>>>> the x86 programming language, exactly how C translates into
>>>>>>>>>>>>> x86 and
>>>>>>>>>>>>> the ability to recognize infinite recursion at the x86
>>>>>>>>>>>>> assembly
>>>>>>>>>>>>> language level. No knowledge of the halting problem is
>>>>>>>>>>>>> required.
>>>>>>>>>>>>
>>>>>>>>>>>> I cannot speak for Richard but I have 30+ years C++
>>>>>>>>>>>> experience; I also
>>>>>>>>>>>> have C and x86 assembly experience (I once wrote a Zilog
>>>>>>>>>>>> Z80A CPU
>>>>>>>>>>>> emulator in 80286 assembly) and I can recognize an infinite
>>>>>>>>>>>> recursion;
>>>>>>>>>>>> the problem is that you cannot recognize the fact that the
>>>>>>>>>>>> infinite
>>>>>>>>>>>> recursion only manifests as part of your invalid
>>>>>>>>>>>> simulation-based
>>>>>>>>>>>> omnishambles:
>>>>>>>>>>> If you are competent then you already know this is true and
>>>>>>>>>>> lie about it:
>>>>>>>>>>> Every sufficiently competent software engineer can easily
>>>>>>>>>>> verify that
>>>>>>>>>>> the complete and correct x86 emulation of the input to
>>>>>>>>>>> H(Px,Px) by H
>>>>>>>>>>> would never reach the "ret" instruction of P because both H
>>>>>>>>>>> and P would
>>>>>>>>>>> remain stuck in infinitely recursive emulation.
>>>>>>>>>>
>>>>>>>>>> H (if it was constructed correctly) is a computation, and a
>>>>>>>>>> computation *always* gives the same output for a given input.
>>>>>>>>>> So it doesn't make sense to say what it "would" do. It either
>>>>>>>>>> does or does not perform a complete and correct emulation. And
>>>>>>>>>> because H contains code to abort, and does abort, it does not
>>>>>>>>>> do a complete emulation.
>>>>>>>>>>
>>>>>>>>>> So the input must be given to a UTM, which by definition does
>>>>>>>>>> a correct and complete simulation, to see what the actual
>>>>>>>>>> behavior is. UTM(Px,Px) halts, therefore H(Px,Px)==0 is wrong.
>>>>>>>>>
>>>>>>>>> Every sufficiently competent software engineer can easily
>>>>>>>>> verify that
>>>>>>>>> the complete and correct x86 emulation of the input to H(Px,Px)
>>>>>>>>> by H
>>>>>>>>> would never reach the "ret" instruction of Px because both H
>>>>>>>>> and Px
>>>>>>>>> would remain stuck in infinitely recursive emulation.
>>>>>>>>
>>>>>>>> So you just repeated what you said instead of explaining why I'm
>>>>>>>> wrong. In other words you provided no rebuttal, which can only
>>>>>>>> be taken to mean that you have none.
>>>>>>> Your entire basis and all of assumptions was incorrect so when I
>>>>>>> provided an infallible one to that cannot possibly be correctly
>>>>>>> refuted
>>>>>>> you simply dodged it. That is a smart move for a dishonest person
>>>>>>> that
>>>>>>> is only interested in rebuttal.
>>>>>>>
>>>>>>> I dare you to go back to the prior post and find any error in my
>>>>>>> airtight correct reasoning. Another dodge will be construed as a
>>>>>>> tacit
>>>>>>> admission of defeat.
>>>>>>
>>>>>> As stated before H (or more accurately Ha) does not perform a
>>>>>> complete and correct emulation because it aborts. So by definition
>>>>>> it cannot be complete.
>>>>> I never claimed that H(P,P) performs a complete and correct
>>>>> emulation of
>>>>> its input so your rebuttal is the strawman deception.
>>>>>
>>>>> I claimed that H(P,P) correctly predicts that its complete and correct
>>>>> x86 emulation of its input would never reach the "ret" instruction
>>>>> of P.
>>>>
>>>> But since H, or more accurately Ha, *can't* do a correct and
>>>> complete emulation of its input, your point is moot.
>>> _Infinite_Loop()
>>> [00001082](01) 55 push ebp
>>> [00001083](02) 8bec mov ebp,esp
>>> [00001085](02) ebfe jmp 00001085
>>> [00001087](01) 5d pop ebp
>>> [00001088](01) c3 ret
>>> Size in bytes:(0007) [00001088]
>>>
>>> Begin Local Halt Decider Simulation Execution Trace Stored at:211e8f
>>> ...[00001082][00211e7f][00211e83] 55 push ebp
>>> ...[00001083][00211e7f][00211e83] 8bec mov ebp,esp
>>> ...[00001085][00211e7f][00211e83] ebfe jmp 00001085
>>> ...[00001085][00211e7f][00211e83] ebfe jmp 00001085
>>> Infinite Loop Detected Simulation Stopped
>>>
>>> On the basis of this exact same utterly moronic reasoning because H
>>> *can't* do a correct and complete emulation of its input, H cannot
>>> possibly determine that _Infinite_Loop() never halts.
>>
>> Now who's using the strawman error?  Just because H can determine that
>> _Infinite_Loop does not halt doesn't mean that it gets other cases
>> right.  B
>
> You just said that H(P,P) cannot correctly predict that the correct and
> complete x86 emulation of its input would never reach the "ret"
> instruction of P without a compete x86 emulation of its input. I just
> proved that is a very stupid thing to say.
>


Click here to read the complete article
Re: Technically competent Software engineers can verify this halting problem proof refutation [ full closure ]

<SiQsK.193267$70j.57451@fx16.iad>

  copy mid

https://www.novabbs.com/computers/article-flat.php?id=9712&group=comp.ai.philosophy#9712

  copy link   Newsgroups: comp.theory comp.ai.philosophy sci.logic sci.math
Path: i2pn2.org!i2pn.org!usenet.blueworldhosting.com!feed1.usenet.blueworldhosting.com!peer01.iad!feed-me.highwinds-media.com!news.highwinds-media.com!fx16.iad.POSTED!not-for-mail
MIME-Version: 1.0
User-Agent: Mozilla/5.0 (Macintosh; Intel Mac OS X 10.15; rv:91.0)
Gecko/20100101 Thunderbird/91.10.0
Subject: Re: Technically competent Software engineers can verify this halting
problem proof refutation [ full closure ]
Content-Language: en-US
Newsgroups: comp.theory,comp.ai.philosophy,sci.logic,sci.math
References: <EOydnaeszcdfHS__nZ2dnUU7_83NnZ2d@giganews.com>
<20220622203106.00003fa2@reddwarf.jmc>
<xqSdnb2KKdOL5i7_nZ2dnUU7_81g4p2d@giganews.com>
<TwOsK.191531$JVi.174704@fx17.iad>
<N5WdnY_iDptAKC7_nZ2dnUU7_8xh4p2d@giganews.com>
<nLOsK.9452$mY1.1924@fx01.iad>
<3LmdnVllU6W8Jy7_nZ2dnUU7_8xh4p2d@giganews.com>
<j8PsK.15112$%i2.4898@fx48.iad>
<s9CdndzLkud5XC7_nZ2dnUU7_83NnZ2d@giganews.com>
<%sPsK.15923$nZ1.10923@fx05.iad>
<NZmdnRE_I-AmWS7_nZ2dnUU7_81g4p2d@giganews.com>
<RAPsK.191532$JVi.129665@fx17.iad>
<jeKdndsSjJTDUC7_nZ2dnUU7_83NnZ2d@giganews.com>
From: Rich...@Damon-Family.org (Richard Damon)
In-Reply-To: <jeKdndsSjJTDUC7_nZ2dnUU7_83NnZ2d@giganews.com>
Content-Type: text/plain; charset=UTF-8; format=flowed
Content-Transfer-Encoding: 8bit
Lines: 214
Message-ID: <SiQsK.193267$70j.57451@fx16.iad>
X-Complaints-To: abuse@easynews.com
Organization: Forte - www.forteinc.com
X-Complaints-Info: Please be sure to forward a copy of ALL headers otherwise we will be unable to process your complaint properly.
Date: Wed, 22 Jun 2022 22:34:26 -0400
X-Received-Bytes: 10447
 by: Richard Damon - Thu, 23 Jun 2022 02:34 UTC

On 6/22/22 10:18 PM, olcott wrote:
> On 6/22/2022 8:45 PM, Richard Damon wrote:
>> On 6/22/22 9:41 PM, olcott wrote:
>>> On 6/22/2022 8:36 PM, Richard Damon wrote:
>>>> On 6/22/22 9:29 PM, olcott wrote:
>>>>> On 6/22/2022 8:14 PM, Richard Damon wrote:
>>>>>> On 6/22/22 8:55 PM, olcott wrote:
>>>>>>> On 6/22/2022 7:48 PM, Richard Damon wrote:
>>>>>>>> On 6/22/22 8:37 PM, olcott wrote:
>>>>>>>
>>>>>>>>> First you agree that my words are perfectly correct within
>>>>>>>>> their specified context
>>>>>>>>
>>>>>>>> Since you haven't actualy defined you context, and imply that it
>>>>>>>> is the halting problem, where they can not be correct, that is
>>>>>>>> not possible.
>>>>>>>>>
>>>>>>> First you agree that these words are 100% correct within the
>>>>>>> context of software engineering totally ignoring the context of
>>>>>>> the halting problem.
>>>>>>>
>>>>>>> #include <stdint.h>
>>>>>>> #define u32 uint32_t
>>>>>>>
>>>>>>> #include <stdint.h>
>>>>>>> typedef void (*ptr)();
>>>>>>>
>>>>>>> void P(ptr x)
>>>>>>> {
>>>>>>>    if (H(x, x))
>>>>>>>      HERE: goto HERE;
>>>>>>>    return;
>>>>>>> }
>>>>>>>
>>>>>>> int main()
>>>>>>> {
>>>>>>>    Output("Input_Halts = ", H(P, P));
>>>>>>> }
>>>>>>>
>>>>>>> _P()
>>>>>>> [000010d2](01)  55              push ebp
>>>>>>> [000010d3](02)  8bec            mov ebp,esp
>>>>>>> [000010d5](03)  8b4508          mov eax,[ebp+08]
>>>>>>> [000010d8](01)  50              push eax
>>>>>>> [000010d9](03)  8b4d08          mov ecx,[ebp+08]
>>>>>>> [000010dc](01)  51              push ecx
>>>>>>> [000010dd](05)  e820feffff      call 00000f02
>>>>>>> [000010e2](03)  83c408          add esp,+08
>>>>>>> [000010e5](02)  85c0            test eax,eax
>>>>>>> [000010e7](02)  7402            jz 000010eb
>>>>>>> [000010e9](02)  ebfe            jmp 000010e9
>>>>>>> [000010eb](01)  5d              pop ebp
>>>>>>> [000010ec](01)  c3              ret
>>>>>>> Size in bytes:(0027) [000010ec]
>>>>>>>
>>>>>>> Every sufficiently competent software engineer can easily verify
>>>>>>> that the complete and correct x86 emulation of the input to
>>>>>>> H(P,P) by H would never reach the "ret" instruction of P because
>>>>>>> both H and P would remain stuck in infinitely recursive emulation.
>>>>>>>
>>>>>>
>>>>>> So, if H actually is a program that does a COMPLETE and correct
>>>>>> x86 emulation of its input, then YES, as I have said many time
>>>>>> before, this combination is non-halting.
>>>>>>
>>>>>> The fact that you need to keep going back to this, and seem to
>>>>>> just be refusing to accept the conditions under which you have
>>>>>> proved it just shows the problems with your thought process.
>>>>>>
>>>>>>> If H does correctly determine that this is the case in a finite
>>>>>>> number of steps then H could reject its input on this basis. Here
>>>>>>> are the details of exactly how H does this in a finite number of
>>>>>>> steps.
>>>>>>
>>>>>> Except that NOW H isn't the H we were just talking about, so you
>>>>>> are just proving that you are either lying or an idiot.
>>>>>>
>>>>>> Remember, the first analysis had the CONDITION on it that H did a
>>>>>> COMPLETE and correct x86 emulation.
>>>>>>
>>>>>> Once you remove that property form H, that conclusion no long
>>>>>> holds and you are shown to be a lying idiot.
>>>>>>
>>>>>>>
>>>>>>> typedef struct Decoded
>>>>>>> {
>>>>>>>    u32 Address;
>>>>>>>    u32 ESP;          // Current value of ESP
>>>>>>>    u32 TOS;          // Current value of Top of Stack
>>>>>>>    u32 NumBytes;
>>>>>>>    u32 Simplified_Opcode;
>>>>>>>    u32 Decode_Target;
>>>>>>> } Decoded_Line_Of_Code;
>>>>>>>
>>>>>>>   machine   stack     stack     machine    assembly
>>>>>>>   address   address   data      code       language
>>>>>>>   ========  ========  ========  =========  =============
>>>>>>> [000010d2][00211e8a][00211e8e] 55         push ebp
>>>>>>> [000010d3][00211e8a][00211e8e] 8bec       mov ebp,esp
>>>>>>> [000010d5][00211e8a][00211e8e] 8b4508     mov eax,[ebp+08]
>>>>>>> [000010d8][00211e86][000010d2] 50         push eax        // push P
>>>>>>> [000010d9][00211e86][000010d2] 8b4d08     mov ecx,[ebp+08]
>>>>>>> [000010dc][00211e82][000010d2] 51         push ecx        // push P
>>>>>>> [000010dd][00211e7e][000010e2] e820feffff call 00000f02   // call H
>>>>>>> Infinitely Recursive Simulation Detected Simulation Stopped
>>>>>>>
>>>>>>> // actual fully operational code in the x86utm operating system
>>>>>>> u32 H(u32 P, u32 I)
>>>>>>> {
>>>>>>> HERE:
>>>>>>>    u32 End_Of_Code;
>>>>>>>    u32 Address_of_H;              // 2022-06-17
>>>>>>>    u32 code_end                  = get_code_end(P);
>>>>>>>    Decoded_Line_Of_Code *decoded = (Decoded_Line_Of_Code*)
>>>>>>> Allocate(sizeof(Decoded_Line_Of_Code));
>>>>>>>    Registers*  master_state      = (Registers*)
>>>>>>> Allocate(sizeof(Registers));
>>>>>>>    Registers*  slave_state       = (Registers*)
>>>>>>> Allocate(sizeof(Registers));
>>>>>>>    u32*        slave_stack       = Allocate(0x10000); // 64k;
>>>>>>>    u32  execution_trace =
>>>>>>> (u32)Allocate(sizeof(Decoded_Line_Of_Code) * 1000);
>>>>>>>
>>>>>>>    __asm lea eax, HERE             // 2022-06-18
>>>>>>>    __asm sub eax, 6                // 2022-06-18
>>>>>>>    __asm mov Address_of_H, eax     // 2022-06-18
>>>>>>>    __asm mov eax, END_OF_CODE
>>>>>>>    __asm mov End_Of_Code, eax
>>>>>>>
>>>>>>>    Output("Address_of_H:", Address_of_H); // 2022-06-11
>>>>>>>    Init_slave_state(P, I, End_Of_Code, slave_state, slave_stack);
>>>>>>>    Output("\nBegin Simulation   Execution Trace Stored at:",
>>>>>>> execution_trace);
>>>>>>>    if (Decide_Halting(&execution_trace, &decoded, code_end,
>>>>>>> &master_state,
>>>>>>>                       &slave_state, &slave_stack, Address_of_H,
>>>>>>> P, I))
>>>>>>>        goto END_OF_CODE;
>>>>>>>    return 0;  // Does not halt
>>>>>>> END_OF_CODE:
>>>>>>>    return 1; // Input has normally terminated
>>>>>>> }
>>>>>>>
>>>>>>> H knows its own machine address and on this basis it can easily
>>>>>>> examine its stored execution_trace of P and determine:
>>>>>>> (a) P is calling H with the same arguments that H was called with.
>>>>>>> (b) No instructions in P could possibly escape this otherwise
>>>>>>> infinitely recursive emulation.
>>>>>>> (c) H aborts its emulation of P before its call to H is invoked.
>>>>>>>
>>>>>>>
>>>>>>
>>>>>> (b) is NOT a correct rule. Thos has been pointed out before, and
>>>>>> you have ignored it.
>>>>>>
>>>>> That you don't understand what I mean does not mean that it is an
>>>>> incorrect rule.
>>>>>
>>>>> Here is an example where P does have instruction that could
>>>>> possibly escape this otherwise infinitely recursive emulation:
>>>>>
>>>>>
>>>>> void P(ptr x)
>>>>> {
>>>>> static count = 0;
>>>>>    count++;
>>>>>    if count > 3)
>>>>>      return;
>>>>>    if (H(x, x))
>>>>>      HERE: goto HERE;
>>>>>    return;
>>>>> }
>>>>>
>>>>
>>>> FALLACY of proof by example. I never said that (b) isn't sometimes
>>>> true, just it isn't an always true condition. You fail at elementary
>>>> logic.
>>>
>>> Try and find a valid counter-example. Every attempt at rebuttal that
>>> is not a valid counter-example is one form of deception or another.
>>>
>>>
>>
>> P(P)
>
> That is not any example of (b), thus another mere strawman deception.
>


Click here to read the complete article
Re: Technically competent Software engineers can verify this halting problem proof refutation [ truism ]

<rI2dnbKn8e-zTi7_nZ2dnUU7_81g4p2d@giganews.com>

  copy mid

https://www.novabbs.com/computers/article-flat.php?id=9713&group=comp.ai.philosophy#9713

  copy link   Newsgroups: comp.theory comp.ai.philosophy sci.logic sci.math
Path: i2pn2.org!i2pn.org!weretis.net!feeder6.news.weretis.net!news.misty.com!border2.nntp.dca1.giganews.com!nntp.giganews.com!buffer2.nntp.dca1.giganews.com!buffer1.nntp.dca1.giganews.com!news.giganews.com.POSTED!not-for-mail
NNTP-Posting-Date: Wed, 22 Jun 2022 21:42:54 -0500
Date: Wed, 22 Jun 2022 21:42:52 -0500
MIME-Version: 1.0
User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:91.0) Gecko/20100101
Thunderbird/91.10.0
Subject: Re: Technically competent Software engineers can verify this halting
problem proof refutation [ truism ]
Content-Language: en-US
Newsgroups: comp.theory,comp.ai.philosophy,sci.logic,sci.math
References: <EOydnaeszcdfHS__nZ2dnUU7_83NnZ2d@giganews.com>
<20220622203106.00003fa2@reddwarf.jmc>
<xqSdnb2KKdOL5i7_nZ2dnUU7_81g4p2d@giganews.com>
<20220622222043.00001cb9@reddwarf.jmc>
<_eidnf40g7wFES7_nZ2dnUU7_8zNnZ2d@giganews.com>
<de67d3d5-10f3-4e28-9b31-082e97c1145en@googlegroups.com>
<MtadnVqn1dCkCy7_nZ2dnUU7_8zNnZ2d@giganews.com>
<5f26b879-5cd4-4f28-b7c4-c3e4ed0614c2n@googlegroups.com>
<9OydnaRCCvQ9PC7_nZ2dnUU7_83NnZ2d@giganews.com>
<58dc4a7a-d635-44bb-bf2a-3a959d9d808an@googlegroups.com>
<SJ-dnXBdiJ6aIi7_nZ2dnUU7_83NnZ2d@giganews.com>
<d59b136e-6411-462f-9b62-229c0ac00608n@googlegroups.com>
<NZmdnRY_I-BpXi7_nZ2dnUU7_83NnZ2d@giganews.com>
<5934b17d-9607-49d1-97db-813a232a6d94n@googlegroups.com>
<AfGdncZCoPo1US7_nZ2dnUU7_83NnZ2d@giganews.com>
<J7QsK.4920$kY1.4571@fx06.iad>
From: NoO...@NoWhere.com (olcott)
In-Reply-To: <J7QsK.4920$kY1.4571@fx06.iad>
Content-Type: text/plain; charset=UTF-8; format=flowed
Content-Transfer-Encoding: 8bit
Message-ID: <rI2dnbKn8e-zTi7_nZ2dnUU7_81g4p2d@giganews.com>
Lines: 321
X-Usenet-Provider: http://www.giganews.com
X-Trace: sv3-qVoZhCTYd9yJQOpj+jeMm1leJQZmzkxiw9jSgOJo8VyygiQqLwEarvHygv7OqCBPB58UdqdTbsgwWeC!UmscS6vWWcHPox5ACq4vqIJ315ajgnBy8d3ghGp8kri++IF+TV5SpTrrKNt9UHhoNxh0nn2GSVZH
X-Complaints-To: abuse@giganews.com
X-DMCA-Notifications: http://www.giganews.com/info/dmca.html
X-Abuse-and-DMCA-Info: Please be sure to forward a copy of ALL headers
X-Abuse-and-DMCA-Info: Otherwise we will be unable to process your complaint properly
X-Postfilter: 1.3.40
X-Original-Bytes: 16397
 by: olcott - Thu, 23 Jun 2022 02:42 UTC

On 6/22/2022 9:22 PM, Richard Damon wrote:
> On 6/22/22 10:15 PM, olcott wrote:
>> On 6/22/2022 8:44 PM, Dennis Bush wrote:
>>> On Wednesday, June 22, 2022 at 9:38:03 PM UTC-4, olcott wrote:
>>>> On 6/22/2022 8:21 PM, Dennis Bush wrote:
>>>>> On Wednesday, June 22, 2022 at 9:17:02 PM UTC-4, olcott wrote:
>>>>>> On 6/22/2022 8:02 PM, Dennis Bush wrote:
>>>>>>> On Wednesday, June 22, 2022 at 7:11:35 PM UTC-4, olcott wrote:
>>>>>>>> On 6/22/2022 5:48 PM, Dennis Bush wrote:
>>>>>>>>> On Wednesday, June 22, 2022 at 6:22:56 PM UTC-4, olcott wrote:
>>>>>>>>>> On 6/22/2022 4:53 PM, Dennis Bush wrote:
>>>>>>>>>>> On Wednesday, June 22, 2022 at 5:41:51 PM UTC-4, olcott wrote:
>>>>>>>>>>>> On 6/22/2022 4:20 PM, Mr Flibble wrote:
>>>>>>>>>>>>> On Wed, 22 Jun 2022 15:27:01 -0500
>>>>>>>>>>>>> olcott <No...@NoWhere.com> wrote:
>>>>>>>>>>>>>
>>>>>>>>>>>>>> On 6/22/2022 2:31 PM, Mr Flibble wrote:
>>>>>>>>>>>>>>> On Tue, 21 Jun 2022 21:38:56 -0500
>>>>>>>>>>>>>>> olcott <No...@NoWhere.com> wrote:
>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>>> #include <stdint.h>
>>>>>>>>>>>>>>>> #define u32 uint32_t
>>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>>> #include <stdint.h>
>>>>>>>>>>>>>>>> typedef void (*ptr)();
>>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>>> void P(ptr x)
>>>>>>>>>>>>>>>> {
>>>>>>>>>>>>>>>> if (H(x, x))
>>>>>>>>>>>>>>>> HERE: goto HERE;
>>>>>>>>>>>>>>>> return;
>>>>>>>>>>>>>>>> }
>>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>>> int main()
>>>>>>>>>>>>>>>> {
>>>>>>>>>>>>>>>> Output("Input_Halts = ", H(P, P));
>>>>>>>>>>>>>>>> }
>>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>>> _P()
>>>>>>>>>>>>>>>> [000010d2](01) 55 push ebp
>>>>>>>>>>>>>>>> [000010d3](02) 8bec mov ebp,esp
>>>>>>>>>>>>>>>> [000010d5](03) 8b4508 mov eax,[ebp+08]
>>>>>>>>>>>>>>>> [000010d8](01) 50 push eax
>>>>>>>>>>>>>>>> [000010d9](03) 8b4d08 mov ecx,[ebp+08]
>>>>>>>>>>>>>>>> [000010dc](01) 51 push ecx
>>>>>>>>>>>>>>>> [000010dd](05) e820feffff call 00000f02
>>>>>>>>>>>>>>>> [000010e2](03) 83c408 add esp,+08
>>>>>>>>>>>>>>>> [000010e5](02) 85c0 test eax,eax
>>>>>>>>>>>>>>>> [000010e7](02) 7402 jz 000010eb
>>>>>>>>>>>>>>>> [000010e9](02) ebfe jmp 000010e9
>>>>>>>>>>>>>>>> [000010eb](01) 5d pop ebp
>>>>>>>>>>>>>>>> [000010ec](01) c3 ret
>>>>>>>>>>>>>>>> Size in bytes:(0027) [000010ec]
>>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>>> Every sufficiently competent software engineer can
>>>>>>>>>>>>>>>> easily verify
>>>>>>>>>>>>>>>> that the complete and correct x86 emulation of the input
>>>>>>>>>>>>>>>> to H(P,P)
>>>>>>>>>>>>>>>> by H would never reach the "ret" instruction of P
>>>>>>>>>>>>>>>> because both H
>>>>>>>>>>>>>>>> and P would remain stuck in infinitely recursive emulation.
>>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>>> If H does correctly determine that this is the case in a
>>>>>>>>>>>>>>>> finite
>>>>>>>>>>>>>>>> number of steps then H could reject its input on this
>>>>>>>>>>>>>>>> basis. Here
>>>>>>>>>>>>>>>> are the details of exactly how H does this in a finite
>>>>>>>>>>>>>>>> number of
>>>>>>>>>>>>>>>> steps.
>>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>>> typedef struct Decoded
>>>>>>>>>>>>>>>> {
>>>>>>>>>>>>>>>> u32 Address;
>>>>>>>>>>>>>>>> u32 ESP; // Current value of ESP
>>>>>>>>>>>>>>>> u32 TOS; // Current value of Top of Stack
>>>>>>>>>>>>>>>> u32 NumBytes;
>>>>>>>>>>>>>>>> u32 Simplified_Opcode;
>>>>>>>>>>>>>>>> u32 Decode_Target;
>>>>>>>>>>>>>>>> } Decoded_Line_Of_Code;
>>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>>> machine stack stack machine assembly
>>>>>>>>>>>>>>>> address address data code language
>>>>>>>>>>>>>>>> ======== ======== ======== ========= =============
>>>>>>>>>>>>>>>> [000010d2][00211e8a][00211e8e] 55 push ebp
>>>>>>>>>>>>>>>> [000010d3][00211e8a][00211e8e] 8bec mov ebp,esp
>>>>>>>>>>>>>>>> [000010d5][00211e8a][00211e8e] 8b4508 mov eax,[ebp+08]
>>>>>>>>>>>>>>>> [000010d8][00211e86][000010d2] 50 push eax // push P
>>>>>>>>>>>>>>>> [000010d9][00211e86][000010d2] 8b4d08 mov ecx,[ebp+08]
>>>>>>>>>>>>>>>> [000010dc][00211e82][000010d2] 51 push ecx // push P
>>>>>>>>>>>>>>>> [000010dd][00211e7e][000010e2] e820feffff call 00000f02
>>>>>>>>>>>>>>>> // call H
>>>>>>>>>>>>>>>> Infinitely Recursive Simulation Detected Simulation Stopped
>>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>>> // actual fully operational code in the x86utm operating
>>>>>>>>>>>>>>>> system
>>>>>>>>>>>>>>>> u32 H(u32 P, u32 I)
>>>>>>>>>>>>>>>> {
>>>>>>>>>>>>>>>> HERE:
>>>>>>>>>>>>>>>> u32 End_Of_Code;
>>>>>>>>>>>>>>>> u32 Address_of_H; // 2022-06-17
>>>>>>>>>>>>>>>> u32 code_end = get_code_end(P);
>>>>>>>>>>>>>>>> Decoded_Line_Of_Code *decoded = (Decoded_Line_Of_Code*)
>>>>>>>>>>>>>>>> Allocate(sizeof(Decoded_Line_Of_Code));
>>>>>>>>>>>>>>>> Registers* master_state = (Registers*)
>>>>>>>>>>>>>>>> Allocate(sizeof(Registers));
>>>>>>>>>>>>>>>> Registers* slave_state = (Registers*)
>>>>>>>>>>>>>>>> Allocate(sizeof(Registers));
>>>>>>>>>>>>>>>> u32* slave_stack = Allocate(0x10000); // 64k;
>>>>>>>>>>>>>>>> u32 execution_trace =
>>>>>>>>>>>>>>>> (u32)Allocate(sizeof(Decoded_Line_Of_Code)
>>>>>>>>>>>>>>>> * 1000);
>>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>>> __asm lea eax, HERE // 2022-06-18
>>>>>>>>>>>>>>>> __asm sub eax, 6 // 2022-06-18
>>>>>>>>>>>>>>>> __asm mov Address_of_H, eax // 2022-06-18
>>>>>>>>>>>>>>>> __asm mov eax, END_OF_CODE
>>>>>>>>>>>>>>>> __asm mov End_Of_Code, eax
>>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>>> Output("Address_of_H:", Address_of_H); // 2022-06-11
>>>>>>>>>>>>>>>> Init_slave_state(P, I, End_Of_Code, slave_state,
>>>>>>>>>>>>>>>> slave_stack);
>>>>>>>>>>>>>>>> Output("\nBegin Simulation Execution Trace Stored at:",
>>>>>>>>>>>>>>>> execution_trace);
>>>>>>>>>>>>>>>> if (Decide_Halting(&execution_trace, &decoded, code_end,
>>>>>>>>>>>>>>>> &master_state, &slave_state, &slave_stack, Address_of_H,
>>>>>>>>>>>>>>>> P, I))
>>>>>>>>>>>>>>>> goto END_OF_CODE;
>>>>>>>>>>>>>>>> return 0; // Does not halt
>>>>>>>>>>>>>>>> END_OF_CODE:
>>>>>>>>>>>>>>>> return 1; // Input has normally terminated
>>>>>>>>>>>>>>>> }
>>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>>> H knows its own machine address and on this basis it can
>>>>>>>>>>>>>>>> easily
>>>>>>>>>>>>>>>> examine its stored execution_trace of P and determine:
>>>>>>>>>>>>>>>> (a) P is calling H with the same arguments that H was
>>>>>>>>>>>>>>>> called with.
>>>>>>>>>>>>>>>> (b) No instructions in P could possibly escape this
>>>>>>>>>>>>>>>> otherwise
>>>>>>>>>>>>>>>> infinitely recursive emulation.
>>>>>>>>>>>>>>>> (c) H aborts its emulation of P before its call to H is
>>>>>>>>>>>>>>>> invoked.
>>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>>> Technically competent software engineers may not know
>>>>>>>>>>>>>>>> this computer
>>>>>>>>>>>>>>>> science:
>>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>>> A halt decider must compute the mapping from its inputs
>>>>>>>>>>>>>>>> to an
>>>>>>>>>>>>>>>> accept or reject state on the basis of the actual
>>>>>>>>>>>>>>>> behavior that is
>>>>>>>>>>>>>>>> actually specified by these inputs.
>>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>>> computation that halts … the Turing machine will halt
>>>>>>>>>>>>>>>> whenever it
>>>>>>>>>>>>>>>> enters a final state. (Linz:1990:234)
>>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>>> The "ret" instruction of P is its final state.
>>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>>> Linz, Peter 1990. An Introduction to Formal Languages
>>>>>>>>>>>>>>>> and Automata.
>>>>>>>>>>>>>>>> Lexington/Toronto: D. C. Heath and Company. (317-320)
>>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>> void Px(u32 x)
>>>>>>>>>>>>>>> {
>>>>>>>>>>>>>>> H(x, x);
>>>>>>>>>>>>>>> return;
>>>>>>>>>>>>>>> }
>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>> int main()
>>>>>>>>>>>>>>> {
>>>>>>>>>>>>>>> Output("Input_Halts = ", H((u32)Px, (u32)Px));
>>>>>>>>>>>>>>> }
>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>> ...[000013e8][00102357][00000000] 83c408 add esp,+08
>>>>>>>>>>>>>>> ...[000013eb][00102353][00000000] 50 push eax
>>>>>>>>>>>>>>> ...[000013ec][0010234f][00000427] 6827040000 push 00000427
>>>>>>>>>>>>>>> ---[000013f1][0010234f][00000427] e880f0ffff call 00000476
>>>>>>>>>>>>>>> Input_Halts = 0
>>>>>>>>>>>>>>> ...[000013f6][00102357][00000000] 83c408 add esp,+08
>>>>>>>>>>>>>>> ...[000013f9][00102357][00000000] 33c0 xor eax,eax
>>>>>>>>>>>>>>> ...[000013fb][0010235b][00100000] 5d pop ebp
>>>>>>>>>>>>>>> ...[000013fc][0010235f][00000004] c3 ret
>>>>>>>>>>>>>>> Number of Instructions Executed(16120)
>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>> It gets the answer wrong, i.e. input has not been decided
>>>>>>>>>>>>>>> correctly.
>>>>>>>>>>>>>>> QED.
>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>> /Flibble
>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>
>>>>>>>>>>>>>> You and Richard are insufficiently technically competent
>>>>>>>>>>>>>> at software
>>>>>>>>>>>>>> engineering not meeting these specs:
>>>>>>>>>>>>>>
>>>>>>>>>>>>>> A software engineer must be an expert in: the C
>>>>>>>>>>>>>> programming language,
>>>>>>>>>>>>>> the x86 programming language, exactly how C translates
>>>>>>>>>>>>>> into x86 and
>>>>>>>>>>>>>> the ability to recognize infinite recursion at the x86
>>>>>>>>>>>>>> assembly
>>>>>>>>>>>>>> language level. No knowledge of the halting problem is
>>>>>>>>>>>>>> required.
>>>>>>>>>>>>>
>>>>>>>>>>>>> I cannot speak for Richard but I have 30+ years C++
>>>>>>>>>>>>> experience; I also
>>>>>>>>>>>>> have C and x86 assembly experience (I once wrote a Zilog
>>>>>>>>>>>>> Z80A CPU
>>>>>>>>>>>>> emulator in 80286 assembly) and I can recognize an infinite
>>>>>>>>>>>>> recursion;
>>>>>>>>>>>>> the problem is that you cannot recognize the fact that the
>>>>>>>>>>>>> infinite
>>>>>>>>>>>>> recursion only manifests as part of your invalid
>>>>>>>>>>>>> simulation-based
>>>>>>>>>>>>> omnishambles:
>>>>>>>>>>>> If you are competent then you already know this is true and
>>>>>>>>>>>> lie about it:
>>>>>>>>>>>> Every sufficiently competent software engineer can easily
>>>>>>>>>>>> verify that
>>>>>>>>>>>> the complete and correct x86 emulation of the input to
>>>>>>>>>>>> H(Px,Px) by H
>>>>>>>>>>>> would never reach the "ret" instruction of P because both H
>>>>>>>>>>>> and P would
>>>>>>>>>>>> remain stuck in infinitely recursive emulation.
>>>>>>>>>>>
>>>>>>>>>>> H (if it was constructed correctly) is a computation, and a
>>>>>>>>>>> computation *always* gives the same output for a given input.
>>>>>>>>>>> So it doesn't make sense to say what it "would" do. It either
>>>>>>>>>>> does or does not perform a complete and correct emulation.
>>>>>>>>>>> And because H contains code to abort, and does abort, it does
>>>>>>>>>>> not do a complete emulation.
>>>>>>>>>>>
>>>>>>>>>>> So the input must be given to a UTM, which by definition does
>>>>>>>>>>> a correct and complete simulation, to see what the actual
>>>>>>>>>>> behavior is. UTM(Px,Px) halts, therefore H(Px,Px)==0 is wrong.
>>>>>>>>>>
>>>>>>>>>> Every sufficiently competent software engineer can easily
>>>>>>>>>> verify that
>>>>>>>>>> the complete and correct x86 emulation of the input to
>>>>>>>>>> H(Px,Px) by H
>>>>>>>>>> would never reach the "ret" instruction of Px because both H
>>>>>>>>>> and Px
>>>>>>>>>> would remain stuck in infinitely recursive emulation.
>>>>>>>>>
>>>>>>>>> So you just repeated what you said instead of explaining why
>>>>>>>>> I'm wrong. In other words you provided no rebuttal, which can
>>>>>>>>> only be taken to mean that you have none.
>>>>>>>> Your entire basis and all of assumptions was incorrect so when I
>>>>>>>> provided an infallible one to that cannot possibly be correctly
>>>>>>>> refuted
>>>>>>>> you simply dodged it. That is a smart move for a dishonest
>>>>>>>> person that
>>>>>>>> is only interested in rebuttal.
>>>>>>>>
>>>>>>>> I dare you to go back to the prior post and find any error in my
>>>>>>>> airtight correct reasoning. Another dodge will be construed as a
>>>>>>>> tacit
>>>>>>>> admission of defeat.
>>>>>>>
>>>>>>> As stated before H (or more accurately Ha) does not perform a
>>>>>>> complete and correct emulation because it aborts. So by
>>>>>>> definition it cannot be complete.
>>>>>> I never claimed that H(P,P) performs a complete and correct
>>>>>> emulation of
>>>>>> its input so your rebuttal is the strawman deception.
>>>>>>
>>>>>> I claimed that H(P,P) correctly predicts that its complete and
>>>>>> correct
>>>>>> x86 emulation of its input would never reach the "ret" instruction
>>>>>> of P.
>>>>>
>>>>> But since H, or more accurately Ha, *can't* do a correct and
>>>>> complete emulation of its input, your point is moot.
>>>> _Infinite_Loop()
>>>> [00001082](01) 55 push ebp
>>>> [00001083](02) 8bec mov ebp,esp
>>>> [00001085](02) ebfe jmp 00001085
>>>> [00001087](01) 5d pop ebp
>>>> [00001088](01) c3 ret
>>>> Size in bytes:(0007) [00001088]
>>>>
>>>> Begin Local Halt Decider Simulation Execution Trace Stored at:211e8f
>>>> ...[00001082][00211e7f][00211e83] 55 push ebp
>>>> ...[00001083][00211e7f][00211e83] 8bec mov ebp,esp
>>>> ...[00001085][00211e7f][00211e83] ebfe jmp 00001085
>>>> ...[00001085][00211e7f][00211e83] ebfe jmp 00001085
>>>> Infinite Loop Detected Simulation Stopped
>>>>
>>>> On the basis of this exact same utterly moronic reasoning because H
>>>> *can't* do a correct and complete emulation of its input, H cannot
>>>> possibly determine that _Infinite_Loop() never halts.
>>>
>>> Now who's using the strawman error?  Just because H can determine
>>> that _Infinite_Loop does not halt doesn't mean that it gets other
>>> cases right.  B
>>
>> You just said that H(P,P) cannot correctly predict that the correct
>> and complete x86 emulation of its input would never reach the "ret"
>> instruction of P without a compete x86 emulation of its input. I just
>> proved that is a very stupid thing to say.
>>
>
> No, that isn't what he said. Just shows you can't read.
>
> He said that an H that aborts its simulation can't do a Complete and
> Correct emulation of its input.


Click here to read the complete article
Re: Technically competent Software engineers can verify this halting problem proof refutation [ truism ]

<lt2dnRXE1YFyTi7_nZ2dnUU7_8zNnZ2d@giganews.com>

  copy mid

https://www.novabbs.com/computers/article-flat.php?id=9714&group=comp.ai.philosophy#9714

  copy link   Newsgroups: comp.theory comp.ai.philosophy sci.logic sci.math
Path: i2pn2.org!i2pn.org!weretis.net!feeder6.news.weretis.net!news.misty.com!border2.nntp.dca1.giganews.com!nntp.giganews.com!buffer2.nntp.dca1.giganews.com!news.giganews.com.POSTED!not-for-mail
NNTP-Posting-Date: Wed, 22 Jun 2022 21:46:07 -0500
Date: Wed, 22 Jun 2022 21:46:06 -0500
MIME-Version: 1.0
User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:91.0) Gecko/20100101
Thunderbird/91.10.0
Subject: Re: Technically competent Software engineers can verify this halting
problem proof refutation [ truism ]
Content-Language: en-US
Newsgroups: comp.theory,comp.ai.philosophy,sci.logic,sci.math
References: <EOydnaeszcdfHS__nZ2dnUU7_83NnZ2d@giganews.com>
<20220622203106.00003fa2@reddwarf.jmc>
<xqSdnb2KKdOL5i7_nZ2dnUU7_81g4p2d@giganews.com>
<20220622222043.00001cb9@reddwarf.jmc>
<_eidnf40g7wFES7_nZ2dnUU7_8zNnZ2d@giganews.com>
<de67d3d5-10f3-4e28-9b31-082e97c1145en@googlegroups.com>
<MtadnVqn1dCkCy7_nZ2dnUU7_8zNnZ2d@giganews.com>
<5f26b879-5cd4-4f28-b7c4-c3e4ed0614c2n@googlegroups.com>
<9OydnaRCCvQ9PC7_nZ2dnUU7_83NnZ2d@giganews.com>
<58dc4a7a-d635-44bb-bf2a-3a959d9d808an@googlegroups.com>
<SJ-dnXBdiJ6aIi7_nZ2dnUU7_83NnZ2d@giganews.com>
<d59b136e-6411-462f-9b62-229c0ac00608n@googlegroups.com>
<NZmdnRY_I-BpXi7_nZ2dnUU7_83NnZ2d@giganews.com>
<5934b17d-9607-49d1-97db-813a232a6d94n@googlegroups.com>
<AfGdncZCoPo1US7_nZ2dnUU7_83NnZ2d@giganews.com>
<15937d3c-f189-4c7a-bd39-2d7e25754d15n@googlegroups.com>
From: NoO...@NoWhere.com (olcott)
In-Reply-To: <15937d3c-f189-4c7a-bd39-2d7e25754d15n@googlegroups.com>
Content-Type: text/plain; charset=UTF-8; format=flowed
Content-Transfer-Encoding: 8bit
Message-ID: <lt2dnRXE1YFyTi7_nZ2dnUU7_8zNnZ2d@giganews.com>
Lines: 260
X-Usenet-Provider: http://www.giganews.com
X-Trace: sv3-0wZbdK6KesZODdLSKNsfLsJSY23RpGvSrkx6Y3wkqpwgMdeVC/G/ANtXpm5py1s8PtRFniKSZL9j/8r!vtTiSiKkiIa/6DDbuiokVnw5fUb+YuanSroSitg5Xa55WR0wGrJUMAbKkKjWt3pcG1ng3f/pBs6M
X-Complaints-To: abuse@giganews.com
X-DMCA-Notifications: http://www.giganews.com/info/dmca.html
X-Abuse-and-DMCA-Info: Please be sure to forward a copy of ALL headers
X-Abuse-and-DMCA-Info: Otherwise we will be unable to process your complaint properly
X-Postfilter: 1.3.40
X-Original-Bytes: 15654
 by: olcott - Thu, 23 Jun 2022 02:46 UTC

On 6/22/2022 9:23 PM, Dennis Bush wrote:
> On Wednesday, June 22, 2022 at 10:15:11 PM UTC-4, olcott wrote:
>> On 6/22/2022 8:44 PM, Dennis Bush wrote:
>>> On Wednesday, June 22, 2022 at 9:38:03 PM UTC-4, olcott wrote:
>>>> On 6/22/2022 8:21 PM, Dennis Bush wrote:
>>>>> On Wednesday, June 22, 2022 at 9:17:02 PM UTC-4, olcott wrote:
>>>>>> On 6/22/2022 8:02 PM, Dennis Bush wrote:
>>>>>>> On Wednesday, June 22, 2022 at 7:11:35 PM UTC-4, olcott wrote:
>>>>>>>> On 6/22/2022 5:48 PM, Dennis Bush wrote:
>>>>>>>>> On Wednesday, June 22, 2022 at 6:22:56 PM UTC-4, olcott wrote:
>>>>>>>>>> On 6/22/2022 4:53 PM, Dennis Bush wrote:
>>>>>>>>>>> On Wednesday, June 22, 2022 at 5:41:51 PM UTC-4, olcott wrote:
>>>>>>>>>>>> On 6/22/2022 4:20 PM, Mr Flibble wrote:
>>>>>>>>>>>>> On Wed, 22 Jun 2022 15:27:01 -0500
>>>>>>>>>>>>> olcott <No...@NoWhere.com> wrote:
>>>>>>>>>>>>>
>>>>>>>>>>>>>> On 6/22/2022 2:31 PM, Mr Flibble wrote:
>>>>>>>>>>>>>>> On Tue, 21 Jun 2022 21:38:56 -0500
>>>>>>>>>>>>>>> olcott <No...@NoWhere.com> wrote:
>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>>> #include <stdint.h>
>>>>>>>>>>>>>>>> #define u32 uint32_t
>>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>>> #include <stdint.h>
>>>>>>>>>>>>>>>> typedef void (*ptr)();
>>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>>> void P(ptr x)
>>>>>>>>>>>>>>>> {
>>>>>>>>>>>>>>>> if (H(x, x))
>>>>>>>>>>>>>>>> HERE: goto HERE;
>>>>>>>>>>>>>>>> return;
>>>>>>>>>>>>>>>> }
>>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>>> int main()
>>>>>>>>>>>>>>>> {
>>>>>>>>>>>>>>>> Output("Input_Halts = ", H(P, P));
>>>>>>>>>>>>>>>> }
>>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>>> _P()
>>>>>>>>>>>>>>>> [000010d2](01) 55 push ebp
>>>>>>>>>>>>>>>> [000010d3](02) 8bec mov ebp,esp
>>>>>>>>>>>>>>>> [000010d5](03) 8b4508 mov eax,[ebp+08]
>>>>>>>>>>>>>>>> [000010d8](01) 50 push eax
>>>>>>>>>>>>>>>> [000010d9](03) 8b4d08 mov ecx,[ebp+08]
>>>>>>>>>>>>>>>> [000010dc](01) 51 push ecx
>>>>>>>>>>>>>>>> [000010dd](05) e820feffff call 00000f02
>>>>>>>>>>>>>>>> [000010e2](03) 83c408 add esp,+08
>>>>>>>>>>>>>>>> [000010e5](02) 85c0 test eax,eax
>>>>>>>>>>>>>>>> [000010e7](02) 7402 jz 000010eb
>>>>>>>>>>>>>>>> [000010e9](02) ebfe jmp 000010e9
>>>>>>>>>>>>>>>> [000010eb](01) 5d pop ebp
>>>>>>>>>>>>>>>> [000010ec](01) c3 ret
>>>>>>>>>>>>>>>> Size in bytes:(0027) [000010ec]
>>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>>> Every sufficiently competent software engineer can easily verify
>>>>>>>>>>>>>>>> that the complete and correct x86 emulation of the input to H(P,P)
>>>>>>>>>>>>>>>> by H would never reach the "ret" instruction of P because both H
>>>>>>>>>>>>>>>> and P would remain stuck in infinitely recursive emulation.
>>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>>> If H does correctly determine that this is the case in a finite
>>>>>>>>>>>>>>>> number of steps then H could reject its input on this basis. Here
>>>>>>>>>>>>>>>> are the details of exactly how H does this in a finite number of
>>>>>>>>>>>>>>>> steps.
>>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>>> typedef struct Decoded
>>>>>>>>>>>>>>>> {
>>>>>>>>>>>>>>>> u32 Address;
>>>>>>>>>>>>>>>> u32 ESP; // Current value of ESP
>>>>>>>>>>>>>>>> u32 TOS; // Current value of Top of Stack
>>>>>>>>>>>>>>>> u32 NumBytes;
>>>>>>>>>>>>>>>> u32 Simplified_Opcode;
>>>>>>>>>>>>>>>> u32 Decode_Target;
>>>>>>>>>>>>>>>> } Decoded_Line_Of_Code;
>>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>>> machine stack stack machine assembly
>>>>>>>>>>>>>>>> address address data code language
>>>>>>>>>>>>>>>> ======== ======== ======== ========= =============
>>>>>>>>>>>>>>>> [000010d2][00211e8a][00211e8e] 55 push ebp
>>>>>>>>>>>>>>>> [000010d3][00211e8a][00211e8e] 8bec mov ebp,esp
>>>>>>>>>>>>>>>> [000010d5][00211e8a][00211e8e] 8b4508 mov eax,[ebp+08]
>>>>>>>>>>>>>>>> [000010d8][00211e86][000010d2] 50 push eax // push P
>>>>>>>>>>>>>>>> [000010d9][00211e86][000010d2] 8b4d08 mov ecx,[ebp+08]
>>>>>>>>>>>>>>>> [000010dc][00211e82][000010d2] 51 push ecx // push P
>>>>>>>>>>>>>>>> [000010dd][00211e7e][000010e2] e820feffff call 00000f02 // call H
>>>>>>>>>>>>>>>> Infinitely Recursive Simulation Detected Simulation Stopped
>>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>>> // actual fully operational code in the x86utm operating system
>>>>>>>>>>>>>>>> u32 H(u32 P, u32 I)
>>>>>>>>>>>>>>>> {
>>>>>>>>>>>>>>>> HERE:
>>>>>>>>>>>>>>>> u32 End_Of_Code;
>>>>>>>>>>>>>>>> u32 Address_of_H; // 2022-06-17
>>>>>>>>>>>>>>>> u32 code_end = get_code_end(P);
>>>>>>>>>>>>>>>> Decoded_Line_Of_Code *decoded = (Decoded_Line_Of_Code*)
>>>>>>>>>>>>>>>> Allocate(sizeof(Decoded_Line_Of_Code));
>>>>>>>>>>>>>>>> Registers* master_state = (Registers*)
>>>>>>>>>>>>>>>> Allocate(sizeof(Registers));
>>>>>>>>>>>>>>>> Registers* slave_state = (Registers*)
>>>>>>>>>>>>>>>> Allocate(sizeof(Registers));
>>>>>>>>>>>>>>>> u32* slave_stack = Allocate(0x10000); // 64k;
>>>>>>>>>>>>>>>> u32 execution_trace =
>>>>>>>>>>>>>>>> (u32)Allocate(sizeof(Decoded_Line_Of_Code)
>>>>>>>>>>>>>>>> * 1000);
>>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>>> __asm lea eax, HERE // 2022-06-18
>>>>>>>>>>>>>>>> __asm sub eax, 6 // 2022-06-18
>>>>>>>>>>>>>>>> __asm mov Address_of_H, eax // 2022-06-18
>>>>>>>>>>>>>>>> __asm mov eax, END_OF_CODE
>>>>>>>>>>>>>>>> __asm mov End_Of_Code, eax
>>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>>> Output("Address_of_H:", Address_of_H); // 2022-06-11
>>>>>>>>>>>>>>>> Init_slave_state(P, I, End_Of_Code, slave_state, slave_stack);
>>>>>>>>>>>>>>>> Output("\nBegin Simulation Execution Trace Stored at:",
>>>>>>>>>>>>>>>> execution_trace);
>>>>>>>>>>>>>>>> if (Decide_Halting(&execution_trace, &decoded, code_end,
>>>>>>>>>>>>>>>> &master_state, &slave_state, &slave_stack, Address_of_H, P, I))
>>>>>>>>>>>>>>>> goto END_OF_CODE;
>>>>>>>>>>>>>>>> return 0; // Does not halt
>>>>>>>>>>>>>>>> END_OF_CODE:
>>>>>>>>>>>>>>>> return 1; // Input has normally terminated
>>>>>>>>>>>>>>>> }
>>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>>> H knows its own machine address and on this basis it can easily
>>>>>>>>>>>>>>>> examine its stored execution_trace of P and determine:
>>>>>>>>>>>>>>>> (a) P is calling H with the same arguments that H was called with.
>>>>>>>>>>>>>>>> (b) No instructions in P could possibly escape this otherwise
>>>>>>>>>>>>>>>> infinitely recursive emulation.
>>>>>>>>>>>>>>>> (c) H aborts its emulation of P before its call to H is invoked.
>>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>>> Technically competent software engineers may not know this computer
>>>>>>>>>>>>>>>> science:
>>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>>> A halt decider must compute the mapping from its inputs to an
>>>>>>>>>>>>>>>> accept or reject state on the basis of the actual behavior that is
>>>>>>>>>>>>>>>> actually specified by these inputs.
>>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>>> computation that halts … the Turing machine will halt whenever it
>>>>>>>>>>>>>>>> enters a final state. (Linz:1990:234)
>>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>>> The "ret" instruction of P is its final state.
>>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>>> Linz, Peter 1990. An Introduction to Formal Languages and Automata.
>>>>>>>>>>>>>>>> Lexington/Toronto: D. C. Heath and Company. (317-320)
>>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>> void Px(u32 x)
>>>>>>>>>>>>>>> {
>>>>>>>>>>>>>>> H(x, x);
>>>>>>>>>>>>>>> return;
>>>>>>>>>>>>>>> }
>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>> int main()
>>>>>>>>>>>>>>> {
>>>>>>>>>>>>>>> Output("Input_Halts = ", H((u32)Px, (u32)Px));
>>>>>>>>>>>>>>> }
>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>> ...[000013e8][00102357][00000000] 83c408 add esp,+08
>>>>>>>>>>>>>>> ...[000013eb][00102353][00000000] 50 push eax
>>>>>>>>>>>>>>> ...[000013ec][0010234f][00000427] 6827040000 push 00000427
>>>>>>>>>>>>>>> ---[000013f1][0010234f][00000427] e880f0ffff call 00000476
>>>>>>>>>>>>>>> Input_Halts = 0
>>>>>>>>>>>>>>> ...[000013f6][00102357][00000000] 83c408 add esp,+08
>>>>>>>>>>>>>>> ...[000013f9][00102357][00000000] 33c0 xor eax,eax
>>>>>>>>>>>>>>> ...[000013fb][0010235b][00100000] 5d pop ebp
>>>>>>>>>>>>>>> ...[000013fc][0010235f][00000004] c3 ret
>>>>>>>>>>>>>>> Number of Instructions Executed(16120)
>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>> It gets the answer wrong, i.e. input has not been decided correctly.
>>>>>>>>>>>>>>> QED.
>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>> /Flibble
>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>
>>>>>>>>>>>>>> You and Richard are insufficiently technically competent at software
>>>>>>>>>>>>>> engineering not meeting these specs:
>>>>>>>>>>>>>>
>>>>>>>>>>>>>> A software engineer must be an expert in: the C programming language,
>>>>>>>>>>>>>> the x86 programming language, exactly how C translates into x86 and
>>>>>>>>>>>>>> the ability to recognize infinite recursion at the x86 assembly
>>>>>>>>>>>>>> language level. No knowledge of the halting problem is required.
>>>>>>>>>>>>>
>>>>>>>>>>>>> I cannot speak for Richard but I have 30+ years C++ experience; I also
>>>>>>>>>>>>> have C and x86 assembly experience (I once wrote a Zilog Z80A CPU
>>>>>>>>>>>>> emulator in 80286 assembly) and I can recognize an infinite recursion;
>>>>>>>>>>>>> the problem is that you cannot recognize the fact that the infinite
>>>>>>>>>>>>> recursion only manifests as part of your invalid simulation-based
>>>>>>>>>>>>> omnishambles:
>>>>>>>>>>>> If you are competent then you already know this is true and lie about it:
>>>>>>>>>>>> Every sufficiently competent software engineer can easily verify that
>>>>>>>>>>>> the complete and correct x86 emulation of the input to H(Px,Px) by H
>>>>>>>>>>>> would never reach the "ret" instruction of P because both H and P would
>>>>>>>>>>>> remain stuck in infinitely recursive emulation.
>>>>>>>>>>>
>>>>>>>>>>> H (if it was constructed correctly) is a computation, and a computation *always* gives the same output for a given input. So it doesn't make sense to say what it "would" do. It either does or does not perform a complete and correct emulation. And because H contains code to abort, and does abort, it does not do a complete emulation.
>>>>>>>>>>>
>>>>>>>>>>> So the input must be given to a UTM, which by definition does a correct and complete simulation, to see what the actual behavior is. UTM(Px,Px) halts, therefore H(Px,Px)==0 is wrong.
>>>>>>>>>>
>>>>>>>>>> Every sufficiently competent software engineer can easily verify that
>>>>>>>>>> the complete and correct x86 emulation of the input to H(Px,Px) by H
>>>>>>>>>> would never reach the "ret" instruction of Px because both H and Px
>>>>>>>>>> would remain stuck in infinitely recursive emulation.
>>>>>>>>>
>>>>>>>>> So you just repeated what you said instead of explaining why I'm wrong. In other words you provided no rebuttal, which can only be taken to mean that you have none.
>>>>>>>> Your entire basis and all of assumptions was incorrect so when I
>>>>>>>> provided an infallible one to that cannot possibly be correctly refuted
>>>>>>>> you simply dodged it. That is a smart move for a dishonest person that
>>>>>>>> is only interested in rebuttal.
>>>>>>>>
>>>>>>>> I dare you to go back to the prior post and find any error in my
>>>>>>>> airtight correct reasoning. Another dodge will be construed as a tacit
>>>>>>>> admission of defeat.
>>>>>>>
>>>>>>> As stated before H (or more accurately Ha) does not perform a complete and correct emulation because it aborts. So by definition it cannot be complete.
>>>>>> I never claimed that H(P,P) performs a complete and correct emulation of
>>>>>> its input so your rebuttal is the strawman deception.
>>>>>>
>>>>>> I claimed that H(P,P) correctly predicts that its complete and correct
>>>>>> x86 emulation of its input would never reach the "ret" instruction of P.
>>>>>
>>>>> But since H, or more accurately Ha, *can't* do a correct and complete emulation of its input, your point is moot.
>>>> _Infinite_Loop()
>>>> [00001082](01) 55 push ebp
>>>> [00001083](02) 8bec mov ebp,esp
>>>> [00001085](02) ebfe jmp 00001085
>>>> [00001087](01) 5d pop ebp
>>>> [00001088](01) c3 ret
>>>> Size in bytes:(0007) [00001088]
>>>>
>>>> Begin Local Halt Decider Simulation Execution Trace Stored at:211e8f
>>>> ...[00001082][00211e7f][00211e83] 55 push ebp
>>>> ...[00001083][00211e7f][00211e83] 8bec mov ebp,esp
>>>> ...[00001085][00211e7f][00211e83] ebfe jmp 00001085
>>>> ...[00001085][00211e7f][00211e83] ebfe jmp 00001085
>>>> Infinite Loop Detected Simulation Stopped
>>>>
>>>> On the basis of this exact same utterly moronic reasoning because H
>>>> *can't* do a correct and complete emulation of its input, H cannot
>>>> possibly determine that _Infinite_Loop() never halts.
>>>
>>> Now who's using the strawman error? Just because H can determine that _Infinite_Loop does not halt doesn't mean that it gets other cases right. B
>> You just said that H(P,P) cannot correctly predict that the correct and
>> complete x86 emulation of its input would never reach the "ret"
>> instruction of P without a compete x86 emulation of its input. I just
>> proved that is a very stupid thing to say.
>
> You said that H can predict what *its* correct and complete emulation would do, and I said that doesn't make sense because H does not do correct and complete emulation. What H *must* do is predict what *the* correct and complete emulation, i.e. UTM(P,P), would do. And it fails to do that.


Click here to read the complete article
Re: Technically competent Software engineers can verify this halting problem proof refutation [ truism ]

<2AQsK.226480$vAW9.188192@fx10.iad>

  copy mid

https://www.novabbs.com/computers/article-flat.php?id=9715&group=comp.ai.philosophy#9715

  copy link   Newsgroups: comp.theory comp.ai.philosophy sci.logic sci.math
Path: i2pn2.org!i2pn.org!usenet.blueworldhosting.com!feed1.usenet.blueworldhosting.com!peer03.iad!feed-me.highwinds-media.com!news.highwinds-media.com!fx10.iad.POSTED!not-for-mail
MIME-Version: 1.0
User-Agent: Mozilla/5.0 (Macintosh; Intel Mac OS X 10.15; rv:91.0)
Gecko/20100101 Thunderbird/91.10.0
Subject: Re: Technically competent Software engineers can verify this halting
problem proof refutation [ truism ]
Content-Language: en-US
Newsgroups: comp.theory,comp.ai.philosophy,sci.logic,sci.math
References: <EOydnaeszcdfHS__nZ2dnUU7_83NnZ2d@giganews.com>
<20220622203106.00003fa2@reddwarf.jmc>
<xqSdnb2KKdOL5i7_nZ2dnUU7_81g4p2d@giganews.com>
<20220622222043.00001cb9@reddwarf.jmc>
<_eidnf40g7wFES7_nZ2dnUU7_8zNnZ2d@giganews.com>
<de67d3d5-10f3-4e28-9b31-082e97c1145en@googlegroups.com>
<MtadnVqn1dCkCy7_nZ2dnUU7_8zNnZ2d@giganews.com>
<5f26b879-5cd4-4f28-b7c4-c3e4ed0614c2n@googlegroups.com>
<9OydnaRCCvQ9PC7_nZ2dnUU7_83NnZ2d@giganews.com>
<58dc4a7a-d635-44bb-bf2a-3a959d9d808an@googlegroups.com>
<SJ-dnXBdiJ6aIi7_nZ2dnUU7_83NnZ2d@giganews.com>
<d59b136e-6411-462f-9b62-229c0ac00608n@googlegroups.com>
<NZmdnRY_I-BpXi7_nZ2dnUU7_83NnZ2d@giganews.com>
<5934b17d-9607-49d1-97db-813a232a6d94n@googlegroups.com>
<AfGdncZCoPo1US7_nZ2dnUU7_83NnZ2d@giganews.com>
<J7QsK.4920$kY1.4571@fx06.iad>
<rI2dnbKn8e-zTi7_nZ2dnUU7_81g4p2d@giganews.com>
From: Rich...@Damon-Family.org (Richard Damon)
In-Reply-To: <rI2dnbKn8e-zTi7_nZ2dnUU7_81g4p2d@giganews.com>
Content-Type: text/plain; charset=UTF-8; format=flowed
Content-Transfer-Encoding: 8bit
Lines: 329
Message-ID: <2AQsK.226480$vAW9.188192@fx10.iad>
X-Complaints-To: abuse@easynews.com
Organization: Forte - www.forteinc.com
X-Complaints-Info: Please be sure to forward a copy of ALL headers otherwise we will be unable to process your complaint properly.
Date: Wed, 22 Jun 2022 22:52:46 -0400
X-Received-Bytes: 16698
 by: Richard Damon - Thu, 23 Jun 2022 02:52 UTC

On 6/22/22 10:42 PM, olcott wrote:
> On 6/22/2022 9:22 PM, Richard Damon wrote:
>> On 6/22/22 10:15 PM, olcott wrote:
>>> On 6/22/2022 8:44 PM, Dennis Bush wrote:
>>>> On Wednesday, June 22, 2022 at 9:38:03 PM UTC-4, olcott wrote:
>>>>> On 6/22/2022 8:21 PM, Dennis Bush wrote:
>>>>>> On Wednesday, June 22, 2022 at 9:17:02 PM UTC-4, olcott wrote:
>>>>>>> On 6/22/2022 8:02 PM, Dennis Bush wrote:
>>>>>>>> On Wednesday, June 22, 2022 at 7:11:35 PM UTC-4, olcott wrote:
>>>>>>>>> On 6/22/2022 5:48 PM, Dennis Bush wrote:
>>>>>>>>>> On Wednesday, June 22, 2022 at 6:22:56 PM UTC-4, olcott wrote:
>>>>>>>>>>> On 6/22/2022 4:53 PM, Dennis Bush wrote:
>>>>>>>>>>>> On Wednesday, June 22, 2022 at 5:41:51 PM UTC-4, olcott wrote:
>>>>>>>>>>>>> On 6/22/2022 4:20 PM, Mr Flibble wrote:
>>>>>>>>>>>>>> On Wed, 22 Jun 2022 15:27:01 -0500
>>>>>>>>>>>>>> olcott <No...@NoWhere.com> wrote:
>>>>>>>>>>>>>>
>>>>>>>>>>>>>>> On 6/22/2022 2:31 PM, Mr Flibble wrote:
>>>>>>>>>>>>>>>> On Tue, 21 Jun 2022 21:38:56 -0500
>>>>>>>>>>>>>>>> olcott <No...@NoWhere.com> wrote:
>>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>>>> #include <stdint.h>
>>>>>>>>>>>>>>>>> #define u32 uint32_t
>>>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>>>> #include <stdint.h>
>>>>>>>>>>>>>>>>> typedef void (*ptr)();
>>>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>>>> void P(ptr x)
>>>>>>>>>>>>>>>>> {
>>>>>>>>>>>>>>>>> if (H(x, x))
>>>>>>>>>>>>>>>>> HERE: goto HERE;
>>>>>>>>>>>>>>>>> return;
>>>>>>>>>>>>>>>>> }
>>>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>>>> int main()
>>>>>>>>>>>>>>>>> {
>>>>>>>>>>>>>>>>> Output("Input_Halts = ", H(P, P));
>>>>>>>>>>>>>>>>> }
>>>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>>>> _P()
>>>>>>>>>>>>>>>>> [000010d2](01) 55 push ebp
>>>>>>>>>>>>>>>>> [000010d3](02) 8bec mov ebp,esp
>>>>>>>>>>>>>>>>> [000010d5](03) 8b4508 mov eax,[ebp+08]
>>>>>>>>>>>>>>>>> [000010d8](01) 50 push eax
>>>>>>>>>>>>>>>>> [000010d9](03) 8b4d08 mov ecx,[ebp+08]
>>>>>>>>>>>>>>>>> [000010dc](01) 51 push ecx
>>>>>>>>>>>>>>>>> [000010dd](05) e820feffff call 00000f02
>>>>>>>>>>>>>>>>> [000010e2](03) 83c408 add esp,+08
>>>>>>>>>>>>>>>>> [000010e5](02) 85c0 test eax,eax
>>>>>>>>>>>>>>>>> [000010e7](02) 7402 jz 000010eb
>>>>>>>>>>>>>>>>> [000010e9](02) ebfe jmp 000010e9
>>>>>>>>>>>>>>>>> [000010eb](01) 5d pop ebp
>>>>>>>>>>>>>>>>> [000010ec](01) c3 ret
>>>>>>>>>>>>>>>>> Size in bytes:(0027) [000010ec]
>>>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>>>> Every sufficiently competent software engineer can
>>>>>>>>>>>>>>>>> easily verify
>>>>>>>>>>>>>>>>> that the complete and correct x86 emulation of the
>>>>>>>>>>>>>>>>> input to H(P,P)
>>>>>>>>>>>>>>>>> by H would never reach the "ret" instruction of P
>>>>>>>>>>>>>>>>> because both H
>>>>>>>>>>>>>>>>> and P would remain stuck in infinitely recursive
>>>>>>>>>>>>>>>>> emulation.
>>>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>>>> If H does correctly determine that this is the case in
>>>>>>>>>>>>>>>>> a finite
>>>>>>>>>>>>>>>>> number of steps then H could reject its input on this
>>>>>>>>>>>>>>>>> basis. Here
>>>>>>>>>>>>>>>>> are the details of exactly how H does this in a finite
>>>>>>>>>>>>>>>>> number of
>>>>>>>>>>>>>>>>> steps.
>>>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>>>> typedef struct Decoded
>>>>>>>>>>>>>>>>> {
>>>>>>>>>>>>>>>>> u32 Address;
>>>>>>>>>>>>>>>>> u32 ESP; // Current value of ESP
>>>>>>>>>>>>>>>>> u32 TOS; // Current value of Top of Stack
>>>>>>>>>>>>>>>>> u32 NumBytes;
>>>>>>>>>>>>>>>>> u32 Simplified_Opcode;
>>>>>>>>>>>>>>>>> u32 Decode_Target;
>>>>>>>>>>>>>>>>> } Decoded_Line_Of_Code;
>>>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>>>> machine stack stack machine assembly
>>>>>>>>>>>>>>>>> address address data code language
>>>>>>>>>>>>>>>>> ======== ======== ======== ========= =============
>>>>>>>>>>>>>>>>> [000010d2][00211e8a][00211e8e] 55 push ebp
>>>>>>>>>>>>>>>>> [000010d3][00211e8a][00211e8e] 8bec mov ebp,esp
>>>>>>>>>>>>>>>>> [000010d5][00211e8a][00211e8e] 8b4508 mov eax,[ebp+08]
>>>>>>>>>>>>>>>>> [000010d8][00211e86][000010d2] 50 push eax // push P
>>>>>>>>>>>>>>>>> [000010d9][00211e86][000010d2] 8b4d08 mov ecx,[ebp+08]
>>>>>>>>>>>>>>>>> [000010dc][00211e82][000010d2] 51 push ecx // push P
>>>>>>>>>>>>>>>>> [000010dd][00211e7e][000010e2] e820feffff call 00000f02
>>>>>>>>>>>>>>>>> // call H
>>>>>>>>>>>>>>>>> Infinitely Recursive Simulation Detected Simulation
>>>>>>>>>>>>>>>>> Stopped
>>>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>>>> // actual fully operational code in the x86utm
>>>>>>>>>>>>>>>>> operating system
>>>>>>>>>>>>>>>>> u32 H(u32 P, u32 I)
>>>>>>>>>>>>>>>>> {
>>>>>>>>>>>>>>>>> HERE:
>>>>>>>>>>>>>>>>> u32 End_Of_Code;
>>>>>>>>>>>>>>>>> u32 Address_of_H; // 2022-06-17
>>>>>>>>>>>>>>>>> u32 code_end = get_code_end(P);
>>>>>>>>>>>>>>>>> Decoded_Line_Of_Code *decoded = (Decoded_Line_Of_Code*)
>>>>>>>>>>>>>>>>> Allocate(sizeof(Decoded_Line_Of_Code));
>>>>>>>>>>>>>>>>> Registers* master_state = (Registers*)
>>>>>>>>>>>>>>>>> Allocate(sizeof(Registers));
>>>>>>>>>>>>>>>>> Registers* slave_state = (Registers*)
>>>>>>>>>>>>>>>>> Allocate(sizeof(Registers));
>>>>>>>>>>>>>>>>> u32* slave_stack = Allocate(0x10000); // 64k;
>>>>>>>>>>>>>>>>> u32 execution_trace =
>>>>>>>>>>>>>>>>> (u32)Allocate(sizeof(Decoded_Line_Of_Code)
>>>>>>>>>>>>>>>>> * 1000);
>>>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>>>> __asm lea eax, HERE // 2022-06-18
>>>>>>>>>>>>>>>>> __asm sub eax, 6 // 2022-06-18
>>>>>>>>>>>>>>>>> __asm mov Address_of_H, eax // 2022-06-18
>>>>>>>>>>>>>>>>> __asm mov eax, END_OF_CODE
>>>>>>>>>>>>>>>>> __asm mov End_Of_Code, eax
>>>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>>>> Output("Address_of_H:", Address_of_H); // 2022-06-11
>>>>>>>>>>>>>>>>> Init_slave_state(P, I, End_Of_Code, slave_state,
>>>>>>>>>>>>>>>>> slave_stack);
>>>>>>>>>>>>>>>>> Output("\nBegin Simulation Execution Trace Stored at:",
>>>>>>>>>>>>>>>>> execution_trace);
>>>>>>>>>>>>>>>>> if (Decide_Halting(&execution_trace, &decoded, code_end,
>>>>>>>>>>>>>>>>> &master_state, &slave_state, &slave_stack,
>>>>>>>>>>>>>>>>> Address_of_H, P, I))
>>>>>>>>>>>>>>>>> goto END_OF_CODE;
>>>>>>>>>>>>>>>>> return 0; // Does not halt
>>>>>>>>>>>>>>>>> END_OF_CODE:
>>>>>>>>>>>>>>>>> return 1; // Input has normally terminated
>>>>>>>>>>>>>>>>> }
>>>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>>>> H knows its own machine address and on this basis it
>>>>>>>>>>>>>>>>> can easily
>>>>>>>>>>>>>>>>> examine its stored execution_trace of P and determine:
>>>>>>>>>>>>>>>>> (a) P is calling H with the same arguments that H was
>>>>>>>>>>>>>>>>> called with.
>>>>>>>>>>>>>>>>> (b) No instructions in P could possibly escape this
>>>>>>>>>>>>>>>>> otherwise
>>>>>>>>>>>>>>>>> infinitely recursive emulation.
>>>>>>>>>>>>>>>>> (c) H aborts its emulation of P before its call to H is
>>>>>>>>>>>>>>>>> invoked.
>>>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>>>> Technically competent software engineers may not know
>>>>>>>>>>>>>>>>> this computer
>>>>>>>>>>>>>>>>> science:
>>>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>>>> A halt decider must compute the mapping from its inputs
>>>>>>>>>>>>>>>>> to an
>>>>>>>>>>>>>>>>> accept or reject state on the basis of the actual
>>>>>>>>>>>>>>>>> behavior that is
>>>>>>>>>>>>>>>>> actually specified by these inputs.
>>>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>>>> computation that halts … the Turing machine will halt
>>>>>>>>>>>>>>>>> whenever it
>>>>>>>>>>>>>>>>> enters a final state. (Linz:1990:234)
>>>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>>>> The "ret" instruction of P is its final state.
>>>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>>>> Linz, Peter 1990. An Introduction to Formal Languages
>>>>>>>>>>>>>>>>> and Automata.
>>>>>>>>>>>>>>>>> Lexington/Toronto: D. C. Heath and Company. (317-320)
>>>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>>> void Px(u32 x)
>>>>>>>>>>>>>>>> {
>>>>>>>>>>>>>>>> H(x, x);
>>>>>>>>>>>>>>>> return;
>>>>>>>>>>>>>>>> }
>>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>>> int main()
>>>>>>>>>>>>>>>> {
>>>>>>>>>>>>>>>> Output("Input_Halts = ", H((u32)Px, (u32)Px));
>>>>>>>>>>>>>>>> }
>>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>>> ...[000013e8][00102357][00000000] 83c408 add esp,+08
>>>>>>>>>>>>>>>> ...[000013eb][00102353][00000000] 50 push eax
>>>>>>>>>>>>>>>> ...[000013ec][0010234f][00000427] 6827040000 push 00000427
>>>>>>>>>>>>>>>> ---[000013f1][0010234f][00000427] e880f0ffff call 00000476
>>>>>>>>>>>>>>>> Input_Halts = 0
>>>>>>>>>>>>>>>> ...[000013f6][00102357][00000000] 83c408 add esp,+08
>>>>>>>>>>>>>>>> ...[000013f9][00102357][00000000] 33c0 xor eax,eax
>>>>>>>>>>>>>>>> ...[000013fb][0010235b][00100000] 5d pop ebp
>>>>>>>>>>>>>>>> ...[000013fc][0010235f][00000004] c3 ret
>>>>>>>>>>>>>>>> Number of Instructions Executed(16120)
>>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>>> It gets the answer wrong, i.e. input has not been
>>>>>>>>>>>>>>>> decided correctly.
>>>>>>>>>>>>>>>> QED.
>>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>>> /Flibble
>>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>> You and Richard are insufficiently technically competent
>>>>>>>>>>>>>>> at software
>>>>>>>>>>>>>>> engineering not meeting these specs:
>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>> A software engineer must be an expert in: the C
>>>>>>>>>>>>>>> programming language,
>>>>>>>>>>>>>>> the x86 programming language, exactly how C translates
>>>>>>>>>>>>>>> into x86 and
>>>>>>>>>>>>>>> the ability to recognize infinite recursion at the x86
>>>>>>>>>>>>>>> assembly
>>>>>>>>>>>>>>> language level. No knowledge of the halting problem is
>>>>>>>>>>>>>>> required.
>>>>>>>>>>>>>>
>>>>>>>>>>>>>> I cannot speak for Richard but I have 30+ years C++
>>>>>>>>>>>>>> experience; I also
>>>>>>>>>>>>>> have C and x86 assembly experience (I once wrote a Zilog
>>>>>>>>>>>>>> Z80A CPU
>>>>>>>>>>>>>> emulator in 80286 assembly) and I can recognize an
>>>>>>>>>>>>>> infinite recursion;
>>>>>>>>>>>>>> the problem is that you cannot recognize the fact that the
>>>>>>>>>>>>>> infinite
>>>>>>>>>>>>>> recursion only manifests as part of your invalid
>>>>>>>>>>>>>> simulation-based
>>>>>>>>>>>>>> omnishambles:
>>>>>>>>>>>>> If you are competent then you already know this is true and
>>>>>>>>>>>>> lie about it:
>>>>>>>>>>>>> Every sufficiently competent software engineer can easily
>>>>>>>>>>>>> verify that
>>>>>>>>>>>>> the complete and correct x86 emulation of the input to
>>>>>>>>>>>>> H(Px,Px) by H
>>>>>>>>>>>>> would never reach the "ret" instruction of P because both H
>>>>>>>>>>>>> and P would
>>>>>>>>>>>>> remain stuck in infinitely recursive emulation.
>>>>>>>>>>>>
>>>>>>>>>>>> H (if it was constructed correctly) is a computation, and a
>>>>>>>>>>>> computation *always* gives the same output for a given
>>>>>>>>>>>> input. So it doesn't make sense to say what it "would" do.
>>>>>>>>>>>> It either does or does not perform a complete and correct
>>>>>>>>>>>> emulation. And because H contains code to abort, and does
>>>>>>>>>>>> abort, it does not do a complete emulation.
>>>>>>>>>>>>
>>>>>>>>>>>> So the input must be given to a UTM, which by definition
>>>>>>>>>>>> does a correct and complete simulation, to see what the
>>>>>>>>>>>> actual behavior is. UTM(Px,Px) halts, therefore H(Px,Px)==0
>>>>>>>>>>>> is wrong.
>>>>>>>>>>>
>>>>>>>>>>> Every sufficiently competent software engineer can easily
>>>>>>>>>>> verify that
>>>>>>>>>>> the complete and correct x86 emulation of the input to
>>>>>>>>>>> H(Px,Px) by H
>>>>>>>>>>> would never reach the "ret" instruction of Px because both H
>>>>>>>>>>> and Px
>>>>>>>>>>> would remain stuck in infinitely recursive emulation.
>>>>>>>>>>
>>>>>>>>>> So you just repeated what you said instead of explaining why
>>>>>>>>>> I'm wrong. In other words you provided no rebuttal, which can
>>>>>>>>>> only be taken to mean that you have none.
>>>>>>>>> Your entire basis and all of assumptions was incorrect so when I
>>>>>>>>> provided an infallible one to that cannot possibly be correctly
>>>>>>>>> refuted
>>>>>>>>> you simply dodged it. That is a smart move for a dishonest
>>>>>>>>> person that
>>>>>>>>> is only interested in rebuttal.
>>>>>>>>>
>>>>>>>>> I dare you to go back to the prior post and find any error in my
>>>>>>>>> airtight correct reasoning. Another dodge will be construed as
>>>>>>>>> a tacit
>>>>>>>>> admission of defeat.
>>>>>>>>
>>>>>>>> As stated before H (or more accurately Ha) does not perform a
>>>>>>>> complete and correct emulation because it aborts. So by
>>>>>>>> definition it cannot be complete.
>>>>>>> I never claimed that H(P,P) performs a complete and correct
>>>>>>> emulation of
>>>>>>> its input so your rebuttal is the strawman deception.
>>>>>>>
>>>>>>> I claimed that H(P,P) correctly predicts that its complete and
>>>>>>> correct
>>>>>>> x86 emulation of its input would never reach the "ret"
>>>>>>> instruction of P.
>>>>>>
>>>>>> But since H, or more accurately Ha, *can't* do a correct and
>>>>>> complete emulation of its input, your point is moot.
>>>>> _Infinite_Loop()
>>>>> [00001082](01) 55 push ebp
>>>>> [00001083](02) 8bec mov ebp,esp
>>>>> [00001085](02) ebfe jmp 00001085
>>>>> [00001087](01) 5d pop ebp
>>>>> [00001088](01) c3 ret
>>>>> Size in bytes:(0007) [00001088]
>>>>>
>>>>> Begin Local Halt Decider Simulation Execution Trace Stored at:211e8f
>>>>> ...[00001082][00211e7f][00211e83] 55 push ebp
>>>>> ...[00001083][00211e7f][00211e83] 8bec mov ebp,esp
>>>>> ...[00001085][00211e7f][00211e83] ebfe jmp 00001085
>>>>> ...[00001085][00211e7f][00211e83] ebfe jmp 00001085
>>>>> Infinite Loop Detected Simulation Stopped
>>>>>
>>>>> On the basis of this exact same utterly moronic reasoning because H
>>>>> *can't* do a correct and complete emulation of its input, H cannot
>>>>> possibly determine that _Infinite_Loop() never halts.
>>>>
>>>> Now who's using the strawman error?  Just because H can determine
>>>> that _Infinite_Loop does not halt doesn't mean that it gets other
>>>> cases right.  B
>>>
>>> You just said that H(P,P) cannot correctly predict that the correct
>>> and complete x86 emulation of its input would never reach the "ret"
>>> instruction of P without a compete x86 emulation of its input. I just
>>> proved that is a very stupid thing to say.
>>>
>>
>> No, that isn't what he said. Just shows you can't read.
>>
>> He said that an H that aborts its simulation can't do a Complete and
>> Correct emulation of its input.
>
> Implying that H cannot predict the behavior of the complete and correct
> x86 emulation of its input without performing an actual complete emulation.
>


Click here to read the complete article
Re: Technically competent Software engineers can verify this halting problem proof refutation [ truism ]

<TBQsK.226481$vAW9.94486@fx10.iad>

  copy mid

https://www.novabbs.com/computers/article-flat.php?id=9716&group=comp.ai.philosophy#9716

  copy link   Newsgroups: comp.theory comp.ai.philosophy sci.logic sci.math
Path: i2pn2.org!i2pn.org!weretis.net!feeder8.news.weretis.net!news.uzoreto.com!news-out.netnews.com!news.alt.net!fdc2.netnews.com!peer02.ams1!peer.ams1.xlned.com!news.xlned.com!peer01.iad!feed-me.highwinds-media.com!news.highwinds-media.com!fx10.iad.POSTED!not-for-mail
MIME-Version: 1.0
User-Agent: Mozilla/5.0 (Macintosh; Intel Mac OS X 10.15; rv:91.0)
Gecko/20100101 Thunderbird/91.10.0
Subject: Re: Technically competent Software engineers can verify this halting
problem proof refutation [ truism ]
Content-Language: en-US
Newsgroups: comp.theory,comp.ai.philosophy,sci.logic,sci.math
References: <EOydnaeszcdfHS__nZ2dnUU7_83NnZ2d@giganews.com>
<20220622203106.00003fa2@reddwarf.jmc>
<xqSdnb2KKdOL5i7_nZ2dnUU7_81g4p2d@giganews.com>
<20220622222043.00001cb9@reddwarf.jmc>
<_eidnf40g7wFES7_nZ2dnUU7_8zNnZ2d@giganews.com>
<de67d3d5-10f3-4e28-9b31-082e97c1145en@googlegroups.com>
<MtadnVqn1dCkCy7_nZ2dnUU7_8zNnZ2d@giganews.com>
<5f26b879-5cd4-4f28-b7c4-c3e4ed0614c2n@googlegroups.com>
<9OydnaRCCvQ9PC7_nZ2dnUU7_83NnZ2d@giganews.com>
<58dc4a7a-d635-44bb-bf2a-3a959d9d808an@googlegroups.com>
<SJ-dnXBdiJ6aIi7_nZ2dnUU7_83NnZ2d@giganews.com>
<d59b136e-6411-462f-9b62-229c0ac00608n@googlegroups.com>
<NZmdnRY_I-BpXi7_nZ2dnUU7_83NnZ2d@giganews.com>
<5934b17d-9607-49d1-97db-813a232a6d94n@googlegroups.com>
<AfGdncZCoPo1US7_nZ2dnUU7_83NnZ2d@giganews.com>
<15937d3c-f189-4c7a-bd39-2d7e25754d15n@googlegroups.com>
<lt2dnRXE1YFyTi7_nZ2dnUU7_8zNnZ2d@giganews.com>
From: Rich...@Damon-Family.org (Richard Damon)
In-Reply-To: <lt2dnRXE1YFyTi7_nZ2dnUU7_8zNnZ2d@giganews.com>
Content-Type: text/plain; charset=UTF-8; format=flowed
Content-Transfer-Encoding: 7bit
Lines: 12
Message-ID: <TBQsK.226481$vAW9.94486@fx10.iad>
X-Complaints-To: abuse@easynews.com
Organization: Forte - www.forteinc.com
X-Complaints-Info: Please be sure to forward a copy of ALL headers otherwise we will be unable to process your complaint properly.
Date: Wed, 22 Jun 2022 22:54:42 -0400
X-Received-Bytes: 2244
 by: Richard Damon - Thu, 23 Jun 2022 02:54 UTC

On 6/22/22 10:46 PM, olcott wrote:
>
> There are no UTM's in software engineering thus yet another strawman
> deception.
>

Then I guess you are admitting to being a liar, since you have used that
term in the past to refer to that operaiton.

You are just digging your grave deeper and deeper.

You seem to be slowly (or not so slowly) losing your mind.

Re: Technically competent Software engineers can verify this halting problem proof refutation [ full closure ]

<x9KdnSlyYIyxSy7_nZ2dnUU7_8zNnZ2d@giganews.com>

  copy mid

https://www.novabbs.com/computers/article-flat.php?id=9717&group=comp.ai.philosophy#9717

  copy link   Newsgroups: comp.theory comp.ai.philosophy sci.logic sci.math
Path: i2pn2.org!i2pn.org!weretis.net!feeder6.news.weretis.net!news.misty.com!border2.nntp.dca1.giganews.com!nntp.giganews.com!buffer2.nntp.dca1.giganews.com!buffer1.nntp.dca1.giganews.com!news.giganews.com.POSTED!not-for-mail
NNTP-Posting-Date: Wed, 22 Jun 2022 21:55:40 -0500
Date: Wed, 22 Jun 2022 21:55:38 -0500
MIME-Version: 1.0
User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:91.0) Gecko/20100101
Thunderbird/91.10.0
Subject: Re: Technically competent Software engineers can verify this halting
problem proof refutation [ full closure ]
Content-Language: en-US
Newsgroups: comp.theory,comp.ai.philosophy,sci.logic,sci.math
References: <EOydnaeszcdfHS__nZ2dnUU7_83NnZ2d@giganews.com>
<20220622203106.00003fa2@reddwarf.jmc>
<xqSdnb2KKdOL5i7_nZ2dnUU7_81g4p2d@giganews.com>
<TwOsK.191531$JVi.174704@fx17.iad>
<N5WdnY_iDptAKC7_nZ2dnUU7_8xh4p2d@giganews.com>
<nLOsK.9452$mY1.1924@fx01.iad>
<3LmdnVllU6W8Jy7_nZ2dnUU7_8xh4p2d@giganews.com>
<j8PsK.15112$%i2.4898@fx48.iad>
<s9CdndzLkud5XC7_nZ2dnUU7_83NnZ2d@giganews.com>
<%sPsK.15923$nZ1.10923@fx05.iad>
<NZmdnRE_I-AmWS7_nZ2dnUU7_81g4p2d@giganews.com>
<RAPsK.191532$JVi.129665@fx17.iad>
<jeKdndsSjJTDUC7_nZ2dnUU7_83NnZ2d@giganews.com>
<SiQsK.193267$70j.57451@fx16.iad>
From: NoO...@NoWhere.com (olcott)
In-Reply-To: <SiQsK.193267$70j.57451@fx16.iad>
Content-Type: text/plain; charset=UTF-8; format=flowed
Content-Transfer-Encoding: 8bit
Message-ID: <x9KdnSlyYIyxSy7_nZ2dnUU7_8zNnZ2d@giganews.com>
Lines: 205
X-Usenet-Provider: http://www.giganews.com
X-Trace: sv3-fiHrfon73BAzpzdkpE+f0kjHq6kZmaVE00mbfC+QDK7mvc8AptLtgM54mixQEvmfK3OJgh35FGndWH0!gt6R13HCC2RPvxiJ9GY9XmQWvqU+F7+mNMcbagx6bgCfaUEHjfQOdfuJy+4CM4OgwYVljgnYHGMG
X-Complaints-To: abuse@giganews.com
X-DMCA-Notifications: http://www.giganews.com/info/dmca.html
X-Abuse-and-DMCA-Info: Please be sure to forward a copy of ALL headers
X-Abuse-and-DMCA-Info: Otherwise we will be unable to process your complaint properly
X-Postfilter: 1.3.40
X-Original-Bytes: 10494
 by: olcott - Thu, 23 Jun 2022 02:55 UTC

On 6/22/2022 9:34 PM, Richard Damon wrote:
> On 6/22/22 10:18 PM, olcott wrote:
>> On 6/22/2022 8:45 PM, Richard Damon wrote:
>>> On 6/22/22 9:41 PM, olcott wrote:
>>>> On 6/22/2022 8:36 PM, Richard Damon wrote:
>>>>> On 6/22/22 9:29 PM, olcott wrote:
>>>>>> On 6/22/2022 8:14 PM, Richard Damon wrote:
>>>>>>> On 6/22/22 8:55 PM, olcott wrote:
>>>>>>>> On 6/22/2022 7:48 PM, Richard Damon wrote:
>>>>>>>>> On 6/22/22 8:37 PM, olcott wrote:
>>>>>>>>
>>>>>>>>>> First you agree that my words are perfectly correct within
>>>>>>>>>> their specified context
>>>>>>>>>
>>>>>>>>> Since you haven't actualy defined you context, and imply that
>>>>>>>>> it is the halting problem, where they can not be correct, that
>>>>>>>>> is not possible.
>>>>>>>>>>
>>>>>>>> First you agree that these words are 100% correct within the
>>>>>>>> context of software engineering totally ignoring the context of
>>>>>>>> the halting problem.
>>>>>>>>
>>>>>>>> #include <stdint.h>
>>>>>>>> #define u32 uint32_t
>>>>>>>>
>>>>>>>> #include <stdint.h>
>>>>>>>> typedef void (*ptr)();
>>>>>>>>
>>>>>>>> void P(ptr x)
>>>>>>>> {
>>>>>>>>    if (H(x, x))
>>>>>>>>      HERE: goto HERE;
>>>>>>>>    return;
>>>>>>>> }
>>>>>>>>
>>>>>>>> int main()
>>>>>>>> {
>>>>>>>>    Output("Input_Halts = ", H(P, P));
>>>>>>>> }
>>>>>>>>
>>>>>>>> _P()
>>>>>>>> [000010d2](01)  55              push ebp
>>>>>>>> [000010d3](02)  8bec            mov ebp,esp
>>>>>>>> [000010d5](03)  8b4508          mov eax,[ebp+08]
>>>>>>>> [000010d8](01)  50              push eax
>>>>>>>> [000010d9](03)  8b4d08          mov ecx,[ebp+08]
>>>>>>>> [000010dc](01)  51              push ecx
>>>>>>>> [000010dd](05)  e820feffff      call 00000f02
>>>>>>>> [000010e2](03)  83c408          add esp,+08
>>>>>>>> [000010e5](02)  85c0            test eax,eax
>>>>>>>> [000010e7](02)  7402            jz 000010eb
>>>>>>>> [000010e9](02)  ebfe            jmp 000010e9
>>>>>>>> [000010eb](01)  5d              pop ebp
>>>>>>>> [000010ec](01)  c3              ret
>>>>>>>> Size in bytes:(0027) [000010ec]
>>>>>>>>
>>>>>>>> Every sufficiently competent software engineer can easily verify
>>>>>>>> that the complete and correct x86 emulation of the input to
>>>>>>>> H(P,P) by H would never reach the "ret" instruction of P because
>>>>>>>> both H and P would remain stuck in infinitely recursive emulation.
>>>>>>>>
>>>>>>>
>>>>>>> So, if H actually is a program that does a COMPLETE and correct
>>>>>>> x86 emulation of its input, then YES, as I have said many time
>>>>>>> before, this combination is non-halting.
>>>>>>>
>>>>>>> The fact that you need to keep going back to this, and seem to
>>>>>>> just be refusing to accept the conditions under which you have
>>>>>>> proved it just shows the problems with your thought process.
>>>>>>>
>>>>>>>> If H does correctly determine that this is the case in a finite
>>>>>>>> number of steps then H could reject its input on this basis.
>>>>>>>> Here are the details of exactly how H does this in a finite
>>>>>>>> number of steps.
>>>>>>>
>>>>>>> Except that NOW H isn't the H we were just talking about, so you
>>>>>>> are just proving that you are either lying or an idiot.
>>>>>>>
>>>>>>> Remember, the first analysis had the CONDITION on it that H did a
>>>>>>> COMPLETE and correct x86 emulation.
>>>>>>>
>>>>>>> Once you remove that property form H, that conclusion no long
>>>>>>> holds and you are shown to be a lying idiot.
>>>>>>>
>>>>>>>>
>>>>>>>> typedef struct Decoded
>>>>>>>> {
>>>>>>>>    u32 Address;
>>>>>>>>    u32 ESP;          // Current value of ESP
>>>>>>>>    u32 TOS;          // Current value of Top of Stack
>>>>>>>>    u32 NumBytes;
>>>>>>>>    u32 Simplified_Opcode;
>>>>>>>>    u32 Decode_Target;
>>>>>>>> } Decoded_Line_Of_Code;
>>>>>>>>
>>>>>>>>   machine   stack     stack     machine    assembly
>>>>>>>>   address   address   data      code       language
>>>>>>>>   ========  ========  ========  =========  =============
>>>>>>>> [000010d2][00211e8a][00211e8e] 55         push ebp
>>>>>>>> [000010d3][00211e8a][00211e8e] 8bec       mov ebp,esp
>>>>>>>> [000010d5][00211e8a][00211e8e] 8b4508     mov eax,[ebp+08]
>>>>>>>> [000010d8][00211e86][000010d2] 50         push eax        // push P
>>>>>>>> [000010d9][00211e86][000010d2] 8b4d08     mov ecx,[ebp+08]
>>>>>>>> [000010dc][00211e82][000010d2] 51         push ecx        // push P
>>>>>>>> [000010dd][00211e7e][000010e2] e820feffff call 00000f02   // call H
>>>>>>>> Infinitely Recursive Simulation Detected Simulation Stopped
>>>>>>>>
>>>>>>>> // actual fully operational code in the x86utm operating system
>>>>>>>> u32 H(u32 P, u32 I)
>>>>>>>> {
>>>>>>>> HERE:
>>>>>>>>    u32 End_Of_Code;
>>>>>>>>    u32 Address_of_H;              // 2022-06-17
>>>>>>>>    u32 code_end                  = get_code_end(P);
>>>>>>>>    Decoded_Line_Of_Code *decoded = (Decoded_Line_Of_Code*)
>>>>>>>> Allocate(sizeof(Decoded_Line_Of_Code));
>>>>>>>>    Registers*  master_state      = (Registers*)
>>>>>>>> Allocate(sizeof(Registers));
>>>>>>>>    Registers*  slave_state       = (Registers*)
>>>>>>>> Allocate(sizeof(Registers));
>>>>>>>>    u32*        slave_stack       = Allocate(0x10000); // 64k;
>>>>>>>>    u32  execution_trace =
>>>>>>>> (u32)Allocate(sizeof(Decoded_Line_Of_Code) * 1000);
>>>>>>>>
>>>>>>>>    __asm lea eax, HERE             // 2022-06-18
>>>>>>>>    __asm sub eax, 6                // 2022-06-18
>>>>>>>>    __asm mov Address_of_H, eax     // 2022-06-18
>>>>>>>>    __asm mov eax, END_OF_CODE
>>>>>>>>    __asm mov End_Of_Code, eax
>>>>>>>>
>>>>>>>>    Output("Address_of_H:", Address_of_H); // 2022-06-11
>>>>>>>>    Init_slave_state(P, I, End_Of_Code, slave_state, slave_stack);
>>>>>>>>    Output("\nBegin Simulation   Execution Trace Stored at:",
>>>>>>>> execution_trace);
>>>>>>>>    if (Decide_Halting(&execution_trace, &decoded, code_end,
>>>>>>>> &master_state,
>>>>>>>>                       &slave_state, &slave_stack, Address_of_H,
>>>>>>>> P, I))
>>>>>>>>        goto END_OF_CODE;
>>>>>>>>    return 0;  // Does not halt
>>>>>>>> END_OF_CODE:
>>>>>>>>    return 1; // Input has normally terminated
>>>>>>>> }
>>>>>>>>
>>>>>>>> H knows its own machine address and on this basis it can easily
>>>>>>>> examine its stored execution_trace of P and determine:
>>>>>>>> (a) P is calling H with the same arguments that H was called with.
>>>>>>>> (b) No instructions in P could possibly escape this otherwise
>>>>>>>> infinitely recursive emulation.
>>>>>>>> (c) H aborts its emulation of P before its call to H is invoked.
>>>>>>>>
>>>>>>>>
>>>>>>>
>>>>>>> (b) is NOT a correct rule. Thos has been pointed out before, and
>>>>>>> you have ignored it.
>>>>>>>
>>>>>> That you don't understand what I mean does not mean that it is an
>>>>>> incorrect rule.
>>>>>>
>>>>>> Here is an example where P does have instruction that could
>>>>>> possibly escape this otherwise infinitely recursive emulation:
>>>>>>
>>>>>>
>>>>>> void P(ptr x)
>>>>>> {
>>>>>> static count = 0;
>>>>>>    count++;
>>>>>>    if count > 3)
>>>>>>      return;
>>>>>>    if (H(x, x))
>>>>>>      HERE: goto HERE;
>>>>>>    return;
>>>>>> }
>>>>>>
>>>>>
>>>>> FALLACY of proof by example. I never said that (b) isn't sometimes
>>>>> true, just it isn't an always true condition. You fail at
>>>>> elementary logic.
>>>>
>>>> Try and find a valid counter-example. Every attempt at rebuttal that
>>>> is not a valid counter-example is one form of deception or another.
>>>>
>>>>
>>>
>>> P(P)
>>
>> That is not any example of (b), thus another mere strawman deception.
>>
>
> Why not?
>
It is not an example of the simulation of the input to H(P,P) at all.


Click here to read the complete article
Re: Technically competent Software engineers can verify this halting problem proof refutation [ full closure ]

<3iRsK.3746$vd2.1411@fx39.iad>

  copy mid

https://www.novabbs.com/computers/article-flat.php?id=9718&group=comp.ai.philosophy#9718

  copy link   Newsgroups: comp.theory comp.ai.philosophy sci.logic sci.math
Path: i2pn2.org!i2pn.org!usenet.blueworldhosting.com!feed1.usenet.blueworldhosting.com!peer02.iad!feed-me.highwinds-media.com!news.highwinds-media.com!fx39.iad.POSTED!not-for-mail
MIME-Version: 1.0
User-Agent: Mozilla/5.0 (Macintosh; Intel Mac OS X 10.15; rv:91.0)
Gecko/20100101 Thunderbird/91.10.0
Subject: Re: Technically competent Software engineers can verify this halting
problem proof refutation [ full closure ]
Content-Language: en-US
Newsgroups: comp.theory,comp.ai.philosophy,sci.logic,sci.math
References: <EOydnaeszcdfHS__nZ2dnUU7_83NnZ2d@giganews.com>
<20220622203106.00003fa2@reddwarf.jmc>
<xqSdnb2KKdOL5i7_nZ2dnUU7_81g4p2d@giganews.com>
<TwOsK.191531$JVi.174704@fx17.iad>
<N5WdnY_iDptAKC7_nZ2dnUU7_8xh4p2d@giganews.com>
<nLOsK.9452$mY1.1924@fx01.iad>
<3LmdnVllU6W8Jy7_nZ2dnUU7_8xh4p2d@giganews.com>
<j8PsK.15112$%i2.4898@fx48.iad>
<s9CdndzLkud5XC7_nZ2dnUU7_83NnZ2d@giganews.com>
<%sPsK.15923$nZ1.10923@fx05.iad>
<NZmdnRE_I-AmWS7_nZ2dnUU7_81g4p2d@giganews.com>
<RAPsK.191532$JVi.129665@fx17.iad>
<jeKdndsSjJTDUC7_nZ2dnUU7_83NnZ2d@giganews.com>
<SiQsK.193267$70j.57451@fx16.iad>
<x9KdnSlyYIyxSy7_nZ2dnUU7_8zNnZ2d@giganews.com>
From: Rich...@Damon-Family.org (Richard Damon)
In-Reply-To: <x9KdnSlyYIyxSy7_nZ2dnUU7_8zNnZ2d@giganews.com>
Content-Type: text/plain; charset=UTF-8; format=flowed
Content-Transfer-Encoding: 8bit
Lines: 234
Message-ID: <3iRsK.3746$vd2.1411@fx39.iad>
X-Complaints-To: abuse@easynews.com
Organization: Forte - www.forteinc.com
X-Complaints-Info: Please be sure to forward a copy of ALL headers otherwise we will be unable to process your complaint properly.
Date: Wed, 22 Jun 2022 23:41:50 -0400
X-Received-Bytes: 11365
 by: Richard Damon - Thu, 23 Jun 2022 03:41 UTC

On 6/22/22 10:55 PM, olcott wrote:
> On 6/22/2022 9:34 PM, Richard Damon wrote:
>> On 6/22/22 10:18 PM, olcott wrote:
>>> On 6/22/2022 8:45 PM, Richard Damon wrote:
>>>> On 6/22/22 9:41 PM, olcott wrote:
>>>>> On 6/22/2022 8:36 PM, Richard Damon wrote:
>>>>>> On 6/22/22 9:29 PM, olcott wrote:
>>>>>>> On 6/22/2022 8:14 PM, Richard Damon wrote:
>>>>>>>> On 6/22/22 8:55 PM, olcott wrote:
>>>>>>>>> On 6/22/2022 7:48 PM, Richard Damon wrote:
>>>>>>>>>> On 6/22/22 8:37 PM, olcott wrote:
>>>>>>>>>
>>>>>>>>>>> First you agree that my words are perfectly correct within
>>>>>>>>>>> their specified context
>>>>>>>>>>
>>>>>>>>>> Since you haven't actualy defined you context, and imply that
>>>>>>>>>> it is the halting problem, where they can not be correct, that
>>>>>>>>>> is not possible.
>>>>>>>>>>>
>>>>>>>>> First you agree that these words are 100% correct within the
>>>>>>>>> context of software engineering totally ignoring the context of
>>>>>>>>> the halting problem.
>>>>>>>>>
>>>>>>>>> #include <stdint.h>
>>>>>>>>> #define u32 uint32_t
>>>>>>>>>
>>>>>>>>> #include <stdint.h>
>>>>>>>>> typedef void (*ptr)();
>>>>>>>>>
>>>>>>>>> void P(ptr x)
>>>>>>>>> {
>>>>>>>>>    if (H(x, x))
>>>>>>>>>      HERE: goto HERE;
>>>>>>>>>    return;
>>>>>>>>> }
>>>>>>>>>
>>>>>>>>> int main()
>>>>>>>>> {
>>>>>>>>>    Output("Input_Halts = ", H(P, P));
>>>>>>>>> }
>>>>>>>>>
>>>>>>>>> _P()
>>>>>>>>> [000010d2](01)  55              push ebp
>>>>>>>>> [000010d3](02)  8bec            mov ebp,esp
>>>>>>>>> [000010d5](03)  8b4508          mov eax,[ebp+08]
>>>>>>>>> [000010d8](01)  50              push eax
>>>>>>>>> [000010d9](03)  8b4d08          mov ecx,[ebp+08]
>>>>>>>>> [000010dc](01)  51              push ecx
>>>>>>>>> [000010dd](05)  e820feffff      call 00000f02
>>>>>>>>> [000010e2](03)  83c408          add esp,+08
>>>>>>>>> [000010e5](02)  85c0            test eax,eax
>>>>>>>>> [000010e7](02)  7402            jz 000010eb
>>>>>>>>> [000010e9](02)  ebfe            jmp 000010e9
>>>>>>>>> [000010eb](01)  5d              pop ebp
>>>>>>>>> [000010ec](01)  c3              ret
>>>>>>>>> Size in bytes:(0027) [000010ec]
>>>>>>>>>
>>>>>>>>> Every sufficiently competent software engineer can easily
>>>>>>>>> verify that the complete and correct x86 emulation of the input
>>>>>>>>> to H(P,P) by H would never reach the "ret" instruction of P
>>>>>>>>> because both H and P would remain stuck in infinitely recursive
>>>>>>>>> emulation.
>>>>>>>>>
>>>>>>>>
>>>>>>>> So, if H actually is a program that does a COMPLETE and correct
>>>>>>>> x86 emulation of its input, then YES, as I have said many time
>>>>>>>> before, this combination is non-halting.
>>>>>>>>
>>>>>>>> The fact that you need to keep going back to this, and seem to
>>>>>>>> just be refusing to accept the conditions under which you have
>>>>>>>> proved it just shows the problems with your thought process.
>>>>>>>>
>>>>>>>>> If H does correctly determine that this is the case in a finite
>>>>>>>>> number of steps then H could reject its input on this basis.
>>>>>>>>> Here are the details of exactly how H does this in a finite
>>>>>>>>> number of steps.
>>>>>>>>
>>>>>>>> Except that NOW H isn't the H we were just talking about, so you
>>>>>>>> are just proving that you are either lying or an idiot.
>>>>>>>>
>>>>>>>> Remember, the first analysis had the CONDITION on it that H did
>>>>>>>> a COMPLETE and correct x86 emulation.
>>>>>>>>
>>>>>>>> Once you remove that property form H, that conclusion no long
>>>>>>>> holds and you are shown to be a lying idiot.
>>>>>>>>
>>>>>>>>>
>>>>>>>>> typedef struct Decoded
>>>>>>>>> {
>>>>>>>>>    u32 Address;
>>>>>>>>>    u32 ESP;          // Current value of ESP
>>>>>>>>>    u32 TOS;          // Current value of Top of Stack
>>>>>>>>>    u32 NumBytes;
>>>>>>>>>    u32 Simplified_Opcode;
>>>>>>>>>    u32 Decode_Target;
>>>>>>>>> } Decoded_Line_Of_Code;
>>>>>>>>>
>>>>>>>>>   machine   stack     stack     machine    assembly
>>>>>>>>>   address   address   data      code       language
>>>>>>>>>   ========  ========  ========  =========  =============
>>>>>>>>> [000010d2][00211e8a][00211e8e] 55         push ebp
>>>>>>>>> [000010d3][00211e8a][00211e8e] 8bec       mov ebp,esp
>>>>>>>>> [000010d5][00211e8a][00211e8e] 8b4508     mov eax,[ebp+08]
>>>>>>>>> [000010d8][00211e86][000010d2] 50         push eax        //
>>>>>>>>> push P
>>>>>>>>> [000010d9][00211e86][000010d2] 8b4d08     mov ecx,[ebp+08]
>>>>>>>>> [000010dc][00211e82][000010d2] 51         push ecx        //
>>>>>>>>> push P
>>>>>>>>> [000010dd][00211e7e][000010e2] e820feffff call 00000f02   //
>>>>>>>>> call H
>>>>>>>>> Infinitely Recursive Simulation Detected Simulation Stopped
>>>>>>>>>
>>>>>>>>> // actual fully operational code in the x86utm operating system
>>>>>>>>> u32 H(u32 P, u32 I)
>>>>>>>>> {
>>>>>>>>> HERE:
>>>>>>>>>    u32 End_Of_Code;
>>>>>>>>>    u32 Address_of_H;              // 2022-06-17
>>>>>>>>>    u32 code_end                  = get_code_end(P);
>>>>>>>>>    Decoded_Line_Of_Code *decoded = (Decoded_Line_Of_Code*)
>>>>>>>>> Allocate(sizeof(Decoded_Line_Of_Code));
>>>>>>>>>    Registers*  master_state      = (Registers*)
>>>>>>>>> Allocate(sizeof(Registers));
>>>>>>>>>    Registers*  slave_state       = (Registers*)
>>>>>>>>> Allocate(sizeof(Registers));
>>>>>>>>>    u32*        slave_stack       = Allocate(0x10000); // 64k;
>>>>>>>>>    u32  execution_trace =
>>>>>>>>> (u32)Allocate(sizeof(Decoded_Line_Of_Code) * 1000);
>>>>>>>>>
>>>>>>>>>    __asm lea eax, HERE             // 2022-06-18
>>>>>>>>>    __asm sub eax, 6                // 2022-06-18
>>>>>>>>>    __asm mov Address_of_H, eax     // 2022-06-18
>>>>>>>>>    __asm mov eax, END_OF_CODE
>>>>>>>>>    __asm mov End_Of_Code, eax
>>>>>>>>>
>>>>>>>>>    Output("Address_of_H:", Address_of_H); // 2022-06-11
>>>>>>>>>    Init_slave_state(P, I, End_Of_Code, slave_state, slave_stack);
>>>>>>>>>    Output("\nBegin Simulation   Execution Trace Stored at:",
>>>>>>>>> execution_trace);
>>>>>>>>>    if (Decide_Halting(&execution_trace, &decoded, code_end,
>>>>>>>>> &master_state,
>>>>>>>>>                       &slave_state, &slave_stack, Address_of_H,
>>>>>>>>> P, I))
>>>>>>>>>        goto END_OF_CODE;
>>>>>>>>>    return 0;  // Does not halt
>>>>>>>>> END_OF_CODE:
>>>>>>>>>    return 1; // Input has normally terminated
>>>>>>>>> }
>>>>>>>>>
>>>>>>>>> H knows its own machine address and on this basis it can easily
>>>>>>>>> examine its stored execution_trace of P and determine:
>>>>>>>>> (a) P is calling H with the same arguments that H was called with.
>>>>>>>>> (b) No instructions in P could possibly escape this otherwise
>>>>>>>>> infinitely recursive emulation.
>>>>>>>>> (c) H aborts its emulation of P before its call to H is invoked.
>>>>>>>>>
>>>>>>>>>
>>>>>>>>
>>>>>>>> (b) is NOT a correct rule. Thos has been pointed out before, and
>>>>>>>> you have ignored it.
>>>>>>>>
>>>>>>> That you don't understand what I mean does not mean that it is an
>>>>>>> incorrect rule.
>>>>>>>
>>>>>>> Here is an example where P does have instruction that could
>>>>>>> possibly escape this otherwise infinitely recursive emulation:
>>>>>>>
>>>>>>>
>>>>>>> void P(ptr x)
>>>>>>> {
>>>>>>> static count = 0;
>>>>>>>    count++;
>>>>>>>    if count > 3)
>>>>>>>      return;
>>>>>>>    if (H(x, x))
>>>>>>>      HERE: goto HERE;
>>>>>>>    return;
>>>>>>> }
>>>>>>>
>>>>>>
>>>>>> FALLACY of proof by example. I never said that (b) isn't sometimes
>>>>>> true, just it isn't an always true condition. You fail at
>>>>>> elementary logic.
>>>>>
>>>>> Try and find a valid counter-example. Every attempt at rebuttal
>>>>> that is not a valid counter-example is one form of deception or
>>>>> another.
>>>>>
>>>>>
>>>>
>>>> P(P)
>>>
>>> That is not any example of (b), thus another mere strawman deception.
>>>
>>
>> Why not?
>>
> It is not an example of the simulation of the input to H(P,P) at all.
>
> Basically you must adapt P so that when H(P,P) emulates its input it
> determines that P never reaches its "ret" instruction and the adapted
> emulated P still reaches its "ret" instruction.
>
>


Click here to read the complete article
Re: Technically competent Software engineers can verify this halting problem proof refutation [ full closure ]

<7t6dnRsAGcTtay7_nZ2dnUU7_83NnZ2d@giganews.com>

  copy mid

https://www.novabbs.com/computers/article-flat.php?id=9719&group=comp.ai.philosophy#9719

  copy link   Newsgroups: comp.theory comp.ai.philosophy sci.logic sci.math
Path: i2pn2.org!i2pn.org!weretis.net!feeder6.news.weretis.net!news.misty.com!border2.nntp.dca1.giganews.com!nntp.giganews.com!buffer2.nntp.dca1.giganews.com!buffer1.nntp.dca1.giganews.com!news.giganews.com.POSTED!not-for-mail
NNTP-Posting-Date: Thu, 23 Jun 2022 00:13:20 -0500
Date: Thu, 23 Jun 2022 00:13:18 -0500
MIME-Version: 1.0
User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:91.0) Gecko/20100101
Thunderbird/91.10.0
Subject: Re: Technically competent Software engineers can verify this halting
problem proof refutation [ full closure ]
Content-Language: en-US
Newsgroups: comp.theory,comp.ai.philosophy,sci.logic,sci.math
References: <EOydnaeszcdfHS__nZ2dnUU7_83NnZ2d@giganews.com>
<20220622203106.00003fa2@reddwarf.jmc>
<xqSdnb2KKdOL5i7_nZ2dnUU7_81g4p2d@giganews.com>
<TwOsK.191531$JVi.174704@fx17.iad>
<N5WdnY_iDptAKC7_nZ2dnUU7_8xh4p2d@giganews.com>
<nLOsK.9452$mY1.1924@fx01.iad>
<3LmdnVllU6W8Jy7_nZ2dnUU7_8xh4p2d@giganews.com>
<j8PsK.15112$%i2.4898@fx48.iad>
<s9CdndzLkud5XC7_nZ2dnUU7_83NnZ2d@giganews.com>
<%sPsK.15923$nZ1.10923@fx05.iad>
<NZmdnRE_I-AmWS7_nZ2dnUU7_81g4p2d@giganews.com>
<RAPsK.191532$JVi.129665@fx17.iad>
<jeKdndsSjJTDUC7_nZ2dnUU7_83NnZ2d@giganews.com>
<SiQsK.193267$70j.57451@fx16.iad>
<x9KdnSlyYIyxSy7_nZ2dnUU7_8zNnZ2d@giganews.com>
<3iRsK.3746$vd2.1411@fx39.iad>
From: NoO...@NoWhere.com (olcott)
In-Reply-To: <3iRsK.3746$vd2.1411@fx39.iad>
Content-Type: text/plain; charset=UTF-8; format=flowed
Content-Transfer-Encoding: 8bit
Message-ID: <7t6dnRsAGcTtay7_nZ2dnUU7_83NnZ2d@giganews.com>
Lines: 223
X-Usenet-Provider: http://www.giganews.com
X-Trace: sv3-4dUHtGRjARnThjz02buKmn39X4BqUTqD5xoJNcd5M8IxwP8Vs9RkpHFTBj3/xLaass7oxty/AmCtQQo!+NJUeY6T5tFMEZ2HlQcLfPoyeZoG8e6Q9Q82zcqk9+Wb7XWsXLmM6lWa/gj1VTthb0s+ZI7N8RPM
X-Complaints-To: abuse@giganews.com
X-DMCA-Notifications: http://www.giganews.com/info/dmca.html
X-Abuse-and-DMCA-Info: Please be sure to forward a copy of ALL headers
X-Abuse-and-DMCA-Info: Otherwise we will be unable to process your complaint properly
X-Postfilter: 1.3.40
X-Original-Bytes: 11231
 by: olcott - Thu, 23 Jun 2022 05:13 UTC

On 6/22/2022 10:41 PM, Richard Damon wrote:
> On 6/22/22 10:55 PM, olcott wrote:
>> On 6/22/2022 9:34 PM, Richard Damon wrote:
>>> On 6/22/22 10:18 PM, olcott wrote:
>>>> On 6/22/2022 8:45 PM, Richard Damon wrote:
>>>>> On 6/22/22 9:41 PM, olcott wrote:
>>>>>> On 6/22/2022 8:36 PM, Richard Damon wrote:
>>>>>>> On 6/22/22 9:29 PM, olcott wrote:
>>>>>>>> On 6/22/2022 8:14 PM, Richard Damon wrote:
>>>>>>>>> On 6/22/22 8:55 PM, olcott wrote:
>>>>>>>>>> On 6/22/2022 7:48 PM, Richard Damon wrote:
>>>>>>>>>>> On 6/22/22 8:37 PM, olcott wrote:
>>>>>>>>>>
>>>>>>>>>>>> First you agree that my words are perfectly correct within
>>>>>>>>>>>> their specified context
>>>>>>>>>>>
>>>>>>>>>>> Since you haven't actualy defined you context, and imply that
>>>>>>>>>>> it is the halting problem, where they can not be correct,
>>>>>>>>>>> that is not possible.
>>>>>>>>>>>>
>>>>>>>>>> First you agree that these words are 100% correct within the
>>>>>>>>>> context of software engineering totally ignoring the context
>>>>>>>>>> of the halting problem.
>>>>>>>>>>
>>>>>>>>>> #include <stdint.h>
>>>>>>>>>> #define u32 uint32_t
>>>>>>>>>>
>>>>>>>>>> #include <stdint.h>
>>>>>>>>>> typedef void (*ptr)();
>>>>>>>>>>
>>>>>>>>>> void P(ptr x)
>>>>>>>>>> {
>>>>>>>>>>    if (H(x, x))
>>>>>>>>>>      HERE: goto HERE;
>>>>>>>>>>    return;
>>>>>>>>>> }
>>>>>>>>>>
>>>>>>>>>> int main()
>>>>>>>>>> {
>>>>>>>>>>    Output("Input_Halts = ", H(P, P));
>>>>>>>>>> }
>>>>>>>>>>
>>>>>>>>>> _P()
>>>>>>>>>> [000010d2](01)  55              push ebp
>>>>>>>>>> [000010d3](02)  8bec            mov ebp,esp
>>>>>>>>>> [000010d5](03)  8b4508          mov eax,[ebp+08]
>>>>>>>>>> [000010d8](01)  50              push eax
>>>>>>>>>> [000010d9](03)  8b4d08          mov ecx,[ebp+08]
>>>>>>>>>> [000010dc](01)  51              push ecx
>>>>>>>>>> [000010dd](05)  e820feffff      call 00000f02
>>>>>>>>>> [000010e2](03)  83c408          add esp,+08
>>>>>>>>>> [000010e5](02)  85c0            test eax,eax
>>>>>>>>>> [000010e7](02)  7402            jz 000010eb
>>>>>>>>>> [000010e9](02)  ebfe            jmp 000010e9
>>>>>>>>>> [000010eb](01)  5d              pop ebp
>>>>>>>>>> [000010ec](01)  c3              ret
>>>>>>>>>> Size in bytes:(0027) [000010ec]
>>>>>>>>>>
>>>>>>>>>> Every sufficiently competent software engineer can easily
>>>>>>>>>> verify that the complete and correct x86 emulation of the
>>>>>>>>>> input to H(P,P) by H would never reach the "ret" instruction
>>>>>>>>>> of P because both H and P would remain stuck in infinitely
>>>>>>>>>> recursive emulation.
>>>>>>>>>>
>>>>>>>>>
>>>>>>>>> So, if H actually is a program that does a COMPLETE and correct
>>>>>>>>> x86 emulation of its input, then YES, as I have said many time
>>>>>>>>> before, this combination is non-halting.
>>>>>>>>>
>>>>>>>>> The fact that you need to keep going back to this, and seem to
>>>>>>>>> just be refusing to accept the conditions under which you have
>>>>>>>>> proved it just shows the problems with your thought process.
>>>>>>>>>
>>>>>>>>>> If H does correctly determine that this is the case in a
>>>>>>>>>> finite number of steps then H could reject its input on this
>>>>>>>>>> basis. Here are the details of exactly how H does this in a
>>>>>>>>>> finite number of steps.
>>>>>>>>>
>>>>>>>>> Except that NOW H isn't the H we were just talking about, so
>>>>>>>>> you are just proving that you are either lying or an idiot.
>>>>>>>>>
>>>>>>>>> Remember, the first analysis had the CONDITION on it that H did
>>>>>>>>> a COMPLETE and correct x86 emulation.
>>>>>>>>>
>>>>>>>>> Once you remove that property form H, that conclusion no long
>>>>>>>>> holds and you are shown to be a lying idiot.
>>>>>>>>>
>>>>>>>>>>
>>>>>>>>>> typedef struct Decoded
>>>>>>>>>> {
>>>>>>>>>>    u32 Address;
>>>>>>>>>>    u32 ESP;          // Current value of ESP
>>>>>>>>>>    u32 TOS;          // Current value of Top of Stack
>>>>>>>>>>    u32 NumBytes;
>>>>>>>>>>    u32 Simplified_Opcode;
>>>>>>>>>>    u32 Decode_Target;
>>>>>>>>>> } Decoded_Line_Of_Code;
>>>>>>>>>>
>>>>>>>>>>   machine   stack     stack     machine    assembly
>>>>>>>>>>   address   address   data      code       language
>>>>>>>>>>   ========  ========  ========  =========  =============
>>>>>>>>>> [000010d2][00211e8a][00211e8e] 55         push ebp
>>>>>>>>>> [000010d3][00211e8a][00211e8e] 8bec       mov ebp,esp
>>>>>>>>>> [000010d5][00211e8a][00211e8e] 8b4508     mov eax,[ebp+08]
>>>>>>>>>> [000010d8][00211e86][000010d2] 50         push eax        //
>>>>>>>>>> push P
>>>>>>>>>> [000010d9][00211e86][000010d2] 8b4d08     mov ecx,[ebp+08]
>>>>>>>>>> [000010dc][00211e82][000010d2] 51         push ecx        //
>>>>>>>>>> push P
>>>>>>>>>> [000010dd][00211e7e][000010e2] e820feffff call 00000f02   //
>>>>>>>>>> call H
>>>>>>>>>> Infinitely Recursive Simulation Detected Simulation Stopped
>>>>>>>>>>
>>>>>>>>>> // actual fully operational code in the x86utm operating system
>>>>>>>>>> u32 H(u32 P, u32 I)
>>>>>>>>>> {
>>>>>>>>>> HERE:
>>>>>>>>>>    u32 End_Of_Code;
>>>>>>>>>>    u32 Address_of_H;              // 2022-06-17
>>>>>>>>>>    u32 code_end                  = get_code_end(P);
>>>>>>>>>>    Decoded_Line_Of_Code *decoded = (Decoded_Line_Of_Code*)
>>>>>>>>>> Allocate(sizeof(Decoded_Line_Of_Code));
>>>>>>>>>>    Registers*  master_state      = (Registers*)
>>>>>>>>>> Allocate(sizeof(Registers));
>>>>>>>>>>    Registers*  slave_state       = (Registers*)
>>>>>>>>>> Allocate(sizeof(Registers));
>>>>>>>>>>    u32*        slave_stack       = Allocate(0x10000); // 64k;
>>>>>>>>>>    u32  execution_trace =
>>>>>>>>>> (u32)Allocate(sizeof(Decoded_Line_Of_Code) * 1000);
>>>>>>>>>>
>>>>>>>>>>    __asm lea eax, HERE             // 2022-06-18
>>>>>>>>>>    __asm sub eax, 6                // 2022-06-18
>>>>>>>>>>    __asm mov Address_of_H, eax     // 2022-06-18
>>>>>>>>>>    __asm mov eax, END_OF_CODE
>>>>>>>>>>    __asm mov End_Of_Code, eax
>>>>>>>>>>
>>>>>>>>>>    Output("Address_of_H:", Address_of_H); // 2022-06-11
>>>>>>>>>>    Init_slave_state(P, I, End_Of_Code, slave_state, slave_stack);
>>>>>>>>>>    Output("\nBegin Simulation   Execution Trace Stored at:",
>>>>>>>>>> execution_trace);
>>>>>>>>>>    if (Decide_Halting(&execution_trace, &decoded, code_end,
>>>>>>>>>> &master_state,
>>>>>>>>>>                       &slave_state, &slave_stack,
>>>>>>>>>> Address_of_H, P, I))
>>>>>>>>>>        goto END_OF_CODE;
>>>>>>>>>>    return 0;  // Does not halt
>>>>>>>>>> END_OF_CODE:
>>>>>>>>>>    return 1; // Input has normally terminated
>>>>>>>>>> }
>>>>>>>>>>
>>>>>>>>>> H knows its own machine address and on this basis it can
>>>>>>>>>> easily examine its stored execution_trace of P and determine:
>>>>>>>>>> (a) P is calling H with the same arguments that H was called
>>>>>>>>>> with.
>>>>>>>>>> (b) No instructions in P could possibly escape this otherwise
>>>>>>>>>> infinitely recursive emulation.
>>>>>>>>>> (c) H aborts its emulation of P before its call to H is invoked.
>>>>>>>>>>
>>>>>>>>>>
>>>>>>>>>
>>>>>>>>> (b) is NOT a correct rule. Thos has been pointed out before,
>>>>>>>>> and you have ignored it.
>>>>>>>>>
>>>>>>>> That you don't understand what I mean does not mean that it is
>>>>>>>> an incorrect rule.
>>>>>>>>
>>>>>>>> Here is an example where P does have instruction that could
>>>>>>>> possibly escape this otherwise infinitely recursive emulation:
>>>>>>>>
>>>>>>>>
>>>>>>>> void P(ptr x)
>>>>>>>> {
>>>>>>>> static count = 0;
>>>>>>>>    count++;
>>>>>>>>    if count > 3)
>>>>>>>>      return;
>>>>>>>>    if (H(x, x))
>>>>>>>>      HERE: goto HERE;
>>>>>>>>    return;
>>>>>>>> }
>>>>>>>>
>>>>>>>
>>>>>>> FALLACY of proof by example. I never said that (b) isn't
>>>>>>> sometimes true, just it isn't an always true condition. You fail
>>>>>>> at elementary logic.
>>>>>>
>>>>>> Try and find a valid counter-example. Every attempt at rebuttal
>>>>>> that is not a valid counter-example is one form of deception or
>>>>>> another.
>>>>>>
>>>>>>
>>>>>
>>>>> P(P)
>>>>
>>>> That is not any example of (b), thus another mere strawman deception.
>>>>
>>>
>>> Why not?
>>>
>> It is not an example of the simulation of the input to H(P,P) at all.
>>
>>
>
> Why is P not P?
>


Click here to read the complete article
Re: Technically competent Software engineers can verify this halting problem proof refutation [ full closure ]

<GfWdnR1iS7lAai7_nZ2dnUU7_83NnZ2d@giganews.com>

  copy mid

https://www.novabbs.com/computers/article-flat.php?id=9720&group=comp.ai.philosophy#9720

  copy link   Newsgroups: comp.theory comp.ai.philosophy sci.logic sci.math
Path: i2pn2.org!i2pn.org!weretis.net!feeder6.news.weretis.net!news.misty.com!border2.nntp.dca1.giganews.com!nntp.giganews.com!buffer2.nntp.dca1.giganews.com!buffer1.nntp.dca1.giganews.com!news.giganews.com.POSTED!not-for-mail
NNTP-Posting-Date: Thu, 23 Jun 2022 00:19:25 -0500
Date: Thu, 23 Jun 2022 00:19:23 -0500
MIME-Version: 1.0
User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:91.0) Gecko/20100101
Thunderbird/91.10.0
Subject: Re: Technically competent Software engineers can verify this halting
problem proof refutation [ full closure ]
Content-Language: en-US
Newsgroups: comp.theory,comp.ai.philosophy,sci.logic,sci.math
References: <EOydnaeszcdfHS__nZ2dnUU7_83NnZ2d@giganews.com>
<20220622203106.00003fa2@reddwarf.jmc>
<xqSdnb2KKdOL5i7_nZ2dnUU7_81g4p2d@giganews.com>
<TwOsK.191531$JVi.174704@fx17.iad>
<N5WdnY_iDptAKC7_nZ2dnUU7_8xh4p2d@giganews.com>
<nLOsK.9452$mY1.1924@fx01.iad>
<3LmdnVllU6W8Jy7_nZ2dnUU7_8xh4p2d@giganews.com>
<j8PsK.15112$%i2.4898@fx48.iad>
<s9CdndzLkud5XC7_nZ2dnUU7_83NnZ2d@giganews.com>
<%sPsK.15923$nZ1.10923@fx05.iad>
<NZmdnRE_I-AmWS7_nZ2dnUU7_81g4p2d@giganews.com>
<RAPsK.191532$JVi.129665@fx17.iad>
<jeKdndsSjJTDUC7_nZ2dnUU7_83NnZ2d@giganews.com>
<SiQsK.193267$70j.57451@fx16.iad>
<x9KdnSlyYIyxSy7_nZ2dnUU7_8zNnZ2d@giganews.com>
<3iRsK.3746$vd2.1411@fx39.iad>
<7t6dnRsAGcTtay7_nZ2dnUU7_83NnZ2d@giganews.com>
From: NoO...@NoWhere.com (olcott)
In-Reply-To: <7t6dnRsAGcTtay7_nZ2dnUU7_83NnZ2d@giganews.com>
Content-Type: text/plain; charset=UTF-8; format=flowed
Content-Transfer-Encoding: 8bit
Message-ID: <GfWdnR1iS7lAai7_nZ2dnUU7_83NnZ2d@giganews.com>
Lines: 226
X-Usenet-Provider: http://www.giganews.com
X-Trace: sv3-h8YOc7jBc64AWD8LuHrLVxmRV+fdD+YrQJ0w7PXbXf2XdpkNPMiN7P1/3ZCJk/F96g5GVhPbLeGbgXS!QoRG0m+EuofEl3TxGP04MTN3k1Pu6/sqgfRNgpG7fyN9Ode+ayuR63mMa145JbO/j/YptQtW9lyD
X-Complaints-To: abuse@giganews.com
X-DMCA-Notifications: http://www.giganews.com/info/dmca.html
X-Abuse-and-DMCA-Info: Please be sure to forward a copy of ALL headers
X-Abuse-and-DMCA-Info: Otherwise we will be unable to process your complaint properly
X-Postfilter: 1.3.40
X-Original-Bytes: 11667
 by: olcott - Thu, 23 Jun 2022 05:19 UTC

On 6/23/2022 12:13 AM, olcott wrote:
> On 6/22/2022 10:41 PM, Richard Damon wrote:
>> On 6/22/22 10:55 PM, olcott wrote:
>>> On 6/22/2022 9:34 PM, Richard Damon wrote:
>>>> On 6/22/22 10:18 PM, olcott wrote:
>>>>> On 6/22/2022 8:45 PM, Richard Damon wrote:
>>>>>> On 6/22/22 9:41 PM, olcott wrote:
>>>>>>> On 6/22/2022 8:36 PM, Richard Damon wrote:
>>>>>>>> On 6/22/22 9:29 PM, olcott wrote:
>>>>>>>>> On 6/22/2022 8:14 PM, Richard Damon wrote:
>>>>>>>>>> On 6/22/22 8:55 PM, olcott wrote:
>>>>>>>>>>> On 6/22/2022 7:48 PM, Richard Damon wrote:
>>>>>>>>>>>> On 6/22/22 8:37 PM, olcott wrote:
>>>>>>>>>>>
>>>>>>>>>>>>> First you agree that my words are perfectly correct within
>>>>>>>>>>>>> their specified context
>>>>>>>>>>>>
>>>>>>>>>>>> Since you haven't actualy defined you context, and imply
>>>>>>>>>>>> that it is the halting problem, where they can not be
>>>>>>>>>>>> correct, that is not possible.
>>>>>>>>>>>>>
>>>>>>>>>>> First you agree that these words are 100% correct within the
>>>>>>>>>>> context of software engineering totally ignoring the context
>>>>>>>>>>> of the halting problem.
>>>>>>>>>>>
>>>>>>>>>>> #include <stdint.h>
>>>>>>>>>>> #define u32 uint32_t
>>>>>>>>>>>
>>>>>>>>>>> #include <stdint.h>
>>>>>>>>>>> typedef void (*ptr)();
>>>>>>>>>>>
>>>>>>>>>>> void P(ptr x)
>>>>>>>>>>> {
>>>>>>>>>>>    if (H(x, x))
>>>>>>>>>>>      HERE: goto HERE;
>>>>>>>>>>>    return;
>>>>>>>>>>> }
>>>>>>>>>>>
>>>>>>>>>>> int main()
>>>>>>>>>>> {
>>>>>>>>>>>    Output("Input_Halts = ", H(P, P));
>>>>>>>>>>> }
>>>>>>>>>>>
>>>>>>>>>>> _P()
>>>>>>>>>>> [000010d2](01)  55              push ebp
>>>>>>>>>>> [000010d3](02)  8bec            mov ebp,esp
>>>>>>>>>>> [000010d5](03)  8b4508          mov eax,[ebp+08]
>>>>>>>>>>> [000010d8](01)  50              push eax
>>>>>>>>>>> [000010d9](03)  8b4d08          mov ecx,[ebp+08]
>>>>>>>>>>> [000010dc](01)  51              push ecx
>>>>>>>>>>> [000010dd](05)  e820feffff      call 00000f02
>>>>>>>>>>> [000010e2](03)  83c408          add esp,+08
>>>>>>>>>>> [000010e5](02)  85c0            test eax,eax
>>>>>>>>>>> [000010e7](02)  7402            jz 000010eb
>>>>>>>>>>> [000010e9](02)  ebfe            jmp 000010e9
>>>>>>>>>>> [000010eb](01)  5d              pop ebp
>>>>>>>>>>> [000010ec](01)  c3              ret
>>>>>>>>>>> Size in bytes:(0027) [000010ec]
>>>>>>>>>>>
>>>>>>>>>>> Every sufficiently competent software engineer can easily
>>>>>>>>>>> verify that the complete and correct x86 emulation of the
>>>>>>>>>>> input to H(P,P) by H would never reach the "ret" instruction
>>>>>>>>>>> of P because both H and P would remain stuck in infinitely
>>>>>>>>>>> recursive emulation.
>>>>>>>>>>>
>>>>>>>>>>
>>>>>>>>>> So, if H actually is a program that does a COMPLETE and
>>>>>>>>>> correct x86 emulation of its input, then YES, as I have said
>>>>>>>>>> many time before, this combination is non-halting.
>>>>>>>>>>
>>>>>>>>>> The fact that you need to keep going back to this, and seem to
>>>>>>>>>> just be refusing to accept the conditions under which you have
>>>>>>>>>> proved it just shows the problems with your thought process.
>>>>>>>>>>
>>>>>>>>>>> If H does correctly determine that this is the case in a
>>>>>>>>>>> finite number of steps then H could reject its input on this
>>>>>>>>>>> basis. Here are the details of exactly how H does this in a
>>>>>>>>>>> finite number of steps.
>>>>>>>>>>
>>>>>>>>>> Except that NOW H isn't the H we were just talking about, so
>>>>>>>>>> you are just proving that you are either lying or an idiot.
>>>>>>>>>>
>>>>>>>>>> Remember, the first analysis had the CONDITION on it that H
>>>>>>>>>> did a COMPLETE and correct x86 emulation.
>>>>>>>>>>
>>>>>>>>>> Once you remove that property form H, that conclusion no long
>>>>>>>>>> holds and you are shown to be a lying idiot.
>>>>>>>>>>
>>>>>>>>>>>
>>>>>>>>>>> typedef struct Decoded
>>>>>>>>>>> {
>>>>>>>>>>>    u32 Address;
>>>>>>>>>>>    u32 ESP;          // Current value of ESP
>>>>>>>>>>>    u32 TOS;          // Current value of Top of Stack
>>>>>>>>>>>    u32 NumBytes;
>>>>>>>>>>>    u32 Simplified_Opcode;
>>>>>>>>>>>    u32 Decode_Target;
>>>>>>>>>>> } Decoded_Line_Of_Code;
>>>>>>>>>>>
>>>>>>>>>>>   machine   stack     stack     machine    assembly
>>>>>>>>>>>   address   address   data      code       language
>>>>>>>>>>>   ========  ========  ========  =========  =============
>>>>>>>>>>> [000010d2][00211e8a][00211e8e] 55         push ebp
>>>>>>>>>>> [000010d3][00211e8a][00211e8e] 8bec       mov ebp,esp
>>>>>>>>>>> [000010d5][00211e8a][00211e8e] 8b4508     mov eax,[ebp+08]
>>>>>>>>>>> [000010d8][00211e86][000010d2] 50         push eax        //
>>>>>>>>>>> push P
>>>>>>>>>>> [000010d9][00211e86][000010d2] 8b4d08     mov ecx,[ebp+08]
>>>>>>>>>>> [000010dc][00211e82][000010d2] 51         push ecx        //
>>>>>>>>>>> push P
>>>>>>>>>>> [000010dd][00211e7e][000010e2] e820feffff call 00000f02   //
>>>>>>>>>>> call H
>>>>>>>>>>> Infinitely Recursive Simulation Detected Simulation Stopped
>>>>>>>>>>>
>>>>>>>>>>> // actual fully operational code in the x86utm operating system
>>>>>>>>>>> u32 H(u32 P, u32 I)
>>>>>>>>>>> {
>>>>>>>>>>> HERE:
>>>>>>>>>>>    u32 End_Of_Code;
>>>>>>>>>>>    u32 Address_of_H;              // 2022-06-17
>>>>>>>>>>>    u32 code_end                  = get_code_end(P);
>>>>>>>>>>>    Decoded_Line_Of_Code *decoded = (Decoded_Line_Of_Code*)
>>>>>>>>>>> Allocate(sizeof(Decoded_Line_Of_Code));
>>>>>>>>>>>    Registers*  master_state      = (Registers*)
>>>>>>>>>>> Allocate(sizeof(Registers));
>>>>>>>>>>>    Registers*  slave_state       = (Registers*)
>>>>>>>>>>> Allocate(sizeof(Registers));
>>>>>>>>>>>    u32*        slave_stack       = Allocate(0x10000); // 64k;
>>>>>>>>>>>    u32  execution_trace =
>>>>>>>>>>> (u32)Allocate(sizeof(Decoded_Line_Of_Code) * 1000);
>>>>>>>>>>>
>>>>>>>>>>>    __asm lea eax, HERE             // 2022-06-18
>>>>>>>>>>>    __asm sub eax, 6                // 2022-06-18
>>>>>>>>>>>    __asm mov Address_of_H, eax     // 2022-06-18
>>>>>>>>>>>    __asm mov eax, END_OF_CODE
>>>>>>>>>>>    __asm mov End_Of_Code, eax
>>>>>>>>>>>
>>>>>>>>>>>    Output("Address_of_H:", Address_of_H); // 2022-06-11
>>>>>>>>>>>    Init_slave_state(P, I, End_Of_Code, slave_state,
>>>>>>>>>>> slave_stack);
>>>>>>>>>>>    Output("\nBegin Simulation   Execution Trace Stored at:",
>>>>>>>>>>> execution_trace);
>>>>>>>>>>>    if (Decide_Halting(&execution_trace, &decoded, code_end,
>>>>>>>>>>> &master_state,
>>>>>>>>>>>                       &slave_state, &slave_stack,
>>>>>>>>>>> Address_of_H, P, I))
>>>>>>>>>>>        goto END_OF_CODE;
>>>>>>>>>>>    return 0;  // Does not halt
>>>>>>>>>>> END_OF_CODE:
>>>>>>>>>>>    return 1; // Input has normally terminated
>>>>>>>>>>> }
>>>>>>>>>>>
>>>>>>>>>>> H knows its own machine address and on this basis it can
>>>>>>>>>>> easily examine its stored execution_trace of P and determine:
>>>>>>>>>>> (a) P is calling H with the same arguments that H was called
>>>>>>>>>>> with.
>>>>>>>>>>> (b) No instructions in P could possibly escape this otherwise
>>>>>>>>>>> infinitely recursive emulation.
>>>>>>>>>>> (c) H aborts its emulation of P before its call to H is invoked.
>>>>>>>>>>>
>>>>>>>>>>>
>>>>>>>>>>
>>>>>>>>>> (b) is NOT a correct rule. Thos has been pointed out before,
>>>>>>>>>> and you have ignored it.
>>>>>>>>>>
>>>>>>>>> That you don't understand what I mean does not mean that it is
>>>>>>>>> an incorrect rule.
>>>>>>>>>
>>>>>>>>> Here is an example where P does have instruction that could
>>>>>>>>> possibly escape this otherwise infinitely recursive emulation:
>>>>>>>>>
>>>>>>>>>
>>>>>>>>> void P(ptr x)
>>>>>>>>> {
>>>>>>>>> static count = 0;
>>>>>>>>>    count++;
>>>>>>>>>    if count > 3)
>>>>>>>>>      return;
>>>>>>>>>    if (H(x, x))
>>>>>>>>>      HERE: goto HERE;
>>>>>>>>>    return;
>>>>>>>>> }
>>>>>>>>>
>>>>>>>>
>>>>>>>> FALLACY of proof by example. I never said that (b) isn't
>>>>>>>> sometimes true, just it isn't an always true condition. You fail
>>>>>>>> at elementary logic.
>>>>>>>
>>>>>>> Try and find a valid counter-example. Every attempt at rebuttal
>>>>>>> that is not a valid counter-example is one form of deception or
>>>>>>> another.
>>>>>>>
>>>>>>>
>>>>>>
>>>>>> P(P)
>>>>>
>>>>> That is not any example of (b), thus another mere strawman deception.
>>>>>
>>>>
>>>> Why not?
>>>>
>>> It is not an example of the simulation of the input to H(P,P) at all.
>>>
>>>
>>
>> Why is P not P?
>>
>
> It is not a direct rebuttal of my original claim.
>
> This would be a direct rebuttal:
> You must adapt P so that when H(P,P) emulates its input it determines
> that P never reaches its "ret" instruction and the adapted emulated P
> still reaches its "ret" instruction.
>


Click here to read the complete article
Re: Technically competent Software engineers can verify this halting problem proof refutation [ truism ]

<POmdnSfGvKKWlSn_nZ2dnUU7_8zNnZ2d@giganews.com>

  copy mid

https://www.novabbs.com/computers/article-flat.php?id=9721&group=comp.ai.philosophy#9721

  copy link   Newsgroups: comp.theory comp.ai.philosophy sci.logic sci.math
Path: i2pn2.org!rocksolid2!i2pn.org!weretis.net!feeder6.news.weretis.net!news.misty.com!border2.nntp.dca1.giganews.com!nntp.giganews.com!buffer2.nntp.dca1.giganews.com!news.giganews.com.POSTED!not-for-mail
NNTP-Posting-Date: Thu, 23 Jun 2022 01:28:27 -0500
Date: Thu, 23 Jun 2022 01:28:25 -0500
MIME-Version: 1.0
User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:91.0) Gecko/20100101
Thunderbird/91.10.0
Subject: Re: Technically competent Software engineers can verify this halting
problem proof refutation [ truism ]
Content-Language: en-US
Newsgroups: comp.theory,comp.ai.philosophy,sci.logic,sci.math
References: <EOydnaeszcdfHS__nZ2dnUU7_83NnZ2d@giganews.com>
<20220622203106.00003fa2@reddwarf.jmc>
<xqSdnb2KKdOL5i7_nZ2dnUU7_81g4p2d@giganews.com>
<20220622222043.00001cb9@reddwarf.jmc>
<_eidnf40g7wFES7_nZ2dnUU7_8zNnZ2d@giganews.com>
<de67d3d5-10f3-4e28-9b31-082e97c1145en@googlegroups.com>
<MtadnVqn1dCkCy7_nZ2dnUU7_8zNnZ2d@giganews.com>
<5f26b879-5cd4-4f28-b7c4-c3e4ed0614c2n@googlegroups.com>
<9OydnaRCCvQ9PC7_nZ2dnUU7_83NnZ2d@giganews.com>
<58dc4a7a-d635-44bb-bf2a-3a959d9d808an@googlegroups.com>
<SJ-dnXBdiJ6aIi7_nZ2dnUU7_83NnZ2d@giganews.com>
<d59b136e-6411-462f-9b62-229c0ac00608n@googlegroups.com>
<NZmdnRY_I-BpXi7_nZ2dnUU7_83NnZ2d@giganews.com>
<5934b17d-9607-49d1-97db-813a232a6d94n@googlegroups.com>
<AfGdncZCoPo1US7_nZ2dnUU7_83NnZ2d@giganews.com>
<15937d3c-f189-4c7a-bd39-2d7e25754d15n@googlegroups.com>
<lt2dnRXE1YFyTi7_nZ2dnUU7_8zNnZ2d@giganews.com>
<9f2e271a-8fb5-40f1-9ed6-9bba8cef9433n@googlegroups.com>
From: NoO...@NoWhere.com (olcott)
In-Reply-To: <9f2e271a-8fb5-40f1-9ed6-9bba8cef9433n@googlegroups.com>
Content-Type: text/plain; charset=UTF-8; format=flowed
Content-Transfer-Encoding: 8bit
Message-ID: <POmdnSfGvKKWlSn_nZ2dnUU7_8zNnZ2d@giganews.com>
Lines: 272
X-Usenet-Provider: http://www.giganews.com
X-Trace: sv3-8Im6ParfN4Vc7qZPbOQ945Yj2vqQsjvEf/70ghtsU7owv5uQFL4tVnzhvdsMCACl4NyFsJi2XzNNRgE!yRt9QRbdrtglGcfQ4TI/EtHGh/QGXfmraewnojsTNRiIy9B8qmnWVw7eQog5gZRb/ArboB3i8cNZ
X-Complaints-To: abuse@giganews.com
X-DMCA-Notifications: http://www.giganews.com/info/dmca.html
X-Abuse-and-DMCA-Info: Please be sure to forward a copy of ALL headers
X-Abuse-and-DMCA-Info: Otherwise we will be unable to process your complaint properly
X-Postfilter: 1.3.40
X-Original-Bytes: 16841
 by: olcott - Thu, 23 Jun 2022 06:28 UTC

On 6/22/2022 9:48 PM, Dennis Bush wrote:
> On Wednesday, June 22, 2022 at 10:46:14 PM UTC-4, olcott wrote:
>> On 6/22/2022 9:23 PM, Dennis Bush wrote:
>>> On Wednesday, June 22, 2022 at 10:15:11 PM UTC-4, olcott wrote:
>>>> On 6/22/2022 8:44 PM, Dennis Bush wrote:
>>>>> On Wednesday, June 22, 2022 at 9:38:03 PM UTC-4, olcott wrote:
>>>>>> On 6/22/2022 8:21 PM, Dennis Bush wrote:
>>>>>>> On Wednesday, June 22, 2022 at 9:17:02 PM UTC-4, olcott wrote:
>>>>>>>> On 6/22/2022 8:02 PM, Dennis Bush wrote:
>>>>>>>>> On Wednesday, June 22, 2022 at 7:11:35 PM UTC-4, olcott wrote:
>>>>>>>>>> On 6/22/2022 5:48 PM, Dennis Bush wrote:
>>>>>>>>>>> On Wednesday, June 22, 2022 at 6:22:56 PM UTC-4, olcott wrote:
>>>>>>>>>>>> On 6/22/2022 4:53 PM, Dennis Bush wrote:
>>>>>>>>>>>>> On Wednesday, June 22, 2022 at 5:41:51 PM UTC-4, olcott wrote:
>>>>>>>>>>>>>> On 6/22/2022 4:20 PM, Mr Flibble wrote:
>>>>>>>>>>>>>>> On Wed, 22 Jun 2022 15:27:01 -0500
>>>>>>>>>>>>>>> olcott <No...@NoWhere.com> wrote:
>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>>> On 6/22/2022 2:31 PM, Mr Flibble wrote:
>>>>>>>>>>>>>>>>> On Tue, 21 Jun 2022 21:38:56 -0500
>>>>>>>>>>>>>>>>> olcott <No...@NoWhere.com> wrote:
>>>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>>>>> #include <stdint.h>
>>>>>>>>>>>>>>>>>> #define u32 uint32_t
>>>>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>>>>> #include <stdint.h>
>>>>>>>>>>>>>>>>>> typedef void (*ptr)();
>>>>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>>>>> void P(ptr x)
>>>>>>>>>>>>>>>>>> {
>>>>>>>>>>>>>>>>>> if (H(x, x))
>>>>>>>>>>>>>>>>>> HERE: goto HERE;
>>>>>>>>>>>>>>>>>> return;
>>>>>>>>>>>>>>>>>> }
>>>>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>>>>> int main()
>>>>>>>>>>>>>>>>>> {
>>>>>>>>>>>>>>>>>> Output("Input_Halts = ", H(P, P));
>>>>>>>>>>>>>>>>>> }
>>>>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>>>>> _P()
>>>>>>>>>>>>>>>>>> [000010d2](01) 55 push ebp
>>>>>>>>>>>>>>>>>> [000010d3](02) 8bec mov ebp,esp
>>>>>>>>>>>>>>>>>> [000010d5](03) 8b4508 mov eax,[ebp+08]
>>>>>>>>>>>>>>>>>> [000010d8](01) 50 push eax
>>>>>>>>>>>>>>>>>> [000010d9](03) 8b4d08 mov ecx,[ebp+08]
>>>>>>>>>>>>>>>>>> [000010dc](01) 51 push ecx
>>>>>>>>>>>>>>>>>> [000010dd](05) e820feffff call 00000f02
>>>>>>>>>>>>>>>>>> [000010e2](03) 83c408 add esp,+08
>>>>>>>>>>>>>>>>>> [000010e5](02) 85c0 test eax,eax
>>>>>>>>>>>>>>>>>> [000010e7](02) 7402 jz 000010eb
>>>>>>>>>>>>>>>>>> [000010e9](02) ebfe jmp 000010e9
>>>>>>>>>>>>>>>>>> [000010eb](01) 5d pop ebp
>>>>>>>>>>>>>>>>>> [000010ec](01) c3 ret
>>>>>>>>>>>>>>>>>> Size in bytes:(0027) [000010ec]
>>>>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>>>>> Every sufficiently competent software engineer can easily verify
>>>>>>>>>>>>>>>>>> that the complete and correct x86 emulation of the input to H(P,P)
>>>>>>>>>>>>>>>>>> by H would never reach the "ret" instruction of P because both H
>>>>>>>>>>>>>>>>>> and P would remain stuck in infinitely recursive emulation.
>>>>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>>>>> If H does correctly determine that this is the case in a finite
>>>>>>>>>>>>>>>>>> number of steps then H could reject its input on this basis. Here
>>>>>>>>>>>>>>>>>> are the details of exactly how H does this in a finite number of
>>>>>>>>>>>>>>>>>> steps.
>>>>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>>>>> typedef struct Decoded
>>>>>>>>>>>>>>>>>> {
>>>>>>>>>>>>>>>>>> u32 Address;
>>>>>>>>>>>>>>>>>> u32 ESP; // Current value of ESP
>>>>>>>>>>>>>>>>>> u32 TOS; // Current value of Top of Stack
>>>>>>>>>>>>>>>>>> u32 NumBytes;
>>>>>>>>>>>>>>>>>> u32 Simplified_Opcode;
>>>>>>>>>>>>>>>>>> u32 Decode_Target;
>>>>>>>>>>>>>>>>>> } Decoded_Line_Of_Code;
>>>>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>>>>> machine stack stack machine assembly
>>>>>>>>>>>>>>>>>> address address data code language
>>>>>>>>>>>>>>>>>> ======== ======== ======== ========= =============
>>>>>>>>>>>>>>>>>> [000010d2][00211e8a][00211e8e] 55 push ebp
>>>>>>>>>>>>>>>>>> [000010d3][00211e8a][00211e8e] 8bec mov ebp,esp
>>>>>>>>>>>>>>>>>> [000010d5][00211e8a][00211e8e] 8b4508 mov eax,[ebp+08]
>>>>>>>>>>>>>>>>>> [000010d8][00211e86][000010d2] 50 push eax // push P
>>>>>>>>>>>>>>>>>> [000010d9][00211e86][000010d2] 8b4d08 mov ecx,[ebp+08]
>>>>>>>>>>>>>>>>>> [000010dc][00211e82][000010d2] 51 push ecx // push P
>>>>>>>>>>>>>>>>>> [000010dd][00211e7e][000010e2] e820feffff call 00000f02 // call H
>>>>>>>>>>>>>>>>>> Infinitely Recursive Simulation Detected Simulation Stopped
>>>>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>>>>> // actual fully operational code in the x86utm operating system
>>>>>>>>>>>>>>>>>> u32 H(u32 P, u32 I)
>>>>>>>>>>>>>>>>>> {
>>>>>>>>>>>>>>>>>> HERE:
>>>>>>>>>>>>>>>>>> u32 End_Of_Code;
>>>>>>>>>>>>>>>>>> u32 Address_of_H; // 2022-06-17
>>>>>>>>>>>>>>>>>> u32 code_end = get_code_end(P);
>>>>>>>>>>>>>>>>>> Decoded_Line_Of_Code *decoded = (Decoded_Line_Of_Code*)
>>>>>>>>>>>>>>>>>> Allocate(sizeof(Decoded_Line_Of_Code));
>>>>>>>>>>>>>>>>>> Registers* master_state = (Registers*)
>>>>>>>>>>>>>>>>>> Allocate(sizeof(Registers));
>>>>>>>>>>>>>>>>>> Registers* slave_state = (Registers*)
>>>>>>>>>>>>>>>>>> Allocate(sizeof(Registers));
>>>>>>>>>>>>>>>>>> u32* slave_stack = Allocate(0x10000); // 64k;
>>>>>>>>>>>>>>>>>> u32 execution_trace =
>>>>>>>>>>>>>>>>>> (u32)Allocate(sizeof(Decoded_Line_Of_Code)
>>>>>>>>>>>>>>>>>> * 1000);
>>>>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>>>>> __asm lea eax, HERE // 2022-06-18
>>>>>>>>>>>>>>>>>> __asm sub eax, 6 // 2022-06-18
>>>>>>>>>>>>>>>>>> __asm mov Address_of_H, eax // 2022-06-18
>>>>>>>>>>>>>>>>>> __asm mov eax, END_OF_CODE
>>>>>>>>>>>>>>>>>> __asm mov End_Of_Code, eax
>>>>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>>>>> Output("Address_of_H:", Address_of_H); // 2022-06-11
>>>>>>>>>>>>>>>>>> Init_slave_state(P, I, End_Of_Code, slave_state, slave_stack);
>>>>>>>>>>>>>>>>>> Output("\nBegin Simulation Execution Trace Stored at:",
>>>>>>>>>>>>>>>>>> execution_trace);
>>>>>>>>>>>>>>>>>> if (Decide_Halting(&execution_trace, &decoded, code_end,
>>>>>>>>>>>>>>>>>> &master_state, &slave_state, &slave_stack, Address_of_H, P, I))
>>>>>>>>>>>>>>>>>> goto END_OF_CODE;
>>>>>>>>>>>>>>>>>> return 0; // Does not halt
>>>>>>>>>>>>>>>>>> END_OF_CODE:
>>>>>>>>>>>>>>>>>> return 1; // Input has normally terminated
>>>>>>>>>>>>>>>>>> }
>>>>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>>>>> H knows its own machine address and on this basis it can easily
>>>>>>>>>>>>>>>>>> examine its stored execution_trace of P and determine:
>>>>>>>>>>>>>>>>>> (a) P is calling H with the same arguments that H was called with.
>>>>>>>>>>>>>>>>>> (b) No instructions in P could possibly escape this otherwise
>>>>>>>>>>>>>>>>>> infinitely recursive emulation.
>>>>>>>>>>>>>>>>>> (c) H aborts its emulation of P before its call to H is invoked.
>>>>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>>>>> Technically competent software engineers may not know this computer
>>>>>>>>>>>>>>>>>> science:
>>>>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>>>>> A halt decider must compute the mapping from its inputs to an
>>>>>>>>>>>>>>>>>> accept or reject state on the basis of the actual behavior that is
>>>>>>>>>>>>>>>>>> actually specified by these inputs.
>>>>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>>>>> computation that halts … the Turing machine will halt whenever it
>>>>>>>>>>>>>>>>>> enters a final state. (Linz:1990:234)
>>>>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>>>>> The "ret" instruction of P is its final state.
>>>>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>>>>> Linz, Peter 1990. An Introduction to Formal Languages and Automata.
>>>>>>>>>>>>>>>>>> Lexington/Toronto: D. C. Heath and Company. (317-320)
>>>>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>>>> void Px(u32 x)
>>>>>>>>>>>>>>>>> {
>>>>>>>>>>>>>>>>> H(x, x);
>>>>>>>>>>>>>>>>> return;
>>>>>>>>>>>>>>>>> }
>>>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>>>> int main()
>>>>>>>>>>>>>>>>> {
>>>>>>>>>>>>>>>>> Output("Input_Halts = ", H((u32)Px, (u32)Px));
>>>>>>>>>>>>>>>>> }
>>>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>>>> ...[000013e8][00102357][00000000] 83c408 add esp,+08
>>>>>>>>>>>>>>>>> ...[000013eb][00102353][00000000] 50 push eax
>>>>>>>>>>>>>>>>> ...[000013ec][0010234f][00000427] 6827040000 push 00000427
>>>>>>>>>>>>>>>>> ---[000013f1][0010234f][00000427] e880f0ffff call 00000476
>>>>>>>>>>>>>>>>> Input_Halts = 0
>>>>>>>>>>>>>>>>> ...[000013f6][00102357][00000000] 83c408 add esp,+08
>>>>>>>>>>>>>>>>> ...[000013f9][00102357][00000000] 33c0 xor eax,eax
>>>>>>>>>>>>>>>>> ...[000013fb][0010235b][00100000] 5d pop ebp
>>>>>>>>>>>>>>>>> ...[000013fc][0010235f][00000004] c3 ret
>>>>>>>>>>>>>>>>> Number of Instructions Executed(16120)
>>>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>>>> It gets the answer wrong, i.e. input has not been decided correctly.
>>>>>>>>>>>>>>>>> QED.
>>>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>>>> /Flibble
>>>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>>> You and Richard are insufficiently technically competent at software
>>>>>>>>>>>>>>>> engineering not meeting these specs:
>>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>>> A software engineer must be an expert in: the C programming language,
>>>>>>>>>>>>>>>> the x86 programming language, exactly how C translates into x86 and
>>>>>>>>>>>>>>>> the ability to recognize infinite recursion at the x86 assembly
>>>>>>>>>>>>>>>> language level. No knowledge of the halting problem is required.
>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>> I cannot speak for Richard but I have 30+ years C++ experience; I also
>>>>>>>>>>>>>>> have C and x86 assembly experience (I once wrote a Zilog Z80A CPU
>>>>>>>>>>>>>>> emulator in 80286 assembly) and I can recognize an infinite recursion;
>>>>>>>>>>>>>>> the problem is that you cannot recognize the fact that the infinite
>>>>>>>>>>>>>>> recursion only manifests as part of your invalid simulation-based
>>>>>>>>>>>>>>> omnishambles:
>>>>>>>>>>>>>> If you are competent then you already know this is true and lie about it:
>>>>>>>>>>>>>> Every sufficiently competent software engineer can easily verify that
>>>>>>>>>>>>>> the complete and correct x86 emulation of the input to H(Px,Px) by H
>>>>>>>>>>>>>> would never reach the "ret" instruction of P because both H and P would
>>>>>>>>>>>>>> remain stuck in infinitely recursive emulation.
>>>>>>>>>>>>>
>>>>>>>>>>>>> H (if it was constructed correctly) is a computation, and a computation *always* gives the same output for a given input. So it doesn't make sense to say what it "would" do. It either does or does not perform a complete and correct emulation. And because H contains code to abort, and does abort, it does not do a complete emulation.
>>>>>>>>>>>>>
>>>>>>>>>>>>> So the input must be given to a UTM, which by definition does a correct and complete simulation, to see what the actual behavior is. UTM(Px,Px) halts, therefore H(Px,Px)==0 is wrong.
>>>>>>>>>>>>
>>>>>>>>>>>> Every sufficiently competent software engineer can easily verify that
>>>>>>>>>>>> the complete and correct x86 emulation of the input to H(Px,Px) by H
>>>>>>>>>>>> would never reach the "ret" instruction of Px because both H and Px
>>>>>>>>>>>> would remain stuck in infinitely recursive emulation.
>>>>>>>>>>>
>>>>>>>>>>> So you just repeated what you said instead of explaining why I'm wrong. In other words you provided no rebuttal, which can only be taken to mean that you have none.
>>>>>>>>>> Your entire basis and all of assumptions was incorrect so when I
>>>>>>>>>> provided an infallible one to that cannot possibly be correctly refuted
>>>>>>>>>> you simply dodged it. That is a smart move for a dishonest person that
>>>>>>>>>> is only interested in rebuttal.
>>>>>>>>>>
>>>>>>>>>> I dare you to go back to the prior post and find any error in my
>>>>>>>>>> airtight correct reasoning. Another dodge will be construed as a tacit
>>>>>>>>>> admission of defeat.
>>>>>>>>>
>>>>>>>>> As stated before H (or more accurately Ha) does not perform a complete and correct emulation because it aborts. So by definition it cannot be complete.
>>>>>>>> I never claimed that H(P,P) performs a complete and correct emulation of
>>>>>>>> its input so your rebuttal is the strawman deception.
>>>>>>>>
>>>>>>>> I claimed that H(P,P) correctly predicts that its complete and correct
>>>>>>>> x86 emulation of its input would never reach the "ret" instruction of P.
>>>>>>>
>>>>>>> But since H, or more accurately Ha, *can't* do a correct and complete emulation of its input, your point is moot.
>>>>>> _Infinite_Loop()
>>>>>> [00001082](01) 55 push ebp
>>>>>> [00001083](02) 8bec mov ebp,esp
>>>>>> [00001085](02) ebfe jmp 00001085
>>>>>> [00001087](01) 5d pop ebp
>>>>>> [00001088](01) c3 ret
>>>>>> Size in bytes:(0007) [00001088]
>>>>>>
>>>>>> Begin Local Halt Decider Simulation Execution Trace Stored at:211e8f
>>>>>> ...[00001082][00211e7f][00211e83] 55 push ebp
>>>>>> ...[00001083][00211e7f][00211e83] 8bec mov ebp,esp
>>>>>> ...[00001085][00211e7f][00211e83] ebfe jmp 00001085
>>>>>> ...[00001085][00211e7f][00211e83] ebfe jmp 00001085
>>>>>> Infinite Loop Detected Simulation Stopped
>>>>>>
>>>>>> On the basis of this exact same utterly moronic reasoning because H
>>>>>> *can't* do a correct and complete emulation of its input, H cannot
>>>>>> possibly determine that _Infinite_Loop() never halts.
>>>>>
>>>>> Now who's using the strawman error? Just because H can determine that _Infinite_Loop does not halt doesn't mean that it gets other cases right. B
>>>> You just said that H(P,P) cannot correctly predict that the correct and
>>>> complete x86 emulation of its input would never reach the "ret"
>>>> instruction of P without a compete x86 emulation of its input. I just
>>>> proved that is a very stupid thing to say.
>>>
>>> You said that H can predict what *its* correct and complete emulation would do, and I said that doesn't make sense because H does not do correct and complete emulation. What H *must* do is predict what *the* correct and complete emulation, i.e. UTM(P,P), would do. And it fails to do that.
>> There are no UTM's in software engineering thus yet another strawman
>> deception.
>
> Now you're just making things up. Of course there are UTMs. Anything that does a correct and complete emulation is a UTM.
>
> Just goes to show how desperate you're getting to make a statement like that.
>


Click here to read the complete article
Re: Technically competent Software engineers can verify this halting problem proof refutation [ full closure ]

<_%XsK.3851$El2.3416@fx45.iad>

  copy mid

https://www.novabbs.com/computers/article-flat.php?id=9722&group=comp.ai.philosophy#9722

  copy link   Newsgroups: comp.theory comp.ai.philosophy sci.logic sci.math
Path: i2pn2.org!i2pn.org!usenet.blueworldhosting.com!feed1.usenet.blueworldhosting.com!peer02.iad!feed-me.highwinds-media.com!news.highwinds-media.com!fx45.iad.POSTED!not-for-mail
MIME-Version: 1.0
User-Agent: Mozilla/5.0 (Macintosh; Intel Mac OS X 10.15; rv:91.0)
Gecko/20100101 Thunderbird/91.10.0
Subject: Re: Technically competent Software engineers can verify this halting
problem proof refutation [ full closure ]
Content-Language: en-US
Newsgroups: comp.theory,comp.ai.philosophy,sci.logic,sci.math
References: <EOydnaeszcdfHS__nZ2dnUU7_83NnZ2d@giganews.com>
<20220622203106.00003fa2@reddwarf.jmc>
<xqSdnb2KKdOL5i7_nZ2dnUU7_81g4p2d@giganews.com>
<TwOsK.191531$JVi.174704@fx17.iad>
<N5WdnY_iDptAKC7_nZ2dnUU7_8xh4p2d@giganews.com>
<nLOsK.9452$mY1.1924@fx01.iad>
<3LmdnVllU6W8Jy7_nZ2dnUU7_8xh4p2d@giganews.com>
<j8PsK.15112$%i2.4898@fx48.iad>
<s9CdndzLkud5XC7_nZ2dnUU7_83NnZ2d@giganews.com>
<%sPsK.15923$nZ1.10923@fx05.iad>
<NZmdnRE_I-AmWS7_nZ2dnUU7_81g4p2d@giganews.com>
<RAPsK.191532$JVi.129665@fx17.iad>
<jeKdndsSjJTDUC7_nZ2dnUU7_83NnZ2d@giganews.com>
<SiQsK.193267$70j.57451@fx16.iad>
<x9KdnSlyYIyxSy7_nZ2dnUU7_8zNnZ2d@giganews.com>
<3iRsK.3746$vd2.1411@fx39.iad>
<7t6dnRsAGcTtay7_nZ2dnUU7_83NnZ2d@giganews.com>
<GfWdnR1iS7lAai7_nZ2dnUU7_83NnZ2d@giganews.com>
From: Rich...@Damon-Family.org (Richard Damon)
In-Reply-To: <GfWdnR1iS7lAai7_nZ2dnUU7_83NnZ2d@giganews.com>
Content-Type: text/plain; charset=UTF-8; format=flowed
Content-Transfer-Encoding: 8bit
Lines: 261
Message-ID: <_%XsK.3851$El2.3416@fx45.iad>
X-Complaints-To: abuse@easynews.com
Organization: Forte - www.forteinc.com
X-Complaints-Info: Please be sure to forward a copy of ALL headers otherwise we will be unable to process your complaint properly.
Date: Thu, 23 Jun 2022 07:20:26 -0400
X-Received-Bytes: 13252
 by: Richard Damon - Thu, 23 Jun 2022 11:20 UTC

On 6/23/22 1:19 AM, olcott wrote:
> On 6/23/2022 12:13 AM, olcott wrote:
>> On 6/22/2022 10:41 PM, Richard Damon wrote:
>>> On 6/22/22 10:55 PM, olcott wrote:
>>>> On 6/22/2022 9:34 PM, Richard Damon wrote:
>>>>> On 6/22/22 10:18 PM, olcott wrote:
>>>>>> On 6/22/2022 8:45 PM, Richard Damon wrote:
>>>>>>> On 6/22/22 9:41 PM, olcott wrote:
>>>>>>>> On 6/22/2022 8:36 PM, Richard Damon wrote:
>>>>>>>>> On 6/22/22 9:29 PM, olcott wrote:
>>>>>>>>>> On 6/22/2022 8:14 PM, Richard Damon wrote:
>>>>>>>>>>> On 6/22/22 8:55 PM, olcott wrote:
>>>>>>>>>>>> On 6/22/2022 7:48 PM, Richard Damon wrote:
>>>>>>>>>>>>> On 6/22/22 8:37 PM, olcott wrote:
>>>>>>>>>>>>
>>>>>>>>>>>>>> First you agree that my words are perfectly correct within
>>>>>>>>>>>>>> their specified context
>>>>>>>>>>>>>
>>>>>>>>>>>>> Since you haven't actualy defined you context, and imply
>>>>>>>>>>>>> that it is the halting problem, where they can not be
>>>>>>>>>>>>> correct, that is not possible.
>>>>>>>>>>>>>>
>>>>>>>>>>>> First you agree that these words are 100% correct within the
>>>>>>>>>>>> context of software engineering totally ignoring the context
>>>>>>>>>>>> of the halting problem.
>>>>>>>>>>>>
>>>>>>>>>>>> #include <stdint.h>
>>>>>>>>>>>> #define u32 uint32_t
>>>>>>>>>>>>
>>>>>>>>>>>> #include <stdint.h>
>>>>>>>>>>>> typedef void (*ptr)();
>>>>>>>>>>>>
>>>>>>>>>>>> void P(ptr x)
>>>>>>>>>>>> {
>>>>>>>>>>>>    if (H(x, x))
>>>>>>>>>>>>      HERE: goto HERE;
>>>>>>>>>>>>    return;
>>>>>>>>>>>> }
>>>>>>>>>>>>
>>>>>>>>>>>> int main()
>>>>>>>>>>>> {
>>>>>>>>>>>>    Output("Input_Halts = ", H(P, P));
>>>>>>>>>>>> }
>>>>>>>>>>>>
>>>>>>>>>>>> _P()
>>>>>>>>>>>> [000010d2](01)  55              push ebp
>>>>>>>>>>>> [000010d3](02)  8bec            mov ebp,esp
>>>>>>>>>>>> [000010d5](03)  8b4508          mov eax,[ebp+08]
>>>>>>>>>>>> [000010d8](01)  50              push eax
>>>>>>>>>>>> [000010d9](03)  8b4d08          mov ecx,[ebp+08]
>>>>>>>>>>>> [000010dc](01)  51              push ecx
>>>>>>>>>>>> [000010dd](05)  e820feffff      call 00000f02
>>>>>>>>>>>> [000010e2](03)  83c408          add esp,+08
>>>>>>>>>>>> [000010e5](02)  85c0            test eax,eax
>>>>>>>>>>>> [000010e7](02)  7402            jz 000010eb
>>>>>>>>>>>> [000010e9](02)  ebfe            jmp 000010e9
>>>>>>>>>>>> [000010eb](01)  5d              pop ebp
>>>>>>>>>>>> [000010ec](01)  c3              ret
>>>>>>>>>>>> Size in bytes:(0027) [000010ec]
>>>>>>>>>>>>
>>>>>>>>>>>> Every sufficiently competent software engineer can easily
>>>>>>>>>>>> verify that the complete and correct x86 emulation of the
>>>>>>>>>>>> input to H(P,P) by H would never reach the "ret" instruction
>>>>>>>>>>>> of P because both H and P would remain stuck in infinitely
>>>>>>>>>>>> recursive emulation.
>>>>>>>>>>>>
>>>>>>>>>>>
>>>>>>>>>>> So, if H actually is a program that does a COMPLETE and
>>>>>>>>>>> correct x86 emulation of its input, then YES, as I have said
>>>>>>>>>>> many time before, this combination is non-halting.
>>>>>>>>>>>
>>>>>>>>>>> The fact that you need to keep going back to this, and seem
>>>>>>>>>>> to just be refusing to accept the conditions under which you
>>>>>>>>>>> have proved it just shows the problems with your thought
>>>>>>>>>>> process.
>>>>>>>>>>>
>>>>>>>>>>>> If H does correctly determine that this is the case in a
>>>>>>>>>>>> finite number of steps then H could reject its input on this
>>>>>>>>>>>> basis. Here are the details of exactly how H does this in a
>>>>>>>>>>>> finite number of steps.
>>>>>>>>>>>
>>>>>>>>>>> Except that NOW H isn't the H we were just talking about, so
>>>>>>>>>>> you are just proving that you are either lying or an idiot.
>>>>>>>>>>>
>>>>>>>>>>> Remember, the first analysis had the CONDITION on it that H
>>>>>>>>>>> did a COMPLETE and correct x86 emulation.
>>>>>>>>>>>
>>>>>>>>>>> Once you remove that property form H, that conclusion no long
>>>>>>>>>>> holds and you are shown to be a lying idiot.
>>>>>>>>>>>
>>>>>>>>>>>>
>>>>>>>>>>>> typedef struct Decoded
>>>>>>>>>>>> {
>>>>>>>>>>>>    u32 Address;
>>>>>>>>>>>>    u32 ESP;          // Current value of ESP
>>>>>>>>>>>>    u32 TOS;          // Current value of Top of Stack
>>>>>>>>>>>>    u32 NumBytes;
>>>>>>>>>>>>    u32 Simplified_Opcode;
>>>>>>>>>>>>    u32 Decode_Target;
>>>>>>>>>>>> } Decoded_Line_Of_Code;
>>>>>>>>>>>>
>>>>>>>>>>>>   machine   stack     stack     machine    assembly
>>>>>>>>>>>>   address   address   data      code       language
>>>>>>>>>>>>   ========  ========  ========  =========  =============
>>>>>>>>>>>> [000010d2][00211e8a][00211e8e] 55         push ebp
>>>>>>>>>>>> [000010d3][00211e8a][00211e8e] 8bec       mov ebp,esp
>>>>>>>>>>>> [000010d5][00211e8a][00211e8e] 8b4508     mov eax,[ebp+08]
>>>>>>>>>>>> [000010d8][00211e86][000010d2] 50         push eax        //
>>>>>>>>>>>> push P
>>>>>>>>>>>> [000010d9][00211e86][000010d2] 8b4d08     mov ecx,[ebp+08]
>>>>>>>>>>>> [000010dc][00211e82][000010d2] 51         push ecx        //
>>>>>>>>>>>> push P
>>>>>>>>>>>> [000010dd][00211e7e][000010e2] e820feffff call 00000f02   //
>>>>>>>>>>>> call H
>>>>>>>>>>>> Infinitely Recursive Simulation Detected Simulation Stopped
>>>>>>>>>>>>
>>>>>>>>>>>> // actual fully operational code in the x86utm operating system
>>>>>>>>>>>> u32 H(u32 P, u32 I)
>>>>>>>>>>>> {
>>>>>>>>>>>> HERE:
>>>>>>>>>>>>    u32 End_Of_Code;
>>>>>>>>>>>>    u32 Address_of_H;              // 2022-06-17
>>>>>>>>>>>>    u32 code_end                  = get_code_end(P);
>>>>>>>>>>>>    Decoded_Line_Of_Code *decoded = (Decoded_Line_Of_Code*)
>>>>>>>>>>>> Allocate(sizeof(Decoded_Line_Of_Code));
>>>>>>>>>>>>    Registers*  master_state      = (Registers*)
>>>>>>>>>>>> Allocate(sizeof(Registers));
>>>>>>>>>>>>    Registers*  slave_state       = (Registers*)
>>>>>>>>>>>> Allocate(sizeof(Registers));
>>>>>>>>>>>>    u32*        slave_stack       = Allocate(0x10000); // 64k;
>>>>>>>>>>>>    u32  execution_trace =
>>>>>>>>>>>> (u32)Allocate(sizeof(Decoded_Line_Of_Code) * 1000);
>>>>>>>>>>>>
>>>>>>>>>>>>    __asm lea eax, HERE             // 2022-06-18
>>>>>>>>>>>>    __asm sub eax, 6                // 2022-06-18
>>>>>>>>>>>>    __asm mov Address_of_H, eax     // 2022-06-18
>>>>>>>>>>>>    __asm mov eax, END_OF_CODE
>>>>>>>>>>>>    __asm mov End_Of_Code, eax
>>>>>>>>>>>>
>>>>>>>>>>>>    Output("Address_of_H:", Address_of_H); // 2022-06-11
>>>>>>>>>>>>    Init_slave_state(P, I, End_Of_Code, slave_state,
>>>>>>>>>>>> slave_stack);
>>>>>>>>>>>>    Output("\nBegin Simulation   Execution Trace Stored at:",
>>>>>>>>>>>> execution_trace);
>>>>>>>>>>>>    if (Decide_Halting(&execution_trace, &decoded, code_end,
>>>>>>>>>>>> &master_state,
>>>>>>>>>>>>                       &slave_state, &slave_stack,
>>>>>>>>>>>> Address_of_H, P, I))
>>>>>>>>>>>>        goto END_OF_CODE;
>>>>>>>>>>>>    return 0;  // Does not halt
>>>>>>>>>>>> END_OF_CODE:
>>>>>>>>>>>>    return 1; // Input has normally terminated
>>>>>>>>>>>> }
>>>>>>>>>>>>
>>>>>>>>>>>> H knows its own machine address and on this basis it can
>>>>>>>>>>>> easily examine its stored execution_trace of P and determine:
>>>>>>>>>>>> (a) P is calling H with the same arguments that H was called
>>>>>>>>>>>> with.
>>>>>>>>>>>> (b) No instructions in P could possibly escape this
>>>>>>>>>>>> otherwise infinitely recursive emulation.
>>>>>>>>>>>> (c) H aborts its emulation of P before its call to H is
>>>>>>>>>>>> invoked.
>>>>>>>>>>>>
>>>>>>>>>>>>
>>>>>>>>>>>
>>>>>>>>>>> (b) is NOT a correct rule. Thos has been pointed out before,
>>>>>>>>>>> and you have ignored it.
>>>>>>>>>>>
>>>>>>>>>> That you don't understand what I mean does not mean that it is
>>>>>>>>>> an incorrect rule.
>>>>>>>>>>
>>>>>>>>>> Here is an example where P does have instruction that could
>>>>>>>>>> possibly escape this otherwise infinitely recursive emulation:
>>>>>>>>>>
>>>>>>>>>>
>>>>>>>>>> void P(ptr x)
>>>>>>>>>> {
>>>>>>>>>> static count = 0;
>>>>>>>>>>    count++;
>>>>>>>>>>    if count > 3)
>>>>>>>>>>      return;
>>>>>>>>>>    if (H(x, x))
>>>>>>>>>>      HERE: goto HERE;
>>>>>>>>>>    return;
>>>>>>>>>> }
>>>>>>>>>>
>>>>>>>>>
>>>>>>>>> FALLACY of proof by example. I never said that (b) isn't
>>>>>>>>> sometimes true, just it isn't an always true condition. You
>>>>>>>>> fail at elementary logic.
>>>>>>>>
>>>>>>>> Try and find a valid counter-example. Every attempt at rebuttal
>>>>>>>> that is not a valid counter-example is one form of deception or
>>>>>>>> another.
>>>>>>>>
>>>>>>>>
>>>>>>>
>>>>>>> P(P)
>>>>>>
>>>>>> That is not any example of (b), thus another mere strawman deception.
>>>>>>
>>>>>
>>>>> Why not?
>>>>>
>>>> It is not an example of the simulation of the input to H(P,P) at all.
>>>>
>>>>
>>>
>>> Why is P not P?
>>>
>>
>> It is not a direct rebuttal of my original claim.
>>
>> This would be a direct rebuttal:
>> You must adapt P so that when H(P,P) emulates its input it determines
>> that P never reaches its "ret" instruction and the adapted emulated P
>> still reaches its "ret" instruction.
>>
>
> Unless you find that at least one input where it gets the wrong answer
> you have not refuted me.
>
>


Click here to read the complete article
Re: Technically competent Software engineers can verify this halting problem proof refutation [ full closure ]

<7N6dnc3A3t1tCin_nZ2dnUU7_83NnZ2d@giganews.com>

  copy mid

https://www.novabbs.com/computers/article-flat.php?id=9723&group=comp.ai.philosophy#9723

  copy link   Newsgroups: comp.theory comp.ai.philosophy sci.logic sci.math
Path: i2pn2.org!i2pn.org!weretis.net!feeder6.news.weretis.net!news.misty.com!border2.nntp.dca1.giganews.com!nntp.giganews.com!buffer2.nntp.dca1.giganews.com!buffer1.nntp.dca1.giganews.com!news.giganews.com.POSTED!not-for-mail
NNTP-Posting-Date: Thu, 23 Jun 2022 11:42:24 -0500
Date: Thu, 23 Jun 2022 11:42:23 -0500
MIME-Version: 1.0
User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:91.0) Gecko/20100101
Thunderbird/91.10.0
Subject: Re: Technically competent Software engineers can verify this halting
problem proof refutation [ full closure ]
Content-Language: en-US
Newsgroups: comp.theory,comp.ai.philosophy,sci.logic,sci.math
References: <EOydnaeszcdfHS__nZ2dnUU7_83NnZ2d@giganews.com>
<20220622203106.00003fa2@reddwarf.jmc>
<xqSdnb2KKdOL5i7_nZ2dnUU7_81g4p2d@giganews.com>
<TwOsK.191531$JVi.174704@fx17.iad>
<N5WdnY_iDptAKC7_nZ2dnUU7_8xh4p2d@giganews.com>
<nLOsK.9452$mY1.1924@fx01.iad>
<3LmdnVllU6W8Jy7_nZ2dnUU7_8xh4p2d@giganews.com>
<c72d4625-7859-452c-9b63-b6f9f1c4bb9en@googlegroups.com>
<SJ-dnXNdiJ58Ii7_nZ2dnUU7_81g4p2d@giganews.com>
<7b7b8d25-355a-48b7-8bdd-b0e27f937a73n@googlegroups.com>
<t924ba$ohs$1@gioia.aioe.org>
From: NoO...@NoWhere.com (olcott)
In-Reply-To: <t924ba$ohs$1@gioia.aioe.org>
Content-Type: text/plain; charset=UTF-8; format=flowed
Content-Transfer-Encoding: 8bit
Message-ID: <7N6dnc3A3t1tCin_nZ2dnUU7_83NnZ2d@giganews.com>
Lines: 92
X-Usenet-Provider: http://www.giganews.com
X-Trace: sv3-qiiyhuXrY1uH9Z++ipXuXNdQu7ltCFlbpUuzNWKmXxLrfj8WsEvCulqK5UAYuuPh96PRdygZL6Yl0uk!mRFS0nbjFb2n7dt+WjoiDTKqTY+C5CUAT6gGWFLRgW2eqY31AANxDGOUkRy+TkI4Cfyt3g8j/yhi
X-Complaints-To: abuse@giganews.com
X-DMCA-Notifications: http://www.giganews.com/info/dmca.html
X-Abuse-and-DMCA-Info: Please be sure to forward a copy of ALL headers
X-Abuse-and-DMCA-Info: Otherwise we will be unable to process your complaint properly
X-Postfilter: 1.3.40
X-Original-Bytes: 5281
 by: olcott - Thu, 23 Jun 2022 16:42 UTC

On 6/23/2022 11:28 AM, Mike Terry wrote:
> On 23/06/2022 13:13, Paul N wrote:
>> On Thursday, June 23, 2022 at 2:20:40 AM UTC+1, olcott wrote:
>>> On 6/22/2022 8:05 PM, Dennis Bush wrote:
>>>> On Wednesday, June 22, 2022 at 8:56:08 PM UTC-4, olcott wrote:
>>>>> On 6/22/2022 7:48 PM, Richard Damon wrote:
>>>>>> On 6/22/22 8:37 PM, olcott wrote:
>>
>>>>> #include <stdint.h>
>>>>> #define u32 uint32_t
>>>>>
>>>>> #include <stdint.h>
>>>>> typedef void (*ptr)();
>>>>>
>>>>> void P(ptr x)
>>>>> {
>>>>> if (H(x, x))
>>>>> HERE: goto HERE;
>>>>> return;
>>>>> }
>>>>>
>>>>> int main()
>>>>> {
>>>>> Output("Input_Halts = ", H(P, P));
>>>>> }
>>
>>> I claim that H(P,P) correctly predicts that its complete and correct x86
>>> emulation of its input would never reach the "ret" instruction of P.
>>
>> To split this claim down into three parts:
>>
>> You are claiming that H(P,P) terminates.
>> You are claiming that the value returned by H(P,P) is zero/false,
>> indicating that P(P) would not terminate.
>> You are claiming that this result is correct, and that P(P) does
>> indeed not terminate.
>>
>> This is what you are saying, correct?
>>
>> So let's look at P(P). The first thing is does is call H(P,P). This,
>> you have stated many times including just above, terminates. It gives
>> a value zero. Thus the infinite loop is not entered, and the next
>> instruction to be executed is the "return".
>>
>> So P(P) does terminate, contrary to what you claimed.
>>
>
> PO acknowledges that P(P) does terminate, and has posted one of his
> "traces" showing this.  (Note: his traces are not showing x86
> instructions from a single x86 processor - the entries are from multiple
> "logical processors" with some of the processors being simulated - the
> simulation logic (including tests that may decide to terminate the
> simulating activity at some point) is suppressed from the trace, so that
> you won't be "confused"!)
>
> PO claims instead that :
> -   H(P,P) returns 0 (as you say)
> -   P(p) terminates
> -   H(P,P) is "correct" to return 0, even though 0 is the wrong halting
>     problem answer, because H's /simulation/ of P(P) never reaches P's
>     final ret instruction - this is correct, because H only simulates
>     until some internal test matches, at which point it stops
>     simulating P(P), and indeed that happens before P(P) simulation
>     gets as far as the P ret instruction.
> PO has lots of incoherent waffle which serves only to confuse PO into
> believing that H is returning the "correct" answer, when it is obviously
> wrong [from the HP perspective].
>
> Mike.

Hi Mike, I am glad to see you back. I count you as one of my
sufficiently technically qualified reviewers.

The key bottom line that everyone either makes sure to ignore or
directly disagrees with the correct semantics of the x86 language is
that H does correctly predict that its own complete and correct x86
emulation of its input would never reach the "ret" instruction (final
state) of P thus never halts.

computation that halts … the Turing machine will halt whenever it enters
a final state. (Linz:1990:234)

Linz, Peter 1990. An Introduction to Formal Languages and Automata.
Lexington/Toronto: D. C. Heath and Company. (317-320)

--
Copyright 2022 Pete Olcott

"Talent hits a target no one else can hit;
Genius hits a target no one else can see."
Arthur Schopenhauer

Software engineers can verify this halting problem proof refutation [ H(P,P) versus P(P) ]

<T_idnQ3SgojoOyn_nZ2dnUU7_8zNnZ2d@giganews.com>

  copy mid

https://www.novabbs.com/computers/article-flat.php?id=9724&group=comp.ai.philosophy#9724

  copy link   Newsgroups: comp.theory comp.ai.philosophy sci.logic sci.math
Path: i2pn2.org!i2pn.org!weretis.net!feeder6.news.weretis.net!news.misty.com!border2.nntp.dca1.giganews.com!nntp.giganews.com!buffer2.nntp.dca1.giganews.com!buffer1.nntp.dca1.giganews.com!news.giganews.com.POSTED!not-for-mail
NNTP-Posting-Date: Thu, 23 Jun 2022 12:44:21 -0500
Date: Thu, 23 Jun 2022 12:44:19 -0500
MIME-Version: 1.0
User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:91.0) Gecko/20100101
Thunderbird/91.10.0
Subject: Software engineers can verify this halting problem proof refutation [
H(P,P) versus P(P) ]
Content-Language: en-US
Newsgroups: comp.theory,comp.ai.philosophy,sci.logic,sci.math
References: <EOydnaeszcdfHS__nZ2dnUU7_83NnZ2d@giganews.com>
<20220622203106.00003fa2@reddwarf.jmc>
<xqSdnb2KKdOL5i7_nZ2dnUU7_81g4p2d@giganews.com>
<TwOsK.191531$JVi.174704@fx17.iad>
<N5WdnY_iDptAKC7_nZ2dnUU7_8xh4p2d@giganews.com>
<nLOsK.9452$mY1.1924@fx01.iad>
<3LmdnVllU6W8Jy7_nZ2dnUU7_8xh4p2d@giganews.com>
<c72d4625-7859-452c-9b63-b6f9f1c4bb9en@googlegroups.com>
<SJ-dnXNdiJ58Ii7_nZ2dnUU7_81g4p2d@giganews.com>
<7b7b8d25-355a-48b7-8bdd-b0e27f937a73n@googlegroups.com>
From: NoO...@NoWhere.com (olcott)
In-Reply-To: <7b7b8d25-355a-48b7-8bdd-b0e27f937a73n@googlegroups.com>
Content-Type: text/plain; charset=UTF-8; format=flowed
Content-Transfer-Encoding: 7bit
Message-ID: <T_idnQ3SgojoOyn_nZ2dnUU7_8zNnZ2d@giganews.com>
Lines: 163
X-Usenet-Provider: http://www.giganews.com
X-Trace: sv3-bNfdARjuzUPmfRf9WnplWtPgoMJstKF/7YPkZCrksXfMC8lu2D+4/UdVWSxEvcnQSuayAtCwnGP51V6!iSNOU7Ey+HjrkcZM7/K3KyDepiIQiBwuKqE0UlK0tFF3soQdOeslloh1dBZsSpoWcLX14XTr1pAy
X-Complaints-To: abuse@giganews.com
X-DMCA-Notifications: http://www.giganews.com/info/dmca.html
X-Abuse-and-DMCA-Info: Please be sure to forward a copy of ALL headers
X-Abuse-and-DMCA-Info: Otherwise we will be unable to process your complaint properly
X-Postfilter: 1.3.40
X-Original-Bytes: 8178
 by: olcott - Thu, 23 Jun 2022 17:44 UTC

On 6/23/2022 7:13 AM, Paul N wrote:
> On Thursday, June 23, 2022 at 2:20:40 AM UTC+1, olcott wrote:
>> On 6/22/2022 8:05 PM, Dennis Bush wrote:
>>> On Wednesday, June 22, 2022 at 8:56:08 PM UTC-4, olcott wrote:
>>>> On 6/22/2022 7:48 PM, Richard Damon wrote:
>>>>> On 6/22/22 8:37 PM, olcott wrote:
>
>>>> #include <stdint.h>
>>>> #define u32 uint32_t
>>>>
>>>> #include <stdint.h>
>>>> typedef void (*ptr)();
>>>>
>>>> void P(ptr x)
>>>> {
>>>> if (H(x, x))
>>>> HERE: goto HERE;
>>>> return;
>>>> }
>>>>
>>>> int main()
>>>> {
>>>> Output("Input_Halts = ", H(P, P));
>>>> }
>
>> I claim that H(P,P) correctly predicts that its complete and correct x86
>> emulation of its input would never reach the "ret" instruction of P.
>
> To split this claim down into three parts:
>
> You are claiming that H(P,P) terminates.

Yes

> You are claiming that the value returned by H(P,P) is zero/false, indicating that P(P) would not terminate.

No. zero/false indicates that
H(P,P) does correctly determine that its correct and complete x86
emulation of its input would never reach the "ret" instruction of P.

As shown below because P(P) depends on the return value of H(P,P) it has
different behavior than the correctly emulated input to H(P,P).

The correctly emulated input to H(P,P) is stuck in recursive emulation
that never gets to the point of receiving a return value from H, thus
lacks the dependency of the executed P(P). This causes it to have
different behavior than the executed P(P) having this dependency.

> You are claiming that this result is correct, and that P(P) does indeed not terminate.
>
> This is what you are saying, correct?
>
> So let's look at P(P). The first thing is does is call H(P,P). This, you have stated many times including just above, terminates. It gives a value zero. Thus the infinite loop is not entered, and the next instruction to be executed is the "return".
>
> So P(P) does terminate, contrary to what you claimed.

To fully understand this code a software engineer must be an expert in:
the C programming language, the x86 programming language, exactly how C
translates into x86 and the ability to recognize infinite recursion at
the x86 assembly language level. No knowledge of the halting problem is
required.

The ordinary semantics of standard C and the conventional x86 language
are the entire semantics required to conclusively prove that H(P,P) does
correctly determine that its correct and complete x86 emulation of its
input would never reach the "ret" instruction of P.

In computer science terminology this means that complete and correct
emulation P by H would never reach its final state and halt.

void P(u32 x)
{ if (H(x, x))
HERE: goto HERE;
return;
}

int main()
{ P(P);
}

_P()
[000011f0](01) 55 push ebp
[000011f1](02) 8bec mov ebp,esp
[000011f3](03) 8b4508 mov eax,[ebp+08]
[000011f6](01) 50 push eax
[000011f7](03) 8b4d08 mov ecx,[ebp+08]
[000011fa](01) 51 push ecx
[000011fb](05) e820feffff call 00001020
[00001200](03) 83c408 add esp,+08
[00001203](02) 85c0 test eax,eax
[00001205](02) 7402 jz 00001209
[00001207](02) ebfe jmp 00001207
[00001209](01) 5d pop ebp
[0000120a](01) c3 ret
Size in bytes:(0027) [0000120a]

_main()
[00001210](01) 55 push ebp
[00001211](02) 8bec mov ebp,esp
[00001213](05) 68f0110000 push 000011f0
[00001218](05) e8d3ffffff call 000011f0
[0000121d](03) 83c404 add esp,+04
[00001220](02) 33c0 xor eax,eax
[00001222](01) 5d pop ebp
[00001223](01) c3 ret
Size in bytes:(0020) [00001223]

machine stack stack machine assembly
address address data code language
======== ======== ======== ========= =============
[00001210][00101fba][00000000] 55 push ebp
[00001211][00101fba][00000000] 8bec mov ebp,esp
[00001213][00101fb6][000011f0] 68f0110000 push 000011f0 // push P
[00001218][00101fb2][0000121d] e8d3ffffff call 000011f0 // call P
[000011f0][00101fae][00101fba] 55 push ebp // enter executed P
[000011f1][00101fae][00101fba] 8bec mov ebp,esp
[000011f3][00101fae][00101fba] 8b4508 mov eax,[ebp+08]
[000011f6][00101faa][000011f0] 50 push eax // push P
[000011f7][00101faa][000011f0] 8b4d08 mov ecx,[ebp+08]
[000011fa][00101fa6][000011f0] 51 push ecx // push P
[000011fb][00101fa2][00001200] e820feffff call 00001020 // call H

Begin Simulation Execution Trace Stored at:21206e
Address_of_H:1020
[000011f0][0021205a][0021205e] 55 push ebp // enter emulated P
[000011f1][0021205a][0021205e] 8bec mov ebp,esp
[000011f3][0021205a][0021205e] 8b4508 mov eax,[ebp+08]
[000011f6][00212056][000011f0] 50 push eax // push P
[000011f7][00212056][000011f0] 8b4d08 mov ecx,[ebp+08]
[000011fa][00212052][000011f0] 51 push ecx // push P
[000011fb][0021204e][00001200] e820feffff call 00001020 // call H
Infinitely Recursive Simulation Detected Simulation Stopped

H knows its own machine address and on this basis it can easily examine
its stored execution_trace of P (see above) to determine:
(a) P is calling H with the same arguments that H was called with.
(b) No instructions in P could possibly escape this otherwise infinitely
recursive emulation.
(c) H aborts its emulation of P before its call to H is emulated.

[00001200][00101fae][00101fba] 83c408 add esp,+08 // return to
executed P
[00001203][00101fae][00101fba] 85c0 test eax,eax
[00001205][00101fae][00101fba] 7402 jz 00001209
[00001209][00101fb2][0000121d] 5d pop ebp
[0000120a][00101fb6][000011f0] c3 ret // return from
executed P
[0000121d][00101fba][00000000] 83c404 add esp,+04
[00001220][00101fba][00000000] 33c0 xor eax,eax
[00001222][00101fbe][00100000] 5d pop ebp
[00001223][00101fc2][00000000] c3 ret // ret from main
Number of Instructions Executed(878) / 67 = 13 pages

--
Copyright 2022 Pete Olcott

"Talent hits a target no one else can hit;
Genius hits a target no one else can see."
Arthur Schopenhauer

Re: Technically competent Software engineers can verify this halting problem proof refutation

<_Z6dnbQkpORGNyn_nZ2dnUU7_8zNnZ2d@giganews.com>

  copy mid

https://www.novabbs.com/computers/article-flat.php?id=9725&group=comp.ai.philosophy#9725

  copy link   Newsgroups: comp.theory comp.ai.philosophy sci.logic sci.math
Path: i2pn2.org!i2pn.org!weretis.net!feeder6.news.weretis.net!news.misty.com!border2.nntp.dca1.giganews.com!nntp.giganews.com!buffer2.nntp.dca1.giganews.com!news.giganews.com.POSTED!not-for-mail
NNTP-Posting-Date: Thu, 23 Jun 2022 13:03:07 -0500
Date: Thu, 23 Jun 2022 13:03:05 -0500
MIME-Version: 1.0
User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:91.0) Gecko/20100101
Thunderbird/91.10.0
Subject: Re: Technically competent Software engineers can verify this halting
problem proof refutation
Content-Language: en-US
Newsgroups: comp.theory,comp.ai.philosophy,sci.logic,sci.math
References: <EOydnaeszcdfHS__nZ2dnUU7_83NnZ2d@giganews.com>
<t8vih1$ksq$1@dont-email.me> <g9adnc6-pNyJxi7_nZ2dnUU7_8zNnZ2d@giganews.com>
<t90417$do2$1@dont-email.me>
<eefafc65-7571-42dc-881f-2af23b9b0948n@googlegroups.com>
From: NoO...@NoWhere.com (olcott)
In-Reply-To: <eefafc65-7571-42dc-881f-2af23b9b0948n@googlegroups.com>
Content-Type: text/plain; charset=UTF-8; format=flowed
Content-Transfer-Encoding: 7bit
Message-ID: <_Z6dnbQkpORGNyn_nZ2dnUU7_8zNnZ2d@giganews.com>
Lines: 41
X-Usenet-Provider: http://www.giganews.com
X-Trace: sv3-keVPL/JhqzSvWQic+EucSgxkdUEx9U3S2dQTQTFqbAmHwwHN7TbGxax+Ia20gW9iyusy9pWL8iUA0+A!wDE7h81e9yzArrWarovYCkqfil6ljPEo57FWR3X2s7kH+eOhb+YraP3JFrnEkuznWNbWLBGEfTsd
X-Complaints-To: abuse@giganews.com
X-DMCA-Notifications: http://www.giganews.com/info/dmca.html
X-Abuse-and-DMCA-Info: Please be sure to forward a copy of ALL headers
X-Abuse-and-DMCA-Info: Otherwise we will be unable to process your complaint properly
X-Postfilter: 1.3.40
X-Original-Bytes: 3800
 by: olcott - Thu, 23 Jun 2022 18:03 UTC

On 6/23/2022 7:20 AM, Paul N wrote:
> On Wednesday, June 22, 2022 at 11:10:50 PM UTC+1, Jeff Barnett wrote:
>> On 6/22/2022 12:10 PM, olcott wrote:
>>> On 6/22/2022 12:11 PM, Jeff Barnett wrote:
>>>> On 6/21/2022 8:38 PM, olcott wrote:
>>> After 100 reviewers in a dozen forums over a period of one year:
>>> On 6/14/2022 6:47 AM, Paul N wrote:
>>>> Yes, it is clear to us humans watching
>>>> it that the program is repeating itself.
>>>> Thus we can appreciate that it will never
>>>> reach the final "ret" - indeed, it won't
>>>> even get to the infinite loop identified above.
>>>
>>> If H can determine that this is the case in a finite number of steps
>>> then H could correctly reject its input on this basis.
>> Let's give Paul N a little credit but not much; notice that he doesn't
>> even understand the point of the exercise which is that the *same
>> function* must be used for both inner and outer purposes.
>
> Olcott has snipped part of the post where I did briefly address this. However, he did say that his purpose in posting to comp.lang.c and comp.lang.c++ was simply to check the language aspects of his posts, and they did seem OK on that basis. I've just put a post here on comp.theory addressing the more theoretical points, which hopefully will be more to your liking; if you disagree with the points I've made there then probably best to reply to that post directly.

I have already addressed your other post completely and I stuck with
pure software engineering terms and concepts conclusively proving that
the dependency relationship that P(P) has on H(P,P) causes its behavior
to be quite different than the complete and correct x86 emulation of the
input to H(P,P) that has no such dependency relationship.

The ordinary semantics of standard C and the conventional x86 language
are the entire semantics required to conclusively prove that H(P,P) does
correctly determine that its correct and complete x86 emulation of its
input would never reach the "ret" instruction of P.

In computer science terminology this means that complete and correct
emulation P by H would never reach its final state and halt.

--
Copyright 2022 Pete Olcott

"Talent hits a target no one else can hit;
Genius hits a target no one else can see."
Arthur Schopenhauer

Software engineers can verify this halting problem proof refutation [ H(P,P) versus P(P) ]

<n5idnblW-_zrMCn_nZ2dnUU7_83NnZ2d@giganews.com>

  copy mid

https://www.novabbs.com/computers/article-flat.php?id=9726&group=comp.ai.philosophy#9726

  copy link   Newsgroups: comp.theory comp.ai.philosophy sci.logic sci.math
Path: i2pn2.org!i2pn.org!weretis.net!feeder6.news.weretis.net!news.misty.com!border2.nntp.dca1.giganews.com!nntp.giganews.com!buffer2.nntp.dca1.giganews.com!news.giganews.com.POSTED!not-for-mail
NNTP-Posting-Date: Thu, 23 Jun 2022 13:14:14 -0500
Date: Thu, 23 Jun 2022 13:14:12 -0500
MIME-Version: 1.0
User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:91.0) Gecko/20100101
Thunderbird/91.10.0
Subject: Software engineers can verify this halting problem proof refutation [
H(P,P) versus P(P) ]
Content-Language: en-US
Newsgroups: comp.theory,comp.ai.philosophy,sci.logic,sci.math
References: <EOydnaeszcdfHS__nZ2dnUU7_83NnZ2d@giganews.com>
<PtvsK.300027$5fVf.158200@fx09.iad>
<CaWdnZEntLawFS__nZ2dnUU7_83NnZ2d@giganews.com>
<ccb8af3c-e497-4d6e-8040-826a4e87a6e7n@googlegroups.com>
<g9qdnRjZj9uBlS7_nZ2dnUU7_8zNnZ2d@giganews.com>
<0f7ed34c-5aaa-4858-885e-66e16777f599n@googlegroups.com>
<87a6a44s02.fsf@bsb.me.uk>
<a9adde1d-ad2c-444c-9b14-88841f5e8783n@googlegroups.com>
From: NoO...@NoWhere.com (olcott)
In-Reply-To: <a9adde1d-ad2c-444c-9b14-88841f5e8783n@googlegroups.com>
Content-Type: text/plain; charset=UTF-8; format=flowed
Content-Transfer-Encoding: 7bit
Message-ID: <n5idnblW-_zrMCn_nZ2dnUU7_83NnZ2d@giganews.com>
Lines: 184
X-Usenet-Provider: http://www.giganews.com
X-Trace: sv3-XXIDp4Dszb0aVkWfXTnxHCHZfu1g5lRtwjq9fcbtVC/GAr6A2g8R/ooxxdcM57BrjGqFbgGrFZhSY1X!Be2izX3j7SjL6URQjo+HTyXUj6aMRWC9NB4njdAasXHnSaiVD69PYhoTdii0F/rmsam8X0fCIVn7
X-Complaints-To: abuse@giganews.com
X-DMCA-Notifications: http://www.giganews.com/info/dmca.html
X-Abuse-and-DMCA-Info: Please be sure to forward a copy of ALL headers
X-Abuse-and-DMCA-Info: Otherwise we will be unable to process your complaint properly
X-Postfilter: 1.3.40
X-Original-Bytes: 10168
 by: olcott - Thu, 23 Jun 2022 18:14 UTC

On 6/23/2022 3:19 AM, Malcolm McLean wrote:
> On Wednesday, 22 June 2022 at 16:50:31 UTC+1, Ben Bacarisse wrote:
>> Malcolm McLean <malcolm.ar...@gmail.com> writes:
>>
>>> On Wednesday, 22 June 2022 at 13:16:36 UTC+1, olcott wrote:
>>>> On 6/22/2022 2:55 AM, Malcolm McLean wrote:
>>>>> On Wednesday, 22 June 2022 at 04:10:45 UTC+1, olcott wrote:
>>>>>> On 6/21/2022 9:52 PM, Richard Damon wrote:
>>>>>>>
>>>>>>> Right, and P(P) reaches the ret instruction of H(P,P) returns 0, so H
>>>>>>> was incorrect in its mapping, since the behavior of P(P) is the
>>>>>>> DEFINITION of the behavior of H(P,P),
>>>>>> Linz and others were aware that: A halt decider must compute the mapping
>>>>>> from its inputs to an accept or reject state on the basis of the actual
>>>>>> behavior that is actually specified by these inputs.
>>>>>> Linz and others made the false assumption that the actual behavior that
>>>>>> is actually specified by the inputs to a simulating halt decider is not
>>>>>> the same as the direct execution of these inputs. They were unaware of
>>>>>> this because no one previously fully examined a simulating halt decider
>>>>>> ever before.
>>>>>>> especially if that is what P calls
>>>>>>> and P is claimed to be built by the Linz template.
>>>>>>>
>>>>>>> So, either P isn't built right, or H isn't built fight, or H is wrong.
>>>>>>
>>>>> You've dry-run P(P) and it doesn't halt. Additionally the halt decider H
>>>>> reports it as non-halting. So it's reasonable to assume that H is correct.
>>>>>
>>>>> However, when run, P(P) halts. So what are we to conclude? That "the
>>>>> actual behaviour that is actually specified by the inputs to a simulating
>>>>> halt decider is not the same as the direct execution of these inputs"?
>>>>
>>>> That is an actual immutable verified fact.
>>>>
>>> That's your conclusion from your observations and reasoning. You've
>>> dry-run P(P), and it doesn't halt. You've run H on P(P), and it
>>> reports "non-halting". You've run P(P), and it halts. So one
>>> explanation is the one you've given but, as I said, that explanation
>>> has rather far-reaching consequences.
>> There is only one explanation. What you call the "dry-run" is not that
>> same as the P(P). We've known this since the "line 15 commented out"
>> days. There are two computations -- one that is not stopped and one
>> that is, the "dry-run" and the run, the "simulation of the input to
>> H(P,P)" and P(P). All PO is doing is trying to find words that hide
>> what's going on.
>>
> I'm a scientists, not a mathematician.
> The example I always use is that you are doing an energy budget for tigers.
> You work how much they use on running about, lactating, maintaining their
> body temperature, and so on.
>
> Now let's say that you find that all results are within a few percentage points
> of a similar budget done for lions. You'd instantly accept this data.
>
> Now let's say that the results are wildly different from a previous budget done
> for lions. You wouldn't just accept that data. You'd check. You'd want to
> understand the reasons tigers spend far less energy on movement than lions.
>
> Now let's say that the result show that tigers use more energy than they
> take in food. Would you instantly conclude that the law of conservation of
> energy must be incorrect?
>
> The third is what PO is doing.

I rewrote this up so that sufficiently competent software engineers
would be able to confirm that the following is correct:

To fully understand this code a software engineer must be an expert in:
the C programming language, the x86 programming language, exactly how C
translates into x86 and the ability to recognize infinite recursion at
the x86 assembly language level. No knowledge of the halting problem is
required.

The ordinary semantics of standard C and the conventional x86 language
are the entire semantics required to conclusively prove that H(P,P) does
correctly determine that its correct and complete x86 emulation of its
input would never reach the "ret" instruction of P.

In computer science terminology this means that complete and correct
emulation P by H would never reach its final state and halt.

The dependency relationship that P(P) has on H(P,P) causes its behavior
to be quite different than the complete and correct x86 emulation of the
input to H(P,P) that has no such dependency relationship.

As shown below because P(P) depends on the return value of H(P,P) it has
different behavior than the correctly emulated input to H(P,P).

The correctly emulated input to H(P,P) remains stuck in recursive
emulation that never gets to the point of receiving a return value from
H, thus lacks the dependency of the executed P(P).

void P(u32 x)
{ if (H(x, x))
HERE: goto HERE;
return;
}

int main()
{ P(P);
}

_P()
[000011f0](01) 55 push ebp
[000011f1](02) 8bec mov ebp,esp
[000011f3](03) 8b4508 mov eax,[ebp+08]
[000011f6](01) 50 push eax
[000011f7](03) 8b4d08 mov ecx,[ebp+08]
[000011fa](01) 51 push ecx
[000011fb](05) e820feffff call 00001020
[00001200](03) 83c408 add esp,+08
[00001203](02) 85c0 test eax,eax
[00001205](02) 7402 jz 00001209
[00001207](02) ebfe jmp 00001207
[00001209](01) 5d pop ebp
[0000120a](01) c3 ret
Size in bytes:(0027) [0000120a]

_main()
[00001210](01) 55 push ebp
[00001211](02) 8bec mov ebp,esp
[00001213](05) 68f0110000 push 000011f0
[00001218](05) e8d3ffffff call 000011f0
[0000121d](03) 83c404 add esp,+04
[00001220](02) 33c0 xor eax,eax
[00001222](01) 5d pop ebp
[00001223](01) c3 ret
Size in bytes:(0020) [00001223]

machine stack stack machine assembly
address address data code language
======== ======== ======== ========= =============
[00001210][00101fba][00000000] 55 push ebp
[00001211][00101fba][00000000] 8bec mov ebp,esp
[00001213][00101fb6][000011f0] 68f0110000 push 000011f0 // push P
[00001218][00101fb2][0000121d] e8d3ffffff call 000011f0 // call P
[000011f0][00101fae][00101fba] 55 push ebp // enter executed P
[000011f1][00101fae][00101fba] 8bec mov ebp,esp
[000011f3][00101fae][00101fba] 8b4508 mov eax,[ebp+08]
[000011f6][00101faa][000011f0] 50 push eax // push P
[000011f7][00101faa][000011f0] 8b4d08 mov ecx,[ebp+08]
[000011fa][00101fa6][000011f0] 51 push ecx // push P
[000011fb][00101fa2][00001200] e820feffff call 00001020 // call H

Begin Simulation Execution Trace Stored at:21206e
Address_of_H:1020
[000011f0][0021205a][0021205e] 55 push ebp // enter emulated P
[000011f1][0021205a][0021205e] 8bec mov ebp,esp
[000011f3][0021205a][0021205e] 8b4508 mov eax,[ebp+08]
[000011f6][00212056][000011f0] 50 push eax // push P
[000011f7][00212056][000011f0] 8b4d08 mov ecx,[ebp+08]
[000011fa][00212052][000011f0] 51 push ecx // push P
[000011fb][0021204e][00001200] e820feffff call 00001020 // call emulated H
Infinitely Recursive Simulation Detected Simulation Stopped

H knows its own machine address and on this basis it can easily examine
its stored execution_trace of P (see above) to determine:
(a) P is calling H with the same arguments that H was called with.
(b) No instructions in P could possibly escape this otherwise infinitely
recursive emulation.
(c) H aborts its emulation of P before its call to H is emulated.

[00001200][00101fae][00101fba] 83c408 add esp,+08 // return to
executed P
[00001203][00101fae][00101fba] 85c0 test eax,eax
[00001205][00101fae][00101fba] 7402 jz 00001209
[00001209][00101fb2][0000121d] 5d pop ebp
[0000120a][00101fb6][000011f0] c3 ret // return from
executed P
[0000121d][00101fba][00000000] 83c404 add esp,+04
[00001220][00101fba][00000000] 33c0 xor eax,eax
[00001222][00101fbe][00100000] 5d pop ebp
[00001223][00101fc2][00000000] c3 ret // ret from main
Number of Instructions Executed(878) / 67 = 13 pages

--
Copyright 2022 Pete Olcott

"Talent hits a target no one else can hit;
Genius hits a target no one else can see."
Arthur Schopenhauer


Click here to read the complete article
Re: Technically competent Software engineers can verify this halting problem proof refutation [ full closure ]

<20220623204153.00007a22@reddwarf.jmc>

  copy mid

https://www.novabbs.com/computers/article-flat.php?id=9727&group=comp.ai.philosophy#9727

  copy link   Newsgroups: comp.theory comp.ai.philosophy sci.logic sci.math
Path: i2pn2.org!i2pn.org!usenet.blueworldhosting.com!feed1.usenet.blueworldhosting.com!peer01.iad!feed-me.highwinds-media.com!peer01.ams1!peer.ams1.xlned.com!news.xlned.com!peer01.ams4!peer.am4.highwinds-media.com!news.highwinds-media.com!fx04.ams4.POSTED!not-for-mail
From: flib...@reddwarf.jmc (Mr Flibble)
Newsgroups: comp.theory,comp.ai.philosophy,sci.logic,sci.math
Subject: Re: Technically competent Software engineers can verify this
halting problem proof refutation [ full closure ]
Message-ID: <20220623204153.00007a22@reddwarf.jmc>
References: <EOydnaeszcdfHS__nZ2dnUU7_83NnZ2d@giganews.com>
<20220622203106.00003fa2@reddwarf.jmc>
<xqSdnb2KKdOL5i7_nZ2dnUU7_81g4p2d@giganews.com>
<TwOsK.191531$JVi.174704@fx17.iad>
<N5WdnY_iDptAKC7_nZ2dnUU7_8xh4p2d@giganews.com>
<nLOsK.9452$mY1.1924@fx01.iad>
<3LmdnVllU6W8Jy7_nZ2dnUU7_8xh4p2d@giganews.com>
<j8PsK.15112$%i2.4898@fx48.iad>
<s9CdndzLkud5XC7_nZ2dnUU7_83NnZ2d@giganews.com>
<%sPsK.15923$nZ1.10923@fx05.iad>
<NZmdnRE_I-AmWS7_nZ2dnUU7_81g4p2d@giganews.com>
<RAPsK.191532$JVi.129665@fx17.iad>
<jeKdndsSjJTDUC7_nZ2dnUU7_83NnZ2d@giganews.com>
<SiQsK.193267$70j.57451@fx16.iad>
<x9KdnSlyYIyxSy7_nZ2dnUU7_8zNnZ2d@giganews.com>
<3iRsK.3746$vd2.1411@fx39.iad>
<7t6dnRsAGcTtay7_nZ2dnUU7_83NnZ2d@giganews.com>
<GfWdnR1iS7lAai7_nZ2dnUU7_83NnZ2d@giganews.com>
Organization: Jupiter Mining Corp
X-Newsreader: Claws Mail 3.17.8 (GTK+ 2.24.33; x86_64-w64-mingw32)
MIME-Version: 1.0
Content-Type: text/plain; charset=ISO-8859-1
Content-Transfer-Encoding: quoted-printable
Lines: 287
X-Complaints-To: abuse@eweka.nl
NNTP-Posting-Date: Thu, 23 Jun 2022 19:41:51 UTC
Date: Thu, 23 Jun 2022 20:41:53 +0100
X-Received-Bytes: 13181
 by: Mr Flibble - Thu, 23 Jun 2022 19:41 UTC

On Thu, 23 Jun 2022 00:19:23 -0500
olcott <NoOne@NoWhere.com> wrote:

> On 6/23/2022 12:13 AM, olcott wrote:
> > On 6/22/2022 10:41 PM, Richard Damon wrote:
> >> On 6/22/22 10:55 PM, olcott wrote:
> >>> On 6/22/2022 9:34 PM, Richard Damon wrote:
> >>>> On 6/22/22 10:18 PM, olcott wrote:
> >>>>> On 6/22/2022 8:45 PM, Richard Damon wrote:
> >>>>>> On 6/22/22 9:41 PM, olcott wrote:
> >>>>>>> On 6/22/2022 8:36 PM, Richard Damon wrote:
> >>>>>>>> On 6/22/22 9:29 PM, olcott wrote:
> >>>>>>>>> On 6/22/2022 8:14 PM, Richard Damon wrote:
> >>>>>>>>>> On 6/22/22 8:55 PM, olcott wrote:
> >>>>>>>>>>> On 6/22/2022 7:48 PM, Richard Damon wrote:
> >>>>>>>>>>>> On 6/22/22 8:37 PM, olcott wrote:
> >>>>>>>>>>>
> >>>>>>>>>>>>> First you agree that my words are perfectly correct
> >>>>>>>>>>>>> within their specified context
> >>>>>>>>>>>>
> >>>>>>>>>>>> Since you haven't actualy defined you context, and imply
> >>>>>>>>>>>> that it is the halting problem, where they can not be
> >>>>>>>>>>>> correct, that is not possible.
> >>>>>>>>>>>>>
> >>>>>>>>>>> First you agree that these words are 100% correct within
> >>>>>>>>>>> the context of software engineering totally ignoring the
> >>>>>>>>>>> context of the halting problem.
> >>>>>>>>>>>
> >>>>>>>>>>> #include <stdint.h>
> >>>>>>>>>>> #define u32 uint32_t
> >>>>>>>>>>>
> >>>>>>>>>>> #include <stdint.h>
> >>>>>>>>>>> typedef void (*ptr)();
> >>>>>>>>>>>
> >>>>>>>>>>> void P(ptr x)
> >>>>>>>>>>> {
> >>>>>>>>>>>    if (H(x, x))
> >>>>>>>>>>>      HERE: goto HERE;
> >>>>>>>>>>>    return;
> >>>>>>>>>>> }
> >>>>>>>>>>>
> >>>>>>>>>>> int main()
> >>>>>>>>>>> {
> >>>>>>>>>>>    Output("Input_Halts = ", H(P, P));
> >>>>>>>>>>> }
> >>>>>>>>>>>
> >>>>>>>>>>> _P()
> >>>>>>>>>>> [000010d2](01)  55              push ebp
> >>>>>>>>>>> [000010d3](02)  8bec            mov ebp,esp
> >>>>>>>>>>> [000010d5](03)  8b4508          mov eax,[ebp+08]
> >>>>>>>>>>> [000010d8](01)  50              push eax
> >>>>>>>>>>> [000010d9](03)  8b4d08          mov ecx,[ebp+08]
> >>>>>>>>>>> [000010dc](01)  51              push ecx
> >>>>>>>>>>> [000010dd](05)  e820feffff      call 00000f02
> >>>>>>>>>>> [000010e2](03)  83c408          add esp,+08
> >>>>>>>>>>> [000010e5](02)  85c0            test eax,eax
> >>>>>>>>>>> [000010e7](02)  7402            jz 000010eb
> >>>>>>>>>>> [000010e9](02)  ebfe            jmp 000010e9
> >>>>>>>>>>> [000010eb](01)  5d              pop ebp
> >>>>>>>>>>> [000010ec](01)  c3              ret
> >>>>>>>>>>> Size in bytes:(0027) [000010ec]
> >>>>>>>>>>>
> >>>>>>>>>>> Every sufficiently competent software engineer can easily
> >>>>>>>>>>> verify that the complete and correct x86 emulation of the
> >>>>>>>>>>> input to H(P,P) by H would never reach the "ret"
> >>>>>>>>>>> instruction of P because both H and P would remain stuck
> >>>>>>>>>>> in infinitely recursive emulation.
> >>>>>>>>>>>
> >>>>>>>>>>
> >>>>>>>>>> So, if H actually is a program that does a COMPLETE and
> >>>>>>>>>> correct x86 emulation of its input, then YES, as I have
> >>>>>>>>>> said many time before, this combination is non-halting.
> >>>>>>>>>>
> >>>>>>>>>> The fact that you need to keep going back to this, and
> >>>>>>>>>> seem to just be refusing to accept the conditions under
> >>>>>>>>>> which you have proved it just shows the problems with your
> >>>>>>>>>> thought process.
> >>>>>>>>>>> If H does correctly determine that this is the case in a
> >>>>>>>>>>> finite number of steps then H could reject its input on
> >>>>>>>>>>> this basis. Here are the details of exactly how H does
> >>>>>>>>>>> this in a finite number of steps.
> >>>>>>>>>>
> >>>>>>>>>> Except that NOW H isn't the H we were just talking about,
> >>>>>>>>>> so you are just proving that you are either lying or an
> >>>>>>>>>> idiot.
> >>>>>>>>>>
> >>>>>>>>>> Remember, the first analysis had the CONDITION on it that
> >>>>>>>>>> H did a COMPLETE and correct x86 emulation.
> >>>>>>>>>>
> >>>>>>>>>> Once you remove that property form H, that conclusion no
> >>>>>>>>>> long holds and you are shown to be a lying idiot.
> >>>>>>>>>>
> >>>>>>>>>>>
> >>>>>>>>>>> typedef struct Decoded
> >>>>>>>>>>> {
> >>>>>>>>>>>    u32 Address;
> >>>>>>>>>>>    u32 ESP;          // Current value of ESP
> >>>>>>>>>>>    u32 TOS;          // Current value of Top of Stack
> >>>>>>>>>>>    u32 NumBytes;
> >>>>>>>>>>>    u32 Simplified_Opcode;
> >>>>>>>>>>>    u32 Decode_Target;
> >>>>>>>>>>> } Decoded_Line_Of_Code;
> >>>>>>>>>>>
> >>>>>>>>>>>   machine   stack     stack     machine    assembly
> >>>>>>>>>>>   address   address   data      code       language
> >>>>>>>>>>>   ========  ========  ========  =========  ============> >>>>>>>>>>> [000010d2][00211e8a][00211e8e] 55         push ebp
> >>>>>>>>>>> [000010d3][00211e8a][00211e8e] 8bec       mov ebp,esp
> >>>>>>>>>>> [000010d5][00211e8a][00211e8e] 8b4508     mov eax,[ebp+08]
> >>>>>>>>>>> [000010d8][00211e86][000010d2] 50         push eax
> >>>>>>>>>>> // push P
> >>>>>>>>>>> [000010d9][00211e86][000010d2] 8b4d08     mov ecx,[ebp+08]
> >>>>>>>>>>> [000010dc][00211e82][000010d2] 51         push ecx
> >>>>>>>>>>> // push P
> >>>>>>>>>>> [000010dd][00211e7e][000010e2] e820feffff call 00000f02
> >>>>>>>>>>> // call H
> >>>>>>>>>>> Infinitely Recursive Simulation Detected Simulation
> >>>>>>>>>>> Stopped
> >>>>>>>>>>>
> >>>>>>>>>>> // actual fully operational code in the x86utm operating
> >>>>>>>>>>> system u32 H(u32 P, u32 I)
> >>>>>>>>>>> {
> >>>>>>>>>>> HERE:
> >>>>>>>>>>>    u32 End_Of_Code;
> >>>>>>>>>>>    u32 Address_of_H;              // 2022-06-17
> >>>>>>>>>>>    u32 code_end                  = get_code_end(P);
> >>>>>>>>>>>    Decoded_Line_Of_Code *decoded > >>>>>>>>>>> (Decoded_Line_Of_Code*)
> >>>>>>>>>>> Allocate(sizeof(Decoded_Line_Of_Code)); Registers*
> >>>>>>>>>>> master_state      = (Registers*)
> >>>>>>>>>>> Allocate(sizeof(Registers)); Registers*  slave_state
> >>>>>>>>>>> = (Registers*) Allocate(sizeof(Registers));
> >>>>>>>>>>>    u32*        slave_stack       = Allocate(0x10000); //
> >>>>>>>>>>> 64k; u32  execution_trace =
> >>>>>>>>>>> (u32)Allocate(sizeof(Decoded_Line_Of_Code) * 1000);
> >>>>>>>>>>>
> >>>>>>>>>>>    __asm lea eax, HERE             // 2022-06-18
> >>>>>>>>>>>    __asm sub eax, 6                // 2022-06-18
> >>>>>>>>>>>    __asm mov Address_of_H, eax     // 2022-06-18
> >>>>>>>>>>>    __asm mov eax, END_OF_CODE
> >>>>>>>>>>>    __asm mov End_Of_Code, eax
> >>>>>>>>>>>
> >>>>>>>>>>>    Output("Address_of_H:", Address_of_H); // 2022-06-11
> >>>>>>>>>>>    Init_slave_state(P, I, End_Of_Code, slave_state,
> >>>>>>>>>>> slave_stack);
> >>>>>>>>>>>    Output("\nBegin Simulation   Execution Trace Stored
> >>>>>>>>>>> at:", execution_trace);
> >>>>>>>>>>>    if (Decide_Halting(&execution_trace, &decoded,
> >>>>>>>>>>> code_end, &master_state,
> >>>>>>>>>>>                       &slave_state, &slave_stack,
> >>>>>>>>>>> Address_of_H, P, I))
> >>>>>>>>>>>        goto END_OF_CODE;
> >>>>>>>>>>>    return 0;  // Does not halt
> >>>>>>>>>>> END_OF_CODE:
> >>>>>>>>>>>    return 1; // Input has normally terminated
> >>>>>>>>>>> }
> >>>>>>>>>>>
> >>>>>>>>>>> H knows its own machine address and on this basis it can
> >>>>>>>>>>> easily examine its stored execution_trace of P and
> >>>>>>>>>>> determine: (a) P is calling H with the same arguments
> >>>>>>>>>>> that H was called with.
> >>>>>>>>>>> (b) No instructions in P could possibly escape this
> >>>>>>>>>>> otherwise infinitely recursive emulation.
> >>>>>>>>>>> (c) H aborts its emulation of P before its call to H is
> >>>>>>>>>>> invoked.
> >>>>>>>>>>>
> >>>>>>>>>>>
> >>>>>>>>>>
> >>>>>>>>>> (b) is NOT a correct rule. Thos has been pointed out
> >>>>>>>>>> before, and you have ignored it.
> >>>>>>>>>>
> >>>>>>>>> That you don't understand what I mean does not mean that it
> >>>>>>>>> is an incorrect rule.
> >>>>>>>>>
> >>>>>>>>> Here is an example where P does have instruction that could
> >>>>>>>>> possibly escape this otherwise infinitely recursive
> >>>>>>>>> emulation:
> >>>>>>>>>
> >>>>>>>>>
> >>>>>>>>> void P(ptr x)
> >>>>>>>>> {
> >>>>>>>>> static count = 0;
> >>>>>>>>>    count++;
> >>>>>>>>>    if count > 3)
> >>>>>>>>>      return;
> >>>>>>>>>    if (H(x, x))
> >>>>>>>>>      HERE: goto HERE;
> >>>>>>>>>    return;
> >>>>>>>>> }
> >>>>>>>>>
> >>>>>>>>
> >>>>>>>> FALLACY of proof by example. I never said that (b) isn't
> >>>>>>>> sometimes true, just it isn't an always true condition. You
> >>>>>>>> fail at elementary logic.
> >>>>>>>
> >>>>>>> Try and find a valid counter-example. Every attempt at
> >>>>>>> rebuttal that is not a valid counter-example is one form of
> >>>>>>> deception or another.
> >>>>>>>
> >>>>>>>
> >>>>>>
> >>>>>> P(P)
> >>>>>
> >>>>> That is not any example of (b), thus another mere strawman
> >>>>> deception.
> >>>>
> >>>> Why not?
> >>>>
> >>> It is not an example of the simulation of the input to H(P,P) at
> >>> all.
> >>>
> >>>
> >>
> >> Why is P not P?
> >>
> >
> > It is not a direct rebuttal of my original claim.
> >
> > This would be a direct rebuttal:
> > You must adapt P so that when H(P,P) emulates its input it
> > determines that P never reaches its "ret" instruction and the
> > adapted emulated P still reaches its "ret" instruction.
> >
>
> Unless you find that at least one input where it gets the wrong
> answer you have not refuted me.


Click here to read the complete article
Software engineers [ not Flibble ] can verify this halting problem proof refutation [ full closure ]

<Y-CdnQZk3dX2WCn_nZ2dnUU7_83NnZ2d@giganews.com>

  copy mid

https://www.novabbs.com/computers/article-flat.php?id=9728&group=comp.ai.philosophy#9728

  copy link   Newsgroups: comp.theory comp.ai.philosophy sci.logic sci.math
Path: i2pn2.org!i2pn.org!weretis.net!feeder6.news.weretis.net!news.misty.com!border2.nntp.dca1.giganews.com!nntp.giganews.com!buffer2.nntp.dca1.giganews.com!news.giganews.com.POSTED!not-for-mail
NNTP-Posting-Date: Thu, 23 Jun 2022 14:56:27 -0500
Date: Thu, 23 Jun 2022 14:56:26 -0500
MIME-Version: 1.0
User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:91.0) Gecko/20100101
Thunderbird/91.10.0
Subject: Software engineers [ not Flibble ] can verify this halting problem
proof refutation [ full closure ]
Content-Language: en-US
Newsgroups: comp.theory,comp.ai.philosophy,sci.logic,sci.math
References: <EOydnaeszcdfHS__nZ2dnUU7_83NnZ2d@giganews.com>
<20220622203106.00003fa2@reddwarf.jmc>
<xqSdnb2KKdOL5i7_nZ2dnUU7_81g4p2d@giganews.com>
<TwOsK.191531$JVi.174704@fx17.iad>
<N5WdnY_iDptAKC7_nZ2dnUU7_8xh4p2d@giganews.com>
<nLOsK.9452$mY1.1924@fx01.iad>
<3LmdnVllU6W8Jy7_nZ2dnUU7_8xh4p2d@giganews.com>
<j8PsK.15112$%i2.4898@fx48.iad>
<s9CdndzLkud5XC7_nZ2dnUU7_83NnZ2d@giganews.com>
<%sPsK.15923$nZ1.10923@fx05.iad>
<NZmdnRE_I-AmWS7_nZ2dnUU7_81g4p2d@giganews.com>
<RAPsK.191532$JVi.129665@fx17.iad>
<jeKdndsSjJTDUC7_nZ2dnUU7_83NnZ2d@giganews.com>
<SiQsK.193267$70j.57451@fx16.iad>
<x9KdnSlyYIyxSy7_nZ2dnUU7_8zNnZ2d@giganews.com>
<3iRsK.3746$vd2.1411@fx39.iad>
<7t6dnRsAGcTtay7_nZ2dnUU7_83NnZ2d@giganews.com>
<GfWdnR1iS7lAai7_nZ2dnUU7_83NnZ2d@giganews.com>
<20220623204153.00007a22@reddwarf.jmc>
From: NoO...@NoWhere.com (olcott)
In-Reply-To: <20220623204153.00007a22@reddwarf.jmc>
Content-Type: text/plain; charset=UTF-8; format=flowed
Content-Transfer-Encoding: 8bit
Message-ID: <Y-CdnQZk3dX2WCn_nZ2dnUU7_83NnZ2d@giganews.com>
Lines: 279
X-Usenet-Provider: http://www.giganews.com
X-Trace: sv3-ZZqhSySBhnJVQsBXTRa1QFEjm7cyE8iMQGtvjsehvLR9ggFCbSkZU/Y5pICzLNAvRD3FqGEL8dJ7LHR!xD6mcSggNPszdrl6AG6zSrhRcs+NsqeA3PO3KDvHGxL9Zold8x/81DHr9U9fW/iRx5MXRRhQvU+B
X-Complaints-To: abuse@giganews.com
X-DMCA-Notifications: http://www.giganews.com/info/dmca.html
X-Abuse-and-DMCA-Info: Please be sure to forward a copy of ALL headers
X-Abuse-and-DMCA-Info: Otherwise we will be unable to process your complaint properly
X-Postfilter: 1.3.40
X-Original-Bytes: 13904
 by: olcott - Thu, 23 Jun 2022 19:56 UTC

On 6/23/2022 2:41 PM, Mr Flibble wrote:
> On Thu, 23 Jun 2022 00:19:23 -0500
> olcott <NoOne@NoWhere.com> wrote:
>
>> On 6/23/2022 12:13 AM, olcott wrote:
>>> On 6/22/2022 10:41 PM, Richard Damon wrote:
>>>> On 6/22/22 10:55 PM, olcott wrote:
>>>>> On 6/22/2022 9:34 PM, Richard Damon wrote:
>>>>>> On 6/22/22 10:18 PM, olcott wrote:
>>>>>>> On 6/22/2022 8:45 PM, Richard Damon wrote:
>>>>>>>> On 6/22/22 9:41 PM, olcott wrote:
>>>>>>>>> On 6/22/2022 8:36 PM, Richard Damon wrote:
>>>>>>>>>> On 6/22/22 9:29 PM, olcott wrote:
>>>>>>>>>>> On 6/22/2022 8:14 PM, Richard Damon wrote:
>>>>>>>>>>>> On 6/22/22 8:55 PM, olcott wrote:
>>>>>>>>>>>>> On 6/22/2022 7:48 PM, Richard Damon wrote:
>>>>>>>>>>>>>> On 6/22/22 8:37 PM, olcott wrote:
>>>>>>>>>>>>>
>>>>>>>>>>>>>>> First you agree that my words are perfectly correct
>>>>>>>>>>>>>>> within their specified context
>>>>>>>>>>>>>>
>>>>>>>>>>>>>> Since you haven't actualy defined you context, and imply
>>>>>>>>>>>>>> that it is the halting problem, where they can not be
>>>>>>>>>>>>>> correct, that is not possible.
>>>>>>>>>>>>>>>
>>>>>>>>>>>>> First you agree that these words are 100% correct within
>>>>>>>>>>>>> the context of software engineering totally ignoring the
>>>>>>>>>>>>> context of the halting problem.
>>>>>>>>>>>>>
>>>>>>>>>>>>> #include <stdint.h>
>>>>>>>>>>>>> #define u32 uint32_t
>>>>>>>>>>>>>
>>>>>>>>>>>>> #include <stdint.h>
>>>>>>>>>>>>> typedef void (*ptr)();
>>>>>>>>>>>>>
>>>>>>>>>>>>> void P(ptr x)
>>>>>>>>>>>>> {
>>>>>>>>>>>>>    if (H(x, x))
>>>>>>>>>>>>>      HERE: goto HERE;
>>>>>>>>>>>>>    return;
>>>>>>>>>>>>> }
>>>>>>>>>>>>>
>>>>>>>>>>>>> int main()
>>>>>>>>>>>>> {
>>>>>>>>>>>>>    Output("Input_Halts = ", H(P, P));
>>>>>>>>>>>>> }
>>>>>>>>>>>>>
>>>>>>>>>>>>> _P()
>>>>>>>>>>>>> [000010d2](01)  55              push ebp
>>>>>>>>>>>>> [000010d3](02)  8bec            mov ebp,esp
>>>>>>>>>>>>> [000010d5](03)  8b4508          mov eax,[ebp+08]
>>>>>>>>>>>>> [000010d8](01)  50              push eax
>>>>>>>>>>>>> [000010d9](03)  8b4d08          mov ecx,[ebp+08]
>>>>>>>>>>>>> [000010dc](01)  51              push ecx
>>>>>>>>>>>>> [000010dd](05)  e820feffff      call 00000f02
>>>>>>>>>>>>> [000010e2](03)  83c408          add esp,+08
>>>>>>>>>>>>> [000010e5](02)  85c0            test eax,eax
>>>>>>>>>>>>> [000010e7](02)  7402            jz 000010eb
>>>>>>>>>>>>> [000010e9](02)  ebfe            jmp 000010e9
>>>>>>>>>>>>> [000010eb](01)  5d              pop ebp
>>>>>>>>>>>>> [000010ec](01)  c3              ret
>>>>>>>>>>>>> Size in bytes:(0027) [000010ec]
>>>>>>>>>>>>>
>>>>>>>>>>>>> Every sufficiently competent software engineer can easily
>>>>>>>>>>>>> verify that the complete and correct x86 emulation of the
>>>>>>>>>>>>> input to H(P,P) by H would never reach the "ret"
>>>>>>>>>>>>> instruction of P because both H and P would remain stuck
>>>>>>>>>>>>> in infinitely recursive emulation.
>>>>>>>>>>>>>
>>>>>>>>>>>>
>>>>>>>>>>>> So, if H actually is a program that does a COMPLETE and
>>>>>>>>>>>> correct x86 emulation of its input, then YES, as I have
>>>>>>>>>>>> said many time before, this combination is non-halting.
>>>>>>>>>>>>
>>>>>>>>>>>> The fact that you need to keep going back to this, and
>>>>>>>>>>>> seem to just be refusing to accept the conditions under
>>>>>>>>>>>> which you have proved it just shows the problems with your
>>>>>>>>>>>> thought process.
>>>>>>>>>>>>> If H does correctly determine that this is the case in a
>>>>>>>>>>>>> finite number of steps then H could reject its input on
>>>>>>>>>>>>> this basis. Here are the details of exactly how H does
>>>>>>>>>>>>> this in a finite number of steps.
>>>>>>>>>>>>
>>>>>>>>>>>> Except that NOW H isn't the H we were just talking about,
>>>>>>>>>>>> so you are just proving that you are either lying or an
>>>>>>>>>>>> idiot.
>>>>>>>>>>>>
>>>>>>>>>>>> Remember, the first analysis had the CONDITION on it that
>>>>>>>>>>>> H did a COMPLETE and correct x86 emulation.
>>>>>>>>>>>>
>>>>>>>>>>>> Once you remove that property form H, that conclusion no
>>>>>>>>>>>> long holds and you are shown to be a lying idiot.
>>>>>>>>>>>>
>>>>>>>>>>>>>
>>>>>>>>>>>>> typedef struct Decoded
>>>>>>>>>>>>> {
>>>>>>>>>>>>>    u32 Address;
>>>>>>>>>>>>>    u32 ESP;          // Current value of ESP
>>>>>>>>>>>>>    u32 TOS;          // Current value of Top of Stack
>>>>>>>>>>>>>    u32 NumBytes;
>>>>>>>>>>>>>    u32 Simplified_Opcode;
>>>>>>>>>>>>>    u32 Decode_Target;
>>>>>>>>>>>>> } Decoded_Line_Of_Code;
>>>>>>>>>>>>>
>>>>>>>>>>>>>   machine   stack     stack     machine    assembly
>>>>>>>>>>>>>   address   address   data      code       language
>>>>>>>>>>>>>   ========  ========  ========  =========  =============
>>>>>>>>>>>>> [000010d2][00211e8a][00211e8e] 55         push ebp
>>>>>>>>>>>>> [000010d3][00211e8a][00211e8e] 8bec       mov ebp,esp
>>>>>>>>>>>>> [000010d5][00211e8a][00211e8e] 8b4508     mov eax,[ebp+08]
>>>>>>>>>>>>> [000010d8][00211e86][000010d2] 50         push eax
>>>>>>>>>>>>> // push P
>>>>>>>>>>>>> [000010d9][00211e86][000010d2] 8b4d08     mov ecx,[ebp+08]
>>>>>>>>>>>>> [000010dc][00211e82][000010d2] 51         push ecx
>>>>>>>>>>>>> // push P
>>>>>>>>>>>>> [000010dd][00211e7e][000010e2] e820feffff call 00000f02
>>>>>>>>>>>>> // call H
>>>>>>>>>>>>> Infinitely Recursive Simulation Detected Simulation
>>>>>>>>>>>>> Stopped
>>>>>>>>>>>>>
>>>>>>>>>>>>> // actual fully operational code in the x86utm operating
>>>>>>>>>>>>> system u32 H(u32 P, u32 I)
>>>>>>>>>>>>> {
>>>>>>>>>>>>> HERE:
>>>>>>>>>>>>>    u32 End_Of_Code;
>>>>>>>>>>>>>    u32 Address_of_H;              // 2022-06-17
>>>>>>>>>>>>>    u32 code_end                  = get_code_end(P);
>>>>>>>>>>>>>    Decoded_Line_Of_Code *decoded =
>>>>>>>>>>>>> (Decoded_Line_Of_Code*)
>>>>>>>>>>>>> Allocate(sizeof(Decoded_Line_Of_Code)); Registers*
>>>>>>>>>>>>> master_state      = (Registers*)
>>>>>>>>>>>>> Allocate(sizeof(Registers)); Registers*  slave_state
>>>>>>>>>>>>> = (Registers*) Allocate(sizeof(Registers));
>>>>>>>>>>>>>    u32*        slave_stack       = Allocate(0x10000); //
>>>>>>>>>>>>> 64k; u32  execution_trace =
>>>>>>>>>>>>> (u32)Allocate(sizeof(Decoded_Line_Of_Code) * 1000);
>>>>>>>>>>>>>
>>>>>>>>>>>>>    __asm lea eax, HERE             // 2022-06-18
>>>>>>>>>>>>>    __asm sub eax, 6                // 2022-06-18
>>>>>>>>>>>>>    __asm mov Address_of_H, eax     // 2022-06-18
>>>>>>>>>>>>>    __asm mov eax, END_OF_CODE
>>>>>>>>>>>>>    __asm mov End_Of_Code, eax
>>>>>>>>>>>>>
>>>>>>>>>>>>>    Output("Address_of_H:", Address_of_H); // 2022-06-11
>>>>>>>>>>>>>    Init_slave_state(P, I, End_Of_Code, slave_state,
>>>>>>>>>>>>> slave_stack);
>>>>>>>>>>>>>    Output("\nBegin Simulation   Execution Trace Stored
>>>>>>>>>>>>> at:", execution_trace);
>>>>>>>>>>>>>    if (Decide_Halting(&execution_trace, &decoded,
>>>>>>>>>>>>> code_end, &master_state,
>>>>>>>>>>>>>                       &slave_state, &slave_stack,
>>>>>>>>>>>>> Address_of_H, P, I))
>>>>>>>>>>>>>        goto END_OF_CODE;
>>>>>>>>>>>>>    return 0;  // Does not halt
>>>>>>>>>>>>> END_OF_CODE:
>>>>>>>>>>>>>    return 1; // Input has normally terminated
>>>>>>>>>>>>> }
>>>>>>>>>>>>>
>>>>>>>>>>>>> H knows its own machine address and on this basis it can
>>>>>>>>>>>>> easily examine its stored execution_trace of P and
>>>>>>>>>>>>> determine: (a) P is calling H with the same arguments
>>>>>>>>>>>>> that H was called with.
>>>>>>>>>>>>> (b) No instructions in P could possibly escape this
>>>>>>>>>>>>> otherwise infinitely recursive emulation.
>>>>>>>>>>>>> (c) H aborts its emulation of P before its call to H is
>>>>>>>>>>>>> invoked.
>>>>>>>>>>>>>
>>>>>>>>>>>>>
>>>>>>>>>>>>
>>>>>>>>>>>> (b) is NOT a correct rule. Thos has been pointed out
>>>>>>>>>>>> before, and you have ignored it.
>>>>>>>>>>>>
>>>>>>>>>>> That you don't understand what I mean does not mean that it
>>>>>>>>>>> is an incorrect rule.
>>>>>>>>>>>
>>>>>>>>>>> Here is an example where P does have instruction that could
>>>>>>>>>>> possibly escape this otherwise infinitely recursive
>>>>>>>>>>> emulation:
>>>>>>>>>>>
>>>>>>>>>>>
>>>>>>>>>>> void P(ptr x)
>>>>>>>>>>> {
>>>>>>>>>>> static count = 0;
>>>>>>>>>>>    count++;
>>>>>>>>>>>    if count > 3)
>>>>>>>>>>>      return;
>>>>>>>>>>>    if (H(x, x))
>>>>>>>>>>>      HERE: goto HERE;
>>>>>>>>>>>    return;
>>>>>>>>>>> }
>>>>>>>>>>>
>>>>>>>>>>
>>>>>>>>>> FALLACY of proof by example. I never said that (b) isn't
>>>>>>>>>> sometimes true, just it isn't an always true condition. You
>>>>>>>>>> fail at elementary logic.
>>>>>>>>>
>>>>>>>>> Try and find a valid counter-example. Every attempt at
>>>>>>>>> rebuttal that is not a valid counter-example is one form of
>>>>>>>>> deception or another.
>>>>>>>>>
>>>>>>>>>
>>>>>>>>
>>>>>>>> P(P)
>>>>>>>
>>>>>>> That is not any example of (b), thus another mere strawman
>>>>>>> deception.
>>>>>>
>>>>>> Why not?
>>>>>>
>>>>> It is not an example of the simulation of the input to H(P,P) at
>>>>> all.
>>>>>
>>>>>
>>>>
>>>> Why is P not P?
>>>>
>>>
>>> It is not a direct rebuttal of my original claim.
>>>
>>> This would be a direct rebuttal:
>>> You must adapt P so that when H(P,P) emulates its input it
>>> determines that P never reaches its "ret" instruction and the
>>> adapted emulated P still reaches its "ret" instruction.
>>>
>>
>> Unless you find that at least one input where it gets the wrong
>> answer you have not refuted me.
>
> Here:
>
> void Px(u32 x)
> {
> H(x, x);
> return;
> }
>
> int main()
> {
> Output("Input_Halts = ", H((u32)Px, (u32)Px));
> }
>
> ...[000013e8][00102357][00000000] 83c408 add esp,+08
> ...[000013eb][00102353][00000000] 50 push eax
> ...[000013ec][0010234f][00000427] 6827040000 push 00000427
> ---[000013f1][0010234f][00000427] e880f0ffff call 00000476
> Input_Halts = 0
> ...[000013f6][00102357][00000000] 83c408 add esp,+08
> ...[000013f9][00102357][00000000] 33c0 xor eax,eax
> ...[000013fb][0010235b][00100000] 5d pop ebp
> ...[000013fc][0010235f][00000004] c3 ret
> Number of Instructions Executed(16120)
>
> It gets the answer wrong, i.e. input has not been decided correctly.
> QED.
>
> /Flibble
>
>


Click here to read the complete article
Re: Software engineers [ not Flibble ] can verify this halting problem proof refutation [ full closure ]

<20220623205944.00003c38@reddwarf.jmc>

  copy mid

https://www.novabbs.com/computers/article-flat.php?id=9729&group=comp.ai.philosophy#9729

  copy link   Newsgroups: comp.theory comp.ai.philosophy sci.logic sci.math
Path: i2pn2.org!i2pn.org!usenet.blueworldhosting.com!feed1.usenet.blueworldhosting.com!peer02.iad!feed-me.highwinds-media.com!peer03.ams4!peer.am4.highwinds-media.com!news.highwinds-media.com!fx04.ams4.POSTED!not-for-mail
From: flib...@reddwarf.jmc (Mr Flibble)
Newsgroups: comp.theory,comp.ai.philosophy,sci.logic,sci.math
Subject: Re: Software engineers [ not Flibble ] can verify this halting
problem proof refutation [ full closure ]
Message-ID: <20220623205944.00003c38@reddwarf.jmc>
References: <EOydnaeszcdfHS__nZ2dnUU7_83NnZ2d@giganews.com>
<20220622203106.00003fa2@reddwarf.jmc>
<xqSdnb2KKdOL5i7_nZ2dnUU7_81g4p2d@giganews.com>
<TwOsK.191531$JVi.174704@fx17.iad>
<N5WdnY_iDptAKC7_nZ2dnUU7_8xh4p2d@giganews.com>
<nLOsK.9452$mY1.1924@fx01.iad>
<3LmdnVllU6W8Jy7_nZ2dnUU7_8xh4p2d@giganews.com>
<j8PsK.15112$%i2.4898@fx48.iad>
<s9CdndzLkud5XC7_nZ2dnUU7_83NnZ2d@giganews.com>
<%sPsK.15923$nZ1.10923@fx05.iad>
<NZmdnRE_I-AmWS7_nZ2dnUU7_81g4p2d@giganews.com>
<RAPsK.191532$JVi.129665@fx17.iad>
<jeKdndsSjJTDUC7_nZ2dnUU7_83NnZ2d@giganews.com>
<SiQsK.193267$70j.57451@fx16.iad>
<x9KdnSlyYIyxSy7_nZ2dnUU7_8zNnZ2d@giganews.com>
<3iRsK.3746$vd2.1411@fx39.iad>
<7t6dnRsAGcTtay7_nZ2dnUU7_83NnZ2d@giganews.com>
<GfWdnR1iS7lAai7_nZ2dnUU7_83NnZ2d@giganews.com>
<20220623204153.00007a22@reddwarf.jmc>
<Y-CdnQZk3dX2WCn_nZ2dnUU7_83NnZ2d@giganews.com>
Organization: Jupiter Mining Corp
X-Newsreader: Claws Mail 3.17.8 (GTK+ 2.24.33; x86_64-w64-mingw32)
MIME-Version: 1.0
Content-Type: text/plain; charset=ISO-8859-1
Content-Transfer-Encoding: quoted-printable
Lines: 311
X-Complaints-To: abuse@eweka.nl
NNTP-Posting-Date: Thu, 23 Jun 2022 19:59:42 UTC
Date: Thu, 23 Jun 2022 20:59:44 +0100
X-Received-Bytes: 14832
 by: Mr Flibble - Thu, 23 Jun 2022 19:59 UTC

On Thu, 23 Jun 2022 14:56:26 -0500
olcott <NoOne@NoWhere.com> wrote:

> On 6/23/2022 2:41 PM, Mr Flibble wrote:
> > On Thu, 23 Jun 2022 00:19:23 -0500
> > olcott <NoOne@NoWhere.com> wrote:
> >
> >> On 6/23/2022 12:13 AM, olcott wrote:
> >>> On 6/22/2022 10:41 PM, Richard Damon wrote:
> >>>> On 6/22/22 10:55 PM, olcott wrote:
> >>>>> On 6/22/2022 9:34 PM, Richard Damon wrote:
> >>>>>> On 6/22/22 10:18 PM, olcott wrote:
> >>>>>>> On 6/22/2022 8:45 PM, Richard Damon wrote:
> >>>>>>>> On 6/22/22 9:41 PM, olcott wrote:
> >>>>>>>>> On 6/22/2022 8:36 PM, Richard Damon wrote:
> >>>>>>>>>> On 6/22/22 9:29 PM, olcott wrote:
> >>>>>>>>>>> On 6/22/2022 8:14 PM, Richard Damon wrote:
> >>>>>>>>>>>> On 6/22/22 8:55 PM, olcott wrote:
> >>>>>>>>>>>>> On 6/22/2022 7:48 PM, Richard Damon wrote:
> >>>>>>>>>>>>>> On 6/22/22 8:37 PM, olcott wrote:
> >>>>>>>>>>>>>
> >>>>>>>>>>>>>>> First you agree that my words are perfectly correct
> >>>>>>>>>>>>>>> within their specified context
> >>>>>>>>>>>>>>
> >>>>>>>>>>>>>> Since you haven't actualy defined you context, and
> >>>>>>>>>>>>>> imply that it is the halting problem, where they can
> >>>>>>>>>>>>>> not be correct, that is not possible.
> >>>>>>>>>>>>>>>
> >>>>>>>>>>>>> First you agree that these words are 100% correct within
> >>>>>>>>>>>>> the context of software engineering totally ignoring the
> >>>>>>>>>>>>> context of the halting problem.
> >>>>>>>>>>>>>
> >>>>>>>>>>>>> #include <stdint.h>
> >>>>>>>>>>>>> #define u32 uint32_t
> >>>>>>>>>>>>>
> >>>>>>>>>>>>> #include <stdint.h>
> >>>>>>>>>>>>> typedef void (*ptr)();
> >>>>>>>>>>>>>
> >>>>>>>>>>>>> void P(ptr x)
> >>>>>>>>>>>>> {
> >>>>>>>>>>>>>    if (H(x, x))
> >>>>>>>>>>>>>      HERE: goto HERE;
> >>>>>>>>>>>>>    return;
> >>>>>>>>>>>>> }
> >>>>>>>>>>>>>
> >>>>>>>>>>>>> int main()
> >>>>>>>>>>>>> {
> >>>>>>>>>>>>>    Output("Input_Halts = ", H(P, P));
> >>>>>>>>>>>>> }
> >>>>>>>>>>>>>
> >>>>>>>>>>>>> _P()
> >>>>>>>>>>>>> [000010d2](01)  55              push ebp
> >>>>>>>>>>>>> [000010d3](02)  8bec            mov ebp,esp
> >>>>>>>>>>>>> [000010d5](03)  8b4508          mov eax,[ebp+08]
> >>>>>>>>>>>>> [000010d8](01)  50              push eax
> >>>>>>>>>>>>> [000010d9](03)  8b4d08          mov ecx,[ebp+08]
> >>>>>>>>>>>>> [000010dc](01)  51              push ecx
> >>>>>>>>>>>>> [000010dd](05)  e820feffff      call 00000f02
> >>>>>>>>>>>>> [000010e2](03)  83c408          add esp,+08
> >>>>>>>>>>>>> [000010e5](02)  85c0            test eax,eax
> >>>>>>>>>>>>> [000010e7](02)  7402            jz 000010eb
> >>>>>>>>>>>>> [000010e9](02)  ebfe            jmp 000010e9
> >>>>>>>>>>>>> [000010eb](01)  5d              pop ebp
> >>>>>>>>>>>>> [000010ec](01)  c3              ret
> >>>>>>>>>>>>> Size in bytes:(0027) [000010ec]
> >>>>>>>>>>>>>
> >>>>>>>>>>>>> Every sufficiently competent software engineer can
> >>>>>>>>>>>>> easily verify that the complete and correct x86
> >>>>>>>>>>>>> emulation of the input to H(P,P) by H would never reach
> >>>>>>>>>>>>> the "ret" instruction of P because both H and P would
> >>>>>>>>>>>>> remain stuck in infinitely recursive emulation.
> >>>>>>>>>>>>>
> >>>>>>>>>>>>
> >>>>>>>>>>>> So, if H actually is a program that does a COMPLETE and
> >>>>>>>>>>>> correct x86 emulation of its input, then YES, as I have
> >>>>>>>>>>>> said many time before, this combination is non-halting.
> >>>>>>>>>>>>
> >>>>>>>>>>>> The fact that you need to keep going back to this, and
> >>>>>>>>>>>> seem to just be refusing to accept the conditions under
> >>>>>>>>>>>> which you have proved it just shows the problems with
> >>>>>>>>>>>> your thought process.
> >>>>>>>>>>>>> If H does correctly determine that this is the case in a
> >>>>>>>>>>>>> finite number of steps then H could reject its input on
> >>>>>>>>>>>>> this basis. Here are the details of exactly how H does
> >>>>>>>>>>>>> this in a finite number of steps.
> >>>>>>>>>>>>
> >>>>>>>>>>>> Except that NOW H isn't the H we were just talking about,
> >>>>>>>>>>>> so you are just proving that you are either lying or an
> >>>>>>>>>>>> idiot.
> >>>>>>>>>>>>
> >>>>>>>>>>>> Remember, the first analysis had the CONDITION on it that
> >>>>>>>>>>>> H did a COMPLETE and correct x86 emulation.
> >>>>>>>>>>>>
> >>>>>>>>>>>> Once you remove that property form H, that conclusion no
> >>>>>>>>>>>> long holds and you are shown to be a lying idiot.
> >>>>>>>>>>>>
> >>>>>>>>>>>>>
> >>>>>>>>>>>>> typedef struct Decoded
> >>>>>>>>>>>>> {
> >>>>>>>>>>>>>    u32 Address;
> >>>>>>>>>>>>>    u32 ESP;          // Current value of ESP
> >>>>>>>>>>>>>    u32 TOS;          // Current value of Top of Stack
> >>>>>>>>>>>>>    u32 NumBytes;
> >>>>>>>>>>>>>    u32 Simplified_Opcode;
> >>>>>>>>>>>>>    u32 Decode_Target;
> >>>>>>>>>>>>> } Decoded_Line_Of_Code;
> >>>>>>>>>>>>>
> >>>>>>>>>>>>>   machine   stack     stack     machine    assembly
> >>>>>>>>>>>>>   address   address   data      code       language
> >>>>>>>>>>>>>   ========  ========  ========  ========> >>>>>>>>>>>>> ============= [000010d2][00211e8a][00211e8e] 55
> >>>>>>>>>>>>> push ebp [000010d3][00211e8a][00211e8e] 8bec       mov
> >>>>>>>>>>>>> ebp,esp [000010d5][00211e8a][00211e8e] 8b4508     mov
> >>>>>>>>>>>>> eax,[ebp+08] [000010d8][00211e86][000010d2] 50
> >>>>>>>>>>>>> push eax // push P
> >>>>>>>>>>>>> [000010d9][00211e86][000010d2] 8b4d08     mov
> >>>>>>>>>>>>> ecx,[ebp+08] [000010dc][00211e82][000010d2] 51
> >>>>>>>>>>>>> push ecx // push P
> >>>>>>>>>>>>> [000010dd][00211e7e][000010e2] e820feffff call 00000f02
> >>>>>>>>>>>>> // call H
> >>>>>>>>>>>>> Infinitely Recursive Simulation Detected Simulation
> >>>>>>>>>>>>> Stopped
> >>>>>>>>>>>>>
> >>>>>>>>>>>>> // actual fully operational code in the x86utm operating
> >>>>>>>>>>>>> system u32 H(u32 P, u32 I)
> >>>>>>>>>>>>> {
> >>>>>>>>>>>>> HERE:
> >>>>>>>>>>>>>    u32 End_Of_Code;
> >>>>>>>>>>>>>    u32 Address_of_H;              // 2022-06-17
> >>>>>>>>>>>>>    u32 code_end                  = get_code_end(P);
> >>>>>>>>>>>>>    Decoded_Line_Of_Code *decoded > >>>>>>>>>>>>> (Decoded_Line_Of_Code*)
> >>>>>>>>>>>>> Allocate(sizeof(Decoded_Line_Of_Code)); Registers*
> >>>>>>>>>>>>> master_state      = (Registers*)
> >>>>>>>>>>>>> Allocate(sizeof(Registers)); Registers*  slave_state
> >>>>>>>>>>>>> = (Registers*) Allocate(sizeof(Registers));
> >>>>>>>>>>>>>    u32*        slave_stack       = Allocate(0x10000);
> >>>>>>>>>>>>> // 64k; u32  execution_trace > >>>>>>>>>>>>> (u32)Allocate(sizeof(Decoded_Line_Of_Code) * 1000);
> >>>>>>>>>>>>>
> >>>>>>>>>>>>>    __asm lea eax, HERE             // 2022-06-18
> >>>>>>>>>>>>>    __asm sub eax, 6                // 2022-06-18
> >>>>>>>>>>>>>    __asm mov Address_of_H, eax     // 2022-06-18
> >>>>>>>>>>>>>    __asm mov eax, END_OF_CODE
> >>>>>>>>>>>>>    __asm mov End_Of_Code, eax
> >>>>>>>>>>>>>
> >>>>>>>>>>>>>    Output("Address_of_H:", Address_of_H); // 2022-06-11
> >>>>>>>>>>>>>    Init_slave_state(P, I, End_Of_Code, slave_state,
> >>>>>>>>>>>>> slave_stack);
> >>>>>>>>>>>>>    Output("\nBegin Simulation   Execution Trace Stored
> >>>>>>>>>>>>> at:", execution_trace);
> >>>>>>>>>>>>>    if (Decide_Halting(&execution_trace, &decoded,
> >>>>>>>>>>>>> code_end, &master_state,
> >>>>>>>>>>>>>                       &slave_state, &slave_stack,
> >>>>>>>>>>>>> Address_of_H, P, I))
> >>>>>>>>>>>>>        goto END_OF_CODE;
> >>>>>>>>>>>>>    return 0;  // Does not halt
> >>>>>>>>>>>>> END_OF_CODE:
> >>>>>>>>>>>>>    return 1; // Input has normally terminated
> >>>>>>>>>>>>> }
> >>>>>>>>>>>>>
> >>>>>>>>>>>>> H knows its own machine address and on this basis it can
> >>>>>>>>>>>>> easily examine its stored execution_trace of P and
> >>>>>>>>>>>>> determine: (a) P is calling H with the same arguments
> >>>>>>>>>>>>> that H was called with.
> >>>>>>>>>>>>> (b) No instructions in P could possibly escape this
> >>>>>>>>>>>>> otherwise infinitely recursive emulation.
> >>>>>>>>>>>>> (c) H aborts its emulation of P before its call to H is
> >>>>>>>>>>>>> invoked.
> >>>>>>>>>>>>>
> >>>>>>>>>>>>>
> >>>>>>>>>>>>
> >>>>>>>>>>>> (b) is NOT a correct rule. Thos has been pointed out
> >>>>>>>>>>>> before, and you have ignored it.
> >>>>>>>>>>>>
> >>>>>>>>>>> That you don't understand what I mean does not mean that
> >>>>>>>>>>> it is an incorrect rule.
> >>>>>>>>>>>
> >>>>>>>>>>> Here is an example where P does have instruction that
> >>>>>>>>>>> could possibly escape this otherwise infinitely recursive
> >>>>>>>>>>> emulation:
> >>>>>>>>>>>
> >>>>>>>>>>>
> >>>>>>>>>>> void P(ptr x)
> >>>>>>>>>>> {
> >>>>>>>>>>> static count = 0;
> >>>>>>>>>>>    count++;
> >>>>>>>>>>>    if count > 3)
> >>>>>>>>>>>      return;
> >>>>>>>>>>>    if (H(x, x))
> >>>>>>>>>>>      HERE: goto HERE;
> >>>>>>>>>>>    return;
> >>>>>>>>>>> }
> >>>>>>>>>>>
> >>>>>>>>>>
> >>>>>>>>>> FALLACY of proof by example. I never said that (b) isn't
> >>>>>>>>>> sometimes true, just it isn't an always true condition. You
> >>>>>>>>>> fail at elementary logic.
> >>>>>>>>>
> >>>>>>>>> Try and find a valid counter-example. Every attempt at
> >>>>>>>>> rebuttal that is not a valid counter-example is one form of
> >>>>>>>>> deception or another.
> >>>>>>>>>
> >>>>>>>>>
> >>>>>>>>
> >>>>>>>> P(P)
> >>>>>>>
> >>>>>>> That is not any example of (b), thus another mere strawman
> >>>>>>> deception.
> >>>>>>
> >>>>>> Why not?
> >>>>>>
> >>>>> It is not an example of the simulation of the input to H(P,P) at
> >>>>> all.
> >>>>>
> >>>>>
> >>>>
> >>>> Why is P not P?
> >>>>
> >>>
> >>> It is not a direct rebuttal of my original claim.
> >>>
> >>> This would be a direct rebuttal:
> >>> You must adapt P so that when H(P,P) emulates its input it
> >>> determines that P never reaches its "ret" instruction and the
> >>> adapted emulated P still reaches its "ret" instruction.
> >>>
> >>
> >> Unless you find that at least one input where it gets the wrong
> >> answer you have not refuted me.
> >
> > Here:
> >
> > void Px(u32 x)
> > {
> > H(x, x);
> > return;
> > }
> >
> > int main()
> > {
> > Output("Input_Halts = ", H((u32)Px, (u32)Px));
> > }
> >
> > ...[000013e8][00102357][00000000] 83c408 add esp,+08
> > ...[000013eb][00102353][00000000] 50 push eax
> > ...[000013ec][0010234f][00000427] 6827040000 push 00000427
> > ---[000013f1][0010234f][00000427] e880f0ffff call 00000476
> > Input_Halts = 0
> > ...[000013f6][00102357][00000000] 83c408 add esp,+08
> > ...[000013f9][00102357][00000000] 33c0 xor eax,eax
> > ...[000013fb][0010235b][00100000] 5d pop ebp
> > ...[000013fc][0010235f][00000004] c3 ret
> > Number of Instructions Executed(16120)
> >
> > It gets the answer wrong, i.e. input has not been decided correctly.
> > QED.
> >
> > /Flibble
> >
> >
>
> To fully understand this code a software engineer must be an expert
> in: the C programming language, the x86 programming language, exactly
> how C translates into x86 and the ability to recognize infinite
> recursion at the x86 assembly language level. No knowledge of the
> halting problem is required.
>
> The ordinary semantics of standard C and the conventional x86
> language are the entire semantics required to conclusively prove that
> H(Px,Px) does correctly determine that its correct and complete x86
> emulation of its input would never reach the "ret" instruction of Px.
>
> It is always the case that whenever anyone disagrees with verifiable
> facts (as you have just done) that they are necessarily always
> incorrect.


Click here to read the complete article
Re: Software engineers can verify this halting problem proof refutation [ H(P,P) versus P(P) ]

<Gg6tK.131399$ntj.27012@fx15.iad>

  copy mid

https://www.novabbs.com/computers/article-flat.php?id=9730&group=comp.ai.philosophy#9730

  copy link   Newsgroups: comp.theory comp.ai.philosophy sci.logic sci.math
Path: i2pn2.org!i2pn.org!usenet.blueworldhosting.com!feed1.usenet.blueworldhosting.com!peer01.iad!feed-me.highwinds-media.com!news.highwinds-media.com!fx15.iad.POSTED!not-for-mail
MIME-Version: 1.0
User-Agent: Mozilla/5.0 (Macintosh; Intel Mac OS X 10.15; rv:91.0)
Gecko/20100101 Thunderbird/91.10.0
Subject: Re: Software engineers can verify this halting problem proof
refutation [ H(P,P) versus P(P) ]
Content-Language: en-US
Newsgroups: comp.theory,comp.ai.philosophy,sci.logic,sci.math
References: <EOydnaeszcdfHS__nZ2dnUU7_83NnZ2d@giganews.com>
<PtvsK.300027$5fVf.158200@fx09.iad>
<CaWdnZEntLawFS__nZ2dnUU7_83NnZ2d@giganews.com>
<ccb8af3c-e497-4d6e-8040-826a4e87a6e7n@googlegroups.com>
<g9qdnRjZj9uBlS7_nZ2dnUU7_8zNnZ2d@giganews.com>
<0f7ed34c-5aaa-4858-885e-66e16777f599n@googlegroups.com>
<87a6a44s02.fsf@bsb.me.uk>
<a9adde1d-ad2c-444c-9b14-88841f5e8783n@googlegroups.com>
<n5idnblW-_zrMCn_nZ2dnUU7_83NnZ2d@giganews.com>
From: Rich...@Damon-Family.org (Richard Damon)
In-Reply-To: <n5idnblW-_zrMCn_nZ2dnUU7_83NnZ2d@giganews.com>
Content-Type: text/plain; charset=UTF-8; format=flowed
Content-Transfer-Encoding: 8bit
Lines: 216
Message-ID: <Gg6tK.131399$ntj.27012@fx15.iad>
X-Complaints-To: abuse@easynews.com
Organization: Forte - www.forteinc.com
X-Complaints-Info: Please be sure to forward a copy of ALL headers otherwise we will be unable to process your complaint properly.
Date: Thu, 23 Jun 2022 19:00:51 -0400
X-Received-Bytes: 11406
 by: Richard Damon - Thu, 23 Jun 2022 23:00 UTC

On 6/23/22 2:14 PM, olcott wrote:
> On 6/23/2022 3:19 AM, Malcolm McLean wrote:
>> On Wednesday, 22 June 2022 at 16:50:31 UTC+1, Ben Bacarisse wrote:
>>> Malcolm McLean <malcolm.ar...@gmail.com> writes:
>>>
>>>> On Wednesday, 22 June 2022 at 13:16:36 UTC+1, olcott wrote:
>>>>> On 6/22/2022 2:55 AM, Malcolm McLean wrote:
>>>>>> On Wednesday, 22 June 2022 at 04:10:45 UTC+1, olcott wrote:
>>>>>>> On 6/21/2022 9:52 PM, Richard Damon wrote:
>>>>>>>>
>>>>>>>> Right, and P(P) reaches the ret instruction of H(P,P) returns 0,
>>>>>>>> so H
>>>>>>>> was incorrect in its mapping, since the behavior of P(P) is the
>>>>>>>> DEFINITION of the behavior of H(P,P),
>>>>>>> Linz and others were aware that: A halt decider must compute the
>>>>>>> mapping
>>>>>>> from its inputs to an accept or reject state on the basis of the
>>>>>>> actual
>>>>>>> behavior that is actually specified by these inputs.
>>>>>>> Linz and others made the false assumption that the actual
>>>>>>> behavior that
>>>>>>> is actually specified by the inputs to a simulating halt decider
>>>>>>> is not
>>>>>>> the same as the direct execution of these inputs. They were
>>>>>>> unaware of
>>>>>>> this because no one previously fully examined a simulating halt
>>>>>>> decider
>>>>>>> ever before.
>>>>>>>> especially if that is what P calls
>>>>>>>> and P is claimed to be built by the Linz template.
>>>>>>>>
>>>>>>>> So, either P isn't built right, or H isn't built fight, or H is
>>>>>>>> wrong.
>>>>>>>
>>>>>> You've dry-run P(P) and it doesn't halt. Additionally the halt
>>>>>> decider H
>>>>>> reports it as non-halting. So it's reasonable to assume that H is
>>>>>> correct.
>>>>>>
>>>>>> However, when run, P(P) halts. So what are we to conclude? That "the
>>>>>> actual behaviour that is actually specified by the inputs to a
>>>>>> simulating
>>>>>> halt decider is not the same as the direct execution of these
>>>>>> inputs"?
>>>>>
>>>>> That is an actual immutable verified fact.
>>>>>
>>>> That's your conclusion from your observations and reasoning. You've
>>>> dry-run P(P), and it doesn't halt. You've run H on P(P), and it
>>>> reports "non-halting". You've run P(P), and it halts. So one
>>>> explanation is the one you've given but, as I said, that explanation
>>>> has rather far-reaching consequences.
>>> There is only one explanation. What you call the "dry-run" is not that
>>> same as the P(P). We've known this since the "line 15 commented out"
>>> days. There are two computations -- one that is not stopped and one
>>> that is, the "dry-run" and the run, the "simulation of the input to
>>> H(P,P)" and P(P). All PO is doing is trying to find words that hide
>>> what's going on.
>>>
>> I'm a scientists, not a mathematician.
>> The example I always use is that you are doing an energy budget for
>> tigers.
>> You work how much they use on running about, lactating, maintaining their
>> body temperature, and so on.
>>
>> Now let's say that you find that all results are within a few
>> percentage points
>> of a similar budget done for lions. You'd instantly accept this data.
>>
>> Now let's say that the results are wildly different from a previous
>> budget done
>> for lions. You wouldn't just accept that data. You'd check. You'd want to
>> understand the reasons tigers spend far less energy on movement than
>> lions.
>>
>> Now let's say that the result show that tigers use more energy than they
>> take in food. Would you instantly conclude that the law of
>> conservation of
>> energy must be incorrect?
>>
>> The third is what PO is doing.
>
> I rewrote this up so that sufficiently competent software engineers
> would be able to confirm that the following is correct:
>
> To fully understand this code a software engineer must be an expert in:
> the C programming language, the x86 programming language, exactly how C
> translates into x86 and the ability to recognize infinite recursion at
> the x86 assembly language level. No knowledge of the halting problem is
> required.
>
> The ordinary semantics of standard C and the conventional x86 language
> are the entire semantics required to conclusively prove that H(P,P) does
> correctly determine that its correct and complete x86 emulation of its
> input would never reach the "ret" instruction of P.
>
> In computer science terminology this means that complete and correct
> emulation P by H would never reach its final state and halt.
>
> The dependency relationship that P(P) has on H(P,P) causes its behavior
> to be quite different than the complete and correct x86 emulation of the
> input to H(P,P) that has no such dependency relationship.
>
> As shown below because P(P) depends on the return value of H(P,P) it has
> different behavior than the correctly emulated input to H(P,P).
>
> The correctly emulated input to H(P,P) remains stuck in recursive
> emulation that never gets to the point of receiving a return value from
> H, thus lacks the dependency of the executed P(P).
>
> void P(u32 x)
> {
>   if (H(x, x))
>     HERE: goto HERE;
>   return;
> }
>
> int main()
> {
>   P(P);
> }
>
> _P()
> [000011f0](01)  55              push ebp
> [000011f1](02)  8bec            mov ebp,esp
> [000011f3](03)  8b4508          mov eax,[ebp+08]
> [000011f6](01)  50              push eax
> [000011f7](03)  8b4d08          mov ecx,[ebp+08]
> [000011fa](01)  51              push ecx
> [000011fb](05)  e820feffff      call 00001020
> [00001200](03)  83c408          add esp,+08
> [00001203](02)  85c0            test eax,eax
> [00001205](02)  7402            jz 00001209
> [00001207](02)  ebfe            jmp 00001207
> [00001209](01)  5d              pop ebp
> [0000120a](01)  c3              ret
> Size in bytes:(0027) [0000120a]
>
> _main()
> [00001210](01)  55              push ebp
> [00001211](02)  8bec            mov ebp,esp
> [00001213](05)  68f0110000      push 000011f0
> [00001218](05)  e8d3ffffff      call 000011f0
> [0000121d](03)  83c404          add esp,+04
> [00001220](02)  33c0            xor eax,eax
> [00001222](01)  5d              pop ebp
> [00001223](01)  c3              ret
> Size in bytes:(0020) [00001223]
>
>  machine   stack     stack     machine    assembly
>  address   address   data      code       language
>  ========  ========  ========  =========  =============
> [00001210][00101fba][00000000] 55         push ebp
> [00001211][00101fba][00000000] 8bec       mov ebp,esp
> [00001213][00101fb6][000011f0] 68f0110000 push 000011f0 // push P
> [00001218][00101fb2][0000121d] e8d3ffffff call 000011f0 // call P
> [000011f0][00101fae][00101fba] 55         push ebp      // enter executed P
> [000011f1][00101fae][00101fba] 8bec       mov ebp,esp
> [000011f3][00101fae][00101fba] 8b4508     mov eax,[ebp+08]
> [000011f6][00101faa][000011f0] 50         push eax      // push P
> [000011f7][00101faa][000011f0] 8b4d08     mov ecx,[ebp+08]
> [000011fa][00101fa6][000011f0] 51         push ecx      // push P
> [000011fb][00101fa2][00001200] e820feffff call 00001020 // call H
>
> Begin Simulation   Execution Trace Stored at:21206e
> Address_of_H:1020
> [000011f0][0021205a][0021205e] 55         push ebp      // enter emulated P
> [000011f1][0021205a][0021205e] 8bec       mov ebp,esp
> [000011f3][0021205a][0021205e] 8b4508     mov eax,[ebp+08]
> [000011f6][00212056][000011f0] 50         push eax      // push P
> [000011f7][00212056][000011f0] 8b4d08     mov ecx,[ebp+08]
> [000011fa][00212052][000011f0] 51         push ecx      // push P
> [000011fb][0021204e][00001200] e820feffff call 00001020 // call emulated H
> Infinitely Recursive Simulation Detected Simulation Stopped
>
> H knows its own machine address and on this basis it can easily examine
> its stored execution_trace of P (see above) to determine:
> (a) P is calling H with the same arguments that H was called with.
> (b) No instructions in P could possibly escape this otherwise infinitely
> recursive emulation.
> (c) H aborts its emulation of P before its call to H is emulated.
>
> [00001200][00101fae][00101fba] 83c408     add esp,+08   // return to
> executed P
> [00001203][00101fae][00101fba] 85c0       test eax,eax
> [00001205][00101fae][00101fba] 7402       jz 00001209
> [00001209][00101fb2][0000121d] 5d         pop ebp
> [0000120a][00101fb6][000011f0] c3         ret           // return from
> executed P
> [0000121d][00101fba][00000000] 83c404     add esp,+04
> [00001220][00101fba][00000000] 33c0       xor eax,eax
> [00001222][00101fbe][00100000] 5d         pop ebp
> [00001223][00101fc2][00000000] c3         ret           // ret from main
> Number of Instructions Executed(878) / 67 = 13 pages
>
>


Click here to read the complete article
Re: Technically competent Software engineers can verify this halting problem proof refutation [ full closure ]

<TdWdnWBGBqYViCj_nZ2dnUU7_83NnZ2d@giganews.com>

  copy mid

https://www.novabbs.com/computers/article-flat.php?id=9731&group=comp.ai.philosophy#9731

  copy link   Newsgroups: comp.theory comp.ai.philosophy sci.logic sci.math
Path: i2pn2.org!i2pn.org!weretis.net!feeder6.news.weretis.net!news.misty.com!border2.nntp.dca1.giganews.com!nntp.giganews.com!buffer2.nntp.dca1.giganews.com!buffer1.nntp.dca1.giganews.com!news.giganews.com.POSTED!not-for-mail
NNTP-Posting-Date: Thu, 23 Jun 2022 20:38:16 -0500
Date: Thu, 23 Jun 2022 20:38:15 -0500
MIME-Version: 1.0
User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:91.0) Gecko/20100101
Thunderbird/91.10.0
Subject: Re: Technically competent Software engineers can verify this halting
problem proof refutation [ full closure ]
Content-Language: en-US
Newsgroups: comp.theory,comp.ai.philosophy,sci.logic,sci.math
References: <EOydnaeszcdfHS__nZ2dnUU7_83NnZ2d@giganews.com>
<20220622203106.00003fa2@reddwarf.jmc>
<xqSdnb2KKdOL5i7_nZ2dnUU7_81g4p2d@giganews.com>
<TwOsK.191531$JVi.174704@fx17.iad>
<N5WdnY_iDptAKC7_nZ2dnUU7_8xh4p2d@giganews.com>
<nLOsK.9452$mY1.1924@fx01.iad>
<3LmdnVllU6W8Jy7_nZ2dnUU7_8xh4p2d@giganews.com>
<j8PsK.15112$%i2.4898@fx48.iad>
<s9CdndzLkud5XC7_nZ2dnUU7_83NnZ2d@giganews.com>
<%sPsK.15923$nZ1.10923@fx05.iad>
<NZmdnRE_I-AmWS7_nZ2dnUU7_81g4p2d@giganews.com>
<RAPsK.191532$JVi.129665@fx17.iad>
<jeKdndsSjJTDUC7_nZ2dnUU7_83NnZ2d@giganews.com>
<SiQsK.193267$70j.57451@fx16.iad>
<x9KdnSlyYIyxSy7_nZ2dnUU7_8zNnZ2d@giganews.com>
<3iRsK.3746$vd2.1411@fx39.iad>
<7t6dnRsAGcTtay7_nZ2dnUU7_83NnZ2d@giganews.com>
<f7da38b3-168a-4447-b3bf-5ebb1d57251dn@googlegroups.com>
From: NoO...@NoWhere.com (olcott)
In-Reply-To: <f7da38b3-168a-4447-b3bf-5ebb1d57251dn@googlegroups.com>
Content-Type: text/plain; charset=UTF-8; format=flowed
Content-Transfer-Encoding: 7bit
Message-ID: <TdWdnWBGBqYViCj_nZ2dnUU7_83NnZ2d@giganews.com>
Lines: 224
X-Usenet-Provider: http://www.giganews.com
X-Trace: sv3-bRTBywaexrf6BNddC7xD9tNGb4PDS/ilIVAmCbIbI0iojrzRP94Ljgch+GfWmvwyKvZUPFBfwlh85QV!JBYfIUmFEstgcQRcx3GU1WjB7xn+yj/el0J+sCg8aI6d8MEVYWg8KXNxk6c/ETsKASot2oRkWpnD
X-Complaints-To: abuse@giganews.com
X-DMCA-Notifications: http://www.giganews.com/info/dmca.html
X-Abuse-and-DMCA-Info: Please be sure to forward a copy of ALL headers
X-Abuse-and-DMCA-Info: Otherwise we will be unable to process your complaint properly
X-Postfilter: 1.3.40
X-Original-Bytes: 11546
 by: olcott - Fri, 24 Jun 2022 01:38 UTC

On 6/23/2022 6:55 PM, dklei...@gmail.com wrote:
> On Wednesday, June 22, 2022 at 10:13:27 PM UTC-7, olcott wrote:
>> On 6/22/2022 10:41 PM, Richard Damon wrote:
>>> On 6/22/22 10:55 PM, olcott wrote:
>>>> On 6/22/2022 9:34 PM, Richard Damon wrote:
>>>>> On 6/22/22 10:18 PM, olcott wrote:
>>>>>> On 6/22/2022 8:45 PM, Richard Damon wrote:
>>>>>>> On 6/22/22 9:41 PM, olcott wrote:
>>>>>>>> On 6/22/2022 8:36 PM, Richard Damon wrote:
>>>>>>>>> On 6/22/22 9:29 PM, olcott wrote:
>>>>>>>>>> On 6/22/2022 8:14 PM, Richard Damon wrote:
>>>>>>>>>>> On 6/22/22 8:55 PM, olcott wrote:
>>>>>>>>>>>> On 6/22/2022 7:48 PM, Richard Damon wrote:
>>>>>>>>>>>>> On 6/22/22 8:37 PM, olcott wrote:
>>>>>>>>>>>>
>>>>>>>>>>>>>> First you agree that my words are perfectly correct within
>>>>>>>>>>>>>> their specified context
>>>>>>>>>>>>>
>>>>>>>>>>>>> Since you haven't actualy defined you context, and imply that
>>>>>>>>>>>>> it is the halting problem, where they can not be correct,
>>>>>>>>>>>>> that is not possible.
>>>>>>>>>>>>>>
>>>>>>>>>>>> First you agree that these words are 100% correct within the
>>>>>>>>>>>> context of software engineering totally ignoring the context
>>>>>>>>>>>> of the halting problem.
>>>>>>>>>>>>
>>>>>>>>>>>> #include <stdint.h>
>>>>>>>>>>>> #define u32 uint32_t
>>>>>>>>>>>>
>>>>>>>>>>>> #include <stdint.h>
>>>>>>>>>>>> typedef void (*ptr)();
>>>>>>>>>>>>
>>>>>>>>>>>> void P(ptr x)
>>>>>>>>>>>> {
>>>>>>>>>>>> if (H(x, x))
>>>>>>>>>>>> HERE: goto HERE;
>>>>>>>>>>>> return;
>>>>>>>>>>>> }
>>>>>>>>>>>>
>>>>>>>>>>>> int main()
>>>>>>>>>>>> {
>>>>>>>>>>>> Output("Input_Halts = ", H(P, P));
>>>>>>>>>>>> }
>>>>>>>>>>>>
>>>>>>>>>>>> _P()
>>>>>>>>>>>> [000010d2](01) 55 push ebp
>>>>>>>>>>>> [000010d3](02) 8bec mov ebp,esp
>>>>>>>>>>>> [000010d5](03) 8b4508 mov eax,[ebp+08]
>>>>>>>>>>>> [000010d8](01) 50 push eax
>>>>>>>>>>>> [000010d9](03) 8b4d08 mov ecx,[ebp+08]
>>>>>>>>>>>> [000010dc](01) 51 push ecx
>>>>>>>>>>>> [000010dd](05) e820feffff call 00000f02
>>>>>>>>>>>> [000010e2](03) 83c408 add esp,+08
>>>>>>>>>>>> [000010e5](02) 85c0 test eax,eax
>>>>>>>>>>>> [000010e7](02) 7402 jz 000010eb
>>>>>>>>>>>> [000010e9](02) ebfe jmp 000010e9
>>>>>>>>>>>> [000010eb](01) 5d pop ebp
>>>>>>>>>>>> [000010ec](01) c3 ret
>>>>>>>>>>>> Size in bytes:(0027) [000010ec]
>>>>>>>>>>>>
>>>>>>>>>>>> Every sufficiently competent software engineer can easily
>>>>>>>>>>>> verify that the complete and correct x86 emulation of the
>>>>>>>>>>>> input to H(P,P) by H would never reach the "ret" instruction
>>>>>>>>>>>> of P because both H and P would remain stuck in infinitely
>>>>>>>>>>>> recursive emulation.
>>>>>>>>>>>>
>>>>>>>>>>>
>>>>>>>>>>> So, if H actually is a program that does a COMPLETE and correct
>>>>>>>>>>> x86 emulation of its input, then YES, as I have said many time
>>>>>>>>>>> before, this combination is non-halting.
>>>>>>>>>>>
>>>>>>>>>>> The fact that you need to keep going back to this, and seem to
>>>>>>>>>>> just be refusing to accept the conditions under which you have
>>>>>>>>>>> proved it just shows the problems with your thought process.
>>>>>>>>>>>
>>>>>>>>>>>> If H does correctly determine that this is the case in a
>>>>>>>>>>>> finite number of steps then H could reject its input on this
>>>>>>>>>>>> basis. Here are the details of exactly how H does this in a
>>>>>>>>>>>> finite number of steps.
>>>>>>>>>>>
>>>>>>>>>>> Except that NOW H isn't the H we were just talking about, so
>>>>>>>>>>> you are just proving that you are either lying or an idiot.
>>>>>>>>>>>
>>>>>>>>>>> Remember, the first analysis had the CONDITION on it that H did
>>>>>>>>>>> a COMPLETE and correct x86 emulation.
>>>>>>>>>>>
>>>>>>>>>>> Once you remove that property form H, that conclusion no long
>>>>>>>>>>> holds and you are shown to be a lying idiot.
>>>>>>>>>>>
>>>>>>>>>>>>
>>>>>>>>>>>> typedef struct Decoded
>>>>>>>>>>>> {
>>>>>>>>>>>> u32 Address;
>>>>>>>>>>>> u32 ESP; // Current value of ESP
>>>>>>>>>>>> u32 TOS; // Current value of Top of Stack
>>>>>>>>>>>> u32 NumBytes;
>>>>>>>>>>>> u32 Simplified_Opcode;
>>>>>>>>>>>> u32 Decode_Target;
>>>>>>>>>>>> } Decoded_Line_Of_Code;
>>>>>>>>>>>>
>>>>>>>>>>>> machine stack stack machine assembly
>>>>>>>>>>>> address address data code language
>>>>>>>>>>>> ======== ======== ======== ========= =============
>>>>>>>>>>>> [000010d2][00211e8a][00211e8e] 55 push ebp
>>>>>>>>>>>> [000010d3][00211e8a][00211e8e] 8bec mov ebp,esp
>>>>>>>>>>>> [000010d5][00211e8a][00211e8e] 8b4508 mov eax,[ebp+08]
>>>>>>>>>>>> [000010d8][00211e86][000010d2] 50 push eax //
>>>>>>>>>>>> push P
>>>>>>>>>>>> [000010d9][00211e86][000010d2] 8b4d08 mov ecx,[ebp+08]
>>>>>>>>>>>> [000010dc][00211e82][000010d2] 51 push ecx //
>>>>>>>>>>>> push P
>>>>>>>>>>>> [000010dd][00211e7e][000010e2] e820feffff call 00000f02 //
>>>>>>>>>>>> call H
>>>>>>>>>>>> Infinitely Recursive Simulation Detected Simulation Stopped
>>>>>>>>>>>>
>>>>>>>>>>>> // actual fully operational code in the x86utm operating system
>>>>>>>>>>>> u32 H(u32 P, u32 I)
>>>>>>>>>>>> {
>>>>>>>>>>>> HERE:
>>>>>>>>>>>> u32 End_Of_Code;
>>>>>>>>>>>> u32 Address_of_H; // 2022-06-17
>>>>>>>>>>>> u32 code_end = get_code_end(P);
>>>>>>>>>>>> Decoded_Line_Of_Code *decoded = (Decoded_Line_Of_Code*)
>>>>>>>>>>>> Allocate(sizeof(Decoded_Line_Of_Code));
>>>>>>>>>>>> Registers* master_state = (Registers*)
>>>>>>>>>>>> Allocate(sizeof(Registers));
>>>>>>>>>>>> Registers* slave_state = (Registers*)
>>>>>>>>>>>> Allocate(sizeof(Registers));
>>>>>>>>>>>> u32* slave_stack = Allocate(0x10000); // 64k;
>>>>>>>>>>>> u32 execution_trace =
>>>>>>>>>>>> (u32)Allocate(sizeof(Decoded_Line_Of_Code) * 1000);
>>>>>>>>>>>>
>>>>>>>>>>>> __asm lea eax, HERE // 2022-06-18
>>>>>>>>>>>> __asm sub eax, 6 // 2022-06-18
>>>>>>>>>>>> __asm mov Address_of_H, eax // 2022-06-18
>>>>>>>>>>>> __asm mov eax, END_OF_CODE
>>>>>>>>>>>> __asm mov End_Of_Code, eax
>>>>>>>>>>>>
>>>>>>>>>>>> Output("Address_of_H:", Address_of_H); // 2022-06-11
>>>>>>>>>>>> Init_slave_state(P, I, End_Of_Code, slave_state, slave_stack);
>>>>>>>>>>>> Output("\nBegin Simulation Execution Trace Stored at:",
>>>>>>>>>>>> execution_trace);
>>>>>>>>>>>> if (Decide_Halting(&execution_trace, &decoded, code_end,
>>>>>>>>>>>> &master_state,
>>>>>>>>>>>> &slave_state, &slave_stack,
>>>>>>>>>>>> Address_of_H, P, I))
>>>>>>>>>>>> goto END_OF_CODE;
>>>>>>>>>>>> return 0; // Does not halt
>>>>>>>>>>>> END_OF_CODE:
>>>>>>>>>>>> return 1; // Input has normally terminated
>>>>>>>>>>>> }
>>>>>>>>>>>>
>>>>>>>>>>>> H knows its own machine address and on this basis it can
>>>>>>>>>>>> easily examine its stored execution_trace of P and determine:
>>>>>>>>>>>> (a) P is calling H with the same arguments that H was called
>>>>>>>>>>>> with.
>>>>>>>>>>>> (b) No instructions in P could possibly escape this otherwise
>>>>>>>>>>>> infinitely recursive emulation.
>>>>>>>>>>>> (c) H aborts its emulation of P before its call to H is invoked.
>>>>>>>>>>>>
>>>>>>>>>>>>
>>>>>>>>>>>
>>>>>>>>>>> (b) is NOT a correct rule. Thos has been pointed out before,
>>>>>>>>>>> and you have ignored it.
>>>>>>>>>>>
>>>>>>>>>> That you don't understand what I mean does not mean that it is
>>>>>>>>>> an incorrect rule.
>>>>>>>>>>
>>>>>>>>>> Here is an example where P does have instruction that could
>>>>>>>>>> possibly escape this otherwise infinitely recursive emulation:
>>>>>>>>>>
>>>>>>>>>>
>>>>>>>>>> void P(ptr x)
>>>>>>>>>> {
>>>>>>>>>> static count = 0;
>>>>>>>>>> count++;
>>>>>>>>>> if count > 3)
>>>>>>>>>> return;
>>>>>>>>>> if (H(x, x))
>>>>>>>>>> HERE: goto HERE;
>>>>>>>>>> return;
>>>>>>>>>> }
>>>>>>>>>>
>>>>>>>>>
>>>>>>>>> FALLACY of proof by example. I never said that (b) isn't
>>>>>>>>> sometimes true, just it isn't an always true condition. You fail
>>>>>>>>> at elementary logic.
>>>>>>>>
>>>>>>>> Try and find a valid counter-example. Every attempt at rebuttal
>>>>>>>> that is not a valid counter-example is one form of deception or
>>>>>>>> another.
>>>>>>>>
>>>>>>>>
>>>>>>>
>>>>>>> P(P)
>>>>>>
>>>>>> That is not any example of (b), thus another mere strawman deception.
>>>>>>
>>>>>
>>>>> Why not?
>>>>>
>>>> It is not an example of the simulation of the input to H(P,P) at all.
>>>>
>>>>
>>>
>>> Why is P not P?
>>>
>> It is not a direct rebuttal of my original claim.
>
> And what exactly was your original claim?


Click here to read the complete article
Re: Technically competent Software engineers can verify this halting problem proof refutation [ full closure ]

<2U8tK.9437$Me2.4193@fx47.iad>

  copy mid

https://www.novabbs.com/computers/article-flat.php?id=9733&group=comp.ai.philosophy#9733

  copy link   Newsgroups: comp.theory comp.ai.philosophy sci.logic sci.math
Path: i2pn2.org!i2pn.org!usenet.blueworldhosting.com!feed1.usenet.blueworldhosting.com!peer01.iad!feed-me.highwinds-media.com!news.highwinds-media.com!fx47.iad.POSTED!not-for-mail
MIME-Version: 1.0
User-Agent: Mozilla/5.0 (Macintosh; Intel Mac OS X 10.15; rv:91.0)
Gecko/20100101 Thunderbird/91.10.0
Subject: Re: Technically competent Software engineers can verify this halting
problem proof refutation [ full closure ]
Content-Language: en-US
Newsgroups: comp.theory,comp.ai.philosophy,sci.logic,sci.math
References: <EOydnaeszcdfHS__nZ2dnUU7_83NnZ2d@giganews.com>
<20220622203106.00003fa2@reddwarf.jmc>
<xqSdnb2KKdOL5i7_nZ2dnUU7_81g4p2d@giganews.com>
<TwOsK.191531$JVi.174704@fx17.iad>
<N5WdnY_iDptAKC7_nZ2dnUU7_8xh4p2d@giganews.com>
<nLOsK.9452$mY1.1924@fx01.iad>
<3LmdnVllU6W8Jy7_nZ2dnUU7_8xh4p2d@giganews.com>
<j8PsK.15112$%i2.4898@fx48.iad>
<s9CdndzLkud5XC7_nZ2dnUU7_83NnZ2d@giganews.com>
<%sPsK.15923$nZ1.10923@fx05.iad>
<NZmdnRE_I-AmWS7_nZ2dnUU7_81g4p2d@giganews.com>
<RAPsK.191532$JVi.129665@fx17.iad>
<jeKdndsSjJTDUC7_nZ2dnUU7_83NnZ2d@giganews.com>
<SiQsK.193267$70j.57451@fx16.iad>
<x9KdnSlyYIyxSy7_nZ2dnUU7_8zNnZ2d@giganews.com>
<3iRsK.3746$vd2.1411@fx39.iad>
<7t6dnRsAGcTtay7_nZ2dnUU7_83NnZ2d@giganews.com>
<f7da38b3-168a-4447-b3bf-5ebb1d57251dn@googlegroups.com>
<TdWdnWBGBqYViCj_nZ2dnUU7_83NnZ2d@giganews.com>
From: Rich...@Damon-Family.org (Richard Damon)
In-Reply-To: <TdWdnWBGBqYViCj_nZ2dnUU7_83NnZ2d@giganews.com>
Content-Type: text/plain; charset=UTF-8; format=flowed
Content-Transfer-Encoding: 8bit
Lines: 244
Message-ID: <2U8tK.9437$Me2.4193@fx47.iad>
X-Complaints-To: abuse@easynews.com
Organization: Forte - www.forteinc.com
X-Complaints-Info: Please be sure to forward a copy of ALL headers otherwise we will be unable to process your complaint properly.
Date: Thu, 23 Jun 2022 21:59:22 -0400
X-Received-Bytes: 12752
 by: Richard Damon - Fri, 24 Jun 2022 01:59 UTC

On 6/23/22 9:38 PM, olcott wrote:
> On 6/23/2022 6:55 PM, dklei...@gmail.com wrote:
>> On Wednesday, June 22, 2022 at 10:13:27 PM UTC-7, olcott wrote:
>>> On 6/22/2022 10:41 PM, Richard Damon wrote:
>>>> On 6/22/22 10:55 PM, olcott wrote:
>>>>> On 6/22/2022 9:34 PM, Richard Damon wrote:
>>>>>> On 6/22/22 10:18 PM, olcott wrote:
>>>>>>> On 6/22/2022 8:45 PM, Richard Damon wrote:
>>>>>>>> On 6/22/22 9:41 PM, olcott wrote:
>>>>>>>>> On 6/22/2022 8:36 PM, Richard Damon wrote:
>>>>>>>>>> On 6/22/22 9:29 PM, olcott wrote:
>>>>>>>>>>> On 6/22/2022 8:14 PM, Richard Damon wrote:
>>>>>>>>>>>> On 6/22/22 8:55 PM, olcott wrote:
>>>>>>>>>>>>> On 6/22/2022 7:48 PM, Richard Damon wrote:
>>>>>>>>>>>>>> On 6/22/22 8:37 PM, olcott wrote:
>>>>>>>>>>>>>
>>>>>>>>>>>>>>> First you agree that my words are perfectly correct within
>>>>>>>>>>>>>>> their specified context
>>>>>>>>>>>>>>
>>>>>>>>>>>>>> Since you haven't actualy defined you context, and imply that
>>>>>>>>>>>>>> it is the halting problem, where they can not be correct,
>>>>>>>>>>>>>> that is not possible.
>>>>>>>>>>>>>>>
>>>>>>>>>>>>> First you agree that these words are 100% correct within the
>>>>>>>>>>>>> context of software engineering totally ignoring the context
>>>>>>>>>>>>> of the halting problem.
>>>>>>>>>>>>>
>>>>>>>>>>>>> #include <stdint.h>
>>>>>>>>>>>>> #define u32 uint32_t
>>>>>>>>>>>>>
>>>>>>>>>>>>> #include <stdint.h>
>>>>>>>>>>>>> typedef void (*ptr)();
>>>>>>>>>>>>>
>>>>>>>>>>>>> void P(ptr x)
>>>>>>>>>>>>> {
>>>>>>>>>>>>>     if (H(x, x))
>>>>>>>>>>>>>       HERE: goto HERE;
>>>>>>>>>>>>>     return;
>>>>>>>>>>>>> }
>>>>>>>>>>>>>
>>>>>>>>>>>>> int main()
>>>>>>>>>>>>> {
>>>>>>>>>>>>>     Output("Input_Halts = ", H(P, P));
>>>>>>>>>>>>> }
>>>>>>>>>>>>>
>>>>>>>>>>>>> _P()
>>>>>>>>>>>>> [000010d2](01)  55              push ebp
>>>>>>>>>>>>> [000010d3](02)  8bec            mov ebp,esp
>>>>>>>>>>>>> [000010d5](03)  8b4508          mov eax,[ebp+08]
>>>>>>>>>>>>> [000010d8](01)  50              push eax
>>>>>>>>>>>>> [000010d9](03)  8b4d08          mov ecx,[ebp+08]
>>>>>>>>>>>>> [000010dc](01)  51              push ecx
>>>>>>>>>>>>> [000010dd](05)  e820feffff      call 00000f02
>>>>>>>>>>>>> [000010e2](03)  83c408          add esp,+08
>>>>>>>>>>>>> [000010e5](02)  85c0            test eax,eax
>>>>>>>>>>>>> [000010e7](02)  7402            jz 000010eb
>>>>>>>>>>>>> [000010e9](02)  ebfe            jmp 000010e9
>>>>>>>>>>>>> [000010eb](01)  5d              pop ebp
>>>>>>>>>>>>> [000010ec](01)  c3              ret
>>>>>>>>>>>>> Size in bytes:(0027) [000010ec]
>>>>>>>>>>>>>
>>>>>>>>>>>>> Every sufficiently competent software engineer can easily
>>>>>>>>>>>>> verify that the complete and correct x86 emulation of the
>>>>>>>>>>>>> input to H(P,P) by H would never reach the "ret" instruction
>>>>>>>>>>>>> of P because both H and P would remain stuck in infinitely
>>>>>>>>>>>>> recursive emulation.
>>>>>>>>>>>>>
>>>>>>>>>>>>
>>>>>>>>>>>> So, if H actually is a program that does a COMPLETE and correct
>>>>>>>>>>>> x86 emulation of its input, then YES, as I have said many time
>>>>>>>>>>>> before, this combination is non-halting.
>>>>>>>>>>>>
>>>>>>>>>>>> The fact that you need to keep going back to this, and seem to
>>>>>>>>>>>> just be refusing to accept the conditions under which you have
>>>>>>>>>>>> proved it just shows the problems with your thought process.
>>>>>>>>>>>>
>>>>>>>>>>>>> If H does correctly determine that this is the case in a
>>>>>>>>>>>>> finite number of steps then H could reject its input on this
>>>>>>>>>>>>> basis. Here are the details of exactly how H does this in a
>>>>>>>>>>>>> finite number of steps.
>>>>>>>>>>>>
>>>>>>>>>>>> Except that NOW H isn't the H we were just talking about, so
>>>>>>>>>>>> you are just proving that you are either lying or an idiot.
>>>>>>>>>>>>
>>>>>>>>>>>> Remember, the first analysis had the CONDITION on it that H did
>>>>>>>>>>>> a COMPLETE and correct x86 emulation.
>>>>>>>>>>>>
>>>>>>>>>>>> Once you remove that property form H, that conclusion no long
>>>>>>>>>>>> holds and you are shown to be a lying idiot.
>>>>>>>>>>>>
>>>>>>>>>>>>>
>>>>>>>>>>>>> typedef struct Decoded
>>>>>>>>>>>>> {
>>>>>>>>>>>>>     u32 Address;
>>>>>>>>>>>>>     u32 ESP;          // Current value of ESP
>>>>>>>>>>>>>     u32 TOS;          // Current value of Top of Stack
>>>>>>>>>>>>>     u32 NumBytes;
>>>>>>>>>>>>>     u32 Simplified_Opcode;
>>>>>>>>>>>>>     u32 Decode_Target;
>>>>>>>>>>>>> } Decoded_Line_Of_Code;
>>>>>>>>>>>>>
>>>>>>>>>>>>>    machine   stack     stack     machine    assembly
>>>>>>>>>>>>>    address   address   data      code       language
>>>>>>>>>>>>>    ========  ========  ========  =========  =============
>>>>>>>>>>>>> [000010d2][00211e8a][00211e8e] 55         push ebp
>>>>>>>>>>>>> [000010d3][00211e8a][00211e8e] 8bec       mov ebp,esp
>>>>>>>>>>>>> [000010d5][00211e8a][00211e8e] 8b4508     mov eax,[ebp+08]
>>>>>>>>>>>>> [000010d8][00211e86][000010d2] 50         push eax        //
>>>>>>>>>>>>> push P
>>>>>>>>>>>>> [000010d9][00211e86][000010d2] 8b4d08     mov ecx,[ebp+08]
>>>>>>>>>>>>> [000010dc][00211e82][000010d2] 51         push ecx        //
>>>>>>>>>>>>> push P
>>>>>>>>>>>>> [000010dd][00211e7e][000010e2] e820feffff call 00000f02   //
>>>>>>>>>>>>> call H
>>>>>>>>>>>>> Infinitely Recursive Simulation Detected Simulation Stopped
>>>>>>>>>>>>>
>>>>>>>>>>>>> // actual fully operational code in the x86utm operating
>>>>>>>>>>>>> system
>>>>>>>>>>>>> u32 H(u32 P, u32 I)
>>>>>>>>>>>>> {
>>>>>>>>>>>>> HERE:
>>>>>>>>>>>>>     u32 End_Of_Code;
>>>>>>>>>>>>>     u32 Address_of_H;              // 2022-06-17
>>>>>>>>>>>>>     u32 code_end                  = get_code_end(P);
>>>>>>>>>>>>>     Decoded_Line_Of_Code *decoded = (Decoded_Line_Of_Code*)
>>>>>>>>>>>>> Allocate(sizeof(Decoded_Line_Of_Code));
>>>>>>>>>>>>>     Registers*  master_state      = (Registers*)
>>>>>>>>>>>>> Allocate(sizeof(Registers));
>>>>>>>>>>>>>     Registers*  slave_state       = (Registers*)
>>>>>>>>>>>>> Allocate(sizeof(Registers));
>>>>>>>>>>>>>     u32*        slave_stack       = Allocate(0x10000); // 64k;
>>>>>>>>>>>>>     u32  execution_trace =
>>>>>>>>>>>>> (u32)Allocate(sizeof(Decoded_Line_Of_Code) * 1000);
>>>>>>>>>>>>>
>>>>>>>>>>>>>     __asm lea eax, HERE             // 2022-06-18
>>>>>>>>>>>>>     __asm sub eax, 6                // 2022-06-18
>>>>>>>>>>>>>     __asm mov Address_of_H, eax     // 2022-06-18
>>>>>>>>>>>>>     __asm mov eax, END_OF_CODE
>>>>>>>>>>>>>     __asm mov End_Of_Code, eax
>>>>>>>>>>>>>
>>>>>>>>>>>>>     Output("Address_of_H:", Address_of_H); // 2022-06-11
>>>>>>>>>>>>>     Init_slave_state(P, I, End_Of_Code, slave_state,
>>>>>>>>>>>>> slave_stack);
>>>>>>>>>>>>>     Output("\nBegin Simulation   Execution Trace Stored at:",
>>>>>>>>>>>>> execution_trace);
>>>>>>>>>>>>>     if (Decide_Halting(&execution_trace, &decoded, code_end,
>>>>>>>>>>>>> &master_state,
>>>>>>>>>>>>>                        &slave_state, &slave_stack,
>>>>>>>>>>>>> Address_of_H, P, I))
>>>>>>>>>>>>>         goto END_OF_CODE;
>>>>>>>>>>>>>     return 0;  // Does not halt
>>>>>>>>>>>>> END_OF_CODE:
>>>>>>>>>>>>>     return 1; // Input has normally terminated
>>>>>>>>>>>>> }
>>>>>>>>>>>>>
>>>>>>>>>>>>> H knows its own machine address and on this basis it can
>>>>>>>>>>>>> easily examine its stored execution_trace of P and determine:
>>>>>>>>>>>>> (a) P is calling H with the same arguments that H was called
>>>>>>>>>>>>> with.
>>>>>>>>>>>>> (b) No instructions in P could possibly escape this otherwise
>>>>>>>>>>>>> infinitely recursive emulation.
>>>>>>>>>>>>> (c) H aborts its emulation of P before its call to H is
>>>>>>>>>>>>> invoked.
>>>>>>>>>>>>>
>>>>>>>>>>>>>
>>>>>>>>>>>>
>>>>>>>>>>>> (b) is NOT a correct rule. Thos has been pointed out before,
>>>>>>>>>>>> and you have ignored it.
>>>>>>>>>>>>
>>>>>>>>>>> That you don't understand what I mean does not mean that it is
>>>>>>>>>>> an incorrect rule.
>>>>>>>>>>>
>>>>>>>>>>> Here is an example where P does have instruction that could
>>>>>>>>>>> possibly escape this otherwise infinitely recursive emulation:
>>>>>>>>>>>
>>>>>>>>>>>
>>>>>>>>>>> void P(ptr x)
>>>>>>>>>>> {
>>>>>>>>>>> static count = 0;
>>>>>>>>>>>     count++;
>>>>>>>>>>>     if count > 3)
>>>>>>>>>>>       return;
>>>>>>>>>>>     if (H(x, x))
>>>>>>>>>>>       HERE: goto HERE;
>>>>>>>>>>>     return;
>>>>>>>>>>> }
>>>>>>>>>>>
>>>>>>>>>>
>>>>>>>>>> FALLACY of proof by example. I never said that (b) isn't
>>>>>>>>>> sometimes true, just it isn't an always true condition. You fail
>>>>>>>>>> at elementary logic.
>>>>>>>>>
>>>>>>>>> Try and find a valid counter-example. Every attempt at rebuttal
>>>>>>>>> that is not a valid counter-example is one form of deception or
>>>>>>>>> another.
>>>>>>>>>
>>>>>>>>>
>>>>>>>>
>>>>>>>> P(P)
>>>>>>>
>>>>>>> That is not any example of (b), thus another mere strawman
>>>>>>> deception.
>>>>>>>
>>>>>>
>>>>>> Why not?
>>>>>>
>>>>> It is not an example of the simulation of the input to H(P,P) at all.
>>>>>
>>>>>
>>>>
>>>> Why is P not P?
>>>>
>>> It is not a direct rebuttal of my original claim.
>> And what exactly was your original claim?
>
> H is always correct when it determines that an emulated input specifies
> infinitely nested emulation whenever H matches the (a)(b)(c) criteria to
> the behavior of this input.
>
> Obviously a rebuttal would be to find a case where H is incorrect under
> these exact same conditions.
>


Click here to read the complete article

computers / comp.ai.philosophy / Re: Technically competent Software engineers can verify this halting problem proof refutation

Pages:1234567
server_pubkey.txt

rocksolid light 0.9.81
clearnet tor