Rocksolid Light

Welcome to novaBBS (click a section below)

mail  files  register  newsreader  groups  login

Message-ID:  

"We don't have to protect the environment -- the Second Coming is at hand." -- James Watt


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

<sq-dnVRwmaVtpCv_nZ2dnUU7_8zNnZ2d@giganews.com>

  copy mid

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

  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: Fri, 24 Jun 2022 17:25:52 -0500
Date: Fri, 24 Jun 2022 17:25:51 -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>
<87a6a44s02.fsf@bsb.me.uk>
<a9adde1d-ad2c-444c-9b14-88841f5e8783n@googlegroups.com>
<87sfnv2e6e.fsf@bsb.me.uk>
<3a337f21-4828-46c4-b5be-87c76cff9db4n@googlegroups.com>
<878rplyhj6.fsf@bsb.me.uk>
<b6163094-01b0-4bb4-a3b1-4e48457527a0n@googlegroups.com>
<87fsjtwvut.fsf@bsb.me.uk>
From: NoO...@NoWhere.com (olcott)
In-Reply-To: <87fsjtwvut.fsf@bsb.me.uk>
Content-Type: text/plain; charset=UTF-8; format=flowed
Content-Transfer-Encoding: 7bit
Message-ID: <sq-dnVRwmaVtpCv_nZ2dnUU7_8zNnZ2d@giganews.com>
Lines: 178
X-Usenet-Provider: http://www.giganews.com
X-Trace: sv3-H6lMMivyz5PRCSrBiOcc2vlwcw3N27eVwIcJA+EuBHkSHq/xjLDwmj8bRcIEAy/uwuVOvqcvsu46tVL!0iITgNbcTTJmxoVlSSGdI0nDhxiSbBO0Pbsg7xKbSyefCbznpUOvz+TAuKZH29wrMxbmS62cLmut
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: 10594
 by: olcott - Fri, 24 Jun 2022 22:25 UTC

On 6/24/2022 5:16 PM, Ben Bacarisse wrote:
> Malcolm McLean <malcolm.arthur.mclean@gmail.com> writes:
>
>> On Friday, 24 June 2022 at 20:42:56 UTC+1, Ben Bacarisse wrote:
>>> Malcolm McLean <malcolm.ar...@gmail.com> writes:
>>>
>>>> On Thursday, 23 June 2022 at 23:44:12 UTC+1, Ben Bacarisse wrote:
>>>>> Malcolm McLean <malcolm.ar...@gmail.com> writes:
>>>>>
>>>>>> On Wednesday, 22 June 2022 at 16:50:31 UTC+1, Ben Bacarisse wrote:
>>>>>>> Malcolm McLean <malcolm.ar...@gmail.com> writes:
>>>>>>>
>>>>>>>> On Wednesday, 22 June 2022 at 13:16:36 UTC+1, olcott wrote:
>>>>>>>>> On 6/22/2022 2:55 AM, Malcolm McLean wrote:
>>>>>>>>>> On Wednesday, 22 June 2022 at 04:10:45 UTC+1, olcott wrote:
>>>>>>>>>>> On 6/21/2022 9:52 PM, Richard Damon wrote:
>>>>>>>>>>>>
>>>>>>>>>>>> Right, and P(P) reaches the ret instruction of H(P,P) returns 0, so H
>>>>>>>>>>>> was incorrect in its mapping, since the behavior of P(P) is the
>>>>>>>>>>>> DEFINITION of the behavior of H(P,P),
>>>>>>>>>>> Linz and others were aware that: A halt decider must compute the mapping
>>>>>>>>>>> from its inputs to an accept or reject state on the basis of the actual
>>>>>>>>>>> behavior that is actually specified by these inputs.
>>>>>>>>>>> Linz and others made the false assumption that the actual behavior that
>>>>>>>>>>> is actually specified by the inputs to a simulating halt decider is not
>>>>>>>>>>> the same as the direct execution of these inputs. They were unaware of
>>>>>>>>>>> this because no one previously fully examined a simulating halt decider
>>>>>>>>>>> ever before.
>>>>>>>>>>>> especially if that is what P calls
>>>>>>>>>>>> and P is claimed to be built by the Linz template.
>>>>>>>>>>>>
>>>>>>>>>>>> So, either P isn't built right, or H isn't built fight, or H is wrong.
>>>>>>>>>>>
>>>>>>>>>> You've dry-run P(P) and it doesn't halt. Additionally the halt decider H
>>>>>>>>>> reports it as non-halting. So it's reasonable to assume that H is correct.
>>>>>>>>>>
>>>>>>>>>> However, when run, P(P) halts. So what are we to conclude? That "the
>>>>>>>>>> actual behaviour that is actually specified by the inputs to a simulating
>>>>>>>>>> halt decider is not the same as the direct execution of these inputs"?
>>>>>>>>>
>>>>>>>>> That is an actual immutable verified fact.
>>>>>>>>>
>>>>>>>> That's your conclusion from your observations and reasoning. You've
>>>>>>>> dry-run P(P), and it doesn't halt. You've run H on P(P), and it
>>>>>>>> reports "non-halting". You've run P(P), and it halts. So one
>>>>>>>> explanation is the one you've given but, as I said, that explanation
>>>>>>>> has rather far-reaching consequences.
>>>>>>> There is only one explanation. What you call the "dry-run" is not that
>>>>>>> same as the P(P). We've known this since the "line 15 commented out"
>>>>>>> days. There are two computations -- one that is not stopped and one
>>>>>>> that is, the "dry-run" and the run, the "simulation of the input to
>>>>>>> H(P,P)" and P(P). All PO is doing is trying to find words that hide
>>>>>>> what's going on.
>>>>>>>
>>>>>> I'm a scientists, not a mathematician.
>>>>>> The example I always use is that you are doing an energy budget for tigers.
>>>>>> You work how much they use on running about, lactating, maintaining their
>>>>>> body temperature, and so on.
>>>>>>
>>>>>> Now let's say that you find that all results are within a few percentage points
>>>>>> of a similar budget done for lions. You'd instantly accept this data.
>>>>>>
>>>>>> Now let's say that the results are wildly different from a previous budget done
>>>>>> for lions. You wouldn't just accept that data. You'd check. You'd want to
>>>>>> understand the reasons tigers spend far less energy on movement than lions.
>>>>>>
>>>>>> Now let's say that the result show that tigers use more energy than they
>>>>>> take in food. Would you instantly conclude that the law of conservation of
>>>>>> energy must be incorrect?
>>>>>>
>>>>>> The third is what PO is doing.
>>>>> I have no idea what parts of this analogy map to the current situation.
>>>>> PO has no contradictory results about anything. There's no conflict
>>>>> with any established facts in anything he is doing.
>>>>>
>>>> He's dry-run P(P) and established that it doesn't halt. He's invoked H on it
>>>> and H reports that it doesn't halt. He's run P(P) and it halts.
>>>>
>>>> So something odd is going on there that needs an explanation.
>>> Then I don't know what you mean by "dry-run" and what needs an
>>> explanation (for me) is your description of what he's doing. Nothing in
>>> what PO is doing needs to be explained as far as I can see.
>>>
>> "Dry run" means that a human programmer looks at the code, and determines
>> what it does, without actually executing it.
>
> OK. So what value does it have in this case? Do you think PO is
> competent to "dry run" any code at all?
>
> Going back, now, to what you think needs to be resolved:
>
> | He's dry-run P(P) and established that it doesn't halt. He's invoked H
> | on it and H reports that it doesn't halt. He's run P(P) and it halts.
>
> The obvious conclusion is that PO's dry run (if he has indeed done such
> a thing) is incorrect. Anyone who eyeballs some case and concludes that
> it does not do what it down when actually run has just made a mistake.
> Do you think it's interesting to find out what mistake PO has made when
> guessing what the code does? If so have fun trying to get the code from
> him...
>
> The more interesting (at least at one time) is fact that H is not
> correct since, by definition, H(X,Y) should report on the "halting" of
> the call X(Y).
>
>> It's a very important technique, because it's not always practical or even
>> possible to run a debugger. Even where a debugger is available, often
>> dry-running will reveal bugs in a fraction of the time.
>
> In this case, we have the undisputed fact that P(P) halts, so there's
> really no value in a "dry run" from a debugging perspective.
>
>> In this case, PO has dry run P(P).
>
> And, if that is indeed what he's done (and I don't think it is) he knows
> he's made some mistake in his "dry run".
>
>> That is, he has looked at the source, and
>> worked out what it will do.
>
> But, I hope you agree, he's made some mistake or he's been lying when re
> reports that P(P) halts.
>
>> Which is to run an infinite sequence of nested
>> emulations. So it won't halt.
>
> The execution of P(P) does not represent an infinite sequence of nested
> simulations. We know that because P(P) halts.
>
>> H(P,P) also reports "non-halting". So this is
>> powerful evidence that H is correct.
>
> Eh? How is some code eyeballing more compelling evidence than the 100%
> undisputed fact that P(P) halts? How is the opinion of someone who
> can't write a parity checking TM powerful evidence of anything?
>
>> However when he actually executes P(P) on hardware, it terminates.
>> Something isn't right.
>
> Yes.
>
>> PO's explanation is that P(P) has different correct behaviour when run and
>> when emulated by H.
>
> That can't be an explanation of anything because, according to you, he
> is wrong about the dry run of P(P) and an actual run of P(P). Both the
> dry run and the actual run must take account of the fact that H is
> (partially) emulating P(P).
>
>> I can think of an obvious alternative explanation which is much
>> simpler and much less far-reaching in its implications. However
>> despite a lot of coaxing, no-one else seems to have arrived at it.
>
> There is nothing here with any far-reaching implications and since I've
> never shared your explanation, I'm not going to look for an alternative.
>
> I don't think he's done a "dry run" at all. He knows P(P) halts so he's
> relying on sophistry. H "aborts" so P never reaches its "ret"
> instruction. That's why P(P) and "the simulation of the inputs to
> H(P,P)" are different. 18 years of work for what? An H that, on the
> basis of his own words, obviously gets the wrong answer.
>


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

<AMKdnVNiDukN3Cv_nZ2dnUU7_83NnZ2d@giganews.com>

  copy mid

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

  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: Fri, 24 Jun 2022 17:58:24 -0500
Date: Fri, 24 Jun 2022 17:58:22 -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 [ tautology ]
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>
<YZqdnR1GHIpCmiv_nZ2dnUU7_8zNnZ2d@giganews.com>
<ec1c047f-97f1-49df-abf9-cc53d2d9b4e5n@googlegroups.com>
<87a6a1wvjt.fsf@bsb.me.uk>
From: NoO...@NoWhere.com (olcott)
In-Reply-To: <87a6a1wvjt.fsf@bsb.me.uk>
Content-Type: text/plain; charset=UTF-8; format=flowed
Content-Transfer-Encoding: 7bit
Message-ID: <AMKdnVNiDukN3Cv_nZ2dnUU7_83NnZ2d@giganews.com>
Lines: 37
X-Usenet-Provider: http://www.giganews.com
X-Trace: sv3-cNYe7379sK8XMYuRIBqmJnIw82ipA/+xKC81LIsUd3DO4RUQak4u6Op5acCpoWonLvf2NBQCVMCuLLR!TvM0I8OQziY84P7ZEWFM1J6cIJUXecwaIdhahbbaG9ec3aMX71RBBVFBYmGYdz6f6ZZL+pXAEUzG
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: 3816
 by: olcott - Fri, 24 Jun 2022 22:58 UTC

On 6/24/2022 5:23 PM, Ben Bacarisse wrote:
> Paul N <gw7rib@aol.com> writes:
>
>> You say that "H(P,P) is required to to correctly determine that its
>> correct and complete x86 emulation of its input would never reach the
>> "ret" instruction of this input".
>
> Can I just check that you know this is not what H is supposed to do? PO
> has been searching for some from of words that can stir up enough mud
> that the fact that H is wrong can be to some extent obscured. He seems
> to have hit pay dirt with this latest phrasing.
>
> Everyone seem happy to talk to PO on his own terms (and that's fine --
> it's what he posts for), but in the C-function version of the problem,
> H(X,Y) != 0 if and only if X(Y) "halts". I lost interest when he
> stopped talking about this problem which he knows in not decidable.
>

It is common knowledge (in computer science) that a halt decider must
compute the mapping from actual its inputs to an accept or reject state
on the basis of the actual behavior that is actually specified by its
actual inputs.

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

THERE IS NO ESCAPE FROM THIS BECAUSE IT IS A TAUTOLOGY.

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

<d4d1011f-c7d4-4dba-b5f7-5747c5b01d10n@googlegroups.com>

  copy mid

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

  copy link   Newsgroups: comp.theory
X-Received: by 2002:a5d:5985:0:b0:218:410d:dc67 with SMTP id n5-20020a5d5985000000b00218410ddc67mr1350258wri.189.1656115129691;
Fri, 24 Jun 2022 16:58:49 -0700 (PDT)
X-Received: by 2002:a25:b701:0:b0:66c:826c:c7bd with SMTP id
t1-20020a25b701000000b0066c826cc7bdmr1881257ybj.52.1656115129084; Fri, 24 Jun
2022 16:58:49 -0700 (PDT)
Path: i2pn2.org!i2pn.org!weretis.net!feeder8.news.weretis.net!proxad.net!feeder1-2.proxad.net!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: Fri, 24 Jun 2022 16:58:48 -0700 (PDT)
In-Reply-To: <sq-dnVRwmaVtpCv_nZ2dnUU7_8zNnZ2d@giganews.com>
Injection-Info: google-groups.googlegroups.com; posting-host=47.208.151.23; posting-account=7Xc2EwkAAABXMcQfERYamr3b-64IkBws
NNTP-Posting-Host: 47.208.151.23
References: <EOydnaeszcdfHS__nZ2dnUU7_83NnZ2d@giganews.com>
<PtvsK.300027$5fVf.158200@fx09.iad> <CaWdnZEntLawFS__nZ2dnUU7_83NnZ2d@giganews.com>
<ccb8af3c-e497-4d6e-8040-826a4e87a6e7n@googlegroups.com> <g9qdnRjZj9uBlS7_nZ2dnUU7_8zNnZ2d@giganews.com>
<0f7ed34c-5aaa-4858-885e-66e16777f599n@googlegroups.com> <87a6a44s02.fsf@bsb.me.uk>
<a9adde1d-ad2c-444c-9b14-88841f5e8783n@googlegroups.com> <87sfnv2e6e.fsf@bsb.me.uk>
<3a337f21-4828-46c4-b5be-87c76cff9db4n@googlegroups.com> <878rplyhj6.fsf@bsb.me.uk>
<b6163094-01b0-4bb4-a3b1-4e48457527a0n@googlegroups.com> <87fsjtwvut.fsf@bsb.me.uk>
<sq-dnVRwmaVtpCv_nZ2dnUU7_8zNnZ2d@giganews.com>
User-Agent: G2/1.0
MIME-Version: 1.0
Message-ID: <d4d1011f-c7d4-4dba-b5f7-5747c5b01d10n@googlegroups.com>
Subject: Re: Technically competent Software engineers can verify this halting
problem proof refutation
From: dkleine...@gmail.com (dklei...@gmail.com)
Injection-Date: Fri, 24 Jun 2022 23:58:49 +0000
Content-Type: text/plain; charset="UTF-8"
 by: dklei...@gmail.com - Fri, 24 Jun 2022 23:58 UTC

On Friday, June 24, 2022 at 3:25:59 PM UTC-7, olcott wrote:
> On 6/24/2022 5:16 PM, Ben Bacarisse wrote:
> > Malcolm McLean <malcolm.ar...@gmail.com> writes:
> >
> >> On Friday, 24 June 2022 at 20:42:56 UTC+1, Ben Bacarisse wrote:
> >>> Malcolm McLean <malcolm.ar...@gmail.com> writes:
> >>>
> >>>> On Thursday, 23 June 2022 at 23:44:12 UTC+1, Ben Bacarisse wrote:
> >>>>> Malcolm McLean <malcolm.ar...@gmail.com> writes:
> >>>>>
> >>>>>> On Wednesday, 22 June 2022 at 16:50:31 UTC+1, Ben Bacarisse wrote:
> >>>>>>> Malcolm McLean <malcolm.ar...@gmail.com> writes:
> >>>>>>>
> >>>>>>>> On Wednesday, 22 June 2022 at 13:16:36 UTC+1, olcott wrote:
> >>>>>>>>> On 6/22/2022 2:55 AM, Malcolm McLean wrote:
> >>>>>>>>>> On Wednesday, 22 June 2022 at 04:10:45 UTC+1, olcott wrote:
> >>>>>>>>>>> On 6/21/2022 9:52 PM, Richard Damon wrote:
> >>>>>>>>>>>>
> >>>>>>>>>>>> Right, and P(P) reaches the ret instruction of H(P,P) returns 0, so H
> >>>>>>>>>>>> was incorrect in its mapping, since the behavior of P(P) is the
> >>>>>>>>>>>> DEFINITION of the behavior of H(P,P),
> >>>>>>>>>>> Linz and others were aware that: A halt decider must compute the mapping
> >>>>>>>>>>> from its inputs to an accept or reject state on the basis of the actual
> >>>>>>>>>>> behavior that is actually specified by these inputs.
> >>>>>>>>>>> Linz and others made the false assumption that the actual behavior that
> >>>>>>>>>>> is actually specified by the inputs to a simulating halt decider is not
> >>>>>>>>>>> the same as the direct execution of these inputs. They were unaware of
> >>>>>>>>>>> this because no one previously fully examined a simulating halt decider
> >>>>>>>>>>> ever before.
> >>>>>>>>>>>> especially if that is what P calls
> >>>>>>>>>>>> and P is claimed to be built by the Linz template.
> >>>>>>>>>>>>
> >>>>>>>>>>>> So, either P isn't built right, or H isn't built fight, or H is wrong.
> >>>>>>>>>>>
> >>>>>>>>>> You've dry-run P(P) and it doesn't halt. Additionally the halt decider H
> >>>>>>>>>> reports it as non-halting. So it's reasonable to assume that H is correct.
> >>>>>>>>>>
> >>>>>>>>>> However, when run, P(P) halts. So what are we to conclude? That "the
> >>>>>>>>>> actual behaviour that is actually specified by the inputs to a simulating
> >>>>>>>>>> halt decider is not the same as the direct execution of these inputs"?
> >>>>>>>>>
> >>>>>>>>> That is an actual immutable verified fact.
> >>>>>>>>>
> >>>>>>>> That's your conclusion from your observations and reasoning. You've
> >>>>>>>> dry-run P(P), and it doesn't halt. You've run H on P(P), and it
> >>>>>>>> reports "non-halting". You've run P(P), and it halts. So one
> >>>>>>>> explanation is the one you've given but, as I said, that explanation
> >>>>>>>> has rather far-reaching consequences.
> >>>>>>> There is only one explanation. What you call the "dry-run" is not that
> >>>>>>> same as the P(P). We've known this since the "line 15 commented out"
> >>>>>>> days. There are two computations -- one that is not stopped and one
> >>>>>>> that is, the "dry-run" and the run, the "simulation of the input to
> >>>>>>> H(P,P)" and P(P). All PO is doing is trying to find words that hide
> >>>>>>> what's going on.
> >>>>>>>
> >>>>>> I'm a scientists, not a mathematician.
> >>>>>> The example I always use is that you are doing an energy budget for tigers.
> >>>>>> You work how much they use on running about, lactating, maintaining their
> >>>>>> body temperature, and so on.
> >>>>>>
> >>>>>> Now let's say that you find that all results are within a few percentage points
> >>>>>> of a similar budget done for lions. You'd instantly accept this data.
> >>>>>>
> >>>>>> Now let's say that the results are wildly different from a previous budget done
> >>>>>> for lions. You wouldn't just accept that data. You'd check. You'd want to
> >>>>>> understand the reasons tigers spend far less energy on movement than lions.
> >>>>>>
> >>>>>> Now let's say that the result show that tigers use more energy than they
> >>>>>> take in food. Would you instantly conclude that the law of conservation of
> >>>>>> energy must be incorrect?
> >>>>>>
> >>>>>> The third is what PO is doing.
> >>>>> I have no idea what parts of this analogy map to the current situation.
> >>>>> PO has no contradictory results about anything. There's no conflict
> >>>>> with any established facts in anything he is doing.
> >>>>>
> >>>> He's dry-run P(P) and established that it doesn't halt. He's invoked H on it
> >>>> and H reports that it doesn't halt. He's run P(P) and it halts.
> >>>>
> >>>> So something odd is going on there that needs an explanation.
> >>> Then I don't know what you mean by "dry-run" and what needs an
> >>> explanation (for me) is your description of what he's doing. Nothing in
> >>> what PO is doing needs to be explained as far as I can see.
> >>>
> >> "Dry run" means that a human programmer looks at the code, and determines
> >> what it does, without actually executing it.
> >
> > OK. So what value does it have in this case? Do you think PO is
> > competent to "dry run" any code at all?
> >
> > Going back, now, to what you think needs to be resolved:
> >
> > | He's dry-run P(P) and established that it doesn't halt. He's invoked H
> > | on it and H reports that it doesn't halt. He's run P(P) and it halts.
> >
> > The obvious conclusion is that PO's dry run (if he has indeed done such
> > a thing) is incorrect. Anyone who eyeballs some case and concludes that
> > it does not do what it down when actually run has just made a mistake.
> > Do you think it's interesting to find out what mistake PO has made when
> > guessing what the code does? If so have fun trying to get the code from
> > him...
> >
> > The more interesting (at least at one time) is fact that H is not
> > correct since, by definition, H(X,Y) should report on the "halting" of
> > the call X(Y).
> >
> >> It's a very important technique, because it's not always practical or even
> >> possible to run a debugger. Even where a debugger is available, often
> >> dry-running will reveal bugs in a fraction of the time.
> >
> > In this case, we have the undisputed fact that P(P) halts, so there's
> > really no value in a "dry run" from a debugging perspective.
> >
> >> In this case, PO has dry run P(P).
> >
> > And, if that is indeed what he's done (and I don't think it is) he knows
> > he's made some mistake in his "dry run".
> >
> >> That is, he has looked at the source, and
> >> worked out what it will do.
> >
> > But, I hope you agree, he's made some mistake or he's been lying when re
> > reports that P(P) halts.
> >
> >> Which is to run an infinite sequence of nested
> >> emulations. So it won't halt.
> >
> > The execution of P(P) does not represent an infinite sequence of nested
> > simulations. We know that because P(P) halts.
> >
> >> H(P,P) also reports "non-halting". So this is
> >> powerful evidence that H is correct.
> >
> > Eh? How is some code eyeballing more compelling evidence than the 100%
> > undisputed fact that P(P) halts? How is the opinion of someone who
> > can't write a parity checking TM powerful evidence of anything?
> >
> >> However when he actually executes P(P) on hardware, it terminates.
> >> Something isn't right.
> >
> > Yes.
> >
> >> PO's explanation is that P(P) has different correct behaviour when run and
> >> when emulated by H.
> >
> > That can't be an explanation of anything because, according to you, he
> > is wrong about the dry run of P(P) and an actual run of P(P). Both the
> > dry run and the actual run must take account of the fact that H is
> > (partially) emulating P(P).
> >
> >> I can think of an obvious alternative explanation which is much
> >> simpler and much less far-reaching in its implications. However
> >> despite a lot of coaxing, no-one else seems to have arrived at it.
> >
> > There is nothing here with any far-reaching implications and since I've
> > never shared your explanation, I'm not going to look for an alternative.
> >
> > I don't think he's done a "dry run" at all. He knows P(P) halts so he's
> > relying on sophistry. H "aborts" so P never reaches its "ret"
> > instruction. That's why P(P) and "the simulation of the inputs to
> > H(P,P)" are different. 18 years of work for what? An H that, on the
> > basis of his own words, obviously gets the wrong answer.
> >
> The ordinary semantics of standard C and the conventional x86 language
> are the entire semantics required to conclusively prove that H(P,P) does
> correctly determine that its correct and complete x86 emulation of its
> input would never reach the "ret" instruction (final state) of this
> input thus never halts.
> That your understanding of the semantics of the x86 language is
> insufficient to directly confirm this is less than no rebuttal at all.


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

<196dnYFoP-efziv_nZ2dnUU7_8zNnZ2d@giganews.com>

  copy mid

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

  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: Fri, 24 Jun 2022 19:12:50 -0500
Date: Fri, 24 Jun 2022 19:12:48 -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>
<87a6a44s02.fsf@bsb.me.uk>
<a9adde1d-ad2c-444c-9b14-88841f5e8783n@googlegroups.com>
<87sfnv2e6e.fsf@bsb.me.uk>
<3a337f21-4828-46c4-b5be-87c76cff9db4n@googlegroups.com>
<878rplyhj6.fsf@bsb.me.uk>
<b6163094-01b0-4bb4-a3b1-4e48457527a0n@googlegroups.com>
<87fsjtwvut.fsf@bsb.me.uk> <sq-dnVRwmaVtpCv_nZ2dnUU7_8zNnZ2d@giganews.com>
<d4d1011f-c7d4-4dba-b5f7-5747c5b01d10n@googlegroups.com>
From: NoO...@NoWhere.com (olcott)
In-Reply-To: <d4d1011f-c7d4-4dba-b5f7-5747c5b01d10n@googlegroups.com>
Content-Type: text/plain; charset=UTF-8; format=flowed
Content-Transfer-Encoding: 7bit
Message-ID: <196dnYFoP-efziv_nZ2dnUU7_8zNnZ2d@giganews.com>
Lines: 203
X-Usenet-Provider: http://www.giganews.com
X-Trace: sv3-OVd0ELHDgUXY6AaFR8T1eUySjHXSoeZJIFmdMr8Mty9Bfhcr5ep6D0qSqc6MwxPodBzkbu3kFYk/8zp!sJCSCCIqL5Vh2B4lSvsWrJE75OvEz0hzXgqbns5qzw13HkkjTSqF73YJiVeNrCjNsmT5CLpaHf1B
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: 12145
 by: olcott - Sat, 25 Jun 2022 00:12 UTC

