浅谈莫比乌斯反演

之前一直觉得这是一个这辈子都学不到的东西,好像太厉害了根本不适合我,看来我以前(虽然现在也还是)太菜了


对于一个算数函数

f(x)
如果我们对f(x)进行如下规定的求和

F(n)=d|nf(d)

其中d|n的含义为d可以整除n,例如对于n=12的情况

F(12)=f(1)+f(2)+f(3)+f(4)+f(6)+f(12)


我们要思考的是,这种关系是否可以反着来,比如说用F的值来求f的值?


那么我们现在可以进行观察:
F(1)=f(1)
F(2)=f(1)+f(2)
F(3)=f(1)+f(3)
F(4)=f(1)+f(2)+f(4)
F(5)=f(1)+f(5)
F(6)=f(1)+f(2)+f(3)+f(6)
F(7)=f(1)+f(7)
F(8)=f(1)+f(2)+f(4)+f(8)

发现其实对于f(x),我们可以通过F的加减来进行求解,具体过程如下

f(1)=F(1)
f(2)=F(2)F(1)
f(3)=F(3)F(1)
f(4)=F(4)F(2)
f(5)=F(5)F(1)
f(6)=F(6)F(3)F(2)+F(1)
f(7)=F(7)F(1)
f(8)=F(8)F(4)

现在我们可以发现求解f(x)的如下的大致规律:

f(n)=±someofF(n/d)

其中d|n
也就是说,并不完全取完,比如说对于f(6)的计算

f(6)=F(6)F(3)F(2)+F(1)

我们发现所有F(n/d)都进行了运算,而f(8)则并不是这样

所以可能有如下的式子可以表示f(n)的计算

f(n)=d|nμ(d)F(n/d)

显然其中的μ函数是一个算数函数,μ可以等于1,表示加上这项,可以等于-1,表示减去这项,也可以等于0,表示不处理这项,那么如果我们要这样表示f(x)的求解的话,可以直接计算出

μ value
1 1
2 -1
3 -1
4 0
5 -1
6 1
7 -1
8 0

对于一个素数p,我们可以得到

F(p)=f(1)+f(p)

=>f(p)=F(p)f(1)

=>f(p)=F(p)F(1)

因为对于素数,F(1)的那项是减号,所以μ(n/1)=μ(n)=-1
即:
μ(prime)=1

接下来我们可以推导

μ(p2)=0

其中
F(p2)=f(1)+f(p)+f(p2)

=>f(p2)=F(p2)f(1)f(p)

=>f(p2)=F(p2)(F(p)F(1))F(1)

=>f(p2)=F(p2)F(p)

意思就是说F(1)项没有了,那么
μ(p2/1)=μ(p2)=0

证毕


类似的推理可以得到如下结论

μ(pk)=0


得到这些结论之后,我们可以进行莫比乌斯函数(Möbius function)的定义

μ(n)的值对应如下表格

value situation
1 n=1
(-1)^r n=p1 * p2 * p3 * … * pr,其中pi为不同素数
0 其他情况

现在我们来证明莫比乌斯函数是一个积性函数

积性函数的定义:

积性函数指对于所有互质的整数 a 和 b 有性质 f ( a * b ) = f ( a ) * f ( b ) 的数论函数

令m,n为两个互素的数,需要证明:

μ(mn)=μ(m)μ(n)

①:如果n=1或者m=1
因为μ(1)=1,所以显然成立
②:如果n≠1并且m≠1
如果n和m中有一个被素数的平方整除,那么我们显然可以得到
μ(m * n)=μ(m)* μ(n)
因为LHS=RHS=0
如果他们都不被素数平方整除并且他们互素,则根据唯一分解定理可以得到

m=p1p2p3...ps

n=q1q2q3...qt

其中没有素数同时出现在m和n的唯一分解中

μ(nm)=(1)s+t=(1)s(1)t=μ(m)μ(n)

证毕



由于μ函数是积性函数,则μ函数的和函数也是积性函数,证明如下:

F(n)=d|nμ(d)=F(pa11pa22...pann)=d|pa11pa22...pannf(d)

=a1i1=0a2i2=0a3i3=0a4i4=0...anin=0f(pi11pi22...pinn)

