Next: The Undecidability of First-Order
Up: Turing Machines
Previous: Examples
Recall that for every Turing machine M there is a corresponding
natural number nM (the Gödel number of M); and recall as well
that
Mi, where
N, is the ith Turing machine. (Remember
that we have previously established an enumeration M1, M2,
M3,
of all Turing machines.) We will now prove that
the following function is not Turing-computable. The Halting Problem
is the problem of computing this function; hence we will show that the
Halting Problem cannot be solved by a Turing machine.
To begin the proof that h is cannot be solved by a Turing machine,
suppose the opposite: suppose that
h is Turing-computable; then there exists some Turing machine
H that computes this function. We know that there exists a Turing
machine Mk which, when given an unbroken string of k 1's as input,
produces a copy of this string with an intervening blank square. For
example, if
M4 were started in the configuration
| 1 |
1 |
1 |
1 |
 |
it would produce
| 1 |
1 |
1 |
1 |
|
1 |
1 |
1 |
1 |
 |
It is also clear that there exists a machine
which is such
that
The specification of
is shown in the following figure, which
shows the composite machine Mm that chains together Mk,
H, and
.
As you can verify upon reflection,
Then, instantiating n to m:
which is to say
which is in turn
an outright contradiction. QED
Next: The Undecidability of First-Order
Up: Turing Machines
Previous: Examples
Selmer Bringsjord
1999-04-19