%Proof Complexity Scribe Notes template

% SEE THE "FOR THE SCRIBE SECTION BELOW"

\ifx\CompleteCourse\relax
\ClassScribeSetupA
\else
\documentclass[11pt]{article}
\usepackage{latexsym}

\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{Rosalie Iemhoff}    % Who is the scribe?
\def\classdate{4 February 2002} % Date of the class
\def\classnumber{6}     % 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.

\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}}

% Start the document

\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{Substitution Frege systems}
In a previous lecture we encountered certain proof systems 
for which it is {\em conjectured} that they 
are stronger than Frege systems (in the sense that Frege systems do not 
p-simulate them). These were the extended Frege systems. 
Here we will define other such proof systems: the substitution
Frege systems. We will see that these systems are as strong 
as extended Frege systems; they p-simulate extended Frege systems 
and vice versa. As in the case of extended Frege systems, 
it is an open question whether Frege systems p-simulate substitution 
Frege systems or not. 

\begin{definition} A {\em substitution Frege system}, $s\mathcal{F}$, 
is a Frege system 
augmented with a substitution rule $A/ A\sigma $. Thus a proof in 
a substitution Frege system $s\mathcal{F}$  is a sequence  
$\varphi _1, \ldots ,\varphi _n$, where every $\varphi _i$ 
is an axiom of $\mathcal F$, or inferred from earlier $\varphi _j$ by 
a rule of $\mathcal F$, or $\varphi _i = \varphi _j\sigma$, for some 
$j<i$ and some substitution $\sigma$. 
\end{definition}
Note that substitution Frege systems are indeed complete proof systems; it is 
not difficult to see that they are sound and complete (the substitution rule 
is clearly sound, and completeness follows from the fact that Frege 
systems  are complete). 
Note however that they are not implicationally sound. This is not a  
problem since implicational soundness is not required for a proof system. 

\begin{theorem} $s\mathcal{F}$-systems and $e\mathcal{F}$-systems p-simulate 
each other. 
\end{theorem}
\begin{proof} We will only show that $s\mathcal{F}$-systems p-simulate 
$e\mathcal{F}$-systems, the other direction can be found in 
\cite{KrajicekPudlak:propproofs} or \cite{Krajicek:book} (Lemma 4.5.5).  
For this proof we consider extended Frege systems of the second 
type, i.e.\ with an extension rule. Let $\varphi _1, \ldots ,\varphi _n$ 
be a proof in an extended Frege system $e\mathcal{F}$ of size $k$. 
Thus $k= \mathcal{O} (n+|\varphi _n|)$. W.l.o.g.\ we can 
assume that the first m lines in the proof are extension rules and that the 
others are not: for $i\leq m$,  
$\varphi _i=z_i \leftrightarrow \chi _i (\bar{x},z_1, \ldots, z_{i-1})$, 
i.e.\  $\varphi _i$ is an instance of the extension rule, and for $i>m$, 
$\varphi _i$ is not an instance of the extension rule. 
Clearly, we have  

