\documentclass[11pt]{article}
\usepackage{handout}
\usepackage{amsmath,amssymb,amsthm,epsfig}
\usepackage[ruled,vlined]{algorithm2e}
\begin{document}
\input{courseMacros}

\newtheorem{Theorem}{Theorem}
\newtheorem{Corollary}{Corollary}
\newtheorem{Lemma}{Lemma}
\newtheorem{Claim}{Claim}
\theoremstyle{definition}
\newtheorem{Definition}{Definition}
\newtheorem{problem}{Problem}
\newenvironment{Proof}{\noindent{\bf Proof: }}{\qed}
%\theoremstyle{remark}
\newtheorem{Remark}{Remark}

\thispagestyle{empty}
\thispagestyle{empty}
\setlength{\parindent}{0pt}
\setlength{\parskip}{1.8ex}


%%%  EDIT THE FOLLOWING TO UPDATE DATE AND LECTURE NUMBER

\lecturehead{CS7880}{Algorithmic Power Tools}{Fall 2009}{10
November 2009}{Hooman Javaheri}

\newcommand{\p}{\mathcal{P}}
\newcommand{\U}{\mathcal{U}}
\newcommand{\coll}{\mathcal{S}}
\newcommand{\xpy}{x + \lambda y}
\newcommand{\Alg}{\mathcal{A}}
\newcommand{\opt}{\mbox{OPT}}
\newcommand{\eps}{\varepsilon}


\noindent {\bf Lecture Outline:}


%%% Itemized outline of the lecture
\begin{itemize}
  \item Complete Steiner network analysis

\end{itemize}

In this lecture, we will complete the analysis of Jain's
2-approximation algorithm for the Generalized Steiner Network problem.

\section{Review of the problem and the algorithm}
The Generalized Steiner Network problem is:

{\bf Problem 1.}{ Given a graph $G(V,E)$, a cost function $c:E \to
Z^ + $, and a connectivity requirement $r_{uv}$ for each pair
$(u,v)$, find a min-cost subgraph of $G$ satisfying the connectivity
requirement for all $(u,v)$, where $u_{e}$ is maximum number of
copies you can pick for edge $e$}

The corresponding LP can be written this way

\[ \min\sum c_{e}x_{e} \]
  \[ s.t. \sum_{e \in \delta(S)} x_e \geq f(S) \]
  \[ 0 \leq x_{e} \leq u_{e} \]
  where,
\[
f(S) = \mathop {\max }\limits_{\mathop {u,v}\limits_{u \in S,v \in
\bar S} } r_{uv}
\]

 $\delta(S)$ is the set of edges connecting $S$ to
  $\overline{S}$.

Here is Jain's algorithm for the problem:

\begin{algorithm}\label{alg:jain}
\SetAlFnt{\small} \dontprintsemicolon
 $1.$ $F \leftarrow {\O}$ , Define $f$ according to $r_{uv}$s.
 $f' \leftarrow f$.\;
 $2.$  \hspace{0.1in}\Repeat{$f'(S) = 0$} {$2.1.$\hspace{0.1in} Solve LP for $f'$ to obtain a solution $x$ with desired property:
       \hspace{0.1in}$\exists e \hspace{0.1in}s.t. \hspace{0.1in}x_e \geq 1/2$\;
       $2.2.$\hspace{0.1in} Add $\lceil x_e \rceil$ copies of all $e$ s.t. $x_e \geq 1/2$ to $F$ \;
       $2.3.$\hspace{0.1in} Remove the above edges $e$ from $G$. \;
       $2.4.$\hspace{0.1in} $f'(S) \leftarrow \max(0,f(S) - \delta_F(S))$
       where, $\delta_F(S)$ is set of edges of $F$ crossing $S$. \;}
 $3.$ Return $F$

