Rocksolid Light

Welcome to novaBBS (click a section below)

mail  files  register  newsreader  groups  login

Message-ID:  

Are we running light with overbyte?


devel / comp.theory / Re: Technically competent Software engineers can verify this halting problem proof refutation

SubjectAuthor
* Technically competent Software engineers can verify this haltingolcott
+* Technically competent Software engineers can verify this haltingRichard Damon
|`* Technically competent Software engineers can verify this haltingolcott
| +- Technically competent Software engineers can verify this haltingRichard Damon
| +- Technically competent Software engineers can verify this haltingPython
| `* Technically competent Software engineers can verify this haltingMalcolm McLean
|  `* Technically competent Software engineers can verify this haltingolcott
|   `* Technically competent Software engineers can verify this haltingMalcolm McLean
|    +* Technically competent Software engineers can verify this haltingolcott
|    |`* Technically competent Software engineers can verify this haltingolcott
|    | `* Technically competent Software engineers can verify this haltingRichard Damon
|    |  `* Technically competent Software engineers can verify this haltingolcott
|    |   `* Technically competent Software engineers can verify this haltingRichard Damon
|    |    `* Technically competent Software engineers can verify this haltingolcott
|    |     `* Technically competent Software engineers can verify this haltingRichard Damon
|    |      `* Technically competent Software engineers can verify this haltingolcott
|    |       `* Technically competent Software engineers can verify this haltingRichard Damon
|    |        `* Technically competent Software engineers can verify this haltingolcott
|    |         `- Technically competent Software engineers can verify this haltingRichard Damon
|    `* Technically competent Software engineers can verify this halting problem proof rBen Bacarisse
|     +* Technically competent Software engineers can verify this haltingolcott
|     |`* Technically competent Software engineers can verify this haltingRichard Damon
|     | `* Technically competent Software engineers can verify this haltingolcott
|     |  `* Technically competent Software engineers can verify this haltingRichard Damon
|     |   `* Technically competent Software engineers can verify this haltingolcott
|     |    `- Technically competent Software engineers can verify this haltingRichard Damon
|     `* Technically competent Software engineers can verify this haltingMalcolm McLean
|      +* Software engineers can verify this halting problem proof refutation [olcott
|      |+- Software engineers can verify this halting problem proofDaniel Pehoushek
|      |`- Software engineers can verify this halting problem proofRichard Damon
|      `* Technically competent Software engineers can verify this halting problem proof rBen Bacarisse
|       +- Technically competent Software engineers can verify this haltingolcott
|       `* Technically competent Software engineers can verify this haltingMalcolm McLean
|        +* Technically competent Software engineers can verify this haltingolcott
|        |+- Technically competent Software engineers can verify this haltingRichard Damon
|        |`* Technically competent Software engineers can verify this haltingMalcolm McLean
|        | +* Technically competent Software engineers can verify this haltingolcott
|        | |`- Technically competent Software engineers can verify this haltingRichard Damon
|        | `* Technically competent Software engineers can verify this haltingolcott
|        |  `* Technically competent Software engineers can verify this haltingMalcolm McLean
|        |   `* Technically competent Software engineers can verify this haltingolcott
|        |    +- Technically competent Software engineers can verify this haltingRichard Damon
|        |    +* Technically competent Software engineers can verify this haltingolcott
|        |    |`- Technically competent Software engineers can verify this haltingRichard Damon
|        |    `* Technically competent Software engineers can verify this haltingMalcolm McLean
|        |     `* Technically competent Software engineers can verify this haltingolcott
|        |      +* Technically competent Software engineers can verify this haltingMalcolm McLean
|        |      |`- Technically competent Software engineers can verify this haltingolcott
|        |      `- Technically competent Software engineers can verify this haltingRichard Damon
|        `* Technically competent Software engineers can verify this halting problem proof rBen Bacarisse
|         `* Technically competent Software engineers can verify this haltingMalcolm McLean
|          +* Technically competent Software engineers can verify this haltingolcott
|          |`- Technically competent Software engineers can verify this haltingRichard Damon
|          `* Technically competent Software engineers can verify this halting problem proof rBen Bacarisse
|           +* Technically competent Software engineers can verify this haltingolcott
|           |`* Technically competent Software engineers can verify this haltingdklei...@gmail.com
|           | `* Technically competent Software engineers can verify this haltingolcott
|           |  +- Technically competent Software engineers can verify this haltingRichard Damon
|           |  `* Technically competent Software engineers can verify this haltingdklei...@gmail.com
|           |   `- Technically competent Software engineers can verify this haltingolcott
|           `* Technically competent Software engineers can verify this haltingMalcolm McLean
|            +* Technically competent Software engineers can verify this haltingolcott
|            |+* Technically competent Software engineers can verify this haltingMalcolm McLean
|            ||`* Technically competent Software engineers can verify this haltingolcott
|            || `* Technically competent Software engineers can verify this haltingMalcolm McLean
|            ||  `* Technically competent Software engineers can verify this haltingolcott
|            ||   `* Technically competent Software engineers can verify this haltingolcott
|            ||    `* Technically competent Software engineers can verify thisMr Flibble
|            ||     `* Technically competent Software engineers can verify this haltingolcott
|            ||      +* Technically competent Software engineers can verify thisMr Flibble
|            ||      |`* Technically competent Software engineers can verify this haltingolcott
|            ||      | +* Technically competent Software engineers can verify thisMr Flibble
|            ||      | |`* Technically competent Software engineers can verify this haltingolcott
|            ||      | | +* Technically competent Software engineers can verify thisMr Flibble
|            ||      | | |`* Technically competent Software engineers can verify this haltingolcott
|            ||      | | | `* Technically competent Software engineers can verify thisMr Flibble
|            ||      | | |  `* Technically competent Software engineers can verify this haltingolcott
|            ||      | | |   `- Technically competent Software engineers can verify thisMr Flibble
|            ||      | | `- Technically competent Software engineers can verify this haltingRichard Damon
|            ||      | `* Technically competent Software engineers can verify this haltingPython
|            ||      |  `- Technically competent Software engineers can verify this haltingolcott
|            ||      `- Technically competent Software engineers can verify this haltingRichard Damon
|            |`- Technically competent Software engineers can verify this haltingRichard Damon
|            `* Technically competent Software engineers can verify this halting problem proof rBen Bacarisse
|             +* Technically competent Software engineers can verify this haltingolcott
|             |`* Technically competent Software engineers can verify thisMr Flibble
|             | `* Technically competent Software engineers can verify this haltingolcott
|             |  `* Technically competent Software engineers can verify this haltingRichard Damon
|             |   `* Technically competent Software engineers can verify thisMr Flibble
|             |    `* Technically competent Software engineers can verify this halting problem proof rBen Bacarisse
|             |     `- Technically competent Software engineers can verify this haltingolcott
|             +* Technically competent Software engineers can verify this haltingolcott
|             |+* Technically competent Software engineers can verify thisMr Flibble
|             ||`* Technically competent Software engineers can verify this haltingolcott
|             || +* Technically competent Software engineers can verify thisMr Flibble
|             || |`* Technically competent Software engineers can verify this haltingolcott
|             || | `* Technically competent Software engineers can verify thisMr Flibble
|             || |  `* Technically competent Software engineers can verify this haltingolcott
|             || |   `* Technically competent Software engineers can verify thisMr Flibble
|             || |    `* Technically competent Software engineers can verify this haltingolcott
|             || |     `* Technically competent Software engineers can verify thisMr Flibble
|             || `- Technically competent Software engineers can verify this haltingRichard Damon
|             |`* Technically competent Software engineers can verify this haltingRichard Damon
|             `* Technically competent Software engineers can verify this haltingMalcolm McLean
+* Technically competent Software engineers can verify this haltingJeff Barnett
`* Technically competent Software engineers can verify thisMr Flibble

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

