Why NP is nice [cpsc/why-NP]

We’ll spend the next couple of lectures talking about NP. Why?

Because nondeterministic Turing machines are ridiculously impractical!

Many problems that we’re interested in have the form L={x:∃y,|y|≤|x|c,Vaccepts(x,y)}L = \left\{ {x:\exists y,|y| \leq |x|^{c},V\ \text{accepts}\ \left( {x,y} \right)} \right\} (where xx is the problem input and yy is the object we are seeking).

Efficient test: is yy a valid solution?

We showed 3COLOR ∈\in NP

Np (complexity class) has lots of problems that are interesting and nice to solve, but that we don’t know of any polynomial time solution. But: if any of these problems are in P, then all of them are in P. NP-completeness!