• 沒有找到結果。

The Proof: Negative Examples

N/A
N/A
Protected

Academic year: 2022

Share "The Proof: Negative Examples"

Copied!
45
0
0

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

全文

(1)

Exponential Circuit Complexity for NP-Complete Problems

We shall prove exponential lower bounds for NP-complete problems using monotone circuits.

Monotone circuits are circuits without ¬ gates.

Note that this does not settle the P vs. NP problem or any of the conjectures on p. 544.

(2)

The Power of Monotone Circuits

Monotone circuits can only compute monotone boolean functions.

They are powerful enough to solve a P-complete problem, monotone circuit value (p. 266).

There are NP-complete problems that are not monotone;

they cannot be computed by monotone circuits at all.

There are NP-complete problems that are monotone;

they can be computed by monotone circuits.

– hamiltonian path and clique.

(3)

clique

n,k

cliquen,k is the boolean function deciding whether a graph G = (V, E) with n nodes has a clique of size k.

The input gates are the ¡n

2

¢ entries of the adjacency matrix of G.

Gate gij is set to true if the associated undirected edge { i, j } exists.

cliquen,k is a monotone function.

Thus it can be computed by a monotone circuit.

(4)

Crude Circuits

One possible circuit for cliquen,k does the following.

1. For each S ⊆ V with |S| = k, there is a circuit with O(k2) ∧-gates testing whether S forms a clique.

2. We then take an or of the outcomes of all the ¡n

k

¢ subsets S1, S2, . . . , S(nk).

This is a monotone circuit with O(k2¡n

k

¢) gates, which is exponentially large unless k or n − k is a constant.

A crude circuit CC(X1, X2, . . . , Xm) tests if any of Xi ⊆ V forms a clique.

The above-mentioned circuit is CC(S1, S2, . . . , S(nk)).

(5)

The Proof: Positive Examples

Analysis will be applied to only positive examples and negative examples as inputs.

A positive example is a graph that has ¡k

2

¢ edges connecting k nodes in all possible ways.

There are ¡n

k

¢ such graphs.

They all should elicit a true output from cliquen,k.

(6)

The Proof: Negative Examples

Color the nodes with k − 1 different colors and join by an edge any two nodes that are colored differently.

There are (k − 1)n such graphs.

They all should elicit a false output from cliquen,k. – Each set of k nodes must have 2 identically colored

nodes; hence there is no edge between them.

(7)

Positive and Negative Examples with k = 5

$SRVLWLYHH[DPSOH $QHJDWLYHH[DPSOH

(8)

Sunflowers

Fix p ∈ Z+ and ` ∈ Z+.

A sunflower is a family of p sets {P1, P2, . . . , Pp}, called petals, each of cardinality at most `.

Furthermore, all pairs of sets in the family must have the same intersection (called the core of the sunflower).

FRUH

(9)

A Sample Sunflower

{{1, 2, 3, 5}, {1, 2, 6, 9}, {0, 1, 2, 11}, {1, 2, 12, 13}, {1, 2, 8, 10}, {1, 2, 4, 7}}.



Æ¿³È

É¿³Ì

Ë¿³Äà ǿ³Ê

ÿ³ÄÄ ÄÅ¿³ÄÆ

(10)

The Erd˝os-Rado Lemma

Lemma 83 Let Z be a family of more than M = (p − 1)``!

nonempty sets, each of cardinality ` or less. Then Z must contain a sunflower (with p petals).

Induction on `.

For ` = 1, p different singletons form a sunflower (with an empty core).

Suppose ` > 1.

Consider a maximal subset D ⊆ Z of disjoint sets.

Every set in Z − D intersects some set in D.

(11)

The Proof of the Erd˝os-Rado Lemma (continued)

For example,

Z = {{1, 2, 3, 5}, {1, 3, 6, 9}, {0, 4, 8, 11}, {4, 5, 6, 7}, {5, 8, 9, 10}, {6, 7, 9, 11}}, D = {{1, 2, 3, 5}, {0, 4, 8, 11}}.

(12)

The Proof of the Erd˝os-Rado Lemma (continued)

Suppose D contains at least p sets.

D constitutes a sunflower with an empty core.

Suppose D contains fewer than p sets.

Let C be the union of all sets in D.

| C | ≤ (p − 1)`.

C intersects every set in Z by D’s maximality.

There is a d ∈ C that intersects more than

M

(p−1)` = (p − 1)`−1(` − 1)! sets in Z.

Consider Z0 = {Z − {d} : Z ∈ Z, d ∈ Z}.

(13)

The Proof of the Erd˝os-Rado Lemma (concluded)

(continued)

Z0 has more than M0 = (p − 1)`−1(` − 1)! sets.

