Alternation Alternation: generalizes non-determinism, where each state is either “existential” or “universal”: Old: existential states New: universal states.

Slides:



Advertisements
Similar presentations
Complexity Theory Lecture 6
Advertisements

Resource-Bounded Computation
Complexity Theory Lecture 3 Lecturer: Moni Naor. Recap Last week: Non deterministic communication complexity Probabilistic communication complexity Their.
INHERENT LIMITATIONS OF COMPUTER PROGRAMS CSci 4011.
Turing -Recognizable vs. -Decidable
Resource-Bounded Computation Previously: can it be done? Now: how efficiently can it be done? Goal: conserve computational resources: Time, space, other.
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)
CSCI 4325 / 6339 Theory of Computation Zhixiang Chen.
Having Proofs for Incorrectness
INHERENT LIMITATIONS OF COMPUTER PROGRAMS CSci 4011.
Nathan Brunelle Department of Computer Science University of Virginia Theory of Computation CS3102 – Spring 2014 A tale.
Probabilistic algorithms Section 10.2 Giorgi Japaridze Theory of Computability.
CS Department Fireside Chat All are welcome! Wed Nov 18, 5-6pm, Ols 228e/236d Kim Hazelwood and Wes Weimer Meet and ask them questions in a non-academic.
Complexity 15-1 Complexity Andrei Bulatov Hierarchy Theorem.
Complexity 11-1 Complexity Andrei Bulatov Space Complexity.
Complexity 13-1 Complexity Andrei Bulatov Hierarchy Theorem.
1 Introduction to Computability Theory Lecture12: Decidable Languages Prof. Amos Israeli.
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)
CS21 Decidability and Tractability
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.
CS151 Complexity Theory Lecture 12 May 6, CS151 Lecture 122 Outline The Polynomial-Time Hierarachy (PH) Complete problems for classes in PH, PSPACE.
1 Other Models of Computation. 2 Models of computation: Turing Machines Recursive Functions Post Systems Rewriting Systems.
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.
Complexity ©D. Moshkovitz 1 And Randomized Computations The Polynomial Hierarchy.
Theory of Computing Lecture 20 MAS 714 Hartmut Klauck.
Fall 2003Costas Busch - RPI1 Turing Machines (TMs) Linear Bounded Automata (LBAs)
Robbie Hott Department of Computer Science University of Virginia Theory of Computation CS3102.
Final Exam Review Cummulative Chapters 0, 1, 2, 3, 4, 5 and 7.
Theory of Computing Lecture 19 MAS 714 Hartmut Klauck.
Nathan Brunelle Department of Computer Science University of Virginia Theory of Computation CS3102 – Spring 2014 A tale.
INHERENT LIMITATIONS OF COMPUTER PROGRAMS CSci 4011.
INHERENT LIMITATIONS OF COMPUTER PROGRAMS CSci 4011.
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.
Review Byron Gao. Overview Theory of computation: central areas: Automata, Computability, Complexity Computability: Is the problem solvable? –solvable.
Automatic Structures Bakhadyr Khoussainov Computer Science Department The University of Auckland, New Zealand.
Theory of Computing Lecture 17 MAS 714 Hartmut Klauck.
Space Complexity. Reminder: P, NP classes P NP is the class of problems for which: –Guessing phase: A polynomial time algorithm generates a plausible.
CSCI 2670 Introduction to Theory of Computing November 29, 2005.
Computation Model and Complexity Class. 2 An algorithmic process that uses the result of a random draw to make an approximated decision has the ability.
CSCI 2670 Introduction to Theory of Computing December 1, 2004.
Complexity Non-determinism. NP complete problems. Does P=NP? Origami. Homework: continue on postings.
CSE 105 Theory of Computation Alexander Tsiatas Spring 2012 Theory of Computation Lecture Slides by Alexander Tsiatas is licensed under a Creative Commons.
Theory of Computing Lecture 21 MAS 714 Hartmut Klauck.
Aaron Bloomfield CS 4102 Spring 2011
A Problem That Is Complete for PSPACE (Polynomial Space) BY TEJA SUDHA GARIGANTI.
Additional Classes: co-NP class Krishna Mahesh Deevela Murali.
Strings Basic data type in computational biology A string is an ordered succession of characters or symbols from a finite set called an alphabet Sequence.
Hierarchy theorems Section 9.1 Giorgi Japaridze Theory of Computability.
Computability NP complete problems. Space complexity. Homework: [Post proposal]. Find PSPACE- Complete problems. Work on presentations.
Computability Review homework. Video. Variations. Definitions. Enumerators. Hilbert's Problem. Algorithms. Summary Homework: Give formal definition of.
Alternation Section 10.3 Giorgi Japaridze Theory of Computability.
Complexity 24-1 Complexity Andrei Bulatov Interactive Proofs.
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.
Space Complexity. Reminder: P, NP classes P is the class of problems that can be solved with algorithms that runs in polynomial time NP is the class of.
CSCI 2670 Introduction to Theory of Computing December 2, 2004.
CSCI 2670 Introduction to Theory of Computing December 7, 2005.
Theory of Computational Complexity Yuji Ishikawa Avis lab. M1.
Complexity 27-1 Complexity Andrei Bulatov Interactive Proofs (continued)
 2005 SDU Lecture14 Mapping Reducibility, Complexity.
