Lecture 16 Deterministic Turing Machine (DTM) Finite Control tape head.

Slides:



Advertisements
Similar presentations
Part VI NP-Hardness. Lecture 23 Whats NP? Hard Problems.
Advertisements

Deterministic Turing Machines
Lecture 3 Universal TM. Code of a DTM Consider a one-tape DTM M = (Q, Σ, Γ, δ, s). It can be encoded as follows: First, encode each state, each direction,
Variants of Turing machines
Lecture 6 Nondeterministic Finite Automata (NFA)
Courtesy Costas Busch - RPI1 Non Deterministic Automata.
Fall 2006Costas Busch - RPI1 Deterministic Finite Automata And Regular Languages.
1 Turing Machines. 2 The Language Hierarchy Regular Languages Context-Free Languages ? ?
Fall 2004COMP 3351 Turing Machines. Fall 2004COMP 3352 The Language Hierarchy Regular Languages Context-Free Languages ? ?
Lecture 5 Turing Machines
Courtesy Costas Busch - RPI1 Turing Machines. Courtesy Costas Busch - RPI2 The Language Hierarchy Regular Languages Context-Free Languages ? ?
1 Languages and Finite Automata or how to talk to machines...
Turing Machines.
Fall 2004COMP 3351 Reducibility. Fall 2004COMP 3352 Problem is reduced to problem If we can solve problem then we can solve problem.
CS5371 Theory of Computation Lecture 10: Computability Theory I (Turing Machine)
Fall 2006Costas Busch - RPI1 Non-Deterministic Finite Automata.
Costas Busch - RPI1 Turing Machines. Costas Busch - RPI2 The Language Hierarchy Regular Languages Context-Free Languages ? ?
Courtesy Costas Busch - RPI1 Reducibility. Courtesy Costas Busch - RPI2 Problem is reduced to problem If we can solve problem then we can solve problem.
1 Turing Machines. 2 The Language Hierarchy Regular Languages Context-Free Languages ? ?
Costas Busch - LSU1 Non-Deterministic Finite Automata.
Prof. Busch - LSU1 Turing Machines. Prof. Busch - LSU2 The Language Hierarchy Regular Languages Context-Free Languages ? ?
Prof. Busch - LSU1 Reductions. Prof. Busch - LSU2 Problem is reduced to problem If we can solve problem then we can solve problem.
1 Reducibility. 2 Problem is reduced to problem If we can solve problem then we can solve problem.
Lecture 3 Graph Representation for Regular Expressions
1 Turing Machines. 2 A Turing Machine Tape Read-Write head Control Unit.
Turing Machines A more powerful computation model than a PDA ?
CSCI 4325 / 6339 Theory of Computation Zhixiang Chen Department of Computer Science University of Texas-Pan American.
Ding-Zhu Du Office: ECSS 3-611, M 3:15-4:30 Lecture: ECSS 2.311, MW 12:30-1:45.
Lecture Pushdown Automata. stack stack head finite control tape head tape.
Prof. Busch - LSU1 NFAs accept the Regular Languages.
1 Turing’s Thesis. 2 Turing’s thesis: Any computation carried out by mechanical means can be performed by a Turing Machine (1930)
Lecture 21 Reducibility. Many-one reducibility For two sets A c Σ* and B c Γ*, A ≤ m B if there exists a Turing-computable function f: Σ* → Γ* such that.
1 Turing Machines and Equivalent Models Section 13.1 Turing Machines.
1 Turing Machines - Chap 8 Turing Machines Recursive and Recursively Enumerable Languages.
1 Turing Machines. 2 The Language Hierarchy Regular Languages Context-Free Languages ? ?
1 Introduction to Turing Machines
1 CD5560 FABER Formal Languages, Automata and Models of Computation Lecture 12 Mälardalen University 2007.
1 Turing Machines. 2 The Language Hierarchy Regular Languages Context-Free Languages ? ?
Turing Machines CS 130 Theory of Computation HMU Textbook: Chap 8.
1 Turing Machines. 2 The Language Hierarchy Regular Languages Context-Free Languages ? ?
1 Turing Machines. 2 The Language Hierarchy Regular Languages Context-Free Languages ? ?
CS6800 Advance Theory of Computation Spring 2016 Nasser Alsaedi
Chapters 11 and 12 Decision Problems and Undecidability.
Introduction to Automata Theory Theory of Computation Lecture 3 Tasneem Ghnaimat.
Design and Analysis of Approximation Algorithms
Part VI NP-Hardness.
Non Deterministic Automata
Busch Complexity Lectures: Turing Machines
Deterministic Turing Machines
COSC 3340: Introduction to Theory of Computation
Busch Complexity Lectures: Reductions
Reductions Costas Busch - LSU.
COSC 3340: Introduction to Theory of Computation
Turing Machines 2nd 2017 Lecture 9.
Turing Machines Acceptors; Enumerators
Chapter 2 FINITE AUTOMATA.
COSC 3340: Introduction to Theory of Computation
Deterministic Finite Automata And Regular Languages Prof. Busch - LSU.
Non-Deterministic Finite Automata
Non-Deterministic Finite Automata
Decidable Languages Costas Busch - LSU.
Non Deterministic Automata
4b Lexical analysis Finite Automata
The Off-Line Machine Input File read-only (once) Input string
Proposed in Turing’s 1936 paper
COSC 3340: Introduction to Theory of Computation
4b Lexical analysis Finite Automata
Teori Bahasa dan Automata Lecture 10: Push Down Automata
Variants of Turing machines
CS6382 Theory of Computation
Presentation transcript:

