%Proof Complexity Scribe Notes template
% SEE THE "FOR THE SCRIBE SECTION BELOW"
\ifx\CompleteCourse\relax
\ClassScribeSetupA
\else
\documentclass[11pt]{article}
\usepackage{latexsym}
\usepackage{amssymb}
\newtheorem{theorem}{Theorem}
\newtheorem{lemma}[theorem]{Lemma}
\newtheorem{corollary}[theorem]{Corollary}
\newtheorem{proposition}[theorem]{Proposition}
\newtheorem{homework}{Homework}
\newenvironment{definition}{\begin{trivlist}\item[]{\bf Definition}\ }%
{\end{trivlist}}
\newenvironment{fact}{\begin{trivlist}\item[]{\bf Fact}\ }%
{\end{trivlist}}
\newenvironment{example}{\begin{trivlist}\item[]{\bf Example}\ }%
{\end{trivlist}}
\newenvironment{proof}{\begin{trivlist}\item[]{\bf Proof}\ }%
{\end{trivlist}}
\newenvironment{claim}{\begin{trivlist}\item[]{\bf Claim}\ }%
{\end{trivlist}}
\newenvironment{proof-complexity}{\begin{trivlist}\item[]{\bf Proof Complexity}\ }%
{\end{trivlist}}
% Make the page large
\addtolength{\textwidth}{1.50in}
\addtolength{\textheight}{1.00in}
\addtolength{\evensidemargin}{-0.75in}
\addtolength{\oddsidemargin}{-0.75in}
\addtolength{\topmargin}{-.50in}
% \vdashsub{X} makes a turnstyle with subscript "X"
% \vdashsup{X} makes a turnstyle with superscript "X"
\newdimen\srbdimenA
\newcommand{\vdashsupsub}[2]{ \mathop{
\setbox251 = \hbox{$\scriptstyle #1$}
\setbox252 = \hbox{$\scriptstyle #2$}
\ifdim \wd251<\wd252 \srbdimenA = \wd252 \else \srbdimenA = \wd251 \fi
\setbox255 = \hbox {${\srbAvdash \vphantom( \kern -\srbdimenA \kern +.05em}
^{\hbox to\srbdimenA{\hfill \box251\hfill}}
_{\hbox to\srbdimenA{\hfill \box252\hfill}}$}
\box255 \kern .05em}}
\newcommand{\srbAvdash}{\hbox{ \vrule height1.4ex width0.02em
\dimen255 = \srbdimenA
\advance\dimen255 by 0.1em
\vbox{\hrule width\srbdimenA height0.02em
\kern .65ex }}}
\newcommand{\vdashsup}[1]{\vdashsupsub{{#1}}{\mbox{~}}}
\newcommand{\vdashsub}[1]{\vdashsupsub{\mbox{~}}{#1}}
\fi
% FOR THE SCRIBE: CUSTOMIZE THE ENTRIES BELOW:
% Fill in the following information particular to these scribe notes:
\def\scribeone{Nathan Segerlind} % Who is the scribe?
\def\classdate{13 February 2002} % Date of the class
\def\classnumber{9} % Is this the first, second, ...?
% Here are some commands that stay the same for the whole class.
\def\classinstructor{Sam Buss}
\def\classtitle{Propositional Proof Complexity}
\def\doctitle{\textup{Math 267a - Propositional Proof Complexity}}
\def\classid{\textup{Lecture \#\classnumber: \classdate}}
% Put your macros for these scribe notes HERE
% It is best to use as few as possible.
% environments for "theorem", "corollary", "lemma", "fact" "definition"
% "homework", "proof", "example", "proposition"
% are already defined above.
\def\Bigwedge{\mathop{\bigwedge\!\!\!\!\!\bigwedge}}
\def\Bigvee{\mathop{\bigvee\!\!\!\!\!\bigvee}}
\newenvironment{question}{\begin{trivlist}\item[]{\bf Open Question}\ }%
{\end{trivlist}}
\newenvironment{encoding}{\begin{trivlist}\item[]{\bf Encoding}\ }%
{\end{trivlist}}
\newenvironment{algorithm}{\begin{trivlist}\item[]{\bf Algorithm}\ }%
{\end{trivlist}}
\newcommand{\bigO}{{\mathop{\rm O}}}
% Start the document
\makeatletter \def\rddots{\mathinner{\mkern1mu\raise\p@ \vbox{\kern7\p@\hbox{.}}\mkern2mu \raise4\p@\hbox{.}\mkern2mu\raise7\p@\hbox{.}\mkern1mu}} \makeatother
\ifx\CompleteCourse\relax
\ClassScribeSetupB
\else
\def\makeatletter{\catcode`\@=11\relax}
\def\makeatother{\catcode`\@=12\relax}
\makeatletter
\def\ps@scribeheadings{\let\@mkboth\@gobbletwo
\def\@oddhead{\sl\doctitle \hfill \classid}
\def\@oddfoot{\hfil \rm \thepage \hfil}\def\@evenhead{\@oddhead}%
\def\@evenfoot{\@oddfoot}\def\sectionmark##1{}\def\subsectionmark##1{}}
\makeatother
\pagestyle{scribeheadings}
\begin{document}
\bibliographystyle{siam}
\fi
\begin{center}
\Large\bf\doctitle\\[1em]
\Large\bf\classid\\[1em]
{\large\bf Lecturer: \classinstructor}\\[.5em]
{\large\bf Scribe Notes by: \scribeone}
\end{center}
\vspace*{.4in}
% HERE IS WHERE YOUR SCRIBE NOTES SHOULD START
% DELETE ALL OF ROB'S TEXT AND ENTER YOUR OWN.
\section{Last Time}
In this lecture, we prove exponential an lower bound on the sizes of resolution refutations
of $PHP^{n+1}_n$. We also discuss recent results on the size needed to prove certain formulations
of circuit lower bounds in resolution.
\section{A Size Lower Bound for Resolution Refutations of $PHP^{n+1}_n$}
The main result of this lecture is the proof that resolution refutations of $PHP^{n+1}_n$ require
size $2^{\Omega(n)}$. We show that clauses of high width are likely to be satisfied by a random restriction
selected according to the distribution given in lecture 8. These restrictions transform
the refutation into a refutation of a slightly smaller instance of the pigeonhole principle, and by the
results of lecture 8, this new refutation must have either large width or large size.
Because the restricted refutation has small width, it must have large size. Therefore, the original refutation
must also have large size.
Recall that the width of a clause is the number of variables appearing in the clause, and the width of a
resolution refutation is the maximum width of a clause in the refutation.
We also assume that in a resolution refutation, there are no clauses that contain both a variable and its negation.
First, we show that clauses of high width must have many pigeons that appear in many literals.
\begin{definition}
Let $s > 0$ be given. Let $C$ be a clause. Let $i \in [n]$ be a pigeon. We say that
$i$ is an $s$-heavy pigeon of $C$ if $| \{ j \in [ n ]| X_{i,j} \in C \vee \neg X_{i,j} \in C \} | \geq s$.
\end{definition}
\begin{lemma}{\label{wideHeavy}}
Let $n$ be an integer strictly greater than $1$.
For any clause $C$ and any $\gamma >0 $, if $C$ has width at least $\gamma n^2$, then $C$ contains
at least $\frac{\gamma n}{2}$ many $\frac{\gamma n}{2}$-heavy pigeons.
\end{lemma}
\begin{proof}
Let $h$ be the number of $\frac{\gamma n}{2}$-heavy pigeons in $C$.
First, we show that $h \geq 1$. Because each pigeon that is not $\frac{\gamma n}{2}$-heavy can contribute at most $\frac{\gamma n}{2}$ literals to $C$, if every pigeon were not $\frac{\gamma n}{2}$-heavy, then there would be at most $(n+1)\frac{\gamma n}{2} =\frac{\gamma n^2}{2} + \frac{\gamma n}{2}$ many literals in $C$. Because $n>1$,
this is quantity is less than $\gamma n^2/2$ and we would have a contradiction to the fact $C$ has width at
least $\gamma n^2$.
Moreover, each $\frac{\gamma n}{2}$-heavy pigeon can contribute at most $n$ literals to $C$, so we have
the following inequalities.
\[ \gamma n^2 \leq (n+1-h)\frac{ \gamma n}{2} + hn \]
\[ \gamma n^2 \leq \frac{\gamma n^2}{2} + hn \]
\[ \frac{\gamma n^2}{2} \leq hn \]
\[ \frac{\gamma n}{2} \leq h \]
\end{proof}
Recall the definition on partial assignments given in lecture 8: for a fixed parameter $\beta \in (0,1)$,
we choose to match each pigeon from $[n]$ with independent probability $1 - \beta$.
Then, we uniformly choose a matching
between the selected pigeons and the holes.
In the sequel of this lecture, this distribution will be referred to as ${\cal{R}}_{n,\beta}$.
We now show that a clause that has many heavy pigeons is very likely to be satisfied by a restriction chosen
according to ${\cal{R}}_{n,\beta}$.
\begin{lemma}{\label{heavySat}}
If $C$ is a clause that contains $t$ many $\alpha n$-heavy pigeons, then
\[ {\mbox{Pr}}_{\rho \in {\cal{R}}_{n,\beta}} \left[ C {\upharpoonright}_\rho \neq 1 \right] \leq {(1 - (1-\beta)\alpha/2)}^{t-1} \]
\end{lemma}
\begin{proof}
Let $F$ be the set of pigeons from $[1,n]$ that are $\alpha n$-heavy in $C$. Notice that $|F| \geq t-1$.
For each $i \in F$, let $H_i$ be the set of holes so that the variable $X_{i,j}$ occurs in
$C$. For each $i \in F$, $j \in H_i$ notice that exactly one of $X_{i,j}, \neg X_{i,j}$ occurs in $C$:
let $l_{i,j}$ be this literal.
In this notation, $C$ can be written as $\bigvee_{i\in F} \bigvee_{j \in H_i} l_{i,j} \vee C'$.
where $C'$ is a clause that contains only literals whose pigeons are not in $F$. Furthermore, we may
assume without loss of generality that
$F$ consists of the pigeons $1$ through $|F|$ because permuting the first $n$ pigeons does not
change the distribution ${\cal{R}}_{n,p}$.
For each $i \in F$, let $E_i$ be the event that $\left( \bigvee_{k \in F \atop k *0$ so that every resolution refutation of $PHP^{n+1}_n$ has size
at least $2^{\epsilon n}$.
\end{theorem}
\begin{proof}
We will show that for constants $\epsilon, \beta \in (0,1)$ with $ \epsilon < \beta/8$ and
$\epsilon < - (\beta^2/64) \log_2(1- (1-\beta)\beta^2/128)$
there is no resolution refutation
of $PHP^{n+1}_n$ of size $2^{\epsilon n}$. There are constants satisfying these bounds because for any
$\beta \in (0,1)$, $-\log_2 \left(1 - (1-\beta)\beta^2/128 \right) >0 $ and therefore
we can take $\epsilon$ to be the minimum of $\beta/8$ and $- (\beta^2/64) \log_2(1- (1-\beta)\beta^2/128)$,
and we will have that $\epsilon \in (0,1)$.
For the sake of contradiction, assume that $R$ is a resolution refutation of $PHP^{n+1}_n$ of size less than
$2^{\epsilon n}$.
Let $\rho \in {\cal{R}}_{n,\beta}$ be given. Let $M$ be the set of pigeons matched by $\rho$, and let $m = | M |$.
Notice that for the set of clauses $PHP_n^{n+1}$, the set of clauses $PHP_n^{n+1} \upharpoonright_\rho$ is
is just a renaming of $PHP^{n-m+1}_{n-m}$.
Because the number of pigeons matched by $\rho \in {\cal{R}}_{n,\beta}$ is distributed according to a binomial
distribution, the expected number of pigeons matched by $\rho$ is $(1-\beta)n$.
By the central limit theorem as $n$ tends to infinity, the probability that the number of matched pigeons
exceeds $(1-\beta)n$ tends to $1/2$. Therefore, for sufficiently large $n$, the probability that
$\rho$ leaves at least $\beta n +1$ many pigeons unmatched is at least $1/4$.
Lemma \ref{satisfyWideClauses} tells us that ${\mbox{Pr}}_{\rho \in {\cal{R}}_{n,\beta}} \left[ w(R \upharpoonright_\rho) \geq \beta^2 n^2/32 \right]$ is $o(1)$
Therefore, for sufficiently large $n$, we may choose $\rho \in {\cal{R}}_{n,\beta}$ so that
$ w(R \upharpoonright_\rho) < \beta^2 n^2/32 $ and $\rho$ leaves at least $\beta n$ many pigeons unmatched.
Because the restriction of a resolution refutation is a resolution refutation (see lecture 8),
$R \upharpoonright_\rho$ is a resolution refutation of $PHP_n^{n+1} \upharpoonright_\rho$. Therefore,
up to renaming the variables, $R \upharpoonright_\rho$
is a resolution refutation of $PHP_{\beta n}^{\beta n+1}$ with each clause of
width strictly less than $\beta^2 n^2/32$ and of size at most $2^{\epsilon n}$.
By Danchev's theorem, every resolution refutation of $PHP^{\beta n +1}_{\beta n}$ requires width at least
$\beta n^2/32$ or size at least $2^{\beta n/8}$, but because $\epsilon < \beta/8$, we have obtained a
contradiction.
\end{proof}
\section{Lower Bounds for Resolution Proofs of Circuit Lower Bounds}
Recently, Razborov has shown that certain formulations of circuit lower bounds require exponential size refutations
in resolution.
Given the truth-table of a boolean function, $f_n : {\{0,1\}}^n \rightarrow \{0,1\}$, and a
a parameter $t \leq 2^n$, a CNF $Circuit_t(f_n)$ is constructed which is satisfiable if and only if $f_n$ can
be computed by a circuit of size $t$. If $f_n$ is a function which is not computed by any circuit of size $\leq t$,
then this formula is unsatisfiable. The formula is constructed in a brute force way, with $\bigO(t)$ many variables
encoding the circuit, and with $\bigO(t2^n)$ many variables representing
the value of each gate on each assignment to the inputs. The clauses state that the output of each gate is consistent
with the output of its inputs.
Razborov's result shows that for any function $f_n$ and size $t$,
$Circuit_t(f_n)$ has no resolution refutation of size less than $2^{\Omega( t/n^3)}$.
The proof works by reducing the onto-functional weak pigeonhole principle to the principle $Circuit_t(f_n)$.
%\begin{tabbing}
%123\=123\=123\=123\=123\=123\=123\=123\=123\=123\=123\=\kill
%\> $ y_{a,v}$, for each $ a \in {\{0,1\}}^n, \ v \in [t]$ \\
%\>\> The booleanvalue computed at the node $v$ on the input string $\alpha$. \\
%\> $y_{a,\nu,v}$, for each $a \in {\{ 0,1 \}}^n, \nu \in \{1,2\}, v \in [t]$ \\
%\>\> The value brought to gate $v$ by the $\nu$'th wire on assignment $a$. \\
%\> $Fanin(v)$, for each $ v \in [t] $ \\
%\>\> This is $0$ for NOT-gates, and $1$ for an AND-gate or an OR-gate. \\
%\> $Type(v)$, for each $v \in [t]$ \\
%\>\> When $Fanin(v)=1$, this is $0$. This is $0$ for AND-gates and $1$ for OR-gates. \\
%\> $InputType_\nu(v)$, for each $v \in [t], \nu \in \{1, 2\}$ \\
%\>\> This is $0$ is $\nu$'s input to $v$ is a constant or a variable and $1$ if it is one of the previous gates. \\
%\> $InputType_\nu'(v)$, for each $v \in [t], \ \nu \in \{1, 2\} $ \\
%\>\> When $InputType_\nu(v) =0$, this is $0$ if the $\nu$'th input to $v$ is a constant, \\
%\>\> and $1$ is the $\nu$'th input to $v$ is a variable. \\
%\>$InputType_\nu''(v)$, for each $v \in [t], \ \nu \{1,2\}$ \\
%\>\> When $InputType_\nu(v)=InputType_\nu'=0$, this equals the $\nu$'th input to $v$. \\
%\>$InputVar_\nu(v,i)$, for each $v \in [t], \ \nu \in \{1,2\}, \ i \in [n]$ \\
%\>\>When $InputType_\nu(v)=0$ and $InputType_\nu'(v)=1$, this is $1$ if and only if $\nu$'s input to $v$ is $x_i$. \\
%\>$ INPUTVAR_\nu(v,i)$, for each $v \in [t], \nu \in \{1,2\}, i \in [n]$ \\
%\>\> This variable equals $\bigvee_{i' \leq i} InputVar_\nu(v,i')$. It is introduced to keep bottom fan-in bounded. \\
%\>$InputNode_\nu(v,v')$, for each $v,v' \in [t], \ \nu \in \{1,2\}$ \\
%\>\> When $InputType_\nu(v)=1$, this is $1$ if and only if the $\nu$'th input to $v$ is the gate $v'$. \\
%\> $ INPUTNODE_\nu(v,v')$, for each $v,v' \in [t], \ v \neq v', \ \nu \in \{1, 2\} $ \\
%\>\>
%\end{tabbing}
\end{document}
*