狄利克雷生成函数

对于无穷序列 \(f_1,f_2,...\) ,定义其狄利克雷生成函数为:

\[\tilde{F}(x)=\sum_{i\ge1}\frac{f_i}{i^x} \]

(全文都是以 DGF 为基础)

如果序列 \(f\) 满足积性:\(\forall i\perp j,f_{ij}=f_if_j\) ,那么其 DGF 可以有质数幂处的取值表示

\[F(x)=\prod_{p\in P}(1+\frac{f_p}{p^x}+\frac{f_{p^2}}{p^{2x}}+...) \]

对于两个序列 \(f,g\) ,其 DGF 之积对应的是两者的狄利克雷卷积序列的 DGF

\[F(x)G(x)=\sum_{i}\sum_j\frac{f_ig_j}{(ij)^x}=\sum_i\frac{1}{i^x}\sum_{d|i}f_dg_{\frac{i}{d}} \]

常见积性函数的 DGF

黎曼函数

  • 序列 \([1,1,...]\) 的 DGF 是 \(\sum_{i \ge 1 }\frac{1}{i^x}=\zeta(x)\)

  • 由于满足积性,因此可以得到 \([1,1,...]\) 的 DGF 的另一种形式:

\[\zeta(x)=\prod_{p\in P} (1+\frac{1}{p^x}+\frac{1}{p^{2x}}+...)=\prod_{p\in P}\frac{1}{1-p^{-x}} \]

莫比乌斯函数

  • 对于莫比乌斯函数 \(\mu\),它的 DGF 定义为

\[M(x)=\prod_{p\in P}(1-\frac{1}{p^x})=\prod_{p\in P} (1-p^{-x}) \]

  • \(M(x)\) 在 DGF 下是全 1 序列的逆元,那么 \(M(x)\zeta(x)=1\)

欧拉函数

  • 它的 DGF 定义为

\[\Phi(x)=\prod_{p\in P}(1+\frac{p-1}{p^x}+\frac{p^2-p}{p^{2x}}+...)=\prod_{p\in P}\frac{1-p^{-x}}{1-p^{-x+1}} \]

  • 那么可以发现 \(\Phi(x)=\frac{\zeta(x-1)}{\zeta{x}}\)

幂函数

  • 对于 \(I_k(n)=n^k\) ,它的 DGF 的定义为

\[I_k(x)=\prod_{p\in P}(1+\frac{p^k}{p^x}+\frac{p^{2k}}{p^{2x}}+...)=\prod_{p\in P}\frac{1}{1-p^{k-x}}=\prod_{p\in P}\zeta(x-k) \]

  • 根据定义容易证明 \(\varphi(x)*1=I\) ,因为 \(\Phi(x)\zeta(x)=\zeta(x-1)=I\)

其他函数

  • 对于约数幂函数 \(\sigma_k(n)=\sum_{d|n} d^k\) ,它的狄利克雷卷积的形式:\(S(x)=\zeta(x-k)\zeta(x)\)

  • 对于 \(u(n)=|\mu(n)|\) (无平方因子数),它的 DGF 为 \(U(x)=\prod_{p\in P}(1+p^{-x})=\frac{\zeta(x)}{\zeta(2x)}\)

积性函数的逆元仍然是积性函数

Dirichlet 卷积

定义

  • 对于两个数论函数 \(f(x)\)\(g(x)\) ,则它们的狄利克雷卷积得到的结果 \(h(x)\) 定义为:

\[h(x)=\sum_{d|x}f(d)g(\frac{n}{d})=\sum_{ab=x}f(a)g(b) \]

  • 上式可以简记为 \(h=f*g\)

  • 两个 DGF 的积对应两者的狄利克雷卷积的狄利克雷生成函数

\[F(x)G(x)=\sum_i\sum_j \frac{f_ig_j}{(ij)^x}=\sum_i \frac{1}{i^x}\sum_{d|i}f_d g_{i/d} \]

性质

  • 交换律

  • 结合律

  • 分配律

  • 等式的性质:\(f=g\) 的充要条件是 \(f*h=g*h\) ,其中数论函数 \(h(1)\ne 0\)

