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

Similar documents
Turing s Thesis. Fall Costas Busch - RPI!1

Variations of the Turing Machine

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

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

Chapter 3: The Church-Turing Thesis

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

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

Computability Theory. CS215, Lecture 6,

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

Part I: Definitions and Properties

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

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

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

CSCC63 Worksheet Turing Machines

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

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

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

1 Showing Recognizability

CSE 105 THEORY OF COMPUTATION

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

Lecture 14: Recursive Languages

Turing s original paper (1936)

The Church-Turing Thesis

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

Foundations of

Homework 5 Solution CSCI 2670 October 6, c) New text q 1 1##1 xq 3 ##1 x#q 5 #1 q reject. Old text. ~q 3 ##1 ~#q 5 #1

Asymptotic notation : big-o and small-o

CSE 2001: Introduction to Theory of Computation Fall Suprakash Datta

Chapter 8. Turing Machine (TMs)

CS4026 Formal Models of Computation

CS 301. Lecture 18 Decidable languages. Stephen Checkoway. April 2, 2018

Variants of Turing Machine (intro)

Turing Machines and Time Complexity

Turing Machines Part II

Chapter 7 Turing Machines

More About Turing Machines. Programming Tricks Restrictions Extensions Closure Properties

V Honors Theory of Computation

CS21 Decidability and Tractability

Turing Machines Part II

Lecture 4 Nondeterministic Finite Accepters

CSE 2001: Introduction to Theory of Computation Fall Suprakash Datta

Theory of Computation (IX) Yijia Chen Fudan University

CSE355 SUMMER 2018 LECTURES TURING MACHINES AND (UN)DECIDABILITY

Turing Machine Variants. Sipser pages

Review of Complexity Theory

CSCI3390-Assignment 2 Solutions

Turing Machines Part II

Computability and Complexity

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

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

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

Homework Assignment 6 Answers

Lecture 13: Turing Machine

Decidability: Church-Turing Thesis

Turing Machines Part III

CSE 105 THEORY OF COMPUTATION

CFGs and PDAs are Equivalent. We provide algorithms to convert a CFG to a PDA and vice versa.

2.6 Variations on Turing Machines

where Q is a finite set of states

TURING MAHINES

Lecture 12: Mapping Reductions

Decidability (intro.)

CS 525 Proof of Theorems 3.13 and 3.15

A Note on Turing Machine Design

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

Introduction to Turing Machines

FORMAL LANGUAGES, AUTOMATA AND COMPUTATION

Turing Machines Extensions

Chomsky Normal Form and TURING MACHINES. TUESDAY Feb 4

Equivalence of Regular Expressions and FSMs

Chapter 5. Finite Automata

Turing Machines. Lecture 8

Theory of Computation

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

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

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

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

Computation Histories

FORMAL LANGUAGES, AUTOMATA AND COMPUTABILITY

Universal Turing Machine. Lecture 20

Equivalent Variations of Turing Machines

Further discussion of Turing machines

Complexity Theory Part I

Automata Theory CS S-12 Turing Machine Modifications

Non-emptiness Testing for TMs

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

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

1 Deterministic Turing Machines

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

The purpose here is to classify computational problems according to their complexity. For that purpose we need first to agree on a computational

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

CS151 Complexity Theory. Lecture 1 April 3, 2017

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

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

UNIT-VIII COMPUTABILITY THEORY

Lecture Notes: The Halting Problem; Reductions

Lecture 1: Course Overview and Turing machine complexity

Computability Theory

Lecture 24: Randomized Complexity, Course Summary

Turing Machine Variants

Transcription:

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

Turing s thesis (1930): Any computation carried out by mechanical means can be performed by a Turing Machine Costas Busch - LSU 2

Algorithm: An algorithm for a problem is a Turing Machine which solves the problem The algorithm describes the steps of the mechanical means This is easily translated to computation steps of a Turing machine Costas Busch - LSU 3

When we say: There exists an algorithm We mean: There exists a Turing Machine that executes the algorithm Costas Busch - LSU 4

Variations of the Turing Machine Costas Busch - LSU 5

The Standard Model Infinite Tape a a b a b b c a c a Read-Write Head (Left or Right) Control Unit Deterministic Costas Busch - LSU 6

Variations of the Standard Model Turing machines with: Stay-Option Semi-Infinite Tape Multitape Multidimensional Nondeterministic Different Turing Machine Classes Costas Busch - LSU 7

Same Power of two machine classes: both classes accept the same set of languages We will prove: each new class has the same power with Standard Turing Machine (accept Turing-Recognizable Languages) Costas Busch - LSU 8

Same Power of two classes means: for any machine M 1 of first class there is a machine M 2 of second class such that: L ( M1) = L( M2) and vice-versa Costas Busch - LSU 9

Simulation: A technique to prove same power. Simulate the machine of one class with a machine of the other class First Class Original Machine Second Class Simulation Machine M 2 M1 M1 simulates M1 Costas Busch - LSU 10