On 6/24/2022 6:58 PM, dklei...@gmail.com wrote:
> On Friday, June 24, 2022 at 3:25:59 PM UTC-7, olcott wrote:
>> On 6/24/2022 5:16 PM, Ben Bacarisse wrote:
>>> Malcolm McLean <malcolm.ar...@gmail.com> writes:
>>>
>>>> On Friday, 24 June 2022 at 20:42:56 UTC+1, Ben Bacarisse wrote:
>>>>> Malcolm McLean <malcolm.ar...@gmail.com> writes:
>>>>>
>>>>>> On Thursday, 23 June 2022 at 23:44:12 UTC+1, Ben Bacarisse wrote:
>>>>>>> Malcolm McLean <malcolm.ar...@gmail.com> writes:
>>>>>>>
>>>>>>>> On Wednesday, 22 June 2022 at 16:50:31 UTC+1, Ben Bacarisse wrote:
>>>>>>>>> Malcolm McLean <malcolm.ar...@gmail.com> writes:
>>>>>>>>>
>>>>>>>>>> On Wednesday, 22 June 2022 at 13:16:36 UTC+1, olcott wrote:
>>>>>>>>>>> On 6/22/2022 2:55 AM, Malcolm McLean wrote:
>>>>>>>>>>>> On Wednesday, 22 June 2022 at 04:10:45 UTC+1, olcott wrote:
>>>>>>>>>>>>> On 6/21/2022 9:52 PM, Richard Damon wrote:
>>>>>>>>>>>>>>
>>>>>>>>>>>>>> Right, and P(P) reaches the ret instruction of H(P,P) returns 0, so H
>>>>>>>>>>>>>> was incorrect in its mapping, since the behavior of P(P) is the
>>>>>>>>>>>>>> DEFINITION of the behavior of H(P,P),
>>>>>>>>>>>>> Linz and others were aware that: A halt decider must compute the mapping
>>>>>>>>>>>>> from its inputs to an accept or reject state on the basis of the actual
>>>>>>>>>>>>> behavior that is actually specified by these inputs.
>>>>>>>>>>>>> Linz and others made the false assumption that the actual behavior that
>>>>>>>>>>>>> is actually specified by the inputs to a simulating halt decider is not
>>>>>>>>>>>>> the same as the direct execution of these inputs. They were unaware of
>>>>>>>>>>>>> this because no one previously fully examined a simulating halt decider
>>>>>>>>>>>>> ever before.
>>>>>>>>>>>>>> especially if that is what P calls
>>>>>>>>>>>>>> and P is claimed to be built by the Linz template.
>>>>>>>>>>>>>>
>>>>>>>>>>>>>> So, either P isn't built right, or H isn't built fight, or H is wrong.
>>>>>>>>>>>>>
>>>>>>>>>>>> You've dry-run P(P) and it doesn't halt. Additionally the halt decider H
>>>>>>>>>>>> reports it as non-halting. So it's reasonable to assume that H is correct.
>>>>>>>>>>>>
>>>>>>>>>>>> However, when run, P(P) halts. So what are we to conclude? That "the
>>>>>>>>>>>> actual behaviour that is actually specified by the inputs to a simulating
>>>>>>>>>>>> halt decider is not the same as the direct execution of these inputs"?
>>>>>>>>>>>
>>>>>>>>>>> That is an actual immutable verified fact.
>>>>>>>>>>>
>>>>>>>>>> That's your conclusion from your observations and reasoning. You've
>>>>>>>>>> dry-run P(P), and it doesn't halt. You've run H on P(P), and it
>>>>>>>>>> reports "non-halting". You've run P(P), and it halts. So one
>>>>>>>>>> explanation is the one you've given but, as I said, that explanation
>>>>>>>>>> has rather far-reaching consequences.
>>>>>>>>> There is only one explanation. What you call the "dry-run" is not that
>>>>>>>>> same as the P(P). We've known this since the "line 15 commented out"
>>>>>>>>> days. There are two computations -- one that is not stopped and one
>>>>>>>>> that is, the "dry-run" and the run, the "simulation of the input to
>>>>>>>>> H(P,P)" and P(P). All PO is doing is trying to find words that hide
>>>>>>>>> what's going on.
>>>>>>>>>
>>>>>>>> I'm a scientists, not a mathematician.
>>>>>>>> The example I always use is that you are doing an energy budget for tigers.
>>>>>>>> You work how much they use on running about, lactating, maintaining their
>>>>>>>> body temperature, and so on.
>>>>>>>>
>>>>>>>> Now let's say that you find that all results are within a few percentage points
>>>>>>>> of a similar budget done for lions. You'd instantly accept this data.
>>>>>>>>
>>>>>>>> Now let's say that the results are wildly different from a previous budget done
>>>>>>>> for lions. You wouldn't just accept that data. You'd check. You'd want to
>>>>>>>> understand the reasons tigers spend far less energy on movement than lions.
>>>>>>>>
>>>>>>>> Now let's say that the result show that tigers use more energy than they
>>>>>>>> take in food. Would you instantly conclude that the law of conservation of
>>>>>>>> energy must be incorrect?
>>>>>>>>
>>>>>>>> The third is what PO is doing.
>>>>>>> I have no idea what parts of this analogy map to the current situation.
>>>>>>> PO has no contradictory results about anything. There's no conflict
>>>>>>> with any established facts in anything he is doing.
>>>>>>>
>>>>>> He's dry-run P(P) and established that it doesn't halt. He's invoked H on it
>>>>>> and H reports that it doesn't halt. He's run P(P) and it halts.
>>>>>>
>>>>>> So something odd is going on there that needs an explanation.
>>>>> Then I don't know what you mean by "dry-run" and what needs an
>>>>> explanation (for me) is your description of what he's doing. Nothing in
>>>>> what PO is doing needs to be explained as far as I can see.
>>>>>
>>>> "Dry run" means that a human programmer looks at the code, and determines
>>>> what it does, without actually executing it.
>>>
>>> OK. So what value does it have in this case? Do you think PO is
>>> competent to "dry run" any code at all?
>>>
>>> Going back, now, to what you think needs to be resolved:
>>>
>>> | He's dry-run P(P) and established that it doesn't halt. He's invoked H
>>> | on it and H reports that it doesn't halt. He's run P(P) and it halts.
>>>
>>> The obvious conclusion is that PO's dry run (if he has indeed done such
>>> a thing) is incorrect. Anyone who eyeballs some case and concludes that
>>> it does not do what it down when actually run has just made a mistake.
>>> Do you think it's interesting to find out what mistake PO has made when
>>> guessing what the code does? If so have fun trying to get the code from
>>> him...
>>>
>>> The more interesting (at least at one time) is fact that H is not
>>> correct since, by definition, H(X,Y) should report on the "halting" of
>>> the call X(Y).
>>>
>>>> It's a very important technique, because it's not always practical or even
>>>> possible to run a debugger. Even where a debugger is available, often
>>>> dry-running will reveal bugs in a fraction of the time.
>>>
>>> In this case, we have the undisputed fact that P(P) halts, so there's
>>> really no value in a "dry run" from a debugging perspective.
>>>
>>>> In this case, PO has dry run P(P).
>>>
>>> And, if that is indeed what he's done (and I don't think it is) he knows
>>> he's made some mistake in his "dry run".
>>>
>>>> That is, he has looked at the source, and
>>>> worked out what it will do.
>>>
>>> But, I hope you agree, he's made some mistake or he's been lying when re
>>> reports that P(P) halts.
>>>
>>>> Which is to run an infinite sequence of nested
>>>> emulations. So it won't halt.
>>>
>>> The execution of P(P) does not represent an infinite sequence of nested
>>> simulations. We know that because P(P) halts.
>>>
>>>> H(P,P) also reports "non-halting". So this is
>>>> powerful evidence that H is correct.
>>>
>>> Eh? How is some code eyeballing more compelling evidence than the 100%
>>> undisputed fact that P(P) halts? How is the opinion of someone who
>>> can't write a parity checking TM powerful evidence of anything?
>>>
>>>> However when he actually executes P(P) on hardware, it terminates.
>>>> Something isn't right.
>>>
>>> Yes.
>>>
>>>> PO's explanation is that P(P) has different correct behaviour when run and
>>>> when emulated by H.
>>>
>>> That can't be an explanation of anything because, according to you, he
>>> is wrong about the dry run of P(P) and an actual run of P(P). Both the
>>> dry run and the actual run must take account of the fact that H is
>>> (partially) emulating P(P).
>>>
>>>> I can think of an obvious alternative explanation which is much
>>>> simpler and much less far-reaching in its implications. However
>>>> despite a lot of coaxing, no-one else seems to have arrived at it.
>>>
>>> There is nothing here with any far-reaching implications and since I've
>>> never shared your explanation, I'm not going to look for an alternative.
>>>
>>> I don't think he's done a "dry run" at all. He knows P(P) halts so he's
>>> relying on sophistry. H "aborts" so P never reaches its "ret"
>>> instruction. That's why P(P) and "the simulation of the inputs to
>>> H(P,P)" are different. 18 years of work for what? An H that, on the
>>> basis of his own words, obviously gets the wrong answer.
>>>
>> The ordinary semantics of standard C and the conventional x86 language
>> are the entire semantics required to conclusively prove that H(P,P) does
>> correctly determine that its correct and complete x86 emulation of its
>> input would never reach the "ret" instruction (final state) of this
>> input thus never halts.
>> That your understanding of the semantics of the x86 language is
>> insufficient to directly confirm this is less than no rebuttal at all.
>
> I assume the semantics of C are defined by the 1989 Standard. The
> semantics of x86 assembly language are described (not actually
> authoritatively defined) in other documents. The mapping of C onto
> the assembly language is far from unique (every compiler could be
> different) PO appears to using a version of Microsoft's C# compiler.
>


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

<lXttK.317386$5fVf.143079@fx09.iad>

  copy mid

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

  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!fx09.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>
<87a6a44s02.fsf@bsb.me.uk>
<a9adde1d-ad2c-444c-9b14-88841f5e8783n@googlegroups.com>
<87sfnv2e6e.fsf@bsb.me.uk>
<3a337f21-4828-46c4-b5be-87c76cff9db4n@googlegroups.com>
<878rplyhj6.fsf@bsb.me.uk>
<b6163094-01b0-4bb4-a3b1-4e48457527a0n@googlegroups.com>
<87fsjtwvut.fsf@bsb.me.uk> <sq-dnVRwmaVtpCv_nZ2dnUU7_8zNnZ2d@giganews.com>
<d4d1011f-c7d4-4dba-b5f7-5747c5b01d10n@googlegroups.com>
<196dnYFoP-efziv_nZ2dnUU7_8zNnZ2d@giganews.com>
From: Rich...@Damon-Family.org (Richard Damon)
In-Reply-To: <196dnYFoP-efziv_nZ2dnUU7_8zNnZ2d@giganews.com>
Content-Type: text/plain; charset=UTF-8; format=flowed
Content-Transfer-Encoding: 8bit
Lines: 254
Message-ID: <lXttK.317386$5fVf.143079@fx09.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: Fri, 24 Jun 2022 21:56:33 -0400
X-Received-Bytes: 13250
 by: Richard Damon - Sat, 25 Jun 2022 01:56 UTC

On 6/24/22 8:12 PM, olcott wrote:
> On 6/24/2022 6:58 PM, dklei...@gmail.com wrote:
>> On Friday, June 24, 2022 at 3:25:59 PM UTC-7, olcott wrote:
>>> On 6/24/2022 5:16 PM, Ben Bacarisse wrote:
>>>> Malcolm McLean <malcolm.ar...@gmail.com> writes:
>>>>
>>>>> On Friday, 24 June 2022 at 20:42:56 UTC+1, Ben Bacarisse wrote:
>>>>>> Malcolm McLean <malcolm.ar...@gmail.com> writes:
>>>>>>
>>>>>>> On Thursday, 23 June 2022 at 23:44:12 UTC+1, Ben Bacarisse wrote:
>>>>>>>> Malcolm McLean <malcolm.ar...@gmail.com> writes:
>>>>>>>>
>>>>>>>>> On Wednesday, 22 June 2022 at 16:50:31 UTC+1, Ben Bacarisse wrote:
>>>>>>>>>> Malcolm McLean <malcolm.ar...@gmail.com> writes:
>>>>>>>>>>
>>>>>>>>>>> On Wednesday, 22 June 2022 at 13:16:36 UTC+1, olcott wrote:
>>>>>>>>>>>> On 6/22/2022 2:55 AM, Malcolm McLean wrote:
>>>>>>>>>>>>> On Wednesday, 22 June 2022 at 04:10:45 UTC+1, olcott wrote:
>>>>>>>>>>>>>> On 6/21/2022 9:52 PM, Richard Damon wrote:
>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>> Right, and P(P) reaches the ret instruction of H(P,P)
>>>>>>>>>>>>>>> returns 0, so H
>>>>>>>>>>>>>>> was incorrect in its mapping, since the behavior of P(P)
>>>>>>>>>>>>>>> is the
>>>>>>>>>>>>>>> DEFINITION of the behavior of H(P,P),
>>>>>>>>>>>>>> Linz and others were aware that: A halt decider must
>>>>>>>>>>>>>> compute the mapping
>>>>>>>>>>>>>> from its inputs to an accept or reject state on the basis
>>>>>>>>>>>>>> of the actual
>>>>>>>>>>>>>> behavior that is actually specified by these inputs.
>>>>>>>>>>>>>> Linz and others made the false assumption that the actual
>>>>>>>>>>>>>> behavior that
>>>>>>>>>>>>>> is actually specified by the inputs to a simulating halt
>>>>>>>>>>>>>> decider is not
>>>>>>>>>>>>>> the same as the direct execution of these inputs. They
>>>>>>>>>>>>>> were unaware of
>>>>>>>>>>>>>> this because no one previously fully examined a simulating
>>>>>>>>>>>>>> halt decider
>>>>>>>>>>>>>> ever before.
>>>>>>>>>>>>>>> especially if that is what P calls
>>>>>>>>>>>>>>> and P is claimed to be built by the Linz template.
>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>> So, either P isn't built right, or H isn't built fight,
>>>>>>>>>>>>>>> or H is wrong.
>>>>>>>>>>>>>>
>>>>>>>>>>>>> You've dry-run P(P) and it doesn't halt. Additionally the
>>>>>>>>>>>>> halt decider H
>>>>>>>>>>>>> reports it as non-halting. So it's reasonable to assume
>>>>>>>>>>>>> that H is correct.
>>>>>>>>>>>>>
>>>>>>>>>>>>> However, when run, P(P) halts. So what are we to conclude?
>>>>>>>>>>>>> That "the
>>>>>>>>>>>>> actual behaviour that is actually specified by the inputs
>>>>>>>>>>>>> to a simulating
>>>>>>>>>>>>> halt decider is not the same as the direct execution of
>>>>>>>>>>>>> these inputs"?
>>>>>>>>>>>>
>>>>>>>>>>>> That is an actual immutable verified fact.
>>>>>>>>>>>>
>>>>>>>>>>> That's your conclusion from your observations and reasoning.
>>>>>>>>>>> You've
>>>>>>>>>>> dry-run P(P), and it doesn't halt. You've run H on P(P), and it
>>>>>>>>>>> reports "non-halting". You've run P(P), and it halts. So one
>>>>>>>>>>> explanation is the one you've given but, as I said, that
>>>>>>>>>>> explanation
>>>>>>>>>>> has rather far-reaching consequences.
>>>>>>>>>> There is only one explanation. What you call the "dry-run" is
>>>>>>>>>> not that
>>>>>>>>>> same as the P(P). We've known this since the "line 15
>>>>>>>>>> commented out"
>>>>>>>>>> days. There are two computations -- one that is not stopped
>>>>>>>>>> and one
>>>>>>>>>> that is, the "dry-run" and the run, the "simulation of the
>>>>>>>>>> input to
>>>>>>>>>> H(P,P)" and P(P). All PO is doing is trying to find words that
>>>>>>>>>> hide
>>>>>>>>>> what's going on.
>>>>>>>>>>
>>>>>>>>> I'm a scientists, not a mathematician.
>>>>>>>>> The example I always use is that you are doing an energy budget
>>>>>>>>> for tigers.
>>>>>>>>> You work how much they use on running about, lactating,
>>>>>>>>> maintaining their
>>>>>>>>> body temperature, and so on.
>>>>>>>>>
>>>>>>>>> Now let's say that you find that all results are within a few
>>>>>>>>> percentage points
>>>>>>>>> of a similar budget done for lions. You'd instantly accept this
>>>>>>>>> data.
>>>>>>>>>
>>>>>>>>> Now let's say that the results are wildly different from a
>>>>>>>>> previous budget done
>>>>>>>>> for lions. You wouldn't just accept that data. You'd check.
>>>>>>>>> You'd want to
>>>>>>>>> understand the reasons tigers spend far less energy on movement
>>>>>>>>> than lions.
>>>>>>>>>
>>>>>>>>> Now let's say that the result show that tigers use more energy
>>>>>>>>> than they
>>>>>>>>> take in food. Would you instantly conclude that the law of
>>>>>>>>> conservation of
>>>>>>>>> energy must be incorrect?
>>>>>>>>>
>>>>>>>>> The third is what PO is doing.
>>>>>>>> I have no idea what parts of this analogy map to the current
>>>>>>>> situation.
>>>>>>>> PO has no contradictory results about anything. There's no conflict
>>>>>>>> with any established facts in anything he is doing.
>>>>>>>>
>>>>>>> He's dry-run P(P) and established that it doesn't halt. He's
>>>>>>> invoked H on it
>>>>>>> and H reports that it doesn't halt. He's run P(P) and it halts.
>>>>>>>
>>>>>>> So something odd is going on there that needs an explanation.
>>>>>> Then I don't know what you mean by "dry-run" and what needs an
>>>>>> explanation (for me) is your description of what he's doing.
>>>>>> Nothing in
>>>>>> what PO is doing needs to be explained as far as I can see.
>>>>>>
>>>>> "Dry run" means that a human programmer looks at the code, and
>>>>> determines
>>>>> what it does, without actually executing it.
>>>>
>>>> OK. So what value does it have in this case? Do you think PO is
>>>> competent to "dry run" any code at all?
>>>>
>>>> Going back, now, to what you think needs to be resolved:
>>>>
>>>> | He's dry-run P(P) and established that it doesn't halt. He's
>>>> invoked H
>>>> | on it and H reports that it doesn't halt. He's run P(P) and it halts.
>>>>
>>>> The obvious conclusion is that PO's dry run (if he has indeed done such
>>>> a thing) is incorrect. Anyone who eyeballs some case and concludes that
>>>> it does not do what it down when actually run has just made a mistake.
>>>> Do you think it's interesting to find out what mistake PO has made when
>>>> guessing what the code does? If so have fun trying to get the code from
>>>> him...
>>>>
>>>> The more interesting (at least at one time) is fact that H is not
>>>> correct since, by definition, H(X,Y) should report on the "halting" of
>>>> the call X(Y).
>>>>
>>>>> It's a very important technique, because it's not always practical
>>>>> or even
>>>>> possible to run a debugger. Even where a debugger is available, often
>>>>> dry-running will reveal bugs in a fraction of the time.
>>>>
>>>> In this case, we have the undisputed fact that P(P) halts, so there's
>>>> really no value in a "dry run" from a debugging perspective.
>>>>
>>>>> In this case, PO has dry run P(P).
>>>>
>>>> And, if that is indeed what he's done (and I don't think it is) he
>>>> knows
>>>> he's made some mistake in his "dry run".
>>>>
>>>>> That is, he has looked at the source, and
>>>>> worked out what it will do.
>>>>
>>>> But, I hope you agree, he's made some mistake or he's been lying
>>>> when re
>>>> reports that P(P) halts.
>>>>
>>>>> Which is to run an infinite sequence of nested
>>>>> emulations. So it won't halt.
>>>>
>>>> The execution of P(P) does not represent an infinite sequence of nested
>>>> simulations. We know that because P(P) halts.
>>>>
>>>>> H(P,P) also reports "non-halting". So this is
>>>>> powerful evidence that H is correct.
>>>>
>>>> Eh? How is some code eyeballing more compelling evidence than the 100%
>>>> undisputed fact that P(P) halts? How is the opinion of someone who
>>>> can't write a parity checking TM powerful evidence of anything?
>>>>
>>>>> However when he actually executes P(P) on hardware, it terminates.
>>>>> Something isn't right.
>>>>
>>>> Yes.
>>>>
>>>>> PO's explanation is that P(P) has different correct behaviour when
>>>>> run and
>>>>> when emulated by H.
>>>>
>>>> That can't be an explanation of anything because, according to you, he
>>>> is wrong about the dry run of P(P) and an actual run of P(P). Both the
>>>> dry run and the actual run must take account of the fact that H is
>>>> (partially) emulating P(P).
>>>>
>>>>> I can think of an obvious alternative explanation which is much
>>>>> simpler and much less far-reaching in its implications. However
>>>>> despite a lot of coaxing, no-one else seems to have arrived at it.
>>>>
>>>> There is nothing here with any far-reaching implications and since I've
>>>> never shared your explanation, I'm not going to look for an
>>>> alternative.
>>>>
>>>> I don't think he's done a "dry run" at all. He knows P(P) halts so he's
>>>> relying on sophistry. H "aborts" so P never reaches its "ret"
>>>> instruction. That's why P(P) and "the simulation of the inputs to
>>>> H(P,P)" are different. 18 years of work for what? An H that, on the
>>>> basis of his own words, obviously gets the wrong answer.
>>>>
>>> The ordinary semantics of standard C and the conventional x86 language
>>> are the entire semantics required to conclusively prove that H(P,P) does
>>> correctly determine that its correct and complete x86 emulation of its
>>> input would never reach the "ret" instruction (final state) of this
>>> input thus never halts.
>>> That your understanding of the semantics of the x86 language is
>>> insufficient to directly confirm this is less than no rebuttal at all.
>>
>> I assume the semantics of C are defined by the 1989 Standard. The
>> semantics of x86 assembly language are described (not actually
>> authoritatively defined) in other documents. The mapping of C onto
>> the assembly language is far from unique (every compiler could be
>> different) PO appears to using a version of Microsoft's C# compiler.
>>
>
> The COFF object file generated by most any Microsoft C compiler.
> I used Visual Studio 2017 Community Edition.
>
> x86 Instruction Set Reference: https://c9x.me/x86/
>
>> Then we must define how a Turing machine is emulated by a C
>> program. All that is needed of C is the struct  concept and
>> assignment. In that case using C seems unadvisable.
>
> No we don't need this at all. We only need to know that a C function
> that is a pure function of its inputs is Turing equivalent.
>
> https://en.wikipedia.org/wiki/Pure_function
>
> By not using C my five page halt decider becomes hundreds of thousands
> of indecipherable pages of TM description.
>


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

<T_ttK.317387$5fVf.41101@fx09.iad>

  copy mid

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

  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!fx09.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 [ tautology ]
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>
<YZqdnR1GHIpCmiv_nZ2dnUU7_8zNnZ2d@giganews.com>
<ec1c047f-97f1-49df-abf9-cc53d2d9b4e5n@googlegroups.com>
<87a6a1wvjt.fsf@bsb.me.uk> <AMKdnVNiDukN3Cv_nZ2dnUU7_83NnZ2d@giganews.com>
From: Rich...@Damon-Family.org (Richard Damon)
In-Reply-To: <AMKdnVNiDukN3Cv_nZ2dnUU7_83NnZ2d@giganews.com>
Content-Type: text/plain; charset=UTF-8; format=flowed
Content-Transfer-Encoding: 8bit
Lines: 45
Message-ID: <T_ttK.317387$5fVf.41101@fx09.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: Fri, 24 Jun 2022 22:00:17 -0400
X-Received-Bytes: 4082
 by: Richard Damon - Sat, 25 Jun 2022 02:00 UTC

On 6/24/22 6:58 PM, olcott wrote:
> On 6/24/2022 5:23 PM, Ben Bacarisse wrote:
>> Paul N <gw7rib@aol.com> writes:
>>
>>> You say that "H(P,P) is required to to correctly determine that its
>>> correct and complete x86 emulation of its input would never reach the
>>> "ret" instruction of this input".
>>
>> Can I just check that you know this is not what H is supposed to do?  PO
>> has been searching for some from of words that can stir up enough mud
>> that the fact that H is wrong can be to some extent obscured.  He seems
>> to have hit pay dirt with this latest phrasing.
>>
>> Everyone seem happy to talk to PO on his own terms (and that's fine --
>> it's what he posts for), but in the C-function version of the problem,
>> H(X,Y) != 0 if and only if X(Y) "halts".  I lost interest when he
>> stopped talking about this problem which he knows in not decidable.
>>
>
> It is common knowledge (in computer science) that a halt decider must
> compute the mapping from actual its inputs to an accept or reject state
> on the basis of the actual behavior that is actually specified by its
> actual inputs.
>
> The ordinary semantics of standard C and the conventional x86 language
> are the entire semantics required to conclusively prove that H(P,P) does
> correctly determine that its correct and complete x86 emulation of its
> input would never reach the "ret" instruction (final state) of this
> input thus never halts.
>
> THERE IS NO ESCAPE FROM THIS BECAUSE IT IS A TAUTOLOGY.
>

Wrong. If H(P,P) does the correct and complete x86 emulation of its
input, i9t never gives an answer for H(P,P).

Maybe in your mind it makes the dertemination but not return it, but
that isn't the defintion of a decider determinng.

If H(P,P) does make a determination about its simulation of H(P,P) being
non-halting, it does so based on unsound logic, as your logic has it
presume that H DOES a complete and correct emulation, but if it makes
such a determination and returns the non-halting answer, it never did a
complete and correct emulation, so the premise it based its logic on is
refuted.

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

<b2699d2d-40be-4e9b-9612-efb7121d5a8bn@googlegroups.com>

  copy mid

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

  copy link   Newsgroups: comp.theory
X-Received: by 2002:a05:600c:4f84:b0:39c:9897:5295 with SMTP id n4-20020a05600c4f8400b0039c98975295mr2432314wmq.158.1656129702365;
Fri, 24 Jun 2022 21:01:42 -0700 (PDT)
X-Received: by 2002:a0d:ee47:0:b0:2ff:85e6:9e03 with SMTP id
x68-20020a0dee47000000b002ff85e69e03mr2552248ywe.172.1656129701528; Fri, 24
Jun 2022 21:01:41 -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: Fri, 24 Jun 2022 21:01:41 -0700 (PDT)
In-Reply-To: <87fsjtwvut.fsf@bsb.me.uk>
Injection-Info: google-groups.googlegroups.com; posting-host=2a00:23a8:400a:5601:90af:faa2:2f37:e49d;
posting-account=Dz2zqgkAAADlK5MFu78bw3ab-BRFV4Qn
NNTP-Posting-Host: 2a00:23a8:400a:5601:90af:faa2:2f37:e49d
References: <EOydnaeszcdfHS__nZ2dnUU7_83NnZ2d@giganews.com>
<PtvsK.300027$5fVf.158200@fx09.iad> <CaWdnZEntLawFS__nZ2dnUU7_83NnZ2d@giganews.com>
<ccb8af3c-e497-4d6e-8040-826a4e87a6e7n@googlegroups.com> <g9qdnRjZj9uBlS7_nZ2dnUU7_8zNnZ2d@giganews.com>
<0f7ed34c-5aaa-4858-885e-66e16777f599n@googlegroups.com> <87a6a44s02.fsf@bsb.me.uk>
<a9adde1d-ad2c-444c-9b14-88841f5e8783n@googlegroups.com> <87sfnv2e6e.fsf@bsb.me.uk>
<3a337f21-4828-46c4-b5be-87c76cff9db4n@googlegroups.com> <878rplyhj6.fsf@bsb.me.uk>
<b6163094-01b0-4bb4-a3b1-4e48457527a0n@googlegroups.com> <87fsjtwvut.fsf@bsb.me.uk>
User-Agent: G2/1.0
MIME-Version: 1.0
Message-ID: <b2699d2d-40be-4e9b-9612-efb7121d5a8bn@googlegroups.com>
Subject: Re: Technically competent Software engineers can verify this halting
problem proof refutation
From: malcolm....@gmail.com (Malcolm McLean)
Injection-Date: Sat, 25 Jun 2022 04:01:42 +0000
Content-Type: text/plain; charset="UTF-8"
 by: Malcolm McLean - Sat, 25 Jun 2022 04:01 UTC

On Friday, 24 June 2022 at 23:16:30 UTC+1, Ben Bacarisse wrote:
> Malcolm McLean <malcolm.ar...@gmail.com> writes:
>
> > "Dry run" means that a human programmer looks at the code, and determines
> > what it does, without actually executing it.
>
> Going back, now, to what you think needs to be resolved:
> | He's dry-run P(P) and established that it doesn't halt. He's invoked H
> | on it and H reports that it doesn't halt. He's run P(P) and it halts.
> The obvious conclusion is that PO's dry run (if he has indeed done such
> a thing) is incorrect.
>
Exactly.
We do our little energy budget on tigers, and find that tigers spend more energy
than they take in. Well potentially this is dynamite. One explanation is that the
law of conservation of energy is wrong.
Except, before we countenance that explanation, we need to rule out a much
simpler explanation. Which is that our measurements are wrong.

Similarly, PO has worked out what he thinks P(P) should be doing, by dry-running
it, and then actually run P(P) and obtained a different result. He also found that H
agreed with the dry run. It's hard to paraphrase his conclusion, but it is extensive
and far-reaching in its implications. The behaviour of code when run is different
from the correct behaviour of the code when simulated. If that's true, then it has
similar implications for computer science that disproving the conservation law
has for physics.

But the obvious explanation is that the dry-run was incorrect. Lots of people have
suggested why it is incorrect. But they can't actually see the code. PO needs to
understand that no-one will accept the complicated, far-reaching explanation,
until the simple explanation has been ruled out.

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

<t9637e$53p$1@dont-email.me>

  copy mid

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

  copy link   Newsgroups: comp.theory comp.ai.philosophy sci.logic sci.math
Path: i2pn2.org!i2pn.org!eternal-september.org!reader02.eternal-september.org!.POSTED!not-for-mail
From: polco...@gmail.com (olcott)
Newsgroups: comp.theory,comp.ai.philosophy,sci.logic,sci.math
Subject: Re: Technically competent Software engineers can verify this halting
problem proof refutation
Date: Fri, 24 Jun 2022 23:33:47 -0500
Organization: A noiseless patient Spider
Lines: 39
Message-ID: <t9637e$53p$1@dont-email.me>
References: <EOydnaeszcdfHS__nZ2dnUU7_83NnZ2d@giganews.com>
<PtvsK.300027$5fVf.158200@fx09.iad>
<CaWdnZEntLawFS__nZ2dnUU7_83NnZ2d@giganews.com>
<ccb8af3c-e497-4d6e-8040-826a4e87a6e7n@googlegroups.com>
<g9qdnRjZj9uBlS7_nZ2dnUU7_8zNnZ2d@giganews.com>
<0f7ed34c-5aaa-4858-885e-66e16777f599n@googlegroups.com>
<87a6a44s02.fsf@bsb.me.uk>
<a9adde1d-ad2c-444c-9b14-88841f5e8783n@googlegroups.com>
<87sfnv2e6e.fsf@bsb.me.uk>
<3a337f21-4828-46c4-b5be-87c76cff9db4n@googlegroups.com>
<878rplyhj6.fsf@bsb.me.uk>
<b6163094-01b0-4bb4-a3b1-4e48457527a0n@googlegroups.com>
<87fsjtwvut.fsf@bsb.me.uk>
<b2699d2d-40be-4e9b-9612-efb7121d5a8bn@googlegroups.com>
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8; format=flowed
Content-Transfer-Encoding: 7bit
Injection-Date: Sat, 25 Jun 2022 04:33:50 -0000 (UTC)
Injection-Info: reader02.eternal-september.org; posting-host="d350f74acb2096c1581790ca9a067ff4";
logging-data="5241"; mail-complaints-to="abuse@eternal-september.org"; posting-account="U2FsdGVkX1/VPeYEsQbXUldx+VXiE6BT"
User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:91.0) Gecko/20100101
Thunderbird/91.10.0
Cancel-Lock: sha1:ZoM9gX8CSrIR45EtzcGZWPZo8PA=
In-Reply-To: <b2699d2d-40be-4e9b-9612-efb7121d5a8bn@googlegroups.com>
Content-Language: en-US
 by: olcott - Sat, 25 Jun 2022 04:33 UTC

