\documentclass[11pt]{article}

\usepackage{latexsym}
\usepackage{amsmath}
\usepackage{amssymb}
\usepackage{amsthm}
\usepackage{hyperref}


\newcommand{\handout}[5]{
   \noindent
   \begin{center}
   \framebox{
      \vbox{
    \hbox to 5.78in { {\bf Complexity Theory II } \hfill Course Instructor: #2 }
       \vspace{4mm}
       \hbox to 5.78in { {\Large \hfill #5  \hfill} }
       \vspace{2mm}
       \hbox to 5.78in { {\em #3 \hfill #4} }
      }
   }
   \end{center}
   \vspace*{4mm}
}

\newcommand{\lecture}[4]{\handout{#1}{#2}{Lecturer: #3}{Scribe:
    #4}{Lecture #1}}

\newtheorem{theorem}{Theorem}
\newtheorem{corollary}[theorem]{Corollary}
\newtheorem{lemma}[theorem]{Lemma}
\newtheorem{observation}[theorem]{Observation}
\newtheorem{proposition}[theorem]{Proposition}
\newtheorem{definition}[theorem]{Definition}
\newtheorem{claim}[theorem]{Claim}
\newtheorem{fact}[theorem]{Fact}

\begin{document}

\lecture{4,5 :  Aug 11, 2006 }{V. Arvind}{V. Arvind}{Ramprasad Saptharishi}

\section{Overview}

\begin{tabular}{|l|l|l|}
\hline
Hardness & PRG & Derandomization\\
\hline
$E\nsubseteq P/poly$ & $n^\epsilon \rightarrow n$ & $BPP \subseteq SUBEXP$\\
$E \nsubseteq SIZE(2^{\epsilon n})$ & $\log n \rightarrow n$ & $BPP = P$\\
\hline
\end{tabular}


In the first few lectures, we say that hardness $\rightarrow$ PRG, and then we saw that hardness $\rightarrow$ derandomization.

In this lecture we shall look at other implications between hardness, PRGs and derandomization


\section{Hardness $\leftrightarrow$ PRG}

\begin{theorem}
  Suppose $G:\log n \rightarrow n$ be a quick PRG which is secure against circuits of size $n$, i.e 
  $$
  \forall |C|\leq n, \left| \Pr_{y\in_R \Sigma^n}[C(y)=1] - \Pr_{x\in_R \Sigma^{\log n}}[C(G(x))=1] \right| < \frac{1}{n}
  $$
  then, there $\exists f, f\in E, f\notin SIZE(2^{\epsilon n})$.
\end{theorem}

\begin{proof}
  Let $\log n= l$. $G':l\rightarrow l+1$ be the truncated version of $G$. Hence clearly

  $$
  \forall |C|\leq n, \left| \Pr_{y\in_R \Sigma^{l+l}}[C(y)=1] - \Pr_{x\in_R \Sigma^{l}}[C(G'(x))=1] \right| < \frac{1}{n}
  $$
  $Range(G')=\{y|y = G'(x)\}$ and clearly $Range(G')$ is computable in $E$ since given a $y$ we can run through all $|x|=|y|-1$ and check if $G'(x)=y$. 

  Claim: $Range(G')\notin SIZE(2^{\epsilon n})$
  
  For if it were in $SIZE(2^{\epsilon n})$, it would mean that you can next bit predict $G$ using a this circuit which will be of size $2^{\epsilon \log n}=n^\epsilon < n$, contradicting the hardness of $G$. 

Thus we now have a language ($Range(G')$) which is computable in $E$ but is not in $SIZE(2^{\epsilon n})$. 
\end{proof} 

And together with what we have done earlier, we have Hardness $\leftrightarrow$ PRG.

\section{Derandomizing Identity Testing}

Impagliazzo and Kabanets then showed that derandomization has
implications of lower bounds on arithmetic circuits. In this section
we shall look at the main result of the paper ``Derandomization
identity testing means proving circuit lower bounds -
Impagliazzo,Kabanets''.

We would need to use the result from a paper by Impagliazzo, Kabanets
and Wigderson in their paper ``In search of an easy witness''.

\begin{theorem}[Impagliazzo,Kabanets,Wigderson] \label{ik}
  If $NEXP \subseteq P/poly$ then $NEXP = EXP$.
\end{theorem}

We know from the [BFNW] result discussed in the earlier lecure, $EXP
\subseteq P/poly$ implies $EXP=MA=AM$. And hence $NEXP \subseteq P/poly
\Rightarrow NEXP = MA=AM$.

We shall give the proof this in section \ref{pik}

\subsection{The Permanent}

$Perm_{\mathbb{Z}}(A)$: a degree $n$ polynomial over $n^2$ variables. 

$$
Perm_{\mathbb{Z}}(A) = \sum_{\sigma \in S_n}\prod_{i=1}^n a_{i\sigma(i)}
$$

Let $P_n$ be the function evaluating the permanent for an $n\times n$
matrix. And the permanent satisfies the following conditions:

\begin{eqnarray*}
P_1(x) & = & x\\
P_i(x) & = & \sum_{j=1}^i X_{1j}P_{i-1}(X_j)
\end{eqnarray*}

And more, any functions that satisfies the above properties has to be
the permanent. 

\medskip

Summing up a few results we know already:

[Valiant79]: $Perm$ is $\#P$ complete

[Toda89]: $PH\subseteq P^{Perm}$

[BFNW + IKW]: $NEXP \subseteq P/poly \Rightarrow NEXP = EXP = MA = 
  PH = P^{Perm}$


\subsection{$ACIT$: Arithmetic Circuits for Identity Testing}

$ACIT = \{C| C \mbox{ defines a polynomial} p, p=0\}$. 

\noindent
Obviously, $\deg p \leq 2^{SIZE(C)}$. And we also know the Schwarz-Zippel lemma
\begin{lemma}[Schwarz-Zippel]If $p:F^n\rightarrow F, p\neq 0$ of
  degree $d$, then for any subset $S\subseteq F$
  $$
  \Pr_{a\in S^n}[p(a) = 0] <\frac{d}{|S|}
  $$
\end{lemma}


\begin{claim}
  $ACIT \in coRP$
\end{claim}
\begin{proof}
  We shall appeal to Shwarz-Zippel by choosing our $S =
  \{1,2,3,\ldots, 2^{s^2}\}$ for a size $s$ circuit. Then the
  Schwarz-Zippel lemma would have bounded the error probability to
  $\frac{2^s}{2^{s^2}}\leq 2^{-s}$, but the value of $p_C(a)$ could be
  huge, as large as $2^{2^ss^2}$. Thus we need to do {\em chinese
  remindering}
  
  Assume that $p_C\neq 0$. We would now evaluate $C$ modulo a random
  $m\in \{2^{s^2}, \ldots, 2^{s^3}\}$. By the prime number theorem,
  atleast $\frac{1}{s^4}$ fraction of them would be primes.
  
  Our bad case happens when either $m$ is composite or $m$ divides
  $p_C(a)$. Case $1$ can happen with probability atmost
  $\left(1-\frac{1}{s^4}\right)$. Now if $p_C\neq 0$, atmost $2^s$
  primes in the range can divide it, and thus the probability that a
  random prime divides $p_C$ is $\leq \frac{1}{s^42^s} < 2^{-s^2}$.

  Hence, if $p_C\neq 0$
  $$
  \Pr_{a,m}[p_C(a)\equiv 0 \mod m] \leq 2^{-s} + 2^{-s^2} + \left(1 -
  s^{-4}\right) \leq \left(1 - s^{-5}\right)
  $$
  
  Repeating this over $s^6$ independantly chosen $m$ from the range,
  we can get the error probability less than half, and thus $ACIT\in
  coRP$.
\end{proof}

\subsection{Circuits for Permanent and Identity Testing}

Define $ACP = \{(C,n): C \mbox{ evaluates } Perm_{\mathbb{Z}}^{n\times n}\}$.

\begin{claim}
  $ACP \leq_m^P ACIT$
\end{claim}
\begin{proof}
  Let $C$ be a circuit evaluating a polynomial $p$ over $n^2$ variables. Interpretting $p_n$ to be a function of a matrix $\{x_{ij}\}_{i,j}^n$. Let $p_i$ be the restriction of $p_n$ to $\{i\times i\}$ matrices of variables. Thus if $p_n$ evaluates the permanent, so will $p_i$ on the restricted matrix. 

Now define
\begin{eqnarray*}
h_1(x) & = & p_i(x) - x\\
h_i(X) & = & p_i(X) - \sum_{j=1}^i X_{1j}p_{i-1}(X_j)
\end{eqnarray*}

Now clearly if $p_n$ evaluates the permanent, then each of the $h_i$ has to be identically zero. And hence look at 
$$
h(x) = \sum_{i=1}^n h_i(X)^2
$$
and $C$ evaluates permanent {\em if and only if} $h=0$. 
\end{proof}

\subsection{The Impagliazzo-Kabanets Theorem}

\begin{theorem}[Impagliazzo-Kabanets] If $ACIT\in SUBEXP$, either $NEXP\nsubseteq P/poly$ or $Perm_{\mathbb{Z}}$ does not have polysized arithmetic circuits. 
\end{theorem}

Also not that if $BPP=P$, then $NP = MA$. And we then can't have $NEXP \subseteq P/poly$ since it would then absurdly give $NP = NEXP$. 

\begin{proof}
  If $NEXP \subseteq P/poly$, $NEXP = P^{Perm} = NP^{Perm}$. 
  
  Claim: $NEXP \subseteq P/poly, $ $Perm$ has poly sized circuits  $\Rightarrow NEXP \subseteq NP^{ACIT}$
  
  Pf: Let $L\in NEXP$, and $x$ an instance of $L$. Now by our assumption, $L \in NP^{Perm}$ and hence $L = \mathfrak{L}(M^{Perm})$ for some $n^k$ time machine $M$. 

  This forces the largest permanent queries to be those of $n^k \times
  n^k$ matrices. Guess the permanent cirucit, can be done since the
  size of the circuit is polynomially bounded! In order to verify, we
  know that $ACP \leq_m^{P} ACIT$, so use that as a query for the
  oracle. And thus $NEXP \subseteq NP^{ACIT}$. 
  
  \medskip

  Now with this claim, if you further have that $ACIT \in SUBEXP$, we can then would be able to simulate $NEXP$ in $NE$ thus giving an absurd implication that $NE = NEXP$. Hence the main theorem is proved.
\end{proof}

\section{\label{pik}Proof of Theorem \ref{ik}}


Just like we have $P/poly$, and we shall use a similar notation
$\mathcal{C}/f$. 
\begin{definition}
For any complexity $\mathcal{C}$ and function $f:\mathbb{N}\rightarrow
\mathbb{N}$, $L\in \mathcal{C}/f$ if there exists a sequence of
strings $\{y_i\}_{i\geq 0}$ with $|y_n|=f(n)$ and $L'\in \mathcal{C}$
such that for all $x\in \Sigma^{*}, x\in L \Leftrightarrow
(x,y_{|x|})\in L'$
\end{definition}

\bigskip

\noindent
The proof of this theorem shall be broken down into the following
steps:
\begin{enumerate}
\item \label{s1}$EXP \nsubseteq \text{i.o}-SIZE(n^c)$ for each $c$
\item \label{s2}$EXP \nsubseteq \text{i.o}-\left[DTIME(2^{n^c})\right]/n^c$ for
  each $c$. 
\item \label{s3}$NEXP = EXP \Rightarrow EXP \nsubseteq
  \text{i.o}-\left[NTIME(2^n)\right]/n$
\item \label{s4}$NEXP \subseteq P/poly \Rightarrow EXP \nsubseteq
  \text{i.o}-\left[NTIME(2^n)\right]/n$
\item \label{s5}{\bf Theorem:} If $NEXP \neq EXP$, then $AM \subseteq
  \text{i.o}-\left[NTIME(2^{n^\epsilon})\right]/{n^\epsilon}$ for
  every $\epsilon > 0$
\end{enumerate}

\subsection{Proof of Step \ref{s1}}

The number of boolean functions on length $n$ inputs is $2^{2^n}$ and
we saw earlier that the number of boolean functions that have  size
$\leq n^c$ is atmost $2^{n^{c'}}$ for some $c'$(depending on $c$)

Now the inputs are $x_1, x_2, \cdots,x_{n^c + 2}, \cdots,
x_{2^n}$. Define a function $f$ as follows:
\begin{eqnarray*}
\forall i \leq n^c + 2 & , & f(x_i) = b_i\\
\forall i > n^c + 2    & , & f(x_i) = 0
\end{eqnarray*}
where $b_i = {\text maj}(C(x_i))$ over all circuits $C\in SIZE(n^c)$.

Clearly this is in $DTIME(2^{n^{c+1}}) \subseteq EXP$ but not in
$SIZE(n^c)$ at any length. \qed

\subsection{Proof of Step \ref{s2}}

The number of boolean functions over $n$ inputs is $2^{2^n}$. Consider
turing machine descriptions $M$ of size $leq n$ with advice of size
$n^c$, running for atmost $2^{n^c}$ steps. Let $\mathfrak{F}=$ All
boolean functions from $\Sigma^n\rightarrow \Sigma$ computed by such
turing machines. As earlier $|\mathfrak{F}|\leq 2^{n^{c'}}$.

And hence we can find a assignment of truth values to the first
$n^{c'}+2$ strings that diagonalises against $\mathfrak{F}$. The
lexigraphically least of such assignments is our language in $EXP$,
but not in i.o$-\left[DTIME(2^{n^c})\right]/n^c$.\qed

\subsection{Proof of Step \ref{s3}}

We shall show that if $NEXP=EXP$, then $\left[NTIME(2^n)\right]/n
\subseteq \text{i.o}-\left[DTIME(2^{n^c})\right]/n$ for some fixed
$c$. And then, using step \ref{s2} we would be done. 

Let $U$ be a universal non-deterministic turing machine that takes a
pair $(i,x)$ as input and simulates the $i$th non-deterministic
machine $M_i$ on $x$ for $2^{|x|}$ steps and accepts iff $M_i$ accepts
$x$ within that many steps. Hence
$$
\mathfrak{L}(U) \in NTIME(2^{|x|+|i|})
$$

Now for every language $L \in NTIME(2^n)$ can be decided in
$NTIME(2^{|x|+|i|})$ where $|i|$ is the constant sized description of
the machine accepting $L$. And by our assumption this can be simulated
in $DTIME(2^{n^c})$ for some fixed $c$. Consequently, every language
in $\left[NTIME(2^n)\right]/n$ can be simulated in
$\left[DTIME(2^{n^c})\right]/n$, and the proof is done. \qed


\subsection{Proof of Step \ref{s4}}

Just similar to the earlier proof, every language in
$\left[NTIME(2^n)\right]/n$ can be simulated in $SIZE(n^d)$ for some
fixed $d$ and we would hence obtain a similar contradiction to
\ref{s1} if \ref{s4} is false. \qed

\subsection{Proof of Step \ref{s5}}

By the [BFNW] theorem we have that $EXP\nsubseteq P/poly$ would imply
that $BPP\subseteq \text{i.o}-SUBEXP$. The point to note here is that the proof
of the theorem relativises!

For every oracle $A$,
$$
EXP^A \nsubseteq P^A/poly \Rightarrow BPP^A \subset \text{i.o}-SUBEXP^{``A''}
$$
where $SUBEXP^{``A''}$ is the class of $SUBEXP$ turing machines with
oracle $A$ but is allowed only small (polynomial sized) queries to the
oracle. 

In particular, when $A=SAT$, 
$$
EXP \nsubseteq P^{SAT}/poly \Rightarrow BP.NP = AM \subseteq BP.P^{NP}
\subseteq \text{i.o}-NSUBEXP
$$

Like in the BFNW case, if we can get hold of a ``suitably hard'' function,
then we can derandomize $AM$ into $SUBEXP$ non-uniformly. 

\bigskip

Assume $NEXP\neq EXP$, let $\mathfrak{L}(M)=L\in NE,L\notin EXP$. Since $L$ is a
language in $NTIME(2^n)$, accepting paths of $M$ are of size $2^n$,
one can interpret them as functions from $\Sigma^n$ to $\Sigma$.

The number of oracle circuits of size $n^c$ is atmost $2^{n^{c'}}$ for
some $c'$, and hence they can all be enumerated in $EXP$. Since
$L\notin EXP$, there must exist infinitely many $n$ such that there is
an $x_n$ of length $n$ such that the accepting paths of $M$ on $x_n$
do not have polynomial sized circuits.


Pick an $x_1$ that fails for $c=1$, and a larger string $x_2$ that
fails for $c=2$ and so on. Hence, this gives you an infinite sequence
$\{x_n\}$ such that for every polynomial $n^c$, all but finitely many
$x_n$'s are such that $M(x_n)$'s accepting paths are not in
$SIZE^{SAT}(|x_n|^c)$.

This basically shows that the computations paths are not in $P/poly$
almost everywhere.

Consider advice strings of this form $z_n = 1\cdot x_n$ if such an $x_n$
exists at that length, and $0^{n+1}$ otherwise. Now with this advice,
in $NTIME(2^{|z_n|})$ one can guess the computational path of $M(x_n)$,
and we would get the hard function. 

And now, with our Nisan-Wigderson design as in [BFNW] we can
simulate $BP.NP = AM$ in $NSUBEXP$ with the advice $z_n$. 

\medskip

Hence $NEXP \neq EXP \Rightarrow AM \subseteq
\text{i.o}-[NTIME(2^{n^\epsilon})]/n^\epsilon$ for every $\epsilon >
0$ \qed

\subsection{Proof of Theorem \ref{ik}}

We have remarked earlier that if $NEXP \subseteq P/poly$, then $EXP = MA =
AM$. And further, with step \ref{s5}, $NEXP \subseteq P/poly$ and
$NEXP \neq EXP$ would imply that $EXP = AM \subseteq
\text{i.o}-\left[NTIME(2^n)\right]/n$.

Now, if $NEXP \neq EXP$ with the assumption that $NEXP \subseteq
P/poly$, by \ref{s4} we have $EXP \nsubseteq
\text{i.o}-\left[NTIME(2^n)\right]/n$, contradicting the above
implication. 

Hence $NEXP \subseteq P/poly \Rightarrow NEXP = EXP$ \qed


\section{One more theorem}
\begin{definition}
$L\in MA\cdot EXP$ if there exists a polynomial time predicate $R(x,y,z)$
and a polynomial $n^c$ such that if $x\in L$, there exists a $y\in
\Sigma^{2^{n^c}}$ such that 
$$
\Pr_z[R(x,y,z)=1]\geq \frac{2}{3}
$$
And if $x\notin L$,
$$
\Pr_z[R(x,y,z)=1]\leq \frac{1}{3}
$$
\end{definition}

\begin{theorem}$MA\cdot EXP \nsubseteq P/poly$, $ZEXP^{NP}\nsubseteq P/poly$
\end{theorem}

\begin{proof}
If $EXP \nsubseteq P/poly$, then we are done. Otherwise, we know that
$EXP = MA$. And just as $P=NP \Rightarrow EXP=NEXP$, we can extend
$EXP = MA$ to $EEXP = MA\cdot EXP$.

But $EEXP \nsubseteq P/poly$, infact $DTIME(2^{n^{f(n)}}) \nsubseteq
P/poly$ for any $f$ that grows!

And $MA \subseteq ZPP^{NP}$ and hence again we have
$ZEXP^{NP}\subseteq P/poly$
\end{proof}

\end{document}




