从狄利克雷卷积到莫比乌斯函数

之前学莫比乌斯反演的时候就被莫比乌斯函数震惊了,从f(x)=d|ng(d)反演出g(n)=d|nμ(d)×f(nd),给出了谜一般的μ(x)函数的定义,令人百思不得其解,感觉定义出莫比乌斯函数的人似乎对容斥原理有了高深的造诣。这里从狄利克雷卷积(Dirichlet卷积)出发,可以很自然地导出莫比乌斯函数,并得到莫比乌斯反演公式。

一些定义

积性函数

如果gcd(x,y)=1,且f(xy)=f(x)×f(y),则f(x)为积性函数。

数论函数

数论函数亦称算术函数,一类重要的函数,指定义在正整数集上的实值或复值函数,更一般地,也可把数论函数看做是某一整数集上定义的函数——《百度百科》

总之可以理解为是定义域为正整数集的函数。

常见的数论函数:

单位函数:ϵ(n)=[n=1]

常数函数:1(n)=1

恒等函数:Id(n)=n

欧拉函数:φ(n)=i=1n[gcd(i,n)=1]

莫比乌斯函数:μ(n)

Dirichlet卷积

定义

f,g为两个数论函数,它们的Dirichlet卷积为:

(fg)(n)=d|nf(d)g(nd)

(可见它跟数的因子有很密切的关系)

其中单位函数ϵ(n)=[n=1]Dirichlet卷积的单位元,即任何函数卷ϵ都得它本身。

可以理解卷积是一种运算,它的作用对象是函数。

性质

Dirichlet卷积满足交换律、结合律和分配律。

交换律

(fg)(n)=(gf)(n)

证明它不香吗? 证明:

由于dnd有对称性,故

(fg)(n)=d|nf(d)×g(nd)=d|ng(d)×f(nd)=(gf)(n)

证毕。


结合律

((fg)h)(n)=(f(gh))(n)

证明它不香吗? 证明:

((fg)h)(n)=t×d3=n(d1×d2=tf(d1)×g(d2))×h(d3)=d1×d2×d3=nf(d1)×g(d2)×h(d3)=t×d1=nf(d1)×(d2×d3=tg(d2)×h(d3))=(f(gh))(n)

证毕。


分配律

((f+g)h)(n)=(fh)(n)+(gh)(n)

证明它不香吗? 证明:

((f+g)h)(n)=d|n(f(d)+g(d))×h(nd)=d|nf(d)×h(nd)+d|ng(d)×h(nd)=(fh)(n)+(gh)(n)

证毕。


两个积性函数的Dirichlet卷积仍然是积性函数。

证明它不香吗? 证明:

gcd(x,y)=1,则f(xy)=f(x)×f(y)g(xy)=g(x)×g(y)

(fg)(n)×(fg)(m)=d1|nf(d1)×g(nd1)×d2|mf(d2)×g(md2)=d1|nd2|mf(d1)×f(d2)×g(nd1)×g(md2)=d1|nd2|mf(d1d2)×g(nmd1d2)=d|nmf(d)g(nmd)=(fg)(nm)

证毕。


Dirichlet卷积的逆

类比算数运算上的a×b=1,如果两个数论函数的卷积后为单位1,即fg=ϵn省略),则gf的逆,即g=f1,我们考虑下如何去求f1

fg=ϵ展开得d|nf(d)×g(nd)=ϵ(n),我们要求的是g(n),把它从和式分离出来得

f(1)×g(n)=ϵ(n)d|nd1f(d)×g(nd)

f(1)0时,存在g(n)=1f(1)×(ϵ(n)d|nd1f(d)×g(nd)),即

f1(n)=1f(1)×(ϵ(n)d|nd1f(d)×f1(nd))

很显然当n=1f1(1)=1

这就是Dirichlet卷积的逆公式。

从这里可以很容易证明,如果f(n)是积性函数,它的逆f1(n)也是积性的,方法同第四条性质的证明方法。

莫比乌斯反演

讲了这么多,终于轮到莫比乌斯了。

已知f(n)=d|ng(d),求g(n)

我们从Dirichlet卷积的角度去看式子,即是f=g1,即函数f(n)g(n)与常数函数1(n)=1Dirichlet卷积的结果。

我们要求g(n),我们可以在等式两边乘以常数函数的逆11(n),这样式子就变成了g(111)=g=f11,这样我们就可以求得g(n),现在关键是如何求得11(n)

由于111=ϵ,根据上面的逆的公式得到

11(n)=11(1)×(ϵ(n)d|ndn1(d)×11(nd))=(ϵ(n)d|ndn11(nd))

