Formal Definition Definition. A Turing machine is a 5-tuple (S, , , s, H), where: S is a set of states  is an alphabet It must contain  and . It cannot.

Slides:



Advertisements
Similar presentations
Turing Machines Memory = an infinitely long tape Persistent storage A read/write tape head that can move around the tape Initially, the tape contains only.
Advertisements

CS2303-THEORY OF COMPUTATION
Introduction to Computability Theory
Variants of Turing machines
THE CHURCH-TURING T H E S I S “ TURING MACHINES” Pages COMPUTABILITY THEORY.
Turing Machines (At last!). Designing Universal Computational Devices Was Not The Only Contribution from Alan Turing… Enter the year 1940: The world is.
Turing Machines New capabilities: –infinite tape –can read OR write to tape –read/write head can move left and right q0q0 input tape.
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 ? ?
CS 310 – Fall 2006 Pacific University CS310 Turing Machines Section 3.1 November 6, 2006.
Turing Machines.

CS 490: Automata and Language Theory Daniel Firpo Spring 2003.
CS5371 Theory of Computation Lecture 10: Computability Theory I (Turing Machine)
Costas Busch - RPI1 Turing Machines. Costas Busch - RPI2 The Language Hierarchy Regular Languages Context-Free Languages ? ?
1 Turing Machines. 2 The Language Hierarchy Regular Languages Context-Free Languages ? ?
Finite State Machines Data Structures and Algorithms for Information Processing 1.
Prof. Busch - LSU1 Turing Machines. Prof. Busch - LSU2 The Language Hierarchy Regular Languages Context-Free Languages ? ?
Grammars, Languages and Finite-state automata Languages are described by grammars We need an algorithm that takes as input grammar sentence And gives a.
AUTOMATA THEORY VIII.
CS490 Presentation: Automata & Language Theory Thong Lam Ran Shi.
CSE202: Introduction to Formal Languages and Automata Theory Chapter 9 The Turing Machine These class notes are based on material from our textbook, An.
CSCI 2670 Introduction to Theory of Computing September 28, 2005.
 Computability Theory Turing Machines Professor MSc. Ivan A. Escobar
Pushdown Automata CS 130: Theory of Computation HMU textbook, Chap 6.
1 Turing Machines There are languages that are not context-free. What can we say about the most powerful automata and the limits of computation?. Alan.
Turing Machines Chapter 17. Languages and Machines SD D Context-Free Languages Regular Languages reg exps FSMs cfgs PDAs unrestricted grammars Turing.
THE CHURCH-TURING T H E S I S “ TURING MACHINES” Part 1 – Pages COMPUTABILITY THEORY.
1Computer Sciences Department. Book: INTRODUCTION TO THE THEORY OF COMPUTATION, SECOND EDITION, by: MICHAEL SIPSER Reference 3Computer Sciences Department.
Turing Machine Finite state automaton –Limitation: finite amount of memory –Prevents recognizing languages that are not regular {0 n 1 n |n = 0,1,2,…}
TM Design Macro Language D and SD MA/CSSE 474 Theory of Computation.
September1999 CMSC 203 / 0201 Fall 2002 Week #15 – 2/4/6 December 2002 Prof. Marie desJardins.
1 Turing machines Chapter 4, Smith and Kimber. A Turing machine is an abstraction of a human “computer”. Consists of - control, in the form of states -
CSCI 2670 Introduction to Theory of Computing October 7, 2004.
1 Turing Machines - Chap 8 Turing Machines Recursive and Recursively Enumerable Languages.
Automata & Formal Languages, Feodor F. Dragan, Kent State University 1 CHAPTER 3 The Church-Turing Thesis Contents Turing Machines definitions, examples,
THE CONVENTIONS 2 simple rules: Rule # 1: Rule # 2: RR “move to the right until you find  “ Note: first check. Then move (think of a “while”) “Never.
Pushdown Automata Hopcroft, Motawi, Ullman, Chap 6.
1 Introduction to Turing Machines
1 CD5560 FABER Formal Languages, Automata and Models of Computation Lecture 12 Mälardalen University 2007.
Summary of Previous Class There are languages that are not decidable –(we have not proved this yet) Why not extend Turing machines just as we did with.
Chapter 9 Turing Machines What would happen if we change the stack in Pushdown Automata into some other storage device? Truing Machines, which maintains.
Turing Machines CS 130 Theory of Computation HMU Textbook: Chap 8.
Turing Theory. Turing Machine A Turing Machine denoted by TM, is a collection of six things. –An alphabet  of input letters –A TAPE divided into a sequence.
1 Turing Machines. 2 The Language Hierarchy Regular Languages Context-Free Languages ? ?
CSCI 2670 Introduction to Theory of Computing September 29, 2005.
Theory of Computation Automata Theory Dr. Ayman Srour.
Costas Busch - LSU1 Deterministic Finite Automata And Regular Languages.
Recap: Nondeterministic Finite Automaton (NFA) A deterministic finite automaton (NFA) is a 5-tuple (Q, , ,s,F) where: Q is a finite set of elements called.
Fall 2004COMP 3351 Finite Automata. Fall 2004COMP 3352 Finite Automaton Input String Output String Finite Automaton.
CSE202: Introduction to Formal Languages and Automata Theory
Busch Complexity Lectures: Turing Machines
Pumping Lemma Revisited
Pushdown Automata PDAs
Pushdown Automata PDAs
Pushdown Automata PDAs
COSC 3340: Introduction to Theory of Computation
Turing Machines 2nd 2017 Lecture 9.
Turing Machines Acceptors; Enumerators
Turing Machines (At last!).
Chapter 9 TURING MACHINES.
Deterministic Finite Automata And Regular Languages Prof. Busch - LSU.
Decidable Languages A language L is decidable if there is a Turing machine ML such that given any word w  0*, then: Input of ML: a  b  … w Output of.
CS21 Decidability and Tractability
MA/CSSE 474 Theory of Computation
Recall last lecture and Nondeterministic TMs
Decidability and Tractability
Computability Catch up last lecture. Turing machines. Variations
Hopcroft, Motawi, Ullman, Chap 8
Presentation transcript:

