Resource-Bounded Computation Previously: can something be done? - - PowerPoint PPT Presentation

resource bounded computation
SMART_READER_LITE
LIVE PREVIEW

Resource-Bounded Computation Previously: can something be done? - - PowerPoint PPT Presentation

Resource-Bounded Computation Previously: can something be done? Now: how efficiently can it be done? Goal: conserve computational resources: Time, space, other resources? Def: L is decidable within time O(t(n)) if some TM M that decides L always


slide-1
SLIDE 1

Resource-Bounded Computation

Previously: can something be done? Now: how efficiently can it be done?

Goal: conserve computational resources:

Time, space, other resources? Def: L is decidable within time O(t(n)) if some TM M that decides L always halts on all w* within O(t(|w|)) steps / time. Def: L is decidable within space O(s(n)) if some TM M that decides L always halts on all w* while never using more than O(s(|w|)) space / tape cells.

slide-2
SLIDE 2

Complexity Classes

Def: DTIME(t(n))={L | L is decidable within time O(t(n)) by some deterministic TM} Def: NTIME(t(n))={L | L is decidable within time O(t(n)) by some non-deterministic TM} Def: DSPACE(s(n))={L | L decidable within space O(s(n)) by some deterministic TM} Def: NSPACE(s(n))={L | L decidable within space O(s(n)) by some non-deterministic TM}

slide-3
SLIDE 3

Time is Tape Dependent

Theorem: The time depends on the # of TM tapes. Idea: more tapes can enable higher efficiency. Ex: {0n1n | n>0} is in DTIME(n2) for 1-tape TM’s, and is in DTIME(n) for 2-tape TM’s. Note: For multi-tape TM’s, input tape space does not “count” in the total space s(n). This enables analyzing sub-linear space complexities.

slide-4
SLIDE 4

Space is Tape Independent

Theorem: The space does not depend on the # tapes. Proof: 1 0 1 1 0 1 1 1 1 1 1 1 1 0 1 1 0 1 1 1 1 1 1 1 Note: This does not asymptotically increase the

  • verall space (but can increase the total time).

Theorem: A 1-tape TM can simulate a t(n)-time- bounded k-tape TM in time O(kt2(n)). Idea: Tapes can be “interlaced” space-efficiently:

slide-5
SLIDE 5

Space-Time Relations

Theorem: If t(n) < t’(n) "n>1 then: DTIME(t(n))  DTIME(t’(n)) NTIME(t(n))  NTIME(t’(n)) Theorem: If s(n) < s’(n) "n>1 then: DSPACE(s(n))  DSPACE(s’(n)) NSPACE(s(n))  NSPACE(s’(n)) Example: NTIME(n)  NTIME(n2) Example : DSPACE(log n)  DSPACE(n)

slide-6
SLIDE 6

Examples of Space & Time Usage

Let L1={0n1n | n>0}: For 1-tape TM’s: L1  DTIME(n2) L1  DSPACE(n) L1  DTIME(n log n) For 2-tape TM’s: L1  DTIME(n) L1  DSPACE(log n)

slide-7
SLIDE 7

Examples of Space & Time Usage

Let L2=S* L2  DTIME(n) Theorem: every regular language is in DTIME(n) L2  DSPACE(1) Theorem: every regular language is in DSPACE(1) L2  DTIME(1) Let L3={w$w | w in S*} L3  DTIME(n2) L3  DSPACE(n) L3  DSPACE(log n)

slide-8
SLIDE 8

Special Time Classes

Def: P =  DTIME(nk)

"k>1

P  deterministic polynomial time Note: P is robust / model-independent Def: NP =  NTIME(nk)

"k>1

NP  non-deterministic polynomial time Theorem: P  NP Conjecture: P = NP ? Million $ question!

slide-9
SLIDE 9

Other Special Space Classes

Def: PSPACE = DSPACE(nk)

"k>1

PSPACE  deterministic polynomial space Def: NPSPACE =  NSPACE(nk)

"k>1

NPSPACE  non-deterministic polynomial space Theorem: PSPACE  NPSPACE (obvious) Theorem: PSPACE = NPSPACE (not obvious)

slide-10
SLIDE 10

Other Special Space Classes

Def: EXPTIME =  DTIME(2nk)

"k>1

EXPTIME  exponential time Def: EXPSPACE =  DSPACE(2nk)

"k>1

EXPSPACE  exponential space Def: L = LOGSPACE = DSPACE(log n) Def: NL = NLOGSPACE = NSPACE(log n)

