1 / 23

COSC 3340: Introduction to Theory of Computation

COSC 3340: Introduction to Theory of Computation. University of Houston Dr. Verma Lecture 18. Combining Turing Machines. A Turing Machine can be a component of another Turing Machine (“subroutine”)

savea
Download Presentation

COSC 3340: Introduction to Theory of Computation

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. COSC 3340: Introduction to Theory of Computation University of Houston Dr. Verma Lecture 18 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. UofH - COSC 3340 - Dr. Verma

  3. Combining Turing Machines • Assumptions, for convenience: • From now on, Turing machines can either write a symbol or move head butnot both in the same move. • All TMs have only one alphabet , containing the blanksymbol • All machines start in this position: #w# • There are two types of basic machines: • Symbol-writing • Head-moving UofH - 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 Wa = (K, , , s), where K = {q} for some arbitrarily chosen state q s = q and (q, b) = (h, a) for each b   Notation: Wa UofH - 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 VL = ({q}, , L, q), where L(q, a) = (h, L) for each a   VR = ({q}, , R, q), where R(q, a) = (h, R) for each a   let q be some state Notation: L and R let q be some state UofH - 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. UofH - COSC 3340 - Dr. Verma

  7. a b M1 M2 M1 M2 M3 Rules for Combining Machines If M1 and M2 are any TM Start in the initial state of M1; operate as M1 would operate until M1would halt; then initiate M2 and operate as M2 would operate After M1 halts either M2 or M3 would start depending on the symbol. UofH - 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 UofH - COSC 3340 - Dr. Verma

  9. Example: R□ Alphabet () = {a, b} M = ({q0, q1}, {a, b}, {a, b, □},, q0, {}) a R□ R b L□ is very similar to R□ UofH - COSC 3340 - Dr. Verma

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

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

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

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

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

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

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

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

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

  19. Example: Machine 3 I >aL□L □ aRa□CaLa□ L I □ □ □ LI aRa□ IRL□ a □ Ra R I a □R □La□ UofH - COSC 3340 - Dr. Verma

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

More Related