Formal Definition Definition. A Turing machine is a 5-tuple (S, , , s, H), where: S is a set of states  is an alphabet It must contain  and . It cannot contain  or  s  S is the initial state H  S is the set of halting states

Formal Definition (II)  is a collection of transitions defined by the function:  maps ((S-H)  ) into (S  (  (, })) such that: For any q  S – H, then for some p  S 1.1 (q, ) = (p,), or 1.2 (q, ) = (p, ) There cannot be any p, q  S and α   – {} such that (p, α) = (q, ) Very simple definition but very useful precisely because of its simplicity!

The “Eraser” TM Construct a Turing machine that receives as input a substring of a’s and replace each a for a blank space,  a   (S, , , s, H) S = {s,q,h} ={a, , } H = {h}

Another Example = { ((s, ),(s,)), ((s,a),(q, )), ((q, ),(s, )), ((s, ),(h, )), ((q,a),(q,a)), ((q, ), (q, a)) } ((s, ),(q,)) What does this Turing machine do?

The Turing Machines M1 and M0 The Turing Machine M1 ?  1 The Turing Machine M0 ? 

The Turing Machine Mx ?  1 ? 

Configuration for Previous Machines Explanation (q,w) q: state, w: word Finite automata (q,w,) q: state, w: word : stack Pushdown automata

Configuration for Turing Machines The current state, q The symbol pointed by the head, h The string left of the head, LS The string right of the head, RS (q,h,LS,RS)

Configuration for Turing Machines (2) Instead of writing: (q,h,LS,RS), we write: (q,LShRS) If q  H, then (q,LShRS) is called a halting configuration Examples: - Initial configuration with 3 a’s for the eraser TM: (s,eaaa) - Final configuration starting with (s,eaaa): (s,) - Final configuration of M1with (s,aab): (s,1ab)

Computation in Turing Machines A configuration C1 = (q1,LS1h1RS1) yields a configuration C2 = (q2,LS2h2RS2) in one step, written C1 C2, if:  There is a transition ((q1, h1),(q2,A)) in  C2 is obtained after applying ((q, h1),(q2,A)) to C1 (there are 3 cases for A: a in ∑, , or ) C yields C’, written C * C’:  There is a sequence of configurations: C C0 C1 … C’

Example of Computation (s,eaaa) yields (h,e) written (s,eaaa) * (h,e) 

Example of Computation (2) Consider the following Turing machine: ((s, ),(h, )) ((s,a),(q,b)) ((s,b),(q,a)) ((q,a),(s,)) ((q,b),(s,)) ((q, ),(q, )) ((s, ),(s,)) ((q, ),(s,)) - Trace the machine when starting with configuration (s,abbabba) - Describe what this machine does

Another Turing Machine The (ab)* Turing Machine: 1  ?  a b a b  a b a a

Homework Please provide a secret nickname so we can post your grades on the course’s web site 4.1 a), b) 4.2 Construct a Turing machine that “reads” the character in the current cell and copies it into the contiguous cell immediately to the right of the current one (if the character in the current cell is , the machine does not terminate). For example if the starting configuration is: (s, abaa), then the halting configuration is: (h, abba), where h is a halting state Construct the Turing machine that recognizes (ab)* (See Slide # 13)