Probabilistic Algorithms
Summary.
CS21 Decidability and Tractability
Umans Complexity Theory Lectures
CS21 Decidability and Tractability
The Polynomial Hierarchy
Instructor: Aaron Roth
Theory of Computability
The Extended Chomsky Hierarchy Reloaded
Intro to Theory of Computation
Presentation transcript:

Alternation Alternation: generalizes non-determinism, where each state is either “existential” or “universal”: Old: existential states New: universal states Existential state is accepting iff any of its child states is accepting (OR) Universal state is accepting iff all of its child states are accepting (AND) Alternating computation is a “tree”. Final states are accepting Non-final states are rejecting Computation accepts iff initial state is accepting Note: in non-determinism, all states are existential       

Alternation Theorem: a k-state alternating finite automaton can be converted into an equivalent 2 k -state non-deterministic FA. Proof idea: a generalized powerset construction. Theorem: a k-state alternating finite automaton can be converted into an equivalent 2 2 k -state deterministic FA. Proof: two composed powerset constructions. Def: alternating Turing machine is an alternating FA with an unbounded read/write tape. Theorem: alternation does not increase the language recognition power of Turing machine. Proof: by simulation.

Alternating Complexity Classes Def: ATIME(t(n))={L | L is decidable within time O(t(n)) by some alternating TM} Def: ASPACE(s(n))={L | L decidable within space O(s(n)) by some alternating TM} Def: AP =  ATIME(n k )  k>1 AP  alternating polynomial time Def: APSPACE =  ASPACE(n k )  k>1 APSPACE  alternating polynomial space Properties!

Alternating Complexity Classes Def: AEXPTIME =  ATIME(2 n k )  k>1 AEXPTIME  alternating exponential time Def: AEXPSPACE =  ASPACE(2 n k )  k>1 AEXPSPACE  alternating exponential space Def: AL = ALOGSPACE = ASPACE(log n) AL  alternating logarithmic space Note: AP, ASPACE, AL are model-independent

Alternating Space/Time Relationships Theorem: P  NP  AP Open: NP = AP ? Open: P = AP ? Corollary: P=AP  P=NP Theorem: ATIME(f(n))  DSPACE(f(n))  ATIME(f 2 (n)) Theorem: PSPACE  NPSPACE  APSPACE Theorem: ASPACE(f(n))  DTIME(c f(n) ) Theorem: AL = P Theorem: AP = PSPACE Theorem: APSPACE = EXPTIME Theorem: AEXPTIME = EXPSPACE  

Quantified Boolean Formula Problem Def: Given a fully quantified Boolean formula, where each variable is quantified existentially or universally, does it evaluate to “true”? Example: Is “  x  y  z (x  z)  y” true? Also known as quantified satisfiability (QSAT) Satisfiability (one  only) is a special case of QBF Theorem: QBF is PSPACE-complete. Proof idea: combination of [Cook] and [Savitch]. Theorem: QBF  TIME(2 n ) Proof: recursively evaluate all possibilities. Theorem: QBF  DSPACE(n) Proof: reuse space during exhaustive evaluations. Theorem: QBF  ATIME(n) Proof: use alternation to guess and verify formula.

QBF and Two-Player Games SAT solutions can be succinctly (polynomially) specified. It is not known how to succinctly specify QBF solutions. QBF naturally models winning strategies for two-player games:  a move for player A  moves for player B  a move for player A  moves for player B  a move for player A... player A has a winning move!   

QBF and Two-Player Games Theorem: Generalized Checkers is EXPTIME-complete. Theorem: Generalized Chess is EXPTIME-complete. Theorem: Generalized Go is EXPTIME-complete. Theorem: Generalized Othello is PSPACE-complete.

Idea: bound the number of “existential” / “universal” states Old: unbounded existential / universal states New: at most i existential / universal alternations Def: a  i -alternating TM has at most i runs of quantified steps, starting with existential Def: a  i -alternating TM has at most i runs of quantified steps, starting with universal Note:  i - and  i - alternation-bounded TMs are similar to unbounded alternating TMs        The Polynomial Hierarchy i=1 i=2 i=3 i=4 i=5  5 -alternating

Def:  i TIME(t(n))={L | L is decidable within time O(t(n)) by some  i -alternating TM} Def:  i SPACE(s(n))={L | L is decidable within space O(s(n)) by some  i -alternating TM} Def:  i TIME(t(n))={L | L is decidable within time O(t(n)) by some  i -alternating TM} Def:  i SPACE(s(n))={L | L is decidable within space O(s(n)) by some  i -alternating TM} Def:  i P =   i TIME(n k )  k>1 Def:  i P =   i TIME(n k )  k>1      The Polynomial Hierarchy

