number of reversals in instruction (2) is O(h). Since machine N works in time T (jxj)

Size: px
Start display at page:

Download "number of reversals in instruction (2) is O(h). Since machine N works in time T (jxj)"

Transcription

1 It is easy to see that N 0 recognizes L. Moreover from Lemma 4 it follows that the number of reversals in instruction (2) is O(h). Since machine N works in time T (jxj) instruction (2) is performed for h = 2; 4; : : : ; 2 a?1 ; 2 a, where (2 a?1 ) 2 < T (jxj). The reversal complexity of the algorithm is O( a i=12 i ) = O(2 a+1 ) = O( q T (jxj)): 2 3 Acknowledgment The author would like to thank Rudiger Reischuk and Andreas Jakoby for helpful discussions and comments on a draft of this paper. References [1] J. Chen, The dierence between one tape and two tapes: with respect to reversal complexity, Theoret. Comput. Sci. 73 (1990) [2] J. Chen and C.K. Yap, Reversal complexity, SIAM J. Comput. 20 (1991) [3] P.W. Dymond and S.A. Cook, Hardware complexity and parallel computetion, in: Proc. 21st Ann. IEEE Symp. on Foundations of Computer Science (1980) [4] P. Fischer, The reduction of tape reversal for o-line one-tape Turing machines, J. Comput. System Sci. 2 (1968) [5] J. Hartmanis, Tape-reversal bounded Turing machine computations, J. Comput. System Sci. 2 (1968) [6] J.W. Hong, On similarity and duality of computation, in: Proc. 21st Ann. IEEE Symp. on Foundations of Computer Science (1980) [7] J.E. Hopcroft, W. Paul and L. Valiant, On time versus space and related problems, J. ACM 24 (1975) [8] N. Pippenger, On simultaneous resource bounds, in: Proc. 20th Ann. IEEE Symp. on Foundations of Computer Science (1979)

2 of R j construct a string (p j m j?1p j m j p j m j +1$) ch : Next, using once again the machine from Lemma 2 construct the string (C$) ch, where C = p 1 m 1?1p 1 m 1 p 1 m 1 +1@ : : k m k?1p k m k p k m k +1 Note, that C is a start-segment conguration of N. Now, in string S (from Step 1) nd a substring (C ` D) ch and generate D ~ = (D$) ch. To nd (C ` D) ch in S within a constant number of reversals M writes down string (C$) ch on the second tape, and places the head on the rst tape at the beginning of the string S and the head on the second tape at the beginning of (C$) ch. Next moving simultaneously both heads to the right M searches the list S for the string (C ` D). Let ~D = (d 1?1d 1 0d 1 +1@ : : k?1d k 0d k +1$) ch : Using the machine from Lemma 3 tranform ~ D into (d 1?1) ch #(d 1 0) ch #(d 1 +1) ch : : : (d k?1) ch #(d k 0) ch #(d k +1) ch : end Then, for j = 1; : : : ; k and i =?1; 0; +1, replace each substring (p j m j +i$) ch R j by (d j i $) ch of After M has completed this algorithm, it examines the current conguration of N to decide if N accepts or rejects x in at most h 2 steps or if N makes more than h 2 steps on x. It is obvious that M works within O(h) reversals. 2 To prove Theorem 1 we use the above lemma and the well-known technique of estimating the value of T (jxj), for an input x. Proof of Theorem 1. Let L be accepted by a k-tape DTM N of time complexity T (n). We construct a 2-tape machine N 0 running within O( q T (n)) reversals that simulates N. Let x be an input for N. N 0 performs the following instructions. 1. h := 2; 2. check if N accepts or rejects x within t h 2 steps; to this end N 0 works like the machine M from Lemma 4; 3. if N makes more than h 2 steps on x then let h := 2h and goto 2; 4. if N accepts x then Accept else Reject. 5

3 1.3 Within O(h) reversals construct a string S = (v 1 ` z 1 ) ch #(v 2 ` z 2 ) ch # : : : #(v eh ` z eh ) ch ; where c is the constant as in 1.1, and write down S on the rst tape. Step 2 f Initial description g M will code the full contents of the tapes of N on input x at a step t by a sequence of strings R 1 ; R 2 ; : : : ; R k. Each R j has the form (b j?h$) ch # : : : #(b j?1$) ch #(b j 0$) ch #(b j 1$) ch # : : : #(b j h$) ch where b j i is the contents of the i-th block of tape T j at time t. Moreover, if the head on T j visits the m j -th block at time t then b j m j = u j 1hq; a j iu j 2, where u j 1a j u j 2 is the contents of the block and a j is the symbol read by this head in state q. Let [ denote the blank symbol and let the input be x = x 1 : : : x n. We assume that the input word is initially placed on the rst tape of N. To generate an initial description of N on x do 2.1 For j = 1; : : : ; k, within O(h) reversals, generate strings P j = p j?h# : : : #p j?1#p j 0#p j 1# : : : #p j h; where p 1 i = 8 >< >: x ih+1 x ih+2 : : : x ih+h if 0 i bn=hc? 1, x ih+1 : : : x n [ h?(n?ih) if i = bn=hc, [ h otherwise, and, for j = 2; : : : ; k, p j i = [ h. Next replace the rst symbol a j of each string p j 0 by the symbol hq 0 ; a j i, where q 0 is the inititial state of N. 2.2 Within O(h) reversals, for j = 1; : : : ; k, from string P j generate a string Step 3 f The simulation g Repeat h times begin Let R 1 ; R 2 ; : : : ; R k with R j = (p j?h$) ch # : : : #(p j 0$) ch # : : : #(p j h$) ch R j = (p j?h$) ch # : : : #(p j 0$) ch # : : : #(p j h$) ch describe the state and the contents of the tapes of N on x at time t. M will replace R 1 ; R 2 ; : : : ; R k by a new sequence that represents N at time t + h. Let m j be the index of a block on T j which is visited by the head. For each j = 1; : : : ; k using the machine from Lemma 2 from substring (p j m j?1$) ch #(p j m j $) ch #(p j m j +1$) ch 4

