Computability and Complexity
Lecture 2
Multitape Turing machines Nondeterministic Turing machines Enumerators Church-Turing Thesis
given by Jiri Srba
Lecture 2 Computability and Complexity 1/15
Variants of Turing Machines
Question What happens if we modify the definition of a Turing machine? Can we then possibly recognize more languages? Example: δ : Q × Γ → Q × Γ × {L, R, S} where S means “stay”. Answer No, the notion of a TM is robust. Hence no reasonable extension
- f a TM increases its power.
Example: “Stay” can be simulated in ordinary TM by two head movements (move right, move left).
Lecture 2 Computability and Complexity 2/15
Multitape Turing Machine
Definition (Multitape Turing Machine) A k-tape TM is a 7-tuple M = (Q, Σ, Γ, δ, q0, qaccept, qreject) where δ : Q × Γk → Q × Γk × {L, R}k and the rest is the same as before. Remark: 1-tape TM is exactly our original definition of TM. Configuration: a control state, plus the content of all k tapes together with the position of k heads. Initial configuration: input string written on the first tape, all
- ther tapes are empty (contain the blank symbols).
Computational step: all heads can move independently.
Lecture 2 Computability and Complexity 3/15
Equivalence of 1-tape and k-tape TM
Theorem Every k-tape TM is equivalent to 1-tape TM. Equivalent means that they recognize the same language. Corollary A language is recognizable iff it is recognized by some multitape Turing machine. Corollary A language is decidable iff it is recognized by some multitape Turing machine which is a decider.
Lecture 2 Computability and Complexity 4/15
Nondeterministic Turing Machine
Definition (Nondeterministic Turing Machine) A nondeterministic TM is a 7-tuple M = (Q, Σ, Γ, δ, q0, qaccept, qreject) where δ : Q × Γ → 2Q×Γ×{L,R} and the rest is the same as before. Remark: Every deterministic TM is also a nondeterministic TM. Configurations and Initial configuration as before. Computation tree: a tree of all configurations reachable from the initial one. The tree can have infinite branches! Acceptance Condition of a Nondeterm. TM A nondeterministic TM M accepts a string w if the computation tree for M and w contains at least one accepting configuration.
Lecture 2 Computability and Complexity 5/15
Equivalence of Deterministic and Nondeterministic TM
Theorem Every nondeterministic TM is equivalent to some deterministic TM. Equivalent means that they recognize the same language. Corollary A language is recognizable iff it is recognized by some nondeterministic Turing machine. Corollary A language is decidable iff it is recognized by some nondeterministic Turing machine which is a decider. A nondeterministic TM is a decider if for any given input every branch in the computation tree is finite (accepts or rejects).
Lecture 2 Computability and Complexity 6/15