\[\varphi _1, \ldots ,\varphi _m\vdash _{\mathcal{F}} \varphi _n.\]
Observe that this Frege proof has size at most $k$. 
By the Deduction Theorem (Lecture $\# 2$) we have 

\begin{equation}
\label{obladi}
\vdash _{\mathcal{F}}\left( {\bigwedge \!\!\!\! \bigwedge}_{i=1}^m 
(z_i \leftrightarrow \chi _i)\right)  \rightarrow \varphi _n, 
\end{equation}
where the  proof has size polynomial in $k$. W.l.o.g.\ we associate 
the brackets in the big conjunction to the left. From (\ref{obladi}) 
we get
  
\begin{equation}
\label{oblada}
\vdash _{\mathcal{F}}\left( {\bigwedge \!\!\!\! \bigwedge}_{i=1}^{m-1} 
(z_i \leftrightarrow \chi _i) 
\wedge (z_m \leftrightarrow \chi _m)\right)  \rightarrow \varphi _n. 
\end{equation}
Note that the variable $z_m$ only occurs at one place in the whole 
formula. Now we hit the formula 
in (\ref{oblada}) with a substitution $\sigma (z_m) =\chi _m$ and obtain 

\[\vdash _{\mathcal{F}}\left( {\bigwedge \!\!\!\! \bigwedge}_{i=1}^{m-1} 
(z_i \leftrightarrow \chi _i) 
\wedge (\chi _m\leftrightarrow \chi _m)\right) \rightarrow \varphi _n.\]
From this we  get 

\[\vdash _{\mathcal{F}}\left( {\bigwedge \!\!\!\! \bigwedge}_{i=1}^{m-1} 
(z_i \leftrightarrow \chi _i)\right) \rightarrow \varphi _n.\] 
Then we repeat this procedure for $m-1$, then for $m-2$, etc., so that 
we finally end up with 

\[\vdash _{\mathcal{F}}\varphi _n. \]
About the size of the proof: for (\ref{obladi}) we have 
already observed that the proof is of size polynomial in $k$. 
From this it is easy to 
conclude that the other proofs have size polynomial in $k$ as well. 
\end{proof}
It is interesting to ask whether 
one can restrict the substitutions in the substitution rule 
and still get systems that are as strong as 
$s\mathcal{F}$ systems. Renaming Frege systems are an example of this. 
A substitution is a {\em renaming substitution} if its range 
is contained in the set of propositional variables. 
A {\em renaming Frege system}, $r\mathcal{F}$, is a substitution 
Frege system for which in the substitution rule only renaming substitutions 
are allowed. A renaming substitutions $\sigma$
replaces the variables in $A$ by (possibly) other variables (hence the name
renaming).  
At first sight renaming Frege systems may seem weaker than substitution Frege
systems, but it turns out that both systems p-simulate each other (a proof
can be found in \cite{Buss:propproofs}). Hence 
extended Frege systems and renaming Frege systems p-simulate each 
other as well.  

One could try to restrict the substitutions that are allowed in the
substitution rule even further than in renaming Frege systems. For example, 
one could require that the substitutions map variables only to variables 
that occur in the last line of the proof,  or one could require 
that the renaming substitutions are injective. For these systems 
it is no longer known whether they are as strong as extended 
Frege systems or not. 

A propositional proof systems that is considered stronger than 
extended Frege systems, is 
quantified propositional logic $QBF$.  $QBF$ is an extension of 
propositional logic by propositional quantifiers 

\[\forall x \mbox{ (intended meaning $A(x/ \top)\wedge A(x/ \bot )$)}\] 
\[\exists x \mbox{ (intended meaning $A(x/ \top)\vee A(x/ \bot )$)}\]
It is known that $QBF$ p-simulates extended Frege systems 
\cite{Krajicek:book}. It is
conjectured that the converse does not hold, but this is open.  


\section{The best known lower bounds on proof lengths}
In this section we will discuss the best known lower bounds on 
Frege and extended Frege proofs. For Frege proofs we have 
 a linear lower bound on the number of lines 
and a quadratic lower bound on the size. Hence for extended Frege proofs 
we have a linear lower bound on the size of proofs.  Since the best known
upper bounds on Frege proofs are exponential, there is still a large 
gap between the lower bounds and the upper bounds. To 
prove the lower bounds we need some terminology. 

\begin{definition} Given a Frege proof $P$, a formula $A$ is called 
{\em active} in $P$ if it occurs in $P$ as a subformula in an 
inference that explicitly uses the principal connective of $A$. 
We tacitly assume here that there is no ambiguity 
as to what rule is applied in a certain inference; one can always label 
the rules to avoid ambiguity of this kind. 
\end{definition}
\begin{example}
In the rule Modus Ponens

\[\frac{\textstyle A\ \ \ \ A\rightarrow B}{B}\]
the formula $A\rightarrow B$ is the only formula that is made active by 
this inference. The axiom $A\rightarrow (B\rightarrow A)$ makes 
the formulas $A\rightarrow (B\rightarrow A)$ and $(B\rightarrow A)$ active. 
\end{example}
The intuition here  is that in a proof the inactive formulas can be 
changed while the proof remains valid. This is the content of the 
next claim, of which we omit the proof. 
\begin{claim}
\label{inactive-subformulas}
If $A$ is not active in a proof $P$, then if $A$ 
is  everywhere  replaced by $B$, the result is still a valid proof. 
\end{claim}
\begin{claim}
Let $c$ be the maximum number of connectives shown in any inference 
 rule or axiom of a Frege system $\mathcal F$ (for $\mathcal{F}_0$, $c=6$), 
and let $A_1, \ldots ,A_k$ be
all the distinct active formulas in an $\mathcal F$-proof $P$, then 
$|P|\geq \frac{1}{c}(\sum _{i=1}^k |A_i|)$.  
\end{claim}
\begin{proof} Observe that any inference activates at most $c$ formulas, and 
that if a subformula of a formula is active, then so is the formula of 
which it is a subformula. 
Therefore, given a symbol in the proof $P$, it lies in at most $c$ activated 
occurrences of $A_1, \ldots , A_k$. Moreover, every $A_i$ is activated
somewhere.  This implies 
that $c\cdot |P| \geq \sum _{i=1}^k |A_i|$. Hence 
$|P|\geq \frac{1}{c}(\sum _{i=1}^k |A_i|)$. 
\end{proof}
Let $\varphi _n$ be the formula 

\[\bot \vee (\bot \vee ( \ldots  (\bot \vee \top)\ldots )\]
in which $n$ $\bot$'s occur. $\top$ denotes ``true'': $\top = x\vee \neg x$. 
$\bot$ denotes ``falsum'': $\bot =x\wedge \neg x$ (sometimes these 
symbols are added to the language of propositional logic). 
\begin{claim} In any proof of $\varphi _n$ all the $n$ subformulas 
of $\varphi _n$ that are distinct from $\bot$ and $\top$ are active. 
\end{claim}
\begin{proof}
If not, by Claim~\ref{inactive-subformulas} we could replace such an 
inactive subformula by $\bot$ and obtain a valid formula as well. 
This cannot be, as such a formula  would not be a tautology. 
\end{proof}
By the previous two claims, any Frege proof of $\varphi _n$ has 
at least $\sum _{i=1}^n i$ symbols. Thus any Frege proof of $\varphi _n$ 
has $\Omega (n^2)$ symbols. 
\begin{claim} Let $c$ be the maximum number of connectives shown 
in any inference rule or axiom of a Frege system $\mathcal F$. 
If an $\mathcal{F}$-proof $P$ has $k$ distinct active subformulas, 
then $P$ has  at least $\frac{k}{c}$ lines. 
\end{claim}
Thus any Frege proof of $\varphi _n$ has $\Omega (n)$ lines. Hence 
any extended Frege proof of  $\varphi _n$ has size $\Omega (n)$. 

\section{Resolution}
Resolution is an algorithm to prove formulas that are of 
a certain syntactic form. It arose in the 50's when people 
were looking for efficient theorem provers. The algorithm is simple; it 
has only one rule, the so-called Resolution Rule. The 
drawback is that certain formulas have long Resolution proofs 
compared to their Frege proofs. The Pigeonhole Principle is an example of
this. In  one of the next lectures we will see that it has no polynomial size 
Resolution proof, while it has polynomial size Frege proofs \cite{Buss:PHP}. 
As said, Resolution can only be applied  to formulas of a special 
kind. Namely,  the formulas in Conjunctive Normal Form (CNF).
 A formula is said to be in 
CNF if it is the conjunction of disjunctions of variables and negated 
variables, i.e. 
if it is of the form 

\[{\bigwedge \!\!\!\! \bigwedge}_i \left( {\bigvee \!\!\!\! \bigvee}_j A_{ij}
\right) \]
where the $A_{ij}$'s are of the form $x$ or $\neg x$, for some variable $x$. 
Note that every formula can be written in CNF. For example, 

\[\begin{array}{lll}
(x\rightarrow y) &\leftrightarrow & (\neg x \vee y) \\

(\neg (x\wedge y) \wedge  z) &\leftrightarrow  &((\neg x \vee \neg y) 
\wedge z) \\

(x \vee (y \wedge z)) & \leftrightarrow  &  ((x \vee y)\wedge (x\vee z))
\end{array}\]
where the formulas at the right side are in CNF. 
Observe that in going to CNF the size of a formula can increase 
exponentially. 

\begin{definition} We define what a Resolution Refutation is. 
 
\noindent Syntax: variables $x_1,x_2, \ldots $

\noindent Literals:  $x_i$, $\bar{x_i}$ (the intended meaning of $\bar{x_i}$ 
is $\neg x_i$). If $x$ is a literal, then 
$\bar{x}$ is defined so that $\bar{\bar{x}}=x$: $\bar{x}=y$, when 
$x=\bar{y}$, and $\bar{x}=\bar{x}$ otherwise. 

\noindent A {\em Clause} is a set of literals. The intended meaning of a 
clause is the disjunction of its members. We call a set of clauses 
$\Gamma$ satisfiable if there exists a truth-assignment that satisfies all 
clauses in $\Gamma$. 
\begin{example} 
\begin{itemize}
\item $\{\bar{x}, y\}$ means $\neg x \vee y$. 
\item $\{x,\bar{x}\}$ is always valid.
\item $\{\} =\emptyset$ is the unsatisfiable clause. 
\end{itemize}
\end{example}
The {\em Resolution Rule}: ($C$ and $D$ denote clauses) 

\[\frac{\textstyle C\cup \{x\} \ \ \ \ D \cup \{\bar{x}\} }{C\cup D}\] 
The clause $C\cup D$ is called the {\em resolvent} of the rule.
A {\em Resolution Refutation} of a set of clauses $\Gamma$ consists of a 
sequence of clauses $C_1,\ldots ,C_n$, where $C_n=\emptyset$, and for 
each $i\leq n$ either 

\begin{enumerate}
\item $C_i \in \Gamma$
\item $C_i$ is inferred by the Resolution Rule from $C_j$ and $C_h$, 
      for some $j,h < i$. 
\end{enumerate}
\end{definition}
The idea behind a Resolution Refutation is the following. 
Assuming that $\Gamma$ is 
satisfiable we infer other clauses that are also 
satisfiable till we end up with the  empty clause. Since the empty clause is 
not satisfiable, the assumption that $\Gamma$ is satisfiable is refuted. 
Thus $\Gamma$ is not satisfiable. The following claims make this precise. 
W.l.o.g.\ we can disallow having 
both $x$ and $\bar{x}$ in a clause in a proof.
 
\begin{claim} If the truth-assignment 
$\tau$ satisfies the clauses $C\cup \{x\}$ and 
$D \cup \{\bar{x}\}$, then $\tau$ satisfies the resolvent $C\cup D$. 
\end{claim}
\begin{theorem}[Soundness Theorem] If there exists a Resolution 
Refutation for  $\Gamma$, then $\Gamma$ is unsatisfiable.
\end{theorem}
\begin{proof} Suppose $\Gamma$ has a Resolution 
Refutation $C_1, \ldots ,C_n$. If there would exist a truth-assignment 
$\tau$ that satisfies $\Gamma$, then by the previous claim $\tau$ would
satisfy all $C_i$. Hence $\tau$ would satisfy the unsatisfiable empty clause 
$C_n$, quod non. Thus $\Gamma$ is unsatisfiable.  
\end{proof}


\bibliography{logic,cstheory}
\end{document}


