Presentation is loading. Please wait.

Presentation is loading. Please wait.

§5 Structural Complexity: NPc

Similar presentations


Presentation on theme: "§5 Structural Complexity: NPc"— Presentation transcript:

1 §5 Structural Complexity: NPc
Comparing Problems: polynomial-time reduction Reductions: CLIQUE p IS ≼p SAT p 3SAT ≼p IS NP-completeness, Master Reduction coNP, Ladner's Theorem

2 Comparing Problems, again
CLIQUE = { G,k | G contains a k-clique } IS={ G,k : G has k pairwise non-connected vertices} p N N f L L' LC L'C For L,L'N write L≼ L' if exists a computable f: NN such that x: xL  f(x)L'. polynomial-time p a) L'P  LP a) L' decidable  so L. b) L ≼ L' ≼ L''  L≼ L'' p p p

3 Reduction IS ≼p SAT Let G consist of vertices V={1,..,n} and edges E.
Goal: Upon input of (the encoding of) a graph G and kN, produce in polynomial time a CNF formula  such that:  satisfiable iff G contains ≥k independent vertices Let G consist of vertices V={1,..,n} and edges E. Consider Boolean variables xv,i, v  V, i=1...k and clauses Ki := vV xv,i, i=1...k and xv,i  xv,j, v  V, 1≤i<j≤k and xu,i  xv,j, {u,v}  E, 1≤i<j≤k Length of : O(k·n+n·k2+n2k2)=O(n2k2) Computational cost of (G,k) → : polyn. in n+log k Vertex v is #i among the k independent. There is an i-th vertex Vertex v cannot be both #i and #j. No adjacent vertices are independent. since k≤n.

4 Example Reduction: 4SAT vs. 3SAT
4-SAT: Is formula Φ(Y) in 4-CNF satisfiable? 3-SAT: Is formula Φ(Y) in 3-CNF satisfiable? Given  = (a  b  c  d)  (p  q  r  s)  … with literals a,b,c,d, p,q,r,s,…. Introduce new variables u,v,… and consider ' := ( a  b  u )  (u  c  d )  ( p  q  v)  (v   r  s )  … variables, possibly negated f:   ' For L,L'N write L≼ L' if exists a computable f: NN such that x: xL  f(x)L'.

5 Reduction 3SAT ≼p IS (k,1) (1,1) (k,2) (1,2) (k,3) (1,3)
Produce, given a 3-CNF term , within polynomial time a graph G and integer k such that it holds: iff G contains k pairwise non-adjacent vertices.  is satisfiable e.g. ( u .... )  ( .. u .. )  ( .. .. u )  ( u  .. .. )  = C1  C2 …  Ck, Ci = xi1  xi2  xi3, xis literals V:= { (i,1),…(i,3): i≤k }, E:= { {(i,s),(j,t)} : i=j or xis= xjt } (k,1) (k,2) (k,3) (1,1) (1,2) (1,3) Richard Karp

6 Problems of similar complexity
unknown yet Showed: CLIQUE p IS ≼p SAT p 3SAT ≼p IS. These 4 problem have about same complexity: Either all are belong to P, or none of them. We will show: Also TSP, HC, VC and many further problems in NP belong to this class called NPc. And will show: These are ‘hardest‘ problems in NP. Cook–Levin Theorem: L 2 NP : L ≼p SAT. That is, either all or none of the problems in NPc can be decided in polynomial time. A deterministic WHILE+ program could simulate any non-deterministic one with polynomial slowdown! In the first case:

7 EXP Complexity Class Picture PSPACE CH #P PH PNP co-NP NP P
Def: ANP is NP-complete if L ≼p A holds for every LNP. PSPACE complete PSPACE Theorem (Cook'72/Levin'71): SAT is NP-complete! CH #P PH Lemma: For A NP-complete and A ≼p B NP, B is also NPc. PNP coNP-complete NP- complete co-NP NP Now know ≈500 natural problems NP-complete… P

8 unSAT := {  Boolean term, x: (x)=0 }  coNPc
Scenarios for P≠NP coNP := { LN : N\L  NP } unSAT := {  Boolean term, x: (x)=0 }  coNPc Theorem [Ladner'75]: If P≠NP, there exists LNP \ (PNPc) NP = coNP P = coP coNPc NPc NP coNP NP coNP P NP coNP P = coP

9 Master Reductions L = {xN: y, ℓ(y)≤poly(ℓ(x)), x,yV }, VP
SAT = {  :  Boolean term, y1,…ym: (y1,…ym)=1} Cook/Levin Theorem: SAT is NP-complete! Proof (Sketch): Fix LNP and VP. Fix WHILE+ program B deciding V in time poly(n). Express "bin(z0,…zk-1)V" as Boolean term "k(z0,…zk-1)=1" of length poly(k). Then bin(x0,…xn-1)L  y0,…ym-1{0,1}: n+k(x, y)=1. N x →  := n+k(bin(x), · ) Thm: The following problem UNP is NP-complete: { A,x,2N : nondetermin. WHILE+ program A accepts input x within at most N steps } L = {xN: y, ℓ(y)≤poly(ℓ(x)), x,yV }, VP

10 SubsetSum is NP-complete
{ a1,…aN,b | a1,…aN,bN, 1,…N{0,1} : b=i ai·i } SubsetSumNP √ Show: 3SAT ≼p SubsetSum In polyn.time: 3CNF  → AN and bN s.t. satisf. assignm. of   BA: b=aB a Eg. Φ = (x1  x3  x5)  (x1  x5  x4)  (x2  x2  x5) v1 := v2 := v3 := v4 := v5 := v1' := v2' := v3' := v4' := v5' := b := c1:= d1:= c2:= d2:= c3:= d3:= m clauses in n var.s → 2n+2m+1 values à n+m dec.digits A NP-complete, BNP and A ≼p B  B also NP-complete.


Download ppt "§5 Structural Complexity: NPc"

Similar presentations


Ads by Google