这是一篇防遗忘的二项式反演证明博客

在此不给出精妙的容斥证明,开始推代数证明

众所周知二项式反演有两个形式

\(f(n) = \sum_{i = 0}^{n} (-1)^{i}\binom{n}{i}g(i) \Leftrightarrow g(n) = \sum_{i = 0}^{n} (-1)^{i} \binom{n}{i}f(i)\)

这个式子简直妙啊……太对称了

然而它更常用的形式是这个

\(f(n) = \sum_{i = 0}^{n}\binom{n}{i}g(i) \Leftrightarrow g(n) = \sum_{i = 0}^{n} (-1)^{n - i} \binom{n}{i} f(i)\)

我们来证明一下

证明反演的一般套路就是代入啦

\(f(n) = \sum_{i = 0}^{n} (-1)^{i}\binom{n}{i}g(i)\)

\(f(n) = \sum_{i = 0}^{n} (-1)^{i}\binom{n}{i}\sum_{j = 0}^{i} (-1)^{j} \binom{i}{j} f(j)\)

我们考虑更换枚举顺序

\(f(n) = \sum_{j = 0}^{n} \sum_{i = j}^{n} (-1)^{i + j} \binom{n}{i} \binom{i}{j} f(j)\)

如果只有j = n的时候,

\(\sum_{j = 0}^{n} \sum_{i = j}^{n} (-1)^{i + j} \binom{n}{i} \binom{i}{j}\)值为1的话,那么式子是成立的

(虽然在别的情况下例如加加减减之后也是f(n)但是这个式子就是有这样特殊的性质)

\(\binom{n}{i} \binom{i}{j} = \frac{n!}{i!(n - i)!}\cdot\frac{i!}{j!(i - j)!} = \frac{n!}{(n - j)!j!}\cdot\frac{(n-j)!}{(n - i)![(n - i) - (n - j)]!} = \binom{n}{j}\binom{n - j}{n - i}\)

\(\sum_{j = 0}^{n} \sum_{i = j}^{n} (-1)^{2 * n - i - j} \binom{n}{j}\binom{n - j}{n - i}\)

\(\sum_{j = 0}^{n} (-1)^{j} \binom{n}{j}\sum_{i = j}^{n} (-1)^{n - i}\binom{n - j}{n - i}\)

\(\sum_{j = 0}^{n} (-1)^{n - j} \binom{n}{j}\sum_{i = 0}^{n - j} (-1)^{i}\binom{n - j}{i}\)

显然在组合数之间相隔一个填一个不同的+-号,考虑杨辉三角,除了第一行,剩下的和全是0

那么就有

\(\sum_{j = 0}^{n} (-1)^{j} \binom{n}{j}[n == j]\)

只有当j = n的时候,值才是1,于是反演得证

对于第二种形式呢,可以也推出一个类似的式子

\(f(n) = \sum_{i = 0}^{n} (-1)^{i}\binom{n}{i}\sum_{j = 0}^{i} (-1)^{i - j} \binom{i}{j} f(j)\)

\(\sum_{j = 0}^{n} \sum_{i = j}^{n} (-1)^{i - j} \binom{n}{i} \binom{i}{j}\)

\(\sum_{j = 0}^{n} \sum_{i = j}^{n} (-1)^{2 * n - i + j} \binom{n}{j}\binom{n - j}{n - i}\)

\(\sum_{j = 0}^{n} (-1)^{n + j} \binom{n}{j}\sum_{i = j}^{n} (-1)^{n - i}\binom{n - j}{n - i}\)

\(\sum_{j = 0}^{n} (-1)^{n + j} \binom{n}{j}[n == j]\)

于是也可以得证

然后你会发现,这个东西写成矩阵是个下三角,按理来说,这个东西会有一个上三角形式,例如莫比乌斯反演

那么其实是有的

\(f(k) = \sum_{i = k}^{n} (-1)^{i}\binom{i}{k}g(i) \Leftrightarrow g(k) = \sum_{i = k}^{n} (-1)^{i} \binom{i}{k}f(i)\)

什么,也是那么对称的么

还有一个常用形式

\(f(k) = \sum_{i = k}^{n} \binom{i}{k}g(i) \Leftrightarrow g(k) = \sum_{i = k}^{n} (-1)^{i - k} \binom{i}{k}f(i)\)

然后再去证明

\(f(k) = \sum_{i = k}^{n} (-1)^{i}\binom{i}{k}g(i)\)

\(f(k) = \sum_{i = k}^{n} (-1)^{i}\binom{i}{k} \sum_{j = i}^{n} \binom{j}{i} f(j)\)

\(f(k) = \sum_{i = k}^{n} (-1)^{i}\binom{i}{k} \sum_{j = i}^{n} (-1)^{j} \binom{j}{i} f(j)\)

\(f(k) = \sum_{j = k}^{n} \sum_{i = k}^{j} (-1)^{i + j}\binom{i}{k} \binom{j}{i} f(j)\)

\(\binom{i}{k}\binom{j}{i} = \frac{i!}{k!(i - k)!}\frac{j!}{i!(j - i)!} = \frac{j!}{k!(j - k)!}\frac{(j - k)!}{(i - k)![(j - k) - (i - k)]!} = \binom{j}{k}\binom{j - k}{i - k}\)

\(f(k) = \sum_{j = k}^{n} \sum_{i = k}^{j} (-1)^{i + j - 2*k}\binom{j}{k}\binom{j - k}{i - k}\)

\(f(k) = \sum_{j = k}^{n} (-1)^{j - k}\binom{j}{k}\sum_{i = k}^{j} (-1)^{i - k}\binom{j - k}{i - k}\)

\(f(k) = \sum_{j = k}^{n} (-1)^{j - k}\binom{j}{k}\sum_{i = 0}^{j - k} (-1)^{i}\binom{j - k}{i}\)

\(f(k) = \sum_{j = k}^{n} (-1)^{j - k}\binom{j}{k}[k == j]\)

同理第二种形式也可以证明

\(f(k) = \sum_{j = k}^{n} \sum_{i = k}^{j} (-1)^{j - i}\binom{i}{k} \binom{j}{i} f(j)\)

\(f(k) = \sum_{j = k}^{n} \sum_{i = k}^{j} (-1)^{j - i - k + k}\binom{j}{k}\binom{j - k}{i - k} f(j)\)

\(f(k) = \sum_{j = k}^{n} (-1)^{j - k}\binom{j}{k}\sum_{i = k}^{j} (-1)^{k - i} \binom{j - k}{i - k} f(j)\)

\(f(k) = \sum_{j = k}^{n} (-1)^{j - k}\binom{j}{k}[j == k] f(j)\)