prabhas chongstitvatana1 np-complete proofs the circuit satisfiability proof of np- completeness...

15
Prabhas Chongstitvatana 1 NP-complete proofs The circuit satisfiability proof of NP-completeness relies on a direct proof that L p CIRCUIT- SAT for every L NP. Lemma 36.8 If L is a language such that L’ p L for some L’ NPC, then L is NP-hard. Moreover, if L NP, then L NPC.

Upload: martin-ford

Post on 01-Jan-2016

213 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: Prabhas Chongstitvatana1 NP-complete proofs The circuit satisfiability proof of NP- completeness relies on a direct proof that L  p CIRCUIT-SAT for every

Prabhas Chongstitvatana 1

NP-complete proofs

The circuit satisfiability proof of NP-completeness relies on a direct proof that L p CIRCUIT-SAT for every L NP.

Lemma 36.8

If L is a language such that L’ p L for some L’ NPC, then L is NP-hard. Moreover, if L NP, then L NPC.

Page 2: Prabhas Chongstitvatana1 NP-complete proofs The circuit satisfiability proof of NP- completeness relies on a direct proof that L  p CIRCUIT-SAT for every

Prabhas Chongstitvatana 2

1. Prove L NP

2. Select a known NP-complete language L’

3. Descrive an algorithm that compute f mapping every instance of L’ to an instance of L.

4. Prove f satisfies x L’ iff f(x) L x {0,1}*

5. Prove that the algorithm computing f runs in polynomial time.

Page 3: Prabhas Chongstitvatana1 NP-complete proofs The circuit satisfiability proof of NP- completeness relies on a direct proof that L  p CIRCUIT-SAT for every

Prabhas Chongstitvatana 3

NP-complete problems

SAT = { <Phi> | Phi is a satisfiable boolean formula }

Theorem 36.9

SAT NP-complete

Proof : SAT NP (show a certificate can be verified in polynomial time),

CIRCUIT-SAT p SAT

Page 4: Prabhas Chongstitvatana1 NP-complete proofs The circuit satisfiability proof of NP- completeness relies on a direct proof that L  p CIRCUIT-SAT for every

Prabhas Chongstitvatana 4

3-CNF-SAT

CNF conjunctive normal form (AND of Ored-clauses) to simplify reduction algorithm

3-CNF-SAT NP, SAT p 3-CNF-SAT

CLIQUE = { <G,K> | G is a graph with a clique of size k }

A clique in an undirected graph G = (V,E) is a subset V’ V of vertices each pair of which is connected by an edge in E (a clique is a complete subgraph of G).

Page 5: Prabhas Chongstitvatana1 NP-complete proofs The circuit satisfiability proof of NP- completeness relies on a direct proof that L  p CIRCUIT-SAT for every

Prabhas Chongstitvatana 5

u

w

x

v

y

z

CLIQUE NP; 3-CNF-SAT p CLIQUE

Page 6: Prabhas Chongstitvatana1 NP-complete proofs The circuit satisfiability proof of NP- completeness relies on a direct proof that L  p CIRCUIT-SAT for every

Prabhas Chongstitvatana 6

VERTEX-COVER = { <G,k> | graph G has vertex cover of size k }

A vertex cover of an undirected graph G = (V,E) is a subset V’ V such that if (u,v) E, then u V’ or v V’ (or both).

VERTEX-COVER NP;

CLIQUE p VERTEX-COVER

Page 7: Prabhas Chongstitvatana1 NP-complete proofs The circuit satisfiability proof of NP- completeness relies on a direct proof that L  p CIRCUIT-SAT for every

Prabhas Chongstitvatana 7

SUBSET-SUM = { <S, t> | there exists a subset S’ S such that t =

'Ss

s

Example : if S = {1, 4, 16, 64, 256, 1040, 1041, 1093, 1284, 1344} and t = 3754. The subset S’ = {1, 6, 64, 256, 1040, 1093, 1284 } is a solution.

SUBSET-SUM NP;

VERTEX-COVER p SUBSET-SUM

Page 8: Prabhas Chongstitvatana1 NP-complete proofs The circuit satisfiability proof of NP- completeness relies on a direct proof that L  p CIRCUIT-SAT for every

Prabhas Chongstitvatana 8

HAM-CYCLE = {<G> | G is a hamitonian graph }

HAM-CYLE NP;

3-CNF-SAT p HAM-CYCLE

TSP = {<G,c,k> | G = (V,E) is a complete graph, c is a function from V V Z, k Z, and G has a traveling-saleman tour with cost at most k }

An integer cost c(i,j) to travel from city i to city j. A tour is a hamiltonian cycle.

TSP NP; HAM-CYCLE p TSP

Page 9: Prabhas Chongstitvatana1 NP-complete proofs The circuit satisfiability proof of NP- completeness relies on a direct proof that L  p CIRCUIT-SAT for every

Prabhas Chongstitvatana 9

CIRCUIT-SAT

3-CNF-SAT

SAT

TSP

HAM-CYCLECLIQUE

VERTEX-COVER

SUBSET-SUM

Page 10: Prabhas Chongstitvatana1 NP-complete proofs The circuit satisfiability proof of NP- completeness relies on a direct proof that L  p CIRCUIT-SAT for every

Prabhas Chongstitvatana 10

Unsolvable

A set with as many elements as the integers is called countably infinite.

Not every infinite set is countable.

Let’s show that there are computationally unsolvable problems. The subset of problems can be described by boolean functions on the integers; f such that f(n) is 0/1.

Page 11: Prabhas Chongstitvatana1 NP-complete proofs The circuit satisfiability proof of NP- completeness relies on a direct proof that L  p CIRCUIT-SAT for every

Prabhas Chongstitvatana 11

Suppose the set of all such functions is countably infinite. There is a correspondence between each function and each integer.

0 1 1 0 0 1 1 . .

. . .

f i

n

f i ( n )

By diagonalization, we can show that at least one boolean function cannot be in this list.

Page 12: Prabhas Chongstitvatana1 NP-complete proofs The circuit satisfiability proof of NP- completeness relies on a direct proof that L  p CIRCUIT-SAT for every

Prabhas Chongstitvatana 12

If every program is a finite string of symbols, each chosen from a single finite alphabet, then it is possible to show that the set of all programs is countably infinite.

So there is more problems than there are programs to solve them. Thus, at least one function is not describable as the output of any program, so it is computationally unsolvable.

Page 13: Prabhas Chongstitvatana1 NP-complete proofs The circuit satisfiability proof of NP- completeness relies on a direct proof that L  p CIRCUIT-SAT for every

Prabhas Chongstitvatana 13

Example : A simple system such as Presburger arithmetic, is a formal system of the positive integers together with addition and equality alone. Deciding whether a statement in this system is true is in the length of the statement.

n22

Page 14: Prabhas Chongstitvatana1 NP-complete proofs The circuit satisfiability proof of NP- completeness relies on a direct proof that L  p CIRCUIT-SAT for every

Prabhas Chongstitvatana 14

Unsolvable relativized unsolvable (oracle machines)Solvable provably infeasible (Presburger arithmetic) probably infeasible (satisfiability) feasible hard (normal optimization problems) easy (normal computer science problems) randomized easy (primality testing) really easy (sorting)

Page 15: Prabhas Chongstitvatana1 NP-complete proofs The circuit satisfiability proof of NP- completeness relies on a direct proof that L  p CIRCUIT-SAT for every

Prabhas Chongstitvatana 15

Solving hard problems

Relax the problem -- use approx. algo.

Relax the method -- use probabilistic algo and give up total correctness

Relax the architecture -- use parallel

Relax the machine -- use analog computer ?