生成函数与多项式
普通生成函数与多项式 Ordinary Generating Function and Polynomial
本段中所谓生成函数皆指普通生成函数。
本文中仍有诸多不详尽之处,未提及的内容可参考雪猫学长的博客。
简介 Introduction
生成函数是对于数列而言的。
一个数列 \(\{a_i\}\) 的生成函数是形如 \(\sum\limits_ia_ix^i\) 的一个多项式。可以说,数列的第 \(i\) 向对应着生成函数的 \(i\) 次项。
我们用小写字母表示数列,用大写字母表示其对应的生成函数。我们约定记号 \([x^k]A\) 表示多项式 \(A\) 的第 \(k\) 项。
基本运算 Basic Operations
生成函数(多项式)的基本运算有 加减法 和 乘法。和多项式运算完全一样,不多赘述了。注意多项式运算具有交换律和结合律。约定 \(A*B=C\) 表示生成函数 \(A\) 和 \(B\) 的乘积为 \(C\)
卷积是指 \(c_k=\sum\limits_{i,j}^{i+j=k}a_ib_j\)。一个很好的性质是:两个数列的生成函数相乘等价于两个数列进行卷积。这是显然的,参见多项式乘法的过程。
有用的结论 Useful Conclusions
前缀和的封闭形式
性质
给定数列 \(a\),它的前缀和数组 \(b\) 满足:\(B=\dfrac{A}{1-x}\)。
也就是说 \(\sum\limits_i^n[x^i]A=[x^n]\dfrac{A}{1-x}\)
证明
\[\text{令} F(x)=\sum\limits_ix^i
\]
\[F(x)x+1=F(x)
\]
\[F(x)=\dfrac{1}{1-x}
\]
消除组合数
组合数对多项式来说是很恶心的东西,但是我们可以换元并用二项式定理把它消除掉。
举个例子:
\[F(x)=\sum\limits_i\binom{i}{n}x^i
\]
\[F(x)=\sum\limits_i[y^n](x+xy)^i
\]
\[F(x)=[y^n]\dfrac{1}{1-x-xy}
\]
\[F(x)=\dfrac{x^n}{(1-x)^{n+1}}
\]

浙公网安备 33010602011771号