Cayley 公式的另一种证明
Cayley 公式的一些广为人知的证法:
- Prufer 序列
- Matrix-Tree 定理
然而我都不会 233,所以下面说一个生成函数角度的证法 .
我们知道 \(n\) 个节点的有标号无根树有 \(n^{n-2}\) 种,即 Cayley 公式 .
具体数学的做法是考虑递推完全图生成树个数,然后推出 EGF 的关系 .
那个递推太牛逼了,我就不这么干了,先令 \(g_n\) 表示 \(n\) 个节点的有标号有根树个数(\(g_0=0\)),且其 EGF 为 \(G(z)\) .
钦定一个根,它每一个儿子的 EGF 都与它相同, 就是 \(G(z)\) . 那么它的生成函数就是它儿子生成函数的一个组合, 即 \(\mathrm e^{G(z)}\) . 然后考虑根本身的影响,有
\]
即 \(G(z)\mathrm e^{-G(z)}=z\) .
现在只需要解出 \(G\) 来然后提取系数即可 .
方法 1
Lagrange 反演
若 \(F,G\) 互为复合逆(即 \(F(G(z))=G(F(z))=z\)),且 \(F,G\) 常系数为 \(0\),\(1\) 次项非 \(0\),则有
\[[z^n]G(z)=\dfrac1n[z^{-1}]F(z)^{-n}
\]
令 \(F(z)=z\mathrm e^{-z}\),那么易见 \(F,G\) 互为复合逆,于是 Lagrange 反演一下,得到
\]
于是有标号有根树个数为 \(n^{n-1}\),于是有标号无根树个数就是 \(n^{n-2}\),Cayley 公式得证 .
方法 2(不确保正确性,要是错了轻 D)
考虑广义指数函数 \(\mathcal E_t(z)\) 定义为
\]
广义指数函数有一个性质叫
\]
令 \(\mathcal D(z)=\ln\mathcal E_t(z)\),则上式可以化为
\]
移项得
\]
取 \(t=1\) 就得到所需 EGF \(G\) .
于是 \(G(z)=\ln\mathcal E_1(z)\) .
然后 EGF \(\ln\) 其实相当于一个平移,所以就可以根据定义提取系数 \([z^n]G(z)=n^{n-1}\) .
同样,这表明有标号有根树个数为 \(n^{n-1}\),于是有标号无根树个数就是 \(n^{n-2}\),Cayley 公式又得证 .
UPD. 具体数学写法好像和我不太一样,我也知道 EGF 的微积分事实上是平移,然而这个做法看起来哪都对(
Cayley 公式的另一种证明的更多相关文章
- 树的计数 Prufer序列+Cayley公式
先安利一发.让我秒懂.. 第一次讲这个是在寒假...然而当时秦神太巨了导致我这个蒟蒻自闭+颓废...早就忘了这个东西了... 结果今天老师留的题中有两道这种的:Luogu P4981 P4430 然后 ...
- 树的计数 + prufer序列与Cayley公式(转载)
原文出处:https://www.cnblogs.com/dirge/p/5503289.html 树的计数 + prufer序列与Cayley公式 学习笔记(转载) 首先是 Martrix67 的博 ...
- 树的计数 Prüfer编码与Cayley公式 学习笔记
最近学习了Prüfer编码与Cayley公式,这两个强力的工具一般用于解决树的计数问题.现在博主只能学到浅层的内容,只会用不会证明. 推荐博客:https://blog.csdn.net/moreja ...
- P4981 父子 Cayley公式
CayleyCayley公式的定义是这样的,对于n个不同的节点,能够组成的无根树(原来是无向连通图或者是有标志节点的树)的种数是n^(n-2)种.(这里让大家好理解一点,就写成了无根树,其实应该是一样 ...
- 树的计数 + prufer序列与Cayley公式 学习笔记
首先是 Martrix67 的博文:http://www.matrix67.com/blog/archives/682 然后是morejarphone同学的博文:http://blog.csdn.ne ...
- Ceva定理的四种证明方法
${\color{Teal} {Ceva定理}}$设$D.E.F$依次为三角形ABC的边$AB.BC.CA$的内点,记 $λ$=(A,B,D),$μ$=(B,C,E),$v$=(C,A,F) 求证:三 ...
- Dijkstra算法的另一种证明
按:今天看Tanenbaum的计算机网络时讲到了Dijkstra算法.关于算法的正确性,<算法导论>给出了严格的证明.CLRS的证明基于一个通用的框架,非常清晰.今天只是随意想想是否有其他 ...
- [Bilingual] Different proofs of Jordan cardinal form (Jordan标准型的几种证明)
- 【数据结构与算法分析——C语言描述】第一章总结 引论
这一章主要复习了一些数学知识,像指数.对数.模运算.级数公式:还有2种证明方法,归纳假设法和反证法.所幸以前学过,重新拾捡起来也比较轻松. 简要地复习了递归,提出了编写递归例程的四条基本法则: 基准情 ...
随机推荐
- CSAPP 之 BombLab 详解
前言 本篇博客将会展示 CSAPP 之 BombLab 的拆弹过程,粉碎 Dr.Evil 的邪恶阴谋.Dr.Evil 的替身,杀手皇后,总共设置了 6 个炸弹,每个炸弹对应一串字符串,如果字符串错误, ...
- 流量治理神器-Sentinel 究竟是怎么做到让业务方接入简单?
大家好,我是架构摆渡人,这是流量治理系列的第10篇原创文章,如果有收获,还请分享给更多的朋友. 做业务开发,需要考虑业务的扩展性.做基础框架开发,需要考虑如何让业务方接入,使用简单,尽量不要耦合在业务 ...
- 从URL输入到页面展现到底发生什么?DNS 解析&TCP 连接
DNS 解析:将域名解析成 IP 地址 TCP 连接:TCP 三次握手 发送 HTTP 请求 服务器处理请求并返回 HTTP 报文 浏览器解析渲染页面 断开连接:TCP 四次挥手 一.什么是URL? ...
- python闭包函数与装饰器
目录 闭包函数 闭包概念 实际应用 装饰器 简介 简单版本装饰器 进阶版本装饰器 完整版本装饰器 装饰器模板 装饰器语法糖 装饰器修复技术 问题 答案 闭包函数 闭包概念 闭:定义在函数内部的函数 包 ...
- MySql笔记Ⅱ
MySql笔记2: part3:(table相关的操作) 数据的增删改 create table t1( id int primary key auto_increment, username cha ...
- freeswitch使用mod_shout模块播放mp3
概述 freeswitch 在对VOIP语音通话中,可以通过playback命令播放IVR语音文件. 默认情况下,freeswitch支持wav文件,也可以直接播放VOIP中常见编解码的G711文件. ...
- Flink使用Pod Template将状态快照(Checkpoint、Savepoint)存储在NFS
背景 Flink 版本 1.13.3,使用 native k8s 部署模式,原采用 HDFS 作为状态快照(Checkpoint.Savepoint)的存储地址,但是由于仅使用了其 HDFS 作为状态 ...
- KALI2020忘记用户名和密码
时隔半年,打开kali发现忘记了自己精心研制的用户名密码......... 第一步 在开机的时候就按e键进入如下界面 第二步 用键盘上的上下箭头↑↓进行屏幕滚动,滑到最后一行发现修改目标 倒数第四行: ...
- 【Java面试】Mysql为什么使用B+Tree作为索引结构
一个工作8年的粉丝私信了我一个问题. 他说这个问题是去阿里面试的时候被问到的,自己查了很多资料也没搞明白,希望我帮他解答. 问题是: "Mysql为什么使用B+Tree作为索引结构" ...
- 不忍了,快速下载Visual Studio Code
更新记录 本文迁移自Panda666原博客,原发布时间:2021年5月2日. 奇怪的原因 因为一些众所周知的原因,在国内下载Visual Studio Code的速度比较慢,所以我们需要一些方法来加快 ...