生成函数与多项式

普通生成函数与多项式 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}} \]

posted @ 2025-02-20 22:50  Luke_li  阅读(26)  评论(0)    收藏  举报