狄利克雷卷积及莫比乌斯反演

Posted magicduck

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了狄利克雷卷积及莫比乌斯反演相关的知识,希望对你有一定的参考价值。

1.数论函数

定义两个数论函数\(f(n)\)\(g(n)\)

\((f+g)(n)=f(n)+g(n)\)

2.狄利克雷卷积

定义两个数论函数的狄利克雷卷积\(*\)

定义数论函数\(t=f*g\)

\(\mathbf t(n)=\sum_ij=n\mathbf f(i)\mathbf g(j)\)

显然,\(f*g=g*f,f*(g*k)=(f*g)*k,f*(g+k)=f*g+f*k\)

定义数论函数\(f\)的单位元\(?\),使得\(\epsilon\ast\mathbf f=\mathbf f*?\)

不难看出,当\(i\)等于\(1\)时,\(?(i)=1\),否则,\(?(i)=0\)

定义数论函数\(g\)为函数\(f\)的逆元,即\(f*g=?\)

\(g(n)=\dfrac1f(1)\left([n==1]?\sum\limits_i|n,i\ne1f(i)g(\dfracni)\right)\)

3.积性函数

如果一个数论函数\(f\)\(n⊥m\)的时候满足\(f(nm)=f(n)f(m)\),则称此函数为积性函数

常见的积性函数:\(*σ*_0\)(\(n\)的因数个数),\(\varphi(n)\)(\([1,n]\)中与\(n\)互质的数的个数)

结论:

1.两个积性函数的狄利克雷卷积是积性函数

证明如下:

\(t=f*g\),则
\[ \beginaligned\mathbf t(nm)&=\sum_d\mid nm\mathbf f(d)\mathbf g\left(\fracnmd\right)\\&=\sum_a\mid n,b\mid m\mathbf f(ab)\mathbf g\left(\fracnmab\right)\\&=\sum_a\mid n,b\mid m\mathbf f(a)\mathbf f(b)\mathbf g\left(\frac na\right)\mathbf g\left(\frac mb\right)\\&=\left(\sum_a\mid n\mathbf f(a)\mathbf g\left(\frac na\right)\right)\left(\sum_b\mid m\mathbf f(b)\mathbf g\left(\frac mb\right)\right)\\&=\mathbf t(n)\mathbf t(m)\endaligned \]
2.一个积性函数的逆也是积性函数

证明如下:

\(g\)\(f\)的逆元

1.当\(nm=1\)时,则\(g(1)=1\),结论成立

2.当\(nm>1\)时,则有
\[ \beginaligned\mathbf g(nm)&=-\sum_d\mid nm,d\neq1\mathbf f(d)\mathbf g\left(\fracnmd\right)\\&=-\sum_a\mid n,b\mid m,ab\neq1\mathbf f(ab)\mathbf g\left(\fracnmab\right)\\&=-\sum_a\mid n,b\mid m,ab\neq1\mathbf f(a)\mathbf f(b)\mathbf g\left(\frac na\right)\mathbf g\left(\frac mb\right)\\&=\mathbf f(1)\mathbf f(1)\mathbf g(n)\mathbf g(m)-\sum_a\mid n,b\mid m\mathbf f(a)\mathbf f(b)\mathbf g\left(\frac na\right)\mathbf g\left(\frac mb\right)\\&=\mathbf g(n)\mathbf g(m)-\left(\sum_a\mid n\mathbf f(a)\mathbf g\left(\frac na\right)\right)\left(\sum_b\mid m\mathbf f(b)\mathbf g\left(\frac mb\right)\right)\\&=\mathbf g(n)\mathbf g(m)-\epsilon(n)\epsilon(m)\\&=\mathbf g(n)\mathbf g(m)\endaligned \]
Tips:对于一个积性函数,显然\(f(1)=1\),\(f(1)\ne1\)的情况暂时不加讨论

运用:

对于一个积性函数,可以用线性筛的方法来快速递推得到

我们可以把一个积性函数\(f\),可以把\(f(n)\)分解为\(\mathbf f(n)=\prod_i=1^t\mathbf f(p_i^k_i)\),即是把它质因数分解

由于在线性筛素数的时候我们可以顺便求出每个数的最小质因数\(p_1\),最小质因数的次数\(k_1\)以及\(n/p_1^k_1\),就可以利用递推式\(\mathbf f(n)=\mathbf f(p_1^k_1)\mathbf f(n/p_1^k_1)\)直接计算 \(\mathbf f\)

由于$σ_0 $和 \(\varphi\)在素数幂处的值很容易得到,\(k>0\)时,\(\sigma_0(p^k)=k+1,\varphi(p^k)=p^k-1(p-1)\)

从而推出公式:
\[ \sigma_0(n)=\prod_i=1^t(k_i+1), \varphi(n)=\prod_i=1^np_i^k_i-1(p_i-1)=n\prod_i=1^t\left(1-\frac1p_i\right) \]

4.莫比乌斯反演

定义\(\mathbf1\)的逆是\(\mu\)

这样对于\(\mathbf g=\mathbf f\ast\mathbf1\),就有\(\mathbf f=\mathbf f\ast\mathbf1\ast\mu=\mathbf g\ast\mu\)

即如果\(\mathbf g(n)=\sum_d\mid n\mathbf f(d)\),则\(\mathbf f(n)=\sum_d\mid n\mu\left(\frac nd\right)\mathbf g(d)\)

这就证明了莫比乌斯反演

对于\(\mu\)的求法

显然,由于\(\mathbf1\)是积性的,而且\(\mu\)\(\mathbf 1\)的逆,所以\(\mu\)也是积性的

可得:
\[ \mu(p^k)=\begincases1&k=0\\-1&k=1\\0&k>1\endcases \]
从而得出:
\[ \mu(n)=\begincases(-1)^t&n=p_1p_2\dots p_t\text且$ p_i $互不相同\\0&n\text不满足上述条件\endcases \]
Tips:对于\(n=1\),则\(t=0\)

反演推论:

\[ [n==1]=\sum_d|n\mu(d) \]

\(\mu\)是1的逆显然很好理解

以上是关于狄利克雷卷积及莫比乌斯反演的主要内容,如果未能解决你的问题,请参考以下文章

狄利克雷卷积&&杜教筛&&莫比乌斯反演

算法狄利克雷卷积 & 莫比乌斯反演

数论入门——莫比乌斯函数,欧拉函数,狄利克雷卷积,线性筛,莫比乌斯反演,杜教筛

狄利克雷卷积和莫比乌斯反演

从基础数论函数说起3:莫比乌斯反演

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