Fork me on GitHub

二项式系数及其反演

二项式系数及其反演

二项式系数&二项式定理

了解标题之前,我们先要花一些时间复习一下普通的二项式系数:

(nk)=Γ(n+1)Γ(k+1)Γ(nk+1)

我们对它研究得非常多,例如经典的二项式定理:

(x+y)n=(n0)xny0+(n1)xn1y1+(n2)xn2y2++(nn1)x1yn1+(nn)x0yn

写成和式的形式,也就是

(x+y)n=nk=0(nk)xnkyk=nk=0(nk)xkynk

证明挺简单的,想必大家都会,这里不会的可以来谈人生了QwQ

广义二项式定理

这玩意怎么推广?

(x+y)α=k=0(αk)xαkyk

第一种证明

证明也非常简单

它可以看成(1+x)α的幂级数展开

显然函数当α>0的时候是analytic的,所以可以通过多次求导得到幂级数中的项:

f(x)=n0f(n)(0)n!xn

f(x)=(1+x)α,多次求导可得

f(n)(x)=α(α1)(αn+1)(1+x)an

当然这个只对α>0有效,对于其它情况,可以用幂级数倒数的性质来证明。

这个证明可能用的定理太高级,其实还是组合式的比较好,但是可能就比较长就是了……

第二种证明

还是原来的函数f(x),假定它能展开成幂级数f(x)=n0anxn

然后我们无比震惊地发现它满足如下的微分方程:

(1+x)f(x)=αf(x),f(0)=1

这个微分方程又可以写成系数之间的递推式:

a0=1,n0((n+1)an+1+nan)x=n0αanxn

然后就有

a0=1,n,nan=(αn1)an+1

然后解递推方程咯…..

如果你还是看不懂,可以去维基百科看详细过程解答。

组合证明

百度百科-二项式定理上面有写,如果你这个都看不懂说明你废了。。

二项式定理的一些小应用

  • 当然是帮助证明东西

证明组合恒等式

比如证明

nk=0(nk)2=(2nn)

可以考虑恒等式

(1+x)n(1+x)n=(1+x)2n

然后证明就很显然了

证明自然数幂求和公式:

我没有看懂(留坑),但是有一篇博客系统地讲述了自然数幂和的各种求法:解决自然数幂和的方法

二项式反演!

前置定义&定理

x为任意复数,n是非负整数

对于广义二项式系数(xn),有Vandermonde卷积公式:

(x+yn)=nk=0(xk)(ynk)

以及展开形式(expand form)

(1+t)x=n=0(xn)tn,(1t)x=n=0xntn

其中xn=x(x+1)(x+n1)n!

且有

x+yn=nk=0xkynk
  • 定义1

x为任意数,n+1阶矩阵Pn[x],Qn[x],Dk(kN)分别定义

