CUUS063 main CUUS063 Goldreich 978 0 521 88473 0 March 31, 2008 18:49
2.1. THE P VERSUS NP QUESTION
Note that for any search problem R in PC, the set of instances that have a solution with
respect to R (i.e., the set S
R
def
={x : R(x) =∅})isinNP. Specifically, for any R ∈ PC,
consider the verification procedure V such that V (x, y)
def
= 1 if and only if (x, y) ∈R, and
note that the latter condition can be decided in poly(|x|)-time. Thus, any search problem
in PC can be viewed as a problem of searching for (efficiently verifiable) proofs (i.e.,
NP-witnesses for membership in the set of instances having solutions). On the other hand,
any NP-proof system gives rise to a natural search problem in PC; that is, the problem of
searching for a valid proof (i.e., an NP-witness) for the given instance (i.e, the verification
procedure V yields the search problem that corresponds to R ={(x, y):V (x, y)=1}).
Thus, S ∈ NP if and only if there exists R ∈ PC such that S ={x : R(x) =∅}.
Teaching note: The last paragraph suggests another easy way of showing that natural decision
problems are in NP: just thinking of the corresponding natural search problem. The point is
that natural decision problems (in NP) are phrased as referring to whether a solution exists
for the corresponding natural search problem. For example, in the case of
SAT, the question is
whether there exists a satisfying assignment to a given Boolean formula, and the corresponding
search problem is finding such an assignment. But in all these cases, it is easy to check the
correctness of solutions; that is, the corresponding search problem is in PC, which implies
that the decision problem is in NP.
Observe that P ⊆ NP holds: A verification procedure for claims of membership in
a set S ∈ P may just ignore the alleged NP-witness and run the decision procedure
that is guaranteed by the hypothesis S ∈ P; that is, V (x, y) = A(x), where A is the
aforementioned decision procedure. Indeed, the latter verification procedure is quite an
abuse of the term (because it makes no use of the proof); however, it is a legitimate one.
As we shall shortly see, the P-vs-NP Question refers to the question of whether such
proof-oblivious verification procedures can be used for every set that has some efficiently
verifiable proof system. (Indeed, given that P ⊆ NP, the P-vs-NP Question is whether
NP ⊆ P.)
2.1.2.3. The P Versus NP Question in Terms of Decision Problems
Is it the case that NP-proofs are useless? That is, is it the case that for every efficiently
verifiable proof system one can easily determine the validity of assertions without looking
at the proof? If that were the case, then proofs would be meaningless, because they would
offer no fundamental advantage over directly determining the validity of the assertion.
The conjecture P = NP asserts that proofs are useful: There exists sets in NP that
cannot be decided by a polynomial-time algorithm, and so for these sets obtaining a proof
of membership (for some instances) is useful (because we cannot efficiently determine
membership by ourselves).
In the foregoing paragraph we viewed P = NPas asserting the advantage of obtaining
proofs over deciding the truth by ourselves. That is, P = NP asserts that (in some cases)
verifying is easier than deciding. A slightly different perspective is that P = NP asserts
that finding proofs is harder than verifying their validity. This is the case because, for any
set S that has an NP-proof system, the ability to efficiently find proofs of membership
with respect to this system (i.e., finding an NP-witness of membership in S for any given
x ∈ S), yields the ability to decide membership in S. Thus, for S ∈ NP \ P, it must be
53