\documentclass[11pt]{article}
\usepackage{amsmath,amssymb,amsthm}
\usepackage{fullpage}
\usepackage[capitalise,nameinlink]{cleveref}
\crefname{lemma}{Lemma}{Lemmas}
\crefname{fact}{Fact}{Facts}
\crefname{theorem}{Theorem}{Theorems}
\crefname{corollary}{Corollary}{Corollaries}
\crefname{claim}{Claim}{Claims}
\crefname{example}{Example}{Examples}
\crefname{problem}{Problem}{Problems}
\crefname{setting}{Setting}{Settings}
\crefname{definition}{Definition}{Definitions}
\crefname{assumption}{Assumption}{Assumptions}
\crefname{subsection}{Subsection}{Subsections}
\crefname{section}{Section}{Sections}

\DeclareMathOperator*{\E}{\mathbb{E}}
\let\Pr\relax
\DeclareMathOperator*{\Pr}{\mathbb{P}}

\newcommand{\eps}{\varepsilon}
\newcommand{\inprod}[1]{\left\langle #1 \right\rangle}
\newcommand{\R}{\mathbb{R}}

\newcommand{\handout}[5]{
  \noindent
  \begin{center}
  \framebox{
    \vbox{
      \hbox to 5.78in { {\bf CS 270: Combinatorial Algorithms and Data Structures
        } \hfill #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}{#3}{Scribe: #4}{Lecture #1}}

\newtheorem{theorem}{Theorem}[section]
\newtheorem*{theorem*}{Theorem}
\newtheorem{itheorem}{Theorem}

\newtheorem{subclaim}{Claim}[theorem]
\newtheorem{proposition}[theorem]{Proposition}
\newtheorem*{proposition*}{Proposition}
\newtheorem{lemma}[theorem]{Lemma}
\newtheorem*{lemma*}{Lemma}
\newtheorem{corollary}[theorem]{Corollary}
\newtheorem*{conjecture*}{Conjecture}
\newtheorem{fact}[theorem]{Fact}
\newtheorem*{fact*}{Fact}
\newtheorem{exercise}[theorem]{Exercise}
\newtheorem*{exercise*}{Exercise}
\newtheorem{hypothesis}[theorem]{Hypothesis}
\newtheorem*{hypothesis*}{Hypothesis}
\newtheorem{conjecture}[theorem]{Conjecture}

\theoremstyle{definition}
\newtheorem{definition}[theorem]{Definition}
\newtheorem{setting}[theorem]{Setting}
\newtheorem{construction}[theorem]{Construction}
\newtheorem{example}[theorem]{Example}
\newtheorem{question}[theorem]{Question}
\newtheorem{openquestion}[theorem]{Open Question}
% \newtheorem{algorithm}[theorem]{Algorithm}
\newtheorem{problem}[theorem]{Problem}
\newtheorem{protocol}[theorem]{Protocol}
\newtheorem{assumption}[theorem]{Assumption}
\newtheorem{exercise-easy}[theorem]{Exercise}
\newtheorem{exercise-med}[theorem]{Exercise}
\newtheorem{exercise-hard}[theorem]{Exercise$^\star$}
\newtheorem{claim}[theorem]{Claim}
\newtheorem*{claim*}{Claim}

\newtheorem{remark}[theorem]{Remark}
\newtheorem*{remark*}{Remark}
\newtheorem{observation}[theorem]{Observation}
\newtheorem*{observation*}{Observation}

% 1-inch margins, from fullpage.sty by H.Partl, Version 2, Dec. 15, 1988.
% \topmargin 0pt
% \advance \topmargin by -\headheight
% \advance \topmargin by -\headsep
% \textheight 8.9in
% \oddsidemargin 0pt
% \evensidemargin \oddsidemargin
% \marginparwidth 0.5in
% \textwidth 6.5in

% \parindent 0in
% \parskip 1.5ex

% Additional preamble commands. Please note that asymptote is not standardly included in a download of LaTeX.

\usepackage[shortlabels]{enumitem}
\usepackage{asymptote, physics, amsfonts, dsfont}

\begin{document}

\lecture{24 --- April 18th, 2023}{Spring 2023}{Prof.\ Jelani Nelson}{Andrew Huang}

\section{Overview}

Today's and Thursday's lectures will be on Spectral Graph Theory. Today, we'll start it off with definitions, do examples, before proving basic properties of Laplacians. We'll also discuss the easier half of Cheeger's inequality, (the harder side will be discussed Thursday).

\section{What is Spectral Graph Theory?}

We know what graph theory means, and generally we can talk about its adjacency matrix. Spectral graph theory discusses the spectrum of the matrices associated with the graphs, particularly its eigenvalues and eigenvectors. One of these matrices that we generally look at is the adjacency matrix, another more complicated one is the Laplacian.

In other words, ``How much can we learn from $G$ by looking at the eigenvalues, eigenvectors, of associated matrices? (For example, adjacency matrix, or Laplacian)''

\textit{Nota Bene}: The area of algorithmal graph theory is kind of this intersection between regular and spectral graph theory, kind of trying to use this information from the matrices and then use that to create algorithms doing something.

\subsection{Intro Assumptions}

In this lecture, we will be looking at undirected, weighted graphs $G$, where for every edge $e,$ the corresponding weight $w_e \ge 0.$

\begin{definition}
    The \textit{adjacency matrix} $A(G)$ is defined by \[A(G)_{u,v} = \begin{cases} w_e & \text{if $(u,v)=e \in E$}\\ 0 & \text{otherwise}\end{cases}\]
\end{definition}
Note that $A(G) \in \mathbb{R}^{n\times n}$ is symetric and has nonnegative entries. So we can form this correspondence:

\[\boxed{\begin{array}{c}\text{Symmetric matrix in }\mathbb{R}^{n\times n} \\ \text{with nonnegative entries}\end{array}} \leftrightarrow \boxed{\begin{array}{c}\text{unweighted, undirected graph }G \\ \text{with all edge weights nonnegative}\end{array}}\]

\begin{definition}
    The \textit{Laplacian matrix} $L(G)$ is defined as $D(G) - A(G),$ where $D(G)$ is the diagonal matrix of size $n\times n$ where $D(G)_{u,u} = \text{deg}_G(u) = \sum_{e = (u,\cdot)\in E} w_e.$
\end{definition}

Some examples:


\begin{example}
    For the complete graph, $K_n$ (all with weights of $1$) we have:
\begin{center}
\begin{asy} % Please note that asymptote is not standardly included in a download of LaTeX.
    unitsize(3cm);
    real p = 9.6;
    for(int i = 0; i < 7; ++i) {
    dot("$" + string(i+1) + "$", dir(360 / p * i + 16),dir(360 / p * i + 16)); 
    for(int j = 1; (i + j) < 7; ++j) {
    draw(dir(360 / p * i + 16) -- dir(360 / p * (i + j) + 16));
    }
    }
    label("\textbf{...}", dir(360 / p * (p+4) / 2 + 16),-.2 * dir(360 / p * (p+4) / 2 + 16));
    
    dot("$n-1$", dir(360 / p * (p-2) + 16),dir(360 / p * (p-2) + 16));
    dot("$n$", dir(360 / p * (p-1) + 16),dir(360 / p * (p-1) + 16)); 
    draw(dir(360 / p * (p-1) + 16) -- dir(360 / p * (p-2) + 16));

    for(int i = 0; i < 7; ++i) {
    draw(dir(360 / p * i + 16) -- dir(360 / p * (p-2) + 16));
    draw(dir(360 / p * i + 16) -- dir(360 / p * (p-1) + 16));
    }
\end{asy}
\end{center}
\[L(K_n) = \begin{bmatrix}
    n-1 & -1 & -1 & \cdots & -1\\
    -1 & n-1 & -1 & \cdots & -1\\
    -1 & -1 & n-1 & \cdots & -1\\
    \vdots & \vdots &\vdots & \ddots & \vdots\\
    -1 & -1 & -1 & \cdots & n-1
\end{bmatrix}\]
\end{example}

\begin{example}
    For a star graph $S_n,$ if we define the middle vertex to be vertex $1$ (one-indexing), we have:

\begin{center}
\begin{asy}
    unitsize(3cm);
    real p = 9.7;
    for(int i = 0; i < 7; ++i) {
    dot("$" + string(i+2) + "$", dir(360 / p * i + 16),dir(360 / p * i + 16)); 
    draw(dir(360 / p * i + 16) -- (0,0));
    }
    label("\textbf{...}", dir(360 / p * (p+4) / 2 + 16),-1.5 * dir(360 / p * (p+4) / 2 + 16));
    
    dot("$n-1$", dir(360 / p * (p-2) + 16),dir(360 / p * (p-2) + 16));
    dot("$n$", dir(360 / p * (p-1) + 16),dir(360 / p * (p-1) + 16)); 

    draw((0,0) -- dir(360 / p * (p-2) + 16));
    draw((0,0) -- dir(360 / p * (p-1) + 16));

    dot("$1$", (0,0), 2.5 * dir(272));
\end{asy}
\end{center}
\[L(S_n) =  \begin{bmatrix}
    n-1 & -1 & -1 & \cdots & -1\\
    -1 & 1 & 0 & \cdots & 0\\
    -1 & 0 & 1 & \cdots & 0\\
    \vdots & \vdots &\vdots & \ddots & \vdots\\
    -1 & 0 & 0 & \cdots & 1
\end{bmatrix}\]
\end{example}

\subsection{Positive Semidefiniteness of Laplacians}

It turns out that the Laplacian is PSD. Let's first recall what that means.

\begin{definition} A symmetric matrix $M\in \mathbb{R}^{n\times n}$ is \textit{positive semidefinite} (PSD) if any of the following equivalent properties hold:

\begin{enumerate}[(1)]

\item $\forall x\in \mathbb{R}^n, \, x^\top Mx \ge 0,$ 
\item $\exists Q$ s.t. $M = Q^\top Q.$ 
\item All eigenvalues of $M$ are $\ge 0.$ (Recall that all eigenvalues of a symmetric matrix are already real)

\end{enumerate}
\end{definition}

Note: we can write $\displaystyle L(G) = \sum_{e\in E} w_e \cdot L(e),$ where $L(e)$ is the Laplacian matrix of the graph with the same vertices but removing all edges except $e$ from $E.$

In other words, for example if $e = (u,v),$ then $L(e)$ is the sparse matrix (with unlabelled entries being zero):

\begin{center}
\begin{asy}
    unitsize(7cm);
    draw((0,0)--(1,0)--(1,1)--(0,1)--cycle);
    draw((0.21,0) -- (0.21, 1));
    draw((0.28,0) -- (0.28, 1));
    draw((0.64,0) -- (0.64, 1));
    draw((0.71,0) -- (0.71, 1));
    
    draw((0, 1-0.21) -- (1, 1-0.21));
    draw((0, 1-0.28) -- (1, 1-0.28));
    draw((0, 1-0.64) -- (1, 1-0.64));
    draw((0, 1-0.71) -- (1, 1-0.71));
    label("{\scriptsize $1$}",(0.245, 1-0.245));
    label("{\scriptsize $1$}",(0.675, 1-0.675));
    label("{\scriptsize $-1$}",(0.245, 1-0.675));
    label("{\scriptsize $-1$}",(0.675, 1-0.245));

    label("{\small $u$}",(-0.03, 1-0.245));
    label("{\small $v$}",(-0.03, 1-0.675));
    label("{\small $u$}",(0.245, 1.03));
    label("{\small $v$}",(0.675, 1.03));
\end{asy}
\end{center}

We can intuitively see that this equation ($L(G) = \sum_{e\in E} w_e \cdot L(e)$) holds as the only $L(e)$ will affect the entry in the $u$th row and $v$th column, and for a diagonal entry, the sum $\sum_{}$.

Now, let's go back to our claim that $L$ is PSD. We have:

\[x^\top L x = \sum_{e\in E} w_e x^\top L(e) x.\]

Now, we observe that $L_e = (\mathds{1}_u - \mathds{1}_v)(\mathds{1}_u - \mathds{1}_v)^\top,$ where $\mathds{1}_u$ is the column vector where the only nonzero entry is a $1$ in the $u$th entry. This is in part because $(ZZ^\top)_{ij} = Z_iZ_j$.

Thus, we have: 
\begin{align}
    x^\top L x &= \sum_{e\in E} w_e \underbrace{(x^\top (\mathds{1}_u - \mathds{1}_v))^2}_{\langle X, \mathds{1}_u - \mathds{1}_v\rangle}\nonumber\\
    &= \sum_{e\in E} w_e (x_u - x_v)^2 \tag{$*$}\label{eqn:star}
\end{align}


\begin{claim}
$L$ is PSD.

\noindent\textit{Proof}:
We just showed the first condition for being PSD in \cref{eqn:star}. 

Now, this is sufficient for showing that $L$ is PSD, but we can also directly show the second condition for being PSD. To do this, we define the edge incidence matrix.

\begin{definition} The edge-vertex incidence matrix, $B(G),$ is a matrix in $\mathbb{R}^{m\times n},$ where the row corresponding to $e = (u,v)$ is $(\mathds{1}_u - \mathds{1}_v)^\top$.

For example, it may look like:
\begin{center}
\begin{asy}
    unitsize(0.5cm);
    usepackage("dsfont");
    draw((0,0)--(7,0)--(7,9)--(0,9)--cycle);
    draw((7,9.2)--(7,9.8));
    draw((4.2,9.5)--(7,9.5));
    draw((0,9.2)--(0,9.8));
    draw((0,9.5)--(2.8,9.5));
    label("{\small $n$}",(3.5, 9.5));

    draw((7.2,9)--(7.8,9));
    draw((7.5,9)--(7.5,5.2));
    draw((7.2,0)--(7.8,0));
    draw((7.5,0)--(7.5,3.8));
    label("{\small $m$}",(7.57, 4.5));

    draw((0,8)--(7,8));
    draw((1,9)--(1,8));
    draw((2,9)--(2,8));
    draw((3,9)--(3,8));
    draw((5,9)--(5,8));
    draw((6,9)--(6,8));
    label("{\scriptsize $0$}",(0.5,8.5));
    label("{\scriptsize $1$}",(1.5,8.5));
    label("{\scriptsize $0$}",(2.5,8.5));
    label("{\scriptsize $\cdots$}",(4,8.5));
    label("{\scriptsize $-1$}",(5.5,8.5));
    label("{\scriptsize $0$}",(6.5,8.5));

    label("{\scriptsize $\vdots$}",(3.5,5.7 + 0.25));

    draw((0,3.4)--(7,3.4));
    draw((0,2.4)--(7,2.4));
    label("{\scriptsize $(\mathds{1}_u - \mathds{1}_v)^\top$}",(3.7,2.9));

    
    label("{\scriptsize $\vdots$}",(3.5,1.2 + 0.25));
\end{asy}
\end{center}
\end{definition}

Now that we have the edge vertex incidence matrix, we can proceed. Let us quickly define $W \in \mathbb{R}^{m\times m}$ as
\[W = \begin{bmatrix}
    w_{e_1} & 0 & 0 &\cdots & 0\\ 
    0 & w_{e_2} & 0 & \cdots & 0\\
    0 & 0 & w_{e_3} & \cdots & 0\\
    \vdots & \vdots &\vdots & \ddots & \vdots\\
    0 & 0 & 0 & \cdots & w_{e_m}\\
\end{bmatrix}.\]
We have that \[L = B^\top W B = B^\top W^{1/2} W^{1/2} B = (W^{1/2} B)^\top(W^{1/2} B).\] Taking $Q = W^{1/2} B,$ we have proved the second condition.
\end{claim}

\textit{Nota Bene}:
The theorem we'll prove actually has roots considering manifolds in differential geometry, which is why it will have terminology coming from it. It was then ported over to spectral graph theory, which in a sense means that we'll have to take analogous definitions.


\section{Quick Linear Algebra Review}

Recall that ``$v$ is an eigenvector of $M\in \mathbb{R}^{n\times n}$ with eigenvalue $\lambda\in \mathbb{C}$ if $Mv = \lambda v.$''

\begin{claim} Suppose $v_1,v_2$ are eigenvectors with eigenvalues $\lambda_1,\lambda_2$ respectively. Furthermore, suppose $M$ is symmetric. Then:

\begin{enumerate}[(1)]
\item $\lambda_1\ne \lambda_2 \Rightarrow \langle v_1,v_2\rangle = 0$ (in orther words, eigenvectors with different eigenvalues are pairwise orthogonal)

\item $\lambda_1 = \lambda_2 \Rightarrow \forall \alpha,\beta\in \mathbb{R},\,\alpha v_1 + \beta v_2$ is an eigenvector also with eigenvalue $\lambda_1$ (In other words, the set of all eigenvectors with fixed eigenvalue $\lambda$ forms a vector space).

\end{enumerate}
\end{claim}
\noindent\textit{Proof:}
\begin{enumerate}[(1)]

\item We have that: \[\lambda_1 v_1^\top v_2 = (Mv_1)^\top v_2 = v_1^\top M v_2 = \lambda_2 \vec{v}_1^\top v_2.\]
Therefore, $0 = \lambda_1 v_1^\top v_2 - \lambda_2 v_1^\top v_2 = (\underbrace{\lambda_1 - \lambda_2}_{\ne 0}) v_1^\top v_2$, and it must be the case that $v_1^\top v_2 = 0$.

\item $M(\alpha v_1 + \beta v_2) = \alpha M v_1 + \beta M v_2 = \alpha \lambda v_1 + \beta \lambda v_2 = \lambda(\alpha v_1 + \beta v_2)$.
\end{enumerate}

Now, for our last bit of Linear Algebra review, we state (but don't prove) the Spectral Theorem:

\begin{theorem}[Spectral Theorem] Let $M\in \mathbb{R}^{n\times n},$ symmetric.

Then, $\exists$ an orthonormal basis, $v_1,v_2,\cdots, v_m$ of eigenvectors with corresponding real eigenvalues $\lambda_1\le \lambda_2\le \cdots \le \lambda_n$,

Then, we have that $M = V\Lambda V^\top = \sum_{i=1}^n \lambda_i v_i v_i^\top$, where
\[V = \begin{bmatrix}| & | & & |\\ v_1 & v_2 & \cdots & v_n\\ | & | & & |\end{bmatrix},
\Lambda = \begin{bmatrix}
    \lambda_1 & 0 & 0 &\cdots & 0\\ 
    0 & \lambda_2 & 0 & \cdots & 0\\
    0 & 0 & \lambda_3 & \cdots & 0\\
    \vdots & \vdots &\vdots & \ddots & \vdots\\
    0 & 0 & 0 & \cdots & \lambda_n\\
\end{bmatrix}\]
\end{theorem}
\textit{Nota Bene}: note that in general, $AB^\top = \sum_i a_i b_i^\top$.

\section{Laplacians and Eigenvectors}

Now, note that if $\lambda_1 = 0,$ if we define $\mathds{1}$ to be the all ones vector we have
\begin{align*}
    L\mathds{1} & = \sum_{e} w_e \underbrace{L(e)}_{(\mathds{1}_u - \mathds{1}_v)(\mathds{1}_u - \mathds{1}_v)^\top} \mathds{1}\\
    &= \sum_{e} w_e (\mathds{1}_u - \mathds{1}_v)\langle \mathds{1}_u - \mathds{1}_v, \mathds{1}\rangle\\
    &= 0\\
    &= L\mathds{1}.
\end{align*}

Now, note that all other eigenvectors with other eigenvalues must therefore be orthogonal to the all-ones vector.

Now, let's take our same two examples again.

\begin{example} Let's first return to the complete graph. For $K_n,$ we have:
\begin{align*}L(K_n) &= \begin{bmatrix}
    n-1 & -1 & -1 & \cdots & -1\\
    -1 & n-1 & -1 & \cdots & -1\\
    -1 & -1 & n-1 & \cdots & -1\\
    \vdots & \vdots &\vdots & \ddots & \vdots\\
    -1 & -1 & -1 & \cdots & n-1
\end{bmatrix}\\
&= n\cdot I - \mathds{1}\mathds{1}^\top .\end{align*}

Next, for any arbitrary $v$, let's suppose that $\langle v, \mathds{1}\rangle = 0.$ Then,
\begin{align*}
    L(K_n) v &= n \cdot I v - \mathds{1}\underbrace{\mathds{1}^\top v}_{= 0}\\
    &= nv.
\end{align*}
Therefore, $v$ must be an eigenvector with eigenvalue of $n.$ Clearly, the dimension of the space of vectors orthogonal to $v$ is $n-1,$ so we can create a linearly independent basis of eigenvectors.
\end{example}

\begin{example}
Now, let's return to the star graph with center vertex of $1.$ Recall the Laplacian:
\[L(S_n) =  \begin{bmatrix}
    n-1 & -1 & -1 & \cdots & -1\\
    -1 & 1 & 0 & \cdots & 0\\
    -1 & 0 & 1 & \cdots & 0\\
    \vdots & \vdots &\vdots & \ddots & \vdots\\
    -1 & 0 & 0 & \cdots & 1
\end{bmatrix}\]

\begin{claim} $\mathds{1}_u - \mathds{1}_v$ is an eigenvector with eigenvalue $1$ for any $u,v\ne 1$ (Note that this is essentially taking two spokes of the wheel/star and subtracting one out from the other).

\noindent\textit{Proof}:
We have that:
\begin{align*}
    L(S_n)(\mathds{1}_u - \mathds{1}_v) &= \sum_{e = (a,b)}w_e (\mathds{1}_a - \mathds{1}_b)(\mathds{1}_a - \mathds{1}_b)^\top (\mathds{1}_u - \mathds{1}_v)\\
    &=(\mathds{1}_1 - \mathds{1}_u)(\mathds{1}_1 - \mathds{1}_u)^\top (\mathds{1}_u - \mathds{1}_v) + (\mathds{1}_1 - \mathds{1}_v)(\mathds{1}_1 - \mathds{1}_v)^\top (\mathds{1}_u - \mathds{1}_v)\\ &\phantom{=}\,\, + \sum_{\substack{e = (1,w) \\ w\ne u,v}} (\mathds{1}_1 - \mathds{1}_w)(\mathds{1}_1 - \mathds{1}_w)^\top (\mathds{1}_u - \mathds{1}_v)\\
    &= (\mathds{1}_1 - \mathds{1}_u)(-1) + (\mathds{1}_1 - \mathds{1}_v)(1) + \sum_{\substack{e = (1,w) \\ w\ne u,v}} 0\\
    &= 1 (\mathds{1}_u - \mathds{1}_v).
\end{align*}

\end{claim}
So, now it'd be nice to create a linearly independent and orthogonal basis of eigenvectors. Let's do so:
\begin{itemize}
    \item We start of course with $\mathds{1}.$
    \item Next, for every new vertex, we can simply add $\mathds{1}_i - \mathds{1}_{i+1}.$ Clearly, since we haven't used vertex $i+1$ before, it'll be linearly independent to all previous vectors. We can do this for $i = 2, \cdots, n-1$ (recall that we cannot consider the center vertex $1$)
    \item Finally, we can find something that is orthogonal to all of the previous vectors. In particular, in order to have it be orthogonal to all previous vectors, we want the $2$nd to $n$th entries all be equal. WLOG make them all $1.$ Moreover, we want the sum of the entries to be $0$ in order for it to be orthogonal to $\mathds{1}.$ Therefore, we find that we must choose: $(-(n-1), 1, 1, \cdots, 1).$
\end{itemize}

\end{example}

\section{Second Smallest Eigenvalue of Laplacian}

Now, we know that $v_1 = \mathds{1},$ and $\lambda_1 = 0$ is a smallest eigenvector-eigenvalue pair always. Now, what about $\lambda_2,v_2,$ our 
eigenvector-eigenvalue pair with second smallest eigenvalue?

\subsection{Connected Components and the Smallest Eigenvalues}

\begin{claim} Suppose the connected components of $G$ are $C_1,C_2,\cdots, C_k.$ Then, $\left\{\mathds{1}_{C_j}\right\}_{j=1}^k$ forms an (orthogonal) basis for $\text{Ker}(L),$ and therefore, $\dim(\text{eigenspace with }\lambda = 0) = k.$


\noindent\textit{Proof}: First, we show that $\mathds{1}_{C_j}$ is an eigenvector of $L$.

\[L\mathds{1}_{C_j} = \sum_{e} w_e (\mathds{1}_u - \mathds{1}_v)(\mathds{1}_u - \mathds{1}_v)^\top \mathds{1}_{C_j}.\]
First, we note that, for all edges not in $C_j,$ the only nonnegative entries in $(\mathds{1}_u - \mathds{1}_v)(\mathds{1}_u - \mathds{1}_v)^\top$ are in columns $u$ and $v,$ which are not in $C_j,$ which means that $(\mathds{1}_u - \mathds{1}_v)(\mathds{1}_u - \mathds{1}_v)^\top\mathds{1}_{C_j} = 0.$
Then, we can use the property that $\mathds{1}$ is an eigenvector with eigenvalue $0$ on the subgraph of $G$ consisting of only edges and vertices in $C_j$ to see that $\sum_{e\in C_j} w_e (\mathds{1}_u - \mathds{1}_v)(\mathds{1}_u - \mathds{1}_v)^\top \mathds{1}_{C_j} = 0.$

Thus, we have that $(\mathds{1}_u - \mathds{1}_v)^\top \mathds{1}_{C_j} = (\mathds{1}_{C_j})_u - (\mathds{1}_{C_j})_v.$

Now, we show that the kernel is no larger than this. Suppose that $x\in \text{Ker}(L).$

Then, 
\begin{align*}
    x^\top L x &= 0\\
    \Rightarrow \sum_{e = (u,v)\in E} w_e (x_u-x_v)^2 &= 0\\
    \Rightarrow \forall j = 1, \cdots, k, \, x \text{ is constant on }C_j \\(\text{so, say }x_i = \alpha_j\,\forall i\in C_j)\\
    \Rightarrow x &= \sum_{j=1}^k \alpha_j \mathds{1}_{C_j}.
\end{align*}

\end{claim}

\subsection{A More Robust Version}

Now, we've seen a necessary and sufficient condition for $\lambda_2 = 0$ (in particular, the graph being disconnected). But what happens if the graph is not disconnected? What properties does a graph has a small (but strictly positive) value of $\lambda_2$? For example, what if $\lambda_2 = 0.00001$? Does this mean that $G$ is ``almost'' disconnected?

Now, intuitively, maybe something that we'd guess is that, say, the min cut over the graph is very small. Unfortunately, this is not exactly true, but it's relatively close. This is somewhat because we can kind of choose a single vertex, and that'll likely be a smaller cut than a more interesting one, like a cut of $n/2$ and $n/2$ vertices, or even $n- \sqrt{n}$ and $\sqrt{n}$ vertices. It turns out that the right idea is called the ``conductance''.

\begin{definition} The \textit{conductance} of a nonempty (and nontrivial) cut, $S\subsetneq V_G,$ in a graph, $\Phi_{G}(S)$ is defined to be:
\[\Phi_G(S) = \frac{w(\partial S)}{\min\{\text{vol}(S), \text{vol}(V \setminus S)\}}\]
where $w(E)$ is the sum of the weights of the edges in $E,$ where $\partial S$ is the set of all edges ``on the boundary of $S$,'' or namely all edges incident to exactly one vertex in $S$ (and exactly one vertex in $V \setminus S$), and $\text{vol}(S) = \sum_{u\in S} \text{deg}(u)$ is the ``volume of $S$.''

Then, we define the conductance of a graph, $\Phi(G),$ to be \[\min_{\substack{S\subset V_G \\S \ne \varnothing, V_G}} \Phi_G(S).\]
\end{definition}

\text{Nota bene}: As noted earlier, a lot of this comes directly from differential geometry. In particular, these are analogs of the area of the boundary and the volumes of set.

\begin{theorem}[Cheeger \cite{Cheeger70}]
We have the following bounds on $\Phi(G)$: \[\frac{\lambda_2}{2} \le \Phi(G) \le \sqrt{2\lambda_2}.\]
\end{theorem}
Interestingly, we actually prove the right-hand (upper bound) inequality algorithmically. In particular, in the next lecture, we will devise an algorithm using the Laplacian to partition the graph in a strong enough way.

\bibliographystyle{alpha}

\begin{thebibliography}{42}

\bibitem{Cheeger70}
Cheeger~Jeff.
\newblock A lower bound for the smallest eigenvalue of the Laplacian.
\newblock {\em Problems in Analysis.}, Princeton University Press, pp. 195-199, 1970.

\end{thebibliography}

\end{document}