(Pn[x])ij={(xij),ij0otherwise(Qn[x])ij={xij,ij0otherwise(Dk)ij={1,i=j+k0,otherwise

显然,Pn[0]=Qn[0]=D0=In+1(In+1阶单位矩阵)。设D1=D,那么Dk=Dk,kN。设(x)k=Γ(x+1)Γ(k+1)xk=Γ(x+k)Γ(x),由矩阵乘法和Stirling数的性质,我们得到了一个定理:

  • 定理1

x为任意数,则有

Pn[x]=nk=0(xk)Dk=nk=0(x)kΓ(k+1)Dk=nk=0ni=k[ik]Γ(i+1)Dixk,Qn[x]=nk=0xkΓ(k+1)Dk=nk=0ni=k(1)i+k[ik]Γ(i+1)Dixk

其中[nk]是第一类无符号Stirling数。

  • 定理2

x,yR,则有Pn[x+y]=Pn[x]Pn[y],Qn[x+y]=Qn[x]Qn[y].

证明:当ij时,

(Pn[x]Pn[y])ij=ik=j(xik)(ykj)=(x+yij)=(Pn[x+y])ij

推论x,yR,mZ,有Pn[x]1=Pn[x],Pn[x]m=Pn[mx],Pn[x]=Pn[xm]m.

  • 定义2

x,yR,n+1阶矩阵Pn[x,y],Qn[x,y]分别定义为

(Pn[x,y])ij={(xij)yij0,ij;(Qn[x,y])ij={xijyij0,ij.
  • 定理3

x,y,zR,mZ,有

{Pn[x,z]Pn[y,z]=Pn[x+y,z],Qn[x,z]Qn[y,z]=Qn[x+y,z].{Pn[x,y]m=Pn[mx,y],Qn[x,y]m=Qn[mx,y].

{Pn[x,y]1=Pn[x,y],Pn[x,1]=Pn[x],Pn[0,1]=In+1;Qn[x,y]1=Qn[x,y],Qn[x,1]=Qn[x],Qn[0,1]=In+1.

反演开始!

还记得上面的推论吗?我们由它可以得到如下定理:

  • 定理4

x,yR,设{an}n0={an(x,y)}n0{bn}n0={bn(x,y)}n0为两个函数序列

那么我们有

an(x,y)=nk=0(xk)bnk(x,y)bn(x,y)=nk=0(xnk)ank(x,y)

也就是

an(x,y)=nk=0(xnk)bnk(x,y)bn(x,y)=nk=0(xnk)ank(x,y)

证明

a=(a0,a1,,an)T,b=(b0,b1,,bn)T,注意到a=Pn[x]b=Pn[x]

ai=ij=0(xij)bjbi=ij=0(xij)aj

我们的二项式反演公式也就很明白了:

{an}n0{bn}n0是两个数列,s为非负整数,ns,有

an=nk=s(nk)bk

则有

bn=nk=s(1)nk(nk)ak

好啦~ 反演到此为止,下面是娱乐环节!

一些神奇的恒等式变换

  • 如果你连基本恒等式都看不懂,说明你需要补习数学。

神奇变换1

有恒等式

nk=0(xk)yk=nk=0(nxk)(1+y)nk(y)k

作变换:

nk=0(xk)ynk=nk=0(x)k(nxk)(1+y)nkTip:replace ywith1y

bnk=ynk,an=nk=0(1)k(nxk)(1+y)nk,

则有

nk=0nki=0(1)i(xk)(nkxi)(1+y)nki=ynTip:Usethe Inversion Formula

神奇变换2

有恒等式

nk=0(1)k(n+xnk)11+k=(Bn(x)+nn)

,其中Bn(x)是Bernouli多项式

变形为:

nk=0(xnk)(1)k1+k=(Bn(xn)+nn)

bk=(1)k1+k,an=(Bn(xn)+nn)

我们在反演公式2中进行变换

nk=0(xnk)(Bk(xk)+kk)=(1)n1+n

神奇变换3

有恒等式

n1k=0(zk)xnk1=nk=1(zknk)(x+1)k1

通过反演,得出:

nk=0(xk)nki=0(xi1nki)(z+1)=zn

神奇变换4

有恒等式

n1k=0(zk)xnknk=nk=1(zknk)(x+1)k1k

通过反演,得出

nk=0(zk)nki=0(zi1nki)(x+1)i+11i+1=xn+1n+1

总结

我们全文讨论了许多关于二项式系数的问题。二项式系数的恒等式可能远不止这些,还需要我们去发掘。

我们可以看到在恒等式变换部分,许多式子最终的形式都是非常美妙简洁的。在OI中,可以帮助加速运算。

参考资料

[1], Wikipedia, 二项式定理

[2], Wikipedia, Binomial theorem

[3], Miskcoo’s Space , 反演魔术:反演原理及二项式反演

[4], creatorx ,二项式反演公式

[5], Wolframmathworld, Binomial theorem

[6], Peoplesju, The Generalized Binomial Theorem

[7], Concrete Mathematics, 二项式系数

-------------本文结束了哦感谢您的阅读-------------