COMP-330 Theory of Computation. Fall Prof. Claude Crépeau. Lec. 16 : Turing Machines

Similar documents
COMP-330 Theory of Computation. Fall Prof. Claude Crépeau. Lec. 14 : Turing Machines

COMP-330 Theory of Computation. Fall Prof. Claude Crépeau. Lecture 1 : Introduction

COMP-330 Theory of Computation. Fall Prof. Claude Crépeau. Lec. 5 : DFA minimization

COMP-330 Theory of Computation. Fall Prof. Claude Crépeau. Lec. 9 : Myhill-Nerode Theorem and applications

COMP-330 Theory of Computation. Fall Prof. Claude Crépeau. Lec. 10 : Context-Free Grammars

CS21 Decidability and Tractability

Introduction to Turing Machines

COMP-330 Theory of Computation. Fall Prof. Claude Crépeau. Lecture 2 : Regular Expressions & DFAs

Computability Theory. CS215, Lecture 6,

CS 301. Lecture 17 Church Turing thesis. Stephen Checkoway. March 19, 2018

CSE 2001: Introduction to Theory of Computation Fall Suprakash Datta

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

Chapter 3: The Church-Turing Thesis

DM17. Beregnelighed. Jacob Aae Mikkelsen

The Church-Turing Thesis

Theory of Computation (IX) Yijia Chen Fudan University

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

THEORY OF COMPUTATION (AUBER) EXAM CRIB SHEET

FORMAL LANGUAGES, AUTOMATA AND COMPUTABILITY

Finite Automata Theory and Formal Languages TMV027/DIT321 LP4 2018

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

UNRESTRICTED GRAMMARS

Computability and Complexity

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

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

CSE 105 THEORY OF COMPUTATION

Chomsky Normal Form and TURING MACHINES. TUESDAY Feb 4

V Honors Theory of Computation

CSE 105 THEORY OF COMPUTATION

Fundamentals of Computer Science

CSCC63 Worksheet Turing Machines

CSE 2001: Introduction to Theory of Computation Fall Suprakash Datta

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

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

Turing Machines (TM) The Turing machine is the ultimate model of computation.

Turing Machines. Lecture 8

TURING MAHINES

FORMAL LANGUAGES, AUTOMATA AND COMPUTABILITY

The Turing machine model of computation

CSE 105 THEORY OF COMPUTATION. Spring 2018 review class

cse303 ELEMENTS OF THE THEORY OF COMPUTATION Professor Anita Wasilewska

CSCE 551 Final Exam, Spring 2004 Answer Key

Decidable Languages - relationship with other classes.

Lecture 13: Turing Machine

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

The Unsolvability of the Halting Problem. Chapter 19

Automata & languages. A primer on the Theory of Computation. Laurent Vanbever. ETH Zürich (D-ITET) October,

CSE 105 THEORY OF COMPUTATION

Decidability: Church-Turing Thesis

Undecidable Problems and Reducibility

FORMAL LANGUAGES, AUTOMATA AND COMPUTATION

SCHEME FOR INTERNAL ASSESSMENT TEST 3

Undecidability COMS Ashley Montanaro 4 April Department of Computer Science, University of Bristol Bristol, UK

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

Functions on languages:

The Turing Machine. Computability. The Church-Turing Thesis (1936) Theory Hall of Fame. Theory Hall of Fame. Undecidability

Final exam study sheet for CS3719 Turing machines and decidability.

Computational Models - Lecture 6

SYLLABUS. Introduction to Finite Automata, Central Concepts of Automata Theory. CHAPTER - 3 : REGULAR EXPRESSIONS AND LANGUAGES

DD2371 Automata Theory

Computational Models Lecture 7, Spring 2009

Theory of Computation Turing Machine and Pushdown Automata

Automata Theory. Definition. Computational Complexity Theory. Computability Theory

Summary. Reg Dodds Department of Computer Science University of the Western Cape 2016 Reg Dodds

Lecture 12: Mapping Reductions

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

CS154, Lecture 10: Rice s Theorem, Oracle Machines

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

Theory of Computation

CSE 105 THEORY OF COMPUTATION

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

CS20a: Turing Machines (Oct 29, 2002)

CS154 Final Examination

CSE 105 Theory of Computation

Variants of Turing Machine (intro)

Mapping Reducibility. Human-aware Robotics. 2017/11/16 Chapter 5.3 in Sipser Ø Announcement:

COMP/MATH 300 Topics for Spring 2017 June 5, Review and Regular Languages

Computation Histories

Decidability (What, stuff is unsolvable?)

CSE355 SUMMER 2018 LECTURES TURING MACHINES AND (UN)DECIDABILITY

Theory of Computation CS3102 Spring 2014 A tale of computers, math, problem solving, life, love and tragic death

The Church-Turing Thesis. Chapter 18

ACS2: Decidability Decidability

CS 275 Automata and Formal Language Theory

Exam Computability and Complexity

Intro to Theory of Computation

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

Introduction to Languages and Computation

St.MARTIN S ENGINEERING COLLEGE Dhulapally, Secunderabad

Part I: Definitions and Properties

Computability and Complexity

Harvard CS 121 and CSCI E-207 Lecture 10: CFLs: PDAs, Closure Properties, and Non-CFLs

CP405 Theory of Computation

CS 275 Automata and Formal Language Theory

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

Automata and Computability. Solutions to Exercises

CS481F01 Solutions 8

7.1 The Origin of Computer Science

Theory of Computation

1 Showing Recognizability

Transcription:

COMP-330 Theory of Computation Fall 2017 -- Prof. Claude Crépeau Lec. 16 : Turing Machines

