# CSCI 2670 Introduction to Theory of Computing - PowerPoint PPT Presentation

PPT – CSCI 2670 Introduction to Theory of Computing PowerPoint presentation | free to download - id: 252d41-ODMyZ

The Adobe Flash plugin is needed to view this content

Get the plugin now

View by Category
Title:

## CSCI 2670 Introduction to Theory of Computing

Description:

### 3.16 d Show the collection of Turing-recognizable languages is closed under ... Nondeterministic TM that accepts {ww | w {a,b}*} Use 2 tapes. Copy input to tape 2 ... – PowerPoint PPT presentation

Number of Views:38
Avg rating:3.0/5.0
Slides: 25
Provided by: Wimva9
Category:
Tags:
Transcript and Presenter's Notes

Title: CSCI 2670 Introduction to Theory of Computing

1
CSCI 2670 Introduction to Theory of Computing
October 6, 2005
2
Agenda
• Yesterday
• Variants of Turing machines
• Allow stay put state
• Multiple tapes
• Today
• Quick revisit of multiple tapes
• Non-determinism
• Prove equivalence of deterministic and
nondeterministic Turing machines
• Enumerators
• Prove equivalence of enumerators and
deterministic Turing machines

3
Announcements
• Homework due next Tuesday
• 3.7, 3.15 b c, 3.16 d
• 3.7 and 3.15 are same in both texts
• 3.16 d Show the collection of
Turing-recognizable languages is closed under the
operation of intersection.

4
Corollary
• Corollary A language is Turing-recognizable if
and only if some multitape Turing machine
recognizes it.

5
Example
• Using 2-tape Turing machine, write a copy machine
• Copy tape 1 to tape 2
• Move tape 1 to beginning
• Copy tape 1 to tape 2
• Accept

6
Copy machine
7
Copy machine
8
Nondeterministic Turing machines
• Same as standard Turing machines, but may have
one of several choices at any point
• d Q ? ? P(Q ? L,R)

9
Equivalence of machines
• Theorem Every nondeterministic Turing machine
has an equivalent deterministic Turing machine
• Proof method construction
• Proof idea Use a 3-tape Turing machine to
deterministically simulate the nondeterministic
TM. First tape keeps copy of input, second tape
is computation tape, third tape keeps track of
choices.

10
Proof idea
Input tape never changes
Computation tape
Decision path
Try new decision paths until the string is
accepted
11
Intuition
• Consider the nondeterministic calculations as a
tree
• Each node represents a configuration
• A node for configuration C1 has one child for
each configuration C2 such that C1 yields C2
• Root of tree is configuration q1w
• A configuration may appear more than once in the
tree

12
Example
• Nondeterministic TM that accepts ww w ?
a,b
• Use 2 tapes
• Copy input to tape 2
• Position heads at beginning of tapes
• Move both heads right simultaneously

13
Nondeterministic solution
• Nondeterministically choose the midpoint
• Mark this point on tape 2 and return tape 2s
• Compare strings
• If tape head points to on tape 1 and midpoint
marker on tape 2 then accept
• Otherwise, if all possible midpoints have been
tried then reject
• Otherwise, try a new midpoint

14
Tree representation
15
Deterministic equivalent
• Assume midpoint is at beginning
• If so accept
• If not
• Assume midpoint is after first symbol
• If so accept
• If not
• Assume midpoint is after second symbol
• If so accept
• If not
• etc.

16
How should it search the tree?
• Search all possibilities involving k steps before
searching any possibilities involving (k1) steps
• Whats wrong with depth first search?
• If some sequence of choices results in never
reaching a halting state, we will never get to
the accept state

17
When does it halt?
• When it reaches an accept state
• Return accept

18
Will it halt on strings in the language?
• Yes
• Let b be the largest number of children of any
node
• Can we be sure b is finite?
• Let k be the minimum number of steps it takes to
get to the accept state
• This method will take at most bk steps to get to
the accept state

19
What about strings not in the language?
• Wont halt
• Thats okay

20
Equivalence of approaches
• Corollary A language is Turing-recognizable if
and only if some nondeterministic Turing machine
recognizes it.

21
Equivalence of approaches
• Corollary A language is Turing-decidable if and
only if some nondeterministic Turing machine
decides it.
• Proof Very similar to the proof we just did

22
Enumerators
out strings in S

23
Machine equivalence
• Theorem A language is Turing-recognizable if
and only of some enumerator enumerates it.
• Proof technique Construction in each direction

24
TM accept enumerator language
• TM On input w
• Run enumerator E. Every time E prints a string,
compare it to w.
• If w appears in the output, accept.