COT4420 Theory of Computation April 7, 2016 Problem Set 6 Due: April 19, 2016 This assignment will not be graded. 1. Find a phrase structure grammar (it will basically be a context sensitive grammar with one rule that goes to λ) for the following language: L = {an**2 : n ≥ 1}. 2. What is a universal Turing machine? What are the inputs? What is the output or the result of running the universal Turing machine? 3. What is the halting problem for Turing machines? Is it decidable? Explain. 4. How are recursive enumerable languages and recursive languages related to Turing machines? Using Turing machines, show that recursively enumerable languages are closed under union and intersection. Are they closed under complementation? 5. Design a Turing machine with no more than three states that accepts the language a(a+b)*. Assume Σ = {a,b}. Can you find a two-state machine to do this? If so what is it? 6. Outline a Turing machine that accepts the following language: L = {anbncn : n ≥ 1}. 7. Outline a Turing machine that converts binary numbers to their unary representations. 8. Define the complexity classes P and NP. 9. Can a Turing machine be simulated by a pda with two stacks? Explain why or why not and its ramification. 10. Read up on how Len Adleman solved an instance of the Hamilton path problem by using DNA molecules. Briefly describe the novelty of this work. 1