单位元

单位函数 \(\varepsilon\) 是 Dirichlet 卷积运算中的单位元,即对于任何数论函数 \(f\) ,都有 $f*\varepsilon=f $

单位元在卷积运算中不是常函数,但是在狄利克雷生成函数中等价于常数 1

卷积运算中数论函数常函数 1 ,在狄利克雷生成函数中等价于黎曼函数 \(\zeta\)

逆元

对于任何一个满足 \(f(1)\ne 0\) 的数论函数,如果有另一个数论函数 \(g(x)\) 满足 \(f*g=\varepsilon\)

,则 $ g(x)$ 为 \(f(x)\) 的逆元,由 等式的性质 可知,逆元唯一

卷积运算中的逆元,相当于狄利克雷生成函数中的倒数运算

  • 容易构造出 \(g(x)\) 的表达式为:

\[g(x)=\frac{[x=1]-\sum_{d|x,d\ne 1} f(d)g(\frac{x}{d})}{f(1)} \]

  • 考虑将 \(g(x)f(1)=..\) .就知道为什么了

重要结论

  • 两个积性函数的狄利克雷卷积仍然是积性函数

  • 积性函数的逆元也是积性函数

\[\begin{aligned} \varepsilon=\mu*1\\ d=1*1\\ \sigma =\operatorname{id}*1\\ \varphi=\mu * \operatorname{id}\\ \operatorname{id}=\varphi*1 \end{aligned} \]

例题

LGP2257 YY GCD

  • 就是求 \(\sum_{i=1}^{i=n}\sum_{j=1}^{j=m} [\gcd(i,j)是素数]\)

  • 一个常见的想法是枚举 \(\gcd(i,j)\) ,这里提供另一种想法

  • 对于 \(\gcd(i,j)\) 有一个性质 \(\gcd(i,j)|i,\gcd(i,j)|j\)

  • 那么如果一个函数关于 \(\gcd(a,b)\) 的函数 \(f(\gcd(a,b))=\sum_{d|a}\sum_{d|b}g(d)\)

  • 假如这个 \(f\) 很好求,那么就可以预处理出 \(g\) ,然后将式子里面的 \(f\) 都换成 \(g\)

  • 这里的 \(f\) 显然是是否为质数,那么我们需要构造一个 \(g\) ,使得 \(f=g*1\) ,这样就能通过反演预处理出 \(g=\mu * f\)

  • 现在我们预处理出了 \(g\) ,那么原式就变成了 \(\sum_{i=1}^{i=n}\sum_{j=1}^{j=m}\sum_{d|i}\sum_{d|j} g(d)\)

  • 这个式子就很熟悉了,枚举 \(d\) 然后数论分块

简单题

  • \(\sum_{i=1}^n\sum_{j=1}^m \gcd(i,j)\)

  • \(T\leq 10^4,n,m\leq 10^6\) ,答案取模

  • 这次的 \(f=\operatorname{id}\) ,那么 \(g=\varphi\)

  • 那么就是求 \(\sum_{i=1}^n\sum_{j=1}^m \sum_{d|i}\sum_{d|j} \varphi(d)\)

  • 这个就是我们很熟悉的形式了

难题

  • (还是来凑数的题)

  • 给出数列 \(f_1...f_n\)

  • 每次问 \(\sum_{i=1}^n\sum_{j=1}^m f_{\gcd(i,j)}\)

  • 你是不是在想 \(\sum_{i=1}^n\sum_{j=1}^m f_{\sum_{d|i}\sum_{d|j}\varphi(d)}\)

  • 不不不,我们将整个 \(f_{\gcd(i,j)}\) 看成函数,那么构造 \(g=\mu *f\) ,这个东西可以直接通过定义来求

  • 那么就可以直接转换成 \(\sum_{i=1}^n\sum_{j=1}^m \sum_{d|a}\sum_{d|b} g(d)\)

  • 是不是突然发现这方法是真的好用!!

posted @ 2022-06-04 11:26  Kzos_017  阅读(191)  评论(0编辑  收藏  举报