4 Proof. Let N be a k-tape DTM for some k 2 N. We will construct a 2-tape DTM M which given an integer h > 0 and a string x simulates h 2 steps of N on x. The integer h may be given in binary or unary form. Machine M performs the simulation in h stages. In each stage it simulates h consecutive steps of N on x within a constant number of reversals. To this end M groups the cells of each tape T j of N into blocks : : : B j?2b j?1b j 0B j 1B j 2 : : : labelled by the integers. Each block B j i consists of h consecutive cells of tape T j in the range from ih + 1 to ih + h. Since we want to simulate at most h 2 steps it is sucient to consider only blocks labelled by?h; : : : ;?1; 0; 1; : : : ; h. Let a segment denote three consecutive blocks of a tape and a segment conguration of N a word of the form w 1 1hq; a 1 iw 1 2@w 2 1hq; a 2 iw 2 2@ : : k 1hq; a k iw k 2; (2) where q is a state of N and for j = 1; : : : ; k, w1a j j w j 2 are words of length 3h over the alphabet of N. A segment conguration (2) represents the fact that the machine is in state q and the j-th head visits a segment containing w1a j j w j 2 and reads the symbol a j. Let a start-segment conguration be a segment conguration C such that each head in C visits the middle block of a segment. Now M works as follows: Step 1 f Generate an auxiliary string S g 1.1 Within O(h) reversals generate a list L = v 1 #v 2 # : : : #v eh of all start-segment congurations of machine N. The number of all startsegment congurations e h is bounded by c h, where c is a constant that depends only on N. M can construct L as follows. At the beginning it generates, as in [1] or [2], a list of all words of length k(3h + 1)? 1. Then M eliminates from this list all words which are incorrect start-segment congurations. 1.2 For each start-segment conguration v i nd a segment conguration z i such that N beginning its work in v i reaches z i in h steps. If N starting in v i cannot perform h steps then M nds the last conguration reached by N when starting in v i. M achieves this goal as follows. At the beginning it replaces the list L by a list L 0 = v 1`w 1 # v 2 `w 2 # : : : # v eh `w eh where w i = v i for each i = 1; : : : ; e h. Now M traverses the list L 0 h times. Every time, when scanning L 0, M replaces each w i by its immediate successor. Let the obtained list be of the form v 1 `z 1 # v 2 `z 2 # : : : # v eh `z eh 3

5 where DREV ERSAL 2 (S) denote the class of languages recognized by 2-tape DTMs making at most O(S(n)) reversals. By a 2-tape TM we mean a machine with 2 two-way read-write tapes. We assume that the input word is placed initially on the rst tape. It is not dicult to prove that (1) holds also for functions S(n) log n which are not reversal constructible (in [2], Chen and Yap show that, for such functions, DSP ACE(S) is included in DREV ERSAL 2 (S 2 )). Using (1) and the well known result of Hopcroft, Paul and Valiant ([7]) relating time and space one can show that any multitape DTM of time complexity T (n) can be simulated by a deterministic TM making at most R(n) = T (n)= log T (n) reversals. In this paper it is shown that the function R(n) can be reduced to q T (n). Theorem 1 Let T (n) n be an arbitrary function. Then any language L accepted by a multitape DTM in time T (n) can be accepted by a 2-tape DTM within O( q T (n)) reversals. The problem if the inclusion (1) is proper remains open. Our result relating time to reversal seems to conrm a conjecture that R(n) reversal bounded machines are more powerful than the machines working in space R(n). 2 A reversal ecient simulation of time bounded DTM To prove that for all functions T (n), DT IME(T ) DREV ERSAL 2 ( p T) methods developed by Chen and Yap in [2] will be used. Let us begin with two technical lemmata. In these lemmata it will be assumed that s is a xed constant, is a xed alphabet and that $; # 62. Lemma 2 There is a 2-tape DTM M such that for any positive integer r and n, given a string (x 1 $) r #(x 2 $) r # : : : #(x s $) r ; where x 1 ; x 2 ; : : : ; x s 2 n, M constructs the string (x 1 x 2 : : : x s $) r within O(1) reversals. Lemma 3 There is a 2-tape DTM M such that for any positive integer r and n, given a string (x 1 x 2 : : : x s $) r ; where x 1 ; x 2 ; : : : ; x s 2 n, M constructs the string (x 1 $) r #(x 2 $) r # : : : #(x s $) r within O(1) reversals. The above lemmata have straightforward proofs and we omit them. The theorem above will follow from the following lemma. Lemma 4 For any multitape DTM N there is a 2-tape DTM M that given an integer h > 0 and a string x checks within O(h) reversals if N accepts x in at most h 2 steps. 2