slide-11
SLIDE 11

Space/Time Relationships

Theorem: DTIME(f(n))  DSPACE(f(n)) Theorem: DTIME(f(n))  DSPACE(f(n) / log(f(n))) Theorem: NTIME(f(n))  DTIME(cf(n) ) for some c depending on the language. Theorem: DSPACE(f(n))  DTIME(cf(n) ) for some c, depending on the language.

Theorem [Savitch]: NSPACE(f(n))  DSPACE(f 2(n))

Corollary: PSPACE = NPSPACE Theorem: NSPACE(nr)  DSPACE(nr+e) " r>0, e>0

slide-12
SLIDE 12

PSPACE-complete QBF

The Extended Chomsky Hierarchy

Finite {a,b} Regular a*

  • Det. CF anbn

Context-free wwR

P

anbncn

NP

PSPACE EXPSPACE

Recognizable Not Recognizable H H

Decidable

Presburger arithmetic NP-complete SAT

Not finitely describable ?

2S*

EXPTIME

EXPTIME-complete Go EXPSPACE-complete =RE

Turing degrees Context sensitive LBA

slide-13
SLIDE 13
slide-14
SLIDE 14

Time Complexity Hierarchy

Theorem: for any t(n)>0 there exists a decidable language LDTIME(t(n)).  No time complexity class contains all the decidable languages, and the time hierarchy is ! There are decidable languages that take arbitrarily long times to decide! Note: t(n) must be computable & everywhere defined Proof: (by diagonalization) Fix lexicographic orders for TM’s: M1, M2, M3, . . . Interpret TM inputs iΣ* as encodings of integers: a=1, b=2, aa=3, ab=4, ba=5, bb=6, aaa=7, …

Juris Hartmanis Richard Stearns

slide-15
SLIDE 15

Time Complexity Hierarchy (proof)

Define L={i | Mi does not accept i within t(i) time} Note: L is decidable (by simulation) Q: is LDTIME(t(n)) ? Assume (towards contradiction) LDTIME(t(n)) i.e., $ a fixed KN such that Turing machine MK decides L within time bound t(n) i

MK decides / accepts L

If Mi accepts i within t(i) time then else Reject Accept

slide-16
SLIDE 16

Time Complexity Hierarchy (proof)

Consider whether KL: KL  MK must accept K within t(K) time  MK must reject K  KL KL  MK must reject K within t(K) time  MK must accept K  KL So (KL)  (KL), a contradiction!  Assumption is false  LDTIME(t(n)) K

MK decides / accepts L

If MK accepts K within t(K) time then else Reject Accept

slide-17
SLIDE 17

i = 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 … wiΣ* = a b aa ab ba bb aaa aab aba abb baa bab bbabbbaaaa … M1(i)  √  √ √   √ √ √     √  … M2(i)    √   √   √  √ √    … M3(i)  √ √ √  √    √ √ √ √  √  … M4(i)  √  √  √ √  √ √   √    … M5(i)   √ √   √ √  √ √ √ √  √  … . . .

Time Hierarchy (another proof)

Consider all t(n)-time-bounded TM’s on all inputs:

M’(i) 

is t(n) time-bounded.

But M’ computes a different function than any Mj

 Contradiction!   √ √ √ . . .

slide-18
SLIDE 18

“Lexicographic order.”

slide-19
SLIDE 19
slide-20
SLIDE 20

Juris Hartmanis Richard Stearns

Space Complexity Hierarchy

Theorem: for any s(n)>0 there exists a decidable language LDSPACE(s(n)). No space complexity class contains all the decidable languages, and the space hierarchy is ! There are decidable languages that take arbitrarily much space to decide!

Note: s(n) must be computable & everywhere defined

Proof: (by diagonalization) Fix lexicographic orders for TM’s: M1, M2, M3, . . . Interpret TM inputs iΣ* as encodings of integers: a=1, b=2, aa=3, ab=4, ba=5, bb=6, aaa=7, …

slide-21
SLIDE 21

Space Complexity Hierarchy (proof)

Define L={i | Mi does not accept i within t(i) space} Note: L is decidable (by simulation; -loops?) Q: is LDSPACE(s(n)) ? Assume (towards contradiction) LDSPACE(s(n)) i.e., $ a fixed KN such that Turing machine MK decides L within space bound s(n) i

MK decides / accepts L

If Mi accepts i within t(i) space then else Reject Accept

slide-22
SLIDE 22

