Giorgi Japaridze Theory of Computability Savitch’s Theorem Section 8.1.

Slides:



Advertisements
Similar presentations
Part VI NP-Hardness. Lecture 23 Whats NP? Hard Problems.
Advertisements

Based on Powerpoint slides by Giorgi Japaridze, Villanova University Space Complexity and Interactive Proof Systems Sections 8.0, 8.1, 8.2, 8.3, 10.4.
Variants of Turing machines
1 Savitch and Immerman- Szelepcsènyi Theorems. 2 Space Compression  For every k-tape S(n) space bounded offline (with a separate read-only input tape)
1 Nondeterministic Space is Closed Under Complement Presented by Jing Zhang and Yingbo Wang Theory of Computation II Professor: Geoffrey Smith.
1 Space Complexity. 2 Def: Let M be a deterministic Turing Machine that halts on all inputs. Space Complexity of M is the function f:N  N, where f(n)
The class NP Section 7.3 Giorgi Japaridze Theory of Computability.
NL equals coNL Section 8.6 Giorgi Japaridze Theory of Computability.
CSCI 4325 / 6339 Theory of Computation Zhixiang Chen.
INHERENT LIMITATIONS OF COMPUTER PROGRAMS CSci 4011.
Complexity 7-1 Complexity Andrei Bulatov Complexity of Problems.
Complexity 12-1 Complexity Andrei Bulatov Non-Deterministic Space.
Complexity 15-1 Complexity Andrei Bulatov Hierarchy Theorem.
Complexity 11-1 Complexity Andrei Bulatov Space Complexity.
Computability and Complexity 22-1 Computability and Complexity Andrei Bulatov Hierarchy Theorem.
Complexity 13-1 Complexity Andrei Bulatov Hierarchy Theorem.
1 Introduction to Computability Theory Lecture15: Reductions Prof. Amos Israeli.
1 Introduction to Computability Theory Lecture12: Reductions Prof. Amos Israeli.
1 Introduction to Computability Theory Lecture13: Mapping Reductions Prof. Amos Israeli.
Computability and Complexity 19-1 Computability and Complexity Andrei Bulatov Non-Deterministic Space.
P, NP, PS, and NPS By Muhannad Harrim. Class P P is the complexity class containing decision problems which can be solved by a Deterministic Turing machine.
1 Linear Bounded Automata LBAs. 2 Linear Bounded Automata are like Turing Machines with a restriction: The working space of the tape is the space of the.
Fall 2004COMP 3351 Recursively Enumerable and Recursive Languages.
FORMAL LANGUAGES, AUTOMATA AND COMPUTABILITY
Complexity ©D.Moshkovits 1 Space Complexity Complexity ©D.Moshkovits 2 Motivation Complexity classes correspond to bounds on resources One such resource.
1 Uncountable Sets continued Theorem: Let be an infinite countable set. The powerset of is uncountable.
Alternating Turing Machine (ATM) –  node is marked accept iff any of its children is marked accept. –  node is marked accept iff all of its children.
CS 310 – Fall 2006 Pacific University CS310 Complexity Section 7.1 November 27, 2006.
Non-Deterministic Space is Closed Under Complementation Neil Immerman Richard Szelepcsenyi Presented By: Subhajit Dasgupta.
PSPACE-Completeness Section 8.3 Giorgi Japaridze Theory of Computability.
Definition: Let M be a deterministic Turing Machine that halts on all inputs. Space Complexity of M is the function f:N  N, where f(n) is the maximum.
חישוביות וסיבוכיות Computability and Complexity Lecture 7 TexPoint fonts used in EMF. Read the TexPoint manual before you delete this box.: A AAAA.
Computational Complexity Theory Lecture 2: Reductions, NP-completeness, Cook-Levin theorem Indian Institute of Science.
1 1 CDT314 FABER Formal Languages, Automata and Models of Computation Lecture 15-1 Mälardalen University 2012.
MA/CSSE 474 Theory of Computation Enumerability Reduction.
Theory of Computing Lecture 21 MAS 714 Hartmut Klauck.
Measuring complexity Section 7.1 Giorgi Japaridze Theory of Computability.
The Church-Turing Thesis Chapter 3 Giorgi Japaridze Theory of Computability.
1Computer Sciences Department. Book: INTRODUCTION TO THE THEORY OF COMPUTATION, SECOND EDITION, by: MICHAEL SIPSER Reference 3Computer Sciences Department.
1 Linear Bounded Automata LBAs. 2 Linear Bounded Automata (LBAs) are the same as Turing Machines with one difference: The input string tape space is the.
1 Turing’s Thesis. 2 Turing’s thesis: Any computation carried out by mechanical means can be performed by a Turing Machine (1930)
 2005 SDU Lecture13 Reducibility — A methodology for proving un- decidability.
Automata & Formal Languages, Feodor F. Dragan, Kent State University 1 CHAPTER 7 Time complexity Contents Measuring Complexity Big-O and small-o notation.
Hierarchy theorems Section 9.1 Giorgi Japaridze Theory of Computability.
The Classes L and NL Section 8.4 Giorgi Japaridze Theory of Computability.
Recursively Enumerable and Recursive Languages
1 Section 13.1 Turing Machines A Turing machine (TM) is a simple computer that has an infinite amount of storage in the form of cells on an infinite tape.
1 Turing Machines and Equivalent Models Section 13.1 Turing Machines.
Overview of the theory of computation Episode 3 0 Turing machines The traditional concepts of computability, decidability and recursive enumerability.
Lecture 24UofH - COSC Dr. Verma 1 COSC 3340: Introduction to Theory of Computation University of Houston Dr. Verma Lecture 24.
Theory of Computational Complexity Yuji Ishikawa Avis lab. M1.
THE HALTING PROBLEM - PROOF. Review  What makes a problem decidable?  3 properties of an efficient algorithm?  What is the meaning of “complete”, “mechanistic”,
CSCI 2670 Introduction to Theory of Computing November 15, 2005.
 2005 SDU Lecture14 Mapping Reducibility, Complexity.
