# Can you find anything wrong with this solution to the Halting Problem?

From: Peter Olcott (olcott_at_worldnet.att.net)
Date: 07/10/04

```Date: Sat, 10 Jul 2004 17:00:40 GMT

```

Only direct refutation or confirmation of this message will
be replied to, anything else will be considered off-topic and
ignored.

http://www.netaxs.com/people/nerp/automata/halting2.html
I am using this as the basis of my discussion so that the
specific constituent parts of the Halting Problem can be
explicitly referred to by their counter-part in this example.
>From what I understand this version of the Halting Problem
is sufficiently analogous to the original.

I am not sure that this "solution" is correct. There may be one or
more errors or loopholes that I have failed to discover. Since the
basic conclusion of the Halting Problem is that it is impossible
to construct a WillHalt() function that will correctly determine
whether or not any other program will halt or not, I have
freely modified the other aspects of the problem definition
to refute this single conclusion.

(1) The LoopIfHalts() function can not see the screen.

(2) The only access that the LoopIfHalts() function has to the
WillHalt() function is through a function call.

***************************************************
To solve the Halting Problem all that is needed is for the meaning
of the return value from Willhalt() be kept from the LoopIfHalts()
function. The WillHalt() function arranges a coded reply to the
human user.

It could be as simple as one and zero. The meaning of true would
be assigned to either one or zero, the meaning of false would be
assigned to the other. Before the program takes the input of the
LoopIfHalts() function it outputs either a one or a zero to the
screen. Whichever (1 or 0) is output, holds the meaning of true.
Whichever one it outputs is generated by a hardware noise based
random number generator. (thus it is impossible to predict which
of these two will be generated) Now the LoopIfHalts() function
has no way to thwart the WillHalt() function, and the human user
can understand the result.
***************************************************