狄利克雷卷积

狄利克雷卷积

(f: N ightarrow R g:N ightarrow R)是两个函数
则它们的狄利克雷卷积为((f*g)(n)=sum_{d|n}f(d)g(frac{n}{d}))

命题

如果(f(n)和g(n)为积性函数,则h(n)=(f*g)(n)也为积性函数)

定理

(::::f=g*1 LeftarrowRightarrow g=f*mu)

(f(n)=sum_{d|n}g(d)LeftarrowRightarrow g(n)=sum_{d|n}mu(frac{n}{d})f(d))

性质

交换律(f*g=g*f)
结合律((f*g)*h=f*(g*h))
分配律((f*(g+h))(n)=(f*g)(n)+(f*h)(n))

一些函数

单位函数(epsilon(n)=[n=1])
幂指函数(Id_k(n)=n^k),当(k=1,Id(n)=n),当(k=0,Id_0(n)=1)
除数函数(sigma_k(n)=sum_{d|n}d^k),当(k=1,sigma(n))为n的因数和,当(k=0,sigma_0(n))为因数个数
欧拉函数(phi(n))
这四个函数都是积性函数
前两个为完全积性函数(f(a)f(b)=f(ab)),其中a,b不用满足互质

一些公式

根据定义((f*1)(n)=sum_{d|n}f(d))

  • ((Id_k(n)*1)(n)=sum_{d|n}Id_k(d)=sum_{d|n}d^k=sigma_k(n))
  • 根据((phi*1)(n)=sum_{d|n}phi(d))
    (n=p^m)(p为质数)
    (sum_{d|n}phi(d)=phi(1)+sum_{i=1}^mphi(p^i)=1+sum_{i=1}^m(p^i-p^{i-1})=p^m=n)
    (n=p_1^{m_1}···p_k^{m_k}=prod_{i=1}^kp_i^{m_i})
    由于((phi*1)(n))为积性函数
    ((phi*1)(n)=prod_{i=1}^k(phi*1)(p_i^{m_i})=n)
    所以公式为(phi*1=Id_1)
    根据前面所述的定理(phi=mu*Id)
  • ((epsilon*1)(n)=sum_{d|n}[d=1]=1)
    (epsilon=mu*1)

应用

杜教筛

快速求(M(n)=sum_{i=1}^nmu(i),(nleq 10^{11}))
(M(n)=1-sum_{i=2}^nM(lfloor frac{n}{i} floor))

证:
根据(epsilon=mu*1)
(1=sum_{i=1}^nepsilon(i)=sum_{i=1}^n(mu*1)(i)=sum_{i=1}^nsum_{d|i}mu(d)=sum_{i=1}^nM(lfloor frac{n}{i} floor))
((M(lfloor frac{n}{i} floor)由下图解释))
image
(M(n)=1-sum_{i=2}^nM(lfloor frac{n}{i} floor))

(ileq sqrt n,lfloor frac{n}{i} floor)显然只有(sqrt n)个取值
(i > sqrt n,lfloor frac{n}{i} floor<sqrt n)显然只有(sqrt n)个取值
对于固定的(lfloor frac{n}{i} floor)是一段连续的区间,区间范围([ lfloor frac{n}{lfloor frac{n}{i} floor+1 }+1 floor,lfloor frac{n}{lfloor frac{n}{i} floor } floor])
所以(M(n))可以用整出分块来求,时间复杂度(T(n)=sum_{i=2}^nT(frac{n}{i})=O(n^{frac{3}{4}}))
如果先预处理(n^{frac{2}{3}}),则时间复杂度为(O(n^{frac{2}{3}}))
具体证明见唐老师的blog

原文地址:https://www.cnblogs.com/hh--boke/p/15510141.html