On 6/24/2022 11:01 PM, Malcolm McLean wrote:
> On Friday, 24 June 2022 at 23:16:30 UTC+1, Ben Bacarisse wrote:
>> Malcolm McLean <malcolm.ar...@gmail.com> writes:
>>
>>> "Dry run" means that a human programmer looks at the code, and determines
>>> what it does, without actually executing it.
>>
>> Going back, now, to what you think needs to be resolved:
>> | He's dry-run P(P) and established that it doesn't halt. He's invoked H
>> | on it and H reports that it doesn't halt. He's run P(P) and it halts.
>> The obvious conclusion is that PO's dry run (if he has indeed done such
>> a thing) is incorrect.
>>
> Exactly.
> We do our little energy budget on tigers, and find that tigers spend more energy
> than they take in. Well potentially this is dynamite. One explanation is that the
> law of conservation of energy is wrong.
> Except, before we countenance that explanation, we need to rule out a much
> simpler explanation. Which is that our measurements are wrong.
>
> Similarly, PO has worked out what he thinks P(P) should be doing, by dry-running
> it, and then actually run P(P) and obtained a different result. He also found that H
> agreed with the dry run. It's hard to paraphrase his conclusion, but it is extensive
> and far-reaching in its implications. The behaviour of code when run is different
> from the correct behaviour of the code when simulated. If that's true, then it has
> similar implications for computer science that disproving the conservation law
> has for physics.
>
> But the obvious explanation is that the dry-run was incorrect. Lots of people have
> suggested why it is incorrect. But they can't actually see the code. PO needs to
> understand that no-one will accept the complicated, far-reaching explanation,
> until the simple explanation has been ruled out.

I already proved that the dry run is correct.

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

<fab45955-7bf3-48db-9b97-dc68eb3eb884n@googlegroups.com>

  copy mid

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

  copy link   Newsgroups: comp.theory
X-Received: by 2002:a05:600c:4e10:b0:39c:58a8:f828 with SMTP id b16-20020a05600c4e1000b0039c58a8f828mr7622119wmq.44.1656132612610;
Fri, 24 Jun 2022 21:50:12 -0700 (PDT)
X-Received: by 2002:a81:6507:0:b0:313:cc8d:fd79 with SMTP id
z7-20020a816507000000b00313cc8dfd79mr2541334ywb.319.1656132611960; Fri, 24
Jun 2022 21:50:11 -0700 (PDT)
Path: i2pn2.org!i2pn.org!weretis.net!feeder8.news.weretis.net!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: Fri, 24 Jun 2022 21:50:11 -0700 (PDT)
In-Reply-To: <196dnYFoP-efziv_nZ2dnUU7_8zNnZ2d@giganews.com>
Injection-Info: google-groups.googlegroups.com; posting-host=47.208.151.23; posting-account=7Xc2EwkAAABXMcQfERYamr3b-64IkBws
NNTP-Posting-Host: 47.208.151.23
References: <EOydnaeszcdfHS__nZ2dnUU7_83NnZ2d@giganews.com>
<PtvsK.300027$5fVf.158200@fx09.iad> <CaWdnZEntLawFS__nZ2dnUU7_83NnZ2d@giganews.com>
<ccb8af3c-e497-4d6e-8040-826a4e87a6e7n@googlegroups.com> <g9qdnRjZj9uBlS7_nZ2dnUU7_8zNnZ2d@giganews.com>
<0f7ed34c-5aaa-4858-885e-66e16777f599n@googlegroups.com> <87a6a44s02.fsf@bsb.me.uk>
<a9adde1d-ad2c-444c-9b14-88841f5e8783n@googlegroups.com> <87sfnv2e6e.fsf@bsb.me.uk>
<3a337f21-4828-46c4-b5be-87c76cff9db4n@googlegroups.com> <878rplyhj6.fsf@bsb.me.uk>
<b6163094-01b0-4bb4-a3b1-4e48457527a0n@googlegroups.com> <87fsjtwvut.fsf@bsb.me.uk>
<sq-dnVRwmaVtpCv_nZ2dnUU7_8zNnZ2d@giganews.com> <d4d1011f-c7d4-4dba-b5f7-5747c5b01d10n@googlegroups.com>
<196dnYFoP-efziv_nZ2dnUU7_8zNnZ2d@giganews.com>
User-Agent: G2/1.0
MIME-Version: 1.0
Message-ID: <fab45955-7bf3-48db-9b97-dc68eb3eb884n@googlegroups.com>
Subject: Re: Technically competent Software engineers can verify this halting
problem proof refutation
From: dkleine...@gmail.com (dklei...@gmail.com)
Injection-Date: Sat, 25 Jun 2022 04:50:12 +0000
Content-Type: text/plain; charset="UTF-8"
 by: dklei...@gmail.com - Sat, 25 Jun 2022 04:50 UTC

On Friday, June 24, 2022 at 5:12:57 PM UTC-7, olcott wrote:
> On 6/24/2022 6:58 PM, dklei...@gmail.com wrote:
> > On Friday, June 24, 2022 at 3:25:59 PM UTC-7, olcott wrote:
> >> On 6/24/2022 5:16 PM, Ben Bacarisse wrote:
> >>> Malcolm McLean <malcolm.ar...@gmail.com> writes:
> >>>
> >>>> On Friday, 24 June 2022 at 20:42:56 UTC+1, Ben Bacarisse wrote:
> >>>>> Malcolm McLean <malcolm.ar...@gmail.com> writes:
> >>>>>
> >>>>>> On Thursday, 23 June 2022 at 23:44:12 UTC+1, Ben Bacarisse wrote:
> >>>>>>> Malcolm McLean <malcolm.ar...@gmail.com> writes:
> >>>>>>>
> >>>>>>>> On Wednesday, 22 June 2022 at 16:50:31 UTC+1, Ben Bacarisse wrote:
> >>>>>>>>> Malcolm McLean <malcolm.ar...@gmail.com> writes:
> >>>>>>>>>
> >>>>>>>>>> On Wednesday, 22 June 2022 at 13:16:36 UTC+1, olcott wrote:
> >>>>>>>>>>> On 6/22/2022 2:55 AM, Malcolm McLean wrote:
> >>>>>>>>>>>> On Wednesday, 22 June 2022 at 04:10:45 UTC+1, olcott wrote:
> >>>>>>>>>>>>> On 6/21/2022 9:52 PM, Richard Damon wrote:
> >>>>>>>>>>>>>>
> >>>>>>>>>>>>>> Right, and P(P) reaches the ret instruction of H(P,P) returns 0, so H
> >>>>>>>>>>>>>> was incorrect in its mapping, since the behavior of P(P) is the
> >>>>>>>>>>>>>> DEFINITION of the behavior of H(P,P),
> >>>>>>>>>>>>> Linz and others were aware that: A halt decider must compute the mapping
> >>>>>>>>>>>>> from its inputs to an accept or reject state on the basis of the actual
> >>>>>>>>>>>>> behavior that is actually specified by these inputs.
> >>>>>>>>>>>>> Linz and others made the false assumption that the actual behavior that
> >>>>>>>>>>>>> is actually specified by the inputs to a simulating halt decider is not
> >>>>>>>>>>>>> the same as the direct execution of these inputs. They were unaware of
> >>>>>>>>>>>>> this because no one previously fully examined a simulating halt decider
> >>>>>>>>>>>>> ever before.
> >>>>>>>>>>>>>> especially if that is what P calls
> >>>>>>>>>>>>>> and P is claimed to be built by the Linz template.
> >>>>>>>>>>>>>>
> >>>>>>>>>>>>>> So, either P isn't built right, or H isn't built fight, or H is wrong.
> >>>>>>>>>>>>>
> >>>>>>>>>>>> You've dry-run P(P) and it doesn't halt. Additionally the halt decider H
> >>>>>>>>>>>> reports it as non-halting. So it's reasonable to assume that H is correct.
> >>>>>>>>>>>>
> >>>>>>>>>>>> However, when run, P(P) halts. So what are we to conclude? That "the
> >>>>>>>>>>>> actual behaviour that is actually specified by the inputs to a simulating
> >>>>>>>>>>>> halt decider is not the same as the direct execution of these inputs"?
> >>>>>>>>>>>
> >>>>>>>>>>> That is an actual immutable verified fact.
> >>>>>>>>>>>
> >>>>>>>>>> That's your conclusion from your observations and reasoning. You've
> >>>>>>>>>> dry-run P(P), and it doesn't halt. You've run H on P(P), and it
> >>>>>>>>>> reports "non-halting". You've run P(P), and it halts. So one
> >>>>>>>>>> explanation is the one you've given but, as I said, that explanation
> >>>>>>>>>> has rather far-reaching consequences.
> >>>>>>>>> There is only one explanation. What you call the "dry-run" is not that
> >>>>>>>>> same as the P(P). We've known this since the "line 15 commented out"
> >>>>>>>>> days. There are two computations -- one that is not stopped and one
> >>>>>>>>> that is, the "dry-run" and the run, the "simulation of the input to
> >>>>>>>>> H(P,P)" and P(P). All PO is doing is trying to find words that hide
> >>>>>>>>> what's going on.
> >>>>>>>>>
> >>>>>>>> I'm a scientists, not a mathematician.
> >>>>>>>> The example I always use is that you are doing an energy budget for tigers.
> >>>>>>>> You work how much they use on running about, lactating, maintaining their
> >>>>>>>> body temperature, and so on.
> >>>>>>>>
> >>>>>>>> Now let's say that you find that all results are within a few percentage points
> >>>>>>>> of a similar budget done for lions. You'd instantly accept this data.
> >>>>>>>>
> >>>>>>>> Now let's say that the results are wildly different from a previous budget done
> >>>>>>>> for lions. You wouldn't just accept that data. You'd check. You'd want to
> >>>>>>>> understand the reasons tigers spend far less energy on movement than lions.
> >>>>>>>>
> >>>>>>>> Now let's say that the result show that tigers use more energy than they
> >>>>>>>> take in food. Would you instantly conclude that the law of conservation of
> >>>>>>>> energy must be incorrect?
> >>>>>>>>
> >>>>>>>> The third is what PO is doing.
> >>>>>>> I have no idea what parts of this analogy map to the current situation.
> >>>>>>> PO has no contradictory results about anything. There's no conflict
> >>>>>>> with any established facts in anything he is doing.
> >>>>>>>
> >>>>>> He's dry-run P(P) and established that it doesn't halt. He's invoked H on it
> >>>>>> and H reports that it doesn't halt. He's run P(P) and it halts.
> >>>>>>
> >>>>>> So something odd is going on there that needs an explanation.
> >>>>> Then I don't know what you mean by "dry-run" and what needs an
> >>>>> explanation (for me) is your description of what he's doing. Nothing in
> >>>>> what PO is doing needs to be explained as far as I can see.
> >>>>>
> >>>> "Dry run" means that a human programmer looks at the code, and determines
> >>>> what it does, without actually executing it.
> >>>
> >>> OK. So what value does it have in this case? Do you think PO is
> >>> competent to "dry run" any code at all?
> >>>
> >>> Going back, now, to what you think needs to be resolved:
> >>>
> >>> | He's dry-run P(P) and established that it doesn't halt. He's invoked H
> >>> | on it and H reports that it doesn't halt. He's run P(P) and it halts.
> >>>
> >>> The obvious conclusion is that PO's dry run (if he has indeed done such
> >>> a thing) is incorrect. Anyone who eyeballs some case and concludes that
> >>> it does not do what it down when actually run has just made a mistake.
> >>> Do you think it's interesting to find out what mistake PO has made when
> >>> guessing what the code does? If so have fun trying to get the code from
> >>> him...
> >>>
> >>> The more interesting (at least at one time) is fact that H is not
> >>> correct since, by definition, H(X,Y) should report on the "halting" of
> >>> the call X(Y).
> >>>
> >>>> It's a very important technique, because it's not always practical or even
> >>>> possible to run a debugger. Even where a debugger is available, often
> >>>> dry-running will reveal bugs in a fraction of the time.
> >>>
> >>> In this case, we have the undisputed fact that P(P) halts, so there's
> >>> really no value in a "dry run" from a debugging perspective.
> >>>
> >>>> In this case, PO has dry run P(P).
> >>>
> >>> And, if that is indeed what he's done (and I don't think it is) he knows
> >>> he's made some mistake in his "dry run".
> >>>
> >>>> That is, he has looked at the source, and
> >>>> worked out what it will do.
> >>>
> >>> But, I hope you agree, he's made some mistake or he's been lying when re
> >>> reports that P(P) halts.
> >>>
> >>>> Which is to run an infinite sequence of nested
> >>>> emulations. So it won't halt.
> >>>
> >>> The execution of P(P) does not represent an infinite sequence of nested
> >>> simulations. We know that because P(P) halts.
> >>>
> >>>> H(P,P) also reports "non-halting". So this is
> >>>> powerful evidence that H is correct.
> >>>
> >>> Eh? How is some code eyeballing more compelling evidence than the 100%
> >>> undisputed fact that P(P) halts? How is the opinion of someone who
> >>> can't write a parity checking TM powerful evidence of anything?
> >>>
> >>>> However when he actually executes P(P) on hardware, it terminates.
> >>>> Something isn't right.
> >>>
> >>> Yes.
> >>>
> >>>> PO's explanation is that P(P) has different correct behaviour when run and
> >>>> when emulated by H.
> >>>
> >>> That can't be an explanation of anything because, according to you, he
> >>> is wrong about the dry run of P(P) and an actual run of P(P). Both the
> >>> dry run and the actual run must take account of the fact that H is
> >>> (partially) emulating P(P).
> >>>
> >>>> I can think of an obvious alternative explanation which is much
> >>>> simpler and much less far-reaching in its implications. However
> >>>> despite a lot of coaxing, no-one else seems to have arrived at it.
> >>>
> >>> There is nothing here with any far-reaching implications and since I've
> >>> never shared your explanation, I'm not going to look for an alternative.
> >>>
> >>> I don't think he's done a "dry run" at all. He knows P(P) halts so he's
> >>> relying on sophistry. H "aborts" so P never reaches its "ret"
> >>> instruction. That's why P(P) and "the simulation of the inputs to
> >>> H(P,P)" are different. 18 years of work for what? An H that, on the
> >>> basis of his own words, obviously gets the wrong answer.
> >>>
> >> The ordinary semantics of standard C and the conventional x86 language
> >> are the entire semantics required to conclusively prove that H(P,P) does
> >> correctly determine that its correct and complete x86 emulation of its
> >> input would never reach the "ret" instruction (final state) of this
> >> input thus never halts.
> >> That your understanding of the semantics of the x86 language is
> >> insufficient to directly confirm this is less than no rebuttal at all.
> >
> > I assume the semantics of C are defined by the 1989 Standard. The
> > semantics of x86 assembly language are described (not actually
> > authoritatively defined) in other documents. The mapping of C onto
> > the assembly language is far from unique (every compiler could be
> > different) PO appears to using a version of Microsoft's C# compiler.
> >
> The COFF object file generated by most any Microsoft C compiler.
> I used Visual Studio 2017 Community Edition.
>
> x86 Instruction Set Reference: https://c9x.me/x86/
> > Then we must define how a Turing machine is emulated by a C
> > program. All that is needed of C is the struct concept and
> > assignment. In that case using C seems unadvisable.
> >
> No we don't need this at all. We only need to know that a C function
> that is a pure function of its inputs is Turing equivalent.
>
> https://en.wikipedia.org/wiki/Pure_function

Click here to read the complete article

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

<frudnQE7VPOLCyv_nZ2dnUU7_83NnZ2d@giganews.com>

  copy mid

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

  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: Fri, 24 Jun 2022 23:59:02 -0500
Date: Fri, 24 Jun 2022 23:59:00 -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>
<87a6a44s02.fsf@bsb.me.uk>
<a9adde1d-ad2c-444c-9b14-88841f5e8783n@googlegroups.com>
<87sfnv2e6e.fsf@bsb.me.uk>
<3a337f21-4828-46c4-b5be-87c76cff9db4n@googlegroups.com>
<878rplyhj6.fsf@bsb.me.uk>
<b6163094-01b0-4bb4-a3b1-4e48457527a0n@googlegroups.com>
<87fsjtwvut.fsf@bsb.me.uk> <sq-dnVRwmaVtpCv_nZ2dnUU7_8zNnZ2d@giganews.com>
<d4d1011f-c7d4-4dba-b5f7-5747c5b01d10n@googlegroups.com>
<196dnYFoP-efziv_nZ2dnUU7_8zNnZ2d@giganews.com>
<fab45955-7bf3-48db-9b97-dc68eb3eb884n@googlegroups.com>
From: NoO...@NoWhere.com (olcott)
In-Reply-To: <fab45955-7bf3-48db-9b97-dc68eb3eb884n@googlegroups.com>
Content-Type: text/plain; charset=UTF-8; format=flowed
Content-Transfer-Encoding: 7bit
Message-ID: <frudnQE7VPOLCyv_nZ2dnUU7_83NnZ2d@giganews.com>
Lines: 218
X-Usenet-Provider: http://www.giganews.com
X-Trace: sv3-JSSOscUTK8QmsRvQNmxEOX5EbrptxD+wde2rDnNc1M2nMqrZoyem1Ohzl60VTfOpPvn4QnjiPoDOo9r!tdD2IODI4G38VM8WWbSLNuggcgTGM3nUENqes/AHZPqbirlOmY1XBNZVeKlKBSu3tD5utj5FiV0F
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: 13287
 by: olcott - Sat, 25 Jun 2022 04:59 UTC

On 6/24/2022 11:50 PM, dklei...@gmail.com wrote:
> On Friday, June 24, 2022 at 5:12:57 PM UTC-7, olcott wrote:
>> On 6/24/2022 6:58 PM, dklei...@gmail.com wrote:
>>> On Friday, June 24, 2022 at 3:25:59 PM UTC-7, olcott wrote:
>>>> On 6/24/2022 5:16 PM, Ben Bacarisse wrote:
>>>>> Malcolm McLean <malcolm.ar...@gmail.com> writes:
>>>>>
>>>>>> On Friday, 24 June 2022 at 20:42:56 UTC+1, Ben Bacarisse wrote:
>>>>>>> Malcolm McLean <malcolm.ar...@gmail.com> writes:
>>>>>>>
>>>>>>>> On Thursday, 23 June 2022 at 23:44:12 UTC+1, Ben Bacarisse wrote:
>>>>>>>>> Malcolm McLean <malcolm.ar...@gmail.com> writes:
>>>>>>>>>
>>>>>>>>>> On Wednesday, 22 June 2022 at 16:50:31 UTC+1, Ben Bacarisse wrote:
>>>>>>>>>>> Malcolm McLean <malcolm.ar...@gmail.com> writes:
>>>>>>>>>>>
>>>>>>>>>>>> On Wednesday, 22 June 2022 at 13:16:36 UTC+1, olcott wrote:
>>>>>>>>>>>>> On 6/22/2022 2:55 AM, Malcolm McLean wrote:
>>>>>>>>>>>>>> On Wednesday, 22 June 2022 at 04:10:45 UTC+1, olcott wrote:
>>>>>>>>>>>>>>> On 6/21/2022 9:52 PM, Richard Damon wrote:
>>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>>> Right, and P(P) reaches the ret instruction of H(P,P) returns 0, so H
>>>>>>>>>>>>>>>> was incorrect in its mapping, since the behavior of P(P) is the
>>>>>>>>>>>>>>>> DEFINITION of the behavior of H(P,P),
>>>>>>>>>>>>>>> Linz and others were aware that: A halt decider must compute the mapping
>>>>>>>>>>>>>>> from its inputs to an accept or reject state on the basis of the actual
>>>>>>>>>>>>>>> behavior that is actually specified by these inputs.
>>>>>>>>>>>>>>> Linz and others made the false assumption that the actual behavior that
>>>>>>>>>>>>>>> is actually specified by the inputs to a simulating halt decider is not
>>>>>>>>>>>>>>> the same as the direct execution of these inputs. They were unaware of
>>>>>>>>>>>>>>> this because no one previously fully examined a simulating halt decider
>>>>>>>>>>>>>>> ever before.
>>>>>>>>>>>>>>>> especially if that is what P calls
>>>>>>>>>>>>>>>> and P is claimed to be built by the Linz template.
>>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>>> So, either P isn't built right, or H isn't built fight, or H is wrong.
>>>>>>>>>>>>>>>
>>>>>>>>>>>>>> You've dry-run P(P) and it doesn't halt. Additionally the halt decider H
>>>>>>>>>>>>>> reports it as non-halting. So it's reasonable to assume that H is correct.
>>>>>>>>>>>>>>
>>>>>>>>>>>>>> However, when run, P(P) halts. So what are we to conclude? That "the
>>>>>>>>>>>>>> actual behaviour that is actually specified by the inputs to a simulating
>>>>>>>>>>>>>> halt decider is not the same as the direct execution of these inputs"?
>>>>>>>>>>>>>
>>>>>>>>>>>>> That is an actual immutable verified fact.
>>>>>>>>>>>>>
>>>>>>>>>>>> That's your conclusion from your observations and reasoning. You've
>>>>>>>>>>>> dry-run P(P), and it doesn't halt. You've run H on P(P), and it
>>>>>>>>>>>> reports "non-halting". You've run P(P), and it halts. So one
>>>>>>>>>>>> explanation is the one you've given but, as I said, that explanation
>>>>>>>>>>>> has rather far-reaching consequences.
>>>>>>>>>>> There is only one explanation. What you call the "dry-run" is not that
>>>>>>>>>>> same as the P(P). We've known this since the "line 15 commented out"
>>>>>>>>>>> days. There are two computations -- one that is not stopped and one
>>>>>>>>>>> that is, the "dry-run" and the run, the "simulation of the input to
>>>>>>>>>>> H(P,P)" and P(P). All PO is doing is trying to find words that hide
>>>>>>>>>>> what's going on.
>>>>>>>>>>>
>>>>>>>>>> I'm a scientists, not a mathematician.
>>>>>>>>>> The example I always use is that you are doing an energy budget for tigers.
>>>>>>>>>> You work how much they use on running about, lactating, maintaining their
>>>>>>>>>> body temperature, and so on.
>>>>>>>>>>
>>>>>>>>>> Now let's say that you find that all results are within a few percentage points
>>>>>>>>>> of a similar budget done for lions. You'd instantly accept this data.
>>>>>>>>>>
>>>>>>>>>> Now let's say that the results are wildly different from a previous budget done
>>>>>>>>>> for lions. You wouldn't just accept that data. You'd check. You'd want to
>>>>>>>>>> understand the reasons tigers spend far less energy on movement than lions.
>>>>>>>>>>
>>>>>>>>>> Now let's say that the result show that tigers use more energy than they
>>>>>>>>>> take in food. Would you instantly conclude that the law of conservation of
>>>>>>>>>> energy must be incorrect?
>>>>>>>>>>
>>>>>>>>>> The third is what PO is doing.
>>>>>>>>> I have no idea what parts of this analogy map to the current situation.
>>>>>>>>> PO has no contradictory results about anything. There's no conflict
>>>>>>>>> with any established facts in anything he is doing.
>>>>>>>>>
>>>>>>>> He's dry-run P(P) and established that it doesn't halt. He's invoked H on it
>>>>>>>> and H reports that it doesn't halt. He's run P(P) and it halts.
>>>>>>>>
>>>>>>>> So something odd is going on there that needs an explanation.
>>>>>>> Then I don't know what you mean by "dry-run" and what needs an
>>>>>>> explanation (for me) is your description of what he's doing. Nothing in
>>>>>>> what PO is doing needs to be explained as far as I can see.
>>>>>>>
>>>>>> "Dry run" means that a human programmer looks at the code, and determines
>>>>>> what it does, without actually executing it.
>>>>>
>>>>> OK. So what value does it have in this case? Do you think PO is
>>>>> competent to "dry run" any code at all?
>>>>>
>>>>> Going back, now, to what you think needs to be resolved:
>>>>>
>>>>> | He's dry-run P(P) and established that it doesn't halt. He's invoked H
>>>>> | on it and H reports that it doesn't halt. He's run P(P) and it halts.
>>>>>
>>>>> The obvious conclusion is that PO's dry run (if he has indeed done such
>>>>> a thing) is incorrect. Anyone who eyeballs some case and concludes that
>>>>> it does not do what it down when actually run has just made a mistake.
>>>>> Do you think it's interesting to find out what mistake PO has made when
>>>>> guessing what the code does? If so have fun trying to get the code from
>>>>> him...
>>>>>
>>>>> The more interesting (at least at one time) is fact that H is not
>>>>> correct since, by definition, H(X,Y) should report on the "halting" of
>>>>> the call X(Y).
>>>>>
>>>>>> It's a very important technique, because it's not always practical or even
>>>>>> possible to run a debugger. Even where a debugger is available, often
>>>>>> dry-running will reveal bugs in a fraction of the time.
>>>>>
>>>>> In this case, we have the undisputed fact that P(P) halts, so there's
>>>>> really no value in a "dry run" from a debugging perspective.
>>>>>
>>>>>> In this case, PO has dry run P(P).
>>>>>
>>>>> And, if that is indeed what he's done (and I don't think it is) he knows
>>>>> he's made some mistake in his "dry run".
>>>>>
>>>>>> That is, he has looked at the source, and
>>>>>> worked out what it will do.
>>>>>
>>>>> But, I hope you agree, he's made some mistake or he's been lying when re
>>>>> reports that P(P) halts.
>>>>>
>>>>>> Which is to run an infinite sequence of nested
>>>>>> emulations. So it won't halt.
>>>>>
>>>>> The execution of P(P) does not represent an infinite sequence of nested
>>>>> simulations. We know that because P(P) halts.
>>>>>
>>>>>> H(P,P) also reports "non-halting". So this is
>>>>>> powerful evidence that H is correct.
>>>>>
>>>>> Eh? How is some code eyeballing more compelling evidence than the 100%
>>>>> undisputed fact that P(P) halts? How is the opinion of someone who
>>>>> can't write a parity checking TM powerful evidence of anything?
>>>>>
>>>>>> However when he actually executes P(P) on hardware, it terminates.
>>>>>> Something isn't right.
>>>>>
>>>>> Yes.
>>>>>
>>>>>> PO's explanation is that P(P) has different correct behaviour when run and
>>>>>> when emulated by H.
>>>>>
>>>>> That can't be an explanation of anything because, according to you, he
>>>>> is wrong about the dry run of P(P) and an actual run of P(P). Both the
>>>>> dry run and the actual run must take account of the fact that H is
>>>>> (partially) emulating P(P).
>>>>>
>>>>>> I can think of an obvious alternative explanation which is much
>>>>>> simpler and much less far-reaching in its implications. However
>>>>>> despite a lot of coaxing, no-one else seems to have arrived at it.
>>>>>
>>>>> There is nothing here with any far-reaching implications and since I've
>>>>> never shared your explanation, I'm not going to look for an alternative.
>>>>>
>>>>> I don't think he's done a "dry run" at all. He knows P(P) halts so he's
>>>>> relying on sophistry. H "aborts" so P never reaches its "ret"
>>>>> instruction. That's why P(P) and "the simulation of the inputs to
>>>>> H(P,P)" are different. 18 years of work for what? An H that, on the
>>>>> basis of his own words, obviously gets the wrong answer.
>>>>>
>>>> The ordinary semantics of standard C and the conventional x86 language
>>>> are the entire semantics required to conclusively prove that H(P,P) does
>>>> correctly determine that its correct and complete x86 emulation of its
>>>> input would never reach the "ret" instruction (final state) of this
>>>> input thus never halts.
>>>> That your understanding of the semantics of the x86 language is
>>>> insufficient to directly confirm this is less than no rebuttal at all.
>>>
>>> I assume the semantics of C are defined by the 1989 Standard. The
>>> semantics of x86 assembly language are described (not actually
>>> authoritatively defined) in other documents. The mapping of C onto
>>> the assembly language is far from unique (every compiler could be
>>> different) PO appears to using a version of Microsoft's C# compiler.
>>>
>> The COFF object file generated by most any Microsoft C compiler.
>> I used Visual Studio 2017 Community Edition.
>>
>> x86 Instruction Set Reference: https://c9x.me/x86/
>>> Then we must define how a Turing machine is emulated by a C
>>> program. All that is needed of C is the struct concept and
>>> assignment. In that case using C seems unadvisable.
>>>
>> No we don't need this at all. We only need to know that a C function
>> that is a pure function of its inputs is Turing equivalent.
>>
>> https://en.wikipedia.org/wiki/Pure_function
>
> You are jumping too far in one step. What I am asking is equivalent to:
> Given a Turing Machine how do its steps map into C and thence into x86?
> No C functions are involved.
>


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

<20edb990-f33e-4f3b-bc59-6cebf9f9def8n@googlegroups.com>

  copy mid

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

  copy link   Newsgroups: comp.theory
