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

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

一些定义

积性函数

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

数论函数

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

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

常见的数论函数:

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

常数函数:\(1(n)=1\)

恒等函数:\(Id(n)=n\)

欧拉函数:\(\varphi(n)=\sum\limits_{i=1}^{n}[gcd(i,n)=1]\)

莫比乌斯函数:\(\mu(n)\)

\(Dirichlet\)卷积

定义

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

\[(f*g)(n)=\sum\limits_{d|n}f(d)*g(\dfrac{n}{d}) \]

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

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

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

性质

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

交换律

\[(f*g)(n)=(g*f)(n) \]

证明它不香吗? 证明:

由于\(d\)\(\dfrac{n}{d}\)有对称性,故

\[(f*g)(n)=\sum\limits_{d|n}f(d)\times g(\dfrac{n}{d})=\sum\limits_{d|n}g(d)\times f(\dfrac{n}{d})=(g*f)(n) \]

证毕。


结合律

\[((f*g)*h)(n)=(f*(g*h))(n) \]

证明它不香吗? 证明:

\[((f*g)*h)(n)=\sum\limits_{t\times d_3=n}(\sum\limits_{d_1\times d_2=t}f(d_1)\times g(d_2))\times h(d_3)=\sum\limits_{d_1\times d_2\times d_3=n}f(d_1)\times g(d_2)\times h(d_3)=\sum\limits_{t\times d_1=n}f(d_1)\times (\sum\limits_{d_2\times d_3=t}g(d_2)\times h(d_3))=(f*(g*h))(n) \]

证毕。


分配律

\[((f+g)*h)(n)=(f*h)(n)+(g*h)(n) \]

证明它不香吗? 证明:

\[((f+g)*h)(n)=\sum\limits_{d|n}(f(d)+g(d))\times h(\dfrac{n}{d})=\sum\limits_{d|n}f(d)\times h(\dfrac{n}{d})+\sum\limits_{d|n}g(d)\times h(\dfrac{n}{d})=(f*h)(n)+(g*h)(n) \]

证毕。


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

证明它不香吗? 证明:

\(gcd\left( x,y\right)=1\),则\(f\left( xy\right)=f\left( x\right)\times f\left( y\right)\)\(g\left( xy\right)=g\left( x\right)\times g\left( y\right)\)

\[\left( f*g\right)\left( n\right)\times \left( f*g\right)\left( m\right)=\displaystyle \sum\limits_{d_1|n}f\left( d_1\right)\times g\left( \dfrac{n}{d_1}\right)\times \displaystyle \sum\limits_{d_2|m}f\left( d_2\right)\times g\left( \dfrac{m}{d_2}\right)=\displaystyle \sum\limits_{d_1|n}\displaystyle \sum\limits_{d_2|m}f\left( d_1\right)\times f\left( d_2\right)\times g\left( \dfrac{n}{d_1}\right)\times g\left( \dfrac{m}{d_2}\right)=\displaystyle \sum\limits_{d_1|n}\displaystyle \sum\limits_{d_2|m}f\left( d_1d_2\right)\times g\left( \dfrac{nm}{d_1d_2}\right)=\displaystyle \sum\limits_{d|nm}f\left( d\right)g\left( \dfrac{nm}{d}\right)=\left( f*g\right)\left( nm\right) \]

证毕。


\(Dirichlet\)卷积的逆

类比算数运算上的\(a\times b=1\),如果两个数论函数的卷积后为单位\(1\),即\(f*g=\epsilon\)\(n\)省略),则\(g\)\(f\)的逆,即\(g=f^{-1}\),我们考虑下如何去求\(f^{-1}\)

\(f*g=\epsilon\)展开得\(\displaystyle \sum\limits_{d|n}f\left( d\right)\times g\left( \dfrac{n}{d}\right)=\epsilon\left( n\right)\),我们要求的是\(g\left( n\right)\),把它从和式分离出来得

\[f\left( 1\right)\times g\left( n\right)=\epsilon\left( n\right)-\displaystyle \sum\limits_{d|n且d\neq 1}f\left( d\right)\times g\left( \dfrac{n}{d}\right) \]

\(f\left( 1\right)\neq 0\)时,存在\(g\left( n\right)=\dfrac{1}{f\left( 1\right)}\times \left( \epsilon\left( n\right)-\displaystyle \sum\limits_{d|n且d\neq 1}f\left( d\right)\times g\left( \dfrac{n}{d}\right)\right)\),即

\[f^{-1}\left( n\right) =\dfrac{1}{f\left( 1\right) }\times \left( \epsilon\left( n\right) -\displaystyle \sum\limits_{d|n且d\neq 1}f\left( d\right) \times f^{-1}\left( \dfrac{n}{d}\right) \right) \]

很显然当\(n=1\)\(f^{-1}(1)=1\)

这就是\(Dirichlet\)卷积的逆公式。

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

莫比乌斯反演

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

已知\(f(n)=\sum\limits_{d|n}g(d)\),求\(g(n)\)

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