<icPsK.130557$ntj.119007@fx15.iad>

  copy mid

https://www.novabbs.com/devel/article-flat.php?id=34761&group=comp.theory#34761

  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!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: 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>
<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>
<HuGdnX9Dm5lXjS7_nZ2dnUU7_8zNnZ2d@giganews.com>
<RrednV8YuePtsC7_nZ2dnUU7_8xh4p2d@giganews.com>
<7fNsK.15922$nZ1.12935@fx05.iad>
<6KadnVr6RfWyNS7_nZ2dnUU7_8zNnZ2d@giganews.com> <fnOsK.1651$Eh2.863@fx41.iad>
<4p6dnXAnR8quKS7_nZ2dnUU7_8zNnZ2d@giganews.com>
<DSOsK.102530$ssF.37950@fx14.iad>
<PqydnQ8hC5luJi7_nZ2dnUU7_8xh4p2d@giganews.com>
From: Rich...@Damon-Family.org (Richard Damon)
In-Reply-To: <PqydnQ8hC5luJi7_nZ2dnUU7_8xh4p2d@giganews.com>
Content-Type: text/plain; charset=UTF-8; format=flowed
Content-Transfer-Encoding: 8bit
Lines: 159
Message-ID: <icPsK.130557$ntj.119007@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: Wed, 22 Jun 2022 21:19:09 -0400
X-Received-Bytes: 8279
 by: Richard Damon - Thu, 23 Jun 2022 01:19 UTC