M0 is just M with ` replaced with ` − 1.

Z0 contains a sunflower by induction, say {P1, P2, . . . , Pp}.

– Now,

{P1 ∪ {d}, P2 ∪ {d}, . . . , Pp ∪ {d}}

is a sunflower in Z.

(14)

Comments on the Erd˝os-Rado Lemma

A family of more than M sets must contain a sunflower.

Plucking a sunflower means replacing the sets in the sunflower by its core.

By repeatedly finding a sunflower and plucking it, we can reduce a family with more than M sets to a family with at most M sets.

If Z is a family of sets, the above result is denoted by pluck(Z).

Note: pluck(Z) is not unique.

(15)

An Example of Plucking

Recall the sunflower on p. 700:

Z = {{1, 2, 3, 5}, {1, 2, 6, 9}, {0, 1, 2, 11}, {1, 2, 12, 13}, {1, 2, 8, 10}, {1, 2, 4, 7}}

Then

pluck(Z) = {{1, 2}}.

(16)

Razborov’s Theorem

Theorem 84 (Razborov (1985)) There is a constant c such that for large enough n, all monotone circuits for cliquen,k with k = n1/4 have size at least ncn1/8.

We shall approximate any monotone circuit for cliquen,k by a restricted kind of crude circuit.

The approximation will proceed in steps: one step for each gate of the monotone circuit.

Each step introduces few errors (false positives and false negatives).

But the final crude circuit has exponentially many errors.

(17)

The Proof

Fix k = n1/4.

Fix ` = n1/8.

Note thata

2 µ`

2

≤ k − 1.

p will be fixed later to be n1/8 log n.

Fix M = (p − 1)``!.

– Recall the Erd˝os-Rado lemma (p. 701).

aCorrected by Mr. Moustapha Bande (D98922042) on January 05,

(18)

The Proof (continued)

Each crude circuit used in the approximation process is of the form CC(X1, X2, . . . , Xm), where:

Xi ⊆ V .|Xi| ≤ `.

m ≤ M .

It answers true if any Xi is a clique.

We shall show how to approximate any circuit for cliquen,k by such a crude circuit, inductively.

The induction basis is straightforward:

Input gate gij is the crude circuit CC({i, j}).

(19)

The Proof (continued)

Any monotone circuit can be considered the or or and of two subcircuits.

We shall show how to build approximators of the overall circuit from the approximators of the two subcircuits.

We are given two crude circuits CC(X ) and CC(Y).

X and Y are two families of at most M sets of nodes, each set containing at most ` nodes.

– We construct the approximate or and the approximate and of these subcircuits.

– Then show both approximations introduce few errors.

(20)

The Proof: or

CC(X ∪ Y) is equivalent to the or of CC(X ) and CC(Y).

A set of nodes C ∈ X ∪ Y is a clique if and only if C ∈ X is a clique or C ∈ Y is a clique.

Violations in using CC(X ∪ Y) occur when |X ∪ Y| > M .

Such violations can be eliminated by using CC(pluck(X ∪ Y))

as the approximate or of CC(X ) and CC(Y).

(21)

The Proof: or

If CC(Z) is true, then CC(pluck(Z)) must be true.

The quick reason: If Y is a clique, then a subset of Y must also be a clique.

For each Y ∈ X ∪ Y, there must exist at least one X ∈ pluck(X ∪ Y) such that X ⊆ Y .

If Y is a clique, then this X is also a clique.

We now bound the number of errors this approximate or makes on the positive and negative examples.

(22)

The Number of False Negatives (concluded)

Y

X

(23)

The Proof: or (concluded)

CC(pluck(X ∪ Y)) introduces a false positive if a

negative example makes both CC(X ) and CC(Y) return false but makes CC(pluck(X ∪ Y)) return true.

CC(pluck(X ∪ Y)) introduces a false negative if a positive example makes either CC(X ) or CC(Y) return true but makes CC(pluck(X ∪ Y)) return false.

How many false positives and false negatives are introduced by CC(pluck(X ∪ Y))?

(24)

The Number of False Positives

Lemma 85 CC(pluck(X ∪ Y)) introduces at most

M

p−1 2−p(k − 1)n false positives.

A plucking replaces the sunflower {Z1, Z2, . . . , Zp} with its core Z.

A false positive is necessarily a coloring such that:

– There is a pair of identically colored nodes in each petal Zi (and so both crude circuits return false).

