Presentation is loading. Please wait.

Presentation is loading. Please wait.

Lecture 18UofH - COSC 3340 - Dr. Verma 1 COSC 3340: Introduction to Theory of Computation University of Houston Dr. Verma Lecture 18.

Similar presentations


Presentation on theme: "Lecture 18UofH - COSC 3340 - Dr. Verma 1 COSC 3340: Introduction to Theory of Computation University of Houston Dr. Verma Lecture 18."— Presentation transcript:

1 Lecture 18UofH - COSC 3340 - Dr. Verma 1 COSC 3340: Introduction to Theory of Computation University of Houston Dr. Verma Lecture 18

2 UofH - COSC 3340 - Dr. Verma 2 Combining Turing Machines A Turing Machine can be a component of another Turing Machine (“subroutine”) We will develop a graphical notation to build larger machines for more complex tasks easily. The scheme is hierarchical. Combination is possible since all TM’s are designed to be “non- hanging” – so the first machine can save something on the leftend of the tape. Reference: “Elements of the Theory of Computation’’ by H.R. Lewis and C.H. Papadimitriou.

3 Lecture 18UofH - COSC 3340 - Dr. Verma 3 Combining Turing Machines Assumptions, for convenience: – From now on, Turing machines can either write a symbol or move head but not both in the same move. – All TMs have only one alphabet , containing the blank symbol – All machines start in this position: #w# There are two types of basic machines: – Symbol-writing – Head-moving

4 Lecture 18UofH - COSC 3340 - Dr. Verma 4 Basic Machines: Symbol-Writing There are |  | symbol-writing machines, one for each symbol in . Each TM simply writes a specified symbol in the currently scanned tape square and halts. Formally, the TM which writes a is W a = (K, , , s), where K = {q} for some arbitrarily chosen state q s = q and  (q, b) = (h, a) for each b   Notation: W a

5 Lecture 18UofH - COSC 3340 - Dr. Verma 5 Basic Machines: Head-Moving The head-moving machines simply move the head one square to the left or right, and then halt. Formally, the TM’s are V L = ({q}, ,  L, q), where  L (q, a) = (h, L) for each a   V R = ({q}, ,  R, q), where  R (q, a) = (h, R) for each a   let q be some state Notation: L and R

6 Lecture 18UofH - COSC 3340 - Dr. Verma 6 Rules for Combining Machines Machines may be connected just like a Finite Automaton. If two machine are connected, then the first machine has to halt before the other machine starts.

7 Lecture 18UofH - COSC 3340 - Dr. Verma 7 Rules for Combining Machines M1M2M1M2 M1M2M1M2 M3M3 a b If M 1 and M 2 are any TM Start in the initial state of M 1 ; operate as M 1 would operate until M 1 would halt; then initiate M 2 and operate as M 2 would operate After M 1 halts either M 2 or M 3 would start depending on the symbol.

8 Lecture 18UofH - COSC 3340 - Dr. Verma 8 Abbreviations L/R – A TM that moves the head one cell to the left/right R □ - A TM that moves to the Right seeking □ L □ - A TM that moves to the Left seeking □ R □ - A TM that moves to the Right seeking a nonblank spot L □ - A TM that moves to the Left seeking nonblank spot

9 Lecture 18UofH - COSC 3340 - Dr. Verma 9 Example: R □ R a b R□R□ StateSymbolNext state action q0q0 □(q 1, □, R) q0q0 a(q 1, a, R) q0q0 b(q 1, b, R) q1q1 □halt q1q1 a(q 1, a, R) q1q1 b(q 1, b, R) M = ({q 0, q 1 }, {a, b}, {a, b, □}, , q 0, {}) L □ is very similar to R □ Alphabet (  ) = {a, b}

10 Lecture 18UofH - COSC 3340 - Dr. Verma 10 JFLAP SIMULATION

11 Lecture 18UofH - COSC 3340 - Dr. Verma 11 JFLAP SIMULATION

12 Lecture 18UofH - COSC 3340 - Dr. Verma 12 JFLAP SIMULATION

13 Lecture 18UofH - COSC 3340 - Dr. Verma 13 JFLAP SIMULATION

14 Lecture 18UofH - COSC 3340 - Dr. Verma 14 JFLAP SIMULATION

15 Lecture 18UofH - COSC 3340 - Dr. Verma 15 Example: Machine 1 >L □ R□R□ R □(R □ ) 2  (L □ ) 2    □  □ □

16 Lecture 18UofH - COSC 3340 - Dr. Verma 16 Example: Machine 1 (contd.) □abc□ □□bc□ □□bc□□ □□bc□a □abc□a □a□c□a □a□c□a□ □a□c□ab □abc□ab □abc□a □ab□□a □ab□□ab□ □a□c□abc □ab□□abc □abc□abc □abc□abc□ Let C be the TM, we say C transforms □w□ into □w□w□ (Copying Machine)

17 Lecture 18UofH - COSC 3340 - Dr. Verma 17 Example: Machine 2 >L □ L□L□ R LRLR   □  □ □

18 Lecture 18UofH - COSC 3340 - Dr. Verma 18 Example: Machine 2 (contd.) □ab□ aab□ abb□ ab□ Let SL be the TM, we say SL transforms □w□ into w□ (Shift-Left Machine)

19 Lecture 18UofH - COSC 3340 - Dr. Verma 19 Example: Machine 3 >aL □ L Ra □ aR a □CaL a □ □ L I aR a □IR  L□ □ LILI □R  R □La□□La□ a □ I a I □

20 Lecture 18UofH - COSC 3340 - Dr. Verma 20 Example: Machine 3 (contd.) f(n, m) = n  m is computed by the TM (Multiplication Machine) □II□II□ □II□IIa □I□□IIa □a□□IIa □a□□II□ □a□□II□II□ □a□□II□IIa □□□□II□IIa a□□□II□IIa a□□□II□II□ a□□□IIIII□ a□□□IIII□□ a□□IIIII□□. □IIII□□□□□ f(2,2) = ?

21 Lecture 18UofH - COSC 3340 - Dr. Verma 21 Turing Machine Models Variants of TM model – Two-way infinite tape – Multiple tapes – Multiple heads on each tape – Multi-dimensional tapes, and – Combinations of the above.

22 Lecture 18UofH - COSC 3340 - Dr. Verma 22 Are the variants more powerful than the basic model? Ans: No All "reasonable" extensions including those listed before lead to the same classes of languages or functions. Proved by showing that the basic model can simulate the extensions.

23 Lecture 18UofH - COSC 3340 - Dr. Verma 23 Techniques for Simulations The basic TM has – expanded set of states – expanded alphabet Note: one step in extended model is usually simulated by many steps in the basic model.


Download ppt "Lecture 18UofH - COSC 3340 - Dr. Verma 1 COSC 3340: Introduction to Theory of Computation University of Houston Dr. Verma Lecture 18."

Similar presentations


Ads by Google