Chapters 11 and 12 Decision Problems and Undecidability.
Time complexity Here we will consider elements of computational complexity theory – an investigation of the time (or other resources) required for solving.
Part VI NP-Hardness.
Theory of Computability
HIERARCHY THEOREMS Hu Rui Prof. Takahashi laboratory
COSC 3340: Introduction to Theory of Computation
Theory of Computational Complexity
Space Complexity Costas Busch - LSU.
CSC 4170 Theory of Computation Space complexity Chapter 8.
Theory of Computability
Formal Languages, Automata and Models of Computation
CSC 4170 Theory of Computation Time complexity Section 7.1.
Theory of Computability
CSC 4170 Theory of Computation Time complexity Section 7.1.
Space Complexity and Interactive Proof Systems
Intro to Theory of Computation
Presentation transcript:

Giorgi Japaridze Theory of Computability Savitch’s Theorem Section 8.1

Nondeterministic space is not much more powerful than deterministic space 8.1.a Giorgi Japaridze Theory of Computability Theorem 8.5 (Savitch’s Theorem) For any function f: N  R +, where f(n)  n, we have NSPACE(f(n))  SPACE(f 2 (n)). As the proof of this theorem reveals, a deterministic TM can simulate a nondeterministic TM using only a little amount of extra space. That is due to the fact that space can be recycled. As time cannot be recycled, the same trick fails to work with time (otherwise we would have a proof of P=NP).

Proof of Savitch’s theorem (i) 8.1.b Giorgi Japaridze Theory of Computability Proof. Fix an arbitrary NTM N. Let t be a positive integer, and let c 1 and c 2 be two configurations of N. We cay that c 1 can yield c 2 in  t steps if N can go from c 1 to c 2 in t or fewer steps. Below, if p is odd, p/2 should be understood as (p+1)/2. CANYIELD(c 1, c 2, p) = “On input c 1, c 2 and p, where p  1 and c 1,c 2 are configurations that use at most f(n) space (i.e. in which the head is at a  f(n) th cell, and all non-blank cells are among the first f(n) cells): 1. If p=1, then test if c 1 =c 2 or c 1 yields c 2 in one step according to the rules of N. Accept if either test succeeds; reject if both fail. 2. If p>1, then for each configuration c m of N that uses space  f(n): 3. Run CANYIELD(c 1, c m, p/2). 4. Run CANYIELD(c m, c 2, p/2). 5. If steps 3 and 4 both accept, then accept. 6. If haven’t yet accepted, reject.”

Proof of Savitch’s theorem (ii) 8.1.c Giorgi Japaridze Theory of Computability We assume that (or otherwise modify N so that) N clears its tape before halting and goes to the beginning of the tape, thereby entering a (fixed) configuration called c accept. And we let c start be the start configuration of N on input w. Next, where n is the length of w, we select a constant d so that N has no more than 2 df(n) configurations that use f(n) cells of the tape. Then 2 df(n) provides an upper bound on the running time of N on w (for otherwise a configuration would repeat and thus N would go into an infinite loop, contrary to our assumption that this does not happen). Hence, N accepts w if and only if it can get from c start to c accept within 2 df(n) or fewer steps. So, the following (deterministic) machine M obviously simulates N, i.e. M accepts w iff N does: M = “On input w: 1. Output the result of CANYIELD(c start, c accept, 2 df(n) ).”

Proof of Savitch’s theorem (iii) 8.1.d Giorgi Japaridze Theory of Computability It remains to analyze the space complexity of M. Whenever CANYIELD invokes itself recursively, it stores the current stage number and the values of c 1,c 2 and p on a stack so that these values can be restored upon return from the recursive call. Each level of the recursion thus uses O(f(n)) additional space. Next, each level of the recursion cuts p by half. And, as initially p starts out equal to 2 df(n), the depth of the recursion is df(n). Therefore the total space used is df(n)  O(f(n)) = O(f 2 (n)), as promised. We are done. Or are we? One technical difficulty arises in this argument because M needs to know the (w-depending) value of f(n) when it calls CANYIELD. Not to worry, we can handle that.

Proof of Savitch’s theorem (iv) 8.1.e Giorgi Japaridze Theory of Computability A way to overcome the difficulty is to modify M --- call the modified version M’ --- so that it tries f(n) = 1,2,3,... For each value f(n)=i, M’ uses CANYIELD to determine whether the accept configuration is reachable, and accepts if yes. Thus, if N accepts w within  2 j steps, M’ will also accept w when trying f(n)=i for a certain i  j. Next, to guarantee that M’ does not keep increasing i (and thus the used space) indefinitely in the cases when N does not accept w, M’ does the following before passing from i to i+1. Using CANYIELD, it checks whether any configuration (at all) utilizing more than i cells of the tape is reachable from c start. If not, there is no point in trying i+1 and greater i’s, and M’ rejects. Obviously the greatest possible i that M’ will have to try before hal- ting is f(n). So, remembering the current i (which is necessary for M’ to work properly) will only take O(log f(n)) space. And, while trying an i, M’ uses no more additional space than M does. This space can be recyc- led on every iteration, so the space complexity of M’ remains O(f 2 (n)).