生成函数初步
普通生成函数(OGF)
形式
\[ F = \sum_{n \geq 0} \ f_n \ x^n
\]
基本运算
1.相加
\[ F \pm G = \sum_{n \geq 0} \ (f_n \pm g_n) \ x^n
\]
2.卷积
\[ F \cdot G = \sum_{n \geq 0} \ x^n\ \sum_{i = 0} ^ n f_ig_{n - i}
\]
几种常见的幂级数求和
\[f = {0, 1, 1, 1, ...} \\ 数列f的生成函数:F = \sum_{n \geq 0} x^n = \frac{x}{1 - x}
\]
\[f = {1, 0, 1, 0, 1, 0, ...} \\ 数列f的生成函数:F = \sum_{n \geq 0} x^{2n} = \frac{1}{1 - x^2}
\]
\[f = {1, 2, 3, 4, ...} \\ 数列f的生成函数:F = \sum_{n \geq 0} (n + 1) x^n = \frac{1}{(1 - x)^2}
\]
\[f_n = C_{m}^{n} \\ 数列f的生成函数:F = \sum_{n \geq 0} C_{m}^{n}x^n = (1 + x)^m
\]
\[f_n = C_{n + m}^{n} \\ 数列f的生成函数:F = \sum_{n \geq 0} C_{n + m}^{n} x^n = \frac{1}{(1 - x)^{m + 1}}
\]
- 多项式定理
\[(x_1 + x_2 + ... + x_n)^k = \sum_{\alpha_1 + \alpha_2 + ... + \alpha_n} \frac{k!}{\alpha_1!\alpha_2!...\alpha_n!}x_1^{\alpha_1}...x_n^{\alpha_n}
\]
指数生成函数(EGF)
形式:
\[ F = \sum_{n \geq 0} f_n \frac{x^n}{n!}
\]
卷积:
\[ F \cdot G = \sum_{n \geq 0} f_n \frac{x^n}{n!} \cdot \sum_{n \geq 0} g_n \frac{x^n}{n!} = \sum_{n \geq 0} \frac{x^n}{n!} \sum_{i = 0}^{n} C_n^i f_ig_{n - i}
\]
二项式反演
形式:
若
\[ g_n = \sum_{i = 0}^n C_{n}^{i}f_i
\]
则
\[ f_n = \sum_{i = 0}^n (-1)^{n - i} \ C_n^i \ g_i
\]
其中\(f_n\)可以理解为恰好n个不同的元素形成特定结构的方案数,\(g_n\)可以理解为至多n个不同的元素形成特定结构的方案数
证明:
\[\begin{aligned}
f_n &= \sum_{i = 0}^{n} C_{n}^{i} (-1)^{n-i} \ \ (\sum_{j = 0}^{i} C_{i}^{j} f_j) \\ &= \sum_{i = 0}^{n}\sum_{j = 0}^{i}C_{n}^{i}C_{i}^{j} (-1)^{n-i}f_j \\
&= \sum_{j = 0}^{n}\sum_{i = j}^{n}C_{n}^{i}C_{i}^{j} (-1)^{n-i}f_j \\&= \sum_{j = 0}^{n}f_j\sum_{i = j}^{n}C_{n}^{i}C_{i}^{j} (-1)^{n-i}
\end{aligned}
\]
因为:\(C_n^r \ C_r^k = C_n^k \ C_{n - k}^{r - k}\)
所以:
\[\begin{aligned}
f_n &= \sum_{j = 0}^{n}f_j\sum_{i = j}^{n}C_{n}^{j}C_{n - j}^{i - j} (-1)^{n-i} \\&= \sum_{j = 0}^{n}C_{n}^{j}f_j\sum_{i = j}^{n}C_{n - j}^{i - j} (-1)^{n-i} \\
& \underset{令k = i - j}{=} \ \sum_{j = 0}^{n}C_{n}^{j}f_j\sum_{k = 0}^{n - j}C_{n - j}^{k} (-1)^{n-j-k} \\
&= \sum_{j = 0}^{n}C_{n}^{j}f_j[n - j=0] \\
&= \sum_{j = 0}^{n}C_{n}^{j}f_j[n = j]\\
&= f_n
\end{aligned}
\]
另一种形式:
若
\[ g_k = \sum_{i = k}^n C_{i}^{k}f_i
\]
则
\[ f_k = \sum_{i = k}^n (-1)^{i - k} \ C_i^k \ g_i
\]
其中\(f_n\)可以理解为恰好n个不同的元素形成特定结构的方案数,\(g_n\)可以理解为至少n个不同的元素形成特定结构的方案数
第二个形式比价容易用容斥原理来理解,然后可以通过类比来想第一种形式。