Previously, we used diagonalization to show undecidability. We now turn
to another technique called reduction.
Schematic diagram of reductions
Reductions can be used to obtain deciders for other problems. For
example, we obtained a decider for NFA Acceptance by reducing it to DFA
Acceptance, and a decider for DFA Equivalence by reducing it to DFA
Emptiness.
Reductions can also be used to prove other problems are undecidable.
This is because the statement “B is decidable implies that A is
decidable” is logically equivalent to the statement “A is undecidable
implies that B is undecidable”. We have seen such a reduction in the
first proof of the undecidability of ATM in
Section 7.2.4 where we used a decider for ATM to
construct a decider for LD.
Thus, by showing that A≤B, we get that:
if B is decidable, then A is decidable
if A is undecidable, then B is undecidable
In summary, A≤B means that A is as easy as (or no harder than)
B.
The Halting Problem is defined as follows: given an encoding of a Turing
machine M and a string w, decide if M halts on w. The
corresponding language HALTTM consists of ⟨M,w⟩
such that M halts on w.
Since ATM is undecidable, we conclude that HALTTM is
undecidable.
The TM Emptiness Problem is defined as follows: given an encoding of a
Turing machine M, decide if L(M)=∅, i.e. if M does not
accept any string. The corresponding language EMPTYTM consists of
⟨M,w⟩ such that M halts on w.
Since ATM is undecidable, we conclude that EMPTYTM is
undecidable.
The TM Equivalence Problem is defined as follows: given an encoding of
two Turing machines M1 and M2, decide if L(M1)=L(M2), i.e.
for every string w, M1 accepts w if and only if M2 accepts
w. The corresponding language EQTM consists of
⟨M1,M2⟩ such that L(M1)=L(M2).
Since EMPTYTM is undecidable, we conclude that EQTM is
undecidable.