Graph theory
It's just dots and lines
An example
Consider the following graph:
The vertex set is \(\{A,B,C,D,E\}\)
The edge set is \(\{AB, AE, BC, CE, ED\}\)
Yes! A graph is connected if for any two vertices \(u\) and \(w\), there is a list of vertices \(u,v_{1},v_{2},\ldots,v_{k},w\) such that each consecutive pair in the list is adjacent in the graph.
What does connected mean? Is this graph connected?
An example
An extremely useful way to represent a graph is called the adjacency matrix. This is the matrix with rows and columns labeled by the vertices (in the same order). The matrix has a \(1\) if the row and column indices are adjacent, and zero otherwise.
An example
\(\leadsto\)
An example
\(\leadsto\)
An example
A Disconnected example
\(x_{0} = \begin{bmatrix}1\\0\\0\\0\\0\end{bmatrix}\) or \(x_{0} = \begin{bmatrix}0\\0\\0\\1\\0\end{bmatrix}\)
Consider the previous algorithm starting with:
Is it Connected?
The graph is connected!
How many edges do we need to delete to make it disconnected?
The graph has 16 edges, so we could delete each edge, then test again...
There are 120 pairs of edges, so we could delete each pair and test again...
What if that fails?
Is it Connected?
The Graph Laplacian
For a graph with vertices \(v_{1},v_{2},v_{3},\ldots,v_{n}\) the adjacency matrix \(A\) is given by
\[A_{i,j} = \begin{cases} 1 & v_i\text{ is adjacent to }v_{j},\\ 0 & \text{otherwise}.\end{cases}\]
The degree of vertex \(v_{i}\), denoted \(d(v_{i})\) is the number of edges incident with \(v_{i}\), that is \[d(v_{i}) = \sum_{i=1}^{n}A_{i,j}.\]
The Laplacian is the \(n\times n\) matrix \(L\) given by
\[L_{i,j} = \begin{cases} d(v_{i}) & i=j,\\ -A_{i,j} & i\neq j.\end{cases} \]
Consider the previous example:
For any vector \(x\in\mathbb{R}^{n}\) we have
\[x^{\top}Lx = [x_{1}\ \ x_{2}\ \ x_{3}\ \ \cdots\ \ x_{n}]\left[\begin{array}{ccccc}L_{1,1} & L_{1,2} & L_{1,3} & \cdots & L_{1,n}\\ L_{2,1} & L_{2,2} & L_{2,3} & \cdots & L_{2,n}\\[-1ex] L_{3,1} & L_{3,2} & L_{3,3} & & \vdots\\ \vdots & \vdots & & \ddots & \vdots\\ L_{n,1} & L_{n,2} & \cdots & \cdots & L_{n,n}\end{array}\right]\left[\begin{array}{c}x_{1}\\ x_{2}\\ x_{3}\\ \vdots \\ x_{n}\end{array}\right]\]
\[= \sum_{i=1}^{n}\sum_{j=1}^{n}x_{i}x_{j}L_{i,j} = \sum_{i=1}^{n}x_{i}^{2}L_{i,i} - \sum_{i=1}^{n}\sum_{j=1}^{n}x_{i}x_{j}A_{i,j}\]
\[\left[\begin{array}{ccccc}d(v_{1}) & -A_{1,2} & -A_{1,3} & \cdots & -A_{1,n}\\ -A_{2,1} & d(v_{2}) & -A_{2,3} & \cdots & -A_{2,n}\\ -A_{3,1} & -A_{3,2} & d(v_{3}) & & \vdots\\ \vdots & \vdots & & \ddots & \vdots\\ -A_{n,1} & -A_{n,2} & \cdots & \cdots & d(v_{n})\end{array}\right]\]
\[= \sum_{i=1}^{n}x_{i}^{2}\sum_{j=1}^{n}A_{i,j} - \sum_{i=1}^{n}\sum_{i=1}^{n}x_{i}x_{j}A_{i,j} = \sum_{i=1}^{n}\sum_{j=1}^{n}(x_{i}^{2}-x_{i}x_{j})A_{i,j}\]
Thus, since \(A_{i,j} = A_{j,i}\) we have
\[x^{\top}Lx = \sum_{i=1}^{n}\sum_{j=1}^{n}(x_{i}^{2}-x_{i}x_{j})A_{i,j} = \sum_{i=1}^{n}\sum_{j=1}^{n}(x_{j}^{2}-x_{i}x_{j})A_{i,j}\]
Hence
\[x^{\top}Lx = \frac{1}{2}\sum_{i=1}^{n}\sum_{j=1}^{n}(x_{i}^{2}-2x_{i}x_{j}+x_{j}^{2})A_{i,j} = \frac{1}{2}\sum_{i=1}^{n}\sum_{j=1}^{n}(x_{i}-x_{j})^{2}A_{i,j}.\]
For which vectors \(x\) is it the case that
\[x^{\top}Lx = \frac{1}{2}\sum_{i=1}^{n}\sum_{j=1}^{n}(x_{i}-x_{j})^{2}A_{i,j} = 0?\]
This occurs if and only if \(x_{i}=x_{j}\) for all \(i\) and \(j\) such that \(A_{i,j} = 1\).
Thus, \(x^{\top}Lx=0\) if and only if \(x\) is "constant on connected components".
In particular,
\(Lx=0\) \(\Rightarrow\) \(x^{\top}Lx = 0\)\(\Rightarrow\) \(x\) is constant on connected components.
Example
For this vector \(Lx = 0\):
For a connected graph:
Instead of \(Lx=0\), we look for \(x\neq 0\) such that \(Lx=\lambda x\) for the smallest \(\lambda\).
w/ \(\lambda = 0.3033351\)
\(A=\)



