Theory of Computing

Turing Machine Reductions

Turing machine reductions

Notation

Reduction as a tool

Example

Recap: ATM = {⟨M, ω⟩ : M accepts ω}. HALTTM = {⟨M, ω⟩ : M halts on input ω}.

Theorem: HALTTM is undecidable.

We already know ATM is undecidable. So we need to show ATMT HALTTM.

Proof (by contradiction):

Suppose we had a Turing machine R that decides HALTTM. Then we want to create a Turing machine S that decides ATM.

S is a decider for ATM, which is a contradiction.

∴ HALTTM is undecidable.

QED.

Lemmas

Lemma: suppose L and Σ*  L are recognizable. Then L is decidable, and so is Σ*  L).

Proof:

Let M₁ and M₂ be Turing machines that recognize L and Σ*  L, respectively. Define a new Turing machine M₃ as follows.

Suppose x ∈ L then M₁ accepts x so M₃ accepts x.

Suppose x ∉ L then M₂ accepts x so M₃ rejects x.

So M₃ decides L.

∴ L is decidable (and similarly, so is Σ*  L).

QED.

Corollary: Σ*  ATM is not recognizable.

Proof (by contradiction): If it were recognizable, claim would imply ATM is decidable, which is a contradiction. Therefore, Σ*  ATM is not recognizable. QED.

Lemma: ETM = {⟨N⟩ : N is a Turing machine such that L(N) = ∅} is undecidable.

Proof (by contradiction):

We know ATM is undecidable, so it remains to show that ATM reduces to ETM. Assume R is a Turing machine that decides ETM. Construct a Turing machine S that decides ATM.

Suppose M accepts ω. Hence, R rejects ⟨N⟩ (due to L(N) = {ω}) and thus S accepts.

Suppose M rejects or run forever on ω. Hence, R accepts ⟨N⟩ (due to L(N) = ∅) and thus S rejects.

Therefore, S is a decider for ATM, which is a contradiction.

∴ ETM is undecidable.

QED.