Configurations in the Original Machine have corresponding configurations in the Simulation Machine M 2 M 1 M 1 Original Machine: d 0 d 1 " d n Simulation Machine: dʹ 0 d 1 ʹ dn Costas Busch - LSU 11 M 2 " ʹ

Accepting Configuration Original Machine: d f Simulation Machine: dʹf the Simulation Machine and the Original Machine accept the same strings L ( M1) = L( M2) Costas Busch - LSU 12

Turing Machines with Stay-Option The head can stay in the same position a a b a b b c a c a Left, Right, Stay L,R,S: possible head moves Costas Busch - LSU 13

Example: Time 1 a a b a b b c a c a q 1 Time 2 b a b a b b c a c a q 2 a b, S q1 q2 Costas Busch - LSU 14

Theorem: Stay-Option machines have the same power with Standard Turing machines Proof: 1. Stay-Option Machines simulate Standard Turing machines 2. Standard Turing machines simulate Stay-Option machines Costas Busch - LSU 15

1. Stay-Option Machines simulate Standard Turing machines Trivial: any standard Turing machine is also a Stay-Option machine Costas Busch - LSU 16

2. Standard Turing machines simulate Stay-Option machines We need to simulate the stay head option with two head moves, one left and one right Costas Busch - LSU 17

Stay-Option Machine a b, S q1 q2 Simulation in Standard Machine q 1 a b, L x x, R q 2 For every possible tape symbol x Costas Busch - LSU 18

For other transitions nothing changes Stay-Option Machine a b, L q1 q2 Simulation in Standard Machine a b, L q1 q2 Similar for Right moves Costas Busch - LSU 19

example of simulation Stay-Option Machine: q a b, S 1 q2 a a b a 1 2 q 1 b a b a q 2 1 Simulation in Standard Machine: a a b a q 1 2 b a b a q 2 3 b a b a q 3 END OF PROOF Costas Busch - LSU 20

A useful trick: Multiple Track Tape helps for more complicated simulations One Tape a b b a a c b d track 1 track 2 One head One symbol ( a, b) It is a standard Turing machine, but each tape alphabet symbol describes a pair of actual useful symbols Costas Busch - LSU 21

a b b a a c b d track 1 track 2 q 1 a c a b track 1 b d c d track 2 q 2 ( b, a) ( c, d), L q1 q2 Costas Busch - LSU 22

Semi-Infinite Tape The head extends infinitely only to the right a b a c... Initial position is the leftmost cell When the head moves left from the border, it returns back to leftmost position Costas Busch - LSU 23

Theorem: Semi-Infinite machines have the same power with Standard Turing machines Proof: 1. Standard Turing machines simulate Semi-Infinite machines 2. Semi-Infinite Machines simulate Standard Turing machines Costas Busch - LSU 24

1. Standard Turing machines simulate Semi-Infinite machines:... # a b a c... Standard Turing Machine Semi-Infinite machine modifications a. insert special symbol # at left of input string b. Add a self-loop to every state (except states with no outgoing transitions) # #,R Costas Busch - LSU 25

2. Semi-Infinite tape machines simulate Standard Turing machines:... Standard machine... Semi-Infinite tape machine... Squeeze infinity of both directions to one direction Costas Busch - LSU 26

... Standard machine a b c d e... reference point Semi-Infinite tape machine with two tracks Right part Left part # # d e c b a... Costas Busch - LSU 27

Standard machine q 1 q 2 Semi-Infinite tape machine Left part Right part L q 1 L q 2 R q 1 R q 2 Costas Busch - LSU 28

Standard machine a g, R q1 q2 Semi-Infinite tape machine Right part R q 1 ( a, x) ( g, x), R R q 2 Left part ( x, a) ( x, g), L L q 1 For all tape symbols x L q 2 Costas Busch - LSU 29

Time 1... Standard machine a b c d e... q 1 Right part Left part Semi-Infinite tape machine # d e # c b a L q 1... Costas Busch - LSU 30

Time 2... Standard machine g b c d e... q 2 Right part Left part Semi-Infinite tape machine # d e # c b g L q 2... Costas Busch - LSU 31

