莫比乌斯函数总结

Posted heyuhhh

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了莫比乌斯函数总结相关的知识,希望对你有一定的参考价值。

莫比乌斯函数总结

性质\(\sum_d|n\mu(d)=[n==1]\)
这个可以用组合数的性质来证,形象点的话就是杨辉三角。
因为恒等式:\(\sum_i=0^n(-1)^nC_n^i=0\).

莫比乌斯反演:
形式一:
已知:\(g(n)=\sum_d|nf(d)\),则有:\(f(n)=\sum_d|n\mu(d)g(\fracnd)\).
证明如下:
\[ \sum_d|n\mu(d)g(\fracnd)=\sum_d|n\mu(d)\sum_k|\fracndf(k) \]
交换求和次序,有:
\[ \sum_d|n\mu(d)\sum_k|\fracndf(k)=\sum_k|nf(k)\sum_d|\fracnk\mu(d)=\sum_k|nf(k)[\fracnk=1]=f(n) \]
故得证.
形式二:
已知:\(g(n)=\sum_n|df(d)\),则有:\(f(n)=\sum_n|d\mu(\fracdn)g(d)\).
证明如下:
\(k=\fracdn\),则有:
\[\sum_n|d\mu(\fracdn)g(d)=\sum_k=1^\infty\mu(k)g(nk)=\sum_k=1^\infty\mu(k)\sum_nk|tf(t)\]
交换求和次序,有:
\[ \sum_k=1^\infty\mu(k)\sum_nk|tf(t)=\sum_n|tf(t)\sum_k|\fractn\mu(k)=\sum_n|tf(t)[\fractn=1]=f(n) \]
故得证.

常用技巧(应用):
一个性质:
\[ \lfloor\frac\lfloor\fracxa\rfloorb\rfloor=\lfloor\fracxab\rfloor \]
证明如下:
\(y=\lfloor\fracxa\rfloor,z=\lfloor\fracxab\rfloor\),显然有:\(x=zab+c,c\leq ab\).
等式两边同时除以\(a\)并向下取整有:\(y=zb+\lfloor\fracca\rfloor\).
再同时除以\(b\)并向下取整:\(\lfloor\frac\lfloor\fracxa\rfloorb\rfloor=z+\lfloor\frac\lfloor\fracca\rfloorb\rfloor\).
之后就比较显然了。

例一:
求:\(\sum_i=1^n\sum_j=1^m[gcd(i,j)=1]\).
\[ \sum_i=1^n\sum_j=1^m[gcd(i,j)=1]=\sum_i=1^n\sum_j=1^m\sum_d|gcd(i,j)\mu(d)=\sum_i=1^n\sum_j=1^m\sum_d|i,d|j\mu(d) \]
说明一下:从第一步到第二步多出来一个和式,就相当于一个容斥的过程,考虑所有的\((i,j)\),对于他们的\(gcd\)来进行容斥:先加上所有的情况,然后减去\(gcd\)\(2,3,5...\)倍数的情况,但会多减,所以加回来。
之后再进行变换得:
\[ \sum_d\mu(d)\sum_i=1^n\sum_d|i\sum_j=1^m\sum_d|j1=\sum_d\mu(d)\lfloor\fracnd\rfloor\lfloor\fracmd\rfloor \]
后面的部分直接整除分块,然后预处理\(\mu\)的前缀和就行了。

例二:
求:\(\sum_i=1^n\sum_j=1^mgcd(i,j)\)

这个和第一个比较类似,我们变化一下就有:
\[ \sumd\sum_i=1^n\sum_j=1^m[gcd(i,j)=d]=\sumd\sum_i=1^\fracnd\sum_j=1^\fracmd[gcd(i,j)=1] \]
根据例一得:
\[ \sumd\sum_i=1^\fracnd\sum_j=1^\fracmd[gcd(i,j)=1]=\sumd\sum_t\mu(t)\lfloor\fracndt\rfloor\lfloor\fracmdt\rfloor \]
\(T=dt\),则上式可化为:
\[ =\sum\fracTt\sum_t\mu(\fracTd)\lfloor\fracnT\rfloor\lfloor\fracmT\rfloor=\sum_T\lfloor\fracnT\rfloor\lfloor\fracmT\rfloor\sum_t|T\mu(t)\fracTt=\sum_T\lfloor\fracnT\rfloor\lfloor\fracmT\rfloor\varphi(T) \]

说说为什么最后转化为了欧拉函数:
欧拉函数有个十分有用的性质:\(\sum_d|n\varphi(d)=n\),证明的话主要从\(f(n)=\sum_d|n\varphi(d)\)这个函数为积性函数入手。同时还有一个性质也比较有用:\(\varphi(p^m)=p^m-p^m-1\)
有了这个式子反演一下就有:
\[ \varphi(n)=\sum_d|n\mu(d)\fracnd \]
对于例二,整除分块+预处理欧拉函数就行了。

相关例题:
留坑待补

以上是关于莫比乌斯函数总结的主要内容,如果未能解决你的问题,请参考以下文章

莫比乌斯函数的介绍

莫比乌斯函数的莫比乌斯函数的定义

莫比乌斯反演的莫比乌斯反演的性质

[积性函数杜教筛莫比乌斯函数入门]学习总结

莫比乌斯反演欧拉函数杜教筛大总结

莫比乌斯反演专题总结