Part 1:
Fundamental Concepts
Graphs
Definition 1.1.2. A graph \(G\) is a triple consisting of a vertex set \(V(G)\), an edge set \(E(G)\), and a relation that associates with each edge two vertices (not necessarily distinct) called its endpoints.
Example. Note that the vertex set is \(\{v_{1},v_{2},v_{3},v_{4},v_{5}\}\) and the edge set is \(\{e_{1},e_{2},e_{3},e_{4},e_{5}\}\).
The endpoints of \(e_{4}\) are \(v_{3}\) and \(v_{4}\).
Example. The vertex set is \(\{v_{1},v_{2},v_{3},v_{4},v_{5}\}\) and the edge set is \(\{e_{1},e_{2},e_{3},e_{4},e_{5},e_{6}\}\).
Both \(e_{1}\) and \(e_{6}\) have endpoints \(v_{1}\) and \(v_{2}\), thus they are multiple edges.
Example. Note that the vertex set is \(\{v_{1},v_{2},v_{3},v_{4},v_{5}\}\) and the edge set is \(\{e_{1},e_{2},e_{3},e_{4},e_{5},e_{6},e_{7}\}\).
The edge \(e_{7}\) has only one endpoint, this type of edge is called a loop.
If \(u\) and \(v\) are endpoints of an edge, they are adjacent and are neighbors, and we write \(u\leftrightarrow v\)
Simple Graphs
A graph without multiple edges and without loops is called a simple graph.
In a simple graph we can name the edges by their endpoints:
In the following graph, the edge set is \(\{v_{1}v_{2},v_{1}v_{3},v_{2}v_{4}, v_{3}v_{4}, v_{4}v_{5}\}\)
Definition 1.1.8.
- The complement \(\overline{G}\) of a simple graph \(G\) is the simple graph with vertex set \(V(G)\) defined by \(uv\in E(\overline{G})\) if and only if \(uv\notin E(G)\).
- A clique in a graph is a set of pariwise adjacent vertices.
- An independent set (or stable set) in a graph is a set of pairwise nonadjacent vertices.
Example.
\(G\)
\(\overline{G}\)
\(\{v_{2},v_{3},v_{5}\}\) is a clique in \(\overline{G}\)
\(\{v_{2},v_{3},v_{5}\}\) is an independent set in \(G\)
Example 1.1.7. Consider a group of 5 people. Is there always a group of three who are all mutual acquaintances or mutual strangers? In other words, for every simple graph on 5 vertices \(G\), does either \(G\) or \(\overline{G}\) contain a clique of size 3?
\(G\)
\(\overline{G}\)
What about in a group of 6 people?
Definition 1.1.10. A graph \(G\) is bipartite if \(V(G)\) is the union of two disjoint (possibly empty) independent sets called partite sets of \(G\).
Example.
Definition 1.1.15.
- A path is a simple graph whose vertices can be ordered so that two vertices are adjacent if and only if they are consecutive in the list.
- A cycle is a graph with an equal number of vertices and edges whose vertices can be placed around a circle so that two vertices are adjacent if and only if they appear consecutively along a circle.
Path
Path
Cycle
Cycle
Neither
Definition 1.1.16.
- A subgraph of a graph \(G\) is a graph \(H\) such that \(V(H)\subseteq V(G)\) and \(E(H)\subseteq E(G)\) and the assignment of endpoints in \(H\) is the same as in \(G\). We write \(H\subseteq G\) and say "\(G\) contains \(H\)".
- A graph \(G\) is connected if each pair of vertices in \(G\) belongs to a path contained in \(G\).
Example. The red vertices and edges are a subgraph. This subgraph is a path.
Example.
Matrices and IsoMorphism
Consider the simple graph with
\[V(G) = \{a,b,c,d,e\}\quad\text{and}\quad E(G) = \{ab,bc,cd,ac,ae\}\]
Consider the graph \(H\) where \[V(H) = \{a,b,c,d,e\}\quad\text{and}\quad E(H) = \{bc,cd,de,bd,ba\}.\]
Definition 1.1.17. Let \(G\) be a loopless graph with vertex set \(V(G) = \{v_{1},\ldots,v_{n}\}\) and edge set \(E(G) = \{e_{1},\ldots,e_{m}\}\). The adjacency matrix of \(G\), written \(A(G)\) is the \(n\times n\) matrix with entry in row \(i\), column \(j\) is the number of edges in \(G\) with endpoints \(\{v_{i},v_{j}\}\). The incidence matrix \(M(G)\) is the \(n\times m\) matrix in which the entry in row \(i\), column \(j\) is \(1\) if \(v_{i}\) is an endpoint of edge \(e_{j}\), and zero otherwise.
If vertex \(v\) is an endpoint of edge \(e\), then \(v\) and \(e\) are incident. The degree of a vertex (in a loopless graph) is the number of incident edges.
Example. Consider the simple graph with
\[V(G) = \{a,b,c,d,e\}\quad\text{and}\quad E(G) = \{ab,bc,cd,ac,ae\}\]
\[A(G) = \left[\begin{array}{ccccc} 0 & 1 & 1 & 0 & 1 \\ 1 & 0 & 1 & 0 & 0 \\ 1 & 1 & 0 & 1 & 0 \\ 0 & 0 & 1 & 0 & 0 \\ 1 & 0 & 0 & 0 & 0\end{array}\right]\]
\[M(G) = \left[\begin{array}{ccccc} 1 & 0 & 0 & 1 & 1\\ 1 & 1 & 0 & 0 & 0\\ 0 & 1 & 1 & 1 & 0\\ 0 & 0 & 1 & 0 & 0\\ 0 & 0 & 0 & 0 & 1\end{array}\right]\]
\[A(G_{1}) = \left[ \begin{array}{cccccc} 0 & 1 & 1 & 0 & 0 & 0 \\ 1 & 0 & 0 & 1 & 0 & 0 \\ 1 & 0 & 0 & 0 & 1 & 1 \\ 0 & 1 & 0 & 0 & 0 & 0 \\ 0 & 0 & 1 & 0 & 0 & 0 \\ 0 & 0 & 1 & 0 & 0 & 0 \end{array} \right] \]
\[A(G_{2}) = \left[ \begin{array}{cccccc} 0 & 1 & 1 & 1 & 0 & 0 \\ 1 & 0 & 0 & 0 & 0 & 0 \\ 1 & 0 & 0 & 0 & 1 & 0 \\ 1 & 0 & 0 & 0 & 0 & 1 \\ 0 & 0 & 1 & 0 & 0 & 0 \\ 0 & 0 & 0 & 1 & 0 & 0 \end{array} \right]\]
Are these graphs "the same"?
Graph isomorphism
Definition 1.1.20. An isomorphism from a simple graph \(G\) to a simple graph \(H\) is a bijection \(f:V(G)\to V(H)\) such that \(uv\in E(G)\) if and only if \(f(u)f(v)\in E(H)\). We say that "\(G\) is isomorphic to \(H\)", written \(G\cong H\), if there is an isomorphism from \(G\) to \(H\).
Consider the simple graph \(G\) with \[V(G) = \{a,b,c,d,e\}\] and \[E(G) = \{ab,bc,cd,ac,ae\}\]
Consider the simple graph \(H\) with \[V(H) = \{a,b,c,d,e\}\] and \[E(H) = \{bc,cd,de,bd,ba\}.\]
The function \(f:V(G)\to V(H)\) such that
\[f(a)=b\]
\[f(b)=c\]
\[f(c)=d\]
\[f(d)=e\]
\[f(e)=a\]
is an isomorphism from \(G\) to \(H\).
Proposition. If \(f\) is an isomorphism from \(G\) and \(H\), then for any \(v\in V(G)\) the degrees of \(v\) and \(f(v)\) are the same. Moreover, if
\[d_{1},d_{2},\ldots,d_{n}\quad\text{and}\quad d_{1}',d_{2}',\ldots,d_{n}'\]
are the lists of the degrees of their vertices of \(G\) and \(H\), respectively, listed in nonincreasing order, then these lists are identical.
Proof. Consider a vertex \(v\in V(G)\) with degree \(d\). This means that there are \(d\) other vertices \(v_{1},v_{2},\ldots, v_{d}\) that are adjacent to \(v\), that is \(vv_{i}\in E(G)\) for each \(i\in\{1,2,\ldots,d\}\). By the definition of an isomorphism, the vertices adjacent to \(f(v)\) are exactly \(f(v_{1}),\ldots,f(v_{d})\). Thus \(f(v)\) has degree \(d\). \(\Box\)
Example. None of the following graphs are isomorphic:
Definition. A permutation matrix is a square matrix with entries in \(\{0,1\}\) and exactly one \(1\) in each row and each column.
Example. Some permutation matrices:
\[\begin{bmatrix} 1 & 0\\ 0 & 1\end{bmatrix}\]
\[\begin{bmatrix} 1 & 0 & 0\\ 0 & 1 & 0\\ 0 & 0 & 1\end{bmatrix}\]
\[\begin{bmatrix} 0 & 1 & 0\\ 1 & 0 & 0\\ 0 & 0 & 1\end{bmatrix}\]
\[\begin{bmatrix} 0 & 1 & 0 & 0\\ 1 & 0 & 0 & 0\\ 0 & 0 & 0 & 1\\ 0 & 0 & 1 & 0\end{bmatrix}\]
Multiplying a matrix by a permutation on the left permutes the rows:
\[\begin{bmatrix} 0 & 1 & 0\\ 0 & 0 & 1\\ 1 & 0 & 0\end{bmatrix}\begin{bmatrix} a & b & c\\ d & e & f\\ g & h & i\end{bmatrix} = \begin{bmatrix} d & e & f\\ g & h & i\\ a & b & c\end{bmatrix}\]
Multiplying a matrix by a permutation on the right permutes the columns:
\[\begin{bmatrix} a & b & c\\ d & e & f\\ g & h & i\end{bmatrix}\begin{bmatrix} 0 & 1 & 0\\ 0 & 0 & 1\\ 1 & 0 & 0\end{bmatrix} = \begin{bmatrix} c & a & b\\ f & d & e\\ i & g & h\end{bmatrix}\]
Permutation matrices
Rows: \((1,2,3)\mapsto (3,1,2)\)
Columns: \((1,2,3)\mapsto (2,3,1)\)
\[\begin{bmatrix} 0 & 0 & 1\\ 1 & 0 & 0\\ 0 & 1 & 0\end{bmatrix}\begin{bmatrix} a & b & c\\ d & e & f\\ g & h & i\end{bmatrix} \begin{bmatrix} 0 & 1 & 0\\ 0 & 0 & 1\\ 1 & 0 & 0\end{bmatrix}= \begin{bmatrix} i & g & h\\ c & a & b\\ f & d & e\end{bmatrix}\]
\(1\)
\(2\)
\(3\)
\(1\)
\(2\)
\(3\)
If we multiply by \(P\) on the right and \(P^{\top}\) on the left, then we permute the rows and columns in the same way:
Isomorphism: \((1,2,3)\mapsto (2,3,1)\)
\[\begin{bmatrix} 0 & 0 & 1\\ 1 & 0 & 0\\ 0 & 1 & 0\end{bmatrix}\begin{bmatrix} 0 & 1 & 1\\ 1 & 0 & 0\\ 1 & 0 & 0\end{bmatrix} \begin{bmatrix} 0 & 1 & 0\\ 0 & 0 & 1\\ 1 & 0 & 0\end{bmatrix}= \begin{bmatrix} 0 & 1 & 0\\ 1 & 0 & 1\\ 0 & 1 & 0\end{bmatrix}\]
Consider permuting the rows and columns of an adjacency matrix:
Theorem. Two simple graphs \(G\) and \(H\) are isomorphic if and only if there is a permutation matrix \(P\) such that
\[A(H) = P^{\top}A(G)P.\]
Thus, if we can find a permutation matrix such that \(A(H) = P^{\top}A(G)P\), we can conclude \(G\) and \(H\) are isomorphic. If \(G\) and \(H\) are not isomorphic, it is harder to prove.
Definition 1.1.25. An isomorphism class of graphs is an equivalence class of graphs under the isomorphism relation.
Example. Every simple graph on \(2\) vertices is isomorphic to one of the following:
So, there are two isomorphism classes of graphs on \(2\) vertices.
Example. How many isomorphism classes are there on \(3\) vertices?
The "structural" properties of a graph are the same for all isomorphic graphs. For example, number of edges, number of vertices, degree of vertices (already proven), sizes of cliques, sizes of independent sets, etc.
independent set of size \(4\)
NO independent set of size \(4\)
\(\not\cong\)
Connection
in
Graphs
Definition 1.2.2.
- A walk is a list \(v_{0},e_{1},v_{1},\ldots,e_{k},v_{k}\) of vertices and edges such that, for \(i\in\{1,2,\ldots,k\}\), the edge \(e_{i}\) has endpoints \(v_{i-1}\) and \(v_{i}\).
- A trail is a walk with no repeated edge.
- A \(u,v\)-walk or \(u,v\)-trail has first vertex \(u\) and last vertex \(v\); the vertices \(u\) and \(v\) are called its endpoints.
- A \(u,v\)-path is a path whose endpoints are \(u\) and \(v\); the other vertices are called internal vertices.
- The length of a walk, trail, path, or cycle is its number of edges. A walk or trail is closed if its endpoints are the same.
Lemma 1.2.5. Every \(u,v\)-walk contains a \(u,v\)-path.
Proof. (On the board)
Example. A walk with a repeated vertex:
Definition 1.2.6. A graph is connected if for every pair of vertices \(u\) and \(v\), there is a \(u,v\)-path contained in the graph. Otherwise, we say that the graph is disconnected.
If \(G\) has a \(u,v\)-path, then we say that \(u\) is connected to \(v\) in \(G\).
Definition 1.2.8. The components of a graph \(G\) are its maximal connected subgraphs. A component is trivial if it has no edges otherwise it is nontrivial. An isolated vertex is a vertex of degree \(0\).
Proposition 1.2.11. Every graph with \(n\) vertices and \(k\) edges has at least \(n-k\) components.
Note, if a graph \(G\) contains a \(u,v\)-path and a \(v,w\)-path, it is not clear that \(G\) contains a \(u,w\)-path. However, if we concatenate these paths, then we get a \(u,w\)-walk which contains a \(u,w\)-path by Lemma 1.2.5. Thus, the connection relation on vertices is transitive. It is also reflexive (vertices are connected to themselves), and symmetric (since paths are reversible).
Proof. Adding an edge to a graph decreases the number of connected components by at most \(1\). \(\Box\)
Definition 1.2.12.
- A cut-edge or cut-vertex of a graph is an edge or vertex, respectively, whose deletion increases the number of components.
- We write \(G-e\) or \(G-M\) for the subgraph of \(G\) obtained by deleting an edge \(e\) or a set of edges \(M\).
- We write \(G-v\) or \(G-S\) for the subgraph obtained by deleting a vertex \(v\) or a set of vertices \(S\).
- An induced subgraph is a subgraph obtained by deleting a set of vertices.
- We write \(G[T]\) for \(G-\overline{T}\), where \(\overline{T} = V(G)-T\); this is called the subgraph of \(G\) induced by \(T\).
Cut-edges: \(ab\)
Cut-vertices: \(b, d\)
If \(T = \{a,b,c,e,f\}\) then \(G[T]\) is shown in red.
Theorem 1.2.14. An edge is a cut-edge if and only if it belongs to no cycle.
Proof. (On the board)
Note that this theorem is the statemet that the following two implications about an edge \(e\) in a graph \(G\) both hold:
\(e\) is a cut-edge \(\Rightarrow\) \(e\) belongs to no cycle
and
\(e\) belongs to no cycle \(\Rightarrow\) \(e\) is a cut-edge
Given an implication \(A\Rightarrow B\), it is often useful to consider the equivalent statement \(\sim B\Rightarrow \sim A\), which is called the contrapositive. (Here \(\sim A\) is the statement "\(A\) does not hold".)
Thus, we could instead prove the contrapositives of the above implications
\(e\) belongs to a cycle \(\Rightarrow\) \(e\) is not a cut-edge
and
\(e\) is a not a cut-edge \(\Rightarrow\) \(e\) belongs to a cycle
Eulerian Circuits

Seven Bridges of Konigsberg
Is there a path that crosses all 7 bridges exactly once?

Seven Bridges of Konigsberg
Is there a path that crosses all 7 bridges exactly once?

Seven Bridges of Konigsberg
Is there a path that crosses all 7 bridges exactly once?
Definition 1.2.24.
- A graph is Eulerian if it has a closed trail containing all its edges.
- A circuit is a closed trail with vertices listed in cyclic order.
- An Eulerian circuit or Eulerian trail is a circuit or a trail (resp.) containing all the edges.
- An even graph is a graph with vertex degrees all even. We call a vertex odd or even when it has odd or even degree, respectively.
Lemma 1.2.25. If every vertex of a graph \(G\) has degree at least 2, then \(G\) contains a cycle.
Theorem 1.2.26. A graph \(G\) is Eulerian if and only if it has at most one nontrivial component, and all its vertices have even degree.
Proof idea. By Lemma 1.2.25 the graph \(G\) contains a cycle. If we delete all the edges in that cycle, then new graph has fewer edges, but each vertex still has even degree. Thus, we can use induction on the number of edges. (Details are on the board and in the text.)
Proof. (On the board and in the text.)
Consider a path \(P\) in a graph \(G\). If there is another path \(Q\neq P\) such that \[P\subseteq Q\subseteq G,\] then we call \(Q\) an extension of \(P\). Since \(G\) only has finitely many vertices, we cannot extend a path forever. If a path \(P\subseteq G\) has no extension, then we call \(P\) a maximal path.
Proposition 1.2.27. Every even graph decomposes into cycles.
Proposition 1.2.28. If \(G\) is a simple graph in which every vertex has degree at least \(k\), then \(G\) contains a path of length at least \(k\). If \(k\geq 2\), then \(G\) contains a cycle of length at least \(k+1\).
Proposition 1.2.29. Every graph with at least one nonloop edge has at least two vertices that are not cut vertices.
Theorem 1.2.33. For a connected nontrivial graph with exactly \(2k\) odd vertices, the minimum number of trails that decompose it is \(\max\{k,1\}\).
Note: This "decomposition" is a partition of the edges. The cycles may share vertices. Indeed, every vertex of degree \(\geq 2\) must be in more than one cycle.
Vertex Degrees and counting
Definition 1.3.1.
- The degree of a vertex \(v\) in a graph \(G\), written \(d_{G}(v)\) or \(d(v)\), is the number of edges incident to \(v\), except that each loop at \(v\) counts twice.
- The maximum degree is denoted \(\Delta(G)\), the minimum degree is denoted \(\delta(G)\), and \(G\) is regular if \(\Delta(G) = \delta(G)\).
- The graph \(G\) is \(k\)-regular if \(\Delta(G) = \delta(G) = k\).
- The neighborhood of \(v\), denoted \(N_{G}(v)\) or \(N(v)\), is the set of vertices adjacent to \(v\).
Regular graphs and Degree
\(1\)
\(1\)
\(2\)
\(2\)
\(2\)
\(4\)
\(\Delta(G) = 4\) and \(\delta(G) = 1\)
Example.
The Petersen Graph
Definition 1.1.36. The Petersen graph is the simple graph with vertices consisting of all \(2\)-element subsets of \(\{1,2,3,4,5\}\), that is,
\[V(G) = \big\{\{1,2\},\{1,3\},\{1,4\},\{1,5\}, \{2,3\}, \{2,4\}, \{2,5\}, \{3,4\},\{3,5\},\{4,5\}\big\},\]
and two vertices are adjacent if the sets are disjoint.
Note that
\(\Delta(G) = \delta(G) = 3\)
Thus, the Petersen graph is \(3\)-regular.
Definition 1.1.27.
- The path and cycle with \(n\) vertices are denoted \(P_{n}\) and \(C_{n}\), respectively. An \(n\)-cycle is a cycle with \(n\) vertices.
- A complete graph is a simple graph whose vertices are pairwise adjacent. The complete graph on \(n\) vertices is denoted \(K_{n}\)
- A complete bipartite graph or biclique is a simple bipartite graph such that two vertices are adjacent if and only if they are in different partite sets. When the partite sets have sizes \(r\) and \(s\), the graph is denoted \(K_{r,s}\)
Some important graphs
Definition 1.3.2.
- The order of a graph \(G\), written \(n(G)\), is the number of vertices in \(G\).
- An \(n\)-vertex graph is a graph of order \(n\).
- The size of a graph \(G\), written \(e(G)\), is the number of edges in \(G\).
- For \(n\in\mathbb{N}\), we define \([n]: = \{1,2,3,\ldots,n\}\).
Proposition 1.3.3. (Degree-Sum Formula) If \(G\) is a graph, then
\[\sum_{v\in V(G)}d(v) = 2e(G).\]
Proof. Recall that \(d(v)\) is the number of edges with endpoint \(v\). Since each edge has two endpoints, adding up all the degrees we count each edge twice. \(\Box\)
Corollary 1.3.4. In a graph \(G\), the average vertex degree is \(\frac{2e(G)}{n(G)}\), and hence
\[\delta(G)\leq \frac{2e(G)}{n(G)}\leq \Delta(G)\]
Corollary 1.3.5. Every graph has an even number of vertices of odd degree. No graph of odd order is regular with odd degree.
Corollary 1.3.6. A \(k\) regular graph with \(n\) vertices has \(nk/2\) edges.
Proposition 1.3.9. If \(k>0\), then a \(k\)-regular bipartite graph has the same number of vertices in each partite set.
regular bipartite graphs
\(X\)
\(Y\)
Example. Consider the \(2\)-regular bipartite graph below
- 4 vertices in \(X\)
- Each is incident with \(2\) edges
- This is all the edges!
- Same is true for \(Y\)
Proof. Let \(X\) and \(Y\) be the partite sets, then \[e(G) = k|X| = k|Y|.\] Thus \(|X| = |Y|\). \(\Box\)
6-cycles in the petersen graph
6-cycles in the petersen graph
Delete vertex \(\{i,j\}\) and the vertices adjacent to it.
The remaining vertices are the two element sets that contain either \(i\) or \(j\).
\[\{i,k_{1}\},\{i,k_{2}\},\{i,k_{3}\}\]
and
\[\{j,k_{1}\},\{j,k_{2}\},\{j,k_{3}\}\]
Cycle:
\[\{i,k_{1}\},\{j,k_{3}\},\{i,k_{2}\},\{j,k_{1}\}\{i,k_{3}\},\{j,k_{2}\}\]
\(\#\) cycles \(\geq \#\) vertices:
6-cycles in the petersen graph
Consider a 6-cycle \(F\) in the graph.
Cycle:
\[\{a_{1},b_{1}\},\{a_{2},b_{2}\},\{a_{3},b_{3}\},\]
\[\{a_{4},b_{4}\},\{a_{5},b_{5}\},\{a_{6},b_{6}\}\]
\(\#\) cycles \(\leq \#\) vertices:
Two \(i\) and \(j\) numbers show up three times on this list.
Hence, this cycle is the one we obtained by deleting vertex \(\{i,j\}\) and its neighbors.
Proposition 1.3.11 For a simple graph \(G\) with vertices \(v_{1},\ldots,v_{n}\) and \(n\geq 3\),
\[e(G) = \frac{1}{n-2}\sum_{i=1}^{n}e(G-v_{i})\quad\text{and}\quad d_{G}(v_{j}) = \frac{1}{n-2}\sum_{i=1}^{n} e(G-v_{i}) - e(G-v_{j})\]
Conjecture 1.3.12. (Reconstruction Conjecture) If \(G\) is a simple graph with at least three vertices, then \(G\) is uniquely determined by it's list of vertex-deleted subgraphs.
A subgraph obtained by deleting a single vertex is called a vertex-deleted subgraph.
Vertex-deleted subgraphs
Examples.
- The vertex-deleted subgraphs of the cycle of length \(n\), \(C_{n}\), are all \(P_{n-1}\).
- The vertex-deleted subgraphs of the path of length, \(P_{n}\), are \[P_{n-1},P_{1}+P_{n-2},P_{2}+P_{n-3},\ldots,P_{n-2}+P_{1},P_{n-1}.\]
Example. Consider the following vertex-deleted subgraphs:
What order 5 graph?
Example. Consider the graph \(G\) and its vertex-deleted subgraphs:
Extremal Problems
Proposition 1.3.13. The minimum number of edges in a connected graph with \(n\) vertices is \(n-1\).
Proposition 1.3.15. If \(G\) is a simple graph with \(n\) vertices and \[\delta(G)\geq (n-1)/2,\] then \(G\) is connected.
Example 1.3.16. We wish to show that the inequality in Proposition 1.3.15 is sharp, that is, for any \(n\) there exists an \(n\)-vertex graph \(G\) such that \(\delta(G)<(n-1)/2\) and \(G\) is disconnected.
For even \(n\) consider \(K_{n/2}+K_{n/2}\), for odd \(n\) consider \(K_{\frac{n-1}{2}} +K_{\frac{n+1}{2}}\).
Definition 1.3.17. The union of two graphs \(G\) and \(H\) with disjoint vertex sets, is called their disjoint union or sum, and it is denoted \(G+H\). The disjoint union of \(m\) copies of \(G\) is denoted \(mG\).
degree sequences
Definition 1.3.27. The degree sequence of a graph is the list of vertex degrees, usually written in nonincreasing order \(d_{1}\geq \cdots\geq d_{n}\).
If \(d_{1},\cdots, d_{n}\) is the degree sequence of a graph \(G\), then the vertex-sum formula implies \(\sum_{i=1}^{n}d_{i}\) is even.
To be a degree sequence, it is necessary that \(\sum_{i=1}^{n}d_{i}\) is even. Is this condition also sufficient?
w/o loops, but w/ multiple edges, things are more complicated:
Exercise 1.3.56. The nonnegative integers \(d_{1}\geq\ldots\geq d_{n}\) are the vertex degree of some graph if and only if \(\sum_{i=1}^{n}d_{i}\) is even and \(d_{1}\leq d_{2}+\ldots+d_{n}\).
With loops in our graphs, yes!
Proposition 1.3.28. The nonnegative integers \(d_{1},\ldots,d_{n}\) are the vertex degree of some graph if and only if \(\sum_{i=1}^{n}d_{i}\) is even.
Theorem 1.3.31. For \(n>1\), an integer list \(d\) of size \(n\) is graphic if and only if \(d'\) is graphic, where \(d'\) is obtained from \(d\) by deleting the largest element \(\Delta\) of \(d\) and subtracting \(1\) from each of its \(\Delta\) next largest elements. The only \(1\)-element graphic sequence is \(d_{1}=0\).
Definition 1.3.29. A graphic sequence is a list of nonnegative number that is the degree sequence of some simple graph.
Graphic sequences
What about degree sequences of simple graphs?
Example. The degree sequences of both graphs are \(3,2,2,1,1,1\)
But these are not isomorphic graphs!
\[\begin{array}{r|r|r|r|r|r|r|r|r}i & 1 & 2 & 3 & & \Delta+1 & \Delta+2 & & n\\\hline\\ d & \Delta = d_{1} & d_{2} & d_{3} & \ldots & d_{\Delta+1} & d_{\Delta+2} & \ldots, & d_{n}\\\\\hline\\d' & & d_{2}-1 & d_{3}-1 & \ldots & d_{\Delta+1}-1 & d_{\Delta+2} & \ldots & d_{n} \end{array}\]
\[\begin{array}{r|r|r|r|r|r|r|r|r}i & 1 & 2 & 3 & & \Delta+1 & \Delta+2 & & n\\\hline\\ d & \phantom{\Delta = }d_{1} & d_{2} & d_{3} & \ldots & d_{\Delta+1} & d_{\Delta+2} & \ldots, & d_{n}\\\\\hline \\ d' & & \phantom{d_{2}-1} & \phantom{d_{3}-1} & \phantom{\ldots} & \phantom{d_{\Delta+1}-1} & \phantom{d_{\Delta+2}} & \phantom{\ldots} & \phantom{d_{n}} \end{array}\]
Example. Consider the sequence \(d = (3,3,2,1,1)\).
\(d = (3,3,2,1,1)\ \leadsto\ d' = (2,1,0,1)\)
\(d' = (2,1,1,0)\ \leadsto\ d'' = (0,0,0)\)
\(\leadsto\)
Reorder
\(d' = (2,1,1,0)\ \phantom{\leadsto\ d'' = (0,0,0)}\)
How to build \(d'\) from \(d\): Suppose \(d_{1}\geq \cdots\geq d_{n}\)
The sequence \(d = (3,2,2,2,1)\) is graphic since:
Deleting the degree 3 \(\rightarrow\)
So \((2,1,1,0)\) is graphic, but why is \(d' = (1,1,1,1)\) graphic?
We want a graph with degree sequence \((3,\underbrace{2,2,2},1)\) AND...
these vertices
this one's neighbors are...
Why does \(d\) graphic \(\Rightarrow\) \(d'\) graphic?
\[\begin{array}{c|ccccc} \text{vertices} & v_{1} & v_{2} & v_{3} & v_{4} & v_{5}\\\hline \text{degrees} & 3 & 2 & 2 & 2 & 1\end{array}\]
\(N(v_{1}) = \{v_{2},v_{4},v_{5}\}\)
Modify the graph so that \(v_{3}\leftrightarrow v_{1}\) and \(v_{5}\not\leftrightarrow v_{1}\)
BUT, keep degrees the same
\(v_{1}\)
\(v_{2}\)
\(v_{3}\)
\(v_{4}\)
\(v_{5}\)
Add: \(v_{1}v_{3}\)
Delete: \(v_{1}v_{5}\)
Pick a vertex y:
\(y\leftrightarrow v_{3}\) and \(y\not\leftrightarrow v_{5}\)
Delete: \(yv_{3}\)
Add: \(yv_{5}\)
\(v_{1}\)
\(v_{2}\)
\(v_{3}\)
\(v_{4}\)
\(v_{5}\)
\(v_{1}\)
\(v_{2}\)
\(v_{3}\)
\(v_{4}\)
\(v_{5}\)
Directed graphs
Definition 1.4.2.
A directed graph or digraph \(G\) is a triple consisting of a vertex set \(V(G)\), an edge set \(E(G)\), and function assigning each edge an ordered pair of vertices. The first vertex in the ordered pair is the tail of the edge, and the second is the head; together, they are the endpoints. We say that an edge is from its tail to its head.
What is a Directed graph
Example. Let \(V(G) = \{v_{1},v_{2},v_{3},v_{4},v_{5}\}\) and \(E(G) = \{e_{1},e_{2},e_{3},e_{4},e_{5},e_{6}\}\)
and the function that assigns edges to points is given by
\[f(e_{1}) = (v_{1},v_{2}),\quad f(e_{2}) = (v_{2},v_{3}),\quad f(e_{3}) = (v_{3},v_{5})\]
\[f(e_{4}) = (v_{4},v_{4}),\quad f(e_{5}) = (v_{2},v_{1}),\quad f(e_{6}) = (v_{3},v_{5})\]
Definition 1.4.3. In a digraph:
- A loop is an edge whose endpoints are equal.
- Multiple edges are edges having the same ordered pair of endpoints.
- The digraph is simple if each ordered pair is the head and tail of at most one edge (Note: loops are allowed!)
In a simple digraph:
- We write \(uv\) for an edge with tail \(u\) and head \(v\).
- If \(u\neq v\), then the edges \(uv\) and \(vu\) are different.
- If there is an edge from \(u\) to \(v\), then \(u\) is a predecessor of \(v\), and \(v\) is a successor of \(u\).
- We use \(u\to v\) to denote "there is an edge from \(u\) to \(v\)."
Not simple!
Definition 1.4.6. A digraph \(G\) is a path if it is simple, and all of the vertices can be listed (without repetition) \[v_{1},v_{2},\ldots,v_{n}\] such that \[E(G) = \{v_{1}v_{2}\ ,\ v_{2}v_{3}\ ,\ v_{3}v_{4}\ ,\ \ldots\ ,\ v_{n-1}v_{n}\}\]
A digraph is a cycle if it is simple, and all of the vertices can be listed (without repetition) \[v_{1},v_{2},\ldots,v_{n}\] such that \[E(G) = \{v_{1}v_{2}\ ,\ v_{2}v_{3}\ ,\ v_{3}v_{4}\ ,\ \ldots\ ,\ v_{n-1}v_{n}\ ,\ v_{n}v_{1}\}\]
Cycle
Path
Neither
Example: Markov Chain
\[P=\left[\begin{array}{rrr}0 & 0.9 & 0.1\\ 1 & 0 & 0\\ 0.1 & 0.1 & 0.8 \end{array}\right]\]
Given a vector of nonnegative entries \[\mathbf{x} = [x_{A}\ \ x_{B}\ \ x_{C}]\quad\text{ such that }\quad x_{A}+x_{B}+x_{C}=1,\] we interpret \(x_{i}\) as the probability that we're in state \(i\)
Then \(\mathbf{x}P\) gives the probabilities that we're in each state after another step.
Example: Markov Chain
\[P=\left[\begin{array}{rrr}0 & 0.9 & 0.1\\ 1 & 0 & 0\\ 0.1 & 0.1 & 0.8 \end{array}\right]\]
Let \(\mathbf{x}_{n}\) be the vector of probabilities after \(n\) steps.
If we start at \(A\), then \(\mathbf{x}_{0} = [1\ \ 0\ \ 0]\), and
\[\mathbf{x}_{1} = \mathbf{x}_{0}P = [0\ \ 0.9\ \ 0.1]\]
\[\mathbf{x}_{2} =\mathbf{x}_{1}P = \mathbf{x}_{0}P^2 = [0.91\ \ 0.01\ \ 0.08]\]
\[\mathbf{x}_{3} =\mathbf{x}_{2}P = \mathbf{x}_{0}P^3 = [0.018\ \ 0.827\ \ 0.155]\]
\[\mathbf{x}_{100} = \mathbf{x}_{0}P^{100} \approx [0.410706\ \ 0.385357\ \ 0.203936]\]
\(\vdots\)
Digraph degrees
Definition 1.4.17. Let \(v\) be a vertex in a digraph.
- The outdegree \(d^{+}(v)\) is the number of edges with tail \(v\).
- The indegree is the number of edges with head \(v\).
- The out-neighborhood or successor set \(N^{+}(v)\) is the set \[\{x\in V(G) : v\to x\}.\]
- The in-neighborhood or predecessor set \(N^{-}(v)\) is the set \[\{x\in V(G) : x\to v\}.\]
- The minimum and maximum indegree are \(\delta^{-}(G)\) and \(\Delta^{-}(G)\); for outdegree we use \(\delta^{+}(G)\) and \(\Delta^{+}(G)\).
Proposition 1.4.18. In a digraph \(G\), \[\sum_{v\in V(G)}d^{+}(v) = e(G) = \sum_{v\in V(G)}d^{-}(v).\]
Proposition 1.4.19. A list of ordered pairs of nonnegative integers is realizable as the degree pairs of a digraph if and only if the sum of the first coordinates equals the sum of the second coordinates.
Eulerian Digraphs
Definition 1.4.22.
- An Eulerian trail in a digraph is a trail containing all edges.
- An Eulerian circuit is a closed trial containing all edges.
- A digraph is Eulerian if it has an Eulerian circuit.
Lemma 1.4.23. If \(G\) is a digraph with \(\delta^{+}(G)\geq 1\) or \(\delta^{-}(G)\geq 1\), then \(G\) contains a cycle.
Theorem 1.4.24. A digraph is Eulerian if and only if \(d^{+}(v) = d^{-}(v)\) for each vertex \(v\) and the underlying graph has at most one nontrivial component.
Definition 1.4.9. The underlying graph of a digraph \(D\) is the graph \(G\) obtained by treating the edges of \(D\) as unordered pairs.
We have already seen that graphs are Eulerian if and only if they are even. What about digraphs?
Trees
Definition 2.1.1.
- A graph with no cycle is acyclic.
- A forest is an acyclic graph.
- A tree is a connected acyclic graph.
- A leaf is a vertex of degree \(1\).
- A spanning subgraph of \(G\) is a subgraph with vertex set \(V(G)\).
- A spanning tree is a spanning subgraph that is also a tree.
Some floral definitions
\[\underbrace{\hspace*{1.6in}}\]
\[\underbrace{\hspace*{1.6in}}\]
\[\underbrace{\hspace*{1.2in}}\]
Forrest
Tree
Tree
Each of these vertices is a leaf.
Lemma 2.1.3. Every tree with at least two vertices has at least two leaves. Deleting a leaf from an \(n\)-vertex tree produces a tree with \(n-1\) vertices.
Theorem 2.1.4. For an \(n\)-vertex graph \(G\) (with \(n\geq 1\)), the following are equivalent:
A) \(G\) is connected and has no cycles, that is, \(G\) is a tree.
B) \(G\) is connected and has \(n-1\) edges.
C) \(G\) has \(n-1\) edges and no cycles.
D) For \(u,v\in V(G)\), \(G\) has exactly one \(u,v\)-path.
The next theorem give several alternate characterizations of graphs that are trees. Note that each of A, B, and C is the statement that two of the following hold: 1) \(G\) is acyclic, 2) \(G\) is connected, 3) \(G\) has \(n-1\) edges.
Some other characterizations of trees
Corollary 2.1.5.
a) Every edge of a tree is a cut edge.
b) Adding one edge to a tree forms exactly one cycle.
c) Every connected graph contains a spanning tree.
Proposition 2.1.6. If \(T\) and \(T'\) are spanning trees of a connected graph \(G\), and \(e\in E(T)-E(T')\), then there is an edge \(e'\in E(T')-E(T)\) such that \(T-e+e'\) is a spanning tree of \(G\).
Proposition 2.1.7. If \(T\) and \(T'\) are spanning trees of a connected graph \(G\), and \(e\in E(T)-E(T')\), then there is an edge \(e'\in E(T')-E(T)\) such that \(T'+e-e'\) is a spanning tree of \(G\).
Spanning Trees
Proposition 2.1.8. If \(T\) is a tree with \(k\) edges, and \(G\) is a simple graph with \(\delta(G)\geq k\), then \(T\) is a subgraph of \(G\)
Minimal
By John Jasper
Minimal
- 99