Undecidable Problems - Self Assessment

Steven Zeil

Last modified: Apr 15, 2017
Contents:
1 Proof by Construction
1.1 Does it Move?
1.2 The Bounded UTM
2 Reductions
2.1 The Halting Problem is not Recursive
2.2 The Halting Problem is RE
3 Rice’s Theorem
3.1 Does a TM Accept a Regular Langauge?

Abstract

This is a series of problems on the use of Turing Machines to explore decidability.

Try to solve each problem on your own, before revealing the solution.

1 Proof by Construction

Some problems, usually ones that ask you to prove a positive result, are done describing the construction of a TM to solve a desired problem.

1.1 Does it Move?

We’ve discussed the common variant of allowing Turing Machines an option of keeping the head in the same place after a transition instead of always moving one space to the left or right.

Let fixed(T) be the property that one of these extended Turing machines T never moves its head to the left or to the right, on any input that it accepts.

Prove that this property is recursive.

Note: You cannot do this simply by inspecting the finite state control of the TM and seeing whether it has any transitions marked L or R. You have to consider the possibility that any such transitions might not actually be triggered by any possible input.

Answer

1.2 The Bounded UTM

A Universal Turing machine (UTM) accepts a code for a Turing machine M and a string w, encoded as M111w.

Now consider a variation on the UTM that accepts input of the form M111w111s, where s is an integer (in unary form, a string of zeros) representing a number of steps. Can you construct a TM, a “bounded UTM”, that accepts strings of that form if and only if the TM $M$ accepts the input $w$ in $s$ or fewer steps?

Answer

2 Reductions

Negative results, showing that a problem P is not recursive or not RE, are often achieved by reducing a known non-recursive or non-RE problem to P, so that if P could be solved, then the other problem would be solved as well, thereby raising a contradiction.

2.1 The Halting Problem is not Recursive

The halting problem is the problem of determining, given a pair $(T,w)$ consisting of a Turing machine $T$ and a string $w$, whether $T$ halts when presented $w$ as input, regardless of whether $T$ accepts $w$ or not.

Prove that the halting problem is not recursive i.e., there is no algorithm that can determine whether an arbitrary $T$ halts on an arbitrary $w$.

Answer

2.2 The Halting Problem is RE

The previous problem establishes that we cannot decide whether a TM halts on a given input. Now consider the weaker problem of whether we can list (given infinite time) the $(T,w)$ pairs such that $T$ halts on input $w$.

Prove that the halting problem is recursively enumerable, i.e., there is a Turing machine that enumerates all such (T,w) pairs.

Answer

3 Rice’s Theorem

Rice’s theorem is a powerful tool for proving negative results about sets of languages.

Rice’s Theorem states that all non-trivial properties of the RE languages are undecidable.

To use it we must do two things:

  1. Express the problem as a property of the RE languages.

  2. Show that the property is not trivial: the set is neither empty nor universal.

3.1 Does a TM Accept a Regular Langauge?

Use Rice’s Theorem to prove that it is undecidable whether an arbitrary TM accepts a regular language.

Answer