Alternation Section 10.3 Giorgi Japaridze Theory of Computability.

Slides:



Advertisements
Similar presentations
Complexity Theory Lecture 6
Advertisements

The Polynomial – Time Hierarchy
1 Nondeterministic Space is Closed Under Complement Presented by Jing Zhang and Yingbo Wang Theory of Computation II Professor: Geoffrey Smith.
INHERENT LIMITATIONS OF COMPUTER PROGRAMS CSci 4011.
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.
Alternation Alternation: generalizes non-determinism, where each state is either “existential” or “universal”: Old: existential states New: universal states.
INHERENT LIMITATIONS OF COMPUTER PROGRAMS CSci 4011.
Probabilistic algorithms Section 10.2 Giorgi Japaridze Theory of Computability.
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.
Computability and Complexity 14-1 Computability and Complexity Andrei Bulatov Cook’s Theorem.
Measuring Time Complexity Sipser 7.1 (pages )
P and NP Sipser (pages ). CS 311 Fall Polynomial time P = ∪ k TIME(n k ) … P = ∪ k TIME(n k ) … TIME(n 3 ) TIME(n 2 ) TIME(n)
NP-completeness Sipser 7.4 (pages 271 – 283). CS 311 Mount Holyoke College 2 The classes P and NP NP = ∪ k NTIME(n k ) P = ∪ k TIME(n k )
NP-completeness Sipser 7.4 (pages 271 – 283). CS 311 Fall The classes P and NP NP = ∪ k NTIME(n k ) P = ∪ k TIME(n k )
Computability and Complexity 19-1 Computability and Complexity Andrei Bulatov Non-Deterministic Space.
Complexity ©D.Moshkovitz 1 Turing Machines. Complexity ©D.Moshkovitz 2 Motivation Our main goal in this course is to analyze problems and categorize them.
FORMAL LANGUAGES, AUTOMATA AND COMPUTABILITY Read sections 7.1 – 7.3 of the book for next time.
Computability and Complexity 32-1 Computability and Complexity Andrei Bulatov Boolean Circuits.
Computability and Complexity 20-1 Computability and Complexity Andrei Bulatov Class NL.
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 Master – Introduction to the Theory of Computation Jan Maluszynski - HT Lecture NP-Completeness Jan Maluszynski, IDA, 2007
INHERENT LIMITATIONS OF COMPUTER PROGRAMS CSci 4011.
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.
The Complexity of Optimization Problems. Summary -Complexity of algorithms and problems -Complexity classes: P and NP -Reducibility -Karp reducibility.
CSCI 2670 Introduction to Theory of Computing November 29, 2005.
Theory of Computing Lecture 21 MAS 714 Hartmut Klauck.
Measuring complexity Section 7.1 Giorgi Japaridze Theory of Computability.
Parallel computation Section 10.5 Giorgi Japaridze Theory of Computability.
NP-completeness Section 7.4 Giorgi Japaridze Theory of Computability.
Hierarchy theorems Section 9.1 Giorgi Japaridze Theory of Computability.
The Classes L and NL Section 8.4 Giorgi Japaridze Theory of Computability.
Umans Complexity Theory Lectures Lecture 1c: Robust Time & Space Classes.
Homework 8 Solutions Problem 1. Draw a diagram showing the various classes of languages that we have discussed and alluded to in terms of which class.
CSCI 2670 Introduction to Theory of Computing December 2, 2004.
Complexity ©D.Moshkovitz 1 Our First NP-Complete Problem The Cook-Levin theorem A B C.
Theory of Computational Complexity Yuji Ishikawa Avis lab. M1.
Theory of Computability
Time complexity Here we will consider elements of computational complexity theory – an investigation of the time (or other resources) required for solving.
Theory of Computability
Computing with Turing Machines
Theory of Computability
CSC 4170 Theory of Computation Turing reducibility Section 6.3.
HIERARCHY THEOREMS Hu Rui Prof. Takahashi laboratory
Decidability of logical theories
Theory of Computability
CSC 4170 Theory of Computation Space complexity Chapter 8.
CSC 4170 Theory of Computation The class NP Section 7.3.
Theory of Computability
CS154, Lecture 12: Time Complexity
CSC 4170 Theory of Computation Mapping Reducibility Section 5.3.
CSC 4170 Theory of Computation Time complexity Section 7.1.
Theory of Computability
CS21 Decidability and Tractability
CSC 4170 Theory of Computation The class NP Section 7.3.
Theory of Computability
Decidability of logical theories
CSC 4170 Theory of Computation Mapping Reducibility Section 5.3.
Theory of Computability
Instructor: Aaron Roth
CSC 4170 Theory of Computation Time complexity Section 7.1.
Theory of Computability
Theory of Computability
Intro to Theory of Computation
Presentation transcript:

Alternation Section 10.3 Giorgi Japaridze Theory of Computability

Alternating Turing machines 10.3.a Giorgi Japaridze Theory of Computability Definition An alternating Turing machine is a nondeterministic TM with an additional feature. Its states, except for the accept and reject states, are divided into universal states and existential states. When we run an alternating TM on an input string, we label each node of its nondeterministic computation tree with ∧ or ∨, depending on whether the corresponding configuration contains a universal or existential state. We determine acceptance by designating a node to be accepting if it is labeled with ∧ and all of its children are accepting or if it is labeled with ∨ and at least one of its children is accepting. ∨ ∨∨ ∨ ∨ ∨∨ rejectaccept nondeterministic computation tree ∨ ∧∧ ∨ ∨ ∨∨ alternating computation tree reject acceptreject

ATIME and ASPACE defined 10.3.b Giorgi Japaridze Theory of Computability ATIME(t(n)) = def {L | L is decided by an O(t(n)) time alternating TM} ASPACE(t(n)) = def {L | L is decided by an O(t(n)) space alternating TM} We further define AP, APSPACE and AL to be the classes of languages that are decided by alternating polynomial time, alternating polynomial space, and alternating logarithmic space TMs, respectively. Example Here is an alternating polynomial time algorithm for the UNSATISFIABILITY problem for Boolean formulas: “On input : 1. Universally select all assignments to the variables of . 2. For a particular assignment, evaluate . 3. If  evaluates to 0, accept; otherwise reject.”

MIN-FORMULA is in AP 10.3.c Giorgi Japaridze Theory of Computability Example This example features a language in AP that isn’t known to be in NP or coNP. Two Boolean formulas are said to be equivalent iff they evaluate to the same value on all assignments to their variables. A minimal formula is one that has no shorter equivalent. Let MIN-FORMULA = { |  is a minimal Boolean formula}. The following is an alternating polynomial time algorithm for this language. “On input : 1. Universally select a formula  that is shorter than . 2. Existentially select an assignment to all relevant variables. 3. Evaluate both  and  on this assignment. 4. Accept if the formulas evaluate to different values. Reject otherwise.”

Main theorems 10.3.d Giorgi Japaridze Theory of Computability Theorem a) For f(n) ≥ n we have ATIME(f(n))  SPACE(f(n))  ATIME(f 2 (n)). b) For f(n) ≥ log n we have ASPACE(f(n)) = TIME(2 O(f(n)) ). Corollary AL = P AP = PSPACE APSPACE = EXPTIME

The polynomial time hierarchy 10.3.e Giorgi Japaridze Theory of Computability Definition Let i be a natural number. A  i -alternating TM is an alternating TM that contains at most i runs of universal or existential steps, starting with existential steps. A  i -alternating TM is similar except that it starts with universal steps. Alternating machines provide a way to define a natural hierarchy of problems within the class PSPACE.  i TIME(f(n)) is defined as the class of languages that a  i -alternating TM can decide in O(f(n)) time. Similarly for  i TIME(f(n)). Similarly for  i SPACE(f(n)) and  i SPACE(f(n)). The polynomial time hierarchy is the collection of classes  i P =   i TIME(n k ) and  i P =   i TIME(n k ) kk PH is defined as   i P, which can be seen to be the same as   i P. ii Clearly NP =  1 P and coNP =  1 P. Also, MIN-FORMULA   2 P.