Download presentation

Presentation is loading. Please wait.

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

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

3
CS 311 Fall 2008 3 Seems more powerful, but… Theorem 3.13: Every multitape Turing machine has an equivalent single-tape Turing machine. # # 1 1 0 0 1 1 0 0 # # 0 0 1 1 0 0 1 1 0 0 M M a a a a a a b b a a S S a a a a a a # # 0 0 b b a a # #

4
CS 311 Fall 2008 4 Turing-recognizable languages Corollary 3.15: A language is Turing- recognizable if and only if some multitape Turing machine recognizes it.

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

6
CS 311 Fall 2008 6 Guessing Design a machine M that on input I n performs the following steps: 1.Nondeterministically choose two numbers p, q > 1 and transform the input into #I n #I p #Iq# 2.Multiply p by q to obtain #I n #I pq # 3.Checks the number of I 's before and after the middle # for equality Accepts if equal, and rejects otherwise

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

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

9
CS 311 Fall 2008 9 Enumerator control printer aa babaabba 0 0 0 0 1 1 0 0 Work tape

10
CS 311 Fall 2008 10 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 : 1.Run E. Every time that E outputs a string, compare it with w. 2.If w ever appears in the output of E, accept."

11
CS 311 Fall 2008 11 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 s 1,s 2,... over Σ*. Define E = "Ignore input. 1.Repeat the following for i = 1, 2, 3,... 2. Run M for i steps on each input s 1,s 2,..,s i. 3. If any computations accept, print out corresponding s i."

12
CS 311 Fall 2008 12 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 babaabba 0 0 0 0 1 1 0 0 Work tape

13
CS 311 Fall 2008 13 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, M 1 on tape 1 and M 2 on tape 2. # # w w # # M M # # w w # #

Similar presentations

© 2020 SlidePlayer.com Inc.

All rights reserved.

To make this website work, we log user data and share it with processors. To use this website, you must agree to our Privacy Policy, including cookie policy.

Ads by Google