lecture 6 np class. p = ? np = ? pspace they are central problems in computational complexity
TRANSCRIPT
Lecture 6 NP Class
P = ? NP = ? PSPACE
• They are central problems in computational complexity.
If P = NP, then
NP-completeP
Ladner Theorem
• If NP ≠ P, then there exists a set A lying -between P and NP-complete class, i.e., A is in NP, but not in P and not being NP-compete.
Is it true that
a problem belongs to NP iffits solution can be polynomial-time verified
?
Answer: No!
Integer Programming
integer.an is
0
s.t.
max
i
T
x
x
bAx
xc
Decision version of Integer Programming
.0
and
satisfy vector
integeran thereis , and ,,Given
0
0
x
bAx
cxc
x
cbAc
T
.in
gprogrammininteger ofersion decision v
for proof legal anot is thisHowever,
.|| respect to with time
polynomialin esinequaliti osesatisfy th
ether verify wheasy to isit ,Given
NP
x
xx
How to prove a decision problem belonging to NP?
How to design a polynomial-time nondeterministic algorithm?
Hamiltonian Cycle
• Given a graph G, does G contain a Hamiltonian cycle?
• Hamiltonian cycle is a cycle passing every vertex exactly once.
Post office
Nondeterministic Algorithm
• Guess a permutation of all vertices.
• Check whether this permutation gives a cycle. If yes, then algorithm halts.
What is the running time?
Minimum Spanning Tree
• Given an edge-weighted graph G, find a spanning tree with minimum total weight.
• Decision Version: Given an edge-weighted graph G and a positive integer k, does G contains a spanning tree with total weight < k.
Nondeterministic Algorithm
• Guess a spanning tree T.
• Check whether the total weight of T < k.
This is not clear!
How to guess a spanning tree?
• Guess n-1 edges where n is the number of vertices of G.
• Check whether those n-1 edges form a connected spanning subgraph, i.e., there is a path between every pair of vertices.
Co-decision version of MST
• Given an edge-weighted graph G and a positive integer k, does G contain no spanning tree with total weight < k?
Algorithm
• Computer a minimum spanning tree.
• Check whether its weight > k. If yes, the algorithm halts.
co-NP
• co-NP = {A | Σ* - A ε NP}
NP ∩ co-NP
So far, no natural problem has been found in NP ∩ co-NP, but not in P.
P
NP
co-NP
Linear Programming
• Decision version: Given a system of linear inequality, does the system have a solution?
• It was first proved in NP ∩ co-NP and later found in P (1979).
Primality Test
• Given a natural number n, is n a prime?
• It was first proved in NP ∩ co-NP and later found in P (2004).
Therefore
• A natural problem belonging to NP ∩ co-NP is a big sign for the problem belonging to P.
Proving a problem in NP
• In many cases, it is not hard.
• In a few cases, it is not easy.
Integer Programming
• Decision version: Given A and b, does Ax > b contains an integer solution?
• The difficulty is that the domain of “guess” is too large.
Polynomial-time many-one
reduction
A < m B
• A set A in Σ* is said to be polynomial-time many-one reducible to B in Γ* if there exists a polynomial-time computable function f: Σ* → Γ* such that
x ε A iff f(x) ε B.
p
A = Hamiltonian cycle (HC)
• Given a graph G, does G contain a Hamiltonian cycle?
B = decision version of Traveling Salesman Problem (TSP)
• Given n cities and a distance table between these n cities, find a tour (starting from a city and come back to start point passing through each city exactly once) with minimum total length.
• Given n cities, a distance table and k > 0,
does there exist a tour with total length < k?
HC < m TSP
• From a given graph G, we need to construct (n cities, a distance table, k).
p
. formulaBoolean CNF3
3
FF
SATSAT pm
SAT < m 3-SAT
• SAT: Given a Boolean formula F, does F have a satisfied assignment?
• An assignment is satisfied if it makes F =1.
• 3-SAT: Given a 3-CNF F, does F have a satisfied assignment?
p
),,(
))()()((
))(()(
1)(
yxwp
yxwyxwyxwyxw
wyxyxwyxwyxw
yxwyxwyxw
))()()((
),,(
1),,(
yxwyxwyxwyxw
yxwq
yxwqyxwxyw
. '),,(
Then '.in results
variablenew aby replacing case,1st In the
. '),,(
Then '.in results
variablenew aby replacing case,1st In the
literals. twoare and whereor
termacontain must formulaBoolean Every
SATFSATFyxwp
Fw
yx
SATFSATFyxwq
Fw
xy
yxyxxy
F
1))()()((
1
vuwvuwvuwvuw
w
Property of < m
• A < m B and B < m C imply A < m C
• A < m B and B ε P imply A ε P
p
p p p
p
NP-complete
• A set A is NP-hard if for any B in NP,
B < m A.
• A set A is NP-complete if it is in NP and NP-hard.
• A decision problem is NP-complete if its corresponding language is NP-complete.
• An optimization problem is NP-hard if its decision version is NP-hard.
p
Characterization of NP
].,))[(||,(
,|| with for
such that polynomail a and aexist there
ByxnpyyAx
nxx
pPBNPA
:zationcharacteri thisusemay we,reduction construct To SATA pm
].,))[(||}*,1,0{(
,|| with for
such that polynomail a and aexist there
ByxnpyyAx
nxx
pPBNPA
state.) final ain is or
move one through from obtained is (i.e., (c)
state). final ain (i.e.,ion configurat final a is (b)
ion.configurat intial theis (a)
: trueare following the, Now,
)].(|),(|))[(||,()||,(
that satisfying polynomial afor )( where
,...,, ionsconfigurat of consisting moves, )(within
ofn computatio heconsider t ,|| with for ,input On
. bound timepolynomail a with DTM afor )( Suppose
1
11
0
10
ii
iiii
m
m
Byx
nryxqnpyynxx
rnrm
nr
Mnxxyx
qMMLB
Thanks, end