生成函数

转载请注明

目录

转载请注明

1.前言

2.必要知识

2.1形式幂级数

2.1.1概念

2.1.2特点

2.1.3运算

2.1.4关于形式幂级数的(群的)逆元和单位元

2.2齐次方程与非齐次方程

2.2.1概念

2.2.2举例

3.生成函数

3.1普通型母函数

3.1.1定义

3.1.2常见普通型母函数

3.1.3定理一

3.1.4例子

3.2指数型母函数

3.2.1定义

3.2.2常见指数型母函数

3.2.3定理二

3.2.4例子

4.由递推关系求通项公式的几个方法

4.1递推关系的定义

4.2求解方法

4.2.1迭代法

4.2.2母函数法

4.2.3特征根法

5.参考文献


1.前言

本文主要讨论两类生成函数(普通型母函数和指数型母函数),除此之外,还研究了通过数列递推式导出数列通项公式的方法。

 

2.必要知识

 

2.1形式幂级数

2.1.1概念

设一个数列(序列)  为  f(n),

则 f(n)   的形式幂级数是 A(x) = \sum_{n=0}^{\infty} f(n) \cdot x^n  

 

2.1.2特点

形式幂级数有以下两个特点:

2.1.2.1特点一

形式幂级数不关心 x 的值

2.1.2.2特点二

形式幂级数不关心收敛和发散,即对 A(x) 的收敛和发散不做要求

 

2.1.3运算

形式幂级数的运算是在把  A(x)   在 n \rightarrow \infty  时看作收敛的情况的基础上进行的的。

形式幂级数的运算主要有以下三种,在此之前,我们先使用一些初始设定:

设  a(n),b(n)  是两个关于n 的数列(序列),

a(n) 的形式幂级数是  A(x) = \sum_{n=0}^{\infty} a(n) \cdot x^n

设 b(n)  的形式幂级数是  B(x) = \sum_{n=0}^{\infty} b(n) \cdot x^n

 

2.1.3.1相等运算

若  \forall x>0, \ a(n) = b(n)  , 那么  A(x) =B(x)

 

2.1.3.2相加运算

A(x)+B(x) = \sum_{n=0}^{\infty} (a(n)+b(n)) \cdot x^n

除此之外,还满足交换律和结合律

 

2.1.3.3相乘运算

A(x) \cdot B(x) = \sum_{n=0}^{\infty}c(n)\cdot x^n

其中,c(n)=\sum_{k=0}^{n}a_k \cdot b_{n-k}(对加法也满足分配律)

c(n) 是序列  a(n)  和  b(n)  的柯西乘积

 

2.1.4关于形式幂级数的(群的)逆元和单位元

 

2.1.4.1单位元

形式幂级数的单位元是1(数字)

 

2.1.4.2逆元

一、概念

设 A(x) = \sum_{n=0}^{\infty}a(n)\cdot x^n

若存在 B(x) = \sum_{n=0}^{\infty}b(n)\cdot x^n,满足A(x) \cdot B(x),

则 B(x)  是 A(x)  关于 1 的逆元

二、逆元的充要条件

A(x)  有逆元的充要条件是 a(0) \neq 0

三、逆元的唯一性

若  A(x)  有逆元,则逆元唯一,即 B(x) 是唯一的

 

2.2齐次方程与非齐次方程

2.2.1概念

设方程 a_1x_1^{k_1}+a_2x_2^{k_2}+...+a_nx_n^{k_n}=f(n)   (1)

则 (1) 为齐次方程的充要条件是:

条件一:k_1=k_2=...=k_n

条件二:f(n)=0

2.2.2举例

对某个 n 元一次常系数方程:a_1x_1+a_2x_2+...+a_nx_n=f(n)     (*)

一、齐次方程

若 (*) 中 f(n)=0 ,那么 (*) 是齐次方程

二、非齐次方程

若 (*) 中 f(n) \neq 0, 那么 (*) 是非齐次方程

 

 

3.生成函数

生成函数也叫做母函数,它是一个数列(序列)的一种形式幂级数。其中,每一项的系数分别代表着组合方法数(针对这一项的次数)。母函数主要分为两类:普通型母函数和指数型母函数。

 

3.1普通型母函数

普通型母函数是针对组合问题而言的 

3.1.1定义

有两种类型的普通型母函数:

一、单下标序列的母函数