Space Complexity Hierarchy (proof)

Consider whether KL: KL  MK must accept K within s(K) space  MK must reject K  KL KL  MK must reject K within s(K) space  MK must accept K  KL So (KL)  (KL), a contradiction!  Assumption is false  LDSPACE(s(n)) K

MK decides / accepts L

If MK accepts K within s(K) space then else Reject Accept

slide-23
SLIDE 23

i = 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 … wiΣ* = a b aa ab ba bb aaa aab aba abb baa bab bbabbbaaaa … M1(i)  √  √ √   √ √ √     √  … M2(i)    √   √   √  √ √    … M3(i)  √ √ √  √    √ √ √ √  √  … M4(i)  √  √  √ √  √ √   √    … M5(i)   √ √   √ √  √ √ √ √  √  … . . .

Space Hierarchy (another proof)

Consider all s(n)-space-bounded TM’s on all inputs:

M’(i) 

is s(n) space-bounded.

But M’ computes a different function than any Mj

 Contradiction!   √ √ √ . . .

slide-24
SLIDE 24

Savitch’s Theorem

Theorem: NSPACE(f(n))  DSPACE (f2(n)) Proof: Simulation: idea is to aggressively conserve and reuse space while sacrificing (lots of) time. Consider a sequence of TM states in one branch of an NSPACE(f(n))-bounded computation: Computation time / length is bounded by cf(n) (why?) We need to simulate this branch and all others too! Q: How can we space-efficiently simulate these? A: Use divide-and-conquer with heavy space-reuse!

Walter Savitch

slide-25
SLIDE 25

Savitch’s Theorem

Pick a midpoint state along target path: Verify it is a valid intermediate state by recursively solving both subproblems. Iterate for all possible midpoint states! The recursion stack depth is at most log(cf(n))=O(f(n)) Each recursion stack frame size is O(f(n)).  total space needed is O(f(n)*f(n))=O(f2(n)) Note: total time is exponential (but that’s OK). non-determinism can be eliminated by squaring the space: NSPACE(f(n))  DSPACE (f2(n))

Walter Savitch

slide-26
SLIDE 26

Savitch’s Theorem

Corollary: NPSPACE = PSPACE Proof: NPSPACE =  NSPACE(nk)

k>1

 DSPACE(n2k)

k>1

=  DSPACE(nk)

k>1

= PSPACE i.e., polynomial space is invariant with respect to non-determinism! Q: What about polynomial time? A: Still open! (P=NP)

Walter Savitch

slide-27
SLIDE 27

Space & Complementation

Theorem: Deterministic space is closed under complementation, i.e., DSPACE(S(n)) = co-DSPACE(S(n)) = {S*-L | L  DSPACE(S(n)) } Proof: Simulate & negate. Theorem [Immerman, 1987]: Nondeterministic space is closed under complementation, i.e. NSPACE(S(n)) = co-NSPACE(S(n)) Proof idea: Similar strategy to Savitch’s theorem. No similar result is known for any of the standard time complexity classes! Q: Is NP = co-NP? A: Still open!

Neil Immerman

slide-28
SLIDE 28

From:

slide-29
SLIDE 29
slide-30
SLIDE 30

Neil Immerman

slide-31
SLIDE 31

PSPACE-complete QBF

The Extended Chomsky Hierarchy

Finite {a,b} Regular a*

  • Det. CF anbn

Context-free wwR

P

anbncn

NP Recognizable Not Recognizable H H

Decidable

Presburger arithmetic NP-complete SAT

Not finitely describable ?

2S*

EXPTIME

EXPTIME-complete Go EXPSPACE-complete =RE

Turing degrees Context sensitive LBA EXPSPACE=co-EXPSPACE

PSPACE=NPSPACE=co-NPSPACE

slide-32
SLIDE 32

Q: Can we enumerate TM’s for all languages in P? Q: Can we enumerate TM’s for all languages in NP, PSPACE? EXPTIME? EXPSPACE? Note: not necessarily in a lexicographic order.

Enumeration of Resource-Bounded TMs

slide-33
SLIDE 33

Denseness of Space Hierarchy

Q: How much additional space does it take to recognize more languages? A: Very little more! Theorem: Given two space bounds s1 and s2 such that Lim s1(n) / s2(n)=0 as n, i.e., s1(n) = o(s2(n)), $ a decidable language L such that LDSPACE(s2(n)) but LDSPACE(s1(n)). Proof idea: Diagonalize efficiently. Note: s2(n) must be computable within s2(n) space.  Space hierarchy is infinite and very dense!

