# NP-Complete **A class of decision problems to which any [[Nondeterministic Polynomial Time|NP]] problem can be [[Polynomial Time Reduction|polynomially reduced]] and is also decidable.** > [!Example] NP-Complete > A decision problem $C$ is *NP-complete* if: > - when the answer is 'yes', there exists a *solution* that is polynomial in length. > - whether or not a solution is correct can be *verified* in *polynomial time*. > - it can be used to *simulate* every other problem whose solutions can be verified in polynomial time. > > Alternatively, an NP-complete problem is both an NP and an [[NP-hard]] problem. The meaning of "complete" is that any solution to an NP-complete problem can also completely solve all other NP problems. ![[NPEulerDiagram.svg]]