[学习笔记] 狄利克雷卷积

1. 定义

两个数论函数 (f,g) 的狄利克雷卷积就是:

[(f*g)(n)=sum_{d|n}f(d)g(frac{n}{d}) ]

2. 性质

2.1. 交换律

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

2.2. 结合律

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

证明:

发现其实枚举的因子都是一样的,所以可以拓展到一个多函数的柿子:

[(f_1*f_2*...*f_n)(len)=sum_{d_1d_2...d_n=len} f_1(d_1)f_2(d_2)...f_n(d_n) ]

2.3. 分配律

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

证明:

[((f+g)*h)(n)=sum_{d_1d_2=n}f(d_1)h(d_2)+g(d_1)h(d_2) ]

2.4. 逆元

对于每个 (f(1) eq 0) 的函数 (f),都有 (f*g=epsilon)

证明:

定义

[g(n)=frac{1}{f(1)} left([n==1]-sum_{d|n,d eq1}f(d)g(frac{n}{d}) ight) ]

则有:

[f*g=sum_{d|n}f(d)g(frac{n}{d}) ]

[=f(1)g(n)+sum_{d|n,d eq1}f(d)g(frac{n}{d}) ]

[=[n==1]=epsilon ]

注:就是从 (f*g=epsilon) 来推。

3. 常用卷积

  • (f*epsilon=f)。显然只有 (d=n) 时才能贡献值,此时有 (f(n) imes 1)

  • (mu*1=epsilon)

    证明:

    [(mu*1)(n)=sum_{d|n}mu(d) ]

    • (n=1)。显然 (mu(1)=epsilon(1)=1)

    • (n eq1)。将 (n) 分解成 (p_1p_2...p_k),考虑除了 (1),只有质因子次数为 (1)(d) 对答案有贡献。枚举质因子个数 (r),显然符合条件的因子只有 (C_k^r) 个,(+1,-1) 就是对应的 (mu)

      [sum_{d|n}mu(d)=1-C_k^1+C_k^2...+(-1)^kC_k^k ]

      [=sum_{r=0}^k (-1)^rC_k^r ]

      由二项式定理得答案为 (0)

  • (1*1= ext d)。显然前式为 (sum_{d|n}1)我感觉这个看上去非常离谱。

  • ( ext{id}*1=sigma)

    证明:

    [( ext{id}*1)(n)=sum_{d|n}d=sigma(n) ]

  • (varphi*1= ext{id})

    证明:

    共乘 (mu),则等价于:

    [varphi= ext{id}*mu ]

    而,

    [varphi(n)=sum_{i=1}^n[gcd(i,n)=1] ]

    [=sum_{i=1}^nsum_{d|(i,n)}mu(d) ]

    [=sum_{d|n}mu(d) imes frac{n}{d} ]

    这里其实就是枚举 (d),那么 (d)(n) 以内的倍数个数可求,且倍数与 (n)(gcd)(d) 的倍数。

    [= ext{id}*mu ]

好,我们整理一下:

[mu stackrel{*1}{ ightarrow}epsilon stackrel{*1}{ ightarrow}1 stackrel{*1}{ ightarrow}sigma_0 ]

[varphi stackrel{*1}{ ightarrow} ext{id} stackrel{*1}{ ightarrow}sigma ]

反过来也可以,我们乘上 (mu)(即 (1) 的逆元)就行了。

原文地址:https://www.cnblogs.com/AWhiteWall/p/14408497.html