Equivalence of TMs and Multitape TMs. Theorem 3.13 and Corollary 3.15 By: Joseph Lauman

Similar documents
Variants of Turing Machine (intro)

The Church-Turing Thesis

CS 525 Proof of Theorems 3.13 and 3.15

More Turing Machines. CS154 Chris Pollett Mar 15, 2006.

CS5371 Theory of Computation. Lecture 10: Computability Theory I (Turing Machine)

Foundations of

CS5371 Theory of Computation. Lecture 10: Computability Theory I (Turing Machine)

CSCC63 Worksheet Turing Machines

Chapter 3: The Church-Turing Thesis

Computability Theory. CS215, Lecture 6,

Turing Machines. 22c:135 Theory of Computation. Tape of a Turing Machine (TM) TM versus FA, PDA

Asymptotic notation : big-o and small-o

Homework Assignment 6 Answers

Computability and Complexity

Turing Machines Extensions

ECS 120 Lesson 15 Turing Machines, Pt. 1

Computation Histories

CS4026 Formal Models of Computation

Lecture 12: Mapping Reductions

CS21 Decidability and Tractability

Undecidable Problems and Reducibility

CSE355 SUMMER 2018 LECTURES TURING MACHINES AND (UN)DECIDABILITY

Lecture 14: Recursive Languages

Variations of the Turing Machine

TURING MAHINES

Chapter 7 Turing Machines

Computability Theory

1 Unrestricted Computation

Turing s Thesis. Fall Costas Busch - RPI!1

Busch Complexity Lectures: Turing s Thesis. Costas Busch - LSU 1

Part I: Definitions and Properties

Theory of Computation (IX) Yijia Chen Fudan University

Designing 1-tape Deterministic Turing Machines

Turing machines and linear bounded automata

Recap DFA,NFA, DTM. Slides by Prof. Debasis Mitra, FIT.

CSCE 551: Chin-Tser Huang. University of South Carolina

FORMAL LANGUAGES, AUTOMATA AND COMPUTABILITY

Most General computer?

CS5371 Theory of Computation. Lecture 12: Computability III (Decidable Languages relating to DFA, NFA, and CFG)

Chapter 8. Turing Machine (TMs)

Lecture Notes: The Halting Problem; Reductions

Decidability. Human-aware Robotics. 2017/10/31 Chapter 4.1 in Sipser Ø Announcement:

1 Showing Recognizability

The Power of One-State Turing Machines

Non-emptiness Testing for TMs

CS5371 Theory of Computation. Lecture 14: Computability V (Prove by Reduction)

Chomsky Normal Form and TURING MACHINES. TUESDAY Feb 4

Theory of Computation

Turing Machines A Turing Machine is a 7-tuple, (Q, Σ, Γ, δ, q0, qaccept, qreject), where Q, Σ, Γ are all finite

CSCE 551 Final Exam, Spring 2004 Answer Key

SE 3310b Theoretical Foundations of Software Engineering. Turing Machines. Aleksander Essex

Turing Machine properties. Turing Machines. Alternate TM definitions. Alternate TM definitions. Alternate TM definitions. Alternate TM definitions

6.045: Automata, Computability, and Complexity Or, Great Ideas in Theoretical Computer Science Spring, Class 8 Nancy Lynch

FORMAL LANGUAGES, AUTOMATA AND COMPUTATION

Turing Machines Part II

Reducability. Sipser, pages

Turing machines and linear bounded automata

Turing Machine Variants

Undecidability. We are not so much concerned if you are slow as when you come to a halt. (Chinese Proverb)

CSCI3390-Assignment 2 Solutions

Decidability (intro.)

An example of a decidable language that is not a CFL Implementation-level description of a TM State diagram of TM

Turing machines and linear bounded automata

Automata Theory CS S-12 Turing Machine Modifications

CSE 105 THEORY OF COMPUTATION

Turing s thesis: (1930) Any computation carried out by mechanical means can be performed by a Turing Machine

Introduction to Turing Machines

Turing machines COMS Ashley Montanaro 21 March Department of Computer Science, University of Bristol Bristol, UK

CSE 105 THEORY OF COMPUTATION

16.1 Countability. CS125 Lecture 16 Fall 2014

Announcements. Problem Set 6 due next Monday, February 25, at 12:50PM. Midterm graded, will be returned at end of lecture.

UNIT-VIII COMPUTABILITY THEORY

Turing Machines. The Language Hierarchy. Context-Free Languages. Regular Languages. Courtesy Costas Busch - RPI 1

More About Turing Machines. Programming Tricks Restrictions Extensions Closure Properties

Busch Complexity Lectures: Turing Machines. Prof. Busch - LSU 1

Theory of Computation Turing Machine and Pushdown Automata

Midterm Exam 2 CS 341: Foundations of Computer Science II Fall 2018, face-to-face day section Prof. Marvin K. Nakayama

Turing Machines. Chapter 17

