computation

Definition

NP-hard Problem

A problem is called NP-hard if every problem in NP can be reduced to it in polynomial time, i.e.:

NP-complete vs. NP-hard

The primary reason a problem is NP-hard but not NP-complete is that is fails the key requirement being in NP, namely, that a proposed solution (“certificate”) an be verified in polynomial time.

Examples:

Approximation

Suppose we still want to solve an NP-hard Problem