Download presentation
Presentation is loading. Please wait.
Published byAustin Henderson Modified over 9 years ago
1
NP-Completeness Note. Some illustrations are taken from (KT) Kleinberg and Tardos. Algorithm Design (DPV)Dasgupta, Papadimitriou, and Vazirani. Algorithms
2
Decision problems Decision problem. X is a set of strings. Instance: string s. Algorithm A solves problem X: A(s) = yes iff s X. Polynomial time. Algorithm A runs in poly-time if for every string s, A(s) terminates in at most p(|s|) "steps", where p( ) is some polynomial.
3
NP Def. Algorithm C(s, t) is a certifier for problem X if for every string s, s X iff there exists a string t such that C(s, t) = yes. NP. Decision problems for which there exists a poly-time certifier. Remark. NP stands for nondeterministic polynomial-time.
4
Polynomial transformations Def. Problem X polynomial transforms to problem Y if given any input x to X, we can construct in polynomial time an input y to Y such that x is a yes instance of X iff y is a yes instance of Y. Notation. X ≤ P Y Algorithm for X Algorithm for Y xy Transf. yes no
5
NP-completeness Def. Problem Y is NP-complete if Y is in NP and for every problem X in NP, X P Y. Theorem. Suppose Y is an NP-complete problem. Then Y is solvable in polynomial time iff P = NP.
6
Circuit satisfiability 10??? output inputs hard-coded inputs yes: 1 0 1 KT
7
Proving NP-completeness Fact (Transitivity of p ). If X P Y and Y P Z, then X P Z. Theorem. Problem Y is NP-complete if Y is in NP and There exists some NP-complete problem X such that X P Y. Proof. By def. of NP and transitivity of P.
8
Map of reductions CIRCUIT-SAT 3-SAT DIR-HAM-CYCLEINDEPENDENT SET VERTEX COVER 3-SAT reduces to INDEPENDENT SET GRAPH 3-COLOR HAM-CYCLE TSP SUBSET-SUM SCHEDULING PLANAR 3-COLOR SET COVER KT
9
3-SAT P INDEPENDENT SET DPV
10
3-SAT P DIR-HAM-CYCLE s t clause node x1x1 x2x2 x3x3 3k + 3 KT
11
3-SAT P 3-COLOR T B F true false base Variable gadgets. Ensure that i.each literal is T or F and ii.a literal and its negation are opposites. KT
12
3-SAT P 3-COLOR Clause gadgets. Ensure that at least one literal in each clause is T. TF B 6-node gadget true false KT
13
3-SAT P SUBSET SUM dummies to get clause columns to sum to 4 y x z 000010 000200 000100 001001 010011 010100 100101 100010 001110 xyzC1C1 C2C2 C3C3 000002 000001 000020 111444 x x y y z z W KT
14
CIRCUIT SAT P SAT For each gate g in the circuit, create a variable g. Model g using a few clauses: If g is the output gate, we force it to be true by adding the clause (g). DPV
15
A NP, A P CIRCUIT SAT Since A NP, there is an algorithm C(s,t) such that: C checks, given an instance s and a proposed solution t, whether or not t is a solution of s. C runs in polynomial time. In polynomial time, build a circuit D such that: Known inputs of D are the bits of s. Unknown inputs of D are the bits of t. C’s answer is given at the output gate of D. Size of D is polynomial in the number of inputs. D‘s output is true if and only if t is a solution of s.
16
Example: Does G have an independent set of size 2? u-v 1 independent set of size 2? hard-coded inputs (graph description) u-w 0 v-w 1 u ? v ? w ? set of size 2? both endpoints of some edge have been chosen? independent set? u vw G = (V, E), n = 3 KT
Similar presentations
© 2025 SlidePlayer.com. Inc.
All rights reserved.