反演
二项式反演
若:
\[g_n=\sum_{i=0}^n{n\choose i}f_i
\]
则:
\[f_n=\sum_{i=0}^n{n\choose i}(-1)^{n-i}g_i
\]
证明:
考虑一个显然正确的式子:
\[f_n=\sum_{m=0}^n[n-m=0]{n\choose m}f_m
\]
再考虑一个家喻户晓的性质:
\[\sum_{k=0}^n(-1)^k{n\choose k}=[n=0]
\]
这个性质考虑 \((1-1)^n\) 展开是显然的。
把下式代入上式:
\[f_n=\sum_{m=0}^n\sum_{k=0}^{n-m}(-1)^k{n-m\choose k}{n\choose m}f_m
\]
\[f_n=\sum_{m=0}^n\sum_{k=0}^{n-m}(-1)^k{n\choose k}{n-k\choose m}f_m
\]
\[f_n=\sum_{k=0}^n(-1)^k{n\choose k}\sum_{m=0}^{n-k}{n-k\choose m}f_m
\]
\[f_n=\sum_{k=0}^n(-1)^k{n\choose k}g_{n-k}
\]
\[f_n=\sum_{i=0}^n(-1)^{n-i}{n\choose i}g_i
\]
原式得证。
\(g_n=\sum_{i=0}^n{n\choose i}f_i\iff f_n=\sum_{i=0}^n{n\choose i}(-1)^{n-i}g_i\)
\(g_k=\sum_{i=k}^n{i\choose k}f_i\iff f_k=\sum_{i=k}^n{i\choose k}(-1)^{i-k}g_i\)
考虑这两个式子的组合意义。
当 \(g_i\) 表示至多 \(i\) 个,\(f_i\) 表示恰好 \(i\) 个时,第一个式子成立。
当 \(g_i\) 表示至少 \(i\) 个,\(f_i\) 表示恰好 \(i\) 个时,第二个式子成立。
子集反演
若:
\[G(S)=\sum_{T\subset S}F(T)
\]
则:
\[F(S)=\sum_{T\subset S}(-1)^{|S|-|T|}G(T)
\]
证明:
类似上面的证明,我们可以给出两个式子:
\[F(S)=\sum_{T\subset S}[|S|-|T|=0]F(T)
\]
\[\sum_{T\subset S}(-1)^{|T|}=[|S|=0]
\]
得到:
\[F(S)=\sum_{T\subset S}\sum_{P\subset S-T}(-1)^{|P|}F(T)
\]
\[F(S)=\sum_{P\subset S}(-1)^{|P|}\sum_{T\subset S-P}F(T)
\]
\[F(S)=\sum_{P\subset S}(-1)^{|P|}G(S-P)
\]
\[F(S)=\sum_{T\subset S}(-1)^{|S|-|T|}G(T)
\]
原式得证。
打公式好累呀,先咕一会