Intractability: P, NP, NP-Complete
Total Page:16
File Type:pdf, Size:1020Kb
����� Intractability P,NP,NP-Complete 3-SAT ET -S AT poly-time reduces NDEPENDENT Tyler Moore 3-S to I CSE 3353, SMU, Dallas, TX INDEPENDENT-SET DIR-HAM-CYCLE GRAPH-3-COLOR SUBSET-SUM Lecture 20 VERTEX-COVER HAM-CYCLE PLANAR-3-COLOR SCHEDULING Some slides created by or adapted from Dr. Kevin Wayne. For more information see http://www.cs.princeton.edu/~wayne/kleinberg-tardos. Some code reused from Python Algorithms by Magnus Lie SET-COVER TSP 3-SAT poly-time reduces to all of Hetland. these problems (and many, many more) 2 2 / 36 ����������������� Decision problem. 8. INTRACTABILITY II �Problem � is a set of strings. �Instance ��is one string. ‣ P vs. NP �Algorithm � solves problem �: ���������� iff ��∈��. ‣ NP-complete Def. Algorithm � runs in polynomial time if for every string �, ���� ‣ co-NP terminates in at most ���������� "steps", where ��⋅� is some polynomial. ‣ NP-hard length of s Ex. Problem PRIMES�������������������������������������������������. ����������� � �Instance �������������������������. �AKS algorithm PRIMES in �������������steps� 3 3 / 36 4 / 36 ������������ � �� P. Decision problems for which there is a poly-time algorithm. Certification algorithm intuition. �Certifier views things from "managerial" viewpoint. �Certifier doesn't determine whether ��∈�� on its own; Problem Description Algorithm yes no rather, it checks a proposed proof � that ��∈��. ULTIPLE M Is � a multiple of ��? grade-school division 51, 17 51, 16 Def. Algorithm ������� is a certifier for problem � if for every string �, ��∈�� iff there exists a string � such that �������������. REL-PRIME Are � and � relatively prime ? Euclid (300 BCE) 34, 39 34, 51 "certificate" or "witness" PRIMES Is � prime ? AKS (2002) 53 51 Def. �� is the set of problems for which there exists a poly-time certifier. Is the edit distance between dynamic niether acgggt EDIT-DISTANCE ������� is a poly-time algorithm. � and � less than 5 ? programming neither ttttta � Certificate ��is of polynomial size: ������≤������������ for some polynomial ��⋅� ⎡� � �⎤� ⎡� �⎤� ⎡� � �⎤� ⎡�⎤ � Gauss-Edmonds ⎢� ⎥� ⎢� ⎥� ⎢� ⎥� ⎢� ⎥ Is there a vector � that � � � ���� � � � � ���� � L-SOLVE ⎢� − ⎥� ⎢� ⎥� ⎢� ⎥� ⎢� ⎥ satisfies �������? elimination ⎣⎢� � ��⎦⎥� ⎣⎢���⎦⎥� ⎣⎢� � �⎦⎥� ⎣⎢�⎦⎥ Is there a path between � depth-first search ST-CONN Remark. �� stands for nondeterministic polynomial time. �nd � in a graph ��? (Theseus) 5 6 5 / 36 6 / 36 ������������������������������������� ������������������������������������������� COMPOSITES. Given an integer �, is � composite? 3-SAT. Given a CNF formula Φ, is there a satisfying assignment? Certificate. A nontrivial factor � of �. Such a certificate exists iff � is Certificate. An assignment of truth values to the � boolean variables. composite. Moreover ������≤������. Certifier. Check that each clause in Φ has at least one true literal. Certifier. Check that ��������� and that � is a multiple of ��. ������������������� ������ ���������� Φ���� � ∨� � ∨� � ∧� � ∨� � ∨� � ∧� � ∨� � ∨� � ������������ ����or ��� 437,669 = 541 × 809 �� � � � � � � ������������ ����������������������������������������������� Conclusion. COMPOSITES ∈ ��. Conclusion. 3-SAT ∈ ��. 7 8 7 / 36 8 / 36 ����������������������������������������� ��������������� HAM-PATH. Given an undirected graph ����������, does there exist a simple NP. Decision problems for which there is a poly-time certifier. path � that visits every node? Certificate. A permutation of the � nodes. Problem Description Algorithm yes no ⎡� � �⎤� ⎡� �⎤� ⎡� � �⎤� ⎡�⎤� Is there a vector � that Gauss-Edmonds ⎢� ⎥� ⎢� ⎥� ⎢� ⎥� ⎢� ⎥� L-SOLVE � �−� ���� � � � � ���� � elimination ⎢� ⎥� ⎢� ⎥� ⎢� ⎥� ⎢� ⎥� Certifier. Check that the permutation contains each node in � exactly once, satisfies �������? ⎣⎢� � ��⎦⎥� ⎣⎢���⎦⎥� ⎣⎢� � �⎦⎥� ⎣⎢�⎦⎥� and that there is an edge between each pair of adjacent nodes. COMPOSITES Is � composite ? AKS (2002) 51 53 Does � have a nontrivial factor FACTOR ? (56159, 50) (55687, 50) less than ��? Is there a truth assignment that ����� �����∨����� SAT ? �����∨����� satisfies the formula�? ��������∨����� ��������∨����� 3-COLOR Can the nodes of a graph � be ? colored with 3 colors? ���������� ������������ Is there a simple path between HAM-PATH ? � and � that visits every node? Conclusion. HAM-PATH ∈ ��. 9 10 9 / 36 10 / 36 ������������ �� �������������� NP. Decision problems for which there is a poly-time certifier. P. Decision problems for which there is a poly-time algorithm. NP. Decision problems for which there is a poly-time certifier. EXP. Decision problems for which there is an exponential-time algorithm. Claim. ���⊆����. ������������������������������������������������������������������������� Pf. Consider any problem � ∈ �. ����������������������������������������������������������������������������� �By definition, there exists a poly-time algorithm ���� that solves �. ��������������������������������������������������������������������������� �Certificate ����ε, certifier ��������������. ▪ Claim. ����⊆�����. Pf. Consider any problem � ∈ ��. ������������������������������������������������������������������������ �By definition, there exists a poly-time certifier ������� for �. �To solve input �, run ������� on all strings � with �������≤����������. �Return ��� if ������� returns ��� for any of these potential certificates. ▪ Remark. Time-hierarchy theorem implies ���⊊�����. 11 12 11 / 36 12 / 36 ���������������������������� ���������������������������� Q. How to solve an instance of 3-SAT with � variables? Does P = NP? [Cook 1971, Edmonds, Levin, Yablonski, Gödel] A. Exhaustive search: try all �� truth assignments. Is the decision problem as easy as the certification problem? Q. Can we do anything substantially more clever? Conjecture. No poly-time algorithm for 3-SAT. ��� �� ��� "intractable" � ������ ������≠��� ���������� If yes. Efficient algorithms for 3-SAT, TSP, 3-COLOR, FACTOR, … If no. No efficient algorithms possible for 3-SAT, TSP, 3-COLOR, … Consensus opinion. Probably no. 13 14 13 / 36 14 / 36 ����������������� ����������������� P ≠ NP. P ≠ NP. ������������������������������������������������������������������������ �������������������������������������������������������������������������� ������������������������������������������������������������������������� �������������������������������������������������������������������������� ������������������������������������������������������������������������� ������������������������������������������������������������������ �������������������������������������������������������������������������� �������������������������� ��������������������������������� ���������������������������������������������������������������� ���������������������������������������������������������������������� ���������������������������������������������������������������������� ����������������������������������������������������������������� ��������������������������������������������������������������� ����������������������������������������������������������� ���������������������������������� 15 16 15 / 36 16 / 36 ����������������� ����������������������� P = NP. � = ��, but only Ω������ algorithm for 3-SAT. � ≠ ��, but with ��������� algorithm for 3-SAT. �������������������������������������������������������������������������� � = �� is independent (of ZFC axiomatic set theory). ������������������������������������������������������������������ ����������������������������������������������������������������������� ���������������������������������������������������������� ������������������������������������������������������������������� ������������������������������������������������������������������ ���������������������������������������������������������������� ���������������������������������������������������������������������� ������������������������������������������������������������������ ����������������������������������������������� 17 18 17 / 36 18 / 36 ���������������� ������������������ Millennium prize. $1 million for resolution of ������ problem. Some writers for the Simpsons and Futurama. �J. Steward Burns. ����������������������������������. �David X. Cohen. ���������������������������������������. �Al Jean. ����������������������������������. �Ken Keeler. ������������������������������������������. �Jeff Westbrook. �����������������������������������������. Copyright © 1990, Matt Groening Copyright © 2000, Twentieth Century Fox 19 20 19 / 36 20 / 36 ������������������������� Def. Problem � polynomial (Cook) reduces to problem � if arbitrary 8. INTRACTABILITY II instances of problem � can be solved using: �Polynomial number of standard computational steps, plus ‣ P vs. NP �Polynomial number of calls to oracle that solves problem �. ‣ NP-complete Def. Problem � polynomial (Karp) transforms to problem � if given any ‣ co-NP input � to �, we can construct an input � such that � is a ��� instance of � ‣ NP-hard iff � is a ��� instance of �. we require |y| to be of size polynomial in |x| Note. Polynomial transformation is polynomial reduction with just one call to oracle for �, exactly at the end of the algorithm for �. Almost all previous ����������� reductions were of this form. Open question. Are these two concepts the same with respect to ��? we abuse notation ≤ p and blur distinction 24 21 / 36 22 / 36 ����������� ��������������������� NP-complete. A problem � ∈ �� with the property that for every CIRCUIT-SAT. Given a combinational circuit built from AND, OR, and NOT gates, problem � ∈ ��, ��≤����. is there