对序列 a(n) ,有普通型母函数 A(x)= \sum_{n=0}^{\infty} a(n) \cdot x^n 。

二、双下标序列的母函数(可以引申至更多)

对序列 a(n,m) ,有普通型母函数 A(x_1,x_2)= \sum_{n=0}^{\infty} a(n,m) \cdot x_1^{n} \cdot x_2^{m}

3.1.2常见普通型母函数

3.1.2.1 对序列 a(n,m) = \binom{n}{m},m \in [0,n]( n 固定),

有普通型母函数 A(x)= \sum_{k=0}^{n} \binom{n}{k} \cdot x^k = (1+x)^n

 

3.1.2.2 对序列 F(n) = \frac{1}{\sqrt 5} \cdot ((\frac{1+\sqrt 5}{2})^n-(\frac{1-\sqrt 5}{2})^n),   即斐波那契数列,

有普通型母函数  A(x) = \sum_{n=0}^{\infty}F(n) \cdot x^n = \frac{1}{1-x-x^2}

 

3.1.2.3 对序列 a(n)=1 

有普通型母函数  A(x)= \sum_{n=0}^{\infty} a(n) \cdot x^n = \frac{1}{1-x}

 

3.1.2.4 对序列 a(n)=n,

有普通型母函数  A(x)= \sum_{n=0}^{\infty} a(n) \cdot x^n = \frac{1}{(1-x)^2}

 

3.1.2.5 对序列  a(n,m)=\begin{cases} 1 & \text{ if } n=1 \\ \frac{m \cdot (m+1)\cdot (m+2)\cdot ... \cdot (n-2)}{(n-1)!} & \text{ if } n>1 \end{cases}  (m 固定)

有普通型母函数 A(x) = \sum_{n=0}^{\infty} a(n,m) \cdot x^n = \frac{1}{(1-x)^m}

3.1.3定理一

设从 n 元集合 S ={a_1,a_2...a_n} 中取 k 个元素的组合叫做 b_k, 限定元素 a_i 出现的次数是 M_i (1\leqslant i\leqslant n)

那么 b_k 的组合数序列的普通型母函数是     \prod_{i=1}^{n}(\sum_{m \in M_i} x_m)

3.1.4例子

有重量为1,3,5(克)的砝码个两个,问:

(1)可以称出多少种不同重量的物品?

(2)若要称出重量为7克的物品,所使用的法码有多少种本质不同的情况?

解:

第一问:

根据定理一,设(普通型)生成函数 G(x)=(1+x+x^2)(1+x^3+x^6)(1+x^5+x^{10})      (2)

其中,1 表示不用重量为 1 克的砝码, x 表示使用 1 个重量为 1 克的砝码,x^2 表示使用两个重量为 1 克的砝码....以此类推

(2)  展开为  G(x)=1+x+x^2+x^3+x^4+2x^5+2x^6+2x^7+...+x^{18} ,

因此,可以称出 19 种不同重量的物品

第二问:

由第一问的展开式可知答案为 2

 

3.2指数型母函数

指数型母函数是针对多重元素的排列问题而言的

3.2.1定义

对序列 a(n),有指数型母函数 A(x)=\sum_{n=0}^{\infty} a(n) \cdot \frac{x^n}{n!}

对于多下标同理

3.2.2常见指数型母函数

3.2.2.1 对序列 a(n)=1

有指数型母函数 A(x)=\sum_{n=0}^{\infty} \frac{x^n}{n!} = e^x

 

3.2.2.2 对序列 a(n)=p^n

有指数型母函数 A(x) = \sum_{n=0}^{\infty}p^n\cdot\frac{x^n}{n!}=e^{px}


 3.2.2.3 对序列  a(n)=\begin{cases} 1 & \text{ if } x=0,2,4.. \\ 0 & \text{ if } x=1,3,5.. \end{cases}

有指数型母函数 A(x)=\sum_{n=0}^{\infty}\frac{x^n}{n!}[n\%2=0]=1+\frac{x^2}{2!}+\frac{x^4}{4!}+...=\frac{e^x+e^{-x}}{2}

 

3.2.2.4 对序列  a(n)=\begin{cases} 1 & \text{ if } x=1,3,5.. \\ 0 & \text{ if } x=0,2,4.. \end{cases}