On 6/22/22 9:03 PM, olcott wrote:
> On 6/22/2022 7:56 PM, Richard Damon wrote:
>> On 6/22/22 8:30 PM, olcott wrote:
>>> On 6/22/2022 7:22 PM, Richard Damon wrote:
>>>> On 6/22/22 7:39 PM, olcott wrote:
>>>>> On 6/22/2022 6:05 PM, Richard Damon wrote:
>>>>>> On 6/22/22 10:55 AM, olcott wrote:
>>>>>>> On 6/22/2022 7:53 AM, olcott wrote:
>>>>>>>> On 6/22/2022 7:45 AM, Malcolm McLean wrote:
>>>>>>>>> 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. In these circumstances, the
>>>>>>>>> sensible
>>>>>>>>> scientist (or I suppose mathematician, though I'm a scientist
>>>>>>>>> and not a
>>>>>>>>> mathematician) looks for alternative explanations which aren't
>>>>>>>>> quite as
>>>>>>>>> consequential.
>>>>>>>>
>>>>>>>> That is like looking for alternatives to 5 > 3
>>>>>>>> 5 < 3 wrong, 5 == 3, wrong 5 <= 3 wrong 5 >= 3 correct
>>>>>>>>
>>>>>>>>>>> That would have far-reaching consequences. Before going
>>>>>>>>>>> there, maybe
>>>>>>>>>>> think up some simpler, alternative explanations and eliminate
>>>>>>>>>>> them.
>>>>>>>>>> There are no alternatives to immutable verified facts. H(P,P)
>>>>>>>>>> halts only
>>>>>>>>>> because H(P,P) correctly determines that its input never halts.
>>>>>>>>>>
>>>>>>>>>> Technically competent software engineers would agree. On the
>>>>>>>>>> basis of
>>>>>>>>>> the much more complete details that I provided in my original
>>>>>>>>>> post.
>>>>>>>>>>
>>>>>>>>>> When P(P) is called from main its behavior depends on the
>>>>>>>>>> return value
>>>>>>>>>> of H. When H is called from main P(P) cannot possibly depend
>>>>>>>>>> on the
>>>>>>>>>> return value of H because the correctly emulated input to H(P,P)
>>>>>>>>>> continues to remain stuck in infinite emulation until H aborts
>>>>>>>>>> it.
>>>>>>>>>>
>>>>>>>>> That would be one consequence of going with your explanation.
>>>>>>>>> We'd have to
>>>>>>>>> say the behaviour of P(P) differs depending on caller. As I
>>>>>>>>> said, try simpler,
>>>>>>>>> less far-reaching explanations first.
>>>>>>>>
>>>>>>>> void P(u32 x)
>>>>>>>> {
>>>>>>>>    if (H(x, x))
>>>>>>>>      HERE: goto HERE;
>>>>>>>>    return;
>>>>>>>> }
>>>>>>>>
>>>>>>>>   H(P,P)==0 is provably correct
>>>>>>>> H1(P,P)==1 is provably correct.
>>>>>>>> H1(P,P) reports on the behavior of P(P).
>>>>>>>>
>>>>>>>
>>>>>>> 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. The actual behavior of the
>>>>>>> actual input to H(P,P) is non halting thus rejecting its input is
>>>>>>> necessarily correct.
>>>>>>>
>>>>>>>
>>>>>>
>>>>>> You have this wrong.
>>>>>>
>>>>>> A decider must compute the mapping that represents the FUNCTION it
>>>>>> is deciding, there is actually nothing about "behavior" in the
>>>>>> definition.
>>>>>>
>>>>>> For a HALTING decider, that mapping is based on the HALTING
>>>>>> Behavior of the machine the input REPRESENTS.
>>>>>
>>>>> If you construe this as the actual behavior that the actual input
>>>>> specifies then this is correct otherwise this is incorrect.
>>>>
>>>> If it isn't the acutual behavior, then it just isn't a Halt Decider,
>>>> but maybe your POOP decider.
>>>>
>>> The behavior of P(P) is provably not the actual behavior of the
>>> actual input to H(P,P). That you are insufficiently technically
>>> competent to verify this is far less than no rebuttal at all.
>>>
>>
>> THen prove it.
>
> I have proved it dozens of times and every fake "rebuttal" simply
> ignores the proof.
>
>


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

<SJ-dnXNdiJ58Ii7_nZ2dnUU7_81g4p2d@giganews.com>

  copy mid

https://www.novabbs.com/devel/article-flat.php?id=34762&group=comp.theory#34762

  copy link   Newsgroups: comp.theory
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 20:20:33 -0500
Date: Wed, 22 Jun 2022 20:20:32 -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
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>
From: NoO...@NoWhere.com (olcott)
In-Reply-To: <c72d4625-7859-452c-9b63-b6f9f1c4bb9en@googlegroups.com>
Content-Type: text/plain; charset=UTF-8; format=flowed
Content-Transfer-Encoding: 7bit
Message-ID: <SJ-dnXNdiJ58Ii7_nZ2dnUU7_81g4p2d@giganews.com>
Lines: 148
X-Usenet-Provider: http://www.giganews.com
X-Trace: sv3-LoxZjHeapp2+FyQiqMztQfArq5totvQAIBW9QtL9pGtua7kQz/C43RhVIPcaea2FwLp0J9jpbfIH6uq!N94Pe+ZYR/efG/UyirfEmC3fFfDxFgBatUE/DZ/MgWmr7C+UuHC/wGQdv6Iw7xIKPh0JU82RJtGa
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: 6859
 by: olcott - Thu, 23 Jun 2022 01:20 UTC

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:
>>
>>>> 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.
>>
>> 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.
>
> FALSE. P contains this code:
>
> 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
>
> which CAN and DOES prevent infinite simulation in the CORRECT simulation of the input to H(P,P), or more accurately Ha(Pa,Pa)
>
>> (c) H aborts its emulation of P before its call to H is invoked.
>> --
>> Copyright 2022 Pete Olcott
>>
>> "Talent hits a target no one else can hit;
>> Genius hits a target no one else can see."
>> Arthur Schopenhauer

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.

You simply use the strawman deception to dodge this claim.

--
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 [ truism ]

<d59b136e-6411-462f-9b62-229c0ac00608n@googlegroups.com>

  copy mid

https://www.novabbs.com/devel/article-flat.php?id=34763&group=comp.theory#34763

  copy link   Newsgroups: comp.theory
X-Received: by 2002:a05:600c:19cf:b0:39c:88a0:c66e with SMTP id u15-20020a05600c19cf00b0039c88a0c66emr1139297wmq.37.1655947319713;
Wed, 22 Jun 2022 18:21:59 -0700 (PDT)
X-Received: by 2002:a81:6507:0:b0:313:cc8d:fd79 with SMTP id
z7-20020a816507000000b00313cc8dfd79mr7389801ywb.319.1655947319208; Wed, 22
Jun 2022 18:21:59 -0700 (PDT)
Path: i2pn2.org!i2pn.org!weretis.net!feeder8.news.weretis.net!proxad.net!feeder1-2.proxad.net!209.85.128.88.MISMATCH!news-out.google.com!nntp.google.com!postnews.google.com!google-groups.googlegroups.com!not-for-mail
Newsgroups: comp.theory
Date: Wed, 22 Jun 2022 18:21:59 -0700 (PDT)
In-Reply-To: <SJ-dnXBdiJ6aIi7_nZ2dnUU7_83NnZ2d@giganews.com>
Injection-Info: google-groups.googlegroups.com; posting-host=71.168.165.242; posting-account=ejFcQgoAAACAt5i0VbkATkR2ACWdgADD
NNTP-Posting-Host: 71.168.165.242
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>
User-Agent: G2/1.0
MIME-Version: 1.0
Message-ID: <d59b136e-6411-462f-9b62-229c0ac00608n@googlegroups.com>
Subject: Re: Technically competent Software engineers can verify this halting
problem proof refutation [ truism ]
From: dbush.mo...@gmail.com (Dennis Bush)
Injection-Date: Thu, 23 Jun 2022 01:21:59 +0000
Content-Type: text/plain; charset="UTF-8"
Content-Transfer-Encoding: quoted-printable
 by: Dennis Bush - Thu, 23 Jun 2022 01:21 UTC

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.


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