X-Received: by 2002:adf:ec02:0:b0:21b:931c:cf78 with SMTP id x2-20020adfec02000000b0021b931ccf78mr2092697wrn.188.1656133757488;
Fri, 24 Jun 2022 22:09:17 -0700 (PDT)
X-Received: by 2002:a25:b701:0:b0:66c:826c:c7bd with SMTP id
t1-20020a25b701000000b0066c826cc7bdmr2831619ybj.52.1656133756926; Fri, 24 Jun
2022 22:09:16 -0700 (PDT)
Path: i2pn2.org!i2pn.org!news.neodome.net!news.ortolo.eu!fdn.fr!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: Fri, 24 Jun 2022 22:09:16 -0700 (PDT)
In-Reply-To: <t9637e$53p$1@dont-email.me>
Injection-Info: google-groups.googlegroups.com; posting-host=2a00:23a8:400a:5601:90af:faa2:2f37:e49d;
posting-account=Dz2zqgkAAADlK5MFu78bw3ab-BRFV4Qn
NNTP-Posting-Host: 2a00:23a8:400a:5601:90af:faa2:2f37:e49d
References: <EOydnaeszcdfHS__nZ2dnUU7_83NnZ2d@giganews.com>
<PtvsK.300027$5fVf.158200@fx09.iad> <CaWdnZEntLawFS__nZ2dnUU7_83NnZ2d@giganews.com>
<ccb8af3c-e497-4d6e-8040-826a4e87a6e7n@googlegroups.com> <g9qdnRjZj9uBlS7_nZ2dnUU7_8zNnZ2d@giganews.com>
<0f7ed34c-5aaa-4858-885e-66e16777f599n@googlegroups.com> <87a6a44s02.fsf@bsb.me.uk>
<a9adde1d-ad2c-444c-9b14-88841f5e8783n@googlegroups.com> <87sfnv2e6e.fsf@bsb.me.uk>
<3a337f21-4828-46c4-b5be-87c76cff9db4n@googlegroups.com> <878rplyhj6.fsf@bsb.me.uk>
<b6163094-01b0-4bb4-a3b1-4e48457527a0n@googlegroups.com> <87fsjtwvut.fsf@bsb.me.uk>
<b2699d2d-40be-4e9b-9612-efb7121d5a8bn@googlegroups.com> <t9637e$53p$1@dont-email.me>
User-Agent: G2/1.0
MIME-Version: 1.0
Message-ID: <20edb990-f33e-4f3b-bc59-6cebf9f9def8n@googlegroups.com>
Subject: Re: Technically competent Software engineers can verify this halting
problem proof refutation
From: malcolm....@gmail.com (Malcolm McLean)
Injection-Date: Sat, 25 Jun 2022 05:09:17 +0000
Content-Type: text/plain; charset="UTF-8"
 by: Malcolm McLean - Sat, 25 Jun 2022 05:09 UTC

On Saturday, 25 June 2022 at 05:33:53 UTC+1, olcott wrote:
> On 6/24/2022 11:01 PM, Malcolm McLean wrote:
> > On Friday, 24 June 2022 at 23:16:30 UTC+1, Ben Bacarisse wrote:
> >> Malcolm McLean <malcolm.ar...@gmail.com> writes:
> >>
> >>> "Dry run" means that a human programmer looks at the code, and determines
> >>> what it does, without actually executing it.
> >>
> >> Going back, now, to what you think needs to be resolved:
> >> | He's dry-run P(P) and established that it doesn't halt. He's invoked H
> >> | on it and H reports that it doesn't halt. He's run P(P) and it halts.
> >> The obvious conclusion is that PO's dry run (if he has indeed done such
> >> a thing) is incorrect.
> >>
> > Exactly.
> > We do our little energy budget on tigers, and find that tigers spend more energy
> > than they take in. Well potentially this is dynamite. One explanation is that the
> > law of conservation of energy is wrong.
> > Except, before we countenance that explanation, we need to rule out a much
> > simpler explanation. Which is that our measurements are wrong.
> >
> > Similarly, PO has worked out what he thinks P(P) should be doing, by dry-running
> > it, and then actually run P(P) and obtained a different result. He also found that H
> > agreed with the dry run. It's hard to paraphrase his conclusion, but it is extensive
> > and far-reaching in its implications. The behaviour of code when run is different
> > from the correct behaviour of the code when simulated. If that's true, then it has
> > similar implications for computer science that disproving the conservation law
> > has for physics.
> >
> > But the obvious explanation is that the dry-run was incorrect. Lots of people have
> > suggested why it is incorrect. But they can't actually see the code. PO needs to
> > understand that no-one will accept the complicated, far-reaching explanation,
> > until the simple explanation has been ruled out.
>
> I already proved that the dry run is correct.
>
Someone reports that tigers use more energy than they take in, and concludes that
the energy conservation law is incorrect.
Naturally, everyone is going to say "There must be some mistake. How were your
measurements taken? Show us your calculations, maybe you've got your sums wrong."

Now if they are also uncooperative about sharing the details of the investigation,
those reservations will be magnified. There can be legitimate reasons. Tigers are
rare and need to be conserved, you can't let anyone who wants have access to the
tigers to try to repeat the measurements. But there's also a common illegitimate
reason put forwards by people who make extraordinary claims. If the claims were
unexceptional, such as that tigers have a similar energy budget to lions, then no-one
would be saying "Show me your notebooks. How do you know that calorimeter was
calibrated accurately? What's the name of the person who took that measurement
and can I interview them?" Extraordinary claims are put through the wringer in a way
that ordinary ones are not. I've seen complaints about this from parapsychologists.
But if you're going to claim to have discovered a new physical principle, you need
to present rock solid evidence.

In this case, we can't see H. We can only suggest explanations for its behaviour.

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

<wtidnY0ehdBiBiv_nZ2dnUU7_83NnZ2d@giganews.com>

  copy mid

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

  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!news.giganews.com.POSTED!not-for-mail
NNTP-Posting-Date: Sat, 25 Jun 2022 00:24:15 -0500
Date: Sat, 25 Jun 2022 00:24: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
Content-Language: en-US
Newsgroups: comp.theory
References: <EOydnaeszcdfHS__nZ2dnUU7_83NnZ2d@giganews.com>
<PtvsK.300027$5fVf.158200@fx09.iad>
<CaWdnZEntLawFS__nZ2dnUU7_83NnZ2d@giganews.com>
<ccb8af3c-e497-4d6e-8040-826a4e87a6e7n@googlegroups.com>
<g9qdnRjZj9uBlS7_nZ2dnUU7_8zNnZ2d@giganews.com>
<0f7ed34c-5aaa-4858-885e-66e16777f599n@googlegroups.com>
<87a6a44s02.fsf@bsb.me.uk>
<a9adde1d-ad2c-444c-9b14-88841f5e8783n@googlegroups.com>
<87sfnv2e6e.fsf@bsb.me.uk>
<3a337f21-4828-46c4-b5be-87c76cff9db4n@googlegroups.com>
<878rplyhj6.fsf@bsb.me.uk>
<b6163094-01b0-4bb4-a3b1-4e48457527a0n@googlegroups.com>
<87fsjtwvut.fsf@bsb.me.uk>
<b2699d2d-40be-4e9b-9612-efb7121d5a8bn@googlegroups.com>
<t9637e$53p$1@dont-email.me>
<20edb990-f33e-4f3b-bc59-6cebf9f9def8n@googlegroups.com>
From: NoO...@NoWhere.com (olcott)
In-Reply-To: <20edb990-f33e-4f3b-bc59-6cebf9f9def8n@googlegroups.com>
Content-Type: text/plain; charset=UTF-8; format=flowed
Content-Transfer-Encoding: 7bit
Message-ID: <wtidnY0ehdBiBiv_nZ2dnUU7_83NnZ2d@giganews.com>
Lines: 66
X-Usenet-Provider: http://www.giganews.com
X-Trace: sv3-2d0qiexp7UP2P3KJ1lVEZqJcm4xim1wkWZ3dRHrBKd+ckJ1i3J51wUF1VV+R4078oL/1RzRKv+9LGsB!WYr1pVjz1/JJgIYD0fJkMkkR+4B3myDGvno/tHcD8iNXkd9JKSPKjPTFVCn3RbftaJKknUXIpzfl
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: 5634
 by: olcott - Sat, 25 Jun 2022 05:24 UTC

On 6/25/2022 12:09 AM, Malcolm McLean wrote:
> On Saturday, 25 June 2022 at 05:33:53 UTC+1, olcott wrote:
>> On 6/24/2022 11:01 PM, Malcolm McLean wrote:
>>> On Friday, 24 June 2022 at 23:16:30 UTC+1, Ben Bacarisse wrote:
>>>> Malcolm McLean <malcolm.ar...@gmail.com> writes:
>>>>
>>>>> "Dry run" means that a human programmer looks at the code, and determines
>>>>> what it does, without actually executing it.
>>>>
>>>> Going back, now, to what you think needs to be resolved:
>>>> | He's dry-run P(P) and established that it doesn't halt. He's invoked H
>>>> | on it and H reports that it doesn't halt. He's run P(P) and it halts.
>>>> The obvious conclusion is that PO's dry run (if he has indeed done such
>>>> a thing) is incorrect.
>>>>
>>> Exactly.
>>> We do our little energy budget on tigers, and find that tigers spend more energy
>>> than they take in. Well potentially this is dynamite. One explanation is that the
>>> law of conservation of energy is wrong.
>>> Except, before we countenance that explanation, we need to rule out a much
>>> simpler explanation. Which is that our measurements are wrong.
>>>
>>> Similarly, PO has worked out what he thinks P(P) should be doing, by dry-running
>>> it, and then actually run P(P) and obtained a different result. He also found that H
>>> agreed with the dry run. It's hard to paraphrase his conclusion, but it is extensive
>>> and far-reaching in its implications. The behaviour of code when run is different
>>> from the correct behaviour of the code when simulated. If that's true, then it has
>>> similar implications for computer science that disproving the conservation law
>>> has for physics.
>>>
>>> But the obvious explanation is that the dry-run was incorrect. Lots of people have
>>> suggested why it is incorrect. But they can't actually see the code. PO needs to
>>> understand that no-one will accept the complicated, far-reaching explanation,
>>> until the simple explanation has been ruled out.
>>
>> I already proved that the dry run is correct.
>>
> Someone reports that tigers use more energy than they take in, and concludes that
> the energy conservation law is incorrect.
> Naturally, everyone is going to say "There must be some mistake. How were your
> measurements taken? Show us your calculations, maybe you've got your sums wrong."
>
> Now if they are also uncooperative about sharing the details of the investigation,
> those reservations will be magnified. There can be legitimate reasons. Tigers are
> rare and need to be conserved, you can't let anyone who wants have access to the
> tigers to try to repeat the measurements. But there's also a common illegitimate
> reason put forwards by people who make extraordinary claims. If the claims were
> unexceptional, such as that tigers have a similar energy budget to lions, then no-one
> would be saying "Show me your notebooks. How do you know that calorimeter was
> calibrated accurately? What's the name of the person who took that measurement
> and can I interview them?" Extraordinary claims are put through the wringer in a way
> that ordinary ones are not. I've seen complaints about this from parapsychologists.
> But if you're going to claim to have discovered a new physical principle, you need
> to present rock solid evidence.
>
> In this case, we can't see H. We can only suggest explanations for its behaviour.

It seems that you simply lack the technical competence.
Go back and look at my proof again.

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

<8328cb40-6b3c-4f89-a2ad-4054a6b466a6n@googlegroups.com>

  copy mid

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

  copy link   Newsgroups: comp.theory
X-Received: by 2002:a5d:6309:0:b0:21b:9455:cf with SMTP id i9-20020a5d6309000000b0021b945500cfmr2723902wru.354.1656142333587;
Sat, 25 Jun 2022 00:32:13 -0700 (PDT)
X-Received: by 2002:a81:a092:0:b0:318:5c89:a935 with SMTP id
x140-20020a81a092000000b003185c89a935mr3237652ywg.383.1656142332960; Sat, 25
Jun 2022 00:32:12 -0700 (PDT)
Path: i2pn2.org!i2pn.org!weretis.net!feeder8.news.weretis.net!proxad.net!feeder1-2.proxad.net!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: Sat, 25 Jun 2022 00:32:12 -0700 (PDT)
In-Reply-To: <wtidnY0ehdBiBiv_nZ2dnUU7_83NnZ2d@giganews.com>
Injection-Info: google-groups.googlegroups.com; posting-host=2a00:23a8:400a:5601:90af:faa2:2f37:e49d;
posting-account=Dz2zqgkAAADlK5MFu78bw3ab-BRFV4Qn
NNTP-Posting-Host: 2a00:23a8:400a:5601:90af:faa2:2f37:e49d
References: <EOydnaeszcdfHS__nZ2dnUU7_83NnZ2d@giganews.com>
<PtvsK.300027$5fVf.158200@fx09.iad> <CaWdnZEntLawFS__nZ2dnUU7_83NnZ2d@giganews.com>
<ccb8af3c-e497-4d6e-8040-826a4e87a6e7n@googlegroups.com> <g9qdnRjZj9uBlS7_nZ2dnUU7_8zNnZ2d@giganews.com>
<0f7ed34c-5aaa-4858-885e-66e16777f599n@googlegroups.com> <87a6a44s02.fsf@bsb.me.uk>
<a9adde1d-ad2c-444c-9b14-88841f5e8783n@googlegroups.com> <87sfnv2e6e.fsf@bsb.me.uk>
<3a337f21-4828-46c4-b5be-87c76cff9db4n@googlegroups.com> <878rplyhj6.fsf@bsb.me.uk>
<b6163094-01b0-4bb4-a3b1-4e48457527a0n@googlegroups.com> <87fsjtwvut.fsf@bsb.me.uk>
<b2699d2d-40be-4e9b-9612-efb7121d5a8bn@googlegroups.com> <t9637e$53p$1@dont-email.me>
<20edb990-f33e-4f3b-bc59-6cebf9f9def8n@googlegroups.com> <wtidnY0ehdBiBiv_nZ2dnUU7_83NnZ2d@giganews.com>
User-Agent: G2/1.0
MIME-Version: 1.0
Message-ID: <8328cb40-6b3c-4f89-a2ad-4054a6b466a6n@googlegroups.com>
Subject: Re: Technically competent Software engineers can verify this halting
problem proof refutation
From: malcolm....@gmail.com (Malcolm McLean)
Injection-Date: Sat, 25 Jun 2022 07:32:13 +0000
Content-Type: text/plain; charset="UTF-8"
 by: Malcolm McLean - Sat, 25 Jun 2022 07:32 UTC

On Saturday, 25 June 2022 at 06:24:23 UTC+1, olcott wrote:
> On 6/25/2022 12:09 AM, Malcolm McLean wrote:
> > On Saturday, 25 June 2022 at 05:33:53 UTC+1, olcott wrote:
> >> On 6/24/2022 11:01 PM, Malcolm McLean wrote:
> >>> On Friday, 24 June 2022 at 23:16:30 UTC+1, Ben Bacarisse wrote:
> >>>> Malcolm McLean <malcolm.ar...@gmail.com> writes:
> >>>>
> >>>>> "Dry run" means that a human programmer looks at the code, and determines
> >>>>> what it does, without actually executing it.
> >>>>
> >>>> Going back, now, to what you think needs to be resolved:
> >>>> | He's dry-run P(P) and established that it doesn't halt. He's invoked H
> >>>> | on it and H reports that it doesn't halt. He's run P(P) and it halts.
> >>>> The obvious conclusion is that PO's dry run (if he has indeed done such
> >>>> a thing) is incorrect.
> >>>>
> >>> Exactly.
> >>> We do our little energy budget on tigers, and find that tigers spend more energy
> >>> than they take in. Well potentially this is dynamite. One explanation is that the
> >>> law of conservation of energy is wrong.
> >>> Except, before we countenance that explanation, we need to rule out a much
> >>> simpler explanation. Which is that our measurements are wrong.
> >>>
> >>> Similarly, PO has worked out what he thinks P(P) should be doing, by dry-running
> >>> it, and then actually run P(P) and obtained a different result. He also found that H
> >>> agreed with the dry run. It's hard to paraphrase his conclusion, but it is extensive
> >>> and far-reaching in its implications. The behaviour of code when run is different
> >>> from the correct behaviour of the code when simulated. If that's true, then it has
> >>> similar implications for computer science that disproving the conservation law
> >>> has for physics.
> >>>
> >>> But the obvious explanation is that the dry-run was incorrect. Lots of people have
> >>> suggested why it is incorrect. But they can't actually see the code. PO needs to
> >>> understand that no-one will accept the complicated, far-reaching explanation,
> >>> until the simple explanation has been ruled out.
> >>
> >> I already proved that the dry run is correct.
> >>
> > Someone reports that tigers use more energy than they take in, and concludes that
> > the energy conservation law is incorrect.
> > Naturally, everyone is going to say "There must be some mistake. How were your
> > measurements taken? Show us your calculations, maybe you've got your sums wrong."
> >
> > Now if they are also uncooperative about sharing the details of the investigation,
> > those reservations will be magnified. There can be legitimate reasons. Tigers are
> > rare and need to be conserved, you can't let anyone who wants have access to the
> > tigers to try to repeat the measurements. But there's also a common illegitimate
> > reason put forwards by people who make extraordinary claims. If the claims were
> > unexceptional, such as that tigers have a similar energy budget to lions, then no-one
> > would be saying "Show me your notebooks. How do you know that calorimeter was
> > calibrated accurately? What's the name of the person who took that measurement
> > and can I interview them?" Extraordinary claims are put through the wringer in a way
> > that ordinary ones are not. I've seen complaints about this from parapsychologists.
> > But if you're going to claim to have discovered a new physical principle, you need
> > to present rock solid evidence.
> >
> > In this case, we can't see H. We can only suggest explanations for its behaviour.
> It seems that you simply lack the technical competence.
> Go back and look at my proof again.
>
Sorry no. I've been programming since I was a boy and I have a PhD in a computational-
related subject. I'm confident of my technical abilities. What I can't do of course
is tell you exactly what is going on in code I cannot see. I've got a pretty good idea,
but I can only reconstruct on the basis of what you tell me. Ben thinks that I've
got it wrong and in fact there are no nested emulations at all. I've no way of actually
disproving that idea without seeing H.

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

<ba57458e-02e2-4d31-af47-972c96a34871n@googlegroups.com>

  copy mid

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

  copy link   Newsgroups: comp.theory
X-Received: by 2002:adf:f147:0:b0:21b:9ff4:9e08 with SMTP id y7-20020adff147000000b0021b9ff49e08mr3490060wro.608.1656158212845;
Sat, 25 Jun 2022 04:56:52 -0700 (PDT)
X-Received: by 2002:a81:6507:0:b0:313:cc8d:fd79 with SMTP id
z7-20020a816507000000b00313cc8dfd79mr3905835ywb.319.1656158212387; Sat, 25
Jun 2022 04:56:52 -0700 (PDT)
Path: i2pn2.org!i2pn.org!usenet.goja.nl.eu.org!3.eu.feeder.erje.net!feeder.erje.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: Sat, 25 Jun 2022 04:56:52 -0700 (PDT)
In-Reply-To: <Uaudnfan2u21gyv_nZ2dnUU7_83NnZ2d@giganews.com>
Injection-Info: google-groups.googlegroups.com; posting-host=89.240.148.226; posting-account=0B-afgoAAABP6274zLUJKa8ZpdIdhsYx
NNTP-Posting-Host: 89.240.148.226
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> <YZqdnR1GHIpCmiv_nZ2dnUU7_8zNnZ2d@giganews.com>
<ec1c047f-97f1-49df-abf9-cc53d2d9b4e5n@googlegroups.com> <Uaudnfan2u21gyv_nZ2dnUU7_83NnZ2d@giganews.com>
User-Agent: G2/1.0
MIME-Version: 1.0
Message-ID: <ba57458e-02e2-4d31-af47-972c96a34871n@googlegroups.com>
Subject: Re: Technically competent Software engineers can verify this halting
problem proof refutation [ truism ]
From: gw7...@aol.com (Paul N)
Injection-Date: Sat, 25 Jun 2022 11:56:52 +0000
Content-Type: text/plain; charset="UTF-8"
Content-Transfer-Encoding: quoted-printable
 by: Paul N - Sat, 25 Jun 2022 11:56 UTC

On Friday, June 24, 2022 at 9:27:27 PM UTC+1, olcott wrote:
> On 6/24/2022 3:05 PM, Paul N wrote:
> > On Friday, June 24, 2022 at 7:52:22 PM UTC+1, 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.
> >> From a purely software engineering perspective H(P,P) is required to to
> >> correctly determine that its correct and complete x86 emulation of its
> >> input would never reach the "ret" instruction of this input and H must
> >> do this in a finite number of steps.
> >>
> >> The ordinary semantics of standard C and the conventional x86 language
> >> are the entire semantics required to conclusively prove that H(P,P) does
> >> correctly determine that its correct and complete x86 emulation of its
> >> input would never reach the "ret" instruction.
> >>
> >> That you disagree with easily verified software engineering when you
> >> already know that this software engineering is correct speaks loads
> >> about your character.
> >>
> >> The only computer science that need be added to this is that the "ret"
> >> instruction is the final state of P and that a sequence of
> >> configurations that cannot possibly reach its final state is a
> >> non-halting sequence.
> >
> > You say that "H(P,P) is required to to correctly determine that its correct and complete x86 emulation of its input would never reach the "ret" instruction of this input". You seem to be assuming that H does an emulation of P, that this emulation includes emulating the call to H, that this call to H would start emulating the call to P, etc, etc, and so the call to P does not terminate.
> >
> Thanks for continuing to review this.
>
> No assumptions two years of software development derived fully
> operational software that conclusively proves this.


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

<oeEtK.5560$Ae2.2515@fx35.iad>

  copy mid

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

  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!fx35.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>
<87a6a44s02.fsf@bsb.me.uk>
<a9adde1d-ad2c-444c-9b14-88841f5e8783n@googlegroups.com>
<87sfnv2e6e.fsf@bsb.me.uk>
<3a337f21-4828-46c4-b5be-87c76cff9db4n@googlegroups.com>
<878rplyhj6.fsf@bsb.me.uk>
<b6163094-01b0-4bb4-a3b1-4e48457527a0n@googlegroups.com>
<87fsjtwvut.fsf@bsb.me.uk>
<b2699d2d-40be-4e9b-9612-efb7121d5a8bn@googlegroups.com>
<t9637e$53p$1@dont-email.me>
From: Rich...@Damon-Family.org (Richard Damon)
In-Reply-To: <t9637e$53p$1@dont-email.me>
Content-Type: text/plain; charset=UTF-8; format=flowed
Content-Transfer-Encoding: 7bit
Lines: 57
Message-ID: <oeEtK.5560$Ae2.2515@fx35.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: Sat, 25 Jun 2022 09:39:28 -0400
X-Received-Bytes: 3951
 by: Richard Damon - Sat, 25 Jun 2022 13:39 UTC

On 6/25/22 12:33 AM, olcott wrote:
> On 6/24/2022 11:01 PM, Malcolm McLean wrote:
>> On Friday, 24 June 2022 at 23:16:30 UTC+1, Ben Bacarisse wrote:
>>> Malcolm McLean <malcolm.ar...@gmail.com> writes:
>>>
>>>> "Dry run" means that a human programmer looks at the code, and
>>>> determines
>>>> what it does, without actually executing it.
>>>
>>> Going back, now, to what you think needs to be resolved:
>>> | He's dry-run P(P) and established that it doesn't halt. He's invoked H
>>> | on it and H reports that it doesn't halt. He's run P(P) and it halts.
>>> The obvious conclusion is that PO's dry run (if he has indeed done such
>>> a thing) is incorrect.
>>>
>> Exactly.
>> We do our little energy budget on tigers, and find that tigers spend
>> more energy
>> than they take in. Well potentially this is dynamite. One explanation
>> is that the
>> law of conservation of energy is wrong.
>> Except, before we countenance that explanation, we need to rule out a
>> much
>> simpler explanation. Which is that our measurements are wrong.
>>
>> Similarly, PO has worked out what he thinks P(P) should be doing, by
>> dry-running
>> it, and then actually run P(P) and obtained a different result. He
>> also found that H
>> agreed with the dry run. It's hard to paraphrase his conclusion, but
>> it is extensive
>> and far-reaching in its implications. The behaviour of code when run
>> is different
>> from the correct behaviour of the code when simulated. If that's true,
>> then it has
>> similar implications for computer science that disproving the
>> conservation law
>> has for physics.
>>
>> But the obvious explanation is that the dry-run was incorrect. Lots of
>> people have
>> suggested why it is incorrect. But they can't actually see the code.
>> PO needs to
>> understand that no-one will accept the complicated, far-reaching
>> explanation,
>> until the simple explanation has been ruled out.
>
> I already proved that the dry run is correct.
>
>

No, becasue the H in the dry run isn't the H in the final, thus your P's
are different computations (even if they have the same partial source code).

As you have said, the behavior of P(p) is dependent on the behavior of
the behavior of H(P,P), so if you change the latter, you have changed
the former, and thus your dry run was looking at the WRONG P.

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

<zZqdnd7eJKj_iir_nZ2dnUU7_8zNnZ2d@giganews.com>

  copy mid

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

  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: Sat, 25 Jun 2022 09:10:42 -0500
Date: Sat, 25 Jun 2022 09:10:41 -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>
<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>
<YZqdnR1GHIpCmiv_nZ2dnUU7_8zNnZ2d@giganews.com>
<ec1c047f-97f1-49df-abf9-cc53d2d9b4e5n@googlegroups.com>
<Uaudnfan2u21gyv_nZ2dnUU7_83NnZ2d@giganews.com>
<ba57458e-02e2-4d31-af47-972c96a34871n@googlegroups.com>
From: NoO...@NoWhere.com (olcott)
In-Reply-To: <ba57458e-02e2-4d31-af47-972c96a34871n@googlegroups.com>
Content-Type: text/plain; charset=UTF-8; format=flowed
Content-Transfer-Encoding: 8bit
Message-ID: <zZqdnd7eJKj_iir_nZ2dnUU7_8zNnZ2d@giganews.com>
Lines: 439
X-Usenet-Provider: http://www.giganews.com
X-Trace: sv3-SuuJ/O0oFznGpG1KYWizfhdjYFfoOo7cDgp72bvJEg9v6C0CQJRwOXcYAmDyoCppMJ7jKS9Jjx5JA4w!9LqONJ9paOjLp3atleS7U21+t/HPCeHfmL4iGaI9+klGQWcckpDUxQRrjVmqPXZ45lHp7vASMCdX
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: 23996
 by: olcott - Sat, 25 Jun 2022 14:10 UTC

On 6/25/2022 6:56 AM, Paul N wrote:
> On Friday, June 24, 2022 at 9:27:27 PM UTC+1, olcott wrote:
>> On 6/24/2022 3:05 PM, Paul N wrote:
>>> On Friday, June 24, 2022 at 7:52:22 PM UTC+1, 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.
>>>> From a purely software engineering perspective H(P,P) is required to to
>>>> correctly determine that its correct and complete x86 emulation of its
>>>> input would never reach the "ret" instruction of this input and H must
>>>> do this in a finite number of steps.
>>>>
>>>> The ordinary semantics of standard C and the conventional x86 language
>>>> are the entire semantics required to conclusively prove that H(P,P) does
>>>> correctly determine that its correct and complete x86 emulation of its
>>>> input would never reach the "ret" instruction.
>>>>
>>>> That you disagree with easily verified software engineering when you
>>>> already know that this software engineering is correct speaks loads
>>>> about your character.
>>>>
>>>> The only computer science that need be added to this is that the "ret"
>>>> instruction is the final state of P and that a sequence of
>>>> configurations that cannot possibly reach its final state is a
>>>> non-halting sequence.
>>>
>>> You say that "H(P,P) is required to to correctly determine that its correct and complete x86 emulation of its input would never reach the "ret" instruction of this input". You seem to be assuming that H does an emulation of P, that this emulation includes emulating the call to H, that this call to H would start emulating the call to P, etc, etc, and so the call to P does not terminate.
>>>
>> Thanks for continuing to review this.
>>
>> No assumptions two years of software development derived fully
>> operational software that conclusively proves this.
>
> It might help people's understanding if we had a few more examples. Suppose, in addition to the normal P and H, we have two more functions as follows:
>
> void Q(void)
> {
> if (H(P, P))
> H2: goto H2;
> return;
> }
>
> void R(void)
> {
> H(P, P);
> return;
> }
>
> Will Q return? Will R return?
>


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

<Jq2dnbDrVr_lhir_nZ2dnUU7_83NnZ2d@giganews.com>

  copy mid

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

  copy link   Newsgroups: comp.theory comp.ai.philosophy sci.logic sci.math
Path: i2pn2.org!i2pn.org!weretis.net!feeder6.news.weretis.net!1.us.feeder.erje.net!3.us.feeder.erje.net!feeder.erje.net!border1.nntp.dca1.giganews.com!nntp.giganews.com!buffer1.nntp.dca1.giganews.com!news.giganews.com.POSTED!not-for-mail
NNTP-Posting-Date: Sat, 25 Jun 2022 09:28:08 -0500
Date: Sat, 25 Jun 2022 09:28:07 -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>
<87a6a44s02.fsf@bsb.me.uk>
<a9adde1d-ad2c-444c-9b14-88841f5e8783n@googlegroups.com>
<87sfnv2e6e.fsf@bsb.me.uk>
<3a337f21-4828-46c4-b5be-87c76cff9db4n@googlegroups.com>
<878rplyhj6.fsf@bsb.me.uk>
<b6163094-01b0-4bb4-a3b1-4e48457527a0n@googlegroups.com>
<87fsjtwvut.fsf@bsb.me.uk>
<b2699d2d-40be-4e9b-9612-efb7121d5a8bn@googlegroups.com>
<t9637e$53p$1@dont-email.me>
<20edb990-f33e-4f3b-bc59-6cebf9f9def8n@googlegroups.com>
<wtidnY0ehdBiBiv_nZ2dnUU7_83NnZ2d@giganews.com>
<8328cb40-6b3c-4f89-a2ad-4054a6b466a6n@googlegroups.com>
From: NoO...@NoWhere.com (olcott)
In-Reply-To: <8328cb40-6b3c-4f89-a2ad-4054a6b466a6n@googlegroups.com>
Content-Type: text/plain; charset=UTF-8; format=flowed
Content-Transfer-Encoding: 7bit
Message-ID: <Jq2dnbDrVr_lhir_nZ2dnUU7_83NnZ2d@giganews.com>
Lines: 186
X-Usenet-Provider: http://www.giganews.com
X-Trace: sv3-cYz4vja5YnpElAVjBLsxIlPt1PwFPNqsiNsOBpMjnt1vu6GW9mGFoE66oHN2rVZQBlfGbLL5ZaEN8Js!49TDjl+P4ZEHHpj5/F5dnEpKWm9Tw9Ut3NUfNy05VxJ6hDKzr82ONmSEDhfmcWENr/H5ZIX9WYO4
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: 11145
 by: olcott - Sat, 25 Jun 2022 14:28 UTC

