序列 a 的普通生成函数(Ordinary Generating Function,OGF)定义为形式幂级数:
F(x)=n∑anxn
换句话说,如果序列 a 有通项公式,那么它的普通生成函数的系数就是通项公式。
考虑两个序列 a,b 的普通生成函数,分别为 F(x),G(x)。那么有:
F(x)±G(x)=n∑(an±bn)xn
因此 F(x)±G(x) 是序列 ⟨an±bn⟩ 的普通生成函数。
考虑乘法运算,也就是卷积:
F(x)G(x)=n∑xni=0∑naibn−i
因此 F(x)G(x) 是序列 ⟨∑i=0naibn−i⟩ 的普通生成函数。
序列 a 的指数生成函数(Exponential Generating Function,EGF)定义为形式幂级数:
F^(x)=n∑ann!xn
相比普通生成函数多了 n! 的分母,因此指数生成函数适合刻画「有标号」组合对象的计数。
考虑两个序列 a,b 的指数生成函数,分别为 F^(x),G^(x)。那么有:
F^(x)±G^(x)=n∑(an±bn)n!xn
因此 F^(x)±G^(x) 是序列 ⟨an±bn⟩ 的指数生成函数。
考虑乘法运算:
F^(x)G^(x)=n∑n!xni=0∑n(in)aibn−i
因此 F^(x)G^(x) 是序列 ⟨∑i=0n(in)aibn−i⟩ 的指数生成函数。乘法中出现的二项式系数 (in) 恰对应有标号对象合并时的标号分配方案数。
求 n 个点的带标号简单连通无向图的个数,对 1004535809 取模。