跳到正文
格致开物MATHWIKI

指数生成函数

内容维护:格致开物 · 编写与核验 · 修订记录 · 纠错

指数生成函数(exponential generating function)把数列 (an)n≥0 编码为 ∑n≥0anxn/n!。阶乘使乘法自然对应“先分配不同标签,再分别构造”的计数。因此它常用于带标签组合对象;名称并不表示所有这类函数都是某个简单指数函数。

例如,把 n 个有不同编号的物品分成红、蓝两类,允许一类为空。若恰有 k 个红物品,先从 n 个标签中选出这 k 个,有 (nk) 种,总数为 ∑k(nk)=2n。红类和蓝类各自只有一种“无额外结构的集合”,它们的指数生成函数都是 ex,相乘得到 e2x,其 xn/n! 系数恰为 2n。

系数与乘法规则

在实数或有理数系数的形式幂级数中,定义 A(x)=∑n≥0anxnn!,an=n![xn]A(x). 符号 [xn] 取普通幂次系数,所以不能漏乘 n!。形式级数只要求逐项代数有意义,不先要求解析收敛。[1]

若 C(x)=A(x)B(x),展开并收集总次数 n: [xn]C(x)=∑k=0nakbn−kk!(n−k)!,cn=∑k=0n(nk)akbn−k. 这是完整的乘法公式。组合解释中先选哪 k 个标签用于第一结构,再在两份标签上分别选结构;两个部分角色有先后区别,因此没有再除二。若把两个无序同类部分当作有序乘积,就会重复计数,必须另外处理交换对称性。

普通生成函数的乘积只有 ∑kakbn−k,它没有自动提供标签分配的二项式系数。这正是开头红蓝问题用指数形式的原因。

单点与配对构成的排列

考虑只由不动点和互换对组成的排列,即作用两次回到原位的排列。设 an 为 n 个不同标签上的这种排列数。若有 j 个互换对,先选出 2j 个标签,再把它们分成无序对。将这 2j 个标签排成一列共有 (2j)! 种;每对内部交换会重复 2j 次,各对换序又重复 j! 次,故 an=∑j=0⌊n/2⌋n!(n−2j)!2jj!. 除以 n! 后对 n 求和,令 r=n−2j,得到 A(x)=(∑r≥0xrr!)(∑j≥0(x2/2)jj!)=exp⁡(x+x2/2). 对每个固定次数,只涉及有限个 (r,j),所以形式级数重组合法,不需要交换无穷数值积分或极限。

当 n=4,零、一、二个配对分别贡献 1,6,3,总数十。例如二对情形为 12|34,13|24,14|23。直接展开 exex2/2,x4 系数为 1/24+1/4+1/8=10/24,乘 4! 回得十,而不是 10/24 个对象。

变式。 五个标签时,有零、一、二个配对,贡献 1,(52)=10,(54)⋅3=15,故 a5=26。也可指定标签一:它若不动,余下有 a4 种;若与某个其他标签互换,有四种伙伴和 a3=4 种余下结构,所以 a5=a4+4a3=10+16=26。两个独立计数互相核对。

微分与收敛范围

形式微分给出 A′(x)=∑n≥0an+1xn/n!;乘以 x 则对应新数列 nan−1,与普通生成函数的移位系数不同。配对例中 A′=(1+x)A,比较系数得 an+1=an+nan−1,与指定一个标签的分类计数一致。

阶乘分母不保证解析收敛。例如 an=(n!)2 时,指数生成函数的项为 n!xn,对任意 x≠0,相邻项绝对值之比为 (n+1)|x|,项不趋零,收敛半径为零。但它仍是合法形式幂级数。需要把变量代入数值、求解析导数或作渐近分析时,须另查收敛条件;纯粹系数运算与数值函数评价是两种使用方式。

参考资料

  1. ↑ Wai Yan Pong,California State University, Dominguez Hills:Exponential Generating Functions,“Sum and Product”及带标签结构的乘积解释。访问日期:2026-10-25。