On 6/25/2022 2:32 AM, Malcolm McLean wrote:
> On Saturday, 25 June 2022 at 06:24:23 UTC+1, olcott wrote:
>> On 6/25/2022 12:09 AM, Malcolm McLean wrote:
>>> On Saturday, 25 June 2022 at 05:33:53 UTC+1, olcott wrote:
>>>> On 6/24/2022 11:01 PM, Malcolm McLean wrote:
>>>>> On Friday, 24 June 2022 at 23:16:30 UTC+1, Ben Bacarisse wrote:
>>>>>> Malcolm McLean <malcolm.ar...@gmail.com> writes:
>>>>>>
>>>>>>> "Dry run" means that a human programmer looks at the code, and determines
>>>>>>> what it does, without actually executing it.
>>>>>>
>>>>>> Going back, now, to what you think needs to be resolved:
>>>>>> | He's dry-run P(P) and established that it doesn't halt. He's invoked H
>>>>>> | on it and H reports that it doesn't halt. He's run P(P) and it halts.
>>>>>> The obvious conclusion is that PO's dry run (if he has indeed done such
>>>>>> a thing) is incorrect.
>>>>>>
>>>>> Exactly.
>>>>> We do our little energy budget on tigers, and find that tigers spend more energy
>>>>> than they take in. Well potentially this is dynamite. One explanation is that the
>>>>> law of conservation of energy is wrong.
>>>>> Except, before we countenance that explanation, we need to rule out a much
>>>>> simpler explanation. Which is that our measurements are wrong.
>>>>>
>>>>> Similarly, PO has worked out what he thinks P(P) should be doing, by dry-running
>>>>> it, and then actually run P(P) and obtained a different result. He also found that H
>>>>> agreed with the dry run. It's hard to paraphrase his conclusion, but it is extensive
>>>>> and far-reaching in its implications. The behaviour of code when run is different
>>>>> from the correct behaviour of the code when simulated. If that's true, then it has
>>>>> similar implications for computer science that disproving the conservation law
>>>>> has for physics.
>>>>>
>>>>> But the obvious explanation is that the dry-run was incorrect. Lots of people have
>>>>> suggested why it is incorrect. But they can't actually see the code. PO needs to
>>>>> understand that no-one will accept the complicated, far-reaching explanation,
>>>>> until the simple explanation has been ruled out.
>>>>
>>>> I already proved that the dry run is correct.
>>>>
>>> Someone reports that tigers use more energy than they take in, and concludes that
>>> the energy conservation law is incorrect.
>>> Naturally, everyone is going to say "There must be some mistake. How were your
>>> measurements taken? Show us your calculations, maybe you've got your sums wrong."
>>>
>>> Now if they are also uncooperative about sharing the details of the investigation,
>>> those reservations will be magnified. There can be legitimate reasons. Tigers are
>>> rare and need to be conserved, you can't let anyone who wants have access to the
>>> tigers to try to repeat the measurements. But there's also a common illegitimate
>>> reason put forwards by people who make extraordinary claims. If the claims were
>>> unexceptional, such as that tigers have a similar energy budget to lions, then no-one
>>> would be saying "Show me your notebooks. How do you know that calorimeter was
>>> calibrated accurately? What's the name of the person who took that measurement
>>> and can I interview them?" Extraordinary claims are put through the wringer in a way
>>> that ordinary ones are not. I've seen complaints about this from parapsychologists.
>>> But if you're going to claim to have discovered a new physical principle, you need
>>> to present rock solid evidence.
>>>
>>> In this case, we can't see H. We can only suggest explanations for its behaviour.
>> It seems that you simply lack the technical competence.
>> Go back and look at my proof again.
>>
> Sorry no. I've been programming since I was a boy and I have a PhD in a computational-
> related subject. I'm confident of my technical abilities. What I can't do of course
> is tell you exactly what is going on in code I cannot see. I've got a pretty good idea,
> but I can only reconstruct on the basis of what you tell me. Ben thinks that I've
> got it wrong and in fact there are no nested emulations at all. I've no way of actually
> disproving that idea without seeing H.
>

To fully understand this a software engineer must be an expert in:
(a) The C programming language,
(b) The x86 programming language,
(c) Exactly how C translates into x86 and,
(d) The ability to recognize infinite recursion at the x86 assembly
language level.

Anyone having the above credentials can validate my work, if you cannot
validate my work then you do not sufficiently have the above credentials.

Exactly how C translates into x86 is mandatory. If you don't know how
the C calling conventions are implemented in x86 you cannot validate my
work.

From a purely software engineering perspective H(P,P) is required to to
correctly determine that its correct and complete x86 emulation of its
input would never reach the "ret" instruction of this input and H must
do this in a finite number of steps.

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

The correct and complete x86 emulation of its input by H(P,P) would
never reach the "ret" instruction of P because both H and P would remain
stuck in infinitely nested emulation.

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

int main()
{ Output("Input_Halts = ", H((u32)P, (u32)P));
}

_P()
[00001202](01) 55 push ebp
[00001203](02) 8bec mov ebp,esp
[00001205](03) 8b4508 mov eax,[ebp+08]
[00001208](01) 50 push eax
[00001209](03) 8b4d08 mov ecx,[ebp+08]
[0000120c](01) 51 push ecx
[0000120d](05) e820feffff call 00001032
[00001212](03) 83c408 add esp,+08
[00001215](02) 85c0 test eax,eax
[00001217](02) 7402 jz 0000121b
[00001219](02) ebfe jmp 00001219
[0000121b](01) 5d pop ebp
[0000121c](01) c3 ret
Size in bytes:(0027) [0000121c]

_main()
[00001222](01) 55 push ebp
[00001223](02) 8bec mov ebp,esp
[00001225](05) 6802120000 push 00001202
[0000122a](05) 6802120000 push 00001202
[0000122f](05) e8fefdffff call 00001032
[00001234](03) 83c408 add esp,+08
[00001237](01) 50 push eax
[00001238](05) 68b3030000 push 000003b3
[0000123d](05) e8c0f1ffff call 00000402
[00001242](03) 83c408 add esp,+08
[00001245](02) 33c0 xor eax,eax
[00001247](01) 5d pop ebp
[00001248](01) c3 ret
Size in bytes:(0039) [00001248]

machine stack stack machine assembly
address address data code language
======== ======== ======== ========= =============
[00001222][0010200f][00000000] 55 push ebp
[00001223][0010200f][00000000] 8bec mov ebp,esp
[00001225][0010200b][00001202] 6802120000 push 00001202 // push P
[0000122a][00102007][00001202] 6802120000 push 00001202 // push P
[0000122f][00102003][00001234] e8fefdffff call 00001032 // call executed H

Begin Simulation Execution Trace Stored at:2120c3
Address_of_H:1032
[00001202][002120af][002120b3] 55 push ebp
[00001203][002120af][002120b3] 8bec mov ebp,esp
[00001205][002120af][002120b3] 8b4508 mov eax,[ebp+08]
[00001208][002120ab][00001202] 50 push eax // push P
[00001209][002120ab][00001202] 8b4d08 mov ecx,[ebp+08]
[0000120c][002120a7][00001202] 51 push ecx // push P
[0000120d][002120a3][00001212] e820feffff call 00001032 // call emulated H
Infinitely Recursive Simulation Detected Simulation Stopped

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

[00001234][0010200f][00000000] 83c408 add esp,+08
[00001237][0010200b][00000000] 50 push eax
[00001238][00102007][000003b3] 68b3030000 push 000003b3
[0000123d][00102007][000003b3] e8c0f1ffff call 00000402
Input_Halts = 0
[00001242][0010200f][00000000] 83c408 add esp,+08
[00001245][0010200f][00000000] 33c0 xor eax,eax
[00001247][00102013][00100000] 5d pop ebp
[00001248][00102017][00000004] c3 ret
Number of Instructions Executed(870) / 67 = 13 pages


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

<20220625155321.00000e76@reddwarf.jmc>

  copy mid

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

  copy link   Newsgroups: comp.theory comp.ai.philosophy sci.logic sci.math
Path: i2pn2.org!i2pn.org!weretis.net!feeder8.news.weretis.net!newsreader4.netcologne.de!news.netcologne.de!peer01.ams1!peer.ams1.xlned.com!news.xlned.com!peer03.ams4!peer.am4.highwinds-media.com!news.highwinds-media.com!fx14.ams4.POSTED!not-for-mail
From: flib...@reddwarf.jmc (Mr Flibble)
Newsgroups: comp.theory,comp.ai.philosophy,sci.logic,sci.math
Subject: Re: Technically competent Software engineers can verify this
halting problem proof refutation [ truism ]
Message-ID: <20220625155321.00000e76@reddwarf.jmc>
References: <EOydnaeszcdfHS__nZ2dnUU7_83NnZ2d@giganews.com>
<_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>
<YZqdnR1GHIpCmiv_nZ2dnUU7_8zNnZ2d@giganews.com>
<ec1c047f-97f1-49df-abf9-cc53d2d9b4e5n@googlegroups.com>
<Uaudnfan2u21gyv_nZ2dnUU7_83NnZ2d@giganews.com>
<ba57458e-02e2-4d31-af47-972c96a34871n@googlegroups.com>
<zZqdnd7eJKj_iir_nZ2dnUU7_8zNnZ2d@giganews.com>
Organization: Jupiter Mining Corp
X-Newsreader: Claws Mail 3.17.8 (GTK+ 2.24.33; x86_64-w64-mingw32)
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: quoted-printable
Lines: 530
X-Complaints-To: abuse@eweka.nl
NNTP-Posting-Date: Sat, 25 Jun 2022 14:53:17 UTC
Date: Sat, 25 Jun 2022 15:53:21 +0100
X-Received-Bytes: 26644
 by: Mr Flibble - Sat, 25 Jun 2022 14:53 UTC

On Sat, 25 Jun 2022 09:10:41 -0500
olcott <NoOne@NoWhere.com> wrote:

> On 6/25/2022 6:56 AM, Paul N wrote:
> > On Friday, June 24, 2022 at 9:27:27 PM UTC+1, olcott wrote:
> >> On 6/24/2022 3:05 PM, Paul N wrote:
> >>> On Friday, June 24, 2022 at 7:52:22 PM UTC+1, 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.
> >>>> From a purely software engineering perspective H(P,P) is
> >>>> required to to correctly determine that its correct and complete
> >>>> x86 emulation of its input would never reach the "ret"
> >>>> instruction of this input and H must do this in a finite number
> >>>> of steps.
> >>>>
> >>>> The ordinary semantics of standard C and the conventional x86
> >>>> language are the entire semantics required to conclusively prove
> >>>> that H(P,P) does correctly determine that its correct and
> >>>> complete x86 emulation of its input would never reach the "ret"
> >>>> instruction.
> >>>>
> >>>> That you disagree with easily verified software engineering when
> >>>> you already know that this software engineering is correct
> >>>> speaks loads about your character.
> >>>>
> >>>> The only computer science that need be added to this is that the
> >>>> "ret" instruction is the final state of P and that a sequence of
> >>>> configurations that cannot possibly reach its final state is a
> >>>> non-halting sequence.
> >>>
> >>> You say that "H(P,P) is required to to correctly determine that
> >>> its correct and complete x86 emulation of its input would never
> >>> reach the "ret" instruction of this input". You seem to be
> >>> assuming that H does an emulation of P, that this emulation
> >>> includes emulating the call to H, that this call to H would start
> >>> emulating the call to P, etc, etc, and so the call to P does not
> >>> terminate.
> >> Thanks for continuing to review this.
> >>
> >> No assumptions two years of software development derived fully
> >> operational software that conclusively proves this.
> >
> > It might help people's understanding if we had a few more examples.
> > Suppose, in addition to the normal P and H, we have two more
> > functions as follows:
> >
> > void Q(void)
> > {
> > if (H(P, P))
> > H2: goto H2;
> > return;
> > }
> >
> > void R(void)
> > {
> > H(P, P);
> > return;
> > }
> >
> > Will Q return? Will R return?
> >
>
> Yes they both return.
>
> void Q(void)
> {
> if (H(P, P))
> H2: goto H2;
> return;
> }
>
> void R(void)
> {
> H(P, P);
> return;
> }
>
> _P()
> [000011f0](01) 55 push ebp
> [000011f1](02) 8bec mov ebp,esp
> [000011f3](03) 8b4508 mov eax,[ebp+08]
> [000011f6](01) 50 push eax
> [000011f7](03) 8b4d08 mov ecx,[ebp+08]
> [000011fa](01) 51 push ecx
> [000011fb](05) e820feffff call 00001020
> [00001200](03) 83c408 add esp,+08
> [00001203](02) 85c0 test eax,eax
> [00001205](02) 7402 jz 00001209
> [00001207](02) ebfe jmp 00001207
> [00001209](01) 5d pop ebp
> [0000120a](01) c3 ret
> Size in bytes:(0027) [0000120a]
>
> _Q()
> [00001210](01) 55 push ebp
> [00001211](02) 8bec mov ebp,esp
> [00001213](05) 68f0110000 push 000011f0
> [00001218](05) 68f0110000 push 000011f0
> [0000121d](05) e8fefdffff call 00001020
> [00001222](03) 83c408 add esp,+08
> [00001225](02) 85c0 test eax,eax
> [00001227](02) 7402 jz 0000122b
> [00001229](02) ebfe jmp 00001229
> [0000122b](01) 5d pop ebp
> [0000122c](01) c3 ret
> Size in bytes:(0029) [0000122c]
>
> _main()
> [00001250](01) 55 push ebp
> [00001251](02) 8bec mov ebp,esp
> [00001253](05) e8b8ffffff call 00001210
> [00001258](02) 33c0 xor eax,eax
> [0000125a](01) 5d pop ebp
> [0000125b](01) c3 ret
> Size in bytes:(0012) [0000125b]
>
> machine stack stack machine assembly
> address address data code language
> ======== ======== ======== ========= ============> ...[00001250][00102048][00000000] 55 push ebp
> ...[00001251][00102048][00000000] 8bec mov ebp,esp
> ...[00001253][00102044][00001258] e8b8ffffff call 00001210
> ...[00001210][00102040][00102048] 55 push ebp
> ...[00001211][00102040][00102048] 8bec mov ebp,esp
> ...[00001213][0010203c][000011f0] 68f0110000 push 000011f0
> ...[00001218][00102038][000011f0] 68f0110000 push 000011f0
> ...[0000121d][00102034][00001222] e8fefdffff call 00001020
>
> Begin Simulation Execution Trace Stored at:2120fc
> Address_of_H:1020
> ...[000011f0][002120e8][002120ec] 55 push ebp
> ...[000011f1][002120e8][002120ec] 8bec mov ebp,esp
> ...[000011f3][002120e8][002120ec] 8b4508 mov eax,[ebp+08]
> ...[000011f6][002120e4][000011f0] 50 push eax
> ...[000011f7][002120e4][000011f0] 8b4d08 mov ecx,[ebp+08]
> ...[000011fa][002120e0][000011f0] 51 push ecx
> ...[000011fb][002120dc][00001200] e820feffff call 00001020
> Infinitely Recursive Simulation Detected Simulation Stopped
>
> ...[00001222][00102040][00102048] 83c408 add esp,+08
> ...[00001225][00102040][00102048] 85c0 test eax,eax
> ...[00001227][00102040][00102048] 7402 jz 0000122b
> ...[0000122b][00102044][00001258] 5d pop ebp
> ...[0000122c][00102048][00000000] c3 ret
> ...[00001258][00102048][00000000] 33c0 xor eax,eax
> ...[0000125a][0010204c][00100000] 5d pop ebp
> ...[0000125b][00102050][00000000] c3 ret
> Number of Instructions Executed(874)
>
> Above is:
> int main()
> {
> Q();
> //R();
> }
>
> ---
>
>
> machine stack stack machine assembly
> address address data code language
> ======== ======== ======== ========= ============> ...[00001250][00102048][00000000] 55 push ebp
> ...[00001251][00102048][00000000] 8bec mov ebp,esp
> ...[00001253][00102044][00001258] e8d8ffffff call 00001230
> ...[00001230][00102040][00102048] 55 push ebp
> ...[00001231][00102040][00102048] 8bec mov ebp,esp
> ...[00001233][0010203c][000011f0] 68f0110000 push 000011f0
> ...[00001238][00102038][000011f0] 68f0110000 push 000011f0
> ...[0000123d][00102034][00001242] e8defdffff call 00001020
>
> Begin Simulation Execution Trace Stored at:2120fc
> Address_of_H:1020
> ...[000011f0][002120e8][002120ec] 55 push ebp
> ...[000011f1][002120e8][002120ec] 8bec mov ebp,esp
> ...[000011f3][002120e8][002120ec] 8b4508 mov eax,[ebp+08]
> ...[000011f6][002120e4][000011f0] 50 push eax
> ...[000011f7][002120e4][000011f0] 8b4d08 mov ecx,[ebp+08]
> ...[000011fa][002120e0][000011f0] 51 push ecx
> ...[000011fb][002120dc][00001200] e820feffff call 00001020
> Infinitely Recursive Simulation Detected Simulation Stopped
>
> ...[00001242][00102040][00102048] 83c408 add esp,+08
> ...[00001245][00102044][00001258] 5d pop ebp
> ...[00001246][00102048][00000000] c3 ret
> ...[00001258][00102048][00000000] 33c0 xor eax,eax
> ...[0000125a][0010204c][00100000] 5d pop ebp
> ...[0000125b][00102050][00000000] c3 ret
> Number of Instructions Executed(872)
>
> Above is:
> int main()
> {
> //Q();
> R();
> }


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

<Jo2dnaO4cb0rvir_nZ2dnUU7_83NnZ2d@giganews.com>

  copy mid

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

  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!border1.nntp.dca1.giganews.com!nntp.giganews.com!buffer1.nntp.dca1.giganews.com!news.giganews.com.POSTED!not-for-mail
NNTP-Posting-Date: Sat, 25 Jun 2022 10:03:18 -0500
Date: Sat, 25 Jun 2022 10:03:17 -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>
<87a6a44s02.fsf@bsb.me.uk>
<a9adde1d-ad2c-444c-9b14-88841f5e8783n@googlegroups.com>
<87sfnv2e6e.fsf@bsb.me.uk>
<3a337f21-4828-46c4-b5be-87c76cff9db4n@googlegroups.com>
<878rplyhj6.fsf@bsb.me.uk>
<b6163094-01b0-4bb4-a3b1-4e48457527a0n@googlegroups.com>
<87fsjtwvut.fsf@bsb.me.uk>
<b2699d2d-40be-4e9b-9612-efb7121d5a8bn@googlegroups.com>
<t9637e$53p$1@dont-email.me>
<20edb990-f33e-4f3b-bc59-6cebf9f9def8n@googlegroups.com>
<wtidnY0ehdBiBiv_nZ2dnUU7_83NnZ2d@giganews.com>
<8328cb40-6b3c-4f89-a2ad-4054a6b466a6n@googlegroups.com>
<Jq2dnbDrVr_lhir_nZ2dnUU7_83NnZ2d@giganews.com>
From: NoO...@NoWhere.com (olcott)
In-Reply-To: <Jq2dnbDrVr_lhir_nZ2dnUU7_83NnZ2d@giganews.com>
Content-Type: text/plain; charset=UTF-8; format=flowed
Content-Transfer-Encoding: 8bit
Message-ID: <Jo2dnaO4cb0rvir_nZ2dnUU7_83NnZ2d@giganews.com>
Lines: 238
X-Usenet-Provider: http://www.giganews.com
X-Trace: sv3-Ek5wesOGH7tgpl0IhDJ81DGgCi8Bz1eWlSRzAFcrLtT6/e/M9TwYn/7u1F3xHK3SEmVlK88ZTIkzowJ!SPZjpSj1KZjq8hasq96Mtz9QciZERVFziRnjcacwfbYthKNMUjylhokrQ/MN46yA2DKKPs0UTjes
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: 12811
X-Received-Bytes: 12904
 by: olcott - Sat, 25 Jun 2022 15:03 UTC

On 6/25/2022 9:28 AM, olcott wrote:
> On 6/25/2022 2:32 AM, Malcolm McLean wrote:
>> On Saturday, 25 June 2022 at 06:24:23 UTC+1, olcott wrote:
>>> On 6/25/2022 12:09 AM, Malcolm McLean wrote:
>>>> On Saturday, 25 June 2022 at 05:33:53 UTC+1, olcott wrote:
>>>>> On 6/24/2022 11:01 PM, Malcolm McLean wrote:
>>>>>> On Friday, 24 June 2022 at 23:16:30 UTC+1, Ben Bacarisse wrote:
>>>>>>> Malcolm McLean <malcolm.ar...@gmail.com> writes:
>>>>>>>
>>>>>>>> "Dry run" means that a human programmer looks at the code, and
>>>>>>>> determines
>>>>>>>> what it does, without actually executing it.
>>>>>>>
>>>>>>> Going back, now, to what you think needs to be resolved:
>>>>>>> | He's dry-run P(P) and established that it doesn't halt. He's
>>>>>>> invoked H
>>>>>>> | on it and H reports that it doesn't halt. He's run P(P) and it
>>>>>>> halts.
>>>>>>> The obvious conclusion is that PO's dry run (if he has indeed
>>>>>>> done such
>>>>>>> a thing) is incorrect.
>>>>>>>
>>>>>> Exactly.
>>>>>> We do our little energy budget on tigers, and find that tigers
>>>>>> spend more energy
>>>>>> than they take in. Well potentially this is dynamite. One
>>>>>> explanation is that the
>>>>>> law of conservation of energy is wrong.
>>>>>> Except, before we countenance that explanation, we need to rule
>>>>>> out a much
>>>>>> simpler explanation. Which is that our measurements are wrong.
>>>>>>
>>>>>> Similarly, PO has worked out what he thinks P(P) should be doing,
>>>>>> by dry-running
>>>>>> it, and then actually run P(P) and obtained a different result. He
>>>>>> also found that H
>>>>>> agreed with the dry run. It's hard to paraphrase his conclusion,
>>>>>> but it is extensive
>>>>>> and far-reaching in its implications. The behaviour of code when
>>>>>> run is different
>>>>>> from the correct behaviour of the code when simulated. If that's
>>>>>> true, then it has
>>>>>> similar implications for computer science that disproving the
>>>>>> conservation law
>>>>>> has for physics.
>>>>>>
>>>>>> But the obvious explanation is that the dry-run was incorrect.
>>>>>> Lots of people have
>>>>>> suggested why it is incorrect. But they can't actually see the
>>>>>> code. PO needs to
>>>>>> understand that no-one will accept the complicated, far-reaching
>>>>>> explanation,
>>>>>> until the simple explanation has been ruled out.
>>>>>
>>>>> I already proved that the dry run is correct.
>>>>>
>>>> Someone reports that tigers use more energy than they take in, and
>>>> concludes that
>>>> the energy conservation law is incorrect.
>>>> Naturally, everyone is going to say "There must be some mistake. How
>>>> were your
>>>> measurements taken? Show us your calculations, maybe you've got your
>>>> sums wrong."
>>>>
>>>> Now if they are also uncooperative about sharing the details of the
>>>> investigation,
>>>> those reservations will be magnified. There can be legitimate
>>>> reasons. Tigers are
>>>> rare and need to be conserved, you can't let anyone who wants have
>>>> access to the
>>>> tigers to try to repeat the measurements. But there's also a common
>>>> illegitimate
>>>> reason put forwards by people who make extraordinary claims. If the
>>>> claims were
>>>> unexceptional, such as that tigers have a similar energy budget to
>>>> lions, then no-one
>>>> would be saying "Show me your notebooks. How do you know that
>>>> calorimeter was
>>>> calibrated accurately? What's the name of the person who took that
>>>> measurement
>>>> and can I interview them?" Extraordinary claims are put through the
>>>> wringer in a way
>>>> that ordinary ones are not. I've seen complaints about this from
>>>> parapsychologists.
>>>> But if you're going to claim to have discovered a new physical
>>>> principle, you need
>>>> to present rock solid evidence.
>>>>
>>>> In this case, we can't see H. We can only suggest explanations for
>>>> its behaviour.
>>> It seems that you simply lack the technical competence.
>>> Go back and look at my proof again.
>>>
>> Sorry no. I've been programming since I was a boy and I have a PhD in
>> a computational-
>> related subject. I'm confident of my technical abilities. What I can't
>> do of course
>> is tell you exactly what is going on in code I cannot see. I've got a
>> pretty good idea,
>> but I can only reconstruct on the basis of what you tell me. Ben
>> thinks that I've
>> got it wrong and in fact there are no nested emulations at all. I've
>> no way of actually
>> disproving that idea without seeing H.
>>
>
> To fully understand this a software engineer must be an expert in:
> (a) The C programming language,
> (b) The x86 programming language,
> (c) Exactly how C translates into x86 and,
> (d) The ability to recognize infinite recursion at the x86 assembly
> language level.
>
> Anyone having the above credentials can validate my work, if you cannot
> validate my work then you do not sufficiently have the above credentials.
>
> Exactly how C translates into x86 is mandatory. If you don't know how
> the C calling conventions are implemented in x86 you cannot validate my
> work.
>
> From a purely software engineering perspective H(P,P) is required to to
> correctly determine that its correct and complete x86 emulation of its
> input would never reach the "ret" instruction of this input and H must
> do this in a finite number of steps.
>
> The ordinary semantics of standard C and the conventional x86 language
> are the entire semantics required to conclusively prove that H(P,P) does
> correctly determine that its correct and complete x86 emulation of its
> input would never reach the "ret" instruction (final state) of this
> input thus never halts.
>
> The correct and complete x86 emulation of its input by H(P,P) would
> never reach the "ret" instruction of P because both H and P would remain
> stuck in infinitely nested emulation.
>
> void P(u32 x)
> {
>   if (H(x, x))
>     HERE: goto HERE;
>   return;
> }
>
> int main()
> {
>   Output("Input_Halts = ", H((u32)P, (u32)P));
> }
>
> _P()
> [00001202](01)  55              push ebp
> [00001203](02)  8bec            mov ebp,esp
> [00001205](03)  8b4508          mov eax,[ebp+08]
> [00001208](01)  50              push eax
> [00001209](03)  8b4d08          mov ecx,[ebp+08]
> [0000120c](01)  51              push ecx
> [0000120d](05)  e820feffff      call 00001032
> [00001212](03)  83c408          add esp,+08
> [00001215](02)  85c0            test eax,eax
> [00001217](02)  7402            jz 0000121b
> [00001219](02)  ebfe            jmp 00001219
> [0000121b](01)  5d              pop ebp
> [0000121c](01)  c3              ret
> Size in bytes:(0027) [0000121c]
>
> _main()
> [00001222](01)  55              push ebp
> [00001223](02)  8bec            mov ebp,esp
> [00001225](05)  6802120000      push 00001202
> [0000122a](05)  6802120000      push 00001202
> [0000122f](05)  e8fefdffff      call 00001032
> [00001234](03)  83c408          add esp,+08
> [00001237](01)  50              push eax
> [00001238](05)  68b3030000      push 000003b3
> [0000123d](05)  e8c0f1ffff      call 00000402
> [00001242](03)  83c408          add esp,+08
> [00001245](02)  33c0            xor eax,eax
> [00001247](01)  5d              pop ebp
> [00001248](01)  c3              ret
> Size in bytes:(0039) [00001248]
>
>  machine   stack     stack     machine    assembly
>  address   address   data      code       language
>  ========  ========  ========  =========  =============
> [00001222][0010200f][00000000] 55         push ebp
> [00001223][0010200f][00000000] 8bec       mov ebp,esp
> [00001225][0010200b][00001202] 6802120000 push 00001202 // push P
> [0000122a][00102007][00001202] 6802120000 push 00001202 // push P
> [0000122f][00102003][00001234] e8fefdffff call 00001032 // call executed H
>
> Begin Simulation   Execution Trace Stored at:2120c3
> Address_of_H:1032
> [00001202][002120af][002120b3] 55         push ebp
> [00001203][002120af][002120b3] 8bec       mov ebp,esp
> [00001205][002120af][002120b3] 8b4508     mov eax,[ebp+08]
> [00001208][002120ab][00001202] 50         push eax      // push P
> [00001209][002120ab][00001202] 8b4d08     mov ecx,[ebp+08]
> [0000120c][002120a7][00001202] 51         push ecx      // push P
> [0000120d][002120a3][00001212] e820feffff call 00001032 // call emulated H
> Infinitely Recursive Simulation Detected Simulation Stopped
>
> H knows its own machine address and on this basis it can easily
> examine its stored execution_trace of P (see above) to determine:
> (a) P is calling H with the same arguments that H was called with.
> (b) No instructions in P could possibly escape this otherwise infinitely
> recursive emulation.
> (c) H aborts its emulation of P before its call to H is emulated.
>


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