Def:  PH =   i P  i>1 Def:  PH =   i P  i>1 Theorem:  PH =  PH Def: The Polynomial Hierarchy PH =  PH  Languages accpted by polynomial time, unbounded-alternations TMs Theorem:  0 P=  0 P= P Theorem:  1 P=NP,  1 P= co-NP Theorem:  i P   i+1 P,  i P   i+1 P Theorem:  i P   i+1 P,  i P   i+1 P      The Polynomial Hierarchy

Theorem:  i P  PSPACE Theorem:  i P  PSPACE Theorem: PH  PSPACE Open: PH  PSPACE  Open:  0 P=  1 P  P=NP  Open:  0 P=  1 P  P=co-NP  Open:  1 P=  1 P  NP=co-NP  Open:  k P   k+1 P for any k ? Open:  k P   k+1 P for any k ? Open:  k P   k P for any k ? Theorem: PH = languages expressible by 2 nd -order logic      The Polynomial Hierarchy Infinite number of “P=NP”–type open problems!

Open: Is the polynomial hierarchy infinite ? Theorem: If any two successive levels conicide (  k P   k+1 P or  k P   k P for some k) then the entire polynomial hierarchy collapses to that level (i.e., PH =  k P =  k P). Corollary: If P = NP then the entire polynomial hierarchy collapses completely (i.e., PH = P = NP). Theorem: P=NP  P=PH Corollary: To show P ≠ NP, it suffices to show P ≠ PH. Theorem: There exist oracles that separate  k P ≠  k+1 P. Theorem: PH contains almost all well-known complexity classes in PSPACE, including P, NP, co-NP, BPP, RP, etc. The Polynomial Hierarchy

… … … … … … … … … … PSPACE-complete QBF The Extended Chomsky Hierarchy Reloaded Context-free ww R PanbncnPanbncn NP Recognizable Not Recognizable HH Decidable Presburger arithmetic NP-complete SAT Not finitely describable  ** EXPTIME EXPTIME-complete Go EXPSPACE-complete =RE  Context sensitive LBA EXPSPACE PSPACE Dense infinite time & space complexity hierarchies … … … … … … … … … … … … … … … … … … … … … … … … … … … … … … … … … … … … … … … … Regular a* … … … … … … … … … … … … … … … Turing degrees Other infinite complexity & descriptive hierarchies … … … … … Det. CF a n b n … … … … … Finite {a,b} … … … … … PH

Probabilistic Turing Machines Idea: allow randomness / coin-flips during computation Old: nondeterministic states New: random states changes via coin-flips Each coin-flip state has two successor states Def: Probability of branch B is Pr[B] = 2 -k where k is the # of coin-flips along B. Def: Probability that M accepts w is sum of the probabilities of all accepting branches. Def: Probability that M rejects w is 1 – (probability that M accepts w). Def: Probability that M accepts L with probability  if: w  L  probability(M accepts w)  1-  w  L  probability(M rejects w)  1- 

Probabilistic Turing Machines Def: BPP is the class of languages accepted by probabilistic polynomial time TMs with error  =1/3. Note: BPP Bounded-error Probabilistic Polynomial time Theorem: any error threshold 0<  can be substituted. Proof idea: run the probabilistic TM multiple times and take the majority of the outputs. Theorem [Rabin, 1980]: Primality testing is in BPP. Theorem [Agrawal et al., 2002]: Primality testing is in P. Note: BPP is one of the largest practical classes of problems that can be solved effectively. Theorem: BPP is closed under complement (BPP=co-BPP). Open: BPP  NP ? Open: NP  BPP ?

Probabilistic Turing Machines Theorem: BPP  PH Theorem: P=NP  BPP=P Theorem: NP  BPP  PH  BPP Note: the former is unlikely, since this would imply efficient randomized algorithms for many NP-hard problems. Def: A pseudorandom number generator (PRNG) is an algorithm for generating number sequences that approximates the properties of random numbers. Theorem: The existance of strong PRNGs implies that P=BPP. “Anyone who considers arithmetical methods of producing random digits is, of course, in a state of sin.” John von Neumann

… … … … … … … … … … PSPACE-complete QBF The Extended Chomsky Hierarchy Reloaded Context-free ww R PanbncnPanbncn NP Recognizable Not Recognizable HH Decidable Presburger arithmetic NP-complete SAT Not finitely describable  ** EXPTIME EXPTIME-complete Go EXPSPACE-complete =RE  Context sensitive LBA EXPSPACE PSPACE Dense infinite time & space complexity hierarchies … … … … … … … … … … … … … … … … … … … … … … … … … … … … … … … … … … … … … … … … Regular a* … … … … … … … … … … … … … … … Turing degrees Other infinite complexity & descriptive hierarchies … … … … … Det. CF a n b n … … … … … Finite {a,b} … … … … … PH BPP

Blueberry Muffin Turing Machines L(M) = {w | w  *, w=w R }