\documentstyle{article} \input{preamble.tex} %% these are from mac90, but are here now. - Thanks Dan \newcommand{\floor}[1]{\lfloor#1\rfloor} \newcommand{\Floor}[1]{\left\lfloor#1\right\rfloor} \newcommand{\ceiling}[1]{\lceil#1\rceil} \newcommand{\Ceiling}[1]{\left\lceil#1\right\rceil} \begin{document} \lecture{15}{April 8, 1997}{Daniel A. Spielman}{Max Rozenoer} \section*{Proof of Razborov's Theorem Continued} \subsection*{Recap of Last Lecture} We start with a recap of last lecture. Razborov's Theorem roughly states that no family of small monotone circuits\footnote{ Circuits with only $\vee$ and $\wedge$ gates.} exists for an NP-complete problem. The approach is the following: Let's say that the problem is the $k-clique$ problem for a graph on $n$ nodes. The method is to approximate with a $clean$ function a circuit that is said to decide instances of the $clique$ of particular size. A $clean$ function is is an $\vee$ of a set of {\em clique indicators} (at most $m$), where each clique indicator is less than size $l$ \footnote{ A {\em clique indicator} is thus an $\wedge$ of at most ${l \choose 2}$ input edges (we can assume without loss of generality that input is a list of edges)}($m$, $l$ and $p$ (see below) to be assigned values later\footnote{ Just to get a notion of the values, \begin{math}m=(p-1)^l*l!\end{math}.}.) %% Evgenij Dodis told me there's a problem with these values... I forgot %% exactly what it was but they seemed to be a little off, according to him The inputs to the circuit are certainly clean functions (trivially, they are $\vee$ of one clique indicator of size 2). We proceed to approximate the whole circuit with a clean function by performing the following operations: Change every $\vee$ in the circuit for $\sqcup$, where $\sqcup$ is defined as \[(f{\sqcup}g) = weed(f{\vee}g),\]where $weed$ is performed as follows: repeatedly $pluck$ sunflowers with at least $p$ petals until at most $m$ clique indicators are left. Change every $\wedge$ in the circuit for $\sqcap$, where $\sqcap$ is defined as \[(f{\sqcap}g) = weed(trim(cover(f{\wedge}g)))\footnote{ Refer to the previous lecture for references on the $pluck$, $trim$ and $cover$ operations, as well as the Sunflower Theorem.},\] \subsection*{Proof Continued} We start with definitions of a {\em minimum positive} set of instances of the $k-clique$ and a {\em maximum negative} set of instances, defined as follows: \begin{eqnarray*} \hbox{POS = graphs on n nodes with exaclty one k-clique and no other edges.} \end{eqnarray*} \begin{eqnarray*} \hbox{NEG = complete k-1 partite graph (nodes divided into at most k-1 colors, }\\ \hbox{an edge exists between any two nodes of different colors.)} \end{eqnarray*} The idea behind these definitions is that we are only going to analyze performance of the clean functions on these sets, rather than all the instances of the $k-clique$, which will simplify the analysis. We will show that, for these sets, a clean function mishandles most of the inputs and, thus, cannot compute $clique$. \begin{lemma} If $f$ is a clean function, then one of the following holds:\\ a) $f$ rejects all graphs (i.e., it's an $\vee$ of an $\emptyset$ of clique indicators). Then, clearly, $f$ mishandles all of the graphs in $POS$.\\ b) $f$ accepts a graph from $NEG$ with probability of \begin{math} (1 - \frac{{l \choose 2}}{k - 1}).\end{math} \\ \end{lemma} \begin{proof} Since $a)$ is trivial, we proceed to the proof of $b)$. The main idea of the proof is to pick a graph from $NEG$ set (a {\em negative test graph}) and show that the probability of the clean function accepting it is $\geq$ \begin{math} (1 - \frac{{l \choose 2}}{k - 1})\end{math}. \\ If the conditions in $a)$ do not hold, then $f$ is an $\vee$ of at least one clique indicator. We assume that it is, in fact, an $\vee$ of exactly one clique indicator, for appearance of more clique indicators would not cause the clean function to accept less instances. Let $S$ be the set of nodes for which the indicator is testing for a clique. %% Allright... this is the doubtful section %% I chose not to deal with the color issue and to cast the whole %% thing in terms of probabilistic arguments only We can choose a negative test graph at random\footnote{The distribution produced is not uniform, but neither does it have to be, since all the results will be obtained relative to the same distribution of the NEG graphs.} by choosing one of $k-1$ colors for each vertex at random, and then setting up the edges as in the definition of $NEG$. If each node $\in$ $S$ gets a different color, the graph will be accepted. What is the probability of this? For 2 particular nodes in $S$, the probability that they are the same color is clearly $\leq$ $\frac{1}{k-1}$ (fix one node, look at the probability that the other is the same color). Then, \begin{center} Prob[$\exists$ 2 nodes in $S$ that get the same color] $\leq$ $\frac{{|S| \choose 2}}{k-1}$ $\leq$ $\frac{{l \choose 2}}{k-1}$.\end{center}\end{proof} Thus, if $\frac{{l \choose 2}}{k-1}$ is relatively small, say $\frac{1}{2}$ (which can be achieved by choosing $l < \sqrt{k}$), then $f$ will accept a random $NEG$ graph with at least a probability of $1-\frac{1}{2} = \frac{1}{2}$. \ \\ We shall now prove a series of lemmas about the effects of the pluck, trim, and cover operations on the probabilities of accepting $POS$ and $NEG$ graphs. The main idea is that the $\sqcup$ and $\sqcap$ approximations neither decrease the probability of accepting a positive test graph by too much, nor increase the probability of accepting a negative test graph by too much. $POS(operation(f))$ is defined as the probability of accepting a positive test graph by $f$ after $operation$ has been applied to $f$. $NEG$ is defined likewise. \begin{lemma} \ \\ a) POS(pluck(f)) $\geq$ POS(f).\\ b) NEG(pluck(f)) $\leq$ NEG(f) + $({\frac{{l \choose 2}}{k-1}})^p$.\footnote{$p$ is the number of petals of the sunflower being plucked.} \end{lemma} \begin{proof} a) We recall that the pluck operation removes the clique indicators corresponding to the petals of the sunflower, and adds the indicator corresponding to the core of the sunflower. Since for any of the removed indicator $I$, the core $\subseteq$ $I$, $pluck(f)$ will not accept less graphs than $f$, as the added clique indicator looks for a clique on a subset of any set of vertices corresponding to a removed clique indicator.\\ b) Let's say that the sunflower being plucked has petals $Z_1$...,$Z_i$,..$Z_p$, and core $Z$. We consider the probability that a $NEG$ graph is accepted by $pluck(f)$ but not by $f$. The only way $f$ does not accept a graph with a clique on the the vertices in the core of the sunflower is if in each petal of the sunflower there are at least 2 nodes of the same color. For $pluck(f)$ to accept the graph, the core must have all different colors. The probability of these two events is: \begin{center} \begin{tabular}{lr} Prob[$\forall$$i$, ($Z_i$ has 2 nodes of same color) $\wedge$ ($Z$ has all distinct colors)] $\leq$ & (1)\\ $\leq$ Prob[$\forall$$i$, $Z_i$ has 2 nodes of same color $|$ $Z$ has all distinct colors] =& (2)\\ = $\prod_{i=1}^{p}$Pr[$Z_i$ has 2 nodes of same color $|$ $Z$ has all distinct colors] $\leq$ &(3) \\ $\leq$ $\prod_{i=1}^p$Pr[$Z_i$ has 2 nodes of the same color] $\leq$ $(\frac{{l \choose 2}}{k-1})^p$. &(4)\\ \end{tabular} \end{center} (2) $\leq$ (1) follows from the definition of conditional probability. (3) = (2) holds by the virtue of the fact that all petals are independent, since if the 2 nodes have the same color (if there are such nodes at all), then they must lie outside the core (or all the petals will have them). The $\leq$ relation of (4) to (3) holds since the events ($Z_i$ has 2 nodes of same color) and ($Z$ has all distinct colors) are negatively correlated (i.e., the more likely one event, the less likely the other). Thus, $(\frac{{l \choose 2}}{k-1})^p$ is at most the probability that $pluck(f)$ accepts a $NEG$ graph not accepted by $f$. \end{proof} \begin{lemma} \ \\ a) POS(cover($f \wedge g)) \geq POS(f \wedge g)$.\\ b) NEG(cover($f \wedge g)) \leq NEG(f \wedge g)$. \end{lemma} Reminder: $f \wedge g = \bigvee_{i,j}(clique(S_i) \wedge clique(T_j))$, while $cover(f \wedge g) = \bigvee_{i,j}(clique(S_i \vee T_j))$ ($S_i$ and $T_j$ here are sets of vertices over which presence of cliques is considered).\\ \begin{proof} a) A $POS$ instance consists of one k-clique. If the k-clique induces a clique on both $S_i$ and $T_j$, then it certainly induces a clique on $S_i \vee T_j$. Thus, the probability of accepting a $POS$ graph does not decrease. b) Since $clique(S_i \vee T_j)$ is more restricitve than $clique(S_i) \wedge clique(T_j)$, $cover(f \wedge g)$ does not accept more graphs than $(f \wedge g)$. Thus the probability of accepting a $NEG$ graph does not go up. \end{proof} \begin{lemma} \ \\ a) POS(trim(cover($f \wedge g$))) $\geq$ POS($f \wedge g)-\frac{m^2{n-l-1 \choose k-l-1}}{{n \choose k}}$. \\ b) NEG(trim(cover($f \wedge g$))) $\leq$ NEG($f \wedge g$). \end{lemma} Recall: trim excludes clique indicators of size $\geq$ $l+1$, since the indicators produced by the cover operation might be too large. \\ \begin{proof}\ \\ a) We count the number of $POS$ graphs that are accepted by a clique indicator of size $\geq$ $l+1$. Since we only need an upper bound, let's suppose that this is a clique indicator of size $l+1$. Now, we know the $l+1$ nodes of the indicator. Pick the rest $k-(l+1)$ nodes needed for a clique in the graph to get at most ${n-l-1 \choose k-l-1}$ graphs that the indicator might have accepted. This is at most the number by which the number of $POS$ graphs accepted can go down after throwing out a clique of size $\geq$ $l+1$. For trim(cover($f \wedge g$))) we need to do at most $m^2$ such throwings out by the virtue of the fact that both $f$ and $g$ are clean, that is, of the form $\bigvee_{i=1}^m S_i$, and by definition of cover (see above). Thus, the number of $POS$ graphs accepted can go down by at most $m^2{n-l-1 \choose k-l-1}$. Now, since unlike $NEG$ graphs, $POS$ graphs can be generated graphs uniformly, the counting argument result translates to a probabilistic one stating that \[POS(trim(cover(f \wedge g))) \geq POS(f \wedge g)-\frac{m^2{n-l-1 \choose k-l-1}}{{n \choose k}}, \] since $|POS| = {n \choose k}$.\\ b) Since the trim operation decreases the number of graphs accepted by throwing out clique indicators, so the probability of acccepting a $NEG$ graph does not go up. \end{proof} \begin{lemma}\ \\ a) POS($f \sqcup g$) $\geq$ POS($f \vee g$). \\ b) NEG($f \sqcup g$) $\leq$ NEG($f \vee g$) + $m(\frac{{l \choose 2}}{k-1})^p$. \\ c) POS($f \sqcap g$) $\geq$ POS($f \wedge g) - \frac{m^2{n-l-1 \choose k-l-1}}{{n \choose k}}$. \\ d) NEG($f \sqcap g$) $\leq$ POS($f \wedge g) + m^2(\frac{{l \choose 2}}{k-1})^p$. \\ \end{lemma} \begin{proof} \ \\ a) Since ($f \sqcup g$) is defined as weed($f \vee g$), this part of the lemma follows from Lemma 2 and the definition of weed operation.\\ b) This part follows from Lemma 2 and the fact that during the weed operation we pluck the sunflower at most $m$ times. \\ c) $(f \sqcap g)$ is defined as weed(trim(cover($f \wedge g$))). Since the weed operation does not lower the probability of accepting $POS$ instances, this part follows from Lemma 4. \\ d) Since trim(cover()) operation does not raise the probability of accepting a $NEG$ graph, we only need to worry about the weed operation here. This part of the lemma follows from Lemma 2 and the fact that we do not need to pluck more than $m^2$ times to weed after trim(cover()) has been applied. \end{proof} \subsection*{Grand Finale} We now come to the final point of the theorem. \\ Begin with a circuit $C$ that computes k-clique. Replace it with a clean version of $C$ (clean($C$)), by appying the $\vee \rightarrow \sqcup$, $\wedge \rightarrow \sqcap$ transformations. \begin{lemma}\ \\ Either a) $Size(C)\times \frac{m^2{n-l-1 \choose k-l-1}}{{n \choose k}} \geq 1$ \\ or b) $Size(C)\times m^2(\frac{{l \choose 2}}{k-1})^p \geq 1 - \frac{{l \choose 2}}{k-1}$. \end{lemma} \begin{proof} By Lemma 1, one of the following has to hold: \\ a) clean($C$) accepts $\emptyset$. $C$ accepted a random graph from $POS$ with probability 1, while clean($C$) accepts such a graph with probability 0. The only way this probability could have gone down is through $\wedge \rightarrow \sqcap$ transformations. Thus, by Lemma 5, the relation in a) has to hold. \\ b) clean($C$) accepts a random $NEG$ graph with probability $\geq 1 - \frac{{l \choose 2}}{k-1}$. Clearly, $C$ accepts such a graph with prob 0. In this case, the probability could have gone up because of either type of transformation, but the relation in b) still has to hold by Lemma 5. \end{proof} %% Are these values correct? Evgeny was saying something to the effect %% that they are a bit off, m specifically We now plug in the following values: \[k = n^{\frac{1}{4}}, l = n^{\frac{1}{8}}, p = 10n^{\frac{1}{8}}lg(n), m = (p - 1)^{l}l!.\] When these values are substituted in, we get a contradiction in the realtions derived above, {\bf unless } $Size(C) > 2^{n^{\frac{1}{8}}}$. Q. E. D. \end{document}