CMPSCI 501: Theory of Computation

Solutions to Second Midterm Exam, Spring 2014

David Mix Barrington

27 March 2014

Directions:

  Q1: 10 points
  Q2: 10 points
  Q3: 10 points
  Q4: 10 points
  Q5: 10 points
  Q6: 10 points
  Q7: 30 points
  Q8: 20 points
  Q9: 10+10 points
 Total: 120+10 points

Question text is in black, solutions in blue.

The set N of natural numbers is {1, 2, 3,...} as defined in Sipser.

If C is any class of computers, such as DFA's, CFG's, LBA's, TM's, strange variant TM's, etc.:

A language is Turing recognizable (TR) if it is equal to L(M) for some Turing machine M.

A language is Turing decidable (TD) if it is equal to L(M) for some Turing machine M that halts on every input.

A language X is co-TR if and only if its complement is TR.

A function f is Turing computable if there exists a TM M such that for any string w, M when started on w halts with f(w) on its tape.

Recall that if A and B are two languages, A is mapping reducible to B, written A ≤m B, if there exists a Turing computable function f from Σ* to Σ* such that for any string w, w ∈ A ⇔ f(w) ∈ B.

A reversible stack pushdown automaton (RSPDA) is a nondeterministic machine with a stack that stores a string over its stack alphabet. On any step, the machine may push a new first letter onto the stack, pop the current first letter, or reverse the enture stack. It reads input letters and accepts or rejects just like an ordinary PDA.

A marker Turing machine (MTM) is like an ordinary deterministic one-tape Turing machine except that (1) it has a special marker symbol $ that is in its tape alphabet and not in its input alphabet, (2) its initial configuration on input w is q0w$, (3) it must always maintain the property that there is exactly one $ on its tape, which is the rightmost non-blank symbol (unless it is in the process of moving the $ to another location), and (4) if the initial input is length n, and the head is ever more than 2n tape cells to the left of the $, the machine halts and rejects.

Sipser defines an LBA to be a deterministic one-tape Turing machine that never accesses any tape cells to the right of where the input initially resides. Here we define a nondeterministic linear bounded automaton (NLBA) to be a nondeterministic one-tape Turing machine with the same property.