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

Similar documents
Homework. Turing Machines. Announcements. Plan for today. Now our picture looks like. Languages

Part I: Definitions and Properties

Variations of the Turing Machine

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

Before We Start. Turing Machines. Languages. Now our picture looks like. Theory Hall of Fame. The Turing Machine. Any questions? The $64,000 Question

Turing s Thesis. Fall Costas Busch - RPI!1

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

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

Chapter 3: The Church-Turing Thesis

Computability and Complexity

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

Computable Functions

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

1 Showing Recognizability

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

Computability Theory. CS215, Lecture 6,

CSE 105 THEORY OF COMPUTATION

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

Decidability: Church-Turing Thesis

CS4026 Formal Models of Computation

CS21 Decidability and Tractability

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

CSCC63 Worksheet Turing Machines

Turing Machines. Lecture 8

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

Chapter 7 Turing Machines

CSCI3390-Assignment 2 Solutions

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

THEORY OF COMPUTATION

Notes for Comp 497 (Comp 454) Week 12 4/19/05. Today we look at some variations on machines we have already seen. Chapter 21

CS 525 Proof of Theorems 3.13 and 3.15

Introduction to Turing Machines

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

Foundations of

Most General computer?

Chapter 8. Turing Machine (TMs)

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

Lecture 14: Recursive Languages

CSE 105 THEORY OF COMPUTATION

V Honors Theory of Computation

A Universal Turing Machine

Computational Models Lecture 8 1

TURING MAHINES

The Church-Turing Thesis

Decidability. Linz 6 th, Chapter 12: Limits of Algorithmic Computation, page 309ff

CSE 105 THEORY OF COMPUTATION

CSE355 SUMMER 2018 LECTURES TURING MACHINES AND (UN)DECIDABILITY

Decision Problems with TM s. Lecture 31: Halting Problem. Universe of discourse. Semi-decidable. Look at following sets: CSCI 81 Spring, 2012

More About Turing Machines. Programming Tricks Restrictions Extensions Closure Properties

Computational Models Lecture 8 1

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

Variants of Turing Machine (intro)

Theory of Computation

Theory of Computation - Module 4

Non-emptiness Testing for TMs

CPSC 421: Tutorial #1

What languages are Turing-decidable? What languages are not Turing-decidable? Is there a language that isn t even Turingrecognizable?

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

CSE 105 THEORY OF COMPUTATION. Spring 2018 review class

Turing Machines Part II

CSE 2001: Introduction to Theory of Computation Fall Suprakash Datta

CSE 105 THEORY OF COMPUTATION

Turing Machines (TM) Deterministic Turing Machine (DTM) Nondeterministic Turing Machine (NDTM)

Turing Machines and the Church-Turing Thesis

Turing Machines. Chapter 17

CSCI 2200 Foundations of Computer Science Spring 2018 Quiz 3 (May 2, 2018) SOLUTIONS

Automata Theory - Quiz II (Solutions)

Theory of Computation Lecture Notes. Problems and Algorithms. Class Information

HIS LEGACY. 100 Years Turing celebration. Gordana Dodig Crnkovic, IDT Open Seminar. Computer Science and Network Department Mälardalen University

CSCE 551 Final Exam, Spring 2004 Answer Key

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

CSE 2001: Introduction to Theory of Computation Fall Suprakash Datta

} Some languages are Turing-decidable A Turing Machine will halt on all inputs (either accepting or rejecting). No infinite loops.

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

FORMAL LANGUAGES, AUTOMATA AND COMPUTATION

Turing machine recap. Universal Turing Machines and Undecidability. Alphabet size doesn t matter. Robustness of TM

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

Computational Models Lecture 8 1

CSCI3390-Lecture 6: An Undecidable Problem

CS20a: Turing Machines (Oct 29, 2002)

Decidable Languages - relationship with other classes.

Turing Machines Part III

Computation Histories

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

Lecture 12: Mapping Reductions

Decidability. William Chan

Turing Machines, diagonalization, the halting problem, reducibility

Chomsky Normal Form and TURING MACHINES. TUESDAY Feb 4

Two Way Deterministic Finite Automata

ACS2: Decidability Decidability

Computation. Some history...

Lecture 23: Rice Theorem and Turing machine behavior properties 21 April 2009

ECS 120 Lesson 20 The Post Correspondence Problem

CS 410/610, MTH 410/610 Theoretical Foundations of Computing

where Q is a finite set of states

IV. Turing Machine. Yuxi Fu. BASICS, Shanghai Jiao Tong University

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

Griffith University 3130CIT Theory of Computation (Based on slides by Harald Søndergaard of The University of Melbourne) Turing Machines 9-0

Turing machines Finite automaton no storage Pushdown automaton storage is a stack What if we give the automaton a more flexible storage?

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

Transcription:

Turing Machine properties Turing Machines TM Variants and the Universal TM There are many ways to skin a cat And many ways to define a TM The book s Standard Turing Machines Tape unbounded on both sides Deterministic (at most 1 move / configuration) Tape acts as both input and output The books looks at a number of alternate (and equivalent) definitions. Turing Machines with a STAY Option Allows the tape head to stay where it is δ: Q x Γ Q x Γ x {R, L, S} Basic TM defined in JFLAP TM with semi-infinite tape Tape is bounded on the left Any attempt to go beyond this boundary will result in halt and reject. Off-line TM TM with 2 tapes Read-only input tape Read-write tape Input file + memory Non-deterministic TM Machine has a choice of moves δ: Q x Γ 2 Q x Γ x {R, L} More on this next week. All of the alternate definitions are equivalent to the standard TM I.e Given an alternate TM that accepts L, one can construct a standard TM that accepts the same language. Multi-taped TMs Have multiple tapes With a multiple tape heads that is read/ writing a different position on each tape at any one given time. δ: Q x Γ n Q x Γ n x {R, L} n where n is #of tapes 1

Turing Machine Variants Turing Machine Variants Multitape TM Move of a multitape TM Will depend upon: The state of the machine The symbol being read on all of the tape heads Result: Each of the tape heads will write a new symbol on the tape Each of the tape heads will move left, right, or stationery Tape heads can move independently. Multitape TM Example {ww R w is a string in {a,b} * } Even length palandromes 2-tapes Step 1: Copy contents of tape 1 to tape 2 Step 2: position head of tape 1 at beginning of tape and head of tape 2 at end Step 3: Compare strings character by character Multitape TM Questions? A TM M u that takes as input, an encoded version of another TM M and an input w to M. M u will simulate the processing w on M If M halts on input w, M u will halt If M rejects on input w,m u will reject. M u is a general purpose TM M is a program run on the general purpose TM Encoding scheme We need a way to encode a TM so that it can be provided as input to T u Define sets: Q = {q 1, q 2, } = set of all possible states that may appear in any TM S = {a 1, a 2, a 3, } = set of all possible tapes symbols that can be written on any TM. So for any TM Q Q and Γ S 2

Assumptions q 1 will always be the start state There will only be 1 final state It will be q 2 The machine always halts in q 2 Encoding scheme Associate states, symbols, and directions with binary numbers: States: s(q i ) 1 i Symbols s(a i ) 1 i Directions: s(l) 1 s(r) 11 Encoding scheme Encoding transitions: Encode each state, symbol, direction Separate by 0 The transition δ (p,a) = (q, b, D) can be encoded as: s(p)0s(a)0s(q)0s(b)0s(d) Encoding Encoding for a TM Encode each of it s moves Separate by 0 s e(t) = e(m 1 )0e(m 2 )0 0e(m k )0 The input to M u will be an encoded TM and a string w to run on that TM We encode x by individually encoding the characters of x (separated by 1 s) x = z 1 z 2 z n e(x) = s(z 1 )0s(z 2 )0 0s(z n )0 Encoding Scheme Finally, the description of the TM and the encoding of the string to run on the TM will be separated by a blank Input to M u e(m) e(x) 3

Encoding example States q 1 state 1 q 2 state 2 q 3 state 3 q 4 state 4 Symbols B symbol 1 a symbol 2 b symbol 3 Encoding example States q 1 state 1 q 2 state 2 q 3 state 3 q 4 state 4 Symbols B symbol 1 a symbol 2 b symbol 3 Directions s(l) 1 s(r) 11 1 0 1 0 111 0 1 0 11 Encoding scheme The actual scheme isn t really important (in fact, there are many) What is important is that we can encode a TM and it s input as a binary string. This encoding defines a unique serial number to each TM The set of all TMs is countably infinite We can define a one-to-one and onto function between the set of TMs and the set of natural numbers { 0, 1, 2, } Uncountably infinite sets are larger than countably infinite sets How it works 3 tape TM Tape 1 Working tape Tape 2 Input and output tape Tape 3 encoded form of the state that machine being simulated is in Note that a 3 tape TM is equivalent to a basic TM. How it works Read head(s) State Machine (program) On a single move, The symbol on each tape is read The symbol on each tape is written The tape head for each tape is moved independently 4

How it works When we start e(t) e(x) is on tape 1 Step 1: Move e(x) from tape 1 to tape 2 and delete from tape 1 Tape 2: e(x) Step 2: Copy encoded initial state of T to tape 3 Tape 3: s(q 1 ) How it works Step 3: Now simulation begins read and replace character on tape 2 read state on tape 3 find a transition in the encoded machine on tape 1. Replace destination state onto tape 3 Replace character on tape 2. Move head on tape 2 appropriately How will the machine finish? The TM being simulated has nowhere to go. M u will never find a suitable transition The TM being simulated goes into an infinite loop M u will continually simulate these moves The TM being simulated halts M u will halt with halt state on it s 3 rd tape M u will copy the contents of Tape 2 to Tape 1 Reality check: What have we done? Defined: A means to encode a TM as a binary string Defines it s serial number Set of all TMs is infinitely countable A Universal TM (M u ) that takes as input: An encoded TM, M An encoded input string, w That will simulate the running of w on M Questions? Next time (Monday): Languages and TMs Godel, Escher, Bach! Next class: Exam 2 5