CS103
HO#59
SlidesThe CookLevin Theorem
May 28, 2010
1
The Language Class NP
Class NP includes all and only those languages that are
decidable
by a
nondeterministic
Turing machine in
polynomial
time.
NP =
NTIME(n
k
)
k
NP is the class of languages that have
polynomial
time
verifiers
.
Polynomial
:O
(
n
3
)
O(n log n)
Nonpolynomial:
O(n
log n
)
O(2
n
)
Language A is
polynomial time mapping reducible
to language B,
which is written A
P
B, if there is a
polynomial time computable
function
f:
*
* where for every w,
w
A
f(w)
B.
The function f is called the polynomial time reduction of A to B.
To test whether
w
A, we use the
reduction f and test
whether f(w)
B.
This is similar to our
original notion of
reducibility, but now
we are concerned with
the efficiency of the
process.
Polynomial Time Mapping Reductions
TM for f leaves f(w)
on the tape.
AB
f
Polynomial Time Mapping Reductions
polynomial time maps to
decides
A
B
A
P
B
Decidable(B)
Decidable(A)
¬ Decidable(A)
¬ Decidable(B)
Map the
problem to
B
Problem
for A
Decider
for
B
Decider for A
Problem
for b
Decision
for A
Polynomial Time Mapping Reductions
A
B
Theorem 7.31
:
If A
P
B and B
P,
then A
P.
Suppose B has a
polynomial time
solution.
Then so does A.
P
P
Decidable(B)
Decidable(A)
¬ Decidable(A)
¬ Decidable(B)
Map the
problem to
B
Problem
for A
Decider
for
B
Decider for A
Problem
for b
Decision
for A
P
NP
B
A?
This preview has intentionally blurred sections. Sign up to view the full version.
View Full Document
This is the end of the preview. Sign up
to
access the rest of the document.
 Fall '09
 Computational complexity theory, NPcomplete, polynomial time, Language Class NP, B. Theorem

Click to edit the document details