组合数学用的最多的工具要算母函数,究竟什么是母函数呢,先看$(1 + a_1x)(1 + a_2x) cdots (1 + a_nx) = 1 + (a_1 + a_2 + cdots a_n)x + (a_1a_2 + a_1a_3 + cdots a_{n-1}a_n)x^2 + cdots +a_1a_2 cdots a_nx^n.$.
$x^1$项系数:$a_1 + a_2 + cdots a_n$;
$x^2$项系数:$a_1a_2 + a_1a_3 + cdots a_{n-1}a_n; cdots$
$x^n$项系数:$a_1a_2 cdots a_n$
即$x^k$项系数:$a_1,a_2, cdots,a_n$取$k$个组合的全体之和,$k = 1,2, cdots,n$.
令$a_1 = a_2 = cdots = a_n = 1$,即得
$$(1 + x)^ n = 1 + C(n,1)x + C(n,2)x^2 + cdots + C(n,n)x^n$$
另一方面
$${(1+x)}^m{(1+x)}^n = {(1+x)}^{m+n}$$
故$$
egin{aligned}
{(1+x)}^m{(1+x)}^n & = {C(m,0)+ C(m,1) + cdots + C(m,m)x^m} imes {C(n,0) + C(n,1)x + cdots + C(n,n)x^n} \
&={C(m+n,0) + C(m + n,1) + cdots + C(m+ n,m + n)x^{m + n}}
end{aligned}$$
比较上面等式得常系数,
$C(m,0)C(n,k) + C(m,1)C(n,k-1) + cdots + C(m,k)C(n,0) \ = C(m+n,k), k = 0,1,2, cdots,min{m,n}$
这样就证明了这个等式,当然也可用组合意义证明。
可见 $(1 + x)^ n = 1 + C(n,1)x + C(n,2)x^2 + cdots + C(n,n)x^n$在研究序列$C(n,0),C(n,1), cdots ,C(n,n)$时起作用.为此引进母函数得概念.
定义 对于序列$C_0,C_1,C_2 cdots$构造一函数
$$G(x) = C_0 + C_1x + C_2X^2 + cdots$$
称$G(x)$为序列$C_0,C_1,C_2 cdots$的母函数.
例如$(1+x)^n$称为序列$C(n,0),C(n,1), cdots ,C(n,n)$的母函数,序列长度可能是有限的,也可能是无限的。
若已知序列可求得母函数,反之若求得母函数,序列也随之确定,因此,序列和对应的母函数是一一对应的。
现利用母函数求递推关系的解,用汉诺塔做例子.
$$H(n) = 2H(n-1) + 1, H(1) = 1$$
补充定义$H_0 = 0$,并作如下步骤的形式化演算:
$x:H_1 = 2H_0 + 1 \
x^2:H_2 = 2H_1 + 1 \
x^3:H_3 = 2H_2 + 1 \
+ quad cdots \$
$G(x) = 2x[H_0 + H_1x + H_2{x^2} + cdots] + [x + x^2 + x^3 + cdots]$
等式两边分别为
$$H_0 + H_1x + H_2x^2 + cdots = 2xsum _{k=0}^{infty}H_kx^k + sum _{k=1}^{infty}x^k$$
$$x + x^2 + x^3 + cdots = x[1 + x + x^2 + cdots] = frac{x}{1-x}$$
所以得$$G(x) = 2xG(x)+ frac{x}{1-x}$$
$$G(x) = frac{x}{(1-x)(1 - 2x)}$$
序列${H_k}$的母函数已求得,后面是设法从$G(x)$求序列${H_k}$.
令$$frac{x}{(1-x)(1 - 2x)} = frac{A}{1-2x} + frac{B}{1-x}$$
解方程得$A = 1, B = -1$
所以
$$G(x) = frac{1}{1-2x} - frac{1}{1-x} = (1 + 2x + 2^2x^2 + cdots) - (1 + x + x^2 + cdots)$$
因此$$H_n = 2^n - 1, n = 1,2, cdots$$
上面利用母函数求递推关系的序列,构建序列和母函数有座桥:
$$frac{1}{1-x} = 1 + x+ x^2 + cdots$$