有指数型母函数 A(x)=\sum_{n=0}^{\infty}\frac{x^n}{n!}[n\%2=1]=1+\frac{x^3}{3!}+\frac{x^5}{5!}+...=\frac{e^x-e^{-x}}{2}

3.2.3定理二

从多重集合 M=\{ \infty \cdot a_1,\infty \cdot a_2,...\infty \cdot a_n\} 中选择 k 个元素的排列中,若限定元素 a_i 的出现次数集合为 M_i (1\leqslant i\leqslant n), 在该组合数的指数型母函数是     \prod_{i=1}^{n}(\sum_{m \in M_i}\frac{x^m}{m!}) 

3.2.4例子

由  1,2,3,4  这四个数字能构成多少个五位数?并且要求五位数中 1 出现两次或三次, 2 最多出现一次,4 出现偶数次。

解:

1 出现两次或三次,对应的母函数是: \frac{x^2}{2!} + \frac{x^3}{3!}

2 最多出现一次,对应的母函数是:1+\frac{x}{1!}

3 出现的次数不做要求,对应的母函数是:1+\frac{x}{1!}+\frac{x^2}{2!}+\frac{x^3}{3!}+\frac{x^4}{4!}+\frac{x^5}{5!}+...=e^x

4 出现偶数次,对应的母函数是:1+\frac{x^2}{2!}+\frac{x^4}{4!}+...=\frac{e^x+e^{-x}}{2}

设五位数的组合数的指数型母函数是 G(x)

则 G(x) = (\frac{x^2}{2!}+\frac{x^3}{3!})(1+\frac{x}{1!})(1+\frac{x}{1!}+\frac{x^2}{2!}+\frac{x^3}{3!}+\frac{x^4}{4!}+\frac{x^5}{5!}+...)(1+\frac{x^2}{2!}+\frac{x^4}{4!}+..)

\Rightarrow \frac{1}{2}(\frac{1}{6}x^2(3+4x+x^2))\cdot e^x\cdot (e^x+e^{-x})

\Rightarrow \frac{1}{12} \cdot 5! \cdot (3 \cdot \frac{2^3}{3!}+4\cdot \frac{2^2}{2!}+1\cdot \frac{2^1}{1!})

\Rightarrow 140

 

4.由递推关系求通项公式的几个方法

4.1递推关系的定义

递推关系由递推方程和初始条件构成

其中,递推方程是形如 a(n)=a(n-1)+a(n-2) ,即由数列的相邻项或者间隔项构成的方程

初始条件是形如:a_0=0,a_1=1..

4.2求解方法

4.2.1迭代法

\begin{cases} a_n=2a_{n-1}+1 \\ a_1=1 \end{cases},求 a_n ?

a_n=2_{n-1}+1=2(a_{n-2}+1)+1=2(...)+1=2^n-1

 

4.2.2母函数法

\begin{cases} a_n=2a_{n-1}+1 \\ a_1=1 \end{cases},求 a_n ?

\because a_1=2(a_0+1)

\therefore a_0=0

设 f(x)=\sum_{n=0}^{\infty}a_nx^n

f(x)=\sum_{n=1}^{\infty}(2a_{n-1}+1)x^n=2\sum_{n=1}^{\infty}a_{n-1}x^n+\sum_{n=1}^{\infty}x^n

\Rightarrow 2x\sum_{n=0}^{\infty}a_nx^n+\sum_{n=1}^{\infty}x^n

\Rightarrow 2xf(x)+\frac{x}{1-x} 

\Rightarrow f(x)=\frac{x}{(x-1)(x-2)}=\frac{1}{1-2x}-\frac{1}{1-x}=\sum_{n=0}^{\infty}(2x)^n-\sum_{n=0}^{\infty}x^n

\Rightarrow f(x)=\sum_{n=0}^{\infty}(2^n-1)x^n

\therefore a(n)=2^n-1

 

4.2.3特征根法

一、介绍一些概念

概念一:若 \{ a_n \} 满足 a_n+b_1a_{n-1}+b_2a_{n-2}+...+b_ka_{n-k}=f(n)  (*)

\{b_n \} 为常数,且 b_k \neq 0f(n) 为已知函数

则 \{ a_n \} 为 k 阶常系数线性递推关系

 

概念二:若 f(n)=0 , 则 \{ a_n \} 为 k 阶常系数齐次递推关系

 

概念三(*) 的特征方程是:x^k+b1x^{k-1}+b2x^{k-2}+...+b_{k-1}x+b_k=0

 

