Universal Turing Machines and Undecidability
Nabil Mustafa Computability and Complexity
Nabil Mustafa Universal Turing Machines and UndecidabilityTuring machine recap
A Turing machine TM is a tuple M = (Γ, Q, δ) where Γ: set of symbols that TM ’s tapes can contain. Q: possible states TM can be in. qstart: the TM starts in this state qhalt: the TM halts when this state is reached Storage for TM : A special register stores the current state. 1 input tape, 1 output tape and 1 work tape
Nabil Mustafa Universal Turing Machines and UndecidabilityRobustness of TM
Many details of our TM quite arbitrary Does restricting the alphabet Γ to {0, 1, , ⊲} matter? No! If function f is computable by a TM using alphabet Γ, then it is computable in time 4 log |Γ|T(n) by a TM using the alphabet {0, 1, , ⊲}. Does using more work tapes make everything much faster? No! If function f is computable by a TM using k tapes, then it is computable in time 5kT(n)2 by a TM using a single work tape. Church-Turing Hypothesis Every physically realizable computation device can be simulated by a TM .
Nabil Mustafa Universal Turing Machines and UndecidabilityAlphabet size doesn’t matter
Claim If function f is computable by a TM M using alphabet Γ, then it is computable in time 4 log |Γ|T(n) by a TM M′ using the alphabet {0, 1, , ⊲}. Have to decide: How to represent each symbol of Γ using {0, 1, , ⊲}. Use binary encoding. Each symbol encoded by log |Γ| bits. How to simulate each step of M. Read the encoded symbol via log |Γ| bits. Problem: remember the bits read. Modify the transition table appropriately Lookup the (remembered) read bits in the (modified) table
Nabil Mustafa Universal Turing Machines and Undecidability