At the border: Semi-Infinite tape machine Right part R q 1 (#,#) (#,#),R L q 1 Left part L q 1 (#,#) (#,#),R R q 1 Costas Busch - LSU 32

Right part Left part Semi-Infinite tape machine # # L q 1 c Time 1 d e b g... Right part Left part # # c Time 2 d e b g... R q 1 END OF PROOF Costas Busch - LSU 33

Multi-tape Turing Machines Control unit (state machine) Tape 1 Tape 2 a b c e f g Input string Input string appears on Tape 1 Costas Busch - LSU 34

Tape 1 Time 1 Tape 2 a b c e f g q1 q1 Tape 1 Time 2 Tape 2 a g c e d g q2 q2 ( b, f ) ( g, d), L, R q1 q2 Costas Busch - LSU 35

Theorem: Multi-tape machines have the same power with Standard Turing machines Proof: 1. Multi-tape machines simulate Standard Turing machines 2. Standard Turing machines simulate Multi-tape machines Costas Busch - LSU 36

1. Multi-tape machines simulate Standard Turing Machines: Trivial: Use one tape Costas Busch - LSU 37

2. Standard Turing machines simulate Multi-tape machines: Standard machine: Uses a multi-track tape to simulate the multiple tapes A tape of the Multi-tape machine corresponds to a pair of tracks Costas Busch - LSU 38

Multi-tape Machine Tape 1 Tape 2 a b c e f g h Standard machine with four track tape a b c 0 1 0 e f g 0 0 1 h 0 Tape 1 head position Tape 2 head position Costas Busch - LSU 39

Reference point # # # # a b c 0 1 0 e f g 0 0 1 h 0 Tape 1 head position Tape 2 head position Repeat for each Multi-tape state transition: 1. Return to reference point 2. Find current symbol in Track 1 and update 3. Return to reference point 4. Find current symbol in Tape 2 and update END OF PROOF Costas Busch - LSU 40

Same power doesn t imply same speed: n n L = { a b } Standard Turing machine: Go back and forth O( n 2 ) times to match the a s with the b s 2-tape machine: O(n) time 1. Copy n b to tape 2 a n 2. Compare on tape 1 n and b tape 2 O( n 2 ) time ( O(n) steps) ( O(n) steps) Costas Busch - LSU 41

Multidimensional Turing Machines 2-dimensional tape y c a b x MOVES: L,R,U,D U: up D: down HEAD Position: +2, -1 Costas Busch - LSU 42

Theorem: Multidimensional machines have the same power with Standard Turing machines Proof: 1. Multidimensional machines simulate Standard Turing machines 2. Standard Turing machines simulate Multi-Dimensional machines Costas Busch - LSU 43

1. Multidimensional machines simulate Standard Turing machines Trivial: Use one dimension Costas Busch - LSU 44

2. Standard Turing machines simulate Multidimensional machines Standard machine: Use a two track tape Store symbols in track 1 Store coordinates in track 2 Costas Busch - LSU 45

2-dimensional machine y c a b x a b 1 # 1 # 2 # 1 q 1 Standard Machine c # 1 q 1 symbol coordinates Costas Busch - LSU 46

Standard machine: Repeat for each transition followed in the 2-dimensional machine: 1. Update current symbol 2. Compute coordinates of next position 3. Go to new position END OF PROOF Costas Busch - LSU 47

Nondeterministic Turing Machines a b, L q 2 Choice 1 q 1 a c, R q 3 Choice 2 Allows Non Deterministic Choices Costas Busch - LSU 48

Time 0 a b c Time 1 q 1 Choice 1 a b, L q 2 b b c q 2 q 1 Choice 2 a c, R q 3 c b c q 3 Costas Busch - LSU 49

Input string w there is a computation: q0w x q f y is accepted if Initial configuration Final Configuration Any accept state There is a computation: Costas Busch - LSU 50

Theorem: Nondeterministic machines have the same power with Standard Turing machines Proof: 1. Nondeterministic machines simulate Standard Turing machines 2. Standard Turing machines simulate Nondeterministic machines Costas Busch - LSU 51

1. Nondeterministic Machines simulate Standard (deterministic) Turing Machines Trivial: every deterministic machine is also nondeterministic Costas Busch - LSU 52

2. Standard (deterministic) Turing machines simulate Nondeterministic machines: Deterministic machine: Uses a 2-dimensional tape (equivalent to standard Turing machine with one tape) Stores all possible computations of the non-deterministic machine on the 2-dimensional tape Costas Busch - LSU 53

All possible computation paths Initial state Step 1 Step 2 reject accept infinite path Step i Step i+1 Costas Busch - LSU 54

The Deterministic Turing machine simulates all possible computation paths: simultaneously step-by-step with breadth-first search depth-first may result getting stuck at exploring an infinite path before discovering the accepting path Costas Busch - LSU 55

NonDeterministic machine a b, q 1 a c, L R q 2 a b c q 1 q 3 Deterministic machine # # # # # # # a b c # # q 1 # # # # # # Time 0 current configuration Costas Busch - LSU 56

a b, q 1 a c, L R NonDeterministic machine Time 1 q 2 q 2 q 3 q 3 Deterministic machine # # # # # # # b b c q # # 2 # # c b c # # q 3 # b b c c b c Computation 1 Costas Busch - LSU 57 Choice 1 Choice 2 Computation 2

Deterministic Turing machine Repeat For each configuration in current step of non-deterministic machine, if there are two or more choices: 1. Replicate configuration 2. Change the state in the replicas Until either the input string is accepted or rejected in all configurations Costas Busch - LSU 58

If the non-deterministic machine accepts the input string: The deterministic machine accepts and halts too The simulation takes in the worst case exponential time compared to the shortest length of an accepting path Costas Busch - LSU 59

If the non-deterministic machine does not accept the input string: 1. The simulation halts if all paths reach a halting state OR 2. The simulation never terminates if there is a never-ending path (infinite loop) In either case the deterministic machine rejects too (1. by halting or 2. by simulating the infinite loop) END OF PROOF Costas Busch - LSU 60