Information Technology Reference
In-Depth Information
ˇ p ( | x | ) denotes strings of length at most p
( |
| )
ˇ
where
x
over
. In other words, the
complexity class NP consists of languages L such x
L has a polynomial-size
certificate y of membership in L , and the certificate is polynomial-time verifiable by
checking if
x
,
y
A .
Exercise Show that the following decision problems are in the class NP:
1. Given an undirected graph G and a number k as input, decide if G has a clique of
size at least k (known as the CLIQUE problem). The graph G is given by either
its adjacency list or adjacency matrix.
2. Given a positive integer m (encoded in binary) decide if it is composite.
3. Given a system of linear equations Ax
b over rationals, where the rational
entries of the matrix A and column vector b are encoded in binary, decide if it has
a solution.
=
ˇ is said to be
We now formally define NP-completeness. A language L
NP-complete if L is in NP and each L
NP is polynomial-time many-one reducible
to L .
Since polynomial-time reducibility between languages is a transitive relation,
once a language L is shown NP-complete, it suffices to show that L is polynomial-
time many-one reducible to L in order to prove that the language L in NP is also
NP-complete. A problem that can be directly shown NP-complete is the following:
1 t
K
={
M
,
x
,
|
M accepts x in at most t steps
} ,
where M in the above definition denotes the Turing machine code (as a list of quin-
tuples) of a nondeterministic Turing machine.
Exercise Show that K is NP-complete. (Hint: In order to show K is in NP you will
need to use a suitable universal Turing machine).
But the first problem shown NP-complete by Cook and Levin was a natural prob-
lem, known as the satisfiability problem for propositional formulas, which opened
the floodgate to NP-complete problems and the subject of computational complexity.
Theorem 1.2 (Cook-Levin theorem) [ Coo71 , Lev73 ] The satisfiability problem for
propositional formulas is NP-complete.
A propositional formula F is in conjunctive normal form (CNF in short) if F
=
C 1
C m where each C i is an OR of variables or their negations. The proof
of the Cook-Levin theorem actually shows the stronger result that the satisfiability
problem for propositional CNF formulas is NP-complete.
Clearly, NP-complete problems are the hardest problems in NP and all NP-
complete problems are polynomial-time equivalent. That is to say, if a polynomial-
time algorithm is discovered for any NP-complete problem then we have a
polynomial-time algorithm for any problem in NP. Whether P equals NP or not
is the central open problem in computational complexity.
C 2 ∧···∧
Search WWH ::




Custom Search