二、分具体情况的不同解法

1.齐次常系数线性递推关系解法

情况一:

(*) 有 k 个相异实根,设这 k 个实根的集合为 solution=\{x_1,x_2..x_k \}

则递推关系的通解(通项公式)为:a_n=c_1x_1^n+c_2x_2^n+...+c_kx_k^n

其中,\{c_n \} 为常数集

若给出了 k 个初始条件,则 \{c_n \} 唯一,进而得到 a_n 的唯一表达式

-------------------------------------------------------------------------------------------------------------------------------------------------------------------------

例子:

\begin{cases} F_n=F_{n-1}+F_{n-2} & \\ F_1=1,F_0=1 & \end{cases}

解:

特征方程是 x^2 -x-1=0,得到 两个相异实根:x_1=\frac{1+\sqrt5}{2},x_2=\frac{1-\sqrt5}{2}

\therefore F_n=c1(\frac{1+\sqrt5}{2})^n+c2(\frac{1-\sqrt5}{2})^n

将初始条件带入,得到:c_1=\frac{1}{\sqrt 5},c_2=-\frac{1}{\sqrt 5}

\therefore F_n=\frac{1}{\sqrt 5}(\frac{1+\sqrt 5}{2})^n-\frac{1}{\sqrt 5}(\frac{1-\sqrt 5}{2})^n

 

情况二:

(*) 出现一对共轭复根:x_1=a+bi,x_2=a-bi

则通解为(通项公式)为:a_n=c1 \cdot \rho^n \cdot cos\ n\theta+c_2 \cdot \rho ^n\cdot sin \ n \theta+c_3x_3^n+..+c_kx_k^n

其中,\rho = \sqrt{ a^2+b^2}\theta = arctan \ \frac{b}{a}   (复数的模长和角),\{c_n \} 为常数集

若给出一组 k 个初始解,那么 \{c_n \} 唯一,进而得到 a_n 的唯一表达式

-------------------------------------------------------------------------------------------------------------------------------------------------------------------------

例子:

d_n=\begin{bmatrix} 1 & 1 & 0 &0 .& .& . &. & . & 0 & \\ 1& 1& 1& & & & & & 0& \\ 0& 1 & 1& 1& & & & & 0& \\ .& & 1& 1 & 1 & & & & .& \\ .& & & & & .& & & . & \\ .& & & & & & 1 & 1 & 1 & \\ 0& & . & .& & & & 1 & 1 & \end{bmatrix}

d_n 是一个 n \times n 的矩阵,求 d_n 

解:

将 d_n 按照第一行展开,显然可以得到 d_n=d_{n-1}-d_{n-2},并且 d_1=1,d_2=0

所以其特征方程为:x^2-x+1=0

解出两个共轭复根:x_1=\frac{1}{2}+\frac{\sqrt 3}{2} i,x_2=\frac{1}{2}-\frac{\sqrt 3}{2} i

算出 \rho = \sqrt{a^2+b^2}=1,\theta=arctan \ \frac{b}{a}=\frac{\pi}{3}

\therefore 其通解为 d_n=c_1 \cdot cos \ \frac{n\pi}{3} +c_2\cdot sin \ \frac{n \pi}{3}

\because d_1=1,d_2=0

\therefore c_1=1,c_2=\frac{1}{\sqrt 3}

\therefore d_n=cos \ \frac{n\pi}{3}+\frac{sin \ n\pi}{3\sqrt3}

 

情况三:

(*) 出现 k 重根,在这里我们先设 a_1 是重根(可以扩展到多个重根)

则有通解(通项公式)为:a_n=(c_1+c_2n+c_3n^2...+c_kn^{k-1})\cdot a_1^n

\{c_n \} 为常数集

-------------------------------------------------------------------------------------------------------------------------------------------------------------------------

例子:

d_n=\begin{bmatrix} 2 & 1 & 0 &0 .& .& . &. & . & 0 & \\ 1& 2& 1& & & & & & 0& \\ 0& 1 & 2& 1& & & & & 0& \\ .& & 1& 2 & 1 & & & & .& \\ .& & & & & .& & & . & \\ .& & & & & & 1 & 2& 1 & \\ 0& & . & .& & & & 1 & 1 & \end{bmatrix}

d_n 是一个 n \times n 的矩阵,求 d_n 

解:

将 d_n 按照第一行展开,显然可以得到 d_n=2d_{n-1}-d_{n-2},并且 d_1=2,d_2=3

所以其特征方程为:x^2-2x+1=0

解出 2 个重根:x_1=x_2=1

\therefore 通解(通项公式)为:d_n=(c_1+c_2n)\cdot 1^n=c_1+c_2n

\because d_1=2,d_2=3

\therefore c_1=1,c_2=1

\therefore d_n=1+n

 

2.非齐次常系数线性递推关系解法

(*) 的通项公式如下:a_n=\bar{a_n}+a_n(*),

其中,a_n(*) 是将递推关系看作齐次线性递推关系得到的通解,而 \bar{a_n} 是根据以下情况得到的特解

情况一:

(*) 右边 f(n) 是 n 的 t 次多项式,并且 1 是 (*) 的特征方程的 m 重根

那么,有特解为:\bar{a_n}=(c_1n^t+c_2n^{t-1}+...+c_tn+c_{t+1})\cdot n^m 

-------------------------------------------------------------------------------------------------------------------------------------------------------------------------

例子:

给定 k ,求 \sum_{k=1}^{n}k^3

解:

设 a_n = \sum_{k=1}^{n}k^3

那么有 \begin{cases} a_n-a_{n-1}=n^3 & \\ a_1=1 & \end{cases}

第一步:将递推关系看成是齐次求解通项公式

得到齐次递推关系:a_n-a_{n-1}=0

那么有特征方程:x-1=0

得到解:x=1

\therefore 其通解(通项公式)为:a_n(*)=c_1 \cdot 1^n=c_1

第二步:求出特解

因为 1 是递推关系的 1 重根,

因此有:\bar{a_n}=(c_1n^3+c_2n^2+c_3n+c_4) \cdot n^1

代入非齐次递推关系式得到特解: \bar{a_n}=\frac{1}{4}n^4+\frac{1}{2}n^3+\frac{1}{4}n^2

\therefore a_n =\frac{1}{4}n^4+\frac{1}{2}n^3+\frac{1}{4}n^2+c_1

 由初始值得到:c_1=0

\therefore a_n =\frac{1}{4}n^4+\frac{1}{2}n^3+\frac{1}{4}n^2=\frac{1}{4}n^2(n+1)^2

 

情况二:

(*) 右边 f(n) 是 n 的 t 次多项式,并且 1 不是 (*) 的特征方程的根

那么,有特解为:\bar{a_n}=c_1n^t+c_2n^{t-1}+...+c_tn+c_{t+1}

 

情况三:

(*) 右边 f(n) 是 c \cdot \beta^n 的形式(c,\beta是常数)

\beta 不是 (*) 的特征方程的根,那么由特解:\bar{a_n}=k \cdot \beta^n(k 为常数)

 

情况四:

(*) 右边 f(n) 是 c \cdot \beta^n 的形式(c,\beta是常数)

\beta 是 (*) 的特征方程的 m 根,那么由特解:\bar{a_n}=k \cdot n^m \cdot \beta^n(k 为常数)

-------------------------------------------------------------------------------------------------------------------------------------------------------------------------

例子:

\begin{cases} a_n=5a_{n-1}-6a_{n-2}+3\cdot2^n & \\ a_0=0,a_1=1 & \end{cases}

求 a_n

解:

第一步:将递推关系看成是齐次求解通项公式

得到齐次递推关系:a_n-5a_{n-1}+6a_{n-2}=0

那么有特征方程:x^2-5x+6=0

得到解:x_1=2,x_2=3

因此,得到通解为:a_n(*)=c_1\cdot2^n+c_2\cdot3^n

\because 2 是非齐次递推关系的 1 重根

\therefore 由特解:\bar{a_n}=k \cdot n\cdot 2^n

代入非齐次递推关系式得到特解:\bar{a_n}=-6n2^n

\therefore a_n=c_1 \cdot 2^n+c_2 \cdot 3^n-6n2^n

由初始值,得到:c_1=-13,c_2=13

\therefore a_n=-13 \cdot 2^n +13 \cdot 3^n -6n2^n

 

5.参考文献

1.https://wenku.baidu.com/view/f4799f98370cba1aa8114431b90d6c85ec3a8807?pcf=2

2.中文wiki母函数

3.信息学奥赛-数学一本通

 

你可能感兴趣的:(组合数学)