基尔霍夫矩阵树定理

神奇关联矩阵

设图 G(V,E)G(V,E) 含有 nn 个点、mm 个边. 当 mn1m \ne n-1GG 肯定不是一棵树, 仅考虑 m=n1m = n-1 的情况.

定义一个 n×mn \times m 的矩阵 EE

Eij={1vi 是 ej 一端1vi 是 ej 另一端0otherwiseE_{ij} = \begin{cases} 1 &v_i \: \text{ 是 }\: e_j \: \text{ 一端} \\ -1 &v_i \: \text{ 是 }\: e_j \: \text{ 另一端} \\ 0 & \text{otherwise} \end{cases}

上述表示可能有点晕,简单来说,就是一个 nnmm 列的矩阵, 对于树中第 kk 个边 (vi,vj)(v_i, v_j), 使第 kk 列中第 ii 行和第 jj 行其中一个为 11, 另一个为 1-1; 其他所有行赋值为 00. 而哪个是 11 哪个是 1-1 是无所谓的. 详情请见这个博客.

删去 EE 的第一行得到矩阵 EE'. 那么

E2={1G 是一棵树0G 不是一棵树(含有环)|E'|^2 = \begin{cases} 1 & G\: \text{ 是一棵树} \\ 0 & G\: \text{ 不是一棵树(含有环)} \end{cases}

记图 GG 的神奇关联矩阵为 E(G)E(G),图 GG 的生成树的个数可以表示为

GGV=n1E(G)2\sum_{G' \subseteq G\:\text{且}\:|V'|=n-1 } { |E'(G')|^2 }

基尔霍夫定理

定义图 GG 的拉普拉斯矩阵 LL 为其度数矩阵(对角线为每个点的度数)减去邻接矩阵,即

Lij={deg(vi)if i=j1if ijand(vi,vj)E0otherwiseL_{ij} = \begin{cases} \deg{(v_i)} & \text{if }\: i = j\\ -1 & \text{if }\: i \ne j\:\text{and}\:(v_i,v_j) \in E \\ 0 & \text{otherwise} \end{cases}

设矩阵 LL'LL 矩阵去掉第 ii 行、第 ii 列的矩阵, 其中 1in1 \le i \le n 并且可以随意选择.

那么图 GG 的生成树个数为

t(G)=L=1nλ1λ2λn1t(G) = |L'| = \frac{1}{n}{\lambda_1}{\lambda_2}\cdots{\lambda_{n-1}}

其中 λ1,λ2,,λn1{\lambda_1},{\lambda_2},\dots,{\lambda_{n-1}} 是矩阵 LL 的非负特征值.

Last Updated: 10/25/2018, 3:11:22 AM