Juris Hartmanis Richard Stearns

slide-34
SLIDE 34

Space hierarchy is infinite and very dense! Examples: DSPACE(log n)  DSPACE(log2 n) DSPACE(n)  DSPACE(n log n) DSPACE(n2)  DSPACE(n2.001) DSPACE(nx)  DSPACE(ny) " 1<x<y Corollary: LOGSPACE  PSPACE Corollary: PSPACE  EXPSPACE

Denseness of Space Hierarchy

Juris Hartmanis Richard Stearns

slide-35
SLIDE 35

Q: How much additional time does it take to recognize more languages? A: At most a logarithmic factor more! Theorem: Given two time bounds t1 and t2 such that t1(n)log(t1(n)) = o(t2(n)), $ a decidable language L such that LDTIME(t2(n)) but LDTIME(t1(n)). Proof idea: Diagonalize efficiently. Note: t2(n) must be computable within t2(n) time.  Time hierarchy is infinite and pretty dense!

Denseness of Time Hierarchy

Juris Hartmanis Richard Stearns

slide-36
SLIDE 36

Time hierarchy is infinite and pretty dense! Examples: DTIME(n)  DTIME(n log2 n) DTIME(n2)  DTIME(n2.001) DTIME(2n)  DTIME(n22n) DTIME(nx)  DTIME(ny) " 1<x<y Corollary: LOGTIME  P Corollary: P  EXPTIME

Denseness of Time Hierarchy

Juris Hartmanis Richard Stearns

slide-37
SLIDE 37

Complexity Classes Relationships

Theorems: LOGTIME  L  NL  P  NP  PSPACE  EXPTIME  NEXPTIME  EXPSPACE  . . . Theorems: L  PSPACE  EXPSPACE     Theorems: LOGTIME  P  EXPTIME    

Conjectures: LNL, NLP, PNP, NPPSPACE, PSPACEEXPTIME, EXPTIMENEXPTIME, NEXPTIMEEXPSPACE, . . .

Theorem: At least two of the above conjectures are true!

slide-38
SLIDE 38

Theorem: At least two

  • f the following

conjectures are true:

LL NLP PNP NPPSPACE PSPACEEXPTIME EXPTIMENEXPTIME NEXPTIMEEXPSPACE

Theorem: P  SPACE(n) Open: P  SPACE(n) ? Open: SPACE(n)  P ? Open: NSPACE(n)  DSPACE(n) ?

slide-39
SLIDE 39

… … … … … … … … … …

PSPACE-complete QBF

The Extended Chomsky Hierarchy Reloaded

Context-free wwR

P

anbncn

NP Recognizable Not Recognizable H H

Decidable

Presburger arithmetic NP-complete SAT

Not finitely describable ?

2S*

EXPTIME

EXPTIME-complete Go EXPSPACE-complete =RE

Context sensitive LBA EXPSPACE=co-EXPSPACE

PSPACE=NPSPACE=co-NPSPACE

Dense infinite time & space complexity hierarchies

… … … … … … … … … … … … … … … … … … … … … … … … … … … … … … … … … … … … … … … …

Regular a*

… … … … … … … … … … … … … … …

Turing degrees Other infinite complexity & descriptive hierarchies

… … … … …

  • Det. CF anbn

… … … … …

Finite {a,b}

slide-40
SLIDE 40

Gap Theorems

