From Newsgroup: comp.theory
On 12/13/25 10:24 PM, olcott wrote:
On 6/6/2004 9:11 AM, Peter Olcott wrote:
One very simple transformation of the problem into a solvable problem
is to convert the Boolean function DoesItHalt() into a tertiary response:
True, False, Neither.
if (DoesItHalt() == True)
while(True) // loop forever
;
else if (DoesItHalt() == False)
return False;
else if (DoesItHalt() == NeitherTrueNorFalse)
return NeitherTrueNorFalse;
So the original Halting Problem was incorrectly formed specifically
because it was framed as a Boolean function, thus failing to account
for possible inputs that result in a reply other than True or False.
But Neither is not the correct answer for the pathological program, as a
given program will either halt or not.
The problem is the pathological program, if given the Neither answer can
make the decider wrong by doing either action, and thus both of those
behavior prove the decider wrong. If fact, for your case above, your
program halts, and thus the only correct answer would have been Halts.
All you are doing is showing you don't understand what you are doing.
Yes, we can perhaps argue that we can build a PARTIAL decider that gives
an I DON'T KNOW answwer, but that is still not a complete solution, as
adding an "I DON'T KNOW" as a possible answer means the trivial decider
that always answers I DON'T KNOW is aways correct, but gives us no information.
WIthout a criteria limiting when "I Don't Know" is valid, then that
crsiteria is basically worthless.
And, trying to make the critera based on the pathology of the proof
program fails as the pathological program only needs to use an
"equivalent" to the decider, and testing that two machines are
equivelent is an uncomputable problem, so you can't tell if you actualy
can do it.
--- Synchronet 3.21a-Linux NewsLink 1.2