NP Completeness - UML Computer Science

NP Completeness
Jie Wang
University of Massachusetts Lowell
Department of Computer Science
J. Wang (UMass Lowell)
NP Completeness
1 / 21
Complexity Upper Bound
The study of algorithms typically follows two directions:
Seek more efficient algorithms. That is, try to reduce the complexity
upper bound for solving a computational problem.
2 Establish the fact that there are no better algorithms for solving a
given problem. That is, provide a nontrivial complexity lower bound for
solving a computational problem.
1
We have seen a wide range of algorithm design principles and
techniques in the first direction, which form a toolbox for tackling
algorithmic problems.
J. Wang (UMass Lowell)
NP Completeness
2 / 21
Complexity Lower Bound
We now deal with the second direction.
It is customary to view polynomial-time algorithms as efficient.
In practice, most problems that can be solved in polynomial time can
indeed be solved in time that is a low-degree polynomial of the input
size.
How do we know if a problem cannot be solved by a polynomial-time
algorithm?
J. Wang (UMass Lowell)
NP Completeness
3 / 21
Turing Machines
Unlike in the first direction we use random-access machines as our
computation model for its programmability, we will use Turing machines
for the study of complexity lower bound.
J. Wang (UMass Lowell)
NP Completeness
4 / 21
P and NP
J. Wang (UMass Lowell)
NP Completeness
5 / 21
Polynomial-Time Reductions
J. Wang (UMass Lowell)
NP Completeness
6 / 21
NP Completeness
J. Wang (UMass Lowell)
NP Completeness
7 / 21
Bounded Halting (BH)
J. Wang (UMass Lowell)
NP Completeness
8 / 21
BH Is NP-Complete
J. Wang (UMass Lowell)
NP Completeness
9 / 21
Bounded Tiling (BT)
J. Wang (UMass Lowell)
NP Completeness
10 / 21
BT Is NP-Complete
J. Wang (UMass Lowell)
NP Completeness
11 / 21
Proof Continued
J. Wang (UMass Lowell)
NP Completeness
12 / 21
Proof Continued
J. Wang (UMass Lowell)
NP Completeness
13 / 21
Boolean Satisfiability (SAT)
J. Wang (UMass Lowell)
NP Completeness
14 / 21
Cook’s Theorem
J. Wang (UMass Lowell)
NP Completeness
15 / 21
Proof Continued
J. Wang (UMass Lowell)
NP Completeness
16 / 21
Proof Continued
J. Wang (UMass Lowell)
NP Completeness
17 / 21
Proof Continued
J. Wang (UMass Lowell)
NP Completeness
18 / 21
3SAT
J. Wang (UMass Lowell)
NP Completeness
19 / 21
3SAT Is NP-Complete
Theorem 7. 3SAT is NP-complete.
J. Wang (UMass Lowell)
NP Completeness
20 / 21
Proof
J. Wang (UMass Lowell)
NP Completeness
21 / 21
Proof Continued
J. Wang (UMass Lowell)
NP Completeness
22 / 21