Lecture 16 Deterministic Turing Machine (DTM) Finite Control tape head

The tape has the left end but infinite to the right. It is divided into cells. Each cell contains a symbol in an alphabet Γ. There exists a special symbol B which represents the empty cell. al ph a B e

The head scans at a cell on the tape and can read, erase, and write a symbol on the cell. In each move, the head can move to the right cell or to the left cell (or stay in the same cell). a

The finite control has finitely many states which form a set Q. For each move, the state is changed according to the evaluation of a transition function δ : Q x Γ → Q x Γ x {R, L}.

δ(q, a) = (p, b, L) means that if the head reads symbol a and the finite control is in the state q, then the next state should be p, the symbol a should be changed to b, and the head moves one cell to the left. q a b p

δ(q, a) = (p, b, R) means that if the head reads symbol a and the finite control is in the state q, then the next state should be p, the symbol a should be changed to b, and the head moves one cell to the right. p q a b

There are some special states: an initial state s and an final states h. Initially, the DTM is in the initial state and the head scans the leftmost cell. The tape holds an input string. s

When the DTM is in the final state, the DTM stops. An input string x is accepted by the DTM if the DTM reaches the final state h. Otherwise, the input string is rejected. h x

The DTM can be represented by M = (Q, Σ, Γ, δ, s) where Σ is the alphabet of input symbols. The set of all strings accepted by a DTM M is denoted by L(M). We also say that the language L(M) is accepted by M.

The transition diagram of a DTM is an alternative way to represent the DTM. For M = (Q, Σ, Γ, δ, s), the transition diagram of M is a symbol-labeled digraph G=(V, E) satisfying the following: V = Q (s =, h = ) E = { p q | δ(p, a) = (q, b, D)}. a/b,D

M=(Q, Σ, Γ, δ, s) where Q = {s, p, q, h}, Σ = {0, 1}, Г = {0, 1, B}. δ 0 1 B s (p, 0, R) (s, 1, R) - p (q, 0, R) (s, 1, R) - q (q, 0, R) (q, 1, R) (h, B, R) L(M) = (0+1)*00(0+1)*. spq h 1/1,R 0/0,R 1/1,R 0/0,R 0/0,R; 1/1,R B/B,R

Theorem. Every regular set can be accepted by a DTM. Proof. Every regular set can be accepted a deterministic finite automata (DFA). Every DFA can be simulated by a DTM.

Review on Regular Set Regular sets on an alphabet Σ is defined recursively as follows (1) The empty set Φ is a regular set. (2) For every symbol a in Σ, {a} is a regular set. (3) If A and B are regular sets, then A ∩ B, A U B, and A* are all regular sets.

Review on DFA tape head finite control a b cdef

The tape is divided into cells. Each cell contains a symbol in an alphabet Σ. The head scans at a cell on the tape and can read symbol from the cell. It can also move from left to right, one cell per move.

The finite control has finitely many states which form a set Q. For each move, the state is changed according to the evaluation of a function δ: Q x Σ → Q. If the head reads symbol a and the finite control is in the state q, then the next state is p = δ(q, a).