=a1i1=0a2i2=0a3i3=0...anin=0f(pi11)f(pi22)...f(pinn)

=a1i1=0f(pi11)a2i2=0f(pi22)a3i3=0f(pi33)...anin=0f(pn2n)

=(a1i1=0f(pi11))(a2i2=0f(pi22))...(anin=0f(pn2n))

=F(pa11)F(pa22)F(pa33)...F(pann)

F(pa11pa22...pann)=F(pa11)F(pa22)F(pa33)...F(pann)

证毕


然后证明莫比乌斯函数的和函数F’满足如下式子

F(n)=d|nμ(d)

那么有恒成立的两个式子
F(n)=1(n==1)

F(n)=0(n>1)

因为已经证明了μ函数是积性函数,所以我们再次假设p是素数,k是一个正整数

试证明如下式子

F(pk)=0

证明如下:

F(pk)=d|pkμ(d)=μ(1)+μ(p)+μ(p2)+...+μ(pk)

=1+(1)+0+0+0+0+0+...+0

=0 =0

现在我们假设

F(n)=d|nμ(d)

中的n大于1,那么显然可以对n进行分解,那么

n=pa11pa22pa33...pann

那么由之前证明的μ函数的和函数也是积性函数可以得到

F(n)=F(pa11pa22...pann)=F(pa11)F(pa22)F(pa33)...F(pann)

因为等式右边的每个因子都是0,所以

F(n)=0 (n>1)

证毕


我们来证明我们莫比乌斯反演需要证明的最后一个等式,这个其实也不难理解,对于算数函数f,F为f的和函数,对任意的n∈N*有

F(n)=d|nf(d)

则一定有

f(n)=d|nμ(d)F(n/d)

对于②式,我们进行一定的变通,具体操作是引入一个x来进行转换

F(n/d)=x|(n/d)f(x)

则②式右手边
RHS=d|nμ(d)F(n/d)=d|n(μ(d)x|n/df(x))=d|n(x|n/dμ(d)f(x))

这里有个变换是这样的

d|n(x|(n/d)μ(d)f(x))=x|n(d|(n/x)f(x)μ(d))=x|n(f(x)d|(n/x)μ(d))


这一步看起来不是那么显然,我们可以按如下两条思路思考

壹: 首先如果对于一个数对(d,x),满足 d | n 和 x |(n / d), 则一定有 x | n 和 d | (n / x )

贰:我们对于一个确切的d,思考

d|n(x|(n/d)μ(d)f(x))

中枚举到的所有x(可以模拟记录下来),将所有μ(d)f(x)放到集合一

再思考对于

x|n(d|(n/x)f(x)μ(d))

固定之前的那个确切的d,来枚举第一个Σ中的x,将所有的μ(d)f(x)放到集合二

我们可以发现集合一等于集合二

也就是说我们总是可以得到一样的枚举,只是枚举方式发生了改变而已


那么证明了如上式子成立之后,我们可以继续进行进一步探索

d|n(x|(n/d)μ(d)f(x))=x|n(d|(n/x)f(x)μ(d))=x|n(f(x)d|(n/x)μ(d))

由之前发现的结论,μ函数的和函数不是1(n=1)就是0(n>1)

x|n(f(x)d|(n/x)μ(d))

中的

d|(n/x)μ(d)

当且仅当n/x=0的时候,有

d|1μ(d) =1

其他时候都是0

则得到最终结果

x|n(f(x)d|(n/x)μ(d))=f(n)1=f(n)

证毕


以上就是莫比乌斯函数的几个性质的证明以及莫比乌斯反演的证明,实际上莫比乌斯反演可以做很多事情,可能会后续更新吧


水题:

题目一:

证明算数函数f(n)的和函数F(n)为积性函数则可以推导出f(n)为积性函数

题目二:

现在有

α(n)函数表示函数f(n)=n的和函数

β(n)函数表示函数f(n)=1的和函数

也就是

α(n)=d|nd

β(n)=d|n1

求证:对于所有的n∈N*,有如下式子

n=d|nμ(n/d)α(d)

1=d|nμ(n/d)β(d)

你可能感兴趣的:(莫比乌斯反演,算法讲解)