\caption{Jain's algorithm for generalized steiner network problem}
\end{algorithm}


In the previous lecture, we started a 3 step approach to analyze the
algorithm:
\begin{enumerate}
 \item LP can be solved in Poly-Time ,in fact, we will find an optimal BFS in each iteration.
 \item The algorithm is a 2-approximation assuming the desired property in
 statement 2.1 is true.
 \item We finally prove the desired property in statement 2.1.

\begin{Theorem}\label{thm1} Desired Property: for all BFSs,\hspace{0.1in} $\exists e \hspace{0.1in}s.t. \hspace{0.1in}x_e \geq
                1/2$ \hspace{0.1in} Actually, we will prove it for 1/3
                rather than 1/2. The approach for 1/2 is the similar,
                but requires some complicated case analysis for which
                we refer to the original paper.  
\end{Theorem}
\end{enumerate}

\section{Completing the analysis: Proving Theorem~\ref{thm1}}

Having proved first two steps, we have got one step to go, the last
but definitely not the least step.  As we mentioned before, we are
going to prove Theorem~\ref{thm1} in two steps.  We first prove
\begin{Theorem} \label{thm2}
Suppose $x$ is a BFS of Generalized Steiner Network's LP Further
assume $x_e \in (0,1)$ not including 0 and 1.  Suppose there are $m$
such edges.  There exist a set of $m$ tight constraints that are
independent and form a laminar family.  \end{Theorem}
We then prove Theorem~\ref{thm1} using Theorem~\ref{thm2}.

Let's define terminology here in more detail.
\begin{itemize}
\item { \bf Independent:} for every $S$ if $e$ crosses the cut the
coefficient of $x_e$ in LP is 1; otherwise it is zero.  Therefore, we
can define a vector $A_S$ of coefficients of each edge. Note that
wlog, we can number the edges in arbitrary order and define $A_S$ as a
m dimension 0-1 vector, where $m$ is the numbers of edges .

A collection of sets is independent if their corresponding $A_S$'s are
linearly independent.

\item { \bf Cross: } Two sets $S$ and $T$ are said to cross if $ S-T ,
T-S , S \cap T $ are all non-empty.

\item { \bf Laminar family: } A laminar family is a collection of sets no
two of which cross.
\end{itemize}

\subsection{Proof of Theorem 1, assuming Theorem 2.}
Assuming that Theorem 2 is true, we are going to prove Theorem 1.
First, let's take a close look at a laminar family.  Let $L$ denote
the laminar family in Figure \ref{fig:lam2}. As we mentioned before
laminar family can be represented with a tree hierarchy. Figure
\ref{fig:tree} shows the corresponding tree for laminar family $L$.

\begin{figure}
\center \epsfig{file=laminar2.eps, width =6in} \caption{Laminar
Family L} \label{fig:lam2}
\end{figure}

In order to prove that $\exists e \hspace{0.1in}s.t.
\hspace{0.1in}x_e \geq 1/3$, we only need to show $\exists$ set $S$ in
this Laminar family that has at most 3 1's in its $A_S$ (i. e. there
are at most 3 edges crossing this set).  We will show that if all sets
have more than 3 crossing edges, then the total number of edge
endpoints exceeds $2m$, which is a contradiction.

Let us consider an easy case first.  Suppose all sets are disjoint. We
have $m$ edges corresponding to $2m$ end-points. In this scenario,
each edge crosses two sets. Considering we have only $m$ sets, it is
trivial to see that Theorem 1 holds true in this situation.

For a slightly harder case, let's look at the tree corresponding to
first 10 sets of the laminar family $L$ (Figure \ref{fig:tree}.). If
we assume that each set has at least 4 crossing edges, adding up the
number of the edges for leaves of the tree, we will have 24 end-points
which is not possible since we at most have 20 endpoints for 10 sets.

The full argument is by processing the tree formed by a laminar family
(actually a tree of the forest formed by a laminar family) in a
bottom-up manner.  We will show that if every set of the laminar
family has at least 4 crossing edges, then we can do the processing
such that we associate two endpoints with every node of the tree and
four endpoints at the root, all distinct from one another, leading to
a total of more than $2m$ endpoints, a contradiction.  In our
argument, we will only associate an endpoint with a node (set) if the
endpoint lies in the set (note that the endpoint may not correspond to
an edge that crosses the set).

The above claim is true at the leaves by our assumption that each set
has at least 4 edges crossing it.  Now suppose we have maintained the
above invariant for all children of a particular node (set) $S$.  If
$S$ has more than one child, then we can ``move up'' two of the
endpoints associated with each of its children to $S$, and maintain
the invariant.  So the difficult case is when $S$ has only one child,
say $T$ (e.g., the tree with only four nodes in
Figure~\ref{fig:tree}).  First, of the at least 4 endpoints we have
associated with $T$, we ``move up'' 2 to $S$.  Since $S$ is
independent from its child set $T$, there is at least one edge that
crosses $S$ and not $T$ or vice versa.  In fact, since both sets are
tight and all the $x_e$ variables are in $(0,1)$, there should be at
least two such edges.  There is an end-point within $S - T$
corresponding to both of these that will be associated with $S$,
giving it a count of 4 endpoints.

\begin{figure}
\center \epsfig{file=tree.eps, width =6in} \caption{Corresponding
tree for L} \label{fig:tree}
\end{figure}
%% Section 1

\subsection{Proof of Theorem 2.}

{\bf Definition:} Function $\delta$ is SUBMODULAR if for all $S$ and
$T$ both of the following conditions hold:
\begin{eqnarray*}
| \delta(S)| + | \delta(T) | \geq | \delta(S-T) | + | \delta(T-S)
| \\
| \delta(S)| + | \delta(T) | \geq | \delta(S \cap T) | + | \delta(T \cup S)
| 
\end{eqnarray*}

We can easily show that $\delta(S)$ in our problem is submodular.
Figure \ref{fig:submodular} depicts $S$ and $T$ crossing. We can
define 6 types of edges corresponds to their origins and
destinations. Using the counting argument it's easy to see that all
types of edges but Type $VI$ counts in both right-hand-side and
let-hand-side equally and type $VI$ edges only count toward the
left-hand side.