6 On the Relationship Between Deterministic Time and Deterministic Reversal Maciej Liskiewicz Institut fur Theoretische Informatik, TH Darmstadt, Darmstadt, Germany and Instytut Informatyki, Uniwersytet Wroc lawski, Wroc law, Poland Correspondence to: Maciej Liskiewicz, Institut fur Theoretische Informatik, TH Darmstadt, Alexanderstr. 10, 6100 Darmstadt, Germany Abstract We investigate the relationship between the time and the reversal complexity measure for deterministic Turing machines. It is shown that for any function T DT IM E(T ) DREV ERSAL( p T ): Keywords: Computational complexity, Turing machine, reversal, time complexity 1 Introduction Besides time and space, the number of reversals made by the tape heads during a computation is an important and widely used complexity measure for Turing machines (TM). The reversal complexity was introduced by Hartmanis ([5]) and Fischer ([4]) and intensively studied by many authors. For example, it has been shown that the reversal complexity on multitape deterministic TMs is intimately connected with parallel time ([3],[6],[8]). In this paper we investigate the relationship between reversals and deterministic time. It is obvious that the heads of a multitape deterministic TM (DTM) working in time T (n) make at most O(T (n)) reversals. Moreover, it is easy to see that a multitape DTM of time complexity T (n) can be simulated by a 1-tape DTM making at most T (n) reversals. An interesting open problem is for each T (n) to nd a minimal function R(n) such that every language accepted in time T (n) can be accepted by a DTM of reversal complexity R(n). Recently Chen and Yap ([2]) have shown that for any reversal constructible function S(n) log n DSP ACE(S) DREV ERSAL 2 (S); (1) This research was supported by the Alexander-von-Humboldt-Stiftung 1

Chapter 3: The Church-Turing Thesis

Chapter 3: The Church-Turing Thesis Chapter 3: The Church-Turing Thesis 1 Turing Machine (TM) Control... Bi-direction Read/Write Turing machine is a much more powerful model, proposed by Alan Turing in 1936. 2 Church/Turing Thesis Anything

More information

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

Equivalence of TMs and Multitape TMs. Theorem 3.13 and Corollary 3.15 By: Joseph Lauman 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

More information

CSCE 551 Final Exam, Spring 2004 Answer Key

CSCE 551 Final Exam, Spring 2004 Answer Key CSCE 551 Final Exam, Spring 2004 Answer Key 1. (10 points) Using any method you like (including intuition), give the unique minimal DFA equivalent to the following NFA: 0 1 2 0 5 1 3 4 If your answer is

More information

Part I: Definitions and Properties

Part I: Definitions and Properties Turing Machines Part I: Definitions and Properties Finite State Automata Deterministic Automata (DFSA) M = {Q, Σ, δ, q 0, F} -- Σ = Symbols -- Q = States -- q 0 = Initial State -- F = Accepting States

More information

Designing 1-tape Deterministic Turing Machines

Designing 1-tape Deterministic Turing Machines MCS-265: The Theory of Computation Handout #T1 San Skulrattanakulchai Gustavus Adolphus College April 5, 2011 Designing 1-tape Deterministic Turing Machines A TM corresponds to a computer program. We will

More information

Computability and Complexity

Computability and Complexity Computability and Complexity Lecture 5 Reductions Undecidable problems from language theory Linear bounded automata given by Jiri Srba Lecture 5 Computability and Complexity 1/14 Reduction Informal Definition

More information

CS21 Decidability and Tractability

CS21 Decidability and Tractability CS21 Decidability and Tractability Lecture 8 January 24, 2018 Outline Turing Machines and variants multitape TMs nondeterministic TMs Church-Turing Thesis So far several models of computation finite automata

More information

Computability Theory. CS215, Lecture 6,

Computability Theory. CS215, Lecture 6, Computability Theory CS215, Lecture 6, 2000 1 The Birth of Turing Machines At the end of the 19th century, Gottlob Frege conjectured that mathematics could be built from fundamental logic In 1900 David

More information

Lecture 1: Introduction

Lecture 1: Introduction Computational Complexity Theory, Fall 2008 August 27 Lecture 1: Introduction Lecturer: Kristoffer Arnsfelt Hansen Scribe: Kasper Borup Computational Model: 1-Tape Sequential Turing Maching Q two-way read/write

More information

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

An example of a decidable language that is not a CFL Implementation-level description of a TM State diagram of TM Turing Machines Review An example of a decidable language that is not a CFL Implementation-level description of a TM State diagram of TM Varieties of TMs Multi-Tape TMs Nondeterministic TMs String Enumerators

More information

1 Deterministic Turing Machines

1 Deterministic Turing Machines Time and Space Classes Exposition by William Gasarch 1 Deterministic Turing Machines Turing machines are a model of computation. It is believed that anything that can be computed can be computed by a Turing

More information

The Size and Depth of Layered Boolean Circuits

The Size and Depth of Layered Boolean Circuits The Size and Depth of Layered Boolean Circuits Anna Gál a,1, Jing-Tang Jang a,2 a Dept. of Computer Science, University of Texas at Austin, Austin, TX 78712-1188, USA Abstract We consider the relationship

More information

Chapter 8. Turing Machine (TMs)