<20220625160945.00006e9b@reddwarf.jmc>

  copy mid

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

  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!peer02.ams1!peer.ams1.xlned.com!news.xlned.com!peer01.ams4!peer.am4.highwinds-media.com!news.highwinds-media.com!fx11.ams4.POSTED!not-for-mail
From: flib...@reddwarf.jmc (Mr Flibble)
Newsgroups: comp.theory,comp.ai.philosophy,sci.logic,sci.math
Subject: Re: Technically competent Software engineers can verify this
halting problem proof refutation
Message-ID: <20220625160945.00006e9b@reddwarf.jmc>
References: <EOydnaeszcdfHS__nZ2dnUU7_83NnZ2d@giganews.com>
<PtvsK.300027$5fVf.158200@fx09.iad>
<CaWdnZEntLawFS__nZ2dnUU7_83NnZ2d@giganews.com>
<ccb8af3c-e497-4d6e-8040-826a4e87a6e7n@googlegroups.com>
<g9qdnRjZj9uBlS7_nZ2dnUU7_8zNnZ2d@giganews.com>
<0f7ed34c-5aaa-4858-885e-66e16777f599n@googlegroups.com>
<87a6a44s02.fsf@bsb.me.uk>
<a9adde1d-ad2c-444c-9b14-88841f5e8783n@googlegroups.com>
<87sfnv2e6e.fsf@bsb.me.uk>
<3a337f21-4828-46c4-b5be-87c76cff9db4n@googlegroups.com>
<878rplyhj6.fsf@bsb.me.uk>
<b6163094-01b0-4bb4-a3b1-4e48457527a0n@googlegroups.com>
<87fsjtwvut.fsf@bsb.me.uk>
<b2699d2d-40be-4e9b-9612-efb7121d5a8bn@googlegroups.com>
<t9637e$53p$1@dont-email.me>
<20edb990-f33e-4f3b-bc59-6cebf9f9def8n@googlegroups.com>
<wtidnY0ehdBiBiv_nZ2dnUU7_83NnZ2d@giganews.com>
<8328cb40-6b3c-4f89-a2ad-4054a6b466a6n@googlegroups.com>
<Jq2dnbDrVr_lhir_nZ2dnUU7_83NnZ2d@giganews.com>
<Jo2dnaO4cb0rvir_nZ2dnUU7_83NnZ2d@giganews.com>
Organization: Jupiter Mining Corp
X-Newsreader: Claws Mail 3.17.8 (GTK+ 2.24.33; x86_64-w64-mingw32)
MIME-Version: 1.0
Content-Type: text/plain; charset=ISO-8859-1
Content-Transfer-Encoding: quoted-printable
Lines: 231
X-Complaints-To: abuse@eweka.nl
NNTP-Posting-Date: Sat, 25 Jun 2022 15:09:42 UTC
Date: Sat, 25 Jun 2022 16:09:45 +0100
X-Received-Bytes: 12657
 by: Mr Flibble - Sat, 25 Jun 2022 15:09 UTC

On Sat, 25 Jun 2022 10:03:17 -0500
olcott <NoOne@NoWhere.com> wrote:

> On 6/25/2022 9:28 AM, olcott wrote:
> > On 6/25/2022 2:32 AM, Malcolm McLean wrote:
> >> On Saturday, 25 June 2022 at 06:24:23 UTC+1, olcott wrote:
> >>> On 6/25/2022 12:09 AM, Malcolm McLean wrote:
> >>>> On Saturday, 25 June 2022 at 05:33:53 UTC+1, olcott wrote:
> >>>>> On 6/24/2022 11:01 PM, Malcolm McLean wrote:
> >>>>>> On Friday, 24 June 2022 at 23:16:30 UTC+1, Ben Bacarisse
> >>>>>> wrote:
> >>>>>>> Malcolm McLean <malcolm.ar...@gmail.com> writes:
> >>>>>>>
> >>>>>>>> "Dry run" means that a human programmer looks at the code,
> >>>>>>>> and determines
> >>>>>>>> what it does, without actually executing it.
> >>>>>>>
> >>>>>>> Going back, now, to what you think needs to be resolved:
> >>>>>>> | He's dry-run P(P) and established that it doesn't halt.
> >>>>>>> He's invoked H
> >>>>>>> | on it and H reports that it doesn't halt. He's run P(P) and
> >>>>>>> it halts.
> >>>>>>> The obvious conclusion is that PO's dry run (if he has indeed
> >>>>>>> done such
> >>>>>>> a thing) is incorrect.
> >>>>>>>
> >>>>>> Exactly.
> >>>>>> We do our little energy budget on tigers, and find that tigers
> >>>>>> spend more energy
> >>>>>> than they take in. Well potentially this is dynamite. One
> >>>>>> explanation is that the
> >>>>>> law of conservation of energy is wrong.
> >>>>>> Except, before we countenance that explanation, we need to
> >>>>>> rule out a much
> >>>>>> simpler explanation. Which is that our measurements are wrong.
> >>>>>>
> >>>>>> Similarly, PO has worked out what he thinks P(P) should be
> >>>>>> doing, by dry-running
> >>>>>> it, and then actually run P(P) and obtained a different
> >>>>>> result. He also found that H
> >>>>>> agreed with the dry run. It's hard to paraphrase his
> >>>>>> conclusion, but it is extensive
> >>>>>> and far-reaching in its implications. The behaviour of code
> >>>>>> when run is different
> >>>>>> from the correct behaviour of the code when simulated. If
> >>>>>> that's true, then it has
> >>>>>> similar implications for computer science that disproving the
> >>>>>> conservation law
> >>>>>> has for physics.
> >>>>>>
> >>>>>> But the obvious explanation is that the dry-run was incorrect.
> >>>>>> Lots of people have
> >>>>>> suggested why it is incorrect. But they can't actually see the
> >>>>>> code. PO needs to
> >>>>>> understand that no-one will accept the complicated,
> >>>>>> far-reaching explanation,
> >>>>>> until the simple explanation has been ruled out.
> >>>>>
> >>>>> I already proved that the dry run is correct.
> >>>>>
> >>>> Someone reports that tigers use more energy than they take in,
> >>>> and concludes that
> >>>> the energy conservation law is incorrect.
> >>>> Naturally, everyone is going to say "There must be some mistake.
> >>>> How were your
> >>>> measurements taken? Show us your calculations, maybe you've got
> >>>> your sums wrong."
> >>>>
> >>>> Now if they are also uncooperative about sharing the details of
> >>>> the investigation,
> >>>> those reservations will be magnified. There can be legitimate
> >>>> reasons. Tigers are
> >>>> rare and need to be conserved, you can't let anyone who wants
> >>>> have access to the
> >>>> tigers to try to repeat the measurements. But there's also a
> >>>> common illegitimate
> >>>> reason put forwards by people who make extraordinary claims. If
> >>>> the claims were
> >>>> unexceptional, such as that tigers have a similar energy budget
> >>>> to lions, then no-one
> >>>> would be saying "Show me your notebooks. How do you know that
> >>>> calorimeter was
> >>>> calibrated accurately? What's the name of the person who took
> >>>> that measurement
> >>>> and can I interview them?" Extraordinary claims are put through
> >>>> the wringer in a way
> >>>> that ordinary ones are not. I've seen complaints about this from
> >>>> parapsychologists.
> >>>> But if you're going to claim to have discovered a new physical
> >>>> principle, you need
> >>>> to present rock solid evidence.
> >>>>
> >>>> In this case, we can't see H. We can only suggest explanations
> >>>> for its behaviour.
> >>> It seems that you simply lack the technical competence.
> >>> Go back and look at my proof again.
> >>>
> >> Sorry no. I've been programming since I was a boy and I have a PhD
> >> in a computational-
> >> related subject. I'm confident of my technical abilities. What I
> >> can't do of course
> >> is tell you exactly what is going on in code I cannot see. I've
> >> got a pretty good idea,
> >> but I can only reconstruct on the basis of what you tell me. Ben
> >> thinks that I've
> >> got it wrong and in fact there are no nested emulations at all.
> >> I've no way of actually
> >> disproving that idea without seeing H.
> >>
> >
> > To fully understand this a software engineer must be an expert in:
> > (a) The C programming language,
> > (b) The x86 programming language,
> > (c) Exactly how C translates into x86 and,
> > (d) The ability to recognize infinite recursion at the x86 assembly
> > language level.
> >
> > Anyone having the above credentials can validate my work, if you
> > cannot validate my work then you do not sufficiently have the above
> > credentials.
> >
> > Exactly how C translates into x86 is mandatory. If you don't know
> > how the C calling conventions are implemented in x86 you cannot
> > validate my work.
> >
> > From a purely software engineering perspective H(P,P) is required
> > to to correctly determine that its correct and complete x86
> > emulation of its input would never reach the "ret" instruction of
> > this input and H must do this in a finite number of steps.
> >
> > The ordinary semantics of standard C and the conventional x86
> > language are the entire semantics required to conclusively prove
> > that H(P,P) does correctly determine that its correct and complete
> > x86 emulation of its input would never reach the "ret" instruction
> > (final state) of this input thus never halts.
> >
> > The correct and complete x86 emulation of its input by H(P,P) would
> > never reach the "ret" instruction of P because both H and P would
> > remain stuck in infinitely nested emulation.
> >
> > void P(u32 x)
> > {
> >   if (H(x, x))
> >     HERE: goto HERE;
> >   return;
> > }
> >
> > int main()
> > {
> >   Output("Input_Halts = ", H((u32)P, (u32)P));
> > }
> >
> > _P()
> > [00001202](01)  55              push ebp
> > [00001203](02)  8bec            mov ebp,esp
> > [00001205](03)  8b4508          mov eax,[ebp+08]
> > [00001208](01)  50              push eax
> > [00001209](03)  8b4d08          mov ecx,[ebp+08]
> > [0000120c](01)  51              push ecx
> > [0000120d](05)  e820feffff      call 00001032
> > [00001212](03)  83c408          add esp,+08
> > [00001215](02)  85c0            test eax,eax
> > [00001217](02)  7402            jz 0000121b
> > [00001219](02)  ebfe            jmp 00001219
> > [0000121b](01)  5d              pop ebp
> > [0000121c](01)  c3              ret
> > Size in bytes:(0027) [0000121c]
> >
> > _main()
> > [00001222](01)  55              push ebp
> > [00001223](02)  8bec            mov ebp,esp
> > [00001225](05)  6802120000      push 00001202
> > [0000122a](05)  6802120000      push 00001202
> > [0000122f](05)  e8fefdffff      call 00001032
> > [00001234](03)  83c408          add esp,+08
> > [00001237](01)  50              push eax
> > [00001238](05)  68b3030000      push 000003b3
> > [0000123d](05)  e8c0f1ffff      call 00000402
> > [00001242](03)  83c408          add esp,+08
> > [00001245](02)  33c0            xor eax,eax
> > [00001247](01)  5d              pop ebp
> > [00001248](01)  c3              ret
> > Size in bytes:(0039) [00001248]
> >
> >  machine   stack     stack     machine    assembly
> >  address   address   data      code       language
> >  ========  ========  ========  =========  ============> > [00001222][0010200f][00000000] 55         push ebp
> > [00001223][0010200f][00000000] 8bec       mov ebp,esp
> > [00001225][0010200b][00001202] 6802120000 push 00001202 // push P
> > [0000122a][00102007][00001202] 6802120000 push 00001202 // push P
> > [0000122f][00102003][00001234] e8fefdffff call 00001032 // call
> > executed H
> >
> > Begin Simulation   Execution Trace Stored at:2120c3
> > Address_of_H:1032
> > [00001202][002120af][002120b3] 55         push ebp
> > [00001203][002120af][002120b3] 8bec       mov ebp,esp
> > [00001205][002120af][002120b3] 8b4508     mov eax,[ebp+08]
> > [00001208][002120ab][00001202] 50         push eax      // push P
> > [00001209][002120ab][00001202] 8b4d08     mov ecx,[ebp+08]
> > [0000120c][002120a7][00001202] 51         push ecx      // push P
> > [0000120d][002120a3][00001212] e820feffff call 00001032 // call
> > emulated H Infinitely Recursive Simulation Detected Simulation
> > Stopped
> >
> > H knows its own machine address and on this basis it can easily
> > examine its stored execution_trace of P (see above) to determine:
> > (a) P is calling H with the same arguments that H was called with.
> > (b) No instructions in P could possibly escape this otherwise
> > infinitely recursive emulation.
> > (c) H aborts its emulation of P before its call to H is emulated.
> >
>
> When you know that H simply implements the above algorithm there is
> no need to see its source code. I am reserving the publication of the
> 5 pages of the source code of the halt decider for journal
> publication.


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

<2umdnWsMdJX6uir_nZ2dnUU7_83NnZ2d@giganews.com>

  copy mid

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

  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: Sat, 25 Jun 2022 10:19:03 -0500
Date: Sat, 25 Jun 2022 10:19: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
Content-Language: en-US
Newsgroups: comp.theory,comp.ai.philosophy,sci.logic,sci.math
References: <EOydnaeszcdfHS__nZ2dnUU7_83NnZ2d@giganews.com>
<PtvsK.300027$5fVf.158200@fx09.iad>
<CaWdnZEntLawFS__nZ2dnUU7_83NnZ2d@giganews.com>
<ccb8af3c-e497-4d6e-8040-826a4e87a6e7n@googlegroups.com>
<g9qdnRjZj9uBlS7_nZ2dnUU7_8zNnZ2d@giganews.com>
<0f7ed34c-5aaa-4858-885e-66e16777f599n@googlegroups.com>
<87a6a44s02.fsf@bsb.me.uk>
<a9adde1d-ad2c-444c-9b14-88841f5e8783n@googlegroups.com>
<87sfnv2e6e.fsf@bsb.me.uk>
<3a337f21-4828-46c4-b5be-87c76cff9db4n@googlegroups.com>
<878rplyhj6.fsf@bsb.me.uk>
<b6163094-01b0-4bb4-a3b1-4e48457527a0n@googlegroups.com>
<87fsjtwvut.fsf@bsb.me.uk>
<b2699d2d-40be-4e9b-9612-efb7121d5a8bn@googlegroups.com>
<t9637e$53p$1@dont-email.me>
<20edb990-f33e-4f3b-bc59-6cebf9f9def8n@googlegroups.com>
<wtidnY0ehdBiBiv_nZ2dnUU7_83NnZ2d@giganews.com>
<8328cb40-6b3c-4f89-a2ad-4054a6b466a6n@googlegroups.com>
<Jq2dnbDrVr_lhir_nZ2dnUU7_83NnZ2d@giganews.com>
<Jo2dnaO4cb0rvir_nZ2dnUU7_83NnZ2d@giganews.com>
<20220625160945.00006e9b@reddwarf.jmc>
From: NoO...@NoWhere.com (olcott)
In-Reply-To: <20220625160945.00006e9b@reddwarf.jmc>
Content-Type: text/plain; charset=UTF-8; format=flowed
Content-Transfer-Encoding: 8bit
Message-ID: <2umdnWsMdJX6uir_nZ2dnUU7_83NnZ2d@giganews.com>
Lines: 240
X-Usenet-Provider: http://www.giganews.com
X-Trace: sv3-Th7VRhcQcQKyMkMkvt22A/G11kRNny7Q0StHC4PqYfGGCgu0rg37aeAMI2pqQuf7gunXZj+N+0FTUUt!cf7Jf75OQmaWbXEjO5Yy2scnsRuzcd/TYS16qPUpkqFAp8tTCDowYSlQ2OS+AYzANpfvJU65zNVk
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: 12952
 by: olcott - Sat, 25 Jun 2022 15:19 UTC

On 6/25/2022 10:09 AM, Mr Flibble wrote:
> On Sat, 25 Jun 2022 10:03:17 -0500
> olcott <NoOne@NoWhere.com> wrote:
>
>> On 6/25/2022 9:28 AM, olcott wrote:
>>> On 6/25/2022 2:32 AM, Malcolm McLean wrote:
>>>> On Saturday, 25 June 2022 at 06:24:23 UTC+1, olcott wrote:
>>>>> On 6/25/2022 12:09 AM, Malcolm McLean wrote:
>>>>>> On Saturday, 25 June 2022 at 05:33:53 UTC+1, olcott wrote:
>>>>>>> On 6/24/2022 11:01 PM, Malcolm McLean wrote:
>>>>>>>> On Friday, 24 June 2022 at 23:16:30 UTC+1, Ben Bacarisse
>>>>>>>> wrote:
>>>>>>>>> Malcolm McLean <malcolm.ar...@gmail.com> writes:
>>>>>>>>>
>>>>>>>>>> "Dry run" means that a human programmer looks at the code,
>>>>>>>>>> and determines
>>>>>>>>>> what it does, without actually executing it.
>>>>>>>>>
>>>>>>>>> Going back, now, to what you think needs to be resolved:
>>>>>>>>> | He's dry-run P(P) and established that it doesn't halt.
>>>>>>>>> He's invoked H
>>>>>>>>> | on it and H reports that it doesn't halt. He's run P(P) and
>>>>>>>>> it halts.
>>>>>>>>> The obvious conclusion is that PO's dry run (if he has indeed
>>>>>>>>> done such
>>>>>>>>> a thing) is incorrect.
>>>>>>>>>
>>>>>>>> Exactly.
>>>>>>>> We do our little energy budget on tigers, and find that tigers
>>>>>>>> spend more energy
>>>>>>>> than they take in. Well potentially this is dynamite. One
>>>>>>>> explanation is that the
>>>>>>>> law of conservation of energy is wrong.
>>>>>>>> Except, before we countenance that explanation, we need to
>>>>>>>> rule out a much
>>>>>>>> simpler explanation. Which is that our measurements are wrong.
>>>>>>>>
>>>>>>>> Similarly, PO has worked out what he thinks P(P) should be
>>>>>>>> doing, by dry-running
>>>>>>>> it, and then actually run P(P) and obtained a different
>>>>>>>> result. He also found that H
>>>>>>>> agreed with the dry run. It's hard to paraphrase his
>>>>>>>> conclusion, but it is extensive
>>>>>>>> and far-reaching in its implications. The behaviour of code
>>>>>>>> when run is different
>>>>>>>> from the correct behaviour of the code when simulated. If
>>>>>>>> that's true, then it has
>>>>>>>> similar implications for computer science that disproving the
>>>>>>>> conservation law
>>>>>>>> has for physics.
>>>>>>>>
>>>>>>>> But the obvious explanation is that the dry-run was incorrect.
>>>>>>>> Lots of people have
>>>>>>>> suggested why it is incorrect. But they can't actually see the
>>>>>>>> code. PO needs to
>>>>>>>> understand that no-one will accept the complicated,
>>>>>>>> far-reaching explanation,
>>>>>>>> until the simple explanation has been ruled out.
>>>>>>>
>>>>>>> I already proved that the dry run is correct.
>>>>>>>
>>>>>> Someone reports that tigers use more energy than they take in,
>>>>>> and concludes that
>>>>>> the energy conservation law is incorrect.
>>>>>> Naturally, everyone is going to say "There must be some mistake.
>>>>>> How were your
>>>>>> measurements taken? Show us your calculations, maybe you've got
>>>>>> your sums wrong."
>>>>>>
>>>>>> Now if they are also uncooperative about sharing the details of
>>>>>> the investigation,
>>>>>> those reservations will be magnified. There can be legitimate
>>>>>> reasons. Tigers are
>>>>>> rare and need to be conserved, you can't let anyone who wants
>>>>>> have access to the
>>>>>> tigers to try to repeat the measurements. But there's also a
>>>>>> common illegitimate
>>>>>> reason put forwards by people who make extraordinary claims. If
>>>>>> the claims were
>>>>>> unexceptional, such as that tigers have a similar energy budget
>>>>>> to lions, then no-one
>>>>>> would be saying "Show me your notebooks. How do you know that
>>>>>> calorimeter was
>>>>>> calibrated accurately? What's the name of the person who took
>>>>>> that measurement
>>>>>> and can I interview them?" Extraordinary claims are put through
>>>>>> the wringer in a way
>>>>>> that ordinary ones are not. I've seen complaints about this from
>>>>>> parapsychologists.
>>>>>> But if you're going to claim to have discovered a new physical
>>>>>> principle, you need
>>>>>> to present rock solid evidence.
>>>>>>
>>>>>> In this case, we can't see H. We can only suggest explanations
>>>>>> for its behaviour.
>>>>> It seems that you simply lack the technical competence.
>>>>> Go back and look at my proof again.
>>>>>
>>>> Sorry no. I've been programming since I was a boy and I have a PhD
>>>> in a computational-
>>>> related subject. I'm confident of my technical abilities. What I
>>>> can't do of course
>>>> is tell you exactly what is going on in code I cannot see. I've
>>>> got a pretty good idea,
>>>> but I can only reconstruct on the basis of what you tell me. Ben
>>>> thinks that I've
>>>> got it wrong and in fact there are no nested emulations at all.
>>>> I've no way of actually
>>>> disproving that idea without seeing H.
>>>>
>>>
>>> To fully understand this a software engineer must be an expert in:
>>> (a) The C programming language,
>>> (b) The x86 programming language,
>>> (c) Exactly how C translates into x86 and,
>>> (d) The ability to recognize infinite recursion at the x86 assembly
>>> language level.
>>>
>>> Anyone having the above credentials can validate my work, if you
>>> cannot validate my work then you do not sufficiently have the above
>>> credentials.
>>>
>>> Exactly how C translates into x86 is mandatory. If you don't know
>>> how the C calling conventions are implemented in x86 you cannot
>>> validate my work.
>>>
>>> From a purely software engineering perspective H(P,P) is required
>>> to to correctly determine that its correct and complete x86
>>> emulation of its input would never reach the "ret" instruction of
>>> this input and H must do this in a finite number of steps.
>>>
>>> The ordinary semantics of standard C and the conventional x86
>>> language are the entire semantics required to conclusively prove
>>> that H(P,P) does correctly determine that its correct and complete
>>> x86 emulation of its input would never reach the "ret" instruction
>>> (final state) of this input thus never halts.
>>>
>>> The correct and complete x86 emulation of its input by H(P,P) would
>>> never reach the "ret" instruction of P because both H and P would
>>> remain stuck in infinitely nested emulation.
>>>
>>> void P(u32 x)
>>> {
>>>   if (H(x, x))
>>>     HERE: goto HERE;
>>>   return;
>>> }
>>>
>>> int main()
>>> {
>>>   Output("Input_Halts = ", H((u32)P, (u32)P));
>>> }
>>>
>>> _P()
>>> [00001202](01)  55              push ebp
>>> [00001203](02)  8bec            mov ebp,esp
>>> [00001205](03)  8b4508          mov eax,[ebp+08]
>>> [00001208](01)  50              push eax
>>> [00001209](03)  8b4d08          mov ecx,[ebp+08]
>>> [0000120c](01)  51              push ecx
>>> [0000120d](05)  e820feffff      call 00001032
>>> [00001212](03)  83c408          add esp,+08
>>> [00001215](02)  85c0            test eax,eax
>>> [00001217](02)  7402            jz 0000121b
>>> [00001219](02)  ebfe            jmp 00001219
>>> [0000121b](01)  5d              pop ebp
>>> [0000121c](01)  c3              ret
>>> Size in bytes:(0027) [0000121c]
>>>
>>> _main()
>>> [00001222](01)  55              push ebp
>>> [00001223](02)  8bec            mov ebp,esp
>>> [00001225](05)  6802120000      push 00001202
>>> [0000122a](05)  6802120000      push 00001202
>>> [0000122f](05)  e8fefdffff      call 00001032
>>> [00001234](03)  83c408          add esp,+08
>>> [00001237](01)  50              push eax
>>> [00001238](05)  68b3030000      push 000003b3
>>> [0000123d](05)  e8c0f1ffff      call 00000402
>>> [00001242](03)  83c408          add esp,+08
>>> [00001245](02)  33c0            xor eax,eax
>>> [00001247](01)  5d              pop ebp
>>> [00001248](01)  c3              ret
>>> Size in bytes:(0039) [00001248]
>>>
>>>  machine   stack     stack     machine    assembly
>>>  address   address   data      code       language
>>>  ========  ========  ========  =========  =============
>>> [00001222][0010200f][00000000] 55         push ebp
>>> [00001223][0010200f][00000000] 8bec       mov ebp,esp
>>> [00001225][0010200b][00001202] 6802120000 push 00001202 // push P
>>> [0000122a][00102007][00001202] 6802120000 push 00001202 // push P
>>> [0000122f][00102003][00001234] e8fefdffff call 00001032 // call
>>> executed H
>>>
>>> Begin Simulation   Execution Trace Stored at:2120c3
>>> Address_of_H:1032
>>> [00001202][002120af][002120b3] 55         push ebp
>>> [00001203][002120af][002120b3] 8bec       mov ebp,esp
>>> [00001205][002120af][002120b3] 8b4508     mov eax,[ebp+08]
>>> [00001208][002120ab][00001202] 50         push eax      // push P
>>> [00001209][002120ab][00001202] 8b4d08     mov ecx,[ebp+08]
>>> [0000120c][002120a7][00001202] 51         push ecx      // push P
>>> [0000120d][002120a3][00001212] e820feffff call 00001032 // call
>>> emulated H Infinitely Recursive Simulation Detected Simulation
>>> Stopped
>>>
>>> H knows its own machine address and on this basis it can easily
>>> examine its stored execution_trace of P (see above) to determine:
>>> (a) P is calling H with the same arguments that H was called with.
>>> (b) No instructions in P could possibly escape this otherwise
>>> infinitely recursive emulation.
>>> (c) H aborts its emulation of P before its call to H is emulated.
>>>
>>
>> When you know that H simply implements the above algorithm there is
>> no need to see its source code. I am reserving the publication of the
>> 5 pages of the source code of the halt decider for journal
>> publication.
>
> Your H is not a pure function as it behaves differently depending on
> what is invoking it (it returns a decision answer to main() but not
> to P()) and it has side effects (aborting a simulation).
>
> /Flibble
>


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

<20220625162150.00002837@reddwarf.jmc>

  copy mid

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

  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!peer01.ams4!peer.am4.highwinds-media.com!news.highwinds-media.com!fx11.ams4.POSTED!not-for-mail
From: flib...@reddwarf.jmc (Mr Flibble)
Newsgroups: comp.theory,comp.ai.philosophy,sci.logic,sci.math
Subject: Re: Technically competent Software engineers can verify this
halting problem proof refutation
Message-ID: <20220625162150.00002837@reddwarf.jmc>
References: <EOydnaeszcdfHS__nZ2dnUU7_83NnZ2d@giganews.com>
<ccb8af3c-e497-4d6e-8040-826a4e87a6e7n@googlegroups.com>
<g9qdnRjZj9uBlS7_nZ2dnUU7_8zNnZ2d@giganews.com>
<0f7ed34c-5aaa-4858-885e-66e16777f599n@googlegroups.com>
<87a6a44s02.fsf@bsb.me.uk>
<a9adde1d-ad2c-444c-9b14-88841f5e8783n@googlegroups.com>
<87sfnv2e6e.fsf@bsb.me.uk>
<3a337f21-4828-46c4-b5be-87c76cff9db4n@googlegroups.com>
<878rplyhj6.fsf@bsb.me.uk>
<b6163094-01b0-4bb4-a3b1-4e48457527a0n@googlegroups.com>
<87fsjtwvut.fsf@bsb.me.uk>
<b2699d2d-40be-4e9b-9612-efb7121d5a8bn@googlegroups.com>
<t9637e$53p$1@dont-email.me>
<20edb990-f33e-4f3b-bc59-6cebf9f9def8n@googlegroups.com>
<wtidnY0ehdBiBiv_nZ2dnUU7_83NnZ2d@giganews.com>
<8328cb40-6b3c-4f89-a2ad-4054a6b466a6n@googlegroups.com>
<Jq2dnbDrVr_lhir_nZ2dnUU7_83NnZ2d@giganews.com>
<Jo2dnaO4cb0rvir_nZ2dnUU7_83NnZ2d@giganews.com>
<20220625160945.00006e9b@reddwarf.jmc>
<2umdnWsMdJX6uir_nZ2dnUU7_83NnZ2d@giganews.com>
Organization: Jupiter Mining Corp
X-Newsreader: Claws Mail 3.17.8 (GTK+ 2.24.33; x86_64-w64-mingw32)
MIME-Version: 1.0
Content-Type: text/plain; charset=ISO-8859-1
Content-Transfer-Encoding: quoted-printable
Lines: 251
X-Complaints-To: abuse@eweka.nl
NNTP-Posting-Date: Sat, 25 Jun 2022 15:21:46 UTC
Date: Sat, 25 Jun 2022 16:21:50 +0100
X-Received-Bytes: 13631
 by: Mr Flibble - Sat, 25 Jun 2022 15:21 UTC

On Sat, 25 Jun 2022 10:19:02 -0500
olcott <NoOne@NoWhere.com> wrote:

> On 6/25/2022 10:09 AM, Mr Flibble wrote:
> > On Sat, 25 Jun 2022 10:03:17 -0500
> > olcott <NoOne@NoWhere.com> wrote:
> >
> >> On 6/25/2022 9:28 AM, olcott wrote:
> >>> On 6/25/2022 2:32 AM, Malcolm McLean wrote:
> >>>> On Saturday, 25 June 2022 at 06:24:23 UTC+1, olcott wrote:
> >>>>> On 6/25/2022 12:09 AM, Malcolm McLean wrote:
> >>>>>> On Saturday, 25 June 2022 at 05:33:53 UTC+1, olcott wrote:
> >>>>>>> On 6/24/2022 11:01 PM, Malcolm McLean wrote:
> >>>>>>>> On Friday, 24 June 2022 at 23:16:30 UTC+1, Ben Bacarisse
> >>>>>>>> wrote:
> >>>>>>>>> Malcolm McLean <malcolm.ar...@gmail.com> writes:
> >>>>>>>>>
> >>>>>>>>>> "Dry run" means that a human programmer looks at the code,
> >>>>>>>>>> and determines
> >>>>>>>>>> what it does, without actually executing it.
> >>>>>>>>>
> >>>>>>>>> Going back, now, to what you think needs to be resolved:
> >>>>>>>>> | He's dry-run P(P) and established that it doesn't halt.
> >>>>>>>>> He's invoked H
> >>>>>>>>> | on it and H reports that it doesn't halt. He's run P(P)
> >>>>>>>>> and it halts.
> >>>>>>>>> The obvious conclusion is that PO's dry run (if he has
> >>>>>>>>> indeed done such
> >>>>>>>>> a thing) is incorrect.
> >>>>>>>>>
> >>>>>>>> Exactly.
> >>>>>>>> We do our little energy budget on tigers, and find that
> >>>>>>>> tigers spend more energy
> >>>>>>>> than they take in. Well potentially this is dynamite. One
> >>>>>>>> explanation is that the
> >>>>>>>> law of conservation of energy is wrong.
> >>>>>>>> Except, before we countenance that explanation, we need to
> >>>>>>>> rule out a much
> >>>>>>>> simpler explanation. Which is that our measurements are
> >>>>>>>> wrong.
> >>>>>>>>
> >>>>>>>> Similarly, PO has worked out what he thinks P(P) should be
> >>>>>>>> doing, by dry-running
> >>>>>>>> it, and then actually run P(P) and obtained a different
> >>>>>>>> result. He also found that H
> >>>>>>>> agreed with the dry run. It's hard to paraphrase his
> >>>>>>>> conclusion, but it is extensive
> >>>>>>>> and far-reaching in its implications. The behaviour of code
> >>>>>>>> when run is different
> >>>>>>>> from the correct behaviour of the code when simulated. If
> >>>>>>>> that's true, then it has
> >>>>>>>> similar implications for computer science that disproving the
> >>>>>>>> conservation law
> >>>>>>>> has for physics.
> >>>>>>>>
> >>>>>>>> But the obvious explanation is that the dry-run was
> >>>>>>>> incorrect. Lots of people have
> >>>>>>>> suggested why it is incorrect. But they can't actually see
> >>>>>>>> the code. PO needs to
> >>>>>>>> understand that no-one will accept the complicated,
> >>>>>>>> far-reaching explanation,
> >>>>>>>> until the simple explanation has been ruled out.
> >>>>>>>
> >>>>>>> I already proved that the dry run is correct.
> >>>>>>>
> >>>>>> Someone reports that tigers use more energy than they take in,
> >>>>>> and concludes that
> >>>>>> the energy conservation law is incorrect.
> >>>>>> Naturally, everyone is going to say "There must be some
> >>>>>> mistake. How were your
> >>>>>> measurements taken? Show us your calculations, maybe you've got
> >>>>>> your sums wrong."
> >>>>>>
> >>>>>> Now if they are also uncooperative about sharing the details of
> >>>>>> the investigation,
> >>>>>> those reservations will be magnified. There can be legitimate
> >>>>>> reasons. Tigers are
> >>>>>> rare and need to be conserved, you can't let anyone who wants
> >>>>>> have access to the
> >>>>>> tigers to try to repeat the measurements. But there's also a
> >>>>>> common illegitimate
> >>>>>> reason put forwards by people who make extraordinary claims. If
> >>>>>> the claims were
> >>>>>> unexceptional, such as that tigers have a similar energy budget
> >>>>>> to lions, then no-one
> >>>>>> would be saying "Show me your notebooks. How do you know that
> >>>>>> calorimeter was
> >>>>>> calibrated accurately? What's the name of the person who took
> >>>>>> that measurement
> >>>>>> and can I interview them?" Extraordinary claims are put through
> >>>>>> the wringer in a way
> >>>>>> that ordinary ones are not. I've seen complaints about this
> >>>>>> from parapsychologists.
> >>>>>> But if you're going to claim to have discovered a new physical
> >>>>>> principle, you need
> >>>>>> to present rock solid evidence.
> >>>>>>
> >>>>>> In this case, we can't see H. We can only suggest explanations
> >>>>>> for its behaviour.
> >>>>> It seems that you simply lack the technical competence.
> >>>>> Go back and look at my proof again.
> >>>>>
> >>>> Sorry no. I've been programming since I was a boy and I have a
> >>>> PhD in a computational-
> >>>> related subject. I'm confident of my technical abilities. What I
> >>>> can't do of course
> >>>> is tell you exactly what is going on in code I cannot see. I've
> >>>> got a pretty good idea,
> >>>> but I can only reconstruct on the basis of what you tell me. Ben
> >>>> thinks that I've
> >>>> got it wrong and in fact there are no nested emulations at all.
> >>>> I've no way of actually
> >>>> disproving that idea without seeing H.
> >>>>
> >>>
> >>> To fully understand this a software engineer must be an expert in:
> >>> (a) The C programming language,
> >>> (b) The x86 programming language,
> >>> (c) Exactly how C translates into x86 and,
> >>> (d) The ability to recognize infinite recursion at the x86
> >>> assembly language level.
> >>>
> >>> Anyone having the above credentials can validate my work, if you
> >>> cannot validate my work then you do not sufficiently have the
> >>> above credentials.
> >>>
> >>> Exactly how C translates into x86 is mandatory. If you don't know
> >>> how the C calling conventions are implemented in x86 you cannot
> >>> validate my work.
> >>>
> >>> From a purely software engineering perspective H(P,P) is
> >>> required to to correctly determine that its correct and complete
> >>> x86 emulation of its input would never reach the "ret"
> >>> instruction of this input and H must do this in a finite number
> >>> of steps.
> >>>
> >>> The ordinary semantics of standard C and the conventional x86
> >>> language are the entire semantics required to conclusively prove
> >>> that H(P,P) does correctly determine that its correct and complete
> >>> x86 emulation of its input would never reach the "ret" instruction
> >>> (final state) of this input thus never halts.
> >>>
> >>> The correct and complete x86 emulation of its input by H(P,P)
> >>> would never reach the "ret" instruction of P because both H and P
> >>> would remain stuck in infinitely nested emulation.
> >>>
> >>> void P(u32 x)
> >>> {
> >>>   if (H(x, x))
> >>>     HERE: goto HERE;
> >>>   return;
> >>> }
> >>>
> >>> int main()
> >>> {
> >>>   Output("Input_Halts = ", H((u32)P, (u32)P));
> >>> }
> >>>
> >>> _P()
> >>> [00001202](01)  55              push ebp
> >>> [00001203](02)  8bec            mov ebp,esp
> >>> [00001205](03)  8b4508          mov eax,[ebp+08]
> >>> [00001208](01)  50              push eax
> >>> [00001209](03)  8b4d08          mov ecx,[ebp+08]
> >>> [0000120c](01)  51              push ecx
> >>> [0000120d](05)  e820feffff      call 00001032
> >>> [00001212](03)  83c408          add esp,+08
> >>> [00001215](02)  85c0            test eax,eax
> >>> [00001217](02)  7402            jz 0000121b
> >>> [00001219](02)  ebfe            jmp 00001219
> >>> [0000121b](01)  5d              pop ebp
> >>> [0000121c](01)  c3              ret
> >>> Size in bytes:(0027) [0000121c]
> >>>
> >>> _main()
> >>> [00001222](01)  55              push ebp
> >>> [00001223](02)  8bec            mov ebp,esp
> >>> [00001225](05)  6802120000      push 00001202
> >>> [0000122a](05)  6802120000      push 00001202
> >>> [0000122f](05)  e8fefdffff      call 00001032
> >>> [00001234](03)  83c408          add esp,+08
> >>> [00001237](01)  50              push eax
> >>> [00001238](05)  68b3030000      push 000003b3
> >>> [0000123d](05)  e8c0f1ffff      call 00000402
> >>> [00001242](03)  83c408          add esp,+08
> >>> [00001245](02)  33c0            xor eax,eax
> >>> [00001247](01)  5d              pop ebp
> >>> [00001248](01)  c3              ret
> >>> Size in bytes:(0039) [00001248]
> >>>
> >>>  machine   stack     stack     machine    assembly
> >>>  address   address   data      code       language
> >>>  ========  ========  ========  =========  ============> >>> [00001222][0010200f][00000000] 55         push ebp
> >>> [00001223][0010200f][00000000] 8bec       mov ebp,esp
> >>> [00001225][0010200b][00001202] 6802120000 push 00001202 // push P
> >>> [0000122a][00102007][00001202] 6802120000 push 00001202 // push P
> >>> [0000122f][00102003][00001234] e8fefdffff call 00001032 // call
> >>> executed H
> >>>
> >>> Begin Simulation   Execution Trace Stored at:2120c3
> >>> Address_of_H:1032
> >>> [00001202][002120af][002120b3] 55         push ebp
> >>> [00001203][002120af][002120b3] 8bec       mov ebp,esp
> >>> [00001205][002120af][002120b3] 8b4508     mov eax,[ebp+08]
> >>> [00001208][002120ab][00001202] 50         push eax      // push P
> >>> [00001209][002120ab][00001202] 8b4d08     mov ecx,[ebp+08]
> >>> [0000120c][002120a7][00001202] 51         push ecx      // push P
> >>> [0000120d][002120a3][00001212] e820feffff call 00001032 // call
> >>> emulated H Infinitely Recursive Simulation Detected Simulation
> >>> Stopped
> >>>
> >>> H knows its own machine address and on this basis it can easily
> >>> examine its stored execution_trace of P (see above) to determine:
> >>> (a) P is calling H with the same arguments that H was called with.
> >>> (b) No instructions in P could possibly escape this otherwise
> >>> infinitely recursive emulation.
> >>> (c) H aborts its emulation of P before its call to H is emulated.
> >>>
> >>
> >> When you know that H simply implements the above algorithm there is
> >> no need to see its source code. I am reserving the publication of
> >> the 5 pages of the source code of the halt decider for journal
> >> publication.
> >
> > Your H is not a pure function as it behaves differently depending on
> > what is invoking it (it returns a decision answer to main() but not
> > to P()) and it has side effects (aborting a simulation).
> >
> > /Flibble
> >
>
> Finally a critique that has a reasonable basis.
>
> When I transformed H into a pure function of its inputs it always has
> the same behavior no matter how it is invoked.
>
> The x86 emulation of P is aborted before P invokes H.

Click here to read the complete article

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

<676dnb21wJs7sir_nZ2dnUU7_8zNnZ2d@giganews.com>

  copy mid

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

  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: Sat, 25 Jun 2022 10:54:14 -0500
Date: Sat, 25 Jun 2022 10:54: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
Content-Language: en-US
Newsgroups: comp.theory,comp.ai.philosophy,sci.logic,sci.math
References: <EOydnaeszcdfHS__nZ2dnUU7_83NnZ2d@giganews.com>
<ccb8af3c-e497-4d6e-8040-826a4e87a6e7n@googlegroups.com>
<g9qdnRjZj9uBlS7_nZ2dnUU7_8zNnZ2d@giganews.com>
<0f7ed34c-5aaa-4858-885e-66e16777f599n@googlegroups.com>
<87a6a44s02.fsf@bsb.me.uk>
<a9adde1d-ad2c-444c-9b14-88841f5e8783n@googlegroups.com>
<87sfnv2e6e.fsf@bsb.me.uk>
<3a337f21-4828-46c4-b5be-87c76cff9db4n@googlegroups.com>
<878rplyhj6.fsf@bsb.me.uk>
<b6163094-01b0-4bb4-a3b1-4e48457527a0n@googlegroups.com>
<87fsjtwvut.fsf@bsb.me.uk>
<b2699d2d-40be-4e9b-9612-efb7121d5a8bn@googlegroups.com>
<t9637e$53p$1@dont-email.me>
<20edb990-f33e-4f3b-bc59-6cebf9f9def8n@googlegroups.com>
<wtidnY0ehdBiBiv_nZ2dnUU7_83NnZ2d@giganews.com>
<8328cb40-6b3c-4f89-a2ad-4054a6b466a6n@googlegroups.com>
<Jq2dnbDrVr_lhir_nZ2dnUU7_83NnZ2d@giganews.com>
<Jo2dnaO4cb0rvir_nZ2dnUU7_83NnZ2d@giganews.com>
<20220625160945.00006e9b@reddwarf.jmc>
<2umdnWsMdJX6uir_nZ2dnUU7_83NnZ2d@giganews.com>
<20220625162150.00002837@reddwarf.jmc>
From: NoO...@NoWhere.com (olcott)
In-Reply-To: <20220625162150.00002837@reddwarf.jmc>
Content-Type: text/plain; charset=UTF-8; format=flowed
Content-Transfer-Encoding: 8bit
Message-ID: <676dnb21wJs7sir_nZ2dnUU7_8zNnZ2d@giganews.com>
Lines: 272
X-Usenet-Provider: http://www.giganews.com
X-Trace: sv3-sgFClBTN+re5qAAHQ/1Y66J3Pb+jQuDyRkL/qkXtejmk1+PphuMrGTZUpv/YQ6wjTV4vca4Ldo0RJdh!i8Qfid4mOnFdXSl16eFsPxaMlyTTf9CV5tBocW7clKDCjIbNwYkLisyUGrx5aICoC6XoN2xA+MtA
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: 14616
 by: olcott - Sat, 25 Jun 2022 15:54 UTC

On 6/25/2022 10:21 AM, Mr Flibble wrote:
> On Sat, 25 Jun 2022 10:19:02 -0500
> olcott <NoOne@NoWhere.com> wrote:
>
>> On 6/25/2022 10:09 AM, Mr Flibble wrote:
>>> On Sat, 25 Jun 2022 10:03:17 -0500
>>> olcott <NoOne@NoWhere.com> wrote:
>>>
>>>> On 6/25/2022 9:28 AM, olcott wrote:
>>>>> On 6/25/2022 2:32 AM, Malcolm McLean wrote:
>>>>>> On Saturday, 25 June 2022 at 06:24:23 UTC+1, olcott wrote:
>>>>>>> On 6/25/2022 12:09 AM, Malcolm McLean wrote:
>>>>>>>> On Saturday, 25 June 2022 at 05:33:53 UTC+1, olcott wrote:
>>>>>>>>> On 6/24/2022 11:01 PM, Malcolm McLean wrote:
>>>>>>>>>> On Friday, 24 June 2022 at 23:16:30 UTC+1, Ben Bacarisse
>>>>>>>>>> wrote:
>>>>>>>>>>> Malcolm McLean <malcolm.ar...@gmail.com> writes:
>>>>>>>>>>>
>>>>>>>>>>>> "Dry run" means that a human programmer looks at the code,
>>>>>>>>>>>> and determines
>>>>>>>>>>>> what it does, without actually executing it.
>>>>>>>>>>>
>>>>>>>>>>> Going back, now, to what you think needs to be resolved:
>>>>>>>>>>> | He's dry-run P(P) and established that it doesn't halt.
>>>>>>>>>>> He's invoked H
>>>>>>>>>>> | on it and H reports that it doesn't halt. He's run P(P)
>>>>>>>>>>> and it halts.
>>>>>>>>>>> The obvious conclusion is that PO's dry run (if he has
>>>>>>>>>>> indeed done such
>>>>>>>>>>> a thing) is incorrect.
>>>>>>>>>>>
>>>>>>>>>> Exactly.
>>>>>>>>>> We do our little energy budget on tigers, and find that
>>>>>>>>>> tigers spend more energy
>>>>>>>>>> than they take in. Well potentially this is dynamite. One
>>>>>>>>>> explanation is that the
>>>>>>>>>> law of conservation of energy is wrong.
>>>>>>>>>> Except, before we countenance that explanation, we need to
>>>>>>>>>> rule out a much
>>>>>>>>>> simpler explanation. Which is that our measurements are
>>>>>>>>>> wrong.
>>>>>>>>>>
>>>>>>>>>> Similarly, PO has worked out what he thinks P(P) should be
>>>>>>>>>> doing, by dry-running
>>>>>>>>>> it, and then actually run P(P) and obtained a different
>>>>>>>>>> result. He also found that H
>>>>>>>>>> agreed with the dry run. It's hard to paraphrase his
>>>>>>>>>> conclusion, but it is extensive
>>>>>>>>>> and far-reaching in its implications. The behaviour of code
>>>>>>>>>> when run is different
>>>>>>>>>> from the correct behaviour of the code when simulated. If
>>>>>>>>>> that's true, then it has
>>>>>>>>>> similar implications for computer science that disproving the
>>>>>>>>>> conservation law
>>>>>>>>>> has for physics.
>>>>>>>>>>
>>>>>>>>>> But the obvious explanation is that the dry-run was
>>>>>>>>>> incorrect. Lots of people have
>>>>>>>>>> suggested why it is incorrect. But they can't actually see
>>>>>>>>>> the code. PO needs to
>>>>>>>>>> understand that no-one will accept the complicated,
>>>>>>>>>> far-reaching explanation,
>>>>>>>>>> until the simple explanation has been ruled out.
>>>>>>>>>
>>>>>>>>> I already proved that the dry run is correct.
>>>>>>>>>
>>>>>>>> Someone reports that tigers use more energy than they take in,
>>>>>>>> and concludes that
>>>>>>>> the energy conservation law is incorrect.
>>>>>>>> Naturally, everyone is going to say "There must be some
>>>>>>>> mistake. How were your
>>>>>>>> measurements taken? Show us your calculations, maybe you've got
>>>>>>>> your sums wrong."
>>>>>>>>
>>>>>>>> Now if they are also uncooperative about sharing the details of
>>>>>>>> the investigation,
>>>>>>>> those reservations will be magnified. There can be legitimate
>>>>>>>> reasons. Tigers are
>>>>>>>> rare and need to be conserved, you can't let anyone who wants
>>>>>>>> have access to the
>>>>>>>> tigers to try to repeat the measurements. But there's also a
>>>>>>>> common illegitimate
>>>>>>>> reason put forwards by people who make extraordinary claims. If
>>>>>>>> the claims were
>>>>>>>> unexceptional, such as that tigers have a similar energy budget
>>>>>>>> to lions, then no-one
>>>>>>>> would be saying "Show me your notebooks. How do you know that
>>>>>>>> calorimeter was
>>>>>>>> calibrated accurately? What's the name of the person who took
>>>>>>>> that measurement
>>>>>>>> and can I interview them?" Extraordinary claims are put through
>>>>>>>> the wringer in a way
>>>>>>>> that ordinary ones are not. I've seen complaints about this
>>>>>>>> from parapsychologists.
>>>>>>>> But if you're going to claim to have discovered a new physical
>>>>>>>> principle, you need
>>>>>>>> to present rock solid evidence.
>>>>>>>>
>>>>>>>> In this case, we can't see H. We can only suggest explanations
>>>>>>>> for its behaviour.
>>>>>>> It seems that you simply lack the technical competence.
>>>>>>> Go back and look at my proof again.
>>>>>>>
>>>>>> Sorry no. I've been programming since I was a boy and I have a
>>>>>> PhD in a computational-
>>>>>> related subject. I'm confident of my technical abilities. What I
>>>>>> can't do of course
>>>>>> is tell you exactly what is going on in code I cannot see. I've
>>>>>> got a pretty good idea,
>>>>>> but I can only reconstruct on the basis of what you tell me. Ben
>>>>>> thinks that I've
>>>>>> got it wrong and in fact there are no nested emulations at all.
>>>>>> I've no way of actually
>>>>>> disproving that idea without seeing H.
>>>>>>
>>>>>
>>>>> To fully understand this a software engineer must be an expert in:
>>>>> (a) The C programming language,
>>>>> (b) The x86 programming language,
>>>>> (c) Exactly how C translates into x86 and,
>>>>> (d) The ability to recognize infinite recursion at the x86
>>>>> assembly language level.
>>>>>
>>>>> Anyone having the above credentials can validate my work, if you
>>>>> cannot validate my work then you do not sufficiently have the
>>>>> above credentials.
>>>>>
>>>>> Exactly how C translates into x86 is mandatory. If you don't know
>>>>> how the C calling conventions are implemented in x86 you cannot
>>>>> validate my work.
>>>>>
>>>>> From a purely software engineering perspective H(P,P) is
>>>>> required to to correctly determine that its correct and complete
>>>>> x86 emulation of its input would never reach the "ret"
>>>>> instruction of this input and H must do this in a finite number
>>>>> of steps.
>>>>>
>>>>> The ordinary semantics of standard C and the conventional x86
>>>>> language are the entire semantics required to conclusively prove
>>>>> that H(P,P) does correctly determine that its correct and complete
>>>>> x86 emulation of its input would never reach the "ret" instruction
>>>>> (final state) of this input thus never halts.
>>>>>
>>>>> The correct and complete x86 emulation of its input by H(P,P)
>>>>> would never reach the "ret" instruction of P because both H and P
>>>>> would remain stuck in infinitely nested emulation.
>>>>>
>>>>> void P(u32 x)
>>>>> {
>>>>>   if (H(x, x))
>>>>>     HERE: goto HERE;
>>>>>   return;
>>>>> }
>>>>>
>>>>> int main()
>>>>> {
>>>>>   Output("Input_Halts = ", H((u32)P, (u32)P));
>>>>> }
>>>>>
>>>>> _P()
>>>>> [00001202](01)  55              push ebp
>>>>> [00001203](02)  8bec            mov ebp,esp
>>>>> [00001205](03)  8b4508          mov eax,[ebp+08]
>>>>> [00001208](01)  50              push eax
>>>>> [00001209](03)  8b4d08          mov ecx,[ebp+08]
>>>>> [0000120c](01)  51              push ecx
>>>>> [0000120d](05)  e820feffff      call 00001032
>>>>> [00001212](03)  83c408          add esp,+08
>>>>> [00001215](02)  85c0            test eax,eax
>>>>> [00001217](02)  7402            jz 0000121b
>>>>> [00001219](02)  ebfe            jmp 00001219
>>>>> [0000121b](01)  5d              pop ebp
>>>>> [0000121c](01)  c3              ret
>>>>> Size in bytes:(0027) [0000121c]
>>>>>
>>>>> _main()
>>>>> [00001222](01)  55              push ebp
>>>>> [00001223](02)  8bec            mov ebp,esp
>>>>> [00001225](05)  6802120000      push 00001202
>>>>> [0000122a](05)  6802120000      push 00001202
>>>>> [0000122f](05)  e8fefdffff      call 00001032
>>>>> [00001234](03)  83c408          add esp,+08
>>>>> [00001237](01)  50              push eax
>>>>> [00001238](05)  68b3030000      push 000003b3
>>>>> [0000123d](05)  e8c0f1ffff      call 00000402
>>>>> [00001242](03)  83c408          add esp,+08
>>>>> [00001245](02)  33c0            xor eax,eax
>>>>> [00001247](01)  5d              pop ebp
>>>>> [00001248](01)  c3              ret
>>>>> Size in bytes:(0039) [00001248]
>>>>>
>>>>>  machine   stack     stack     machine    assembly
>>>>>  address   address   data      code       language
>>>>>  ========  ========  ========  =========  =============
>>>>> [00001222][0010200f][00000000] 55         push ebp
>>>>> [00001223][0010200f][00000000] 8bec       mov ebp,esp
>>>>> [00001225][0010200b][00001202] 6802120000 push 00001202 // push P
>>>>> [0000122a][00102007][00001202] 6802120000 push 00001202 // push P
>>>>> [0000122f][00102003][00001234] e8fefdffff call 00001032 // call
>>>>> executed H
>>>>>
>>>>> Begin Simulation   Execution Trace Stored at:2120c3
>>>>> Address_of_H:1032
>>>>> [00001202][002120af][002120b3] 55         push ebp
>>>>> [00001203][002120af][002120b3] 8bec       mov ebp,esp
>>>>> [00001205][002120af][002120b3] 8b4508     mov eax,[ebp+08]
>>>>> [00001208][002120ab][00001202] 50         push eax      // push P
>>>>> [00001209][002120ab][00001202] 8b4d08     mov ecx,[ebp+08]
>>>>> [0000120c][002120a7][00001202] 51         push ecx      // push P
>>>>> [0000120d][002120a3][00001212] e820feffff call 00001032 // call
>>>>> emulated H Infinitely Recursive Simulation Detected Simulation
>>>>> Stopped
>>>>>
>>>>> H knows its own machine address and on this basis it can easily
>>>>> examine its stored execution_trace of P (see above) to determine:
>>>>> (a) P is calling H with the same arguments that H was called with.
>>>>> (b) No instructions in P could possibly escape this otherwise
>>>>> infinitely recursive emulation.
>>>>> (c) H aborts its emulation of P before its call to H is emulated.
>>>>>
>>>>
>>>> When you know that H simply implements the above algorithm there is
>>>> no need to see its source code. I am reserving the publication of
>>>> the 5 pages of the source code of the halt decider for journal
>>>> publication.
>>>
>>> Your H is not a pure function as it behaves differently depending on
>>> what is invoking it (it returns a decision answer to main() but not
>>> to P()) and it has side effects (aborting a simulation).
>>>
>>> /Flibble
>>>
>>
>> Finally a critique that has a reasonable basis.
>>
>> When I transformed H into a pure function of its inputs it always has
>> the same behavior no matter how it is invoked.
>>
>> The x86 emulation of P is aborted before P invokes H.
>
> Nope. Preventing a call to H is equivalent to H behaving differently
> for same inputs. Aborting a simulation is a side effect: pure functions
> do not have side effects.
>
> /Flibble
>


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

<20220625165919.0000287e@reddwarf.jmc>

  copy mid

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

  copy link   Newsgroups: comp.theory comp.ai.philosophy sci.logic sci.math
Path: i2pn2.org!i2pn.org!usenet.blueworldhosting.com!feed1.usenet.blueworldhosting.com!peer01.iad!feed-me.highwinds-media.com!peer01.ams1!peer.ams1.xlned.com!news.xlned.com!peer01.ams4!peer.am4.highwinds-media.com!news.highwinds-media.com!fx11.ams4.POSTED!not-for-mail
From: flib...@reddwarf.jmc (Mr Flibble)
Newsgroups: comp.theory,comp.ai.philosophy,sci.logic,sci.math
Subject: Re: Technically competent Software engineers can verify this
halting problem proof refutation
Message-ID: <20220625165919.0000287e@reddwarf.jmc>
References: <EOydnaeszcdfHS__nZ2dnUU7_83NnZ2d@giganews.com>
<g9qdnRjZj9uBlS7_nZ2dnUU7_8zNnZ2d@giganews.com>
<0f7ed34c-5aaa-4858-885e-66e16777f599n@googlegroups.com>
<87a6a44s02.fsf@bsb.me.uk>
<a9adde1d-ad2c-444c-9b14-88841f5e8783n@googlegroups.com>
<87sfnv2e6e.fsf@bsb.me.uk>
<3a337f21-4828-46c4-b5be-87c76cff9db4n@googlegroups.com>
<878rplyhj6.fsf@bsb.me.uk>
<b6163094-01b0-4bb4-a3b1-4e48457527a0n@googlegroups.com>
<87fsjtwvut.fsf@bsb.me.uk>
<b2699d2d-40be-4e9b-9612-efb7121d5a8bn@googlegroups.com>
<t9637e$53p$1@dont-email.me>
<20edb990-f33e-4f3b-bc59-6cebf9f9def8n@googlegroups.com>
<wtidnY0ehdBiBiv_nZ2dnUU7_83NnZ2d@giganews.com>
<8328cb40-6b3c-4f89-a2ad-4054a6b466a6n@googlegroups.com>
<Jq2dnbDrVr_lhir_nZ2dnUU7_83NnZ2d@giganews.com>
<Jo2dnaO4cb0rvir_nZ2dnUU7_83NnZ2d@giganews.com>
<20220625160945.00006e9b@reddwarf.jmc>
<2umdnWsMdJX6uir_nZ2dnUU7_83NnZ2d@giganews.com>
<20220625162150.00002837@reddwarf.jmc>
<676dnb21wJs7sir_nZ2dnUU7_8zNnZ2d@giganews.com>
Organization: Jupiter Mining Corp
X-Newsreader: Claws Mail 3.17.8 (GTK+ 2.24.33; x86_64-w64-mingw32)
MIME-Version: 1.0
Content-Type: text/plain; charset=ISO-8859-1
Content-Transfer-Encoding: quoted-printable
Lines: 270
X-Complaints-To: abuse@eweka.nl
NNTP-Posting-Date: Sat, 25 Jun 2022 15:59:15 UTC
Date: Sat, 25 Jun 2022 16:59:19 +0100
X-Received-Bytes: 14904
 by: Mr Flibble - Sat, 25 Jun 2022 15:59 UTC

On Sat, 25 Jun 2022 10:54:13 -0500
olcott <NoOne@NoWhere.com> wrote:

> On 6/25/2022 10:21 AM, Mr Flibble wrote:
> > On Sat, 25 Jun 2022 10:19:02 -0500
> > olcott <NoOne@NoWhere.com> wrote:
> >
> >> On 6/25/2022 10:09 AM, Mr Flibble wrote:
> >>> On Sat, 25 Jun 2022 10:03:17 -0500
> >>> olcott <NoOne@NoWhere.com> wrote:
> >>>
> >>>> On 6/25/2022 9:28 AM, olcott wrote:
> >>>>> On 6/25/2022 2:32 AM, Malcolm McLean wrote:
> >>>>>> On Saturday, 25 June 2022 at 06:24:23 UTC+1, olcott wrote:
> >>>>>>> On 6/25/2022 12:09 AM, Malcolm McLean wrote:
> >>>>>>>> On Saturday, 25 June 2022 at 05:33:53 UTC+1, olcott wrote:
> >>>>>>>>> On 6/24/2022 11:01 PM, Malcolm McLean wrote:
> >>>>>>>>>> On Friday, 24 June 2022 at 23:16:30 UTC+1, Ben Bacarisse
> >>>>>>>>>> wrote:
> >>>>>>>>>>> Malcolm McLean <malcolm.ar...@gmail.com> writes:
> >>>>>>>>>>>
> >>>>>>>>>>>> "Dry run" means that a human programmer looks at the
> >>>>>>>>>>>> code, and determines
> >>>>>>>>>>>> what it does, without actually executing it.
> >>>>>>>>>>>
> >>>>>>>>>>> Going back, now, to what you think needs to be resolved:
> >>>>>>>>>>> | He's dry-run P(P) and established that it doesn't halt.
> >>>>>>>>>>> He's invoked H
> >>>>>>>>>>> | on it and H reports that it doesn't halt. He's run P(P)
> >>>>>>>>>>> and it halts.
> >>>>>>>>>>> The obvious conclusion is that PO's dry run (if he has
> >>>>>>>>>>> indeed done such
> >>>>>>>>>>> a thing) is incorrect.
> >>>>>>>>>>>
> >>>>>>>>>> Exactly.
> >>>>>>>>>> We do our little energy budget on tigers, and find that
> >>>>>>>>>> tigers spend more energy
> >>>>>>>>>> than they take in. Well potentially this is dynamite. One
> >>>>>>>>>> explanation is that the
> >>>>>>>>>> law of conservation of energy is wrong.
> >>>>>>>>>> Except, before we countenance that explanation, we need to
> >>>>>>>>>> rule out a much
> >>>>>>>>>> simpler explanation. Which is that our measurements are
> >>>>>>>>>> wrong.
> >>>>>>>>>>
> >>>>>>>>>> Similarly, PO has worked out what he thinks P(P) should be
> >>>>>>>>>> doing, by dry-running
> >>>>>>>>>> it, and then actually run P(P) and obtained a different
> >>>>>>>>>> result. He also found that H
> >>>>>>>>>> agreed with the dry run. It's hard to paraphrase his
> >>>>>>>>>> conclusion, but it is extensive
> >>>>>>>>>> and far-reaching in its implications. The behaviour of code
> >>>>>>>>>> when run is different
> >>>>>>>>>> from the correct behaviour of the code when simulated. If
> >>>>>>>>>> that's true, then it has
> >>>>>>>>>> similar implications for computer science that disproving
> >>>>>>>>>> the conservation law
> >>>>>>>>>> has for physics.
> >>>>>>>>>>
> >>>>>>>>>> But the obvious explanation is that the dry-run was
> >>>>>>>>>> incorrect. Lots of people have
> >>>>>>>>>> suggested why it is incorrect. But they can't actually see
> >>>>>>>>>> the code. PO needs to
> >>>>>>>>>> understand that no-one will accept the complicated,
> >>>>>>>>>> far-reaching explanation,
> >>>>>>>>>> until the simple explanation has been ruled out.
> >>>>>>>>>
> >>>>>>>>> I already proved that the dry run is correct.
> >>>>>>>>>
> >>>>>>>> Someone reports that tigers use more energy than they take
> >>>>>>>> in, and concludes that
> >>>>>>>> the energy conservation law is incorrect.
> >>>>>>>> Naturally, everyone is going to say "There must be some
> >>>>>>>> mistake. How were your
> >>>>>>>> measurements taken? Show us your calculations, maybe you've
> >>>>>>>> got your sums wrong."
> >>>>>>>>
> >>>>>>>> Now if they are also uncooperative about sharing the details
> >>>>>>>> of the investigation,
> >>>>>>>> those reservations will be magnified. There can be legitimate
> >>>>>>>> reasons. Tigers are
> >>>>>>>> rare and need to be conserved, you can't let anyone who wants
> >>>>>>>> have access to the
> >>>>>>>> tigers to try to repeat the measurements. But there's also a
> >>>>>>>> common illegitimate
> >>>>>>>> reason put forwards by people who make extraordinary claims.
> >>>>>>>> If the claims were
> >>>>>>>> unexceptional, such as that tigers have a similar energy
> >>>>>>>> budget to lions, then no-one
> >>>>>>>> would be saying "Show me your notebooks. How do you know that
> >>>>>>>> calorimeter was
> >>>>>>>> calibrated accurately? What's the name of the person who took
> >>>>>>>> that measurement
> >>>>>>>> and can I interview them?" Extraordinary claims are put
> >>>>>>>> through the wringer in a way
> >>>>>>>> that ordinary ones are not. I've seen complaints about this
> >>>>>>>> from parapsychologists.
> >>>>>>>> But if you're going to claim to have discovered a new
> >>>>>>>> physical principle, you need
> >>>>>>>> to present rock solid evidence.
> >>>>>>>>
> >>>>>>>> In this case, we can't see H. We can only suggest
> >>>>>>>> explanations for its behaviour.
> >>>>>>> It seems that you simply lack the technical competence.
> >>>>>>> Go back and look at my proof again.
> >>>>>>>
> >>>>>> Sorry no. I've been programming since I was a boy and I have a
> >>>>>> PhD in a computational-
> >>>>>> related subject. I'm confident of my technical abilities. What
> >>>>>> I can't do of course
> >>>>>> is tell you exactly what is going on in code I cannot see. I've
> >>>>>> got a pretty good idea,
> >>>>>> but I can only reconstruct on the basis of what you tell me.
> >>>>>> Ben thinks that I've
> >>>>>> got it wrong and in fact there are no nested emulations at all.
> >>>>>> I've no way of actually
> >>>>>> disproving that idea without seeing H.
> >>>>>>
> >>>>>
> >>>>> To fully understand this a software engineer must be an expert
> >>>>> in: (a) The C programming language,
> >>>>> (b) The x86 programming language,
> >>>>> (c) Exactly how C translates into x86 and,
> >>>>> (d) The ability to recognize infinite recursion at the x86
> >>>>> assembly language level.
> >>>>>
> >>>>> Anyone having the above credentials can validate my work, if you
> >>>>> cannot validate my work then you do not sufficiently have the
> >>>>> above credentials.
> >>>>>
> >>>>> Exactly how C translates into x86 is mandatory. If you don't
> >>>>> know how the C calling conventions are implemented in x86 you
> >>>>> cannot validate my work.
> >>>>>
> >>>>> From a purely software engineering perspective H(P,P) is
> >>>>> required to to correctly determine that its correct and complete
> >>>>> x86 emulation of its input would never reach the "ret"
> >>>>> instruction of this input and H must do this in a finite number
> >>>>> of steps.
> >>>>>
> >>>>> The ordinary semantics of standard C and the conventional x86
> >>>>> language are the entire semantics required to conclusively prove
> >>>>> that H(P,P) does correctly determine that its correct and
> >>>>> complete x86 emulation of its input would never reach the "ret"
> >>>>> instruction (final state) of this input thus never halts.
> >>>>>
> >>>>> The correct and complete x86 emulation of its input by H(P,P)
> >>>>> would never reach the "ret" instruction of P because both H and
> >>>>> P would remain stuck in infinitely nested emulation.
> >>>>>
> >>>>> void P(u32 x)
> >>>>> {
> >>>>>   if (H(x, x))
> >>>>>     HERE: goto HERE;
> >>>>>   return;
> >>>>> }
> >>>>>
> >>>>> int main()
> >>>>> {
> >>>>>   Output("Input_Halts = ", H((u32)P, (u32)P));
> >>>>> }
> >>>>>
> >>>>> _P()
> >>>>> [00001202](01)  55              push ebp
> >>>>> [00001203](02)  8bec            mov ebp,esp
> >>>>> [00001205](03)  8b4508          mov eax,[ebp+08]
> >>>>> [00001208](01)  50              push eax
> >>>>> [00001209](03)  8b4d08          mov ecx,[ebp+08]
> >>>>> [0000120c](01)  51              push ecx
> >>>>> [0000120d](05)  e820feffff      call 00001032
> >>>>> [00001212](03)  83c408          add esp,+08
> >>>>> [00001215](02)  85c0            test eax,eax
> >>>>> [00001217](02)  7402            jz 0000121b
> >>>>> [00001219](02)  ebfe            jmp 00001219
> >>>>> [0000121b](01)  5d              pop ebp
> >>>>> [0000121c](01)  c3              ret
> >>>>> Size in bytes:(0027) [0000121c]
> >>>>>
> >>>>> _main()
> >>>>> [00001222](01)  55              push ebp
> >>>>> [00001223](02)  8bec            mov ebp,esp
> >>>>> [00001225](05)  6802120000      push 00001202
> >>>>> [0000122a](05)  6802120000      push 00001202
> >>>>> [0000122f](05)  e8fefdffff      call 00001032
> >>>>> [00001234](03)  83c408          add esp,+08
> >>>>> [00001237](01)  50              push eax
> >>>>> [00001238](05)  68b3030000      push 000003b3
> >>>>> [0000123d](05)  e8c0f1ffff      call 00000402
> >>>>> [00001242](03)  83c408          add esp,+08
> >>>>> [00001245](02)  33c0            xor eax,eax
> >>>>> [00001247](01)  5d              pop ebp
> >>>>> [00001248](01)  c3              ret
> >>>>> Size in bytes:(0039) [00001248]
> >>>>>
> >>>>>  machine   stack     stack     machine    assembly
> >>>>>  address   address   data      code       language
> >>>>>  ========  ========  ========  =========  ============> >>>>> [00001222][0010200f][00000000] 55         push ebp
> >>>>> [00001223][0010200f][00000000] 8bec       mov ebp,esp
> >>>>> [00001225][0010200b][00001202] 6802120000 push 00001202 // push
> >>>>> P [0000122a][00102007][00001202] 6802120000 push 00001202 //
> >>>>> push P [0000122f][00102003][00001234] e8fefdffff call 00001032
> >>>>> // call executed H
> >>>>>
> >>>>> Begin Simulation   Execution Trace Stored at:2120c3
> >>>>> Address_of_H:1032
> >>>>> [00001202][002120af][002120b3] 55         push ebp
> >>>>> [00001203][002120af][002120b3] 8bec       mov ebp,esp
> >>>>> [00001205][002120af][002120b3] 8b4508     mov eax,[ebp+08]
> >>>>> [00001208][002120ab][00001202] 50         push eax      // push
> >>>>> P [00001209][002120ab][00001202] 8b4d08     mov ecx,[ebp+08]
> >>>>> [0000120c][002120a7][00001202] 51         push ecx      // push
> >>>>> P [0000120d][002120a3][00001212] e820feffff call 00001032 //
> >>>>> call emulated H Infinitely Recursive Simulation Detected
> >>>>> Simulation Stopped
> >>>>>
> >>>>> H knows its own machine address and on this basis it can easily
> >>>>> examine its stored execution_trace of P (see above) to
> >>>>> determine: (a) P is calling H with the same arguments that H
> >>>>> was called with. (b) No instructions in P could possibly escape
> >>>>> this otherwise infinitely recursive emulation.
> >>>>> (c) H aborts its emulation of P before its call to H is
> >>>>> emulated.
> >>>>
> >>>> When you know that H simply implements the above algorithm there
> >>>> is no need to see its source code. I am reserving the
> >>>> publication of the 5 pages of the source code of the halt
> >>>> decider for journal publication.
> >>>
> >>> Your H is not a pure function as it behaves differently depending
> >>> on what is invoking it (it returns a decision answer to main()
> >>> but not to P()) and it has side effects (aborting a simulation).
> >>>
> >>> /Flibble
> >>>
> >>
> >> Finally a critique that has a reasonable basis.
> >>
> >> When I transformed H into a pure function of its inputs it always
> >> has the same behavior no matter how it is invoked.
> >>
> >> The x86 emulation of P is aborted before P invokes H.
> >
> > Nope. Preventing a call to H is equivalent to H behaving differently
> > for same inputs. Aborting a simulation is a side effect: pure
> > functions do not have side effects.
> >
> > /Flibble
> >
>
> In other words you are saying that a halt decider is simply not
> allowed to report when it correctly detects that it is being called
> in infinitely recursive simulation.


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

<_K6dnVgtXJforyr_nZ2dnUU7_8xh4p2d@giganews.com>

  copy mid

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

  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: Sat, 25 Jun 2022 11:06:13 -0500
Date: Sat, 25 Jun 2022 11:06:12 -0500
MIME-Version: 1.0
User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:91.0) Gecko/20100101
Thunderbird/91.10.0
Subject: 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>
<0f7ed34c-5aaa-4858-885e-66e16777f599n@googlegroups.com>
<87a6a44s02.fsf@bsb.me.uk>
<a9adde1d-ad2c-444c-9b14-88841f5e8783n@googlegroups.com>
<87sfnv2e6e.fsf@bsb.me.uk>
<3a337f21-4828-46c4-b5be-87c76cff9db4n@googlegroups.com>
<878rplyhj6.fsf@bsb.me.uk>
<b6163094-01b0-4bb4-a3b1-4e48457527a0n@googlegroups.com>
<87fsjtwvut.fsf@bsb.me.uk>
<b2699d2d-40be-4e9b-9612-efb7121d5a8bn@googlegroups.com>
<t9637e$53p$1@dont-email.me>
<20edb990-f33e-4f3b-bc59-6cebf9f9def8n@googlegroups.com>
<wtidnY0ehdBiBiv_nZ2dnUU7_83NnZ2d@giganews.com>
<8328cb40-6b3c-4f89-a2ad-4054a6b466a6n@googlegroups.com>
<Jq2dnbDrVr_lhir_nZ2dnUU7_83NnZ2d@giganews.com>
<Jo2dnaO4cb0rvir_nZ2dnUU7_83NnZ2d@giganews.com>
<20220625160945.00006e9b@reddwarf.jmc>
<2umdnWsMdJX6uir_nZ2dnUU7_83NnZ2d@giganews.com>
<20220625162150.00002837@reddwarf.jmc>
<676dnb21wJs7sir_nZ2dnUU7_8zNnZ2d@giganews.com>
<20220625165919.0000287e@reddwarf.jmc>
From: NoO...@NoWhere.com (olcott)
In-Reply-To: <20220625165919.0000287e@reddwarf.jmc>
Content-Type: text/plain; charset=UTF-8; format=flowed
Content-Transfer-Encoding: 8bit
Message-ID: <_K6dnVgtXJforyr_nZ2dnUU7_8xh4p2d@giganews.com>
Lines: 279
X-Usenet-Provider: http://www.giganews.com
X-Trace: sv3-XWxwqTM9iJTcZU/ABw5bwwdcplVwcI5JmKqCj8sgRJ7e/TAu2NFfaLuN0Y4unQhDBSxUgOq0VF/riOl!BJcnDzxj5uT4PnszWAtlS5VSnRfmZD37DcOIpdAYeXAWh5EOGFugcw+HLGbVWw4RFQYUOckxHxRY
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: 15266
 by: olcott - Sat, 25 Jun 2022 16:06 UTC

On 6/25/2022 10:59 AM, Mr Flibble wrote:
> On Sat, 25 Jun 2022 10:54:13 -0500
> olcott <NoOne@NoWhere.com> wrote:
>
>> On 6/25/2022 10:21 AM, Mr Flibble wrote:
>>> On Sat, 25 Jun 2022 10:19:02 -0500
>>> olcott <NoOne@NoWhere.com> wrote:
>>>
>>>> On 6/25/2022 10:09 AM, Mr Flibble wrote:
>>>>> On Sat, 25 Jun 2022 10:03:17 -0500
>>>>> olcott <NoOne@NoWhere.com> wrote:
>>>>>
>>>>>> On 6/25/2022 9:28 AM, olcott wrote:
>>>>>>> On 6/25/2022 2:32 AM, Malcolm McLean wrote:
>>>>>>>> On Saturday, 25 June 2022 at 06:24:23 UTC+1, olcott wrote:
>>>>>>>>> On 6/25/2022 12:09 AM, Malcolm McLean wrote:
>>>>>>>>>> On Saturday, 25 June 2022 at 05:33:53 UTC+1, olcott wrote:
>>>>>>>>>>> On 6/24/2022 11:01 PM, Malcolm McLean wrote:
>>>>>>>>>>>> On Friday, 24 June 2022 at 23:16:30 UTC+1, Ben Bacarisse
>>>>>>>>>>>> wrote:
>>>>>>>>>>>>> Malcolm McLean <malcolm.ar...@gmail.com> writes:
>>>>>>>>>>>>>
>>>>>>>>>>>>>> "Dry run" means that a human programmer looks at the
>>>>>>>>>>>>>> code, and determines
>>>>>>>>>>>>>> what it does, without actually executing it.
>>>>>>>>>>>>>
>>>>>>>>>>>>> Going back, now, to what you think needs to be resolved:
>>>>>>>>>>>>> | He's dry-run P(P) and established that it doesn't halt.
>>>>>>>>>>>>> He's invoked H
>>>>>>>>>>>>> | on it and H reports that it doesn't halt. He's run P(P)
>>>>>>>>>>>>> and it halts.
>>>>>>>>>>>>> The obvious conclusion is that PO's dry run (if he has
>>>>>>>>>>>>> indeed done such
>>>>>>>>>>>>> a thing) is incorrect.
>>>>>>>>>>>>>
>>>>>>>>>>>> Exactly.
>>>>>>>>>>>> We do our little energy budget on tigers, and find that
>>>>>>>>>>>> tigers spend more energy
>>>>>>>>>>>> than they take in. Well potentially this is dynamite. One
>>>>>>>>>>>> explanation is that the
>>>>>>>>>>>> law of conservation of energy is wrong.
>>>>>>>>>>>> Except, before we countenance that explanation, we need to
>>>>>>>>>>>> rule out a much
>>>>>>>>>>>> simpler explanation. Which is that our measurements are
>>>>>>>>>>>> wrong.
>>>>>>>>>>>>
>>>>>>>>>>>> Similarly, PO has worked out what he thinks P(P) should be
>>>>>>>>>>>> doing, by dry-running
>>>>>>>>>>>> it, and then actually run P(P) and obtained a different
>>>>>>>>>>>> result. He also found that H
>>>>>>>>>>>> agreed with the dry run. It's hard to paraphrase his
>>>>>>>>>>>> conclusion, but it is extensive
>>>>>>>>>>>> and far-reaching in its implications. The behaviour of code
>>>>>>>>>>>> when run is different
>>>>>>>>>>>> from the correct behaviour of the code when simulated. If
>>>>>>>>>>>> that's true, then it has
>>>>>>>>>>>> similar implications for computer science that disproving
>>>>>>>>>>>> the conservation law
>>>>>>>>>>>> has for physics.
>>>>>>>>>>>>
>>>>>>>>>>>> But the obvious explanation is that the dry-run was
>>>>>>>>>>>> incorrect. Lots of people have
>>>>>>>>>>>> suggested why it is incorrect. But they can't actually see
>>>>>>>>>>>> the code. PO needs to
>>>>>>>>>>>> understand that no-one will accept the complicated,
>>>>>>>>>>>> far-reaching explanation,
>>>>>>>>>>>> until the simple explanation has been ruled out.
>>>>>>>>>>>
>>>>>>>>>>> I already proved that the dry run is correct.
>>>>>>>>>>>
>>>>>>>>>> Someone reports that tigers use more energy than they take
>>>>>>>>>> in, and concludes that
>>>>>>>>>> the energy conservation law is incorrect.
>>>>>>>>>> Naturally, everyone is going to say "There must be some
>>>>>>>>>> mistake. How were your
>>>>>>>>>> measurements taken? Show us your calculations, maybe you've
>>>>>>>>>> got your sums wrong."
>>>>>>>>>>
>>>>>>>>>> Now if they are also uncooperative about sharing the details
>>>>>>>>>> of the investigation,
>>>>>>>>>> those reservations will be magnified. There can be legitimate
>>>>>>>>>> reasons. Tigers are
>>>>>>>>>> rare and need to be conserved, you can't let anyone who wants
>>>>>>>>>> have access to the
>>>>>>>>>> tigers to try to repeat the measurements. But there's also a
>>>>>>>>>> common illegitimate
>>>>>>>>>> reason put forwards by people who make extraordinary claims.
>>>>>>>>>> If the claims were
>>>>>>>>>> unexceptional, such as that tigers have a similar energy
>>>>>>>>>> budget to lions, then no-one
>>>>>>>>>> would be saying "Show me your notebooks. How do you know that
>>>>>>>>>> calorimeter was
>>>>>>>>>> calibrated accurately? What's the name of the person who took
>>>>>>>>>> that measurement
>>>>>>>>>> and can I interview them?" Extraordinary claims are put
>>>>>>>>>> through the wringer in a way
>>>>>>>>>> that ordinary ones are not. I've seen complaints about this
>>>>>>>>>> from parapsychologists.
>>>>>>>>>> But if you're going to claim to have discovered a new
>>>>>>>>>> physical principle, you need
>>>>>>>>>> to present rock solid evidence.
>>>>>>>>>>
>>>>>>>>>> In this case, we can't see H. We can only suggest
>>>>>>>>>> explanations for its behaviour.
>>>>>>>>> It seems that you simply lack the technical competence.
>>>>>>>>> Go back and look at my proof again.
>>>>>>>>>
>>>>>>>> Sorry no. I've been programming since I was a boy and I have a
>>>>>>>> PhD in a computational-
>>>>>>>> related subject. I'm confident of my technical abilities. What
>>>>>>>> I can't do of course
>>>>>>>> is tell you exactly what is going on in code I cannot see. I've
>>>>>>>> got a pretty good idea,
>>>>>>>> but I can only reconstruct on the basis of what you tell me.
>>>>>>>> Ben thinks that I've
>>>>>>>> got it wrong and in fact there are no nested emulations at all.
>>>>>>>> I've no way of actually
>>>>>>>> disproving that idea without seeing H.
>>>>>>>>
>>>>>>>
>>>>>>> To fully understand this a software engineer must be an expert
>>>>>>> in: (a) The C programming language,
>>>>>>> (b) The x86 programming language,
>>>>>>> (c) Exactly how C translates into x86 and,
>>>>>>> (d) The ability to recognize infinite recursion at the x86
>>>>>>> assembly language level.
>>>>>>>
>>>>>>> Anyone having the above credentials can validate my work, if you
>>>>>>> cannot validate my work then you do not sufficiently have the
>>>>>>> above credentials.
>>>>>>>
>>>>>>> Exactly how C translates into x86 is mandatory. If you don't
>>>>>>> know how the C calling conventions are implemented in x86 you
>>>>>>> cannot validate my work.
>>>>>>>
>>>>>>> From a purely software engineering perspective H(P,P) is
>>>>>>> required to to correctly determine that its correct and complete
>>>>>>> x86 emulation of its input would never reach the "ret"
>>>>>>> instruction of this input and H must do this in a finite number
>>>>>>> of steps.
>>>>>>>
>>>>>>> The ordinary semantics of standard C and the conventional x86
>>>>>>> language are the entire semantics required to conclusively prove
>>>>>>> that H(P,P) does correctly determine that its correct and
>>>>>>> complete x86 emulation of its input would never reach the "ret"
>>>>>>> instruction (final state) of this input thus never halts.
>>>>>>>
>>>>>>> The correct and complete x86 emulation of its input by H(P,P)
>>>>>>> would never reach the "ret" instruction of P because both H and
>>>>>>> P would remain stuck in infinitely nested emulation.
>>>>>>>
>>>>>>> void P(u32 x)
>>>>>>> {
>>>>>>>   if (H(x, x))
>>>>>>>     HERE: goto HERE;
>>>>>>>   return;
>>>>>>> }
>>>>>>>
>>>>>>> int main()
>>>>>>> {
>>>>>>>   Output("Input_Halts = ", H((u32)P, (u32)P));
>>>>>>> }
>>>>>>>
>>>>>>> _P()
>>>>>>> [00001202](01)  55              push ebp
>>>>>>> [00001203](02)  8bec            mov ebp,esp
>>>>>>> [00001205](03)  8b4508          mov eax,[ebp+08]
>>>>>>> [00001208](01)  50              push eax
>>>>>>> [00001209](03)  8b4d08          mov ecx,[ebp+08]
>>>>>>> [0000120c](01)  51              push ecx
>>>>>>> [0000120d](05)  e820feffff      call 00001032
>>>>>>> [00001212](03)  83c408          add esp,+08
>>>>>>> [00001215](02)  85c0            test eax,eax
>>>>>>> [00001217](02)  7402            jz 0000121b
>>>>>>> [00001219](02)  ebfe            jmp 00001219
>>>>>>> [0000121b](01)  5d              pop ebp
>>>>>>> [0000121c](01)  c3              ret
>>>>>>> Size in bytes:(0027) [0000121c]
>>>>>>>
>>>>>>> _main()
>>>>>>> [00001222](01)  55              push ebp
>>>>>>> [00001223](02)  8bec            mov ebp,esp
>>>>>>> [00001225](05)  6802120000      push 00001202
>>>>>>> [0000122a](05)  6802120000      push 00001202
>>>>>>> [0000122f](05)  e8fefdffff      call 00001032
>>>>>>> [00001234](03)  83c408          add esp,+08
>>>>>>> [00001237](01)  50              push eax
>>>>>>> [00001238](05)  68b3030000      push 000003b3
>>>>>>> [0000123d](05)  e8c0f1ffff      call 00000402
>>>>>>> [00001242](03)  83c408          add esp,+08
>>>>>>> [00001245](02)  33c0            xor eax,eax
>>>>>>> [00001247](01)  5d              pop ebp
>>>>>>> [00001248](01)  c3              ret
>>>>>>> Size in bytes:(0039) [00001248]
>>>>>>>
>>>>>>>  machine   stack     stack     machine    assembly
>>>>>>>  address   address   data      code       language
>>>>>>>  ========  ========  ========  =========  =============
>>>>>>> [00001222][0010200f][00000000] 55         push ebp
>>>>>>> [00001223][0010200f][00000000] 8bec       mov ebp,esp
>>>>>>> [00001225][0010200b][00001202] 6802120000 push 00001202 // push
>>>>>>> P [0000122a][00102007][00001202] 6802120000 push 00001202 //
>>>>>>> push P [0000122f][00102003][00001234] e8fefdffff call 00001032
>>>>>>> // call executed H
>>>>>>>
>>>>>>> Begin Simulation   Execution Trace Stored at:2120c3
>>>>>>> Address_of_H:1032
>>>>>>> [00001202][002120af][002120b3] 55         push ebp
>>>>>>> [00001203][002120af][002120b3] 8bec       mov ebp,esp
>>>>>>> [00001205][002120af][002120b3] 8b4508     mov eax,[ebp+08]
>>>>>>> [00001208][002120ab][00001202] 50         push eax      // push
>>>>>>> P [00001209][002120ab][00001202] 8b4d08     mov ecx,[ebp+08]
>>>>>>> [0000120c][002120a7][00001202] 51         push ecx      // push
>>>>>>> P [0000120d][002120a3][00001212] e820feffff call 00001032 //
>>>>>>> call emulated H Infinitely Recursive Simulation Detected
>>>>>>> Simulation Stopped
>>>>>>>
>>>>>>> H knows its own machine address and on this basis it can easily
>>>>>>> examine its stored execution_trace of P (see above) to
>>>>>>> determine: (a) P is calling H with the same arguments that H
>>>>>>> was called with. (b) No instructions in P could possibly escape
>>>>>>> this otherwise infinitely recursive emulation.
>>>>>>> (c) H aborts its emulation of P before its call to H is
>>>>>>> emulated.
>>>>>>
>>>>>> When you know that H simply implements the above algorithm there
>>>>>> is no need to see its source code. I am reserving the
>>>>>> publication of the 5 pages of the source code of the halt
>>>>>> decider for journal publication.
>>>>>
>>>>> Your H is not a pure function as it behaves differently depending
>>>>> on what is invoking it (it returns a decision answer to main()
>>>>> but not to P()) and it has side effects (aborting a simulation).
>>>>>
>>>>> /Flibble
>>>>>
>>>>
>>>> Finally a critique that has a reasonable basis.
>>>>
>>>> When I transformed H into a pure function of its inputs it always
>>>> has the same behavior no matter how it is invoked.
>>>>
>>>> The x86 emulation of P is aborted before P invokes H.
>>>
>>> Nope. Preventing a call to H is equivalent to H behaving differently
>>> for same inputs. Aborting a simulation is a side effect: pure
>>> functions do not have side effects.
>>>
>>> /Flibble
>>>
>>
>> In other words you are saying that a halt decider is simply not
>> allowed to report when it correctly detects that it is being called
>> in infinitely recursive simulation.
>
> I keep telling you this: the infinite recursion is NOT present when
> using a valid halt decider: your H is NOT a valid halt
> decider.
>
> Simulation is an erroneous approach as a simulating halt decider
> can not answer in finite time for a non-halting input as there is no
> proven general solution for detecting non-halting behaviour.
>
> /Flibble
>


Click here to read the complete article
Pages:123456789
server_pubkey.txt

rocksolid light 0.9.8
clearnet tor