我们要求\(g(n)\),我们可以在等式两边乘以常数函数的逆\(1^{-1}(n)\),这样式子就变成了\(g*(1*1^{-1})=g=f*1^{-1}\),这样我们就可以求得\(g(n)\),现在关键是如何求得\(1^{-1}(n)\)

由于\(1*1^{-1}=\epsilon\),根据上面的逆的公式得到

\[1^{-1}(n)=\dfrac{1}{1\left( 1\right) }\times \left( \epsilon\left( n\right) -\displaystyle \sum\limits_{d|n且d\neq n}1\left( d\right) \times 1^{-1}\left( \dfrac{n}{d}\right) \right)=\left( \epsilon\left( n\right) -\displaystyle \sum\limits_{d|n且d\neq n}1^{-1}\left( \dfrac{n}{d}\right) \right) \]

我们记\(1^{-1}(n)=\mu(n)\)

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

\(n=1\)时,\(\mu(1)=1\)

\(n>1\)时,\(\epsilon(n)=0\)\(\mu(n)= -\displaystyle \sum\limits_{d|n且d\neq 1}\mu\left( \dfrac{n}{d}\right)=-\displaystyle \sum\limits_{d|n且d\neq n}\mu\left( d\right)\)

\(n\)是质数时,\(\mu(n)= -\displaystyle \sum\limits_{d|n且d\neq n}\mu\left( d\right)=-\mu(1)=-1\)

\(n\)是质数的幂时,设\(n=p^c(c>1)\),则\(\mu(p^c)=-\displaystyle \sum\limits_{d|p^{c-1}}\mu\left( d\right)=-\mu(p^{c-1})-\displaystyle \sum\limits_{d|p^{c-2}}\mu\left( d\right)=-\mu(p^{c-1})+\mu(p^{c-1})=0\)

故如果\(n=\prod\limits_{i}p_i^{c_i}\prod\limits_{j}p_j\),其中\(c_i>1\)\(p_i\)均是各异的质数,由于\(\mu(n)\)是积性函数,则\(\mu(n)=\prod\limits_{i}\mu(p_i^{c_i})\prod\limits_{j}\mu(p_j)=0\times \prod\limits_{j}\mu(p_j)=0\)

\(n=\prod\limits_{i=1}^{k}p_i\),根据其积性,可得\(\mu(n)=\prod\limits_{i=1}^{k}\mu(p_i)=(-1)^{k}\),其中\(k\)\(n\)质因数分解后互异质数的个数。

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

莫比乌斯函数

\(n=\prod\limits_{i=1}^{k}p_{i}^{c_{i}}\)

\[\mu(n)=\begin{cases} 1 & n=1 \\ 0 & \exists i \in [1,k],c_i>1 \\ (-1)^k & \forall i \in [1,k],c_i=1 \end{cases}\]

由此我们就得到了常数函数\(1(n)\)的逆的表达式\(\mu(n)\),所以\(g=f*1^{-1}=f*\mu\),即\(g(n)=\sum\limits_{d|n}f(d)*\mu(\dfrac{n}{d})\)

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

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

\(f(n)=\sum\limits_{n|d}g(d)\),则\(g(n)=\sum\limits_{n|d}f(n)\times \mu(\dfrac{d}{n})\)

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

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

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

欧拉函数

众所周知,\(\varphi(n)=\sum\limits_{i=1}^{n}[gcd(i,n)=1]\),我们将右式替换,得到

\[\varphi(n)=\sum\limits_{i=1}^{n}\sum\limits_{d|i}\mu(d) \]

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

\[\varphi(n)=\sum\limits_{i=1}^{n}\sum\limits_{d|gcd(i,n)}\mu(d)=\sum\limits_{d|n}\mu(d)\times \frac{n}{d} \]

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

\[\dfrac{\varphi(n)}{n}=\sum\limits_{d|n}\dfrac{\mu(d)}{d} \]

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

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

\[\varphi=\mu*Id \]

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

\[\varphi*1=1*\mu*Id=\epsilon*Id=Id \]

\(n=\sum\limits_{d|n}\varphi(d)\)

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

\(n=p\)是质数,则\(\varphi(p)=p-1\)

\(n=p^c\),由于\(p\times i\ (i \in [1,p^{c-1}])\)都是\(n\)的因子,根据容斥原理知\(\varphi(p^c)=p^c-p^{c-1}=p^{c}\times (1-\frac{1}{p})\)

\(n=\prod\limits_{i=1}^{k}p_{i}^{c_i}\),由于欧拉函数是积性函数,故\(\varphi(n)=\prod\limits_{i=1}^{k}\varphi(p_{i}^{c_i})=\prod\limits_{i=1}^{k}p_{i}^{c_i}(1-\dfrac{1}{p_{i}^{c_i}})=n\prod\limits_{i=1}^{k}(1-\dfrac{1}{p_{i}^{c_i}})\)

总结

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

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

\[\epsilon=\mu*1 \]

\[d=1*1 \]

\[\sigma=d*1 \]

\[\varphi=\mu*Id \]

\[Id=\varphi*1 \]

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

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

posted @ 2020-01-13 22:09  ~Lanly~  阅读(626)  评论(0编辑  收藏  举报