天天看点

生成函数

定义

序列\(a\)的普通生成函数\((OGF)\),定义为形式幂级数:

\[F(x)=\sum_{n}a_nx^n

\]

\(a\)既可以是有穷序列,也可以是无穷序列,常见例子:

\(1.\)序列\(a=<1,2,3>\)的\(OGF\)是\(1+2x+3x^2\)

\(2.\)序列\(a=<1,1,1,…>\)的\(OGF\)是\(\sum_{n\geq 0}x^n\)

\(3.\)序列\(a=<1,2,4,…>\)的\(OGF\)是\(\sum_{n\geq 0}2^nx^n\)

\(4.\)序列\(a=<1,3,5,…>\)的\(OGF\)是\(\sum_{n\geq 0}(2n+1)x^n\)

如果序列\(a\)有通项公式,那么它的\(OGF\)的系数就是通项公式

基本运算

考虑两个序列\(a\)和\(b\)的\(OGF\),分别是\(F(x)\)和\(G(x)\),那么有

\[F(x)±G(x)=\sum_{n}(a_n±b_n)x^n

因为\(F(x)±G(x)\)是序列\(<a_n±b_n>\)的\(OGF\)

考虑乘法运算,即卷积

\[F(x)*G(x)=\sum_{n}x^n\sum_{i=0}^n a_ib_{n-i}

因为\(F(x)*G(x)\)是序列\(<\sum_{i=0}^n a_ib_{n-i}>\)的\(OGF\)

封闭形式

形式幂级数形式不好表示,考虑转化为封闭形式

\(a=<1,1,1,…>\)的\(OGF \ F(x)=\sum_{n\geq 0}x^n\)可以列出

\[F(x)=1+x+x^2+…\\

xF(x)=x+x^2+x^3+…\\

xF(x)+1=F(x)\\

F(x)=\frac{1}{1-x}

这就是\(\sum_{n\geq 0}x^n\)的封闭形式

考虑等比数列\(<1,p,p^2,p^3,…>\)的普通生成函数\(G(x)=\sum_{n\geq 0}p^nx^n\),有

\[G(x)px+1=G(x)\\

G(x)=\frac{1}{1-px}

例题

\(1.a=<0,1,1,1,…>\)

\[xF(x)+x=F(x)\\

F(x)=\frac{x}{1-x}\\

\(2.a=<1,0,1,0,1,…>\)

\[x^2F(x)+1=F(x)\\

F(x)=\frac{1}{1-x^2}

\(3.a=<1,2,3,4,…>\)

\[F(x)=\sum_{n\geq 0}(n+1)x^n\\

令n=n+1\\

F(x)=\sum_{n\geq 1}nx^{n-1}\\

=\sum_{n\geq 0}(x^n)'\\

=(\frac{1}{1-x})'\\

=\frac{1}{(1-x)^2}

\(4.a_n=\dbinom{m}{n}\)

\[F(x)=\sum_{n}\dbinom{m}{n}x^n1^{m-n}\\

=(1+x)^m

\(5.a_n=\dbinom{n+m}{n}\)

\[m=0时,F(x)=\frac{1}{1-x}\\

m>0时\\

\frac{1}{(1-x)^{m+1}}=\frac{1}{(1-x)^m}\frac{1}{1-x}\\

=(\sum_{n\geq 0}\dbinom{m-n+1}{n})(\sum_{n\geq 0}x^n)\\

=\sum_{n\geq 0}(\sum_{i=0}^{n}\dbinom{m-1+i}{i}x^i*1^{n-i}x^{n-i})\\

=\sum_{n\geq 0}\dbinom{n+m}{n}x^n\\

斐波那契数列生成函数

继续阅读