COMP 330 Fall 2017: Lectures Schedule 1-2. Introduction 1.5. Some basic mathematics 2-3. Deterministic finite automata +Closure properties, 4. Nondeterministic finite automata 5. Minimization 6. Determinization+Kleene s theorem 7. Regular Expressions+GNFA 8. The pumping lemma 9. Myhill-Nerode theorem 10. Context-Free Grammar 11. PushDown automata 12.CFG - PDA equivalence 13. CFG Pumping lemma and applications 14. MIDTERM 15-16. Deterministic CFLs 16-17. Turing Machines and Church-Turing Thesis 17. Models of computation Basic computability theory 18. Reducibility, undecidability and Rice s theorem 19. Undecidable problems about CFGs 20. Post Correspondence Problem 21. Validity of FOL is RE / Gödel s and Tarski s thms 22. Universality / The recursion theorem 23. Degrees of undecidability 24. Introduction to complexity 25. Introduction to Quantum Computing/Complexity 26. Review of course material

All languages Computability Theory Languages we can describe Decidable Languages Context-free Languages Regular NON-Regular Languages via Pumping Lemma Languages NON-Regular Languages via Reductions

All languages Computability Theory Languages we can describe Decidable Languages Context-free Languages Regular Languages NON-CFLs via Pumping Lemma NON-CFLs via Reductions

All languages Computability Theory Decidable Languages Languages. we can describe Context-free Languages Regular Languages NON-decidable via Diagonalization NON-decidable via Reductions

Turing MACHINES Alan Turing

M1

M 1 q1 10010101

M 1 1 q2 10010101

M 1 0 q3 10010101

M 1 1 q2 10110101 read and write! moves Right and Left!

M 1 0 q3 10110101

Turing Machines

TM Example

Definition of TM States q1 q2 q3 a,b,c Tape Alphabet a,b,c,a,b,c,_ Input Alphabet Transition function Start state Accept state Reject state b c,d q1 q2

Definition of TM q2 q 3 q1 L or R States output head input symbol move Input Alphabet a,b,c symbol b c,d Tape Alphabet a,b,c,a,b,c,_ Transition function q1 b c,d Start state q1 Accept state Reject state q2 q2

Definition of TM States q2 q1 q3 a,b,c Tape Alphabet a,b,c,a,b,c,_ Input Alphabet Transition function Start state q1 Accept state qacc Reject state qrej b c,d q1 q2

TM definition

TM Configuration

TM Computation

TM definition For all a,b,c Γ, u,v Γ*, qi,qi Q Config. ua qi bv yields config. u qj acv if δ(qi,b) = qj,c,l Config. ua qi bv yields config. uac qj v if δ(qi,b) = qj,c,r Special cases: Config. q i bv yields qj cv if δ(qi,b) = qj,c,l Config. q i bv yields c qj v if δ(qi,b) = qj,c,r

TM Computation Start configuration: q0 w (w = input string) Accepting configuration: state = qaccept Rejecting configuration: state = qreject

TM Computation Turing Machine M accepts input w if there exists configurations C0, C1,..., Cm such that C0 is a start configuration Ci yields Ci+1 for 0 i<m Cm is an accepting configuration. The collection of strings that M accepts is the language of M or the language recognized by M, denoted L(M).

TM Computation A TM decides a language if it recognizes it and halts (reaches an accepting or rejecting states) on all input strings.

TM Computation A TM decides a language if it recognizes it and halts (reaches an accepting or rejecting states) on all input strings. 1 Often named Recursively-Enumerable in the literature. 2 Often named Recursive in the literature.

TM Examples

TM Examples

TM Computation

TM Examples

\ { #, _ } \ { x, _ }

TM Examples

TM Examples

TM Examples

More Turing MACHINES Multitape Turing Machines Non-Deterministic Turing Machines Enumerator Turing Machines Everything else...

Multitape TM

Multitape TM

Multitape TM

Multitape TM

Non-deterministic TM

Non-deterministic TM

Non-deterministic TM

Enumerator TM

Enumerator TM

Enumerator TM

Enumerator TM

Enumerator TM

Everything Else Lambda-calculus Alonzo Church Recursive Functions Programming languages: FORTRAN, PASCAL, C, JAVA,... Stephen Kleene LISP, SCHEME,... J. Barkley Rosser

Everything Else Lambda-calculus Alonzo Church Recursive Functions Programming languages: FORTRAN, PASCAL, C, JAVA,... Stephen Kleene LISP, SCHEME,... J. Barkley Rosser

Everything Else Lambda-calculus Alonzo Church Recursive Functions Programming languages: FORTRAN, PASCAL, C, JAVA,... Stephen Kleene LISP, SCHEME,... J. Barkley Rosser

Church-Turing Thesis Alonzo Church Alan Turing

Church-Turing Thesis

Paris, 1900 David Hilbert Speaking on 8 August 1900, at the Paris 2 nd International Congress of Mathematicians, at La Sorbonne, German mathematician David Hilbert presented ten problems in mathematics. The problems were all unsolved at the time, and several of them turned out to be very influential for 20 th century mathematics.

Hilbert s 10 th problem Let P be a polynomial in several variables: P(x,y,z)=24x 2 y 3 +17x+5y+25 Is there a set of integers for x,y,z such that P(x,y,z)=0? This problem is undecidable... but is Turing-Recognizable... Needed a formal model of computing to prove impossibility. Yuri Matiyasevich

Single variable Poly

COMP-330 Theory of Computation Fall 2017 -- Prof. Claude Crépeau Lec. 16 : Turing Machines & Church-Turing Thesis