莫比乌斯反演学习笔记

莫比乌斯反演

数论函数

数论函数是指定义域为正整数的一类函数。

基本的数论函数

  • 恒等函数I(n)=1
  • 元函数e(n)=[n=1]
  • 单位函数id(n)=n
  • 莫比乌斯函数

μ(n)={0,n1(1)k,kx

  • 欧拉函数φ(n)=nn

积性函数

称一个数论函数f为积性函数,当且仅当a,bNgcd(a,b)=1满足f(a)f(b)=f(ab)

若一个数论函数满足a,bNf(a)f(b)=f(ab)则称数论函数f为完全积性函数。

狄利克雷卷积

狄利克雷卷积是定义在两个数论函数上的二元运算,(fg)(n)=d|nf(d)g(nd)
这样得到的新数论函数就称为fg的狄利克雷卷积。

下面是狄利克雷卷积的一些性质:

  • 狄利克雷卷积具有交换律和结合律。

  • 两个积性函数的狄利克雷卷积还是积性函数

    • proof:

      a,bN,gcd(a,b)=1d|af(d)g(ad)×d|bf(d)g(bd)=d1|a,d2|bf(d1)g(ad1)×f(d2)g(bd2)=d1|a,d2|bf(d1d2)g(ad1bd2)=d|abf(d)g(abd)

  • 若两个数论函数f,g满足fg=e则称f,g互为对方的逆。

  • 任何一个满足f(1)0的数论函数都存在逆

    • 我们已知一个函数f(n),设g(n)=e(n)d|n,d1f(d)g(nd)f(1)
      (fg)(n)=d|nf(d)g(nd)
      =d|n,d1f(d)g(nd)+f(1)g(n)
      =d|n,d1f(d)g(nd)+f(1)(ed|n,d1f(d)g(nd))f(1)
      =d|n,d1f(d)g(nd)+e(n)d|n,d1f(d)g(nd)
      =e(n)
  • 积性函数的逆还是积性函数

    • proof:

      g(1)f(1)=e(1)=1n,mN,gcd(n,m)=1,nmkg(nm)=g(n)g(m)nm=k+1g(n)g(m)=(d|n,d1f(d)g(nd))(d|m,d1f(d)g(md))=d1|n,d2|m,d11,d21f(d1)g(nd1)f(d2)g(md2)=d|nm,d1f(d)g(nmd)f(n)d|n,d1f(d)g(nd)f(m)d|m,d1f(d)g(md)=g(nm)+2g(n)g(m)g(nm)=g(n)g(m),g(n)

莫比乌斯函数

对于数论函数F,f其中F易求,f难求。如果满足F(n)=d|nf(d)我们可以利用F反推出f

注意到,F=fIFI1=f我们只需要研究I1的性质。事实上这个函数就是莫比乌斯函数μ(n)

由积性函数的逆还是积性函数可知,μ(n)也是积性函数。其中μ(1)I(1)=e(1)=1μ(1)=1

研究积性函数一般先从质数的情况入手。pprime,μ(p)I(1)+μ(1)I(p)=e(p)=0μ(p)=1

再来研究质数的幂次的情况。d|pkμ(d)I(pkd)=e(pk)=0μ(1)+μ(p)+μ(p2)++μ(pk)=0可以归纳推出μ(pk)=0(k2)

这样我们就得到了莫比乌斯函数的完整定义μ(n)={0,n1 (1)k,kx

莫比乌斯反演的几种形式

  • 定义形式:d|nμ(d)=[n=1]
    变体:[n=m]=[m|n][nm=1]=[m|n]d|nmμ(d)

  • 约数形式:如果F(n)=d|nf(d)我们可以得到f(n)=d|nμ(d)F(nd)

  • 倍数形式:
    如果F(n)=k=1+f(kn)那么f(n)=k=1+μ(k)F(kn)

    • proof:

      k=1+μ(k)F(kn)=k=1+μ(k)i=1+f(ikn)=i=1+f(in)k|iμ(k)=i=1+f(in)[i=1]=f(n)

一些例子

  • i=1nj=1m[gcd(i,j)=1]

    i=1nj=1m[gcd(i,j)=1]=i=1nj=1md|gcd(i,j)μ(d)=i=1nj=1md|i,d|jμ(d)=d=1min{n,m}d|id|j1=d=1min{n,m}μ(d)ndmd

  • i=1nj=1m[gcd(i,j)=prime]n,m107,TT104

    i=1nj=1m[gcd(i,j)=prime]=pprimei=1nj=1m[gcd(i,j)=p]=pprimei=1nj=1m[p|gcd(i,j)][gcd(i,j)p=1]=pprimei=1npj=1mp[gcd(ip,jp)p=1]=pprimei=1npj=1mp[gcd(i,j)=1]=pprimed=1min{np,mp}μ(d)npdmpdtrickmpd=mpdproofm=k1p+r1(r1<p),k1=k2d+r2(r2<d)m=k2dp+pr2+r1pr2+r1p(d1)+(p1)=pd1mpd=k2=mpdpd:=k=1min{n,m}nkmkpprime,p|kμ(kp)

  • f(n)=d=1ndm[gcd(n,d)=1],n=i=1ωpiαi,ω103,piprime,pi109,αi109,109+7

    g(n)=i=1nim,g(n)=d|nf(nd)dmg(n)nm=d|nf(nd)dmnm:f(n)1nm=d|nμ(d)g(nd)(nd)mf(n)=d|nμ(d)dmg(nd)g(n)nm+1g(n)=i=0m+1finif(n)=d|nμ(d)dmi=0m+1fi(nd)i=i=0m+1finid|nμ(d)dmi=i=0m+1finij=1ωk=0αjμ(pjk)pj(mi)k=i=0m+1finij=1ω(1pjmi)mfi

  • i=1Aj=1Bk=1C(lcm(i,j)gcd(i,k))gcd(i,j,k)A,B,C105,T,T70

    i=1Aj=1Bk=1C(lcm(i,j)gcd(i,k))gcd(i,j,k)=i=1Aj=1Bk=1C(ijgcd(i,k)gcd(i,j))gcd(i,j,k)i=1Aj=1Bk=1Cigcd(i,j,k)i=1Aj=1Bk=1Cgcd(i,j)gcd(i,j,k)i=1Aj=1Bk=1Cigcd(i,j,k)=i=1Aij=1Bk=1Cgcd(i,j,k)=i=1Aid=1min{i,B,C}dj=1Bdk=1Cd[gcd(id,j,k)=1]=i=1Aid=1min{i,B,C}dj=1Bdk=1Cdt|id,t|j,t|kμ(t)=i=1Ais|it|sμ(t)BsCssttrick,μid=φproof:d|n,1angcd(a,n)=dgcd(ad,nd)aφ(nd)d|nφ(nd)=d|nφ(d)=n=i=1Ais|iφ(s)BsCs=s=1Ai=1As(is)φ(s)BsCs=s=1A[(As)!sAs]φ(s)BsCs+i=1Aj=1Bk=1Cgcd(i,j)gcd(i,j,k)=d=1min{A,B,C}i=1Adj=1Bdk=1Cd[dgcd(i,j)]d[gcd(i,j,k)=1]=d=1min{A,B,C}i=1Adj=1Bd[dgcd(i,j)]dk=1Cdt|i,t|j,t|kμ(t)=d=1min{A,B,C}t=1min{Ad,Bd,Cd}i=1Atdj=1Btd[dtgcd(i,j)]dμ(t)Ctdd=1min{A,B,C}t=1min{Ad,Bd,Cd}i=1Atdj=1Btd[dt]dμ(t)Ctdd=1min{A,B,C}t=1min{Ad,Bd,Cd}i=1Atdj=1Btdgcd(i,j)dμ(t)Ctdd=1min{A,B,C}t=1min{Ad,Bd,Cd}i=1Atdj=1Btd[dt]dμ(t)Ctd=d=1min{A,B,C}t=1min{Ad,Bd,Cd}[dt]dμ(t)AdtBdtCdt=s=1min{A,B,C}sAsBsCst|sμ(t)st=s=1min{A,B,C}sAsBsCsφ(s)d=1min{A,B,C}t=1min{Ad,Bd,Cd}i=1Atdj=1Btdgcd(i,j)dμ(t)Ctd=s=1min{A,B,C}i=1Asj=1Bsgcd(i,j)Csφ(s)=s=1min{A,B,C}[d=1min{As,Bs}di=1Asdj=1Bsd[gcd(i,j)=1]]φ(s)Cs=s=1min{A,B,C}[d=1min{As,Bs}dt=1min{Asd,Bsd}μ(t)AsdtBsdt]φ(s)Cs=s=1min{A,B,C}[m=1minAs,Bs(d|mdμ(md))AsmBsm]φ(s)Csd|mdμ(md)

posted @   clapp  阅读(27)  评论(0编辑  收藏  举报
相关博文:
阅读排行:
· 无需6万激活码!GitHub神秘组织3小时极速复刻Manus,手把手教你使用OpenManus搭建本
· C#/.NET/.NET Core优秀项目和框架2025年2月简报
· Manus爆火,是硬核还是营销?
· 一文读懂知识蒸馏
· 终于写完轮子一部分:tcp代理 了,记录一下
点击右上角即可分享
微信分享提示