\begin{figure}
\center \epsfig{file=cross2.eps, width =4in}
\caption{Submodularity of cut function.}
\label{fig:submodular}
\end{figure}

\begin{Lemma}
If $S$ and $T$ are crossing and tight, then
either $S-T$ and $T-S$ are tight and $A_{S-T} + A_{T-S} = A_S +
A_T$ or $S \cap T$ and $S \cup T$ are tight and $A_{S \cap T} +
A_{T \cup S} = A_S + A_T$.
\end{Lemma}
\begin{proof}
Given solution $x$, $S$ and $T$, if $x$ is tight at $S$ and $T$ we
have \[ \delta_x(S) = \sum_{e \in \delta(S)} { x_e} = f(S) \]
\[ \delta_x(T) = \sum_{e \in \delta(T)}  x_e = f(T) \]

%According to submodularity of cut functions, we have either
%$\delta_x(S-T) = f(S-T)$ and $\delta_x(T-S) = f(T-S)$ \\ or
%$\delta_x(S \cap T) = f(S \cap T)$ and $\delta_x(T \cup S) = f(T \cup
%S)$ 
To prove the lemma, we need the following result, whose proof is
similar to that of (and also uses) the submodularity of the cut
functions.

\begin{Lemma} $f(S)$ is weakly supermodular; that is at
least one of the following two conditions hold.
\begin{eqnarray*}
f(S) + f(T) & \leq  & f(S-T) + f(T-S)\\
f(S) + f(T) & \leq & f(S \cap T) + f(S \cup T)
\end{eqnarray*}
    \end{Lemma}

Let us suppose $f(S) + f(T) \leq f(S-T) + f(T-S)$, Therefore
\begin{eqnarray*}
\delta_x(S-T) + \delta_x(T-S) & \leq & \delta_x(S) + \delta_x(T)\\
& = & f(S) + f(T)\\
& \leq & f(S-T) + f(T-S).
\end{eqnarray*}

Since $x$ is feasible, $\delta(S - T) \geq f(S-T) $ and $ \delta_x(T-S)
\geq f(S-T)$.  Therefore, $\delta_x(S - T) = f(S - T)$ and
$\delta_x(T - S) = f(T - S)$. We then also have
\[\delta_x(S-T) + \delta_x(T-S) = \delta_x(S) + \delta_x(T)\]
This leads to
 \[ A_{S-T} + A_{T-S} = A_S + A_T \]

Note: assuming second part of Lemma 2 and a similar approach we can
show that $S \cap T$ and $S \cup T$ are tight and $A_{S \cap T} + A_{T
\cup S} = A_S + A_T$.

\end{proof}

\begin{Lemma}
Let $L$ be a laminar family and $S$ be a set not in $L$ and also
independent of $L$. Suppose $S$ crosses $T$ in $L$. Then each of $ S
\cap T , S \cup T , S-T , T-S$ cross fewer sets in $L$ than $S$.
\end{Lemma}
\begin{proof}
Figure \ref{fig:lemma3} depicts $S$ crossing $T$. Imagine how the
other sets in $L$ can cross $S$. There are in total 3 types of
crossing sets. S may cross all 3 types, while $S-T$ ans $S \cup T$
only cross Type I and II, also $T-S$ and $S \cap T$ only cross Type
III. None of these sets cross $T$. Therefore, each of those sets
crosses fewer sets
than $S$ itself.
\end{proof}
\begin{figure}
\center \epsfig{file=cross3.eps, width =4in}
\caption{Crossings for $S$, $T$, $S-T$, $T-S$, $S \cap T$, and $S \cup
T$.} \label{fig:lemma3}
\end{figure}

Finally, we show that given a laminar family $L$ and a tight set $S$
that is independent with respect to $L$, if $S$ crosses a set in $L$,
then we can find another tight set that crosses fewer sets in $L$
than $S$ $L$, is independent with respect to $L$.  We can apply this
process repeatedly to determine the desired laminar family of Theorem
2.
\begin{Lemma}
Let $S$ be a tight set and $L$ be a laminar family such that $S$ is
independent of $L$ and $S$ crosses a set in $L$.  Then, there exists a
tight set that crosses fewer sets in $L$ than $S$ $L$, is
independent with respect to $L$.
\end{Lemma}
\begin{proof}
Suppose $S$ crosses $T$ in $L$.  Suppose the first part of Lemma 1
holds (the other part is similar).  Then, $S-T$ and $T-S$ are both
tight and $A_{S-T} + A_{T-S} = A_S + A_T$.  Both $A_{S-T}$ and
$A_{T-S}$ cannot be linearly dependent on $L$, since otherwise $A_S$
will also be linearly dependent, contradicting our assumption.
Without loss of generality, suppose $S-T$ is linearly independent of
$L$.  By Lemma 2, $S-T$ has a smaller crossing number with respect to
$L$ than $S$.  This completes the proof of the lemma.
\end{proof}

%% ...
\end{document}
