• 沒有找到結果。

The Proof (concluded)

N/A
N/A
Protected

Academic year: 2022

Share "The Proof (concluded)"

Copied!
52
0
0

加載中.... (立即查看全文)

全文

(1)

Another Variant of 3sat

Proposition 32 3sat is NP-complete for expressions in which each variable is restricted to appear at most three times, and each literal at most twice. (3sat here requires only that each clause has at most 3 literals.)

Consider a general 3sat expression in which x appears k times.

Replace the first occurrence of x by x1, the second by x2, and so on, where x1, x2, . . . , xk are k new variables.

(2)

The Proof (concluded)

Add (¬x1 ∨ x2) ∧ (¬x2 ∨ x3) ∧ · · · ∧ (¬xk ∨ x1) to the expression.

– This is logically equivalent to

x1 ⇒ x2 ⇒ · · · ⇒ xk ⇒ x1.

– Note that each clause above has fewer than 3 literals.

The resulting equivalent expression satisfies the condition for x.

(3)

An Example

Suppose we are given the following 3sat expression

· · · (¬x ∨ w ∨ g) ∧ · · · ∧ (x ∨ y ∨ z) · · · .

The transformed expression is

· · · (¬x1∨w∨g)∧· · ·∧(x2∨y∨z) · · · (¬x1∨x2)∧(¬x2∨x1).

Variable x1 appears thrice.

Literal x1 appears once.

Literal ¬x1 appears twice.

(4)

2sat and Graphs

Let φ be an instance of 2sat: Each clause has 2 literals.

Define graph G(φ) as follows:

– The nodes are the variables and their negations.

Insert edges (¬α, β) and (¬β, α) for clause α ∨ β.

For example, if x ∨ ¬y ∈ φ, add (¬x, ¬y) and (y, x).

Two edges are added for each clause.

Think of the edges as ¬α ⇒ β and ¬β ⇒ α.

b is reachable from a iff ¬a is reachable from ¬b.

Paths in G(φ) are valid implications.

(5)

(x

1

∨ x

2

) ∧ (x

1

∨ ¬x

3

) ∧ (¬x

1

∨ x

2

) ∧ (x

2

∨ x

3

)