Chapter 8. Turing Machine (TMs) Chapter 8 Turing Machine (TMs) Turing Machines (TMs) Accepts the languages that can be generated by unrestricted (phrase-structured) grammars No computational machine (i.e., computational language recognition

More information

Chomsky Normal Form and TURING MACHINES. TUESDAY Feb 4

Chomsky Normal Form and TURING MACHINES. TUESDAY Feb 4 Chomsky Normal Form and TURING MACHINES TUESDAY Feb 4 CHOMSKY NORMAL FORM A context-free grammar is in Chomsky normal form if every rule is of the form: A BC A a S ε B and C aren t start variables a is

More information

A Lower Bound for Boolean Satisfiability on Turing Machines

A Lower Bound for Boolean Satisfiability on Turing Machines A Lower Bound for Boolean Satisfiability on Turing Machines arxiv:1406.5970v1 [cs.cc] 23 Jun 2014 Samuel C. Hsieh Computer Science Department, Ball State University March 16, 2018 Abstract We establish

More information

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

An example of a decidable language that is not a CFL Implementation-level description of a TM State diagram of TM Turing Machines Review An example of a decidable language that is not a CFL Implementation-level description of a TM State diagram of TM Varieties of TMs Multi-Tape TMs Nondeterministic TMs String Enumerators

More information

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

Recap DFA,NFA, DTM. Slides by Prof. Debasis Mitra, FIT. Recap DFA,NFA, DTM Slides by Prof. Debasis Mitra, FIT. 1 Formal Language Finite set of alphabets Σ: e.g., {0, 1}, {a, b, c}, { {, } } Language L is a subset of strings on Σ, e.g., {00, 110, 01} a finite

More information

FORMAL LANGUAGES, AUTOMATA AND COMPUTABILITY

FORMAL LANGUAGES, AUTOMATA AND COMPUTABILITY 15-453 FORMAL LANGUAGES, AUTOMATA AND COMPUTABILITY Chomsky Normal Form and TURING MACHINES TUESDAY Feb 4 CHOMSKY NORMAL FORM A context-free grammar is in Chomsky normal form if every rule is of the form:

More information

9 Nondeterministic Turing Machines

9 Nondeterministic Turing Machines Caveat lector: This is the zeroth (draft) edition of this lecture note. In particular, some topics still need to be written. Please send bug reports and suggestions to jeffe@illinois.edu. If first you

More information

Lecture 1: Course Overview and Turing machine complexity

Lecture 1: Course Overview and Turing machine complexity CSE 531: Computational Complexity I Winter 2016 Lecture 1: Course Overview and Turing machine complexity January 6, 2016 Lecturer: Paul Beame Scribe: Paul Beame 1 Course Outline 1. Basic properties of

More information

Space Complexity. The space complexity of a program is how much memory it uses.

Space Complexity. The space complexity of a program is how much memory it uses. Space Complexity The space complexity of a program is how much memory it uses. Measuring Space When we compute the space used by a TM, we do not count the input (think of input as readonly). We say that

More information

CpSc 421 Homework 9 Solution

CpSc 421 Homework 9 Solution CpSc 421 Homework 9 Solution Attempt any three of the six problems below. The homework is graded on a scale of 100 points, even though you can attempt fewer or more points than that. Your recorded grade

More information

The Power of One-State Turing Machines

The Power of One-State Turing Machines The Power of One-State Turing Machines Marzio De Biasi Jan 15, 2018 Abstract At first glance, one state Turing machines are very weak: the Halting problem for them is decidable, and, without memory, they

More information

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

Time Complexity (1) CSCI Spring Original Slides were written by Dr. Frederick W Maier. CSCI 2670 Time Complexity (1) Time Complexity (1) CSCI 2670 Original Slides were written by Dr. Frederick W Maier Spring 2014 Time Complexity So far we ve dealt with determining whether or not a problem is decidable. But even if it

More information

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

Turing Machines. The Language Hierarchy. Context-Free Languages. Regular Languages. Courtesy Costas Busch - RPI 1 Turing Machines a n b n c The anguage Hierarchy n? ww? Context-Free anguages a n b n egular anguages a * a *b* ww Courtesy Costas Busch - PI a n b n c n Turing Machines anguages accepted by Turing Machines

More information

1 Deterministic Turing Machines

1 Deterministic Turing Machines Time and Space Classes Exposition by William Gasarch 1 Deterministic Turing Machines Turing machines are a model of computation. It is believed that anything that can be computed can be computed by a Turing

More information

Lecture 12: Mapping Reductions

Lecture 12: Mapping Reductions Lecture 12: Mapping Reductions October 18, 2016 CS 1010 Theory of Computation Topics Covered 1. The Language EQ T M 2. Mapping Reducibility 3. The Post Correspondence Problem 1 The Language EQ T M The

More information

Lecture 6: Oracle TMs, Diagonalization Limits, Space Complexity

Lecture 6: Oracle TMs, Diagonalization Limits, Space Complexity CSE 531: Computational Complexity I Winter 2016 Lecture 6: Oracle TMs, Diagonalization Limits, Space Complexity January 22, 2016 Lecturer: Paul Beame Scribe: Paul Beame Diagonalization enabled us to separate

More information

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

Turing Machines (TM) Deterministic Turing Machine (DTM) Nondeterministic Turing Machine (NDTM) Turing Machines (TM) Deterministic Turing Machine (DTM) Nondeterministic Turing Machine (NDTM) 1 Deterministic Turing Machine (DTM).. B B 0 1 1 0 0 B B.. Finite Control Two-way, infinite tape, broken into

More information

CSCC63 Worksheet Turing Machines

CSCC63 Worksheet Turing Machines 1 An Example CSCC63 Worksheet Turing Machines Goal. Design a turing machine, M that accepts only strings of the form {w#w w {0, 1} }. Idea. Describe in words how the machine would work. Read first symbol

More information

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

CS5371 Theory of Computation. Lecture 10: Computability Theory I (Turing Machine) CS537 Theory of Computation Lecture : Computability Theory I (Turing Machine) Objectives Introduce the Turing Machine (TM) Proposed by Alan Turing in 936 finite-state control + infinitely long tape A stronger

More information

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

Turing Machine properties. Turing Machines. Alternate TM definitions. Alternate TM definitions. Alternate TM definitions. Alternate TM definitions 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

More information

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

More Turing Machines. CS154 Chris Pollett Mar 15, 2006. More Turing Machines CS154 Chris Pollett Mar 15, 2006. Outline Multitape Turing Machines Nondeterministic Turing Machines Enumerators Introduction There have been many different proposals for what it means

More information

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

Turing Machines. Our most powerful model of a computer is the Turing Machine. This is an FA with an infinite tape for storage. Turing Machines Our most powerful model of a computer is the Turing Machine. This is an FA with an infinite tape for storage. A Turing Machine A Turing Machine (TM) has three components: An infinite tape

More information

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

CS5371 Theory of Computation. Lecture 10: Computability Theory I (Turing Machine) CS537 Theory of Computation Lecture : Computability Theory I (Turing Machine) Objectives Introduce the Turing Machine (TM)? Proposed by Alan Turing in 936 finite-state control + infinitely long tape A

More information

A Lower Bound of 2 n Conditional Jumps for Boolean Satisfiability on A Random Access Machine

A Lower Bound of 2 n Conditional Jumps for Boolean Satisfiability on A Random Access Machine A Lower Bound of 2 n Conditional Jumps for Boolean Satisfiability on A Random Access Machine Samuel C. Hsieh Computer Science Department, Ball State University July 3, 2014 Abstract We establish a lower

More information

CSE 105 THEORY OF COMPUTATION

CSE 105 THEORY OF COMPUTATION CSE 105 THEORY OF COMPUTATION Spring 2018 http://cseweb.ucsd.edu/classes/sp18/cse105-ab/ Today's learning goals Sipser Ch 5.1, 5.3 Define and explain core examples of computational problems, including

More information

6.5.3 An NP-complete domino game

6.5.3 An NP-complete domino game 26 Chapter 6. Complexity Theory 3SAT NP. We know from Theorem 6.5.7 that this is true. A P 3SAT, for every language A NP. Hence, we have to show this for languages A such as kcolor, HC, SOS, NPrim, KS,

More information

Chapter 5. Finite Automata

Chapter 5. Finite Automata Chapter 5 Finite Automata 5.1 Finite State Automata Capable of recognizing numerous symbol patterns, the class of regular languages Suitable for pattern-recognition type applications, such as the lexical

More information

Chapter 1 - Time and Space Complexity. deterministic and non-deterministic Turing machine time and space complexity classes P, NP, PSPACE, NPSPACE

Chapter 1 - Time and Space Complexity. deterministic and non-deterministic Turing machine time and space complexity classes P, NP, PSPACE, NPSPACE Chapter 1 - Time and Space Complexity deterministic and non-deterministic Turing machine time and space complexity classes P, NP, PSPACE, NPSPACE 1 / 41 Deterministic Turing machines Definition 1.1 A (deterministic

More information

Theory of Computer Science

Theory of Computer Science Theory of Computer Science D1. Turing-Computability Malte Helmert University of Basel April 18, 2016 Overview: Course contents of this course: logic How can knowledge be represented? How can reasoning

More information

Computation Histories

Computation Histories 208 Computation Histories The computation history for a Turing machine on an input is simply the sequence of configurations that the machine goes through as it processes the input. An accepting computation

More information

CpSc 421 Final Exam December 15, 2006

CpSc 421 Final Exam December 15, 2006 CpSc 421 Final Exam December 15, 2006 Do problem zero and six of problems 1 through 9. If you write down solutions for more that six problems, clearly indicate those that you want graded. Note that problems

More information

An Optimal Lower Bound for Nonregular Languages

An Optimal Lower Bound for Nonregular Languages An Optimal Lower Bound for Nonregular Languages Alberto Bertoni Carlo Mereghetti Giovanni Pighizzini Dipartimento di Scienze dell Informazione Università degli Studi di Milano via Comelico, 39 2035 Milano

More information

Solution to CS375 Homework Assignment 11 (40 points) Due date: 4/26/2017

Solution to CS375 Homework Assignment 11 (40 points) Due date: 4/26/2017 Solution to CS375 Homework Assignment 11 (40 points) Due date: 4/26/2017 1. Find a Greibach normal form for the following given grammar. (10 points) S bab A BAa a B bb Ʌ Solution: (1) Since S does not

More information

Turing Machines, diagonalization, the halting problem, reducibility

Turing Machines, diagonalization, the halting problem, reducibility Notes on Computer Theory Last updated: September, 015 Turing Machines, diagonalization, the halting problem, reducibility 1 Turing Machines A Turing machine is a state machine, similar to the ones we have

More information

Chapter 7 Turing Machines

Chapter 7 Turing Machines Chapter 7 Turing Machines Copyright 2011 The McGraw-Hill Companies, Inc. Permission required for reproduction or display. 1 A General Model of Computation Both finite automata and pushdown automata are

More information

On NP-Completeness for Linear Machines

On NP-Completeness for Linear Machines JOURNAL OF COMPLEXITY 13, 259 271 (1997) ARTICLE NO. CM970444 On NP-Completeness for Linear Machines Christine Gaßner* Institut für Mathematik und Informatik, Ernst-Moritz-Arndt-Universität, F.-L.-Jahn-Strasse

More information

Nondeterminism. September 7, Nondeterminism

Nondeterminism. September 7, Nondeterminism September 7, 204 Introduction is a useful concept that has a great impact on the theory of computation Introduction is a useful concept that has a great impact on the theory of computation So far in our

More information

Computability and Complexity CISC462, Fall 2018, Space complexity 1

Computability and Complexity CISC462, Fall 2018, Space complexity 1 Computability and Complexity CISC462, Fall 2018, Space complexity 1 SPACE COMPLEXITY This material is covered in Chapter 8 of the textbook. For simplicity, we define the space used by a Turing machine

More information

Turing Machine Variants. Sipser pages

Turing Machine Variants. Sipser pages Turing Machine Variants Sipser pages 148-154 Marking symbols It is often convenient to have the Turing machine leave a symbol on the tape but to mark it in some way 1 1 0 2 B B B B B B B State = 1 1 1

More information

where Q is a finite set of states

where Q is a finite set of states Space Complexity So far most of our theoretical investigation on the performances of the various algorithms considered has focused on time. Another important dynamic complexity measure that can be associated

More information

CS 525 Proof of Theorems 3.13 and 3.15

CS 525 Proof of Theorems 3.13 and 3.15 Eric Rock CS 525 (Winter 2015) Presentation 1 (Week 4) Equivalence of Single-Tape and Multi-Tape Turing Machines 1/30/2015 1 Turing Machine (Definition 3.3) Formal Definition: (Q, Σ, Γ, δ, q 0, q accept,

More information

Theory of Computation

Theory of Computation Theory of Computation Unit 4-6: Turing Machines and Computability Decidability and Encoding Turing Machines Complexity and NP Completeness Syedur Rahman syedurrahman@gmail.com Turing Machines Q The set

More information

Time to learn about NP-completeness!

Time to learn about NP-completeness! Time to learn about NP-completeness! Harvey Mudd College March 19, 2007 Languages A language is a set of strings Examples The language of strings of all zeros with odd length The language of strings with

More information

CSE 105 THEORY OF COMPUTATION

CSE 105 THEORY OF COMPUTATION CSE 105 THEORY OF COMPUTATION Fall 2016 http://cseweb.ucsd.edu/classes/fa16/cse105-abc/ Today's learning goals Sipser Ch 3 Trace the computation of a Turing machine using its transition function and configurations.

More information

Homework Assignment 6 Answers

Homework Assignment 6 Answers Homework Assignment 6 Answers CSCI 2670 Introduction to Theory of Computing, Fall 2016 December 2, 2016 This homework assignment is about Turing machines, decidable languages, Turing recognizable languages,

More information

arxiv: v1 [cs.cc] 3 Feb 2019

arxiv: v1 [cs.cc] 3 Feb 2019 Some Remarks on Real-Time Turing Machines (Preliminary Report) arxiv:1902.00975v1 [cs.cc] 3 Feb 2019 Holger Petersen Reinsburgstr. 75 70197 Stuttgart February 5, 2019 Abstract The power of real-time Turing

More information

U.C. Berkeley CS278: Computational Complexity Professor Luca Trevisan August 30, Notes for Lecture 1

U.C. Berkeley CS278: Computational Complexity Professor Luca Trevisan August 30, Notes for Lecture 1 U.C. Berkeley CS278: Computational Complexity Handout N1 Professor Luca Trevisan August 30, 2004 Notes for Lecture 1 This course assumes CS170, or equivalent, as a prerequisite. We will assume that the

More information

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

Turing Machines A Turing Machine is a 7-tuple, (Q, Σ, Γ, δ, q0, qaccept, qreject), where Q, Σ, Γ are all finite The Church-Turing Thesis CS60001: Foundations of Computing Science Professor, Dept. of Computer Sc. & Engg., Turing Machines A Turing Machine is a 7-tuple, (Q, Σ, Γ, δ, q 0, q accept, q reject ), where

More information

Sparse Sets, Approximable Sets, and Parallel Queries to NP. Abstract

Sparse Sets, Approximable Sets, and Parallel Queries to NP. Abstract Sparse Sets, Approximable Sets, and Parallel Queries to NP V. Arvind Institute of Mathematical Sciences C. I. T. Campus Chennai 600 113, India Jacobo Toran Abteilung Theoretische Informatik, Universitat

More information

Automata Theory CS S-12 Turing Machine Modifications

Automata Theory CS S-12 Turing Machine Modifications Automata Theory CS411-2015S-12 Turing Machine Modifications David Galles Department of Computer Science University of San Francisco 12-0: Extending Turing Machines When we added a stack to NFA to get a

More information

TURING MAHINES

TURING MAHINES 15-453 TURING MAHINES TURING MACHINE FINITE STATE q 10 CONTROL AI N P U T INFINITE TAPE read write move 0 0, R, R q accept, R q reject 0 0, R 0 0, R, L read write move 0 0, R, R q accept, R 0 0, R 0 0,

More information

On Languages with Very High Information Content

On Languages with Very High Information Content Computer Science Technical Reports Computer Science 5-1992 On Languages with Very High Information Content Ronald V. Book University of California, Santa Barbara Jack H. Lutz Iowa State University, lutz@iastate.edu

More information

198:538 Lecture Given on February 23rd, 1998

198:538 Lecture Given on February 23rd, 1998 198:538 Lecture Given on February 23rd, 1998 Lecturer: Professor Eric Allender Scribe: Sunny Daniels November 25, 1998 1 A Result From theorem 5 of the lecture on 16th February 1998, together with the

More information

Lecture 17: Cook-Levin Theorem, NP-Complete Problems

Lecture 17: Cook-Levin Theorem, NP-Complete Problems 6.045 Lecture 17: Cook-Levin Theorem, NP-Complete Problems 1 Is SAT solvable in O(n) time on a multitape TM? Logic circuits of 6n gates for SAT? If yes, then not only is P=NP, but there would be a dream

More information

Undecidability of ground reducibility. for word rewriting systems with variables. Gregory KUCHEROV andmichael RUSINOWITCH

Undecidability of ground reducibility. for word rewriting systems with variables. Gregory KUCHEROV andmichael RUSINOWITCH Undecidability of ground reducibility for word rewriting systems with variables Gregory KUCHEROV andmichael RUSINOWITCH Key words: Theory of Computation Formal Languages Term Rewriting Systems Pattern

More information

Introduction to Turing Machines

Introduction to Turing Machines Introduction to Turing Machines Deepak D Souza Department of Computer Science and Automation Indian Institute of Science, Bangalore. 12 November 2015 Outline 1 Turing Machines 2 Formal definitions 3 Computability

More information

CSE 200 Lecture Notes Turing machine vs. RAM machine vs. circuits

CSE 200 Lecture Notes Turing machine vs. RAM machine vs. circuits CSE 200 Lecture Notes Turing machine vs. RAM machine vs. circuits Chris Calabro January 13, 2016 1 RAM model There are many possible, roughly equivalent RAM models. Below we will define one in the fashion

More information

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

Turing Machines. 22c:135 Theory of Computation. Tape of a Turing Machine (TM) TM versus FA, PDA Turing Machines A Turing machine is similar to a finite automaton with supply of unlimited memory. A Turing machine can do everything that any computing device can do. There exist problems that even a

More information

Chapter 6: Turing Machines

Chapter 6: Turing Machines Chapter 6: Turing Machines 6.1 The Turing Machine Definition A deterministic Turing machine (DTM) M is specified by a sextuple (Q, Σ, Γ, δ, s, f), where Q is a finite set of states; Σ is an alphabet of

More information

Boolean circuits. Lecture Definitions

Boolean circuits. Lecture Definitions Lecture 20 Boolean circuits In this lecture we will discuss the Boolean circuit model of computation and its connection to the Turing machine model. Although the Boolean circuit model is fundamentally

More information

1 Showing Recognizability

1 Showing Recognizability CSCC63 Worksheet Recognizability and Decidability 1 1 Showing Recognizability 1.1 An Example - take 1 Let Σ be an alphabet. L = { M M is a T M and L(M) }, i.e., that M accepts some string from Σ. Prove

More information

Theory of Computation

Theory of Computation Theory of Computation Dr. Sarmad Abbasi Dr. Sarmad Abbasi () Theory of Computation 1 / 38 Lecture 21: Overview Big-Oh notation. Little-o notation. Time Complexity Classes Non-deterministic TMs The Class

More information

Course 4 Finite Automata/Finite State Machines

Course 4 Finite Automata/Finite State Machines Course 4 Finite Automata/Finite State Machines The structure and the content of the lecture is based on (1) http://www.eecs.wsu.edu/~ananth/cpts317/lectures/index.htm, (2) W. Schreiner Computability and

More information

Verifying whether One-Tape Turing Machines Run in Linear Time

Verifying whether One-Tape Turing Machines Run in Linear Time Electronic Colloquium on Computational Complexity, Report No. 36 (2015) Verifying whether One-Tape Turing Machines Run in Linear Time David Gajser IMFM, Jadranska 19, 1000 Ljubljana, Slovenija david.gajser@fmf.uni-lj.si

More information

The tape of M. Figure 3: Simulation of a Turing machine with doubly infinite tape

The tape of M. Figure 3: Simulation of a Turing machine with doubly infinite tape UG3 Computability and Intractability (2009-2010): Note 4 4. Bells and whistles. In defining a formal model of computation we inevitably make a number of essentially arbitrary design decisions. These decisions

More information

The Cook-Levin Theorem

The Cook-Levin Theorem An Exposition Sandip Sinha Anamay Chaturvedi Indian Institute of Science, Bangalore 14th November 14 Introduction Deciding a Language Let L {0, 1} be a language, and let M be a Turing machine. We say M

More information

Turing Machines and the Church-Turing Thesis

Turing Machines and the Church-Turing Thesis CSE2001, Fall 2006 1 Turing Machines and the Church-Turing Thesis Today our goal is to show that Turing Machines are powerful enough to model digital computers, and to see discuss some evidence for the

More information

Lecture notes on Turing machines

Lecture notes on Turing machines Lecture notes on Turing machines Ivano Ciardelli 1 Introduction Turing machines, introduced by Alan Turing in 1936, are one of the earliest and perhaps the best known model of computation. The importance

More information

Decidability: Church-Turing Thesis

Decidability: Church-Turing Thesis Decidability: Church-Turing Thesis While there are a countably infinite number of languages that are described by TMs over some alphabet Σ, there are an uncountably infinite number that are not Are there

More information

Definition: conp = { L L NP } What does a conp computation look like?

Definition: conp = { L L NP } What does a conp computation look like? Space Complexity 28 Definition: conp = { L L NP } What does a conp computation look like? In NP algorithms, we can use a guess instruction in pseudocode: Guess string y of x k length and the machine accepts

More information

Computational Models Lecture 11, Spring 2009

Computational Models Lecture 11, Spring 2009 Slides modified by Benny Chor, based on original slides by Maurice Herlihy, Brown University. p. 1 Computational Models Lecture 11, Spring 2009 Deterministic Time Classes NonDeterministic Time Classes

More information

immediately, without knowledge of the jobs that arrive later The jobs cannot be preempted, ie, once a job is scheduled (assigned to a machine), it can

immediately, without knowledge of the jobs that arrive later The jobs cannot be preempted, ie, once a job is scheduled (assigned to a machine), it can A Lower Bound for Randomized On-Line Multiprocessor Scheduling Jir Sgall Abstract We signicantly improve the previous lower bounds on the performance of randomized algorithms for on-line scheduling jobs

More information

Theoretical Computer Science

Theoretical Computer Science Theoretical Computer Science 417 (2012) 66 73 Contents lists available at SciVerse ScienceDirect Theoretical Computer Science journal homepage: www.elsevier.com/locate/tcs Improved simulation of nondeterministic

More information

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

Harvard CS 121 and CSCI E-121 Lecture 14: Turing Machines and the Church Turing Thesis Harvard CS 121 and CSCI E-121 Lecture 14: Turing Machines and the Church Turing Thesis Harry Lewis October 22, 2013 Reading: Sipser, 3.2, 3.3. The Basic Turing Machine The Basic Turing Machine a a b a

More information

Theory of Computer Science. Theory of Computer Science. D7.1 Introduction. D7.2 Turing Machines as Words. D7.3 Special Halting Problem

Theory of Computer Science. Theory of Computer Science. D7.1 Introduction. D7.2 Turing Machines as Words. D7.3 Special Halting Problem Theory of Computer Science May 2, 2018 D7. Halting Problem and Reductions Theory of Computer Science D7. Halting Problem and Reductions Gabriele Röger University of Basel May 2, 2018 D7.1 Introduction

More information

Turing Machines Part III

Turing Machines Part III Turing Machines Part III Announcements Problem Set 6 due now. Problem Set 7 out, due Monday, March 4. Play around with Turing machines, their powers, and their limits. Some problems require Wednesday's

More information

Computability and Complexity

Computability and Complexity Computability and Complexity Decidability, Undecidability and Reducibility; Codes, Algorithms and Languages CAS 705 Ryszard Janicki Department of Computing and Software McMaster University Hamilton, Ontario,

More information

Halting and Equivalence of Program Schemes in Models of Arbitrary Theories

Halting and Equivalence of Program Schemes in Models of Arbitrary Theories Halting and Equivalence of Program Schemes in Models of Arbitrary Theories Dexter Kozen Cornell University, Ithaca, New York 14853-7501, USA, kozen@cs.cornell.edu, http://www.cs.cornell.edu/~kozen In Honor

More information

Automata Theory - Quiz II (Solutions)

Automata Theory - Quiz II (Solutions) Automata Theory - Quiz II (Solutions) K. Subramani LCSEE, West Virginia University, Morgantown, WV {ksmani@csee.wvu.edu} 1 Problems 1. Induction: Let L denote the language of balanced strings over Σ =

More information

Turing Machines. Chapter 17

Turing Machines. Chapter 17 Turing Machines Chapter 17 Languages and Machines SD D Context-Free Languages Regular Languages reg exps FSMs cfgs PDAs unrestricted grammars Turing Machines Grammars, SD Languages, and Turing Machines

More information

NP, polynomial-time mapping reductions, and NP-completeness

NP, polynomial-time mapping reductions, and NP-completeness NP, polynomial-time mapping reductions, and NP-completeness In the previous lecture we discussed deterministic time complexity, along with the time-hierarchy theorem, and introduced two complexity classes:

More information

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

6.045: Automata, Computability, and Complexity Or, Great Ideas in Theoretical Computer Science Spring, Class 8 Nancy Lynch 6.045: Automata, Computability, and Complexity Or, Great Ideas in Theoretical Computer Science Spring, 2010 Class 8 Nancy Lynch Today More undecidable problems: About Turing machines: Emptiness, etc. About

More information

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

Busch Complexity Lectures: Turing Machines. Prof. Busch - LSU 1 Busch Complexity ectures: Turing Machines Prof. Busch - SU 1 The anguage Hierarchy a n b n c n? ww? Context-Free anguages n b n a ww egular anguages a* a *b* Prof. Busch - SU 2 a n b anguages accepted

More information

CPSC 421: Tutorial #1

CPSC 421: Tutorial #1 CPSC 421: Tutorial #1 October 14, 2016 Set Theory. 1. Let A be an arbitrary set, and let B = {x A : x / x}. That is, B contains all sets in A that do not contain themselves: For all y, ( ) y B if and only

More information

Reducability. Sipser, pages

Reducability. Sipser, pages Reducability Sipser, pages 187-214 Reduction Reduction encodes (transforms) one problem as a second problem. A solution to the second, can be transformed into a solution to the first. We expect both transformations

More information

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

Turing machines Finite automaton no storage Pushdown automaton storage is a stack What if we give the automaton a more flexible storage? Turing machines Finite automaton no storage Pushdown automaton storage is a stack What if we give the automaton a more flexible storage? What is the most powerful of automata? In this lecture we will introduce

More information

CS5371 Theory of Computation. Lecture 18: Complexity III (Two Classes: P and NP)

CS5371 Theory of Computation. Lecture 18: Complexity III (Two Classes: P and NP) CS5371 Theory of Computation Lecture 18: Complexity III (Two Classes: P and NP) Objectives Define what is the class P Examples of languages in P Define what is the class NP Examples of languages in NP

More information

Further discussion of Turing machines

Further discussion of Turing machines Further discussion of Turing machines In this lecture we will discuss various aspects of decidable and Turing-recognizable languages that were not mentioned in previous lectures. In particular, we will

More information