– But the core contains distinctly colored nodes.

This implies at least one node from each same-color pair was plucked away.

We now count the number of such colorings.

(25)

Proof of Lemma 85 (continued)

(26)

Proof of Lemma 85 (continued)

Color nodes V at random with k − 1 colors and let R(X) denote the event that there are repeated colors in set X.

Now prob[R(Z1) ∧ · · · ∧ R(Zp) ∧ ¬R(Z)] is at most prob[R(Z1) ∧ · · · ∧ R(Zp)|¬R(Z)]

=

Yp i=1

prob[R(Zi)|¬R(Z)] ≤ Yp i=1

prob[R(Zi)]. (12)

First equality holds because R(Zi) are independent given ¬R(Z) as Z contains their only common nodes.

– Last inequality holds as the likelihood of repetitions in Zi decreases given no repetitions in Z ⊆ Zi.

(27)

Proof of Lemma 85 (continued)

Consider two nodes in Zi.

The probability that they have identical color is k−11 .

Now prob[ R(Zi) ] ≤ (|Zi|2 )

k−1 (2`)

k−1 12.

So the probabilitya that a random coloring is a new false positive is at most 2−p by inequality (12).

As there are (k − 1)n different colorings, each plucking introduces at most 2−p(k − 1)n false positives.

aProportion, i.e.

(28)

Proof of Lemma 85 (concluded)

Recall that | X ∪ Y | ≤ 2M .

pluck(X ∪ Y) ends the moment the set system contains

≤ M sets.

Each plucking reduces the number of sets by p − 1.

Hence at most p−1M pluckings occur in pluck(X ∪ Y).

At most

M

p − 1 2−p(k − 1)n false positives are introduced.a

aNote that the numbers of errors are added not multiplied. Recall that we count how many new errors are introduced by each approximation step. Contributed by Mr. Ren-Shuo Liu (D98922016) on January 5, 2010.

(29)

The Number of False Negatives

Lemma 86 CC(pluck(X ∪ Y)) introduces no false negatives.

A plucking replaces sets in a crude circuit by their (common) subset.

This makes the test for cliqueness less stringent (p. 712).

(30)

The Proof: and

The approximate and of crude circuits CC(X ) and CC(Y) is

CC(pluck({Xi ∪ Yj : Xi ∈ X , Yj ∈ Y, |Xi ∪ Yj| ≤ `})).

We now count the number of errors this approximate and makes on the positive and negative examples.

(31)

The Proof: and (concluded)

The approximate and introduces a false positive if a negative example makes either CC(X ) or CC(Y) return false but makes the approximate and return true.

The approximate and introduces a false negative if a positive example makes both CC(X ) and CC(Y) return true but makes the approximate and return false.

How many false positives and false negatives are introduced by the approximate and?

(32)

The Number of False Positives

Lemma 87 The approximate and introduces at most M22−p(k − 1)n false positives.

We prove this claim in stages.

CC({Xi ∪ Yj : Xi ∈ X , Yj ∈ Y}) introduces no false positives.

If Xi ∪ Yj is a clique, both Xi and Yj must be

cliques, making both CC(X ) and CC(Y) return true.