<s9CdndzLkud5XC7_nZ2dnUU7_83NnZ2d@giganews.com>

  copy mid

https://www.novabbs.com/devel/article-flat.php?id=34764&group=comp.theory#34764

  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 20:29:08 -0500
Date: Wed, 22 Jun 2022 20:29: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 [ 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>
From: NoO...@NoWhere.com (olcott)
In-Reply-To: <j8PsK.15112$%i2.4898@fx48.iad>
Content-Type: text/plain; charset=UTF-8; format=flowed
Content-Transfer-Encoding: 8bit
Message-ID: <s9CdndzLkud5XC7_nZ2dnUU7_83NnZ2d@giganews.com>
Lines: 172
X-Usenet-Provider: http://www.giganews.com
X-Trace: sv3-T52tUV/vhUbCISkceLeT2KEvnAwDpaE6OfJhCqDVmCFmrEPu/P+r0fLiDGNbPH5CZDWYxwdklAvx65A!Zupq9gmQtAG3GTg60FqjMzH+lfGbkbArHo8aMs/vVSDWZElk1ZEYvXv7UBNwChnXiiECcoN5CTIn
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: 8207
 by: olcott - Thu, 23 Jun 2022 01:29 UTC

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;
}

--
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 [ full closure ]

<NoPsK.192660$70j.191154@fx16.iad>

  copy mid

https://www.novabbs.com/devel/article-flat.php?id=34765&group=comp.theory#34765

  copy link   Newsgroups: comp.theory
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
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>
From: Rich...@Damon-Family.org (Richard Damon)
In-Reply-To: <SJ-dnXNdiJ58Ii7_nZ2dnUU7_81g4p2d@giganews.com>
Content-Type: text/plain; charset=UTF-8; format=flowed
Content-Transfer-Encoding: 8bit
Lines: 154
Message-ID: <NoPsK.192660$70j.191154@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 21:32:29 -0400
X-Received-Bytes: 6945
 by: Richard Damon - Thu, 23 Jun 2022 01:32 UTC

On 6/22/22 9:20 PM, 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:
>>>
>>>>> 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.
>>>
>>> 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.
>>
>> FALSE.  P contains this code:
>>
>> 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
>>
>> which CAN and DOES prevent infinite simulation in the CORRECT
>> simulation of the input to H(P,P), or more accurately Ha(Pa,Pa)
>>
>>> (c) H aborts its emulation of P before its call to H is invoked.
>>> --
>>> Copyright 2022 Pete Olcott
>>>
>>> "Talent hits a target no one else can hit;
>>> Genius hits a target no one else can see."
>>> Arthur Schopenhauer
>
>
> 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.
>
> You simply use the strawman deception to dodge this claim.
>

Except that when you give that input to a definitionally complete and
correct emulator, you get P(P) and that it halts.

That is what happens when actually do what you claim, and not try
replacing H with something that isn't actually H.

That is where you logic breaks, H doesn't see an actual H in the input,
but uses is MISCONCEPTION of H.

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

<Rsedne9oy-tSXy7_nZ2dnUU7_8zNnZ2d@giganews.com>

  copy mid

https://www.novabbs.com/devel/article-flat.php?id=34766&group=comp.theory#34766

  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 20:33:03 -0500
Date: Wed, 22 Jun 2022 20:33:01 -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>
<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>
<HuGdnX9Dm5lXjS7_nZ2dnUU7_8zNnZ2d@giganews.com>
<RrednV8YuePtsC7_nZ2dnUU7_8xh4p2d@giganews.com>
<7fNsK.15922$nZ1.12935@fx05.iad>
<6KadnVr6RfWyNS7_nZ2dnUU7_8zNnZ2d@giganews.com> <fnOsK.1651$Eh2.863@fx41.iad>
<4p6dnXAnR8quKS7_nZ2dnUU7_8zNnZ2d@giganews.com>
<DSOsK.102530$ssF.37950@fx14.iad>
<PqydnQ8hC5luJi7_nZ2dnUU7_8xh4p2d@giganews.com>
<icPsK.130557$ntj.119007@fx15.iad>
From: NoO...@NoWhere.com (olcott)
In-Reply-To: <icPsK.130557$ntj.119007@fx15.iad>
Content-Type: text/plain; charset=UTF-8; format=flowed
Content-Transfer-Encoding: 8bit
Message-ID: <Rsedne9oy-tSXy7_nZ2dnUU7_8zNnZ2d@giganews.com>
Lines: 159
X-Usenet-Provider: http://www.giganews.com
X-Trace: sv3-kAh2KU0hs5mw0ogfSnIiWn1l2d3055SWvWbUUnMHQccdi8GcRGCEqYe6U9L+rdzwWb1jjFmylekaJDe!TIyqiItv5eD8Rgr3xRO+aWNkKvargoA2tT6eRARDO1jqi1dRHVqEk9yuOa0x8BV5bAUIdm3rp/ew
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: 8678
 by: olcott - Thu, 23 Jun 2022 01:33 UTC

