More Turing Machines Sipser 3.2 (pages 148-154).

Slides:



Advertisements
Similar presentations
Measuring Time Complexity
Advertisements

Variants of Turing machines
CS 461 – Nov. 9 Chomsky hierarchy of language classes –Review –Let’s find a language outside the TM world! –Hints: languages and TM are countable, but.
The Recursion Theorem Sipser – pages Self replication Living things are machines Living things can self-reproduce Machines cannot self reproduce.
Turing -Recognizable vs. -Decidable
Foundations of (Theoretical) Computer Science Chapter 3 Lecture Notes (Section 3.2: Variants of Turing Machines) David Martin With.
CS605 – The Mathematics and Theory of Computer Science Turing Machines.
Measuring Time Complexity Sipser 7.1 (pages )
P and NP Sipser (pages ). CS 311 Fall Polynomial time P = ∪ k TIME(n k ) … P = ∪ k TIME(n k ) … TIME(n 3 ) TIME(n 2 ) TIME(n)
Regular operations Sipser 1.1 (pages 44 – 47). CS 311 Mount Holyoke College 2 Building languages If L is a language, then its complement is L’ = {w |
Algorithms Sipser 3.3 (pages ). CS 311 Mount Holyoke College 2 Computability Hilbert's Tenth Problem: Find “a process according to which it can.
More Turing Machines Sipser 3.2 (pages ). CS 311 Fall Multitape Turing Machines Formally, we need only change the transition function to.
Reducibility Sipser 5.1 (pages ). CS 311 Fall Reducibility.
Reducibility Sipser 5.1 (pages ).
The Halting Problem Sipser 4.2 (pages ). CS 311 Mount Holyoke College 2 Taking stock All languages Turing-recognizable Turing-decidable Context-free.
The Halting Problem Sipser 4.2 (pages ).
Mapping Reducibility Sipser 5.3 (pages ).
NFAs Sipser 1.2 (pages 47–54). CS 311 Mount Holyoke College 2 Recall… Last time we showed that the class of regular languages is closed under: –Complement.
Mapping Reducibility Sipser 5.3 (pages ). CS 311 Fall Computable functions Definition 5.17: A function f:Σ*→Σ* is a computable function.
Decidable languages Sipser 4.1 (pages ). CS 311 Mount Holyoke College 2 Hierarchy of languages All languages Turing-recognizable Turing-decidable.
Prof. Busch - LSU1 Decidable Languages. Prof. Busch - LSU2 Recall that: A language is Turing-Acceptable if there is a Turing machine that accepts Also.
Courtesy Costas Busch - RPI1 A Universal Turing Machine.
Complexity ©D.Moshkovitz 1 Turing Machines. Complexity ©D.Moshkovitz 2 Motivation Our main goal in this course is to analyze problems and categorize them.
1 Linear Bounded Automata LBAs. 2 Linear Bounded Automata are like Turing Machines with a restriction: The working space of the tape is the space of the.
Fall 2004COMP 3351 Recursively Enumerable and Recursive Languages.
Recursively Enumerable and Recursive Languages
1 Uncountable Sets continued Theorem: Let be an infinite countable set. The powerset of is uncountable.
Lecture 5 Turing Machines
Computation Theory Introduction to Turing Machine.
CHAPTER 4 Decidability Contents Decidable Languages
Fall 2004COMP 3351 Reducibility. Fall 2004COMP 3352 Problem is reduced to problem If we can solve problem then we can solve problem.
Fall 2005Costas Busch - RPI1 Recursively Enumerable and Recursive Languages.
Fall 2004COMP 3351 A Universal Turing Machine. Fall 2004COMP 3352 Turing Machines are “hardwired” they execute only one program A limitation of Turing.
January 28, 2015CS21 Lecture 101 CS21 Decidability and Tractability Lecture 10 January 28, 2015.
1 Reducibility. 2 Problem is reduced to problem If we can solve problem then we can solve problem.
INHERENT LIMITATIONS OF COMPUTER PROGRAMS CSci 4011.
חישוביות וסיבוכיות Computability and Complexity Lecture 7 TexPoint fonts used in EMF. Read the TexPoint manual before you delete this box.: A AAAA.
The Halting Problem – Undecidable Languages Lecture 31 Section 4.2 Wed, Oct 31, 2007.
1 1 CDT314 FABER Formal Languages, Automata and Models of Computation Lecture 15-1 Mälardalen University 2012.
Computability Construct TMs. Decidability. Preview: next class: diagonalization and Halting theorem.
A Universal Turing Machine
1Computer Sciences Department. Book: INTRODUCTION TO THE THEORY OF COMPUTATION, SECOND EDITION, by: MICHAEL SIPSER Reference 3Computer Sciences Department.
Automata & Formal Languages, Feodor F. Dragan, Kent State University 1 CHAPTER 3 The Church-Turing Thesis Contents Turing Machines definitions, examples,
1 Linear Bounded Automata LBAs. 2 Linear Bounded Automata (LBAs) are the same as Turing Machines with one difference: The input string tape space is the.
1 Turing’s Thesis. 2 Turing’s thesis: Any computation carried out by mechanical means can be performed by a Turing Machine (1930)
CS 461 – Nov. 7 Decidability concepts –Countable = can number the elements  –Uncountable = numbering scheme impossible  –A TM undecidable –Language classes.
Turing -Recognizable vs. -Decidable
Computability Review homework. Video. Variations. Definitions. Enumerators. Hilbert's Problem. Algorithms. Summary Homework: Give formal definition of.
Recursively Enumerable and Recursive Languages
Donghyun (David) Kim Department of Mathematics and Computer Science North Carolina Central University 1 Chapter 4 Decidability Some slides are in courtesy.
Automata & Formal Languages, Feodor F. Dragan, Kent State University 1 CHAPTER 3 The Church-Turing Thesis Contents Turing Machines definitions, examples,
Turing Machines Sections 17.6 – The Universal Turing Machine Problem: All our machines so far are hardwired. ENIAC
The Church-Turing Thesis
Theory of Computational Complexity TA : Junichi Teruyama Iwama lab. D3
1 Recursively Enumerable and Recursive Languages.
 2005 SDU Lecture14 Mapping Reducibility, Complexity.
Reductions Costas Busch - LSU.
CSE 105 theory of computation
CSE 105 theory of computation
Turing Machines Acceptors; Enumerators
Turing acceptable languages and Enumerators
Intro to Theory of Computation
Decidable Languages Costas Busch - LSU.
Turing acceptable languages and Enumerators
CSCI 2670 Introduction to Theory of Computing
CSE 105 theory of computation
More undecidable languages
Variants of Turing machines
CSE 105 theory of computation
Presentation transcript:

More Turing Machines Sipser 3.2 (pages 148-154)

Multitape Turing Machines Formally, we need only change the transition function to δ: Q×Γk → Q×Γk×{L,R}k 1 1 ⨆ Finite control a a a ⨆ b a ⨆

Seems more powerful, but… Theorem 3.13: Every multitape Turing machine has an equivalent single-tape Turing machine. 1 1 ⨆ M a a a ⨆ b a ⨆ S # 1 1 # a a a # b a # ⨆

Turing-recognizable languages Corollary 3.15: A language is Turing-recognizable if and only if some multitape Turing machine recognizes it.

Recognizing Composite Numbers Let L = {In | n is a composite number} Designing a Turing machine to accept L would seem to involve factoring n However, if we could guess ...

Guessing Design a machine M that on input In performs the following steps: Nondeterministically choose two numbers p, q > 1 and transform the input into #In#Ip#Iq# Multiply p by q to obtain #In#Ipq# Checks the number of I's before and after the middle # for equality Accepts if equal, and rejects otherwise

Nondeterministic Turing machines Simply modify the transition function to satisfy: δ: Q×Γ → P(Q×Γ×{L,R})

Guessing doesn’t buy us anything! Theorem 3.16: Every nondeterministic Turing machine has an equivalent deterministic Turing machine. 1 ⨆ Input tape D x x # 1 x ⨆ Simulation tape 1 2 3 3 2 3 1 2 1 ⨆ Address tape

Enumerator aa baba abba printer control 1 ⨆ Work tape

Equivalence with Turing machines Theorem 3.21: A language is Turing-recognizable if and only if some enumerator enumerates it. Proof (⇐) Suppose enumerator E enumerates L. Define M = "On input w: Run E. Every time that E outputs a string, compare it with w. If w ever appears in the output of E, accept."

Equivalence with Turing machines Theorem 3.21: A language is Turing-recognizable if and only if some enumerator enumerates it. Proof (⇒) Suppose TM M recognizes L. Build a lexicographic enumerator to generate the list of all possible strings s1,s2,... over Σ*. Define E = "Ignore input. Repeat the following for i = 1, 2, 3, ... Run M for i steps on each input s1,s2,..,si. If any computations accept, print out corresponding si."

TMs take their own sweet time... Recognizers, like enumerators may take a while to answer yes, ... and even longer to answer no A TM that halts on all inputs is called a decider A decider that recognizes a languages is said to decide that language Call a language Turing-decidable if some Turing machine decides it control printer aa baba abba 1 ⨆ Work tape

Recognizers and Deciders Theorem: A language is Turing-decidable if and only if both it and its complement are Turing-recognizable Proof: (⇒) By definition. (⇐) Simulate, in parallel, M1 on tape 1 and M2 on tape 2. # w # ⨆ M # w # ⨆