Computational Complexity: Lecture 6 on Nondeterministic Time and Hierarchy, Study notes of Computational Methods

A lecture note from cs221: computational complexity course, taught by prof. Salil vadhan. The sixth lecture covers the topic of nondeterministic time and hierarchy. The relationship between nondeterministic time classes, such as ntime and npspace, and their complements. It also introduces the concept of padding and its implications on the time hierarchy theorem. The document also touches upon the relationships between time and space complexity.

Typology: Study notes

2010/2011

Uploaded on 10/28/2011

thecoral
thecoral 🇺🇸

4.5

(30)

395 documents

1 / 3

Toggle sidebar

This page cannot be seen from the preview

Don't miss anything!

bg1
CS221: Computational Complexity Prof. Salil Vadhan
Lecture 6: Nondeterministic Time
Oct. 2, 2002 Scribe: Arthur Rudolph
Contents
1 Nondeterministic Time 1
2 Nondeterministic Time Hierarchy 2
3 Relationships between Resources 3
1 Nondeterministic Time
NTIME(f(n)) leads to NP,NEXP
NSPACE(f(n)) leads to NL,NPSPACE next week
For a complexity class C:
co-C={¯
L:L C}(6=¯
C)
It is clear that P=co-P,L=co-L,etc. (deterministic algorithms can flip their answer), but
NP ?
=co-NP,NL ?
=co-NL,NPSPACE ?
=co-NPSPACE are intriguing questions. Problems
in co-NP:
Unsatisfiability ={ϕ:¬∃as.t. ϕa) = 1}
Tautology ={ϕ:¯(¯a) = 1}
If NP =co-NP, then every tautology has a short proof. (This observation has led to an entire
area, called Proof Complexity, that studies the lengths of proofs.)
Proposition 1 If NP 6=co-NP then P6=NP
1.1 What about NEXP?
Exp-Proof ={(ϕ, n
|{z}
binary
) : ϕis math. thm. with a proof of length n} NEXP
NEXP is like NP but with succinct inputs (equivalently, with exponentially long certificates).
Proposition 2 EXP 6=NEXP P6=NP
We prove this using a simple but useful technique called padding.
1
pf3

Partial preview of the text

Download Computational Complexity: Lecture 6 on Nondeterministic Time and Hierarchy and more Study notes Computational Methods in PDF only on Docsity!

CS221: Computational Complexity Prof. Salil Vadhan

Lecture 6: Nondeterministic Time

Oct. 2, 2002 Scribe: Arthur Rudolph

Contents

1 Nondeterministic Time 1

2 Nondeterministic Time Hierarchy 2

3 Relationships between Resources 3

1 Nondeterministic Time

  • NTIME(f (n)) leads to NP, NEXP
  • NSPACE(f (n)) leads to NL, NPSPACE ←− next week

For a complexity class C: co-C = { L¯ : L ∈ C}( 6 = C¯)

It is clear that P = co-P, L = co-L, etc. (deterministic algorithms can flip their answer), but

NP =? co-NP, NL =? co-NL, NPSPACE =? co-NPSPACE are intriguing questions. Problems in co-NP:

Unsatisfiability = {ϕ : ¬∃a s.t. ϕ(¯a) = 1} Tautology = {ϕ : ∀¯aϕ(¯a) = 1}

If NP = co-NP, then every tautology has a short proof. (This observation has led to an entire area, called Proof Complexity, that studies the lengths of proofs.)

Proposition 1 If NP 6 = co-NP then P 6 = NP

1.1 What about NEXP?

Exp-Proof = {(ϕ, (^) ︸︷︷︸n binary

) : ϕ is math. thm. with a proof of length ≤ n} ∈ NEXP

NEXP is like NP but with succinct inputs (equivalently, with exponentially long certificates).

Proposition 2 EXP 6 = NEXP ⇒ P 6 = NP

We prove this using a simple but useful technique called padding.

Proof: We prove the contrapositive: P = NP ⇒ EXP = NEXP. Assume P = NP. Let L ∈ NEXP. Then it is decided by a NTM M running in time 2n c

. Define

Lpad = {(x, 12 |x|c ) : x ∈ L}

Claim 3 Lpad ∈ NP

Proof of claim: On input (x, 1 k), check k = 2|x|c , if not reject. Otherwise, simulate M on x and behave the same. §

By our assumption, we then have Lpad ∈ P, with poly-time alg A.

Claim 4 L ∈ EXP

Proof of claim: Given x, run A((x, 12 |x|c )) ←time poly (|x|, 2 |x|

c ) ≤ 2 |x| c′ §

More generally, with padding we can prove:

Proposition 5 If f (n), g(n) ≥ n proper, then

TIME(f (n)) = NTIME(f (n)) ⇒ TIME(f (g(n))) = NTIME(f (g(n)))

Padding is even more general:

  • Applies to any pair of resources, bounds need not be same.
  • “Equality (or inclusion) translates upwards, inequality (or separation) translates downwards.”

2 Nondeterministic Time Hierarchy

Such a thing exists even though we can’t flip output (don’t know if closed under complement).

Theorem 6 If f (n), g(n) ≥ n proper, g(n) = ω(f (n)) then NTIME(f (n)) ( NTIME(g(n))

Proof Sketch: For f (n) = n^2 , g(n) = n^3. The technique we’ll use is called “Lazy Diagonaliza- tion.” Divide N into huge intervals, define n 1 = 1 and ni+1 = 2n (^4) i for i > 1. Define Ii = [ni, ni+1]. Construct n^3 time NTM M , diagonalize against Mi somewhere in Ii.

M (x):

  • If x 6 ∈ 1 ∗, reject.
  • If x = 1n, say n ∈ Ii:
    • If n < ni+1, simulate M i on 1n+1^ for (n + 1)^2 steps and do the same.
    • If n = ni+1, compute whether Mi accepts or rejects 1ni^ (within n^2 i steps) and do opposite. Do this by enumerating over all 2O(n (^2) i ) ≤ O(ni+1) computations of length n^2 i.