On 6/22/2022 8:19 PM, Richard Damon wrote:
> On 6/22/22 9:03 PM, olcott wrote:
>> On 6/22/2022 7:56 PM, Richard Damon wrote:
>>> On 6/22/22 8:30 PM, olcott wrote:
>>>> On 6/22/2022 7:22 PM, Richard Damon wrote:
>>>>> On 6/22/22 7:39 PM, olcott wrote:
>>>>>> On 6/22/2022 6:05 PM, Richard Damon wrote:
>>>>>>> On 6/22/22 10:55 AM, olcott wrote:
>>>>>>>> On 6/22/2022 7:53 AM, olcott wrote:
>>>>>>>>> On 6/22/2022 7:45 AM, Malcolm McLean wrote:
>>>>>>>>>> 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. In these circumstances, the
>>>>>>>>>> sensible
>>>>>>>>>> scientist (or I suppose mathematician, though I'm a scientist
>>>>>>>>>> and not a
>>>>>>>>>> mathematician) looks for alternative explanations which aren't
>>>>>>>>>> quite as
>>>>>>>>>> consequential.
>>>>>>>>>
>>>>>>>>> That is like looking for alternatives to 5 > 3
>>>>>>>>> 5 < 3 wrong, 5 == 3, wrong 5 <= 3 wrong 5 >= 3 correct
>>>>>>>>>
>>>>>>>>>>>> That would have far-reaching consequences. Before going
>>>>>>>>>>>> there, maybe
>>>>>>>>>>>> think up some simpler, alternative explanations and
>>>>>>>>>>>> eliminate them.
>>>>>>>>>>> There are no alternatives to immutable verified facts. H(P,P)
>>>>>>>>>>> halts only
>>>>>>>>>>> because H(P,P) correctly determines that its input never halts.
>>>>>>>>>>>
>>>>>>>>>>> Technically competent software engineers would agree. On the
>>>>>>>>>>> basis of
>>>>>>>>>>> the much more complete details that I provided in my original
>>>>>>>>>>> post.
>>>>>>>>>>>
>>>>>>>>>>> When P(P) is called from main its behavior depends on the
>>>>>>>>>>> return value
>>>>>>>>>>> of H. When H is called from main P(P) cannot possibly depend
>>>>>>>>>>> on the
>>>>>>>>>>> return value of H because the correctly emulated input to H(P,P)
>>>>>>>>>>> continues to remain stuck in infinite emulation until H
>>>>>>>>>>> aborts it.
>>>>>>>>>>>
>>>>>>>>>> That would be one consequence of going with your explanation.
>>>>>>>>>> We'd have to
>>>>>>>>>> say the behaviour of P(P) differs depending on caller. As I
>>>>>>>>>> said, try simpler,
>>>>>>>>>> less far-reaching explanations first.
>>>>>>>>>
>>>>>>>>> void P(u32 x)
>>>>>>>>> {
>>>>>>>>>    if (H(x, x))
>>>>>>>>>      HERE: goto HERE;
>>>>>>>>>    return;
>>>>>>>>> }
>>>>>>>>>
>>>>>>>>>   H(P,P)==0 is provably correct
>>>>>>>>> H1(P,P)==1 is provably correct.
>>>>>>>>> H1(P,P) reports on the behavior of P(P).
>>>>>>>>>
>>>>>>>>
>>>>>>>> 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. The actual behavior of
>>>>>>>> the actual input to H(P,P) is non halting thus rejecting its
>>>>>>>> input is necessarily correct.
>>>>>>>>
>>>>>>>>
>>>>>>>
>>>>>>> You have this wrong.
>>>>>>>
>>>>>>> A decider must compute the mapping that represents the FUNCTION
>>>>>>> it is deciding, there is actually nothing about "behavior" in the
>>>>>>> definition.
>>>>>>>
>>>>>>> For a HALTING decider, that mapping is based on the HALTING
>>>>>>> Behavior of the machine the input REPRESENTS.
>>>>>>
>>>>>> If you construe this as the actual behavior that the actual input
>>>>>> specifies then this is correct otherwise this is incorrect.
>>>>>
>>>>> If it isn't the acutual behavior, then it just isn't a Halt
>>>>> Decider, but maybe your POOP decider.
>>>>>
>>>> The behavior of P(P) is provably not the actual behavior of the
>>>> actual input to H(P,P). That you are insufficiently technically
>>>> competent to verify this is far less than no rebuttal at all.
>>>>
>>>
>>> THen prove it.
>>
>> I have proved it dozens of times and every fake "rebuttal" simply
>> ignores the proof.
>>
>>
>
> Nope, you have claimed it, and given rhetorical arguments.


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

<%sPsK.15923$nZ1.10923@fx05.iad>

  copy mid

https://www.novabbs.com/devel/article-flat.php?id=34767&group=comp.theory#34767

  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!fx05.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>
From: Rich...@Damon-Family.org (Richard Damon)
In-Reply-To: <s9CdndzLkud5XC7_nZ2dnUU7_83NnZ2d@giganews.com>
Content-Type: text/plain; charset=UTF-8; format=flowed
Content-Transfer-Encoding: 8bit
Lines: 180
Message-ID: <%sPsK.15923$nZ1.10923@fx05.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:36:56 -0400
X-Received-Bytes: 8549
 by: Richard Damon - Thu, 23 Jun 2022 01:36 UTC

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.

The fundamental problem is you don't understand what is 'P' to
computation theory, it isn't just the 'C Function' but includes
EVERYTHING that P calls, and thus includes H.

Thus, the conditional in H that decides to abort its further emulation
is PART of the program P, and thus the 'No Conditional' condition isn't
satisfied.

You just seem to be too ignorant of the basic to be able to reason.

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

<NZmdnRY_I-BpXi7_nZ2dnUU7_83NnZ2d@giganews.com>

  copy mid

https://www.novabbs.com/devel/article-flat.php?id=34768&group=comp.theory#34768

  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 20:37:56 -0500
