二项式反演证明&各种反演


二项式反演

二项式反演:

g(n)=ni=0(1)iCinf(i)f(n)=ni=0(1)iCing(i)g(n)=ni=0(1)iCinf(i)f(n)=ni=0(1)iCing(i)

恒等变换后,是更为常用的形式:

g(n)=ni=0Cinf(i)f(n)=ni=0(1)niCing(i)g(n)=ni=0Cinf(i)f(n)=ni=0(1)niCing(i)

证明

aiai 代替

g(n)=ni=0(1)iCinf(i)g(n)=ni=0(1)iCinf(i)

中每一项的系数 (1)iCin(1)iCin

g(n)=ni=0aif(i)g(n)=ni=0aif(i)

此时 ai=(1)iCinai=(1)iCin

同样用 bibi 代替 f(n)f(n) 每一项的系数:

f(n)=ni=0big(i)f(n)=ni=0big(i)

如果

g(n)=ni=0aif(i)f(n)=ni=0big(i)g(n)=ni=0aif(i)f(n)=ni=0big(i)

,需要推出的条件:

f(n)=Ni=0big(i)=ni=0biij=0aijf(j)=nj=0f(j)ni=jbiaijf(n)=Ni=0big(i)=ni=0biij=0aijf(j)=nj=0f(j)ni=jbiaij

如果式子成立,我们需要证明的就是:

ni=jbiaij=[j=n]ni=jbiaij=[j=n]Ni=j(1)iCin×(1)jCji=[j=n]Ni=j(1)iCin×(1)jCji=[j=n]
  • CinCji=n!(ni)!i!×i!(ij)!j!=n!(ni)!(ij)!j!CinCji=n!(ni)!i!×i!(ij)!j!=n!(ni)!(ij)!j!
=n!(nj)!j!×(nj)!(ij)!(ni)!=n!(nj)!j!×(nj)!(ij)!(ni)!=n!(nj)!j!×(nj)!((nj)(ni))!(ni)!=n!(nj)!j!×(nj)!((nj)(ni))!(ni)!=CjnCninj=CjnCninjCinCji=CjnCninjCinCji=CjnCninj

带入这个结果:

=ni=j(1)i(1)jCjnCninj=ni=j(1)i(1)jCjnCninj=Cjn(1)jnji=0(1)i+jCinj=Cjn(11)nj=Cjn(1)jnji=0(1)i+jCinj=Cjn(11)nj

如果 jnjn,那么结果为 0

而如果 j=k,带入原式结果为 =[j=n]

所以:

g(n)=ni=0(1)iCinf(i)f(n)=ni=0(1)iCing(i)

同样,恒等变换完的:

g(n)=ni=0Cinf(i)f(n)=ni=0(1)niCing(i)

也成立。

一般形式

g(n)=ni=0(1)iCinf(i)f(n)=ni=0(1)iCing(i)g(n)=ni=j(1)iCjif(i)f(n)=ni=j(1)iCjig(i)g(n)=ni=0Cinf(i)f(n)=ni=0(1)niCing(i)g(n)=ni=jCjif(i)f(n)=ni=j(1)ijCjig(i)

各种反演

  • 序列
Fn=ni=0anifi

fn=ni=0bniFi

充要条件是:

nj=ibnjaji=δni
  • 斯特林数反演
ani={ni},bni=(1)ni[ni]

a 是第二类斯特林数,b 是第一类斯特林数。

Fn=ni=0{ni}fifn=ni=0(1)ni[ni]Fi ani=[in],bni=[in]μ(ni)Fn=dnfdfn=dnμ(nd)Fd
  • 伯努利数反演
ani=1ni+1Cin,bni=CinBniFn=ni=01ni+1Cinfifn=ni=0CinBniFi

Bi 是伯努利数。

  • 拉氏反演(拉赫数,也叫第三类斯特林数)
ani=bni=L(n,i)=(1)nn!i!Ci1n1Fn=ni=0L(n,i)fifn=ni=0L(n,i)Fi

L(n,i)Lah 数。

  • 最值反演(minmax 容斥)
f(S)=minS,g(S)=(1)|S|1maxSmaxS=TS(1)|T|1minT

推广:

kthmaxS=TS(1)|T|kCk1|T|1minT

S,T 是集合。

i=0[xik]f(x)=1kk1j=0f(wjk)

wk=e2πik 就是单位根。

  • 拉格朗日反演
F(G(x))=x[xi]F(x)=1i[xi1](xG(x))i

文章作者: 王大神——A001
版权声明: 本博客所有文章除特別声明外,均采用 CC BY 4.0 许可协议。转载请注明来源 王大神——A001 !