¬[

¬[

¬[ [

[

[

(6)

Properties of G(φ)

Theorem 33 φ is unsatisfiable if and only if there is a variable x such that there are paths from x to ¬x and from

¬x to x in G(φ).

The expression on p. 285 can be satisfied by setting x1 = true, x2 = true.

Note on p. 285, there is a path from ¬x2 to x2, but none from x2 to ¬x2.

(7)

2sat Is in NL ⊆ P

NL is a subset of P (p. 197).

By Eq. (3) on p. 207, coNL equals NL.

We need to show only that recognizing unsatisfiable expressions is in NL.

In nondeterministic logarithmic space, we can test the conditions of Theorem 33 (p. 286) by guessing a variable x and testing if ¬x is reachable from x and if ¬x can reach x.

– See the algorithm for reachability (p. 101).

(8)

Generalized 2sat: max2sat

Consider a 2sat expression.

Let K ∈ N.

max2sat is the problem of whether there is a truth assignment that satisfies at least K of the clauses.

max2sat becomes 2sat when K equals the number of clauses.

max2sat is an optimization problem.

max2sat ∈ NP: Guess a truth assignment and verify

(9)

max2sat Is NP-Complete

a

Consider the following 10 clauses:

(x) ∧ (y) ∧ (z) ∧ (w)

(¬x ∨ ¬y) ∧ (¬y ∨ ¬z) ∧ (¬z ∨ ¬x) (x ∨ ¬w) ∧ (y ∨ ¬w) ∧ (z ∨ ¬w)

Let the 2sat formula r(x, y, z, w) represent the conjunction of these clauses.

How many clauses can we satisfy?

The clauses are symmetric with respect to x, y, and z.

(10)

The Proof (continued)

All of x, y, z are true: By setting w to true, we satisfy 4 + 0 + 3 = 7 clauses, whereas by setting w to false, we satisfy only 3 + 0 + 3 = 6 clauses.

Two of x, y, z are true: By setting w to true, we satisfy 3 + 2 + 2 = 7 clauses, whereas by setting w to false, we satisfy 2 + 2 + 3 = 7 clauses.

(11)

The Proof (continued)

One of x, y, z is true: By setting w to false, we satisfy 1 + 3 + 3 = 7 clauses, whereas by setting w to true, we satisfy only 2 + 3 + 1 = 6 clauses.

None of x, y, z is true: By setting w to false, we satisfy 0 + 3 + 3 = 6 clauses, whereas by setting w to true, we satisfy only 1 + 3 + 0 = 4 clauses.

(12)

The Proof (continued)

Any truth assignment that satisfies x ∨ y ∨ z can be extended to satisfy 7 of the 10 clauses and no more.

Any other truth assignment can be extended to satisfy only 6 of them.

The reduction from 3sat φ to max2sat R(φ):

For each clause Ci = (α ∨ β ∨ γ) of φ, add group r(α, β, γ, wi) to R(φ).

If φ has m clauses, then R(φ) has 10m clauses.

Set K = 7m.

(13)

The Proof (concluded)

We now show that K clauses of R(φ) can be satisfied if and only if φ is satisfiable.

Suppose 7m clauses of R(φ) can be satisfied.

– 7 clauses must be satisfied in each group because each group can have at most 7 clauses satisfied.

Hence all clauses of φ must be satisfied.

Suppose all clauses of φ are satisfied.

Each group can set its wi appropriately to have 7 clauses satisfied.

(14)

Michael R. Garey (1945–)

(15)

David S. Johnson (1945–)

(16)

Larry Stockmeyer (1948–2004)

(17)

naesat

The naesat (for “not-all-equal” sat) is like 3sat.

But there must be a satisfying truth assignment under which no clauses have the three literals equal in truth value.

– Each clause must have one literal assigned true and one literal assigned false.

(18)

naesat Is NP-Complete

a

Recall the reduction of circuit sat to sat on p. 226.

It produced a CNF φ in which each clause has at most 3 literals.

Add the same variable z to all clauses with fewer than 3 literals to make it a 3sat formula.

Goal: The new formula φ(z) is nae-satisfiable if and only if the original circuit is satisfiable.

aKarp (1972).

(19)

The Proof (continued)

Suppose T nae-satisfies φ(z).

T also nae-satisfies φ(z).¯

Under T or ¯T , variable z takes the value false.

– This truth assignment must still satisfy all clauses of φ.

– So it satisfies the original circuit.

(20)

The Proof (concluded)

Suppose there is a truth assignment that satisfies the circuit.

Then there is a truth assignment T that satisfies every clause of φ.

Extend T by adding T (z) = false to obtain T0. – T0 satisfies φ(z).

So in no clauses are all three literals false under T0. – Under T0, in no clauses are all three literals true.

Review the detailed construction on p. 227 and

(21)

Richard Karp (1935–)

(22)

Undirected Graphs

An undirected graph G = (V, E) has a finite set of nodes, V , and a set of undirected edges, E.

It is like a directed graph except that the edges have no directions and there are no self-loops.

Use [ i, j ] to denote the fact that there is an edge between node i and node j.

(23)

Independent Sets

Let G = (V, E) be an undirected graph.

I ⊆ V .

I is independent if whenever i, j ∈ I, there is no edge between i and j.

The independent set problem: Given an undirected graph and a goal K, is there an independent set of size K?

– Many applications.

(24)

independent set Is NP-Complete

This problem is in NP: Guess a set of nodes and verify that it is independent and meets the count.

If a graph contains a triangle, any independent set can contain at most one node of the triangle.

We consider graphs whose nodes can be partitioned into m disjoint triangles.

– If the special case is hard, the original problem must be at least as hard.

We will reduce 3sat to independent set.

(25)

The Proof (continued)

Let φ be an instance of 3sat with m clauses.

We will construct graph G (with constraints as said) with K = m such that φ is satisfiable if and only if G has an independent set of size K.

There is a triangle for each clause with the literals as the nodes.

Add additional edges between x and ¬x for every variable x.

(26)

(x

1

∨ x

2

∨ x

3

) ∧ (¬x

1

∨ ¬x

2

∨ ¬x

3

) ∧ (¬x

1

∨ x

2

∨ x

3

)

»[

»[ »[

[

[ [

»[

[ [

Same literals that appear in different clauses are on distinct nodes.

(27)

The Proof (continued)

Suppose G has an independent set I of size K = m.

An independent set can contain at most m nodes, one from each triangle.

An independent set of size m exists if and only if it contains exactly one node from each triangle.

Truth assignment T assigns true to those literals in I.

T is consistent because contradictory literals are connected by an edge, hence not both in I.

T satisfies φ because it has a node from every triangle, thus satisfying every clause.

(28)

The Proof (concluded)

Suppose a satisfying truth assignment T exists for φ.

– Collect one node from each triangle whose literal is true under T .

– The choice is arbitrary if there is more than one true literal.

This set of m nodes must be independent by construction.

Literals x and ¬x cannot be both assigned true.

(29)

Other independent set-Related NP-Complete Problems

Corollary 34 independent set is NP-complete for 4-degree graphs.

Theorem 35 independent set is NP-complete for planar graphs.

Theorem 36 (Garey and Johnson (1977))

independent set is NP-complete for 3-degree planar graphs.

(30)

node cover

We are given an undirected graph G and a goal K.

node cover: Is there is a set C with K or fewer nodes such that each edge of G has at least one of its

endpoints in C?

(31)

node cover Is NP-Complete

Corollary 37 node cover is NP-complete.

I is an independent set of G = (V, E) if and only if V − I is a node cover of G.

I

(32)

clique

We are given an undirected graph G and a goal K.

clique asks if there is a set C with K nodes such that whenever i, j ∈ C, there is an edge between i and j.

(33)

clique Is NP-Complete

Corollary 38 clique is NP-complete.

Let ¯G be the complement of G, where [x, y] ∈ ¯G if and only if [x, y] 6∈ G.

I is an independent set in G ⇔ I is a clique in ¯G.

(34)

min cut and max cut

A cut in an undirected graph G = (V, E) is a partition of the nodes into two nonempty sets S and V − S.

The size of a cut (S, V − S) is the number of edges between S and V − S.

min cut ∈ P by the maxflow algorithm.

max cut asks if there is a cut of size at least K.

K is part of the input.

(35)
(36)

min cut and max cut (concluded)

max cut has applications in VLSI layout.

– The minimum area of a VLSI layout of a graph is not less than the square of its maximum cut size.a

aRaspaud, S´ykora, and Vrˇto (1995); Mak and Wong (2000).

(37)

max cut Is NP-Complete

a

We will reduce naesat to max cut.

Given an instance φ of 3sat with m clauses, we shall construct a graph G = (V, E) and a goal K such that:

There is a cut of size at least K if and only if φ is nae-satisfiable.

Our graph will have multiple edges between two nodes.

– Each such edge contributes one to the cut if its nodes are separated.

aGarey, Johnson, and Stockmeyer (1976).

(38)

The Proof

Suppose φ’s m clauses are C1, C2, . . . , Cm.

The boolean variables are x1, x2, . . . , xn.

G has 2n nodes: x1, x2, . . . , xn, ¬x1, ¬x2, . . . , ¬xn.

Each clause with 3 distinct literals makes a triangle in G.

For each clause with two identical literals, there are two parallel edges between the two distinct literals.

No need to consider clauses with one literal (why?).

For each variable xi, add ni copies of edge [xi, ¬xi], where ni is the number of occurrences of xi and ¬xi in φ.a

(39)

»[

M

[

L

[

L

»[

L

Q

L

FRSLHV [

L

[

M

»[

N

(40)

The Proof (continued)

Set K = 5m.

Suppose there is a cut (S, V − S) of size 5m or more.

A clause (a triangle or two parallel edges) contributes at most 2 to a cut no matter how you split it.

Suppose both xi and ¬xi are on the same side of the cut.

Then they together contribute at most 2ni edges to the cut as they appear in at most ni different clauses.

(41)

»[L [L

QLØWULDQJOHVÙ Q LSDUDOOHOOLQHV

(42)

The Proof (continued)

Changing the side of a literal contributing at most ni to the cut does not decrease the size of the cut.

Hence we assume variables are separated from their negations.

The total number of edges in the cut that join opposite literals is P

i ni = 3m.

The total number of literals is 3m.

(43)

The Proof (concluded)

The remaining 2m edges in the cut must come from the m triangles or parallel edges that correspond to the

clauses.

As each can contribute at most 2 to the cut, all are split.

A split clause means at least one of its literals is true and at least one false.

The other direction is left as an exercise.

(44)

»[

»[

»[ [

[

[

(x1 ∨ x2 ∨ x2) ∧ (x1 ∨ ¬x3 ∨ ¬x3) ∧ (¬x1 ∨ ¬x2 ∨ x3).

(45)

»[

»[

»[ [

[

[ WUXH

IDOVH

(x1 ∨ x2 ∨ x2) ∧ (x1 ∨ ¬x3 ∨ ¬x3) ∧ (¬x1 ∨ ¬x2 ∨ x3).

(46)

Remarks

We had proved that max cut is NP-complete for multigraphs.

How about proving the same thing for simple graphs?a

For 4sat, how do you modify the proof?b

aContributed by Mr. Tai-Dai Chou (J93922005) on June 2, 2005.

bContributed by Mr. Chien-Lin Chen (J94922015) on June 8, 2006.

(47)

max bisection

max cut becomes max bisection if we require that

|S| = |V − S|.

It has many applications, especially in VLSI layout.

(48)

max bisection Is NP-Complete

We shall reduce the more general max cut to max bisection.

Add |V | = n isolated nodes to G to yield G0.

G0 has 2n nodes.

As the new nodes have no edges, moving them around contributes nothing to the cut.

(49)

The Proof (concluded)

Every cut (S, V − S) of G = (V, E) can be made into a bisection by appropriately allocating the new nodes between S and V − S.

Hence each cut of G can be made a cut of G0 of the same size, and vice versa.

(50)

bisection width

bisection width is like max bisection except that it asks if there is a bisection of size at most K (sort of min bisection).

Unlike min cut, bisection width remains NP-complete.

A graph G = (V, E), where |V | = 2n, has a bisection of size K if and only if the complement of G has a bisection of size n2 − K.

So G has a bisection of size ≥ K if and only if its complement has a bisection of size ≤ n2 − K.

(51)

Illustration

(52)

hamiltonian path Is NP-Complete

a

Theorem 39 Given an undirected graph, the question whether it has a Hamiltonian path is NP-complete.

aKarp (1972).

參考文獻

相關文件

• Suppose the input graph contains at least one tour of the cities with a total distance at most B. – Then there is a computation path for

• As the binary quadratic programming program is NP-hard in general, identifying polynomially solvable subclasses of binary quadratic programming problems not only offers the-

When we know that a relation R is a partial order on a set A, we can eliminate the loops at the vertices of its digraph .Since R is also transitive , having the edges (1, 2) and (2,

In this project, we discovered a way to make a triangle similar to a target triangle that can be inscribed in any given triangle. Then we found that every triangle we’ve made in a

It has been well-known that, if △ABC is a plane triangle, then there exists a unique point P (known as the Fermat point of the triangle △ABC) in the same plane such that it

We will give a quasi-spectral characterization of a connected bipartite weighted 2-punctually distance-regular graph whose halved graphs are distance-regular.. In the case the

Miroslav Fiedler, Praha, Algebraic connectivity of graphs, Czechoslovak Mathematical Journal 23 (98) 1973,

We give a quasi- spectral characterization of a connected bipartite weighted 2-punctually distance- regular graph whose halved graphs are distance-regular.. In the case the