Spectral graph theory Péter Csikvári In this note I use some terminologies about graphs without defining them. You can look them up at wikipedia: graph, vertex, edge, multiple edge, loop, bipartite graph, tree, degree, regular graph, adjacency matrix, walk, closed walk. In this note we never consider directed graphs and so the adjacency matrix will always be symmetric for us. 1. Just linear algebra Many of the things described in this section is just the Frobenius–Perron theory specialized for our case. On the other hand, we will cheat. Our cheating is based on the fact that we will only work with symmetric matrices, and so we can do some shortcuts in the arguments. We will use the fact many times that if A is a n × n real symmetric matrix then there exists a basis of Rn consisting of eigenvectors which we can choose1 to be orthonormal. Let u1 , . . . , un be the orthonormal eigenvectors belonging to λ1 ≥ · · · ≥ λn : we have Aui = λi ui , and (ui , uj ) = δij . Let us start with some elementary observations. Proposition 1.1. If ∑G is a simple graph ∑ 2 then the eigenvalues of its adjacency matrix A satisfies i λi = 0 and∑ λi = 2e(G), where e(G) denotes the number of edges of G. In general, λℓi counts the number of closed walks of length ℓ. Proof. Since G has no loop we have ∑ λi = T rA = 0. i Since G has no multiple edges, the diagonal of A2 consists of the degrees of G. Hence ∑ ∑ di = 2e(G). λ2i = T rA2 = i The third statement also follows from the fact T rAℓ is nothing else than the number of closed walks of length ℓ. 1For the matrix I, any basis will consists of eigenvectors as every vectors are eigenvectors, but of course they won’t be orthonormal immediately. 1 2 Using the next well-known statement, Proposition 1.2, one can refine the previous statement such a way that the number of walks of length ℓ between vertex i and j can be obtained as ∑ ck (i, j)λℓk . k The constant ck (i, j) = uik ujk if uk = (u1k , u2k , . . . , unk ). Proposition 1.2. Let U = (u1 , . . . , un ) and S = diag(λ1 , . . . , λn ) then A = U SU T or equivalently n ∑ A= λi ui uTi . i=1 Consequently, we have Aℓ = n ∑ λℓi ui uTi . i=1 Proof. First of all, note that U T = U −1 as the vectors ui are orthonormal. Let B = U SU T . Let ei = (0, . . . , 0, 1, 0, . . . , 0), where the i’th coordinate is 1. Then Bui = U SU T ui = U Sei = (λ1 u1 , . . . , λn un )ei = λi ui = Aui . So A and B coincides on a basis, hence A = B. Let us turn to the study of the largest eigenvalue and its eigenvector. Proposition 1.3. We have λ1 = max xT Ax = max ||x||=1 x̸=0 xT Ax . ||x||2 Further, if for some vector x we have xT Ax = λ1 ||x||2 , then Ax = λ1 x. Proof. Let us write x in the basis of u1 , . . . un : x = α1 u1 + · · · + αn un . Then ||x|| = 2 n ∑ αi2 . i=1 and T x Ax = n ∑ i=1 λi αi2 . 3 From this we immediately see that n n ∑ ∑ xT Ax = λi αi2 ≤ λ1 αi2 = λ1 ||x||2 . i=1 i=1 On the other hand, uT1 Au1 = λ1 ||u1 ||2 . Hence xT Ax λ1 = max x Ax = max . x̸=0 ||x||2 ||x||=1 Now assume that we have xT Ax = λ1 ||x||2 for some vector x. Assume that λ1 = · · · = λk > λk+1 ≥ · · · ≥ λn , then in the above computation we only have equality if αk+1 = · · · = αn = 0. Hence T x = α1 u1 + · · · + αk uk , and so Ax = λ1 x. Proposition 1.4. Let A be a non-negative symmetric matrix. There exists a non-zero vector x = (x1 , . . . , , xn ) for which Ax = λ1 x and xi ≥ 0 for all i. Proof. Let u1 = (u11 , u12 , . . . , u1n ). Let us consider x = (|u11 |, |u12 |, . . . , |u1n |). Then ||x|| = ||u1 || = 1 and xT Ax ≥ uT1 Au1 = λ1 . Then xT Ax = λ1 and by the previous proposition we have Ax = λ1 x. Hence x satisfies the conditions. Proposition 1.5. Let G be a connected graph, and let A be its adjacency matrix. Then (a) If Ax = λ1 x and x ̸= 0 then no entries of x is 0. (b) The multiplicity of λ1 is 1. (c) If Ax = λ1 x and x ̸= 0 then all entries of x have the same sign. (d) If Ax = λx for some λ and xi ≥ 0, where x ̸= 0 then λ = λ1 . Proof. (a) Let x = (x1 , . . . , xn ) and y = (|x1 |, . . . , |xn |). As before we have ||y|| = ||x||, and y T Ay ≥ xT Ax = λ1 ||x||2 = λ1 ||y||2 . Hence Ay = λ1 y. 4 Let H = {i |yi = 0} and V \ H = {i |yi > 0}. Assume for contradiction that H is not empty. Note that V \ H is not empty either as x ̸= 0. On the other hand, there cannot be any edge between H and V \ H: if i ∈ H and j ∈ V \ H and (i, j) ∈ E(G), then ∑ 0 = λ1 y i = aij yj ≥ yj > 0 j contradiction. But if there is no edge between H and V \ H then G would be disconnected, which contradicts the condition of the proposition. So H must be empty. (b) Assume that Ax1 = λ1 x1 and Ax2 = λ1 x2 , where x1 and x2 are independent eigenvectors. Note that by part (a), the entries of x1 is not 0, so we can choose a constant c such that the first entry of x = x2 − cx1 is 0. Note that Ax = λ1 x and x ̸= 0 since x1 and x2 were independent. But then x contradicts part (a). (c) If Ax = λ1 x, and y = (|x1 |, . . . , |xn |) then we have seen before that Ay = λ1 y. By part (b), we know that x and y must be linearly dependent so x = y or x = −y. Together with part (a), namely that there is no 0 entry, this proves our claim. (d) Let Au1 = λ1 u1 . By part (c), all entries have the same sign, we can choose it to be positive by replacing u1 with −u1 if necessary. Assume for contradiction that λ ̸= λ1 . Note that if λ ̸= λ1 then x and u1 are orthogonal, but this cannot happen as all entries of both x and u1 are non-negative, further they are positive for u1 , and x ̸= 0. This contradiction proves that λ = λ1 . So part (c) enables us to recognize the largest eigenvalue from its eigenvector: this is the only eigenvector consisting of only positive entries (or actually, entries of the same sign). Proposition 1.6. (a) Let H be a subgraph of G. Then λ1 (H) ≤ λ1 (G). (b) Further, if G is connected and H is a proper subgraph then λ1 (H) < λ1 (G). Proof. (a) Let x be an eigenvector of length 1 of the adjacency matrix of H such that it has only non-negative entries. Then λ1 (H) = xT A(H)x ≤ xT A(G)x ≤ max z T A(G)z = λ1 (G). ||z||=1 5 In the above computation, if H has less number of vertices than G, then we complete x with 0’s in the remaining vertices and we denote the obtained vector with x too in order to make sense for xT A(G)x. (b) Suppose for contradiction that λ1 (H) = λ1 (G). Then we have equality everywhere in the above computation. In particular xT A(G)x = λ1 (G). This means that x is eigenvector of A(G) too. Since G is connected x must be a (or rather "the") vector with only positive entries by part (a) of the above proposition. But then xT A(H)x < xT A(G)x, a contradiction. Proposition 1.7. (a) We have |λn | ≤ λ1 . (b) Let G be a connected graph and assume that −λn = λ1 . Then G is bipartite. (c) G is a bipartite graph if and only if its spectrum is symmetric to 0. Proof. (a) Let x = (x1 , . . . , xn ) be a unit eigenvector belonging to λn , and let y = (|x1 |, . . . , |xn |). Then ∑ ∑ |λn | = |xT Ax| = | aij xi xj | ≤ aij |xi ||xj | = y T Ay ≤ max z T Az = λ1 . ||z||=1 (Another solution can be given based on the observation ∑ that 0 ≤ T rAℓ = ∑ ℓ λi . If |λn | > λ1 then for large enough odd ℓ we get that λℓi < 0.) (b) Since λ1 ≥ · · · ≥ λn , the condition can only hold if λ1 ≥ 0 ≥ λn . Again let x = (x1 , . . . , xn ) be a unit eigenvector belonging to λn , and let y = (|x1 |, . . . , |xn |). Then ∑ ∑ λ1 = |λn | = |xT Ax| = | aij xi xj | ≤ aij |xi ||xj | = y T Ay ≤ max z T Az = λ1 . ||z||=1 We need to have equality everywhere. In particular, y is the positive eigenvector belonging to λ1 , and all aij xi xj have the same signs which can be only negative since λn ≤ 0. Hence every edges must go between the sets V − = {i | xi < 0} and V + = {i | xi > 0}. This means that G is bipartite. (c) First of all, if G is a bipartite graph with color classes A and B then the following is a linear bijection between the eigenspace of the eigenvalue λ and the eigenspace of the eigenvalue −λ: if Ax = λx then let y be the vector which coincides with x on A, and −1 times x on B. It is easy to check that this will be an eigenvector belonging to −λ. Next assume that the spectrum is symmetric to 0. We prove by induction on the number of vertices that G is bipartite. Since the spectrum of the graph G is the union of the spectrum of the components there must be a component H with smallest eigenvalue λn (H) = λn (G). Note that λ1 (G) = |λn (G)| = |λn (H)| ≤ λ1 (H) ≤ λ1 (G) implies that λ1 (H) = −λn (H). Since 6 H is connected we get that H is bipartite and its spectrum is symmetric to 0. Then the spectrum of G \ H has to be also symmetric to 0. By induction G \ H must be bipartite. Hence G is bipartite. Proposition 1.8. Let ∆ be the maximum degree, and let d denote the average degree. Then √ max( ∆, d) ≤ λ1 ≤ ∆. Proof. Let v = (1, 1, . . . , 1). Then λ1 ≥ v T Av 2e(G) = = d. ||v||2 n If the largest degree is ∆ then G contains K1,∆ as a subgraph. Hence √ λ1 (G) ≥ λ1 (K1,∆ ) = ∆. Finally, let x be an eigenvector belonging to λ1 . Let xi be the entry with largest absolute value. Then ∑ ∑ ∑ |λ1 ||xi | = | aij xj | ≤ aij |xj | ≤ aij |xi | ≤ ∆|xi |. j j j Hence λ1 ≤ ∆. Proposition 1.9. Let G be a d-regular graph. Then λ1 = d and its multiplicity is the number of components. Every eigenvector belonging to d is constant on each component. Proof. The first statement already follows from the previous propositions, but it also follows from the second statement so let us prove this statement. Let x be an eigenvector belonging to d. We show that it is constant on a connected component. Let H be a conncted component, and let c = maxi∈V (H) xi , let Vc = {i ∈ V (H) | xi = c} and V (H) \ Vc = {i ∈ V (H) | xi < c}. If V (H) \ Vc were not empty then there exists an edge (i, j) ∈ E(H) such that i ∈ Vc , j ∈ V (H) \ Vc . Then ∑ ∑ dc = dxi = xk ≤ xj + xk < c + (d − 1)c = dc, k∈N (i) k∈N (i),k̸=j contradiction. So x is constant on each component. 7 2. Expanders and pseudorandom graphs In this section G always will be a d–regular graph. The goal of this section is to show how λ2 and λn measures the "randomness" of the graph. Let S, T ⊆ V (G). Let e(S, T ) = |{(u, v) ∈ E(G) | u ∈ S, v ∈ T }|. Note that in the above definition, S and T are not necessarily disjoint. For instance, if S = T , then maybe a bit counter intuitively, e(S, S) counts 2 times the number of edges induced by the set S. If G were random then we would | expect e(S, T ) ≈ d |S||T . n Theorem 2.1. Let G be a d–regular graph on n vertices with eigenvalues d = λ1 ≥ λ2 ≥ · · · ≥ λn . Let S, T ⊆ V (G) such that S ∪ T = V (G) and S ∩ T = ∅. Then |S||T | |S||T | (d − λ2 ) ≤ e(S, T ) ≤ (d − λn ) . n n Before we start proving this theorem, we need a lemma. Lemma 2.2. Let A be a symmetric matrix with eigenvalues λ1 ≥ λ2 ≥ · · · ≥ λn and corresponding orthornormal eigenvectors u1 , . . . , un . Then (a) min xT Ax = λn . ||x||2 max xT Ax = λ2 . ||x||2 x̸=0 (b) x⊥u1 Proof. (a) Let x = α1 u1 + · · · + αn un . Then T x Ax = n ∑ λi αi2 ≥ λn i=1 n ∑ αi2 = λn ||x||2 . i=1 On the other hand, uTn Aun = λn ||un ||2 . This proves part (a). (b) Again let x = α1 u1 + · · · + αn un . Since x ⊥ u1 we have α1 = (x, u1 ) = 0. Then n n n ∑ ∑ ∑ T 2 2 x Ax = λi αi = λi αi ≤ λ2 αi2 = λ2 ||x||2 . On the other hand, i=1 T u2 Au2 i=2 i=1 = λ2 ||u2 || . This proves part (b). 2 8 Proof of the theorem. Let |S| = s and |T | = t. Let us consider the vector x which takes the value t on the vertices of S and the value −s on the vertices of T . Then x is perpendicular to the all 1 vector, indeed |S|t − |T |s = 0. Note that u1 = √1n 1 so x is perpendicular to u1 . Let us consider ∑ (xi − xj ) = d 2 n ∑ x2i − 2 i=1 (i,j)∈E(G) ∑ xi xj = d||x||2 − xT Ax. (i,j)∈E(G) First of all, by the lemma we have (d − λ2 )||x||2 ≤ d||x||2 − xT Ax ≤ (d − λn )||x||2 . On the other hand, ∑ (xi − xj )2 = e(S, T )(t − (−s))2 = e(S, T )(s + t)2 = e(S, T )n2 . (i,j)∈E(G) Note that ||x||2 = ts2 + st2 = st(s + t) = stn. Hence (d − λ2 )nst ≤ e(S, T )n2 ≤ (d − λn )nst. In other words, (d − λ2 ) st st ≤ e(S, T ) ≤ (d − λn ) . n n Definition 2.3. Let S ⊆ V (G). The set of neighbors of S is N (S) = {u ∈ V (G) \ S | ∃v ∈ S : (u, v) ∈ E(G)}. Definition 2.4. A graph G is called (n, d, c)-expander if |V (G)| = n, it is d–regular and |N (S)| ≥ c|S| for every set S satisfying |S| ≤ n/2. Intuitively, the larger the c, the better your network (your graph G) is: if you have a gossip then it spreads in a fast way in a good expander. Theorem 2.5. A d–regular graph G on n vertices is an (n, d, c)–expander with 2 c = d−λ . 2d Proof. Let S ⊆ V (G) with |S| ≤ n/2. Let T = V (G) \ S, not that |T | ≥ n/2. Then e(S, T ) = e(S, N (S)) ≤ d|N (S)|. 9 By Theorem 2.1 we have e(S, T ) ≥ (d − λ2 ) |S||T | 1 ≥ (d − λ2 )|S| . n 2 Hence d|N (S)| ≥ d − λ2 |S|. 2 In other words, |N (S)| ≥ d − λ2 |S| = c|S|. 2d The quantity d − λ2 is called spectral gap. Let’s see another corollary of Theorem 2.1. First we start with a definition. Definition 2.6. A set S ⊆ V (G) is called an independent set if it induces the empty graph. (In other words, e(S, S) = 0.) The size of the largest independent set is denoted by α(G). Theorem 2.7. (Hoffman-Delsarte bound) Let G be a d–regular graph on n vertices with eigenvalues d = λ1 ≥ λ2 ≥ · · · ≥ λn . Then α(G) ≤ −λn n . d − λn Proof. Let S be the largest independent set, and T = V (G) \ S. Then |S| = α(G), and e(S, T ) = d|S| = dα(G). By Theorem 2.1 we have e(S, T ) ≤ (d − λn ) |S||T | . n Hence α(G)(n − α(G)) . n By dividing by α(G) and multiplying by n/(d − λn ) we get that dα(G) ≤ (d − λn ) nd ≤ n − α(G). d − λn In other words, α(G) ≤ −λn n . d − λn 10 The Hoffman-Delsarte bound is surprisingly good in a number of cases. Let’s see a bit strange application. A family F = {A1 , A2 , . . . , Am } is called intersecting if Ai ∩ Aj ̸= ∅. Assume that Ai ⊆ {1, 2, . . . , n}, and |Ai | = k for all i. The question is the following: what’s the largest possible intersecting family of k-element subsets of {1, 2, . . . , n}? If k > n/2 then any two k-subset is intersecting so the question is trivial. So let us assume that k ≤ n/2. A good candidate for a large intersecting family is the family F1 of those subsets (which ) . contains the element 1 (or actually any fixed element). Then |F1 | = n−1 k−1 Erdős, Ko and Rado proved that this is indeed the largest possible size of an intersecting family of k-element subsets of {1, 2, . . . , n}. (Actually, they also ) proved that if n > 2k then an intersecting family of size n−1 must contain k−1 a fixed element. For n = 2k this is not true: any family will work where you don’t choose a set and its complement (n−1) at the same time. Now we will only prove the weaker statement that k−1 is an upper bound (and actually we will cheat a bit as we cite a very non-trivial statement). Let us define the following graph G: its vertex set consists of the k-element subsets of {1, 2, . . . , n} and two sets are joined by an edge if they are disjoint. This graph is called the Kneser(n, k) graph. An independent set in this graph is exactly an intersecting family. The following theorem about its spectrum is non-trivial, its proof can be found in C. Godsil and G. Royle: Algebraic graph theory, page 200. Theorem 2.8. The eigenvalues of the Kneser(n, k) graph are ( ) i n−k−i (−1) , k−i ( ) where i = 0, . . . , k. The multiplicity of n−k is 1, otherwise the multiplicity of k ( ) (n) ( n ) i n−k−i (−1) k−i is i − i−1 if i ≥ 1. ( ) Note that the Kneser-graph is n−k –regular, and according to the previous k ( ) n−k−1 theorem, its smallest eigenvalue is − k−1 . Then by the Hoffman-Delsarte bound we have (n−k−1)(n) k ). α(Kneser(n, k)) ≤ (n−k)k−1 (n−k−1 + k k−1 ( ) ( ) n−k n−k n−k−1 = , k k k−1 and so the denominator is )( ) ( ( ) n−k−1 n n−k−1 n−k +1 = . k−1 k k k−1 Note that 11 Hence (n−k−1)(n) (n−k) k−1 k (n−k−1 ) k−1 ( ) ( ) k n n−1 = = . n k k−1 + Voilá! Honestly this is probably the most complicated proof of the Erdős-KoRado theorem, but there are some similar theorems where the only known proof goes through the eigenvalues of some similarly defined graph. k Now let us turn back to estimating e(S, T ) for d–regular graphs. The following theorem is called the expander mixing lemma. Theorem 2.9 (Expander mixing lemma). Let G be a d–regular graph on n vertices with eigenvalues d = λ1 ≥ λ2 ≥ · · · ≥ λn . Let λ = max(|λ2 |, . . . , |λn |) = max(|λ2 |, |λn |). Let S, T ⊆ V (G), then √ e(S, T ) − d |S||T | ≤ λ |S||T |. n Proof. Let χS and χT be the characteristic vectors of the sets S and T : so χS (u) = 1 if u ∈ S and 0 otherwise. Observe that e(S, T ) = χTS AχT . Let us write up χS and χT in the orthonormal basis u1 , . . . , un of eigenvectors. Note that we can choose u1 to be √1n 1. Let χS = n ∑ αi ui i=1 and χT = n ∑ βi ui . i=1 Then χTS AχT = n ∑ λi αi βi . i=1 Note that α1 = (χS , u1 ) = |S| √ , n and similarly β1 = (χT , u1 ) = |S| |T | |S||T | λ1 α 1 β1 = d √ √ = d . n n n Hence |S||T | ∑ = λi αi βi . e(S, T ) − d n i=2 n |T | √ . n Hence 12 ∑ n ∑ n |S||T | e(S, T ) − d = λi α i βi ≤ λ |αi ||βi |. n Then i=2 i=2 Now let us apply a Cauchy-Schwartz inequality: ( n )1/2 ( n )1/2 n ∑ ∑ ∑ |αi ||βi | ≤ |αi |2 |βi |2 . i=2 i=2 i=2 We will be a bit generous: ( n )1/2 ( n )1/2 ( n )1/2 ( n )1/2 ∑ ∑ ∑ ∑ |αi |2 |βi |2 ≤ |αi |2 |βi |2 = i=2 i=2 i=1 i=1 = ||χS || · ||χT || = |S|1/2 |T |1/2 . Hence √ e(S, T ) − d |S||T | ≤ λ |S||T |. n If we were not generous at the last step then we could have proved the following stronger statement: ( ) ( )1/2 2 1/2 |T |2 |S||T | ≤ λ |S| − |S| e(S, T ) − d |T | − . n n n We could have used that α1 = |S| √ n and β1 = |T | √ . n Remark 2.10. A graph is called (n, d, λ)-pseudorandom if it is a d–regular graph on n vertices with max(|λ2 |, |λn |) ≤ λ. (Note that for bipartite d–regular graphs it is convenient to require that λ2 ≤ λ, we will not do it though.) Many theorems which assert that "a random d–regular graph satisfies property P with probability 1" have an analogue that "an (n, d, λ)-pseudorandom graph with λ ≤ ... satisfies property P ". Such an example is the following theorem due to F. Chung. Theorem 2.11. 2 Let G be an (n, d, λ)–pseudorandom graph. Then the diameter of G is at most ⌈ ⌉ log(n − 1) ( ) + 1. log λd 2We did not discuss this theorem at the lecture. 13 Proof. We need to prove that there exists an r ≤ ⌈ log(n−1) ⌉ + 1 such that the d log( λ ) distance between any vertices i and j is at most r. In other words, there is a walk of length at most r starting at vertex i and ending at vertex j. It means that we have to prove that (Ar )ij > 0. On the other hand, we know that n ∑ r (A )ij = uik ujk λrk , k=1 where uk = (u1k , . . . , unk ). As usual, u1 , . . . , un is an orthonormal basis of eigenvectors: Aui = λi ui , and u1 = √1n 1. Then ui1 uj1 λr1 = So it is enough to prove that dr . n n ∑ dr r uik ujk λk < n k=2 for some r ≤ ⌈ log(n−1) ⌉ + 1. d log( λ ) n )1/2 )1/2 ( n ( n n ∑ ∑ ∑ ∑ 2 2 r r r |ujk | = |uik | uik ujk λk ≤ λ |uik ||ujk | ≤ λ k=2 k=2 k=2 k=2 )1/2 )1/2 ( n ( n ∑ ∑ |ujk |2 − u2i1 = |uik |2 − u2i1 = λr k=1 k=2 ( )1/2 ( )1/2 ( ) 1 1 1 r r =λ 1− 1− =λ 1− . n n n The second inequality is a Cauchy-Schwartz. After that we used that the row(!) vectors of U = (u1 , . . . un ) have length 1. This is true since the orthonormality of the column vectors implies the orthonormality of the row vectors. (Indeed, U · U T = I implies U T · U = I.) Note that ( ) 1 dr r λ 1− < n n indeed holds true for r = ⌈ log(n−1) ⌉ + 1. d log( λ ) It is clear from the previous theorems that the smaller the λ, the better pseudorandom properties G have. Then the following question naturally arises: what’s the best λ we can achieve? The complete graph on Kd+1 has eigenvalues d, (−1)(d) , but the problem is that it is only one graph. What happens if we 14 require our graph to be large? The Alon-Boppana theorem asserts that in √ some sense 2 d − 1 is a threshold: Theorem 2.12 (Alon-Boppana). Let (Gn ) be a sequence of d-regular graphs such that |V (Gn )| → ∞. Then √ lim inf λ2 (Gn ) ≥ 2 d − 1. n→∞ √ In other words, if s < 2 d − 1 then there is only finitely many d–regular graphs for which λ2 ≤ s. We will prove a slightly stronger statement due to Serre. Theorem 2.13 (Serre). For every ε > 0, there exists a c = c(ε, d) such √ that for any d–regular graph G, the number of eigenvalues λ with λ ≥ (2−ε) d − 1 is at least c|V (G)|. theorem since for any s < √Serre’s theorem indeed implies the Alon-Boppana √ 2 d − 1 we choose ε such that s < (2 − ε) d − 1, then if |V (G)| > 2/c(ε, d), we have at least two eigenvalues which are bigger then s (one of them is d), so λ2 (G) > s. The following proof of Serre’s theorem is due to S. Cioaba. ∑ Proof. The idea of the proof is that p2k = ni=1 λ2k i cannot be too small. Recall that p2k counts the number of closed walks of length 2k. We will show that for any vertex v, the number of closed walks W2k (v) of length 2k starting and ending at v is at least as large as the number of closed walks starting and ending at some root vertex of the infinite d–regular tree Td . Let us consider the following infinite d-regular tree, its vertices are labeled by the walks starting at the vertex v which never steps immediately back to a vertex from where it came. Such walks are called non-backtracking walks. For instance, 149831 is such a walk, but 1494 is not a backtracking walk since after 9 we immediately stepped back to 4. We connect two non-backtracking walks in the tree if one of them is a one-step extension of the other. Note that every closed walk in the tree corresponds to a closed walk in the graph: for instance, 1, 14, 149, 14, 1 corresponds to 1, 4, 9, 4, 1. (In some sense, these are the "genuinely" closed walks.) On the other hand, there are closed walks in the graph G, like 149831, which are not closed anymore in the tree. Let r2k denote the number of closed closed walks from a given a root vertex in the infinite d–regular tree. So far we know that ∑ p2k = W2k (v) ≥ nr2k . v∈V (G) 15 10 1 9 4 12 13 14 1 8 5 2 125 126 149 3 6 7 1256 1498 We would be able to determine r2k explicitly, but for our purposes, it is better to give a lower bound with which we can count easily. Such a lower bound is (2k) r2k ≥ k k+1 d(d − 1)k−1 > √ 1 (2 d − 1)2k . 2 (k + 1) The second inequality comes from Stirling’s formula, so we only need to understand the first inequality. Every closed walk in the tree can be encoded as follows: we write a 1 if we step down (so away from the root) and −1 if we step up (towards the root), additionally we choose a direction d − 1 or d ways if we step down. More precisely, we can choose our step in d ways if we are in the root and d − 1 ways otherwise. (The lower bound d − 1 would be sufficient for us.) Note that we have to step down exactly k times, and step up exactly k times to get a closed walk. So the sequence of "directions" is at least d(d − 1)k−1 . The sequence of ±1 has two conditions: (i) there must be exactly k 1’s and exactly k −1’s, (ii) the sum of the first few elements cannot be negative (we cannot go higher than the root): s1 + s2 + · · · + si ≥ 0 for all 1 ≤ i ≤ 2k, where si = ±1 according to the i-th step goes down or up. Such (2kk) sequences are counted by the Catalan-numbers: k+1 . In this proof we simply accept this fact, later we will revisit this counting problem at 2 × k standard Young tableauxs. Now let us finish the proof by using the fact that p2k ≥ √ n (2 d − 1)2k (k + 1)2 16 for√every k. Let m be the number of eigenvalues which are at least (2 − ε) d − 1. Let us consider the sum n ∑ (d + λi )2t , i=1 where t is a positive integer that we will choose later. Note that 0 ≤ d+λi ≤ 2d, hence n ∑ √ (d + λi )2t ≤ m(2d)2t + (n − m)(d + (2 − ε) d − 1)2t . i=1 On the other hand, by the binomial theorem we have ( n ) n n ∑ 2t ( ) 2t ( ) ∑ ∑ ∑ ∑ 2t 2t (d + λi )2t = dj λ2t−j = dj λ2t−j . i i j j i=1 i=1 j=0 j=0 i=1 √ ∑n k n 2k We know that pk = i=1 λi ≥ 0 if k is odd and p2k ≥ (k+1)2 (2 d − 1) . Hence ( n ) ( n ) t ( ) 2t ( ) ∑ ∑ 2t j ∑ 2t−2j 2t j ∑ 2t−j d λi ≥ d λi ≥ 2j j i=1 i=1 j=0 j=0 t ( ) t ( ) ∑ ∑ √ 2t j n n 2t j √ 2t−2j ≥ d d − 1) ≥ (2 d (2 d − 1)2t−2j = 2 2 2j (t − j + 1) (t + 1) 2j j=0 j=0 ( ) √ √ √ n n 2t 2t = (d + 2 d − 1) + (d − 2 d − 1) ≥ (d + 2 d − 1)2t . 2(t + 1)2 2(t + 1)2 Hence we have √ √ n m(2d)2t + (n − m)(d + (2 − ε) d − 1)2t ≥ (d + 2 d − 1)2t . 2 2(t + 1) This means that m ≥ n Note that √ √ + 2 d − 1)2t − (d + (2 − ε) d − 1)2t √ . (2d)2t − (d + (2 − ε) d − 1)2t 1 (d 2(t+1)2 √ )2t d+2 d−1 √ d + (2 − ε) d − 1 grows much faster than 2(t + 1)2 , so we can choose a t0 for which √ √ 1 2t0 (d + 2 d − 1) − (d + (2 − ε) d − 1)2t0 > 0, 2(t0 + 1)2 ( 17 √ √ + 2 d − 1)2t0 − (d + (2 − ε) d − 1)2t0 √ c(ε, d) = (2d)2t0 − (d + (2 − ε) d − 1)2t0 satisfies the conditions of the theorem. then 1 (d 2(t0 +1)2 Remark 2.14. √ A d–regular non-bipartite graph G is called Ramanujan if λ√ 2 , |λn | ≤ 2 d − 1. If G is bipartite then it is called Ramanujan if λ2 ≤ 2 d − 1. It is known that for any d there exists infinitely many d–regular bipartite Ramanujan-graph, this is a result of A. Marcus, D. Spielman and N. Srivastava. On the other hand, if G is non-bipartite then our knowledge is much more limited: for d = pα + 1, where p is a prime there exists construction for infinite family of d–regular Ramanujan-graphs. It is conjectured that a random d–regular graph is Ramanujan with positive probability independently of the number of vertices. 3. Strongly regular graphs In this section we study strongly regular graphs, these are very special simple graphs. Strongly regular graphs are often very symmetric graphs and linear algebraic tools are particularly amenable to study them. Definition 3.1. A graph G is a strongly regular graph with parameters (n, d, a, b) if it has n vertices, d–regular, two adjacent vertices have exactly a common neighbors, and two non-adjacent vertices have exactly b common neighbors. For instance, a 4-cycle is a strongly regular graph with parameters (4, 2, 0, 2) while a 5-cycle is a strongly regular graph with parameters (5, 2, 0, 1). Note that a k-cycle is never strongly regular if k ≥ 6. The Petersen-graph is a strongly regular graph with parameters (10, 3, 0, 1). {1,2} {3,5} {4,5} {1,3} {2,5} {1,4} {2,4} {2,3} {3,4} {1,5} Figure 1. Petersen-graph as the Kneser(5,2) graph. 18 In what follows we try to find necessary conditions for the parameters (n, d, a, b) to enable the existence of a strongly regular graph with parameters (n, d, a, b). The first one is very elementary. Proposition 3.2. Let G be a strongly regular graph with parameters (n, d, a, b). Then d(d − 1 − a) = (n − d − 1)b. Proof. Let u be a fixed vertex. Let us count the number of vertex pairs (v1 , v2 ) for which the following holds: (u, v1 ) ∈ E(G), (v1 , v2 ) ∈ E(G) and (u, v2 ) ∈ / E(G), and v1 , v2 ̸= u. We can choose v1 in d different ways, then we can choose v2 from the d neighbors of v1 , but we cannot choose u, and we cannot choose those a vertices which are connected to u. So the number of these pairs are d(d − 1 − a). On the other hand, we can choose v2 in n−d−1 different ways, as we cannot choose u and its neighbors. After choosing v2 , we can choose v1 in b ways as u and v1 has b common neighbors. Hence d(d − 1 − a) = (n − d − 1)b. Next let us compute the eigenvalues and its multiplicities of a strongly regular graph. It will turn out that a strongly regular graph has only 3 different eigenvalues and the simple fact that the multiplicities of the eigenvalues must be non-negative integers imposes a very strong condition on the parameters (n, d, a, b). Recall that for a simple graph G, the entries of A2 can be understood very easily. In the diagonal of A2 we have the degrees of the vertices, in our case, there will be d everywhere. On the other hand, for i ̸= j, (A2 )ij counts the number of common neighbors of vertex i and j which is a or b according to i and j are adjacent or not. So in A2 + (b − a)A we have d’s in the diagonal and b’s everywhere else. Hence A2 + (b − a)A − (d − b)I = bJ, where J is the all 1 matrix. Now let us assume that Ax = λx, where x = (x1 , . . . , xn ). Then (A2 + (b − a)A − (d − b)I)x = (λ2 + (b − a)λ − (d − b))x, while n ∑ xi )1. bJx = b( i=1 19 Hence by comparing the i’th coordinates we get that n ∑ (λ2 + (b − a)λ − (d − b))xi = b( xi ). i=1 If λ + (b − a)λ − (d − b) ̸= 0, then all xi must be equal, and we simply get the usual eigenvector belonging to d. Otherwise, λ2 + (b − a)λ − (d − b) must be 0, hence √ a − b ± (a − b)2 + 4(d − b) λ = λ± = . 2 It is easy to see that if G is a disconnected strongly regular graph then it must be the disjoint union of some Kd+1 . Since it is not really interesting, let us assume that G is connected. Then we know that the multiplicity of the eigenvalue d is exactly 1. Let m+ and m− be the multiplicities of the other two eigenvalues. Since the number of eigenvalues is n, we know that 2 1 + m+ + m− = n. We also know that T rA = 0, so 0 = T rA = 1 · d + m+ λ+ + m− λ− . From this we get that 1 m± = 2 ( 2d + (n − 1)(a − b) n−1∓ √ (a − b)2 + 4(d − b) ) . Let us summarize our results in a theorem. Theorem 3.3. Let G be a connected strongly regular graph with parameters (n, d, a, b). Then its eigenvalues are d with multiplicity 1, and √ a − b ± (a − b)2 + 4(d − b) λ± = 2 with multiplicity ( ) 1 2d + (n − 1)(a − b) m± = n−1∓ √ . 2 (a − b)2 + 4(d − b) As an example we can compute the eigenvalues of the Petersen-graph. Recall that this is a strongly regular graph with parameters (10, 3, 0, 1). Then its eigenvalues are 3, 1 and −2, where the multiplicities are m1 = 5, m2 = 4. The condition that m± are non-negative integers is a surprisingly strong condition, this is called the integrality condition. As an application, let’s see which strongly regular graphs have parameters (n, d, 0, 1). We have already 20 seen that the 5-cycle and the Petersen-graph are such graphs with d = 2 and d = 3. Actually, K2 is also such graph with d = 1, but it’s a bit cheating since the fourth parameter hasn’t any meaning, not to mention K1 with d = 0... First of all, note that our first proposition implies that n = d2 + 1. Indeed, d(d−1−a) = (n−d−1)b with a = 0, b = 1 immediately implies that n = d2 +1. Theorem 3.4 (Hoffman–Singleton). Let G be a strongly regular graph with parameters (d2 + 1, d, 0, 1), where d ≥ 2. Then d ∈ {2, 3, 7, 57}. Proof. The eigenvalues of the graph G are d and √ −1 ± 4d − 3 λ± = 2 and its multiplicities are ( ) 1 2d − d2 2 m± = d ∓√ . 2 4d − 3 If 2d − d2 = 0, then d = 0 or 2. (For d = 0, the definition works, but we don’t consider it as a strongly regular √ graph. We simply excluded it by requiring d ≥ 2.) If 2d − d2 ̸= 0, then 4d − 3 is a rational number. This can only happen if 4d − 3 is a perfect square. Hence 4d − 3 = s2 . Then ( ) ( )2 ( 2 )2 2 s2 +3 − s2 +3 4 4 1 s +3 m± = ∓ . 2 4 s Hence s5 + s4 + 6s3 − 2s2 + 9s − 15 m+ = . 32s Since 32m+ is an integer, we get that s | 15. Hence s ∈ {1, 3, 5, 15}. If s = 1 then d = 1 which we excuded. So s ∈ {3, 5, 15} whenced ∈ {3, 7, 57}. Together with d = 2 we get that d ∈ {2, 3, 7, 57}. Remark 3.5. One might wonder whether there is such a graph for d = 7 and d = 57. For d = 7 there is such a graph: it is called the Hoffman-Singleton graph. It is the unique strongly regular graph with parameters (50, 7, 0, 1) just as the Petersen-graph and the 5-cycle are the unique strongly regular graphs with parameters (10, 3, 0, 1) and (5, 2, 0, 1). It is not known whether there is a strongly regular graph with parameters (3250, 57, 0, 1). Remark 3.6. The following statement is true in general: the eigenvalues of a strongly regular graph are integers or the parameters of the strongly regular graph satisfies that (n, d, a, b) = (4k + 1, 2k, k − 1, k) for some k, the latter graphs are called conference graphs, for instance the 5–cycle is a conference 21 graph. This statement can be proved by studying whether 2d + (n − 1)(a − b) is 0 or not. Theorem 3.7 (Lossers-Schwenk). One cannot decompose K10 into three edge disjoint Petersen-graphs. Proof. Suppose for contradiction that we can decompose K10 into three edge disjoint Petersen-graphs. Let A1 , A2 and A3 be the adjacency matrices of the three Petersen-graphs. Then J − I = A1 + A2 + A3 . Note that A1 , A2 and A3 has a common eigenvector, namely 1. All other eigenvectors are orthogonal to this vector. In particular, we can consider the eigenspaces of A1 and A2 belonging to the eigenvalue 1. Let these eigenspaces be V1 and V2 . Note that dim V1 = dim V2 = 5 as the multiplicity of the eigenvalue 1 is 5. We know that V1 , V2 ⊆ 1⊥ . Note that 1⊥ is a 9-dimensional vectorspace, so V1 and V2 must have a non-trivial intersection: let x ∈ V1 ∩ V2 . Then A3 x = (J − I)x − A1 x − A2 x = 0 − x − x − x = −3x. But this is a contradiction since −3 is not an eigenvalue of the Petersengraph. Remark 3.8. It is possible to pack two Petersen-graphs into K10 . The above proof shows that the remaining edges form a 3–regular graph H with an eigenvalue −3. This suggests that H should be a bipartite graph. This is indeed true, but one needs to prove first that H is connected. It is quite easy to prove it as the only disconnected 3-regular graph on 10 vertices is K4 ∪ K3,3 (why?). It is not hard to show that H cannot be K4 ∪ K3,3 . Second proof. 3 Suppose that we can decompose K10 into 3 edge-disjoint Petersengraphs. Let us color the edges of the three Petersen-graphs with blue, red and green colors in order to make it easier to refer to them. Let v be any vertex of K10 and let b1 , b2 , b3 be the neighbors of v in the blue Petersen-graph. Similarly let r1 , r2 , r3 and g1 , g2 , g3 be the neighbors of v in the red and green Petersen–graphs. For a moment, let’s put away the green Petersen–graph and let’s just concentrate on the bipartite graph induced by the vertices b1 , b2 , b3 and r1 , r2 , r3 . Note that the edge (v, r1 ) is a red edge, so it’s not blue! This means that there must be exactly one blue path of length 2 between v and r1 . In other words, r1 is connected by a blue edge to exactly one of the vertices of b1 , b2 , b3 . 3We didn’t discuss this proof. This is an elementary proof which I found when I was a master student. 22 Similarly, r2 and r3 are connected by a blue edge to exactly one of the vertices of b1 , b2 , b3 . This means that there are exactly 3 blue edges between b1 , b2 , b3 and r1 , r2 , r3 . By repeating this argument to b1 , b2 , b3 , we find that there are exactly 3 red edges between b1 , b2 , b3 and r1 , r2 , r3 . This means that there are exactly 3 green edges between b1 , b2 , b3 and r1 , r2 , r3 . Now let us consider the green Petersen–graph. If we delete the vertices v, g1 , g2 , g3 from this graph, the green edges induce a 6-cycle on the remaining vertices. According to the previous paragraph, there is a cut of this 6-cycle which contains exactly 3 edges. But this is impossible: a cut of a 6-cycle always contains even number of edges! Indeed, if we walk around the 6-cycle we need to cross the cut even number of times to get back to the original side of the cut from where we started our walk. 4. Cayley graphs Let Γ be a finite group and S ⊆ Γ such that g ∈ S if and only if g −1 ∈ S, and 1 ∈ / S. Then we can define the Cayley-graph G = Cay(Γ, S) as follows. Its vertex set is the elements of Γ and (g, h) ∈ E(G) if and only if gh−1 ∈ S. Note that if (g, h) ∈ E(G) then (h, g) ∈ E(G) since hg −1 = (gh−1 )−1 and if gh−1 ∈ S then (gh−1 )−1 ∈ S by our assumption on S. Finally, note that G does not contain loop since 1 ∈ / S. In this section we try to understand the spectrum of a Cayley-graph for an abelian group Γ. We will need the notion of character. Definition 4.1. Let Γ be an abelian group. A χ : Γ → C is a character if it is a homomorphism from Γ into the multiplicative group of C. In other words, χ(gh) = χ(g)χ(h) and χ(1) = 1. Note that there is a trivial character χ0 : χ0 (g) = 1 for all g ∈ Γ. Recall that g |Γ| = 1 for any g ∈ Γ. This means that for a character χ we have 1 = χ(1) = χ(g |Γ| ) = χ(g)|Γ| . This means that χ(g) is a root of unity of order |Γ|. Note that since χ(g) is a root of unity, we have χ−1 = χ. It turns out that there are exactly |Γ| characters for an abelian group and they form a group with the multiplication χ1 χ2 (g) := χ1 (g)χ2 (g) where χ0 is the identity element. It is trivial to check that χ1 χ2 is also a character and χ−1 is also a character. This group is called the dual group, and is denoted by Γ̂. It turns out that Γ̂ is isomorphic to Γ. Now we are ready to give the eigenvalues of the Cayley-graph G = Cay(Γ, S). Theorem 4.2. Let Γ be an abelian group with S ⊆ Γ such that g ∈ S if and only if g −1 ∈ S, and 1 ∈ / S. Then the eigenvalues of G = Cay(Γ, S) are the 23 following: for any character χ we have an eigenvalue ∑ λχ = χ(s) s∈S with eigenvector (χ(g))g∈Γ . These eigenvectors are pairwise orthogonal for the scalar product n ∑ ⟨x, y⟩ = xi yi . i=1 Since we have exactly |Γ| characters we have found all eigenvalues. Proof. Let us check that (χ(g))g∈Γ is indeed an eigenvector belonging to λχ = ∑ s∈S χ(s). Let g ∈ Γ then ∑ ∑ ∑ ∑ χ(u) = χ(gs) = χ(g)χ(s) = χ(g) χ(s) = λχ χ(g). u∈NG (g) s∈S s∈S s∈S Next we need to show that for χ1 ̸= χ2 then ∑ χ1 (g)χ2 (g) = 0. g∈Γ Note that χ1 χ2 = χ1 χ−1 2 is a non-identity character, so we only need to show that for a non-identity character χ we have ∑ χ(g) = 0. g∈Γ Let h ∈ Γ such that χ(h) ̸= 1. Such an h exists because χ is not the identity. Then ∑ ∑ ∑ χ(h) χ(g) = χ(hg) = χ(g). g∈Γ Since χ(h) ̸= 1 we have g∈Γ ∑ g∈Γ χ(g) = 0. g∈Γ Example 4.3. Let Γ = (Zn2 , +), we will use additive notation everywhere: the identity element is 0, and g −1 is denoted by −g. Observe that for any g we have −g = g, so we only need to require that 0 ∈ / S. Let S = {ei = (0, . . . , 0, 1, 0, . . . , 0) | 1 ≤ i ≤ n}, then G = Qn = Cay(Γ, S) will exactly be the n-dimensional cube. 24 Next let us determine the characters of Qn . Note that for every x = (x1 , . . . , xn ) we can define a character χx as follows ∑n χx (g) = (−1) i=1 xi gi , where g = (g1 , . . . , gn ). Note that in the above sum it doesn’t matter whether ∑ we count ni=1 xi gi in Z or Z2 . It is indeed a character: χx (g 1 + g 2 ) = χx (g 1 )χx (g 2 ). It is also trivial to see that χx = χy if and only if x = y. We can also see that characters form a group isomorphic to the original group: χx χy = χx+y , and the identity element χ0 = χ0 . Since we have found |Γ| characters, we have found all of them because of the pairwise orthogonality of the vectors (χx (g))g∈Γ . (In this case, we can even consider this vectors in R|Γ| .) Having determined the characters let us turn our attention to the eigenvalues of the Cayley-graph. Let n n ∑ ∑ ∑ λx = λχ x = χx (s) = χx (ei ) = (−1)xi . s∈S i=1 i=1 This means that( if) x contains k 1’s and n−k 0’s then λx = (n−k)−k = n−2k. Since there are nk such vectors x, the spectrum of the n-dimensional cube Qn n is {n − 2k ((k )) | 0 ≤ k ≤ n}. We could have obtained the same result if we used the solution of practice problem P2 of Problem set 1 with the additional observation that Qn = K2 K2 . . . K2 , and the fact that spectrum of K2 is {1, −1}. Recall that the solution of problem P2 asserts that if the eigenvalues of G are λ1 ≥ · · · ≥ λn and the eigenvalues of H are µ1 ≥ · · · ≥ µm then the eigenvalues of GH are λi + µj , where 1 ≤ i ≤ n, 1 ≤ j ≤ m. Note that for an S ⊆ Zn2 we can define the map ΦS as follows ∑ ΦS f (v) = f (v + s). s∈S This is called the (discrete or finite) Radon-transform of f (on the group Zn2 with respect to S). Hence we actually determined the spectrum of the Radontransform. Example 4.4. Let Γ = (Zn , +), we will use multiplicative notation everywhere: so if g is a generator of Zn then Zn = {1, g, g 2 , . . . , g n−1 }. (It might be a bit counter intuitive to use multiplicative notations, but when we will use characters, it will be a bit more convenient.) One particular Cayley-graph 25 is simply the n-th cycle: take S = {g, g −1 }, then Cn = Cay(Γ, S) is indeed simply the cycle on n vertices. Let’s determine the characters of Γ. Let χ be a character. Then 1 = χ(1) = χ(g n ) = χ(g)n . k So χ(g) is an n-th root of unity ζk = e2πi n . Then rk χk (g r ) = ζkr = e2πi n . One can see easily that χk is a character for every 0 ≤ k ≤ n. Again we see that they form a group isomorphic to the original group with identity element χ0 . The eigenvalues of Cn will be k k 2kπ λk = λχk = χk (g) + χk (g −1 ) = e2πi n + e−2πi n = 2 cos , n where k = 0, . . . , n − 1. Example 4.5. Let p be a prime of the form 4k + 1. We will again work with a cyclic group, namely Γ = (Zp , +), but this time it will be a bit more convenient to think about it as the additive group of the finite field Fp . Now we define the Paley-graph Pp : let (a, b) ∈ E(Fp ) if there exists a c ̸= 0 such that a−b = c2 . In other words, S consists of the quadratic residues. Of course, we would like to get a simple graph so we need that (a, b) ∈ E(Fp ) if and only if (b, a) ∈ E(Fp ) so b − a must be a perfect square too. That’s where we use that p is of the form 4k + 1: it is known that in this case −1 is a quadratic residue, i.e., there exists an i ∈ Fp such that i2 = −1. This means that if a − b = c2 then b − a = (ic)2 . Hence Paley-graph is a special Cayley-graph. We can see that its eigenvalues are ∑ 2πi c λk = e p, c:( pc )=1 where k = 0, . . . , p − 1. Note that it means that 1 + 2λk = p−1 ∑ e2πi kx2 p . x=0 The latter sum is well-known in number theory, it is called (quadratic) Gauss√ sum. It’s quite easy to prove that it has absolute value p, but it is much √ √ √ more tricky to determine whether it is p or − p. Actually, it is p if k is a √ quadratic residue and − p if it is a quadratic non-residue. But wait, we have √ −1± p only 3 eigenvalues then: (p − 1)/2 and 2 , is it a strongly regular graph? 26 Yeees! This will be one of the homework problems, and it will give a new proof √ to the fact that the absolute value of the Gauss-sum is p. One funny observation is that Pp is isomorphic to its complement Pp . Indeed, if n is a quadratic non-residue then the map fn (u) = nu gives an isomorphism between Pp and Pp since if a − b is a quadratic residue then na − nb = n(a − b) is a quadratic non-residue. What about non-abelian groups? Without proof we mention one result. If you did not learn representation theory of finite groups then you won’t understand the claim, but don’t worry about it. Theorem 4.6. Let Γ be a finite group and let S ⊆ Γ be a set which is a union of some conjugate classes of Γ. Then the eigenvalues of G = Cay(Γ, S) are 1 ∑ λχ = χ(s), χ(1) s∈S where ∑ χ is an irreducible character, the multiplicity of λχ is χ(1)2 . Since |Γ| = χ χ2 (1), where the sum runs over all irreducible characters, we have found all eigenvalues. 5. Laplacian eigenvalues and the matrix tree theorem In this section we study another matrix associated to a graph G, the socalled Laplacian matrix. The main goal of this section is to give a fast way to compute the number of spanning trees of a graph. Definition 5.1. Let G be a graph without loops. The Laplacian matrix L(G) of the graph G is defined as follows: the diagonal elements are L(G)ii = di , the degrees of the vertices, and if i ̸= j, then L(G)ij = −aij , where aij is the number of edges between vertices i and j. In other words, L(G) = D − A, where A is the adjacency matrix and D = diag(d1 , . . . , dn ). Let us start to study the eigenvalues of the Laplacian matrix. Note that this is also a real symmetric matrix, so all eigenvalues are real. Theorem 5.2. Let λ1 ≥ λ2 ≥ · · · ≥ λn be the eigenvalues of L(G). Then λn = 0. In other words, 0 is an eigenvalue of G and all eigenvalues are nonnegative. Proof. The first claim follows from the observation that the 1 is an eigenvector belonging to 0. To prove that all eigenvalues are non-negative, it is enough to 27 show that xT L(G)x ≥ 0 for all x. It is indeed true: T x L(G)x = n ∑ i=1 di x2i − 2 ∑ (i,j)∈E(G) xi xj = ∑ (xi − xj )2 ≥ 0. (i,j)∈E(G) It is also easy to determine the Laplacian eigenvalues of the complement of a simple graph G. Theorem 5.3. Let G be a simple graph with Laplacian eigenvalues λ1 ≥ λ2 ≥ · · · ≥ λn = 0. Then the Laplacian eigenvalues of G are the following: n − λ1 , . . . , n − λn−1 , 0. Proof. Note that L(G) + L(G) = nI − J. Let v 1 , . . . , v n be orthogonal eigenvectors of L(G) such that vn = 1, and L(G)v i = λi v i (we can choose them this way). Note that L(G)1 = 0 as before. If i < n, then vi is orthogonal to 1 and so we have L(G)v i = (nI − J − L(G))v i = nv i − 0 − λi v i = (n − λi )v i . Hence the Laplacian eigenvalues of G are the following: n − λ1 , . . . , n − λn−1 , 0. Corollary 5.4. (a) The Laplacian eigenvalues of the complete graph Kn are n(n−1) , 0. (b) The Laplacian eigenvalues of the complete bipartite graph Km,n are n + m, n(m−1) , m(n−1) , 0. Proof. (a) The empty graph on n vertices has eigenvalues 0(n) , so by the previous theorem, the eigenvalues of the complete graph are n(n−1) , 0. (b) The complement of the complete bipartite graph Km,n is Km ∪Kn . By part (a), the multiset of the Laplacian eigenvalues of Km ∪Kn is {m(m−1) , n(n−1) , 0(2) }. (It is easy to see that the multiset of the Laplacian eigenvalues of the union of two graphs is simply the union of the multisets of the Laplacian eigenvalues of the graphs.) Hence by applying the previous theorem, we get that the Laplacian eigenvalues of the complete bipartite graph Km,n are n+m, n(m−1) , m(n−1) , 0. Let τ (G) be the number of spanning trees of a graph G. The following theorem is the famous matrix tree theorem of Kirchhoff. Theorem 5.5. Let G be a graph without loops. Let L(G)i be the matrix obtained from L(G) by deleting the i-th row and column. Then det L(G)i = τ (G). 28 Proof. We begin with a simple observation, namely that for any edge e we have τ (G) = τ (G − e) + τ (G/e). Indeed, we can decompose the set of spanning trees according to that a spanning tree contains the edge e or not. If it does not contain the edge e, then it is also a spanning tree of G − e and vice versa. If it contains the edge e, then we can contract it, this way we obtain a spanning tree of G/e. This construction again works in the reversed way. Now we can prove the statement by induction on the number of edges. For the empty graph the statement is clearly true. We can assume that we erased the row and column corresponding to the vertex vn . We distinguish two cases according to that vn was an isolated vertex of G or not. Case 1. Assume that vn is an isolated vertex of G. Then τ (G) = 0. On the other hand, det(L(G)n ) = 0, because the vector 1 is an eigenvector of L(G)n belonging to 0. Hence, in this case, we are done. Case 2. Assume that vn is not an isolated vertex. We can assume that e = (vn−1 , vn ) ∈ E(G) (maybe there are more than one such edges since this is a multigraph). Let ln−1 be the (n − 1)-th row vector of L(G)n and let s = (0, 0, . . . , 0, 1) consisting of (n − 2) 0’s and a 1 entry. Now we consider the matrices An−1 and Bn−1 , where we exchange the last row of L(G)n to the vector ln−1 − s and s, respectively. Then det L(G)n = det An−1 + det Bn−1 . Observe that An−1 = L(G − e)n . Since G − e has less number of edges then G, we get that det An−1 = det L(G − e)n = τ (G − e) by induction. On the other hand, det Bn−1 = det An−2 , where An−2 = L(G){n−1,n} . Observe that An−2 is nothing else than L(G/e)n−1=n . Since G/e has less number of edges than G, we have det An−2 = det L(G/e)n−1=n = τ (G − e). Hence det L(G)n = τ (G − e) + τ (G/e) = τ (G). Corollary 5.6. The coefficient of x1 in L(G, x) is (−1)n−1 nτ (G). Furthermore, n−1 1∏ τ (G) = λi . n j=1 Proof. Let L(G, x) = xn − an−1 xn−1 + an−2 xn−2 − · · · + (−1)n−1 a1 x. Then by the Viéte’s formula we have a1 = λ2 λ3 . . . λn + λ1 λ3 . . . λn + · · · + λ1 λ2 . . . λn−1 . 29 Since λn = 0 we have a1 = λ1 λ2 . . . λn−1 . On the other hand, by expanding det(xI − L(G)) we see that the coefficient of x is n ∑ a1 = det(L(G)i ) = nτ (G), i=1 by Theorem 5.5. Hence τ (G) = n1 a1 = 1 n ∏n−1 i=1 λi . Corollary 5.7. (a) (Cayley’s theorem) The number of spanning trees of Kn is nn−2 , i. e., this is the number of labeled trees on n vertices. (b) The number of spanning trees of Km,n is mn−1 nm−1 . Proof. Both statements immediately follow from Corollary 5.6 and Corollary 5.4. Remark 5.8. Naturally, a formula like nn−2 cries for a combinatorial proof and indeed, there are many such proofs. The most well-known such proof is based on the so-called Prüfer code.