二项式反演
如果有\(g_{i} = \sum_{j = 1}^{i} \binom{i}{j}f_{i} \Longleftrightarrow f_{i} = \sum_{j = 1}^{i}(-1)^{i - j} \binom{i}{j}g_{j}\)
证明:
先将1式带入2式,得到
\[f_{i} = \sum_{j = 1}^{i}(-1)^{i - j} \binom{i}{j}\sum_{k = 1}^{j} \binom{j}{k}f_{k}\]
证明等式成立相当于证明对于等式右边而言,所有\(f_{k}\)的系数为\([i == k]\)
则\(f_{k}\)的系数为\(\sum_{j = k}^{i} (-1)^{i - j} \binom{i}{j} \binom{j}{k}\)
化简:\[\sum_{j = k}^{i}(-1)^{i - j} \frac{i!}{j!(i - j)!} \frac{j!}{k!(j - k)!}\]
消去\(j!\),提出\(\frac{i!}{k!}\),
\[(\sum_{j = k}^{i}(-1)^{i - j} \frac{1}{(i - j)!(j - k)!}) \frac{i!}{k!}\]
乘\((i - k)!\),除\((i - k)!\),
\[(\sum_{j = k}^{i}(-1)^{i - j} \frac{(i - k)!}{(i - j)!(j - k)!}) \frac{i!}{k!(i - k)!}\]
\[(\sum_{j = k}^{i}(-1)^{i - j} \binom{i - k}{j - k}) \binom{i}{k}\]
---> 证:\[\sum_{j = k}^{i}(-1)^{i - j} \binom{i - k}{j - k} = [i == k]\]
如果成立,则:当\(i == k\)时,\(\binom{i}{k} = 1\),所以系数为1;当\(i != k\)时,前一个式子为0,所以系数为0.
证明:
当\(i - k\)为奇数时,相当于有\(i - k + 1\)个数相加(分别对应取0个,取1个...取i - k个),一共偶数个,其中第一项与最后一项异号,第二项与倒数第2项异号。。。根据组合数的对称性,和为0。
当\(i - k\)为偶数时,相当于证:
\(\binom{i}{0} - \binom{i}{1} + \binom{i}{2} - ... -\binom{i}{i - 1} + \binom{i}{i} = 0\)
二项式定理证明:
\[0^{n} = (1 - 1)^{n} = \sum_{k = 0}^{n} \binom{n}{k}x^{n - k}y^{k} = 0\]
其中\(x = 1, y = -1\).
则\(x^{n - k}\)恒为1,\(y^{k} = +1, -1, +1, -1 ....\)
因此原式成立
组合数证明(杨辉三角)
原式 = \(\binom{i - 1}{0} - (\binom{i - 1}{0} + \binom{i - 1}{1})......\)
因此最后每一项都被抵消了,所以原式 = 0;
二项式反演还有另一种形式:
\[g_{i} = \sum_{j = 1}^{i}(-1)^{j} \binom{i}{j} f_{j} \Longleftrightarrow f_{i} = \sum_{j = 1}^{i}(-1)^{j} \binom{i}{j}g_{j}\]
这种性质可以用容斥来理解(非证明)。
因为可以把\(f_{j}\)看做是满足某个性质的一个由i个集合组成的小集合,并且每个这样的小集合都是相等的。因此\(\binom{i}{j}\)就等于这样的集合个数,而\((-1)^{j}\)是容斥系数,因为进行了容斥,所以\(g_{i}\)可以看做是不满足某个性质的一个由i个集合组成的小集合,因此用\(g_{i}\)求\(f\)数组时,也是一样的容斥方式。