Theory of Computation

cse303 ELEMENTS OF THE THEORY OF COMPUTATION Professor Anita Wasilewska

Harvard CS 121 and CSCI E-121 Lecture 14: Turing Machines and the Church Turing Thesis

Turing Machines. Our most powerful model of a computer is the Turing Machine. This is an FA with an infinite tape for storage.

Lecture notes on Turing machines

Introduction to Languages and Computation

CSE 105 THEORY OF COMPUTATION

Turing Machine variants

Turing Machine Extensions, and Enumerators

CPSC 421: Tutorial #1

jflap demo Regular expressions Pumping lemma Turing Machines Sections 12.4 and 12.5 in the text

Advanced topic: Space complexity

The Turing machine model of computation

Midterm Exam 2 CS 341: Foundations of Computer Science II Fall 2016, face-to-face day section Prof. Marvin K. Nakayama

Turing Machines. Lecture 8

CSE 460: Computabilty and Formal Languages Turing Machine (TM) S. Pramanik

Review of Complexity Theory

4.2 The Halting Problem

CS151 Complexity Theory. Lecture 1 April 3, 2017

Decidability: Church-Turing Thesis

Time Complexity (1) CSCI Spring Original Slides were written by Dr. Frederick W Maier. CSCI 2670 Time Complexity (1)

CpSc 421 Final Exam December 15, 2006

Transcription:

Equivalence of TMs and Multitape TMs Theorem 3.13 and Corollary 3.15 By: Joseph Lauman

Turing Machines First proposed by Alan Turing in 1936 Similar to finite automaton, but with an unlimited and unrestricted memory Uses an infinite tape as its unlimited memory Has a tape head that can read and write symbols and move around on the tape Initially contains only the input string and is blank everywhere else If the machine needs to store information, it writes it on the tape To read, it can move its head back over it

Turing Machines It continues computing until it decides to produce an output The output s accept and reject are obtained by entering designated accepting and rejecting states If it doesn t enter a state, it will go on forever

Definition of a Turing Machine (Q, Σ, Γ, δ, q 0, q accept, q reject ) Q, Σ, Γ are all finite sets Q is the set of states Σ is the input alphabet not containing the blank symbol Γ is the tape alphabet δ: Q x Γ Q x Γ x {L, R} is the transition function q 0 is a subset of Q and is the start state q accept is a subset of Q and is the accept state q reject is a subset of Q and is the reject state, where q reject!= q accept

Multitape Turing Machines Like a Turing machine, but with several tapes Each tape has its own head for reading and writing Each tape head moves independently of the other heads Initially, the input appears on tape 1 and the rest start out blank The transition function is changed to allow for reading, writing, and moving the heads on some or all of the tapes simultaneously

Definition of a Multitape Turing Machine (Q, Σ, Γ, δ, q 0, q accept, q reject ) Q, Σ, Γ are all finite sets Q is the set of states Σ is the input alphabet not containing the blank symbol Γ is the tape alphabet δ: Q x Γ k Q x Γ k x {L, R, S} k is the transition function where k is the number of tapes q 0 is a subset of Q and is the start state q accept is a subset of Q and is the accept state q reject is a subset of Q and is the reject state, where q reject!= q accept

Theorem 3.13 Every multitape Turing machine has an equivalent single-tape Turing machine Convert a multitape Turing machine M to an equivalent single-tape Turing machine S. The key idea is to show how to simulate M with S

Theorem 3.13 Say that M has K tapes. Then S simulates the effect of k tapes by storing their information on its single tape Uses # as a delimiter to separate the contents of the different tapes S must also keep track of the locations of the heads. Does this by writing a tape symbol with a dot above it to mark the place where the head on that tape would be The dotted tape symbols are new symbols that are added to the tape alphabet Treat them as virtual tapes and heads

Theorem 3.13 Representing three tapes with one S = On input w = w 1 w n : First S puts its tape into the format that represents all k tapes of M The formatted tape contains #w 1* w 2 w n #_ * #_ * #...# To simulate a single move, S scans its tape from the first #, which marks the left-hand end, to the (k+1)st #, which marks the right-hand end, in order to determine the symbols under the virtual heads. Then S makes a second pass to update the tapes according to the way that M s transition function dictates.

Theorem 3.13 If at any point S moves one of the virtual heads to the right onto a #, this action signifies that M has moved the corresponding head onto the previously unread blank portion of that tape. So S writes a blank symbol on this tape cell and shifts the tape contents, from this cell until the rightmost #, one unit to the right. Then it continues the simulation as before

Corollary 3.15 A language is Turing-recognizable if and only if some multitape Turing machine recognizes it A Turning-recognizable language is recognized by an ordinary (singletape) Turing machine, which is a special case of multitape Turing machine. For k=1 The rest follows from Theorem 3.13 For k=n, construct a single-tape Turing machine out of a k-tape Turing machine in the same manner

Questions?