zoukankan      html  css  js  c++  java
  • 数学杂谈#1

    数论函数

    我们定义 (f:mathbb{N_+} ightarrow mathbb{C}) 的函数 (f) 为数论函数;不过,在 OI 中更为常见的是 (f:mathbb{N_+} ightarrow mathbb{Z}) 类型的函数。

    下面是一些常见的数论函数:

    • (varepsilon(n)) ,定义为 (varepsilon(n)=[n=1])
    • (I(n)) , 定义为 (I(n)=1)
    • (id(n)) ,定义为 (id(n)=n)
    • (varphi(n)) ,定义为 (varphi(n)=sum_{i=1}^n[(i,n)=1])
    • (mu(n)),定义为 (mu(n)=egin{cases}1&n=1\(-1)^k&n 无平方因子且有 k 个质因子\0&otherwiseend{cases})
    • (sigma_k(n)) ,定义为 (sigma_k(n)=sum_{d|n}d^k)
    • 题目中定义的一大堆

    Dirichlet 卷积

    Dirichlet 卷积是定义在数论函数上的运算。对于数论函数 (f)(g) ,定义 (f)(g) 的 Dirichlet 卷积如下:

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

    经常我们也会用 ((f*g)(n)) 代替 (h(n)) 。更多的时候我们直接简记为 (f*g)

    Dirichlet 卷积满足以下性质:

    • 交换律:对于数论函数 (f)(g) ,满足 (f*g=g*f)

    • 结合律:对于数论函数 (f,g)(h) ,满足 (f*(g*h)=(f*g)*h)

      证明:

      [egin{aligned} f*(g*h) &=f*(h*g)\ &=sum_{d|n}f(d)sum_{p|frac n d}h(p)g(frac{n}{dp})\ &=sum_{d|n}sum_{dp|n}f(d)h(p)g(frac n {dp})\ &=sum_{p|n}sum_{d|frac n p}f(d)h(p)g(frac n {dp})\ &=sum_{p|n}h(p)sum_{d|frac n p}f(d)g(frac n {dp})\ &=h*(f*g)=(f*g)*h end{aligned} ]

    • Dirichlet 卷积的单位元为 (varepsilon)

    以下给出一些有趣的常见的卷积结果:

    • (mu*I=varepsilon)

      证明:

      • (n=1) 时, ((mu*I)(1)=mu(1)=1=varepsilon(1))

      • (n ot=1) 时, ((mu*I)(n)=sum_{d|n}mu(d))

        此时设 (omega)(n) 的不同质因子个数,可以发现 ((mu*I)(n)=sum_{k=0}^{omega}inom{omega}{i}(-1)^k=(1-1)^omega=0=varepsilon(n))

    • (varphi*I=id)

      证明:

      对于序列 (frac 0 n,frac 1 n,frac 2 n,frac 3 n,...,frac {n-2} n,frac{n-1}n) ,对每个分数进行约分;这里我们对约分的定义为分子分母同时除以 (gcd) ,因此 (frac{0}{n}) 应该约为 (frac{0}{1})

      考察最终结果,分母为 (k) 的分数恰好有 (varphi(k)) 个。而可能的分母都是 (n) 的因子,因此有 (sum_{d|n}varphi(d)=n) ,即 (varphi*I=id)

    • (mu*id=varphi)

      证明:

      [egin{aligned} varphi*I&=id\ varphi*I*mu&=id*mu\ varphi&=mu*id end{aligned} ]

    • 若定义 ((id_k)(n)=n^k) ,则有 (I*id_k=sigma_k)

    • 若定义 ((id_k)(n)=n^k) ,则有 (sigma_k*I=id_k)

      证明:类似于第 3 条的证明过程,在此略去。

    特殊数论函数

    这里我们讨论数论函数的性质:积性与完全积性

    • 对于数论函数 (f) ,如果对于任意的 (a,bin mathbb{N_+},(a,b)=1) ,都满足 (f(ab)=f(a)f(b)) ,则称 (f)积性函数
    • 对于数论函数 (f) ,如果对于任意的 (a,bin mathbb{N_+}) ,都满足 (f(ab)=f(a)f(b)) ,则称 (f)完全积性函数

    在数论函数的例子中,很容易看出它们都是积性函数;其中 (varepsilon,I,id) 都是完全积性函数,而 (varphi,mu,sigma_k) 都仅为积性函数。

    更特别地,积性函数的积性在运算中是可以 " 保持 " 的。具体而言:

    • 对于积性函数 (f)(kin mathbb{Z}) ,设 (h(n)=(f(n))^k) ,则 (h) 是积性函数;

    • 对于积性函数 (f)(kin mathbb{N_+}) ,设 (h(n)=f(n^k)) ,则 (h) 是积性函数;

    • 对于积性函数 (f)(g) ,设 (h(n)=f(n)g(n)) ,则 (h) 是积性函数;

    • 对于积性函数 (f)(g) ,设 (h=f*g) ,则 (h) 是积性函数;

      证明:对于 (a,bin mathbb{N_+},(a,b)=1) ,有:

      [egin{aligned} h(ab) &=sum_{d|ab}f(d)g(frac {ab}d)\ &=sum_{d_1|a}sum_{d_2|b}f(d_1d_2)g(frac{ab}{d_1d_2})\ &=sum_{d_1|a}f(d_1)g(frac{a}{d_1})sum_{d_2|b}f(d_2)g(frac b{d_2})\ &=h(a)h(b) end{aligned} ]

    Mobius 反演

    只要你细心观察,你就会发现 (mu) 的定义就很像一个容斥系数。

    Dirichlet 卷积中的一些结论也印证了这一点。事实上,有如下结论成立:

    • 对于数论函数 (f)(g)(f(n)=sum_{d|n}g(d)Leftrightarrow g(n)=sum_{d|n}f(d)mu(frac n d))

      证明:

      • 左至右: (f=g*IRightarrow f*mu=g*(I*mu)Rightarrow f*mu=g)
      • 右至左: (g=f*muRightarrow g*I=f*(mu*I)Rightarrow g*I=f)
    • 对于数论函数 (f)(g)(f(n)=sum_{n|d}g(d)Leftrightarrow g(n)=sum_{n|d}f(d)mu(frac{d}{n}))

      证明:

      • 左至右:

        [egin{aligned} sum_{n|d}f(d)mu(frac n d) &=sum_{n|d}mu(frac n d)sum_{d|k}g(k)\ &=sum_{n|k}g(k)sum_{d'|frac{k}{n}}mu(d')\ &=g(n) end{aligned} ]

      • 右至左:

        [egin{aligned} sum_{n|d}g(d) &=sum_{n|d}sum_{d|k}f(k)mu(frac k d)\ &=sum_{n|k}f(k)sum_{d'|frac k n}mu(d')\ &=f(n) end{aligned} ]

  • 相关阅读:
    Hammer.js手势库 安卓4.0.4上的问题
    大前端晋级系列之-单一职责原则
    大前端晋级系列之-策略模式
    为什么MVC不是一种设计模式
    解读sencha touch移动框架的核心架构(二)
    解读sencha touch移动框架的核心架构(一)
    大型 JavaScript 应用架构中的模式
    jQuery2.0.3源码分析系列之(29) 窗口尺寸
    jQuery2.0.3源码分析系列(28) 元素大小
    开放封闭原则(Open Closed Principle)
  • 原文地址:https://www.cnblogs.com/crashed/p/14356192.html
Copyright © 2011-2022 走看看