$ arbitrarily large space & time complexity gaps! Theorem [Borodin]: For any computable function g(n), $ t(n) such that DTIME(t(n)) = DTIME(g(t(n)). Ex: DTIME(t(n)) = DTIME(22t(n)) for some t(n) Theorem [Borodin]: For any computable function g(n), $ s(n) such that DSPACE(s(n)) = DSPACE(g(s(n)). Ex: DSPACE(s(n)) = DSPACE(S(n)s(n)) for some s(n) Proof idea: Diagonalize over TMs & construct a gap that avoids all TM complexities from falling into it. Corollary: $ f(n) such that DTIME(f(n)) = DSPACE(f(n)). Note: does not contradict the space and time hierarchy theorems, since t(n), s(n), f(n) may not be computable.

Allan Borodin

slide-41
SLIDE 41

The First Complexity Gap

The first space “gap” is between O(1) and O(log log n)

Theorem: LDSPACE(o(log log n))  LDSPACE(O(1))  L is regular!

All space classes below O(log log n) collapes to O(1).

Allan Borodin

slide-42
SLIDE 42

Speedup Theorem

There are languages for which there are no asymptotic space or time lower bounds for deciding them! Theorem [Blum]: For any computable function g(n), $ a language L such that if TM M accepts L within t(n) time, $ another TM M’ that accepts L within g(t(n)) time. Corollary [Blum]: There is a problem such that if any algorithm solves it in time t(n), $ other algorithms that solve it, in times O(log t(n)), O(log(log t(n))), O(log(log(log t(n)))), ...

Some problems don’t have an “inherent” complexity! Note: does not contradict the time hierarchy theorem!

Manuel Blum

slide-43
SLIDE 43

From:

Manuel Blum

slide-44
SLIDE 44
slide-45
SLIDE 45
slide-46
SLIDE 46

Abstract Complexity Theory

Complexity theory can be machine-independent! Instead of referring to TM’s, we state simple axioms that any complexity measure F must satisfy. Example: the Blum axioms: 1) F(M,w) is finite iff M(w) halts; and 2) The predicate “F(M,w)=n” is decidable. Theorem [Blum]: Any complexity measure satisfying these axioms gives rise to hierarchy, gap, & speedup theorems. Corollary: Space & time measures satisfy these axioms. AKA “Axiomatic complexity theory [Blum, 1967]

Manuel Blum

slide-47
SLIDE 47

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
  • f its child states is accepting (OR)
  • Universal state is accepting iff all
  • f 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

$ "

" " " " " Stockmeyer Chandra

slide-48
SLIDE 48

Alternation

Theorem: a k-state alternating finite automaton can be converted into an equivalent 2k-state non-deterministic FA. Proof idea: a generalized powerset construction. Theorem: a k-state alternating finite automaton can be converted into an equivalent 22k-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.

Stockmeyer Chandra

slide-49
SLIDE 49

Stockmeyer Chandra

Alternating Complexity Classes

Def: ATIME(t(n))={L | L is decidable in time O(t(n)) by some alternating TM} Def: ASPACE(s(n))={L | L decidable in space O(s(n)) by some alternating TM} Def: AP =  ATIME(nk)

"k>1

AP  alternating polynomial time Def: APSPACE =  ASPACE(nk)

"k>1

APSPACE  alternating polynomial space

slide-50
SLIDE 50

Alternating Complexity Classes

Def: AEXPTIME =  ATIME(2nk)

"k>1

AEXPTIME  alternating exponential time Def: AEXPSPACE =  ASPACE(2nk)

"k>1

AEXPSPACE  alternating exponential space Def: AL = ALOGSPACE = ASPACE(log n) AL  alternating logarithmic space Note: AP, ASPACE, AL are model-independent

Stockmeyer Chandra

slide-51
SLIDE 51

Stockmeyer Chandra

Alternating Space/Time Relations

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(cf(n)) Theorem: AL = P Theorem: AP = PSPACE Theorem: APSPACE = EXPTIME Theorem: AEXPTIME = EXPSPACE

$ "

slide-52
SLIDE 52

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(2n) 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.

slide-53
SLIDE 53

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!

" $ $

slide-54
SLIDE 54

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.

slide-55
SLIDE 55

Meyer

Idea: bound # of “existential” / “universal” states Old: unbounded existential / universal states New: at most i existential / universal alternations Def: a Si-alternating TM has at most i runs of quantified steps, starting with existential Def: a Pi-alternating TM has at most i runs of quantified steps, starting with universal Note: Pi- and Si- alternation-bounded TMs are similar to unbounded alternating TMs

Stockmeyer

$ "

" " " " "

The Polynomial Hierarchy

i=1 i=2 i=3 i=4 i=5

S5-alternating

slide-56
SLIDE 56

Def: SiTIME(t(n))={L | L is decidable within time O(t(n)) by some Si-alternating TM} Def: SiSPACE(s(n))={L | L is decidable within space O(s(n)) by some Si-alternating TM} Def: PiTIME(t(n))={L | L is decidable within time O(t(n)) by some Pi-alternating TM} Def: PiSPACE(s(n))={L | L is decidable within space O(s(n)) by some Pi-alternating TM}

Def: SiP =  SiTIME(nk)

"k>1

Def: PiP =  PiTIME(nk)

"k>1

Stockmeyer

The Polynomial Hierarchy

Meyer " " " " "

slide-57
SLIDE 57

Def: SPH =  SiP

"i>1

Def: PPH =  PiP

"i>1

