Information Technology Reference
In-Depth Information
Exercise
1. Show that the CLIQUE problem (defined in Exercise 2) isNP-complete by giving
a reduction to it from propositional CNF formula satisfiability.
2. A vertex cover for an undirected graph G is a subset S of vertices such that for
each edge
. Given an undirected graph G
and a number k as input the VC problem is to decide if G has a vertex cover of
size at most k . Show that VC is NP-complete. The graph G is given by either its
adjacency list or adjacency matrix.
(
u
,v)
of G we have
{
u
,v }∩
S
=∅
1.2 Inside NP
Thus, within the class NP we have polynomial-time solvable problems on the one
hand, which is the subclass P. At the other extreme, we have NP-complete problems,
of which there are abundantly many [ GJ79 ], because most natural optimization prob-
lems that arise in practice and we wish to solve efficiently turn out to be NP-complete.
A natural question that arises is whether NP contains other problems. The answer to
this question is given by Ladner's theorem which states that if P
NP then there are
problems in NP that are neither in P nor NP-complete. We discuss a proof attributed
to Russell Impagliazzo [ DF03 ].
=
Theorem 2.1 (Ladner's theorem)[ Lad75 ] If P
=
NP there is a problem A
NP that
is neither in P nor NP -complete.
Proof By assumption the NP-complete problem SAT is not in P. Following standard
notation [ BDG88 , Pap94 ], let DTIME
denote the class of languages accepted
by deterministic Turing machines that halt in time bounded by g(
[ g(
n
) ]
n
)
on inputs of
length n . Now, if we knew that SAT
DTIME
[ g(
n
) ]
for some fixed superpolynomial
n log n , then we can easily find a language A
function g(
n
)
, for example g(
n
) =
NP
that is neither in P nor NP-complete. Indeed, let
log log
|
x
|
x 01 | x |
A
:= {
|
x
SAT
} .
NP because given a string of the form x 01 k we can guess and verify a
satisfying assignment for the SAT instance x and check in polynomial time that the
pad 1 k
Clearly, A
p
m A via some
log log
|
x
| . Suppose A is NP-complete. Then SAT
|
|
is of length
x
polynomial-time computable reduction f . Notice that
log log | x |
x 01 | x |
x
x
SAT
⃒⃐
f
(
x
) =
A
⃒⃐
SAT
.
c for some constant c and hence
Since f is polynomial-time computable,
|
f
(
x
) |≤|
x
|
x | < |
|
x
|
for all but finitely many instances x
SAT. Thus, it suffices to check if the
smaller instance x
SAT. Repeatedly applying this argument gives a polynomial-
time procedure for SAT contradicting P
=
NP. Hence A cannot be NP-complete.
Search WWH ::




Custom Search