CC({Xi ∪ Yj : Xi ∈ X , Yj ∈ Y, |Xi ∪ Yj| ≤ `}) introduces no additional false positives because we are testing fewer sets for cliqueness.

(33)

Proof of Lemma 87 (concluded)

| {Xi ∪ Yj : Xi ∈ X , Yj ∈ Y, |Xi ∪ Yj| ≤ `} | ≤ M2.

Each plucking reduces the number of sets by p − 1.

So pluck({Xi ∪ Yj : Xi ∈ X , Yj ∈ Y, |Xi ∪ Yj| ≤ `}) involves ≤ M2/(p − 1) pluckings.

Each plucking introduces at most 2−p(k − 1)n false positives by the proof of Lemma 85 (p. 715).

The desired upper bound is

[ M2/(p − 1) ] 2−p(k − 1)n ≤ M22−p(k − 1)n.

(34)

The Number of False Negatives

Lemma 88 The approximate and introduces at most M2¡n−`−1

k−`−1

¢ false negatives.

We again prove this claim in stages.

CC({Xi ∪ Yj : Xi ∈ X , Yj ∈ Y}) introduces no false negatives.

Suppose both CC(X ) and CC(Y) accept a positive example with a clique of size k.

This clique must contain an Xi ∈ X and a Yj ∈ Y.

This is why both CC(X ) and CC(Y) return true.

As the clique contains Xi ∪ Yj, the new circuit returns true.

(35)

Proof of Lemma 88 (continued)

Yj Xi

Clique of size k

(36)

Proof of Lemma 88 (continued)

CC({Xi ∪ Yj : Xi ∈ X , Yj ∈ Y, |Xi ∪ Yj| ≤ `}) introduces

≤ M2¡n−`−1

k−`−1

¢ false negatives.

Deletion of set Z = Xi ∪ Yj larger than ` introduces false negatives only if Z is part of a clique.

– There are ¡n−|Z|

k−|Z|

¢ such cliques.

It is the number of positive examples whose clique contains Z.

– ¡n−|Z|

k−|Z|

¢ ¡n−`−1

k−`−1

¢ as |Z| > `.

There are at most M2 such Zs.

(37)

Proof of Lemma 88 (concluded)

Plucking introduces no false negatives.

Recall that if CC(Z) is true, then CC(pluck(Z)) must be true (p. 712).

(38)

Two Summarizing Lemmas

From Lemmas 85 (p. 715) and 87 (p. 723), we have:

Lemma 89 Each approximation step introduces at most M22−p(k − 1)n false positives.

From Lemmas 86 (p. 720) and 88 (p. 725), we have:

Lemma 90 Each approximation step introduces at most M2¡n−`−1

k−`−1

¢ false negatives.

(39)

The Proof (continued)

The above two lemmas show that each approximation step introduces “few” false positives and false negatives.

We next show that the resulting crude circuit has “a lot” of false positives or false negatives.

(40)

The Final Crude Circuit

Lemma 91 Every final crude circuit is:

1. Identically false—thus wrong on all positive examples.

2. Or outputs true on at least half of the negative examples.

Suppose it is not identically false.

By construction, it accepts at least those graphs that have a clique on some set X of nodes, with | X | ≤ `, which at n1/8 is less than k = n1/4.

The proof of Lemma 85 (p. 715ff) shows that at least half of the colorings assign different colors to nodes in X.

So half of the negative examples have a clique in X and are accepted.

(41)

The Proof (continued)

Recall the constants on p. 708: k = n1/4, ` = n1/8, p = n1/8 log n, M = (p − 1)``! < n(1/3)n1/8 for large n.

Suppose the final crude circuit is identically false.

– By Lemma 90 (p. 729), each approximation step introduces at most M2¡n−`−1

k−`−1

¢ false negatives.

– There are ¡n

k

¢ positive examples.

– The original monotone circuit for cliquen,k has at least

¡n

k

¢ M2¡n−`−1

k−`−1

¢ ≥ 1 M2

µn − ` k

`

≥ n(1/12)n1/8

(42)

The Proof (concluded)

Suppose the final crude circuit is not identically false.

– Lemma 91 (p. 731) says that there are at least (k − 1)n/2 false positives.

– By Lemma 89 (p. 729), each approximation step introduces at most M22−p(k − 1)n false positives – The original monotone circuit for cliquen,k has at

least

(k − 1)n/2

M22−p(k − 1)n = 2p−1

M2 ≥ n(1/3)n1/8 gates.

(43)

Alexander Razborov (1963–)

(44)

P 6= NP Proved?

Razborov’s theorem says that there is a monotone language in NP that has no polynomial monotone circuits.

If we can prove that all monotone languages in P have polynomial monotone circuits, then P 6= NP.

But Razborov proved in 1985 that some monotone languages in P have no polynomial monotone circuits!

(45)

Finis

參考文獻

相關文件

• If we repeatedly run both Monte Carlo algorithms, eventually one definite answer will come (unlike RP). – A positive answer from the one without

• Color the nodes representing literals by their truth values (color 0 for false and color 1 for true).. – We are dealing with the a-triangles here, not the

• The  ArrayList class is an example of a  collection class. • Starting with version 5.0, Java has added a  new kind of for loop called a for each

Project 1.3 Use parametric bootstrap and nonparametric bootstrap to approximate the dis- tribution of median based on a data with sam- ple size 20 from a standard normal

A) the approximate atomic number of each kind of atom in a molecule B) the approximate number of protons in a molecule. C) the actual number of chemical bonds in a molecule D)

Study the following statements. Put a “T” in the box if the statement is true and a “F” if the statement is false. Only alcohol is used to fill the bulb of a thermometer. An

• The particles of the atom are the negative electron, the positive proton, and the uncharged neutron.. • Protons and neutrons make up the tiny dense nucleus

Key words: theory of the nature of the mind, the Buddha nature, one who possesses a gotra, non-resultant activity which is neither positive nor negative and is able