組合數學用的最多的工具要算母函數,究竟什么是母函數呢,先看$(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}$$
故$$
\begin{aligned}
{(1+x)}^m{(1+x)}^n & = {C(m,0)+ C(m,1) + \cdots + C(m,m)x^m} \times {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 = 2x\sum _{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$$