Date: Wed, 22 Jun 2022 20:37:55 -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>
From: NoO...@NoWhere.com (olcott)
In-Reply-To: <d59b136e-6411-462f-9b62-229c0ac00608n@googlegroups.com>
Content-Type: text/plain; charset=UTF-8; format=flowed
Content-Transfer-Encoding: 8bit
Message-ID: <NZmdnRY_I-BpXi7_nZ2dnUU7_83NnZ2d@giganews.com>
Lines: 245
X-Usenet-Provider: http://www.giganews.com
X-Trace: sv3-PtClKisJxK1ay2yoyNUSAcGX3lOamwZw1s8axLnatIg+kGA8fLKOhq6/w2vwXU6I2o3upxMcYpm/MLK!f3/r8WEeNEObttqOvGi3cwOY0oyy/0xFuz1GDPfeklDMCyVuL7iM7tpU8GGMRLqc2vg1vxDJfc/+
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: 13537
 by: olcott - Thu, 23 Jun 2022 01:37 UTC

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.


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

<NZmdnRE_I-AmWS7_nZ2dnUU7_81g4p2d@giganews.com>

  copy mid

https://www.novabbs.com/devel/article-flat.php?id=34769&group=comp.theory#34769

  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 20:41:14 -0500
Date: Wed, 22 Jun 2022 20:41:13 -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>
From: NoO...@NoWhere.com (olcott)
In-Reply-To: <%sPsK.15923$nZ1.10923@fx05.iad>
Content-Type: text/plain; charset=UTF-8; format=flowed
Content-Transfer-Encoding: 8bit
Message-ID: <NZmdnRE_I-AmWS7_nZ2dnUU7_81g4p2d@giganews.com>
Lines: 182
X-Usenet-Provider: http://www.giganews.com
X-Trace: sv3-OOw3KQrUq357g088O8hBBcbulGcAQUyQn/uT8J/EH9bo4G37GLoIpzM0aGaHfttzemUxcXAliiVWat8!zugEPHz2/Z4RXIQPnqXLbsL8HPacB9kx3M0c76+fjZu5RRyKRGgJBmJHXT4e/Yt1y4NGDRqq8ZCl
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: 9028
 by: olcott - Thu, 23 Jun 2022 01:41 UTC

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.

--
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 [ truism ]

<5934b17d-9607-49d1-97db-813a232a6d94n@googlegroups.com>

  copy mid

https://www.novabbs.com/devel/article-flat.php?id=34770&group=comp.theory#34770

  copy link   Newsgroups: comp.theory
X-Received: by 2002:adf:de8b:0:b0:21b:95ea:46c4 with SMTP id w11-20020adfde8b000000b0021b95ea46c4mr6094872wrl.73.1655948667519;
Wed, 22 Jun 2022 18:44:27 -0700 (PDT)
X-Received: by 2002:a81:ac07:0:b0:317:dd64:2ad5 with SMTP id
k7-20020a81ac07000000b00317dd642ad5mr8056866ywh.105.1655948666863; Wed, 22
Jun 2022 18:44:26 -0700 (PDT)
Path: i2pn2.org!i2pn.org!aioe.org!news.uzoreto.com!feeder1.cambriumusenet.nl!feed.tweak.nl!209.85.128.87.MISMATCH!news-out.google.com!nntp.google.com!postnews.google.com!google-groups.googlegroups.com!not-for-mail
Newsgroups: comp.theory
Date: Wed, 22 Jun 2022 18:44:26 -0700 (PDT)
In-Reply-To: <NZmdnRY_I-BpXi7_nZ2dnUU7_83NnZ2d@giganews.com>
Injection-Info: google-groups.googlegroups.com; posting-host=71.168.165.242; posting-account=ejFcQgoAAACAt5i0VbkATkR2ACWdgADD
NNTP-Posting-Host: 71.168.165.242
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>
User-Agent: G2/1.0
MIME-Version: 1.0
Message-ID: <5934b17d-9607-49d1-97db-813a232a6d94n@googlegroups.com>
Subject: Re: Technically competent Software engineers can verify this halting
problem proof refutation [ truism ]
From: dbush.mo...@gmail.com (Dennis Bush)
Injection-Date: Thu, 23 Jun 2022 01:44:27 +0000
Content-Type: text/plain; charset="UTF-8"
Content-Transfer-Encoding: quoted-printable
 by: Dennis Bush - Thu, 23 Jun 2022 01:44 UTC

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.


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

<RAPsK.191532$JVi.129665@fx17.iad>

  copy mid

https://www.novabbs.com/devel/article-flat.php?id=34771&group=comp.theory#34771

  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!fx17.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>
From: Rich...@Damon-Family.org (Richard Damon)
In-Reply-To: <NZmdnRE_I-AmWS7_nZ2dnUU7_81g4p2d@giganews.com>
Content-Type: text/plain; charset=UTF-8; format=flowed
Content-Transfer-Encoding: 8bit
Lines: 186
Message-ID: <RAPsK.191532$JVi.129665@fx17.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:45:21 -0400
X-Received-Bytes: 8997
 by: Richard Damon - Thu, 23 Jun 2022 01:45 UTC

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.
>
>


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

<3FPsK.102532$ssF.35577@fx14.iad>

  copy mid

