Deutsch English Français Italiano |
<87cys6i7da.fsf@bsb.me.uk> View for Bookmarking (what is this?) Look up another Usenet article |
Path: ...!eternal-september.org!feeder3.eternal-september.org!news.eternal-september.org!.POSTED!not-for-mail From: Ben Bacarisse <ben.usenet@bsb.me.uk> Newsgroups: comp.theory,sci.logic Subject: Re: Refutation of the Peter Linz Halting Problem proof 2024-03-05 --partial agreement-- Date: Thu, 07 Mar 2024 11:55:29 +0000 Organization: A noiseless patient Spider Lines: 66 Message-ID: <87cys6i7da.fsf@bsb.me.uk> References: <us8shn$7g2d$1@dont-email.me> <us92f0$uvql$4@i2pn2.org> <us931e$8gmr$1@dont-email.me> <usa4rk$10ek4$3@i2pn2.org> <usa5to$gp0j$1@dont-email.me> <usa8lp$10ek5$5@i2pn2.org> <usa9o9$ho7b$1@dont-email.me> <usag21$118jg$1@i2pn2.org> <usanbu$klu7$1@dont-email.me> <usas0v$11q96$2@i2pn2.org> <usavq1$m7mn$1@dont-email.me> <usb01q$m897$1@dont-email.me> <c-GcnbJk3KPt0nT4nZ2dnZfqn_GdnZ2d@brightview.co.uk> MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit Injection-Info: dont-email.me; posting-host="b9ed4ba77ae2b0370363ae177b04bec3"; logging-data="1096098"; mail-complaints-to="abuse@eternal-september.org"; posting-account="U2FsdGVkX1/WFanMyIPOx4HCukjZtMWz3+OG4yiaqIo=" User-Agent: Gnus/5.13 (Gnus v5.13) Cancel-Lock: sha1:JmjyRXdO5oj87pUz7NqubmgVa/I= sha1:Wip2qnyb81SeV7/6b37h7A+E2q4= X-BSB-Auth: 1.b082714fdf9f4113a6da.20240307115529GMT.87cys6i7da.fsf@bsb.me.uk Bytes: 4501 Mike Terry <news.dead.person.stones@darjeeling.plus.com> writes: > On 06/03/2024 23:59, immibis wrote: >> On 7/03/24 00:55, olcott wrote: >>> Ĥ.H ⟨Ĥ⟩ ⟨Ĥ⟩ ⊢* Ĥ.Hqn >>> Correctly reports that Ĥ.H ⟨Ĥ⟩ ⟨Ĥ⟩ must abort its simulation. >>> >>> H ⟨Ĥ⟩ ⟨Ĥ⟩ ⊢* H.qy >>> Correctly reports that H ⟨Ĥ⟩ ⟨Ĥ⟩ need not abort its simulation. >> What are the exact steps which the exact same program with the exact same >> input uses to get two different results? >> I saw x86utm. In x86utm there is a mistake because Ĥ.H is not defined to >> do exactly the same steps as H, which means you failed to do the Linz >> procedure. > > Not sure if we're discussing a general H here, or PO's H/Ĥ under his > x86utm. (Ĥ is called D under x86utm.) > > Under x86utm, Ĥ.H is implemented as a call to H from D, whilst H in > implemented as a call to H from main. So we would expect stack addresses > to differ, but for that not to affect the computation. > > In both cases, H: > - simulates D(D) computation > - spots PO's unsound "infinite recursion" pattern > - announces it has encountered infinite recursion > - returns 0 [non-halting] > > So Ĥ.H does exactly the same steps as H, and reports the same result, as > required for Linz proof. And just as Linz proof proves, the result reported > by H is incorrect, since D(D) halts. I have compared the instructions > executed by both H/Ĥ and THEY ARE EXACTLY THE SAME. (In the region of 1000 > or so machine instructions, including the handful of simulated > instructions. Obviously stack addresses differ. If required I could post > the output log but its quite long.] > > So... in this case the exact same program is given the exact same input and > gets the exact same result as Linz logic requires, and the outcome is > exactly what Linz says. There is really no mystery here that needs > explaining by faulty coding/cheating with simulations on PO's part. Yes, this was the crystal clear case that led PO to answer: | do you still assert that H(P,P) == false is the "correct" answer even | though P(P) halts? PO: Yes that is the correct answer even though P(P) halts. I think your analysis of the traces was a key part of getting that clear statement from him. > The HH/DD case is different, as that coding is completely broken by misuse > of global variables to divert the course of the code under the simulator. > But since EVEN WHEN THINGS WORK EXACTLY AS PO WANTS his results are in > AGREEMENT with Linz, it seems to me that arguing that his problem is > relating to cheating with the simulation is kind of missing the point. Um, > not to say there's much point arguing with PO even if making perfectly > "on-point" arguments! It all makes no difference to PO... :) The irony here is that if one cheats it's possible to have H(D,D) (in main, say) return 1 and yet have D(D) halt. This can be done with D constructed as usual. It's only H that needs the cheat. So to his credit, he is not cheating, just totally at sea. -- Ben.