BEST 定理与矩阵树定理的证明
BEST 定理:计算有向图的欧拉回路数量
欧拉图 \(G\) 的欧拉回路个数为 \(T_s(G)\prod(out_i-1)!\),其中 \(T_s(G)\) 代表以 \(s\) 为根的内向树个数,\(out_i\) 代表点 \(i\) 的出度。同时由此可见,对于一个欧拉图,其任意一个点为根的内向树个数相同。
证明:
除去点 \(s\),考虑其它点在欧拉回路上的最后一条出边 \(e\),它们一定形成一棵以 \(s\) 为根的内向树,因为如果有环,那么显然与所有边都最后一次出现矛盾。然后将所有点其余的出边按随意顺序排列,方案数为 \(out_s!\prod\limits_{i\neq s}(out_i-1)!\),发现每种排法可以唯一对应一种欧拉回路,每种欧拉回路也能唯一找到一棵这样的生成树。但是注意这样的排法中每 \(out_s\) 条路径是循环同构的,要除掉,于是答案即为 \(T_s(G)\prod(out_i-1)!\)。
矩阵树定理的证明
这里只写有向图内向树的证明,其余两者类似。
写一下式子:\(\sum\limits_{p}(-1)^{\tau(p)}\sum\limits a_{i,p_i}\)。
考虑组合意义:对于一个排列 \(p\),如果 \(i\neq p_i\),那么视为选择了一条 \(i\rightarrow p_i\) 的一条一类边,系数为 \(-1\);否则视为选择了任意一条 \(i\rightarrow j\) 的边,系数为 \(1\)(由于有 \(deg_i\) 种方案所以符合式子)。
可以发现所有 \(-1\) 边形成若干个环,所有 \(1\) 边形成若干个环和一棵以 \(1\) 为根的内向树。
我们不希望图中能存在环,于是考虑将某个 \(-1\) 环的贡献和对应的 \(1\) 环的贡献抵消掉。设其环长为 \(l\),则给它一个 \((-1)^{(l-1)}\) 的系数,发现就能顺利抵消了。
于是我们只需要证明:所有非自环的 \((l-1)\) 之和的奇偶性与 \(\tau(p)\) 的奇偶性相同。
注意对于一个环,交换任意两个元素后变成两个环,\(\sum(l-1)\) 减少 \(1\);对于排列,交换任意两个数后逆序对的奇偶性改变。
于是可以一直交换,直到最后变成环都是自环,排列为 \(1\sim n\),得证。