https://www.novabbs.com/devel/article-flat.php?id=34772&group=comp.theory#34772

  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
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>
<HuGdnX9Dm5lXjS7_nZ2dnUU7_8zNnZ2d@giganews.com>
<RrednV8YuePtsC7_nZ2dnUU7_8xh4p2d@giganews.com>
<7fNsK.15922$nZ1.12935@fx05.iad>
<6KadnVr6RfWyNS7_nZ2dnUU7_8zNnZ2d@giganews.com> <fnOsK.1651$Eh2.863@fx41.iad>
<4p6dnXAnR8quKS7_nZ2dnUU7_8zNnZ2d@giganews.com>
<DSOsK.102530$ssF.37950@fx14.iad>
<PqydnQ8hC5luJi7_nZ2dnUU7_8xh4p2d@giganews.com>
<icPsK.130557$ntj.119007@fx15.iad>
<Rsedne9oy-tSXy7_nZ2dnUU7_8zNnZ2d@giganews.com>
From: Rich...@Damon-Family.org (Richard Damon)
In-Reply-To: <Rsedne9oy-tSXy7_nZ2dnUU7_8zNnZ2d@giganews.com>
Content-Type: text/plain; charset=UTF-8; format=flowed
Content-Transfer-Encoding: 8bit
Lines: 175
Message-ID: <3FPsK.102532$ssF.35577@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:49:51 -0400
X-Received-Bytes: 9118
 by: Richard Damon - Thu, 23 Jun 2022 01:49 UTC

On 6/22/22 9:33 PM, olcott wrote:
> On 6/22/2022 8:19 PM, Richard Damon wrote:
>> On 6/22/22 9:03 PM, olcott wrote:
>>> On 6/22/2022 7:56 PM, Richard Damon wrote:
>>>> On 6/22/22 8:30 PM, olcott wrote:
>>>>> On 6/22/2022 7:22 PM, Richard Damon wrote:
>>>>>> On 6/22/22 7:39 PM, olcott wrote:
>>>>>>> On 6/22/2022 6:05 PM, Richard Damon wrote:
>>>>>>>> On 6/22/22 10:55 AM, olcott wrote:
>>>>>>>>> On 6/22/2022 7:53 AM, olcott wrote:
>>>>>>>>>> On 6/22/2022 7:45 AM, Malcolm McLean wrote:
>>>>>>>>>>> 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. In these circumstances, the
>>>>>>>>>>> sensible
>>>>>>>>>>> scientist (or I suppose mathematician, though I'm a scientist
>>>>>>>>>>> and not a
>>>>>>>>>>> mathematician) looks for alternative explanations which
>>>>>>>>>>> aren't quite as
>>>>>>>>>>> consequential.
>>>>>>>>>>
>>>>>>>>>> That is like looking for alternatives to 5 > 3
>>>>>>>>>> 5 < 3 wrong, 5 == 3, wrong 5 <= 3 wrong 5 >= 3 correct
>>>>>>>>>>
>>>>>>>>>>>>> That would have far-reaching consequences. Before going
>>>>>>>>>>>>> there, maybe
>>>>>>>>>>>>> think up some simpler, alternative explanations and
>>>>>>>>>>>>> eliminate them.
>>>>>>>>>>>> There are no alternatives to immutable verified facts.
>>>>>>>>>>>> H(P,P) halts only
>>>>>>>>>>>> because H(P,P) correctly determines that its input never halts.
>>>>>>>>>>>>
>>>>>>>>>>>> Technically competent software engineers would agree. On the
>>>>>>>>>>>> basis of
>>>>>>>>>>>> the much more complete details that I provided in my
>>>>>>>>>>>> original post.
>>>>>>>>>>>>
>>>>>>>>>>>> When P(P) is called from main its behavior depends on the
>>>>>>>>>>>> return value
>>>>>>>>>>>> of H. When H is called from main P(P) cannot possibly depend
>>>>>>>>>>>> on the
>>>>>>>>>>>> return value of H because the correctly emulated input to
>>>>>>>>>>>> H(P,P)
>>>>>>>>>>>> continues to remain stuck in infinite emulation until H
>>>>>>>>>>>> aborts it.
>>>>>>>>>>>>
>>>>>>>>>>> That would be one consequence of going with your explanation.
>>>>>>>>>>> We'd have to
>>>>>>>>>>> say the behaviour of P(P) differs depending on caller. As I
>>>>>>>>>>> said, try simpler,
>>>>>>>>>>> less far-reaching explanations first.
>>>>>>>>>>
>>>>>>>>>> void P(u32 x)
>>>>>>>>>> {
>>>>>>>>>>    if (H(x, x))
>>>>>>>>>>      HERE: goto HERE;
>>>>>>>>>>    return;
>>>>>>>>>> }
>>>>>>>>>>
>>>>>>>>>>   H(P,P)==0 is provably correct
>>>>>>>>>> H1(P,P)==1 is provably correct.
>>>>>>>>>> H1(P,P) reports on the behavior of P(P).
>>>>>>>>>>
>>>>>>>>>
>>>>>>>>> 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. The actual behavior of
>>>>>>>>> the actual input to H(P,P) is non halting thus rejecting its
>>>>>>>>> input is necessarily correct.
>>>>>>>>>
>>>>>>>>>
>>>>>>>>
>>>>>>>> You have this wrong.
>>>>>>>>
>>>>>>>> A decider must compute the mapping that represents the FUNCTION
>>>>>>>> it is deciding, there is actually nothing about "behavior" in
>>>>>>>> the definition.
>>>>>>>>
>>>>>>>> For a HALTING decider, that mapping is based on the HALTING
>>>>>>>> Behavior of the machine the input REPRESENTS.
>>>>>>>
>>>>>>> If you construe this as the actual behavior that the actual input
>>>>>>> specifies then this is correct otherwise this is incorrect.
>>>>>>
>>>>>> If it isn't the acutual behavior, then it just isn't a Halt
>>>>>> Decider, but maybe your POOP decider.
>>>>>>
>>>>> The behavior of P(P) is provably not the actual behavior of the
>>>>> actual input to H(P,P). That you are insufficiently technically
>>>>> competent to verify this is far less than no rebuttal at all.
>>>>>
>>>>
>>>> THen prove it.
>>>
>>> I have proved it dozens of times and every fake "rebuttal" simply
>>> ignores the proof.
>>>
>>>
>>
>> Nope, you have claimed it, and given rhetorical arguments.
>
> I have provided a complete provably correct execution traces of H(P,P)
> and P(P) that conclusively proves that they really do have different
> behavior yet people rejected it on the basis that they simply do not
> "believe in" the x86 language. This is why I aptly called them
> despicable liars.
>