Theorem: SPH = PPH Def: The Polynomial Hierarchy PH = SPH

 Languages accepted by polynomial time, unbounded-alternations TMs

Theorem: S0P= P0P= P Theorem: S1P=NP, P1P= co-NP Theorem: SiP  Si+1P, PiP  Pi+1P Theorem: SiP  Pi+1P, PiP  Si+1P

Stockmeyer

The Polynomial Hierarchy

Meyer " " " " "

slide-58
SLIDE 58

Theorem: SiP  PSPACE Theorem: PiP  PSPACE Theorem: PH  PSPACE Open: PH = PSPACE ? Open: S0P=S1P ?  P=NP ? Open: P0P=P1P ?  P=co-NP ? Open: S1P=P1P ?  NP=co-NP ? Open: SkP = Sk+1P for any k ? Open: PkP = Pk+1P for any k ? Open: SkP = PkP for any k ? Theorem: PH = languages expressible by 2nd-order logic

Infinite number

  • f “P=NP”–type
  • pen problems!

Stockmeyer Meyer " " " " "

The Polynomial Hierarchy

slide-59
SLIDE 59

Open: Is the polynomial hierarchy infinite ? Theorem: If any two successive levels conicide (SkP = Sk+1P

  • r SkP = PkP for some k) then the entire polynomial

hierarchy collapses to that level (i.e., PH = SkP = PkP). 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 SkP ≠ Sk+1P. Theorem: PH contains almost all well-known complexity classes in PSPACE, including P, NP, co-NP, BPP, RP, etc.

Stockmeyer Meyer

The Polynomial Hierarchy

slide-60
SLIDE 60

… … … … … … … … … …

PSPACE-complete QBF

The Extended Chomsky Hierarchy Reloaded

Context-free wwR

P

anbncn

NP Recognizable Not Recognizable H H

Decidable

Presburger arithmetic NP-complete SAT

Not finitely describable ?

2S*

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 anbn

… … … … …

Finite {a,b}

… … … … …

PH

slide-61
SLIDE 61

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 e if: wL  probability(M accepts w)  1-e wL  probability(M rejects w)  1-e

slide-62
SLIDE 62

Probabilistic Turing Machines

Def: BPP is the class of languages accepted by probabilistic polynomial time TMs with error e =1/3. Note: BPP Bounded-error Probabilistic Polynomial time Theorem: any error threshold 0<e<1/2 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

  • f problems that can be solved effectively.

Theorem: BPP is closed under complement (BPP=co-BPP). Open: BPP  NP ? Open: NP  BPP ?

slide-63
SLIDE 63

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

slide-64
SLIDE 64

… … … … … … … … … …

PSPACE-complete QBF

The Extended Chomsky Hierarchy Reloaded

Context-free wwR

P

anbncn

NP Recognizable Not Recognizable H H

Decidable

Presburger arithmetic NP-complete SAT

Not finitely describable ?

2S*

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 anbn

… … … … …

Finite {a,b}

… … … … …

PH BPP

slide-65
SLIDE 65
slide-66
SLIDE 66
slide-67
SLIDE 67
slide-68
SLIDE 68
slide-69
SLIDE 69
slide-70
SLIDE 70

The “Complexity Zoo” Class inclusion diagram

  • Currently 493 named classes!
  • Interactive, clickable map
  • Shows class subset relations

Legend: http://www.math.ucdavis.edu/~greg/zoology/diagram.xml Scott Aaronson

slide-71
SLIDE 71
slide-72
SLIDE 72

2S*

Recognizable Decidable Polynomial space Exponential space Deterministic exponential time Non-deterministic exponential time

slide-73
SLIDE 73

Polynomial space

Deterministic polynomial time Non-deterministic polynomial time Non-deterministic linear time Non-deterministic linear space Polynomial time hierarchy Interactive proofs Bounded-error probabilistic polynomial time

slide-74
SLIDE 74

Deterministic polynomial time Deterministic linear time Poly-logarithmic time Context-sensitive Deterministic context-free Regular Deterministic logarithmic space Non-deterministic logarithmic space Empty set Context free

slide-75
SLIDE 75

… … … … … … … … … …

PSPACE-complete QBF

The Extended Chomsky Hierarchy Reloaded

Context-free wwR

P

anbncn

NP Recognizable Not Recognizable H H

Decidable

Presburger arithmetic NP-complete SAT

Not finitely describable ?

2S*

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 anbn

… … … … …

Finite {a,b}

… … … … …

PH BPP