\documentclass[landscape]{slides}
\usepackage{epsf}
\usepackage[dvips]{color}
\usepackage{pst-node}
\usepackage{pstricks}
\usepackage{pst-grad}
\usepackage{graphicx}

\input{slidedefs}
\input{pictures}
\input{code}
\input{preamble}
\renewcommand{\LOGO}{\psset{unit=6pt}\pspicture(0,0)(5,5)
                \rput(3,3){\miniprog}\endpspicture}

\newcommand{\labeling}{\lambda}
\newcommand{\GraphZ}{Z}
\newcommand{\DefinitionBox}[1]{
        \FRAMEBOXRIC{lightgreen}{
        \begin{tabular}{c}
        #1
        \end{tabular}}}
\newcommand{\TheoremBox}[1]{
        \FRAMEBOXRIC{lightblue}{
        \begin{tabular}{c}
        #1
        \end{tabular}}}
\newcommand{\GeneralBox}[1]{
        \FRAMEBOXRIC{yellow}{
        \begin{tabular}{c}
        #1
        \end{tabular}}}
\newcommand{\linprog}[5]{
{\small
\pspicture(-15,-15)(50,15)
\psline[linewidth=3pt,linecolor=#1]{c-c}(5,-15)(-15,15)
\psline[linewidth=3pt,linecolor=#2]{c-c}(-10,-15)(10,15)
\psline[linewidth=3pt,linecolor=#3]{c-c}(-15,-15)(5,15)
\psline[linewidth=3pt,linecolor=#4]{c-c}(20,-15)(-10,15)
\psline[linewidth=3pt,linecolor=#5]{c-c}(-7.5,-15)(20,15)
\psline[linewidth=3pt,linecolor=green]{<-}(20,0)(50,0)
\endpspicture
}}
\newcommand{\miniprog}{
{\small
\pspicture(0,0)(4,4)
\psline[linewidth=3pt,linecolor=blue]{c-c}(1,-3)(-3,3)
\psline[linewidth=3pt,linecolor=blue]{c-c}(-3,-3)(1,3)
\psline[linewidth=3pt,linecolor=red]{c-c}(4,-3)(-2,3)
\psline[linewidth=3pt,linecolor=red]{c-c}(-1.5,-3)(4,3)
\endpspicture
}}

% \DeclareSymbolFont{AMSb}{U}{msb}{m}{n}
% \DeclareMathSymbol{\Re}{\mathord}{AMSb}{``52}

%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
\begin{document}
\pagestyle{empty}

%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%

\panec{yellow}{blue}{8.8in}{\Large
  Linear Programming in Subexponential Time
}

%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%

\begin{barslide}[Linear Programming Algebraic View]
\vfill

% the optimal solution for some objective function subject to a set of
% inequalities 
\GeneralBox{
%
for $x,c \in\Rea^d$; $b\in\Rea^n$; $A\in\Rea^{(n\times d)}$\hfill\hspace*{1pc}\\
%
min $c^Tx$\hfill\hspace*{1pc}\\
%
subject to $Ax \leq b$\hfill\hspace*{1pc}\\
}

\vfill
\end{barslide}

%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%

\begin{barslide}[Linear Programming Geometric View]
\vfill

% the extremal point of a polygon defined by the intersection of $n$
% half-spaces in $d$-dimensional space

\linprog{black}{black}{black}{black}{black}

\vfill
\end{barslide}

%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%

\begin{barslide}[Goals]
\vfill

\end{center}
\slideemph{The Holy Grail} \\[2mm]
\ARROW{green} polynomial time algorithm in unit-cost model \\
\vfill
\slideemph{Previous Work} \\[2mm]
\ARROW{green} polynomial time algorithm in bit-cost model\\[4mm]
% mention ellipsoid, interior point
\ARROW{green} $O(d!n)$ time algorithm in unit-cost model (Seidel) \\
\vfill
\slideemph{Today} \\[2mm]
\ARROW{green} subexponential time algorithm in unit-cost model \\
\begin{center}

\vfill
\end{barslide}

%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%

\begin{barslide}[Outline]

\end{center}
\ARROW{green} \hbox to 4cm{SolveLP1} --- Clarkson (1988)\\[8mm]
\ARROW{green} \hbox to 4cm{SolveLP2} --- Clarkson (1988)\\[8mm]
\ARROW{green} \hbox to 4cm{BasisLP} --- Matousek, Sharir and Welzl (1992)\\
\hspace*{6.5cm} also Kalai (1992)\\
\begin{center}

\slideemph{Combined Result: $O(d^2n + e^{O(\sqrt{d\log d})})$}

\vfill
\end{barslide}
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%

\begin{barslide}[Definitions]
\vfill

\end{center}
\ARROW{green} \hbox to 6cm{$H$\dotfill} set of $n$ linear constraints. \\[8mm]
\ARROW{green} \hbox to 6cm{$v(H)$\dotfill} optimum point subject to $H$. \\[8mm]
% mention c non-negative
\ARROW{green} \hbox to 6cm{a basis\dotfill} minimal set $B$ with $v(B) >
-\infty$.\\[8mm] 
\ARROW{green} \hbox to 6cm{a basis for $H$\dotfill} basis $B\subseteq H$
s.t. $v(B)=v(H).$\\ 
% mention d constraints define a point so a basis has size d
% mention we assume we start with a basis

{\it Note: the size of a basis is $d$.}
\begin{center}

\vfill
\end{barslide}

%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%

\begin{barslide}[Example]
\vfill

% the extremal point of a polygon defined by the intersection of $n$
% half-spaces in $d$-dimensional space

\linprog{black}{black}{black}{blue}{blue}

\vfill
\end{barslide}

%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%

\begin{barslide}[Random Sampling]
\vfill

\end{center}
\ARROW{green} Randomly reduce large problem to small subproblem. \\[8mm]
\ARROW{green} Solve small subproblem. \\[8mm]
\ARROW{green} If solution solves large problem, you win. \\[8mm]
\ARROW{green} Otherwise, get hints from wrong solution and try again. \\
\begin{center}

\vfill
\end{barslide}

%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%

\begin{barslide}[Algorithm: SolveLP1]
\vfill

\TheoremBox{
SolveLP1($H$)\hfill~\\[-1ex]
~~~ $G$ := $\emptyset$ \hfill~\\[-1ex]
~~~ repeat \hfill~\\[-1ex]
~~~~~~ $R$ := random subset of $H$ of size $r$ \hfill~\\[-1ex]
~~~~~~ $B$ := SolveLP1($G\cup R$) \hfill~\\[-1ex]
~~~~~~ $V$ := set of constraints violated by $v(B)$ \hfill~\\[-1ex]
~~~~~~ if $|V|$ is small enough, then $G$ := $G\cup V$ \hfill~\\[-1ex]
~~~ until $V = \emptyset$ \hfill~\\[-1ex]
}
% mention very similar to seidel if we take r = n-1

\vfill
\end{barslide}

%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%

\begin{barslide}[Example]

% motivate we only augment G d times
$r = 2$, ``small enough'' $= 1$\\
key: {\color{green} R = green}~~~{\color{red} V = red}~~~{\color{blue} G
= blue}\\
 
\vfill
\linprog{black}{black}{black}{black}{black}

\vfill
\end{barslide}

%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%

\begin{barslide}[Example]

% motivate we only augment G d times
$r = 2$, ``small enough'' $= 1$\\
key: {\color{green} R = green}~~~{\color{red} V = red}~~~{\color{blue} G
= blue}\\
\vfill
\linprog{green}{red}{green}{red}{red}

\vfill
\end{barslide}

%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%

\begin{barslide}[Example]

% motivate we only augment G d times
$r = 2$, ``small enough'' $= 1$\\
key: {\color{green} R = green}~~~{\color{red} V = red}~~~{\color{blue} G
= blue}\\
\vfill
\linprog{black}{green}{black}{green}{red}

\vfill
\end{barslide}

%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%

\begin{barslide}[Example]

% motivate we only augment G d times
$r = 2$, ``small enough'' $= 1$\\
key: {\color{green} R = green}~~~{\color{red} V = red}~~~{\color{blue} G
= blue}\\
\vfill
\linprog{green}{green}{black}{red}{blue}

\vfill
\end{barslide}

%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%

\begin{barslide}[Example]

% motivate we only augment G d times
$r = 2$, ``small enough'' $= 1$\\
key: {\color{green} R = green}~~~{\color{red} V = red}~~~{\color{blue} G
= blue}\\
\vfill
\linprog{black}{black}{black}{blue}{blue}

\vfill
\end{barslide}

%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%

\begin{barslide}[Analysis]
\vfill

% mention successful iteration is one in which state changes
\slideemph{Bounding the number of iterations until a successful one}
\vfill
% analyze with parameter r and optimize running time for r later
\end{center}
\ARROW{green} number of violated constraints is $nd/r$
$$E[|V|]=n\Pr(constraint\ is\ violated) \leq n(d/(r+1))$$
\begin{center}
\DefinitionBox{ ``small enough'' := $2nd/r$ }\\[8mm]
\end{center}
\ARROW{green} number of iterations until a successful one is $2$
$$\Pr(|V| \geq 2E[|V|]) < 1/2$$
\begin{center}

\vfill
\end{barslide}

%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%

\begin{barslide}[Algorithm: SolveLP1]
\vfill

\TheoremBox{
SolveLP1($H$)\hfill~\\[-1ex]
~~~ $G$ := $\emptyset$ \hfill~\\[-1ex]
~~~ repeat \hfill~\\[-1ex]
~~~~~~ $R$ := random subset of $H$ of size $r$ \hfill~\\[-1ex]
~~~~~~ $B$ := SolveLP1($G\cup R$) \hfill~\\[-1ex]
~~~~~~ $V$ := set of constraints violated by $v(B)$ \hfill~\\[-1ex]
~~~~~~ if {\color{red} $|V| \leq 2nd/r$}, then $G$ := $G\cup V$ \hfill~\\[-1ex]
~~~ until $V = \emptyset$ \hfill~\\[-1ex]
}
% mention very similar to seidel if we take r = n-1

\vfill
\end{barslide}

%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%

\begin{barslide}[Analysis]
\vfill

\slideemph{Bounding the number of successful iterations}
\vfill

%\linprog{black}{red}{green}{green}{red}
{\color{red}
If no basis constraint is violated,\\ 
then the solution must be the optimal solution!
}\\
\vfill
{\color{red}
In every successful iteration,\\
a basis constraint is added to $G$!
}
\vfill
\end{center}
\ARROW{green} number of successful iterations is $d$ 
\begin{center}

\vfill
\end{barslide}

%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%

\begin{barslide}[Analysis]
\vfill

\slideemph{Running time}
\vfill
\end{center}
\ARROW{green} number of constraints in recursive call is at most $r+2nd^2/r$
$$r + |G| \leq r + d|V| \leq r + 2nd^2/r$$

\ARROW{green} running time is
$$T_1(n) \leq 2dT_1(r + 2nd^2/r) + O(d^2n)$$

\begin{center}
\DefinitionBox{
$r$:=$d\sqrt{2n}$
}  
\end{center}

\ARROW{green} base case is $n = O(d^2)$
$$n\leq d\sqrt{2n}\Longrightarrow n\leq 2d^2$$

\begin{center}
\vfill
\end{barslide}

%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%

\begin{barslide}[Algorithm: SolveLP1]
\vfill

\TheoremBox{
SolveLP1($H$)\hfill~\\[-1ex]
~~~ {\color{red} if $n \leq 2d^2$, then return solution}\hfill~\\[-1ex]
~~~ $G$ := $\emptyset$ \hfill~\\[-1ex]
~~~ repeat \hfill~\\[-1ex]
~~~~~~ $R$ := random subset of $H$ of size {\color{red}$d\sqrt{2n}$}
\hfill~\\[-1ex] 
~~~~~~ $B$ := SolveLP1($G\cup R$) \hfill~\\[-1ex]
~~~~~~ $V$ := set of constraints violated by $v(B)$ \hfill~\\[-1ex]
~~~~~~ if {\color{red}$|V| \leq \sqrt{2n}$}, then $G$ := $G\cup V$ \hfill~\\[-1ex]
~~~ until $V = \emptyset$ \hfill~\\[-1ex]
}
% mention very similar to seidel if we take r = n-1

\vfill
\end{barslide}

%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%

\begin{barslide}[Analysis with Seidel]
\vfill

\TheoremBox{
SolveLP1($H$)\hfill~\\[-1ex]
~~~ if $n \leq 2d^2$, then return {\color{red} Seidel($H$)}\hfill~\\[-1ex]
~~~ $G$ := $\emptyset$ \hfill~\\[-1ex]
~~~ repeat \hfill~\\[-1ex]
~~~~~~ $R$ := random subset of $H$ of size $d\sqrt{2n}$\hfill~\\[-1ex] 
~~~~~~ $B$ := {\color{red} Seidel($G\cup R$)} \hfill~\\[-1ex]
~~~~~~ $V$ := set of constraints violated by $v(B)$ \hfill~\\[-1ex]
~~~~~~ if $|V| \leq \sqrt{2n}$, then $G$ := $G\cup V$ \hfill~\\[-1ex]
~~~ until $V = \emptyset$ \hfill~\\[-1ex]
}
% mention very similar to seidel if we take r = n-1

\vfill
\end{barslide}

%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%

\begin{barslide}[Analysis with Seidel]
\vfill

\slideemph{Plug in Seidel}
$$S(n,d) = O(d!n)$$
\vfill

\ARROW{green} running time is $O(d^2n+d^2d!\sqrt{n})$\hfill~\\
\begin{eqnarray*}
T(n) &=& 2dS(d\sqrt{n},d) + O(d^2n) \\
&=& O(d^2n + d^2d!\sqrt{n})
\end{eqnarray*}
% mention this removes linear dependence on n in part exp in d

\vfill
\end{barslide}

%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%

\begin{barslide}[Improving the Algorithm]
%\vfill

% mention bottleneck in running time of last alg was recursive call
% because that's exponential in input size, so adding a poly number
% of loops while reducing input to recursion is good for us
\slideemph{Reduce sample size}
\vfill
{\color{red}
{Instead of forcing the violated constraints, \\
include them in random sample with higher probability!}}

% mention every time a constraint is violated, a basis constraint is
% violated, so the probability we include the basis constraints in the
% random sample grows really fast

\vfill
\end{barslide}

%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%

\begin{barslide}[Algorithm: SolveLP2]

{\it $H$ is a multiset}
% mention |H| includes multiplicity
\vfill
\TheoremBox{
SolveLP2($H$)\hfill~\\[-1ex]
~~~ repeat \hfill~\\[-1ex]
~~~~~~ $R$ := random subset of $H$ of size $r$ \hfill~\\[-1ex]
~~~~~~ $B$ := SolveLP2($R$) \hfill~\\[-1ex]
~~~~~~ $V$ := multiset of constraints violated by $v(B)$ \hfill~\\[-1ex]
~~~~~~ if $|V|$ is small enough, then $H$ := $H\cup V$\hfill~\\[-1ex]
%~~~~~~~~~ for all constraints in $V$, \hfill~\\[-1ex]
%~~~~~~~~~ double their multiplicity in $H$\hfill~\\[-1ex]
~~~ until $V = \emptyset$ \hfill~\\[-1ex]
}

\vfill
\end{barslide}

%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%

\begin{barslide}[Analysis]
\vfill

\slideemph{Bounding the number of iterations until a successful one}
\vfill
\end{center}
\ARROW{green} number of violated constraints is $|H|d/r$
\begin{center}
\DefinitionBox{
\hfill~\\[-4mm]
``small enough'' := $2|H|d/r$\\
\hfill~\\[-4mm]
}
\end{center}

\ARROW{green} number of iterations until a successful one is $2$\hfill~\\
% mention a successful iteration is one in which the state changes
\begin{center}

\vfill
\end{barslide}

%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%

\begin{barslide}[Algorithm: SolveLP2]

{\it $H$ is a multiset}
% mention |H| includes multiplicity
\vfill
\TheoremBox{
SolveLP2($H$)\hfill~\\[-1ex]
~~~ repeat \hfill~\\[-1ex]
~~~~~~ $R$ := random subset of $H$ of size $r$ \hfill~\\[-1ex]
~~~~~~ $B$ := SolveLP2($R$) \hfill~\\[-1ex]
~~~~~~ $V$ := multiset of constraints violated by $v(B)$ \hfill~\\[-1ex]
~~~~~~ if {\color{red} $|V| \leq 2|H|d/r$}, then $H$ := $H\cup
V$\hfill~\\[-1ex] 
%~~~~~~~~~ for all constraints in $V$, \hfill~\\[-1ex]
%~~~~~~~~~ double their multiplicity in $H$\hfill~\\[-1ex]
~~~ until $V = \emptyset$ \hfill~\\[-1ex]
}

\vfill
\end{barslide}

%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%

\begin{barslide}[Analysis]
\hfill~\\[-20mm]
%\vfill
\slideemph{Bounding the number of successful iterations}\\[5mm]
%\vfill
Fix a basis $B$ of $H$.\hfill~\\[5mm]
% mention in every successful iteration, some basis constraint is
% violated 
% mention the multiplicity of some constraint in the basis is doubled
\end{center}
\ARROW{green} in each iteration, multiplicity of a constraint in
$B$ is doubled\\[2mm] 
\ARROW{green} after $kd$ iterations, some constraint in B has
multiplicity\\[2mm] at least $2^k$\\[10mm] 
\ARROW{green} in each iteration, size of $H$ increases by
$2|H|d/r$\\[2mm]
\ARROW{green} after $kd$ iterations, $|H|$ is at most
$n\exp(2d^2/r)^k$
$$|H| \leq n(1+2d/r)^{kd} < n\exp(2kd^2/r)$$
\begin{center}
\GeneralBox{
$2^k < n\exp(2d^2/r)^k$
}
\vfill
\end{barslide}

%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%

\begin{barslide}[Analysis]
%\vfill
\hfill~\\[-16mm]
\slideemph{Bounding the number of successful iterations}\\[8mm]
%\vfill
\GeneralBox{
$2^k<n\exp(2d^2/r)^k$
}\\[8mm]
\ARROW{green} algorithm will terminate when inequality is
violated\hfill~\\[6mm] 
\ARROW{green} minimize $r$ subject to $2\geq \exp(2d^2/r)$\hfill~\\[6mm]
\DefinitionBox{
$r=O(d^2)$
}\\[6mm]
\ARROW{green} minimize $k$ subject to $2^k\geq ne^{k/2}$\hfill~\\[6mm]
\DefinitionBox{
$k=O(\log n)$
}\\

\vfill
\end{barslide}

%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%

\begin{barslide}[Algorithm: SolveLP2]

{\it $H$ is a multiset}
% mention |H| includes multiplicity
\vfill
\TheoremBox{
SolveLP2($H$)\hfill~\\[-1ex]
~~~ repeat \hfill~\\[-1ex]
~~~~~~ $R$ := random subset of $H$ of size {\color{red} $4d^2$} \hfill~\\[-1ex]
~~~~~~ $B$ := SolveLP2($R$) \hfill~\\[-1ex]
~~~~~~ $V$ := multiset of constraints violated by $v(B)$ \hfill~\\[-1ex]
~~~~~~ if {\color{red} $|V| \leq |H|/2d$}, then $H$ := $H\cup V$\hfill~\\[-1ex]
%~~~~~~~~~ for all constraints in $V$, \hfill~\\[-1ex]
%~~~~~~~~~ double their multiplicity in $H$\hfill~\\[-1ex]
~~~ until $V = \emptyset$ \hfill~\\[-1ex]
}

\vfill
\end{barslide}

%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%

\begin{barslide}[Analysis]
\slideemph{Running Time}
\vfill

\ARROW{green} running time is\hfill~
$$T_2(n) \leq O(d\log nT'(d^2) + d^2n\log n)$$

\ARROW{green} base case is $n = O(d^2)$\hfill~\\
% mention if we solve lp for n = O(d^2) in pol time, we get pol time alg
% for lp in general

\vfill
\end{barslide}

%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%

\begin{barslide}[Algorithm: SolveLP2]

{\it $H$ is a multiset}
% mention |H| includes multiplicity
\vfill
\TheoremBox{
SolveLP2($H$)\hfill~\\[-1ex]
~~~ repeat \hfill~\\[-1ex]
~~~~~~ $R$ := random subset of $H$ of size $4d^2$ \hfill~\\[-1ex]
~~~~~~ $B$ := {\color{red} solution for $R$} \hfill~\\[-1ex]
~~~~~~ $V$ := multiset of constraints violated by $v(B)$ \hfill~\\[-1ex]
~~~~~~ if $|V| \leq |H|/2d$, then $H$ := $H\cup V$\hfill~\\[-1ex]
%~~~~~~~~~ for all constraints in $V$, \hfill~\\[-1ex]
%~~~~~~~~~ double their multiplicity in $H$\hfill~\\[-1ex]
~~~ until $V = \emptyset$ \hfill~\\[-1ex]
}

\vfill
\end{barslide}

%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%

\begin{barslide}[Analysis with SolveLP1 and Seidel]
\vfill

\TheoremBox{
SolveLP1($H$)\hfill~\\[-1ex]
~~~ if $n \leq 2d^2$, then return {\color{red} SolveLP2($H$)}\hfill~\\[-1ex]
~~~ $G$ := $\emptyset$ \hfill~\\[-1ex]
~~~ repeat \hfill~\\[-1ex]
~~~~~~ $R$ := random subset of $H$ of size $d\sqrt{2n}$\hfill~\\[-1ex] 
~~~~~~ $B$ := {\color{red} SolveLP2($G\cup R$)} \hfill~\\[-1ex]
~~~~~~ $V$ := set of constraints violated by $v(B)$ \hfill~\\[-1ex]
~~~~~~ if $|V| \leq \sqrt{2n}$, then $G$ := $G\cup V$ \hfill~\\[-1ex]
~~~ until $V = \emptyset$ \hfill~\\[-1ex]
}
% mention very similar to seidel if we take r = n-1

\vfill
\end{barslide}

%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%

\begin{barslide}[Analysis with SolveLP1 and Seidel]

{\it $H$ is a multiset}
% mention |H| includes multiplicity
\vfill
\TheoremBox{
SolveLP2($H$)\hfill~\\[-1ex]
~~~ repeat \hfill~\\[-1ex]
~~~~~~ $R$ := random subset of $H$ of size $4d^2$ \hfill~\\[-1ex]
~~~~~~ $B$ := {\color{red} Seidel($R$)} \hfill~\\[-1ex]
~~~~~~ $V$ := multiset of constraints violated by $v(B)$ \hfill~\\[-1ex]
~~~~~~ if $|V| \leq |H|/2d$, then $H$ := $H\cup V$\hfill~\\[-1ex]
%~~~~~~~~~ for all constraints in $V$, \hfill~\\[-1ex]
%~~~~~~~~~ double their multiplicity in $H$\hfill~\\[-1ex]
~~~ until $V = \emptyset$ \hfill~\\[-1ex]
}

\vfill
\end{barslide}

%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%

\begin{barslide}[Analysis with SolveLP1 and Seidel]

\vfill
\slideemph{Plug in Seidel and plug into SolveLP1}
$$S(n,d)=O(d!n)$$
\vfill
\ARROW{green}running time is $O(d!d^3\log n+d^3\sqrt{n}\log n+d^2n)$\hfill~\\
\begin{eqnarray*}
T(n) &=& O(dT_2(d\sqrt{n})+d^2n) \cr
&=& O(d(d\log n S(d^2,d)+d^2\sqrt{n}\log n)+d^2n) \cr
&=& O(d!d^3\log n+d^3\sqrt{n}\log n+d^2n)
\end{eqnarray*}
% mention this removes poly dependence on n in part exp in d

\vfill
\end{barslide}

%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%

\begin{barslide}[Solving Small LPs]
\TheoremBox{
Seidel($H$)\hfill~\\[-1ex]
~~~ if $|H| = d$, then return $H$ \hfill~\\[-1ex]
~~~ else \hfill~\\[-1ex]
~~~~~~ Pick a random constraint $c\in H$ \hfill~\\[-1ex]
~~~~~~ $B$ := Seidel($H - \{c\}$) \hfill~\\[-1ex]
~~~~~~ if $v(B)$ does not violate $c$, then return $B$\hfill~\\[-1ex]
~~~~~~ else project constraints onto $c$ and solve \hfill~\\
}\\
% mention when we project constraints, we disregard all information
% about the basis, but it might help us.  that is, the old solution
% is probably close to the new solution; they probably share basis
% constraints
\vfill
\ARROW{green}running time is $O(d!n)$
$$S(n,d) = S(n-1,d)+(d/n)S(n-1,d-1)+O(d^2)$$
%\vfill
\end{barslide}

%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%

\begin{barslide}[Algorithm: BasisLP]
\slideemph{Modify Seidel!}\\
\vfill
\TheoremBox{
BasisLP($H$,$B$)\hfill~\\[-1ex]
~~~ Pick a random constraint in $c\in H - B$ \hfill~\\[-1ex]
~~~ $B$ := BasisLP($H-\{c\}$,$B$) \hfill~\\[-1ex]
~~~ if $v(B)$ does not violate $c$, then return $B$ \hfill~\\[-1ex]
~~~ else return BasisLP($H$,Basis($B\cup\{c\}$)) \hfill~\\
}\\
\vfill
\end{barslide}

%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%

\begin{barslide}[Analysis Idea]
\vfill

{\color{red}
Define a parameter that captures the quality of the hint!
}

\vfill
\ARROW{green}hint quality $k$ is (roughly) $d-|B_{hint}\cap
B_{real}|$\hfill~\\[4mm] \
$$T(n,k) \leq T(n-1,k) +
\frac{1}{n-d}\sum_{i=1}^{k}(1+T(n,k-i))$$
\ARROW{green}running time is 
$O\left(nd\exp\left(\sqrt{d\ln(n+1)}\right)\right)$\hfill~\\
\vfill
\end{barslide}

%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%

\begin{barslide}[Conclusion]
\vfill

{\color{red}
Use BasisLP as base of recursion!
}
\vfill
\ARROW{green}running time is $O(d^2n + e^{O(\sqrt{d\log d})})$\hfill~\\

\vfill
\end{barslide}

%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%

\end{document}