Click here to read the complete article
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/devel/article-flat.php?id=34773&group=comp.theory#34773

  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/devel/article-flat.php?id=34774&group=comp.theory#34774

  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/devel/article-flat.php?id=34775&group=comp.theory#34775

  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/devel/article-flat.php?id=34776&group=comp.theory#34776

  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 [ truism ]

<15937d3c-f189-4c7a-bd39-2d7e25754d15n@googlegroups.com>

  copy mid

https://www.novabbs.com/devel/article-flat.php?id=34777&group=comp.theory#34777

  copy link   Newsgroups: comp.theory
X-Received: by 2002:a5d:5234:0:b0:21b:829c:3058 with SMTP id i20-20020a5d5234000000b0021b829c3058mr6048193wra.13.1655950991382;
Wed, 22 Jun 2022 19:23:11 -0700 (PDT)
X-Received: by 2002:a25:744b:0:b0:668:cd4c:39c2 with SMTP id
p72-20020a25744b000000b00668cd4c39c2mr7110508ybc.52.1655950990694; Wed, 22
Jun 2022 19:23:10 -0700 (PDT)
Path: i2pn2.org!i2pn.org!usenet.blueworldhosting.com!feed1.usenet.blueworldhosting.com!peer02.iad!feed-me.highwinds-media.com!news.highwinds-media.com!news-out.google.com!nntp.google.com!postnews.google.com!google-groups.googlegroups.com!not-for-mail
Newsgroups: comp.theory
Date: Wed, 22 Jun 2022 19:23:10 -0700 (PDT)
In-Reply-To: <AfGdncZCoPo1US7_nZ2dnUU7_83NnZ2d@giganews.com>
Injection-Info: google-groups.googlegroups.com; posting-host=71.168.165.242; posting-account=ejFcQgoAAACAt5i0VbkATkR2ACWdgADD
NNTP-Posting-Host: 71.168.165.242
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>
User-Agent: G2/1.0
MIME-Version: 1.0
Message-ID: <15937d3c-f189-4c7a-bd39-2d7e25754d15n@googlegroups.com>
Subject: Re: Technically competent Software engineers can verify this halting
problem proof refutation [ truism ]
From: dbush.mo...@gmail.com (Dennis Bush)
Injection-Date: Thu, 23 Jun 2022 02:23:11 +0000
Content-Type: text/plain; charset="UTF-8"
Content-Transfer-Encoding: quoted-printable
X-Received-Bytes: 16260
 by: Dennis Bush - Thu, 23 Jun 2022 02:23 UTC

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.


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/devel/article-flat.php?id=34778&group=comp.theory#34778

  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/devel/article-flat.php?id=34779&group=comp.theory#34779

  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/devel/article-flat.php?id=34780&group=comp.theory#34780

  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 ]

<9f2e271a-8fb5-40f1-9ed6-9bba8cef9433n@googlegroups.com>

  copy mid

https://www.novabbs.com/devel/article-flat.php?id=34781&group=comp.theory#34781

  copy link   Newsgroups: comp.theory
X-Received: by 2002:a05:600c:35d5:b0:3a0:2f95:720b with SMTP id r21-20020a05600c35d500b003a02f95720bmr1396134wmq.162.1655952518851;
Wed, 22 Jun 2022 19:48:38 -0700 (PDT)
X-Received: by 2002:a81:6a86:0:b0:317:afee:a9c1 with SMTP id
f128-20020a816a86000000b00317afeea9c1mr7946817ywc.345.1655952518372; Wed, 22
Jun 2022 19:48:38 -0700 (PDT)
Path: i2pn2.org!i2pn.org!eternal-september.org!reader02.eternal-september.org!news.mixmin.net!proxad.net!feeder1-2.proxad.net!209.85.128.88.MISMATCH!news-out.google.com!nntp.google.com!postnews.google.com!google-groups.googlegroups.com!not-for-mail
Newsgroups: comp.theory
Date: Wed, 22 Jun 2022 19:48:38 -0700 (PDT)
In-Reply-To: <lt2dnRXE1YFyTi7_nZ2dnUU7_8zNnZ2d@giganews.com>
Injection-Info: google-groups.googlegroups.com; posting-host=71.168.165.242; posting-account=ejFcQgoAAACAt5i0VbkATkR2ACWdgADD
NNTP-Posting-Host: 71.168.165.242
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>
User-Agent: G2/1.0
MIME-Version: 1.0
Message-ID: <9f2e271a-8fb5-40f1-9ed6-9bba8cef9433n@googlegroups.com>
Subject: Re: Technically competent Software engineers can verify this halting
problem proof refutation [ truism ]
From: dbush.mo...@gmail.com (Dennis Bush)
Injection-Date: Thu, 23 Jun 2022 02:48:38 +0000
Content-Type: text/plain; charset="UTF-8"
Content-Transfer-Encoding: quoted-printable
 by: Dennis Bush - Thu, 23 Jun 2022 02:48 UTC

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.


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/devel/article-flat.php?id=34782&group=comp.theory#34782

  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/devel/article-flat.php?id=34783&group=comp.theory#34783

  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/devel/article-flat.php?id=34784&group=comp.theory#34784

  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/devel/article-flat.php?id=34785&group=comp.theory#34785

  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
Pages:123456789
server_pubkey.txt

rocksolid light 0.9.8
clearnet tor