There are some special states: an initial state s and some final states which form a set F. The DFA can be represented by M = (Q, Σ, δ, s, F).

Initially, the DFA is in the initial state and the head scans the leftmost cell. The tape holds an input string x. When the head moves off the tape, the DFA stops. An input string is accepted by the DFA if the DFA stops in a final state. Otherwise, the input string is rejected.

Simulate DFA by DTM Given a DFA M = (Q, Σ, δ, s, F), we can construct a DTM M’ = (Q’, Г, Σ, δ’, s) to simulate M as follows: Q’ = Q U {h}, Γ = Σ U {B}, If δ(q, a) = p, then δ’(q, a) = (p, a, R). δ’(q, B) = (h, B, R) for q in F.

L(M) = (0+1)*00(0+1)*. spq h 1/1,R 0/0,R 1/1,R 0/0,R 0/0,R; 1/1,R B/B,R s p q , 1

Regular languages Turing acceptable languages

Why DTM can accept more languages than DFA? Because The head can move in two directions. (No!) The head can erase. (No!) The head can erase, write and move in two directions. (Yes!) What would happen if the head can read, erase and write, but move in one direction?

Lecture 17 Examples of DTM

├ ├

(s, 0110B) ├ (q0, B110B) ├ (q1, B010B) ├ (q0, B011B) ├ (h, B0110B)

Remark

Turing-acceptable ├

{ww | w ε (0+1)*} is Turing-acceptable. (s, B0110B)├ (q, B0110B)├ (q0, B011BB) ├* (q0, B011B) ├ (p0, B011B)├ (ok, BB11B) ├* (ok, B11B) ├ (q, B11B) ├ (q1, B1BB) ├ (q1, B1B) ├ (p1, B1B) ├ (ok, BBB) ├ (q, BBB) ├ (h, BBB) ?? Could we do (ok, BBB) ├ (h, BBB) ? R

L= {ww | w in (0+1)*} R

Turing-Computable Functions A total function f: Σ* → Σ* is Turing- computable if there exists a DTM M such that for every x in Σ*, (s, BxB) ├* (h, Bf(x)B). A partial f: Ω → Σ* is Turing-computable if there exists a DTM M such that L(M)=Ω and for every x in Ω, (s, BxB) ├* (h, Bf(x)B).

The following function f is Turing-computable: f(x) = w, if x = ww ; ↑, otherwise (s, B0110B)├ (q, B0110B)├ (q0, B011BB) ├* (q0, B011B) ├ (p0, B011B)├ (ok, B0’11B) ├* (ok, B0’11B) ├ (q, B0’11B) ├ (q1, B0’1BB) ├ (q1, B0’1B) ├ (p1, B0’1B) ├ (ok, B0’1’B) ├ (q, B0’1’B) ├ (r, B0’1B) ├* (r, B01B) ├ (o, B01B) ├* (o, B01B)├ (k, B01BB) ├ (h, B01B) R

f(x) = w if x = ww ; ↑, otherwise R

Turing-decidable A language A is Turing-decidable if its characteristic function is Turing-computable. Χ (x) = { A 1, if x ε A 0, otherwise

{ ww | w ε (0+1)*} is Turing-decidable. (s, B0110B)├ (q, B0110B)├ (q0, B011BB) ├* (q0, B011B) ├ (p0, B011B)├ (ok, B$11B) ├* (ok, B$11B) ├ (q, B$11B) ├ (q1, B$1BB) ├ (q1, B$1B) ├ (p1, B$1B) ├ (ok, B$$B) ├ (q, B$$B) ├ (r, B$BB) ├* (r, BBB) ├ (o, BBB) ├* (h, B1B) R

Theorem A language A is Turing-acceptable iff there exists a total Turing-computable function f such that A = { f(x) | x ε (0+1)*}. If we look at each natural number as a 0-1 string, then f can be also a total Turing- computable function defined on N, the set of all natural numbers, that is, A = { f(1), f(2), f(3), …} Therefore, “Turing-acceptable” is also called “recursively enumerable” (r.e.).

Theorem A language A is Turing-decidable iff A and its complement Ā are Turing-acceptable. Proof. Suppose L(M) = A and L(M’) = Ā. Construct M* to simulate M and M’ simultaneously

regular Turing-decidable (recursive) Turing-acceptable (r.e.)