我们记11(n)=μ(n)

因为1(n)是积性函数,故其逆μ(n)也是积性的。

n=1时,μ(1)=1

n>1时,ϵ(n)=0μ(n)=d|nd1μ(nd)=d|ndnμ(d)

n是质数时,μ(n)=d|ndnμ(d)=μ(1)=1

n是质数的幂时,设n=pc(c>1),则μ(pc)=d|pc1μ(d)=μ(pc1)d|pc2μ(d)=μ(pc1)+μ(pc1)=0

故如果n=ipicijpj,其中ci>1pi均是各异的质数,由于μ(n)是积性函数,则μ(n)=iμ(pici)jμ(pj)=0×jμ(pj)=0

n=i=1kpi,根据其积性,可得μ(n)=i=1kμ(pi)=(1)k,其中kn质因数分解后互异质数的个数。

综上我们就可以得到μ(n)的表达式了。

莫比乌斯函数

n=i=1kpici

μ(n)={1n=10i[1,k],ci>1(1)ki[1,k],ci=1

由此我们就得到了常数函数1(n)的逆的表达式μ(n),所以g=f11=fμ,即g(n)=d|nf(d)μ(nd)

这就是莫比乌斯反演中得到的公式以及μ(n)函数的由来了。

莫比乌斯反演还有另一种形式:

f(n)=n|dg(d),则g(n)=n|df(n)×μ(dn)

然而就算知道这些你还是不会做题

由于μ1=ϵ,其中ϵ(n)当且仅当n=1ϵ(n)=1,其余情况ϵ(n)=0,这与[gcd(i,n)=1]非常类似,因为也是只有当gcd(i,n)=1[gcd(i,n)=1]=1,其余情况[gcd(i,n)=1]=0

故对于[gcd(i,n)=1]我们可以把它替换成ϵ([gcd(i,n)=1]),再而换成d|gcd(i,n)μ(d),然后我们就可以搞事情了并不知道有什么用,看看下面吧。

欧拉函数

众所周知,φ(n)=i=1n[gcd(i,n)=1],我们将右式替换,得到

φ(n)=i=1nd|iμ(d)

然后我们再进行常规变换,改变求和的顺序,先枚举因子,然后看看这个因子出现了多少次。

φ(n)=i=1nd|gcd(i,n)μ(d)=d|nμ(d)×nd

n移到左边就得到一个著名的式子

φ(n)n=d|nμ(d)d

莫比乌斯函数与欧拉函数就神奇的联系在一起了。

还是看上面的式子,写成Dirichlet卷积的形式就是

φ=μId

其中Id(n)=n。对这个式子我们两边再卷常数函数1

φ1=1μId=ϵId=Id

n=d|nφ(d)

欧拉函数还有另一种求法,根据欧拉函数的定义,

n=p是质数,则φ(p)=p1

n=pc,由于p×i (i[1,pc1])都是n的因子,根据容斥原理知φ(pc)=pcpc1=pc×(11p)

n=i=1kpici,由于欧拉函数是积性函数,故φ(n)=i=1kφ(pici)=i=1kpici(11pici)=ni=1k(11pici)

总结

这篇文章讲了什么呢其实什么都没讲,其实就是从Dirichlet卷积的角度介绍了莫比乌斯函数μ(n)和莫比乌斯反演以及证明了关于欧拉函数φ(n)与莫比乌斯函数μ(n)的等式。至于题目,大都是要运用技巧和[gcd(i,n)=1]=d|gcd(i,n)μ(d)等式,进行各种变换,最后再预处理加上什么数论分块的做法解决的,但这并不是这篇文章的重点。

至于杜教筛,是用来解决某些特别的数论函数f(n)S(n)=i=1nf(i)的方法,通过选择另外两个数论函数h(n),g(n),使得h=fg,从卷积的角度出发诱导出S(n)。至于如何选择h,g,卷积的恒等式:

ϵ=μ1

d=11

σ=d1

φ=μId

Id=φ1

给我们指引了方向。具体的怎样留个坑qwq

其中d(n)表示n的因子个数,σ(n)表示n的因子和。

本文作者:~Lanly~

本文链接:https://www.cnblogs.com/Lanly/p/12189571.html

版权声明:本作品采用知识共享署名-非商业性使用-禁止演绎 2.5 中国大陆许可协议进行许可。

posted @   ~Lanly~  阅读(679)  评论(0编辑  收藏  举报
点击右上角即可分享
微信分享提示
💬
评论
📌
收藏
💗
关注
👍
推荐
🚀
回顶
收起
  1. 1 404 not found REOL
404 not found - REOL
00:00 / 00:00
An audio error has occurred.