莫比乌斯反演
前置知识
\(\varphi(n),\mu(n),I(n)=1,\varepsilon(n)=[n=1],id(n)=n\),数论分块。
狄利克雷卷积
数论函数 \(f,g\) 的狄利克雷卷积 \(f*g\) 定义如下:
\[(f*g)(n)=\sum_{d|n}f(d)g\left(\frac nd\right)
\]
卷积有交换律,结合律,分配律。
三个重要恒等式:
- \(\mu*I=\varepsilon\)。
- \(\varphi*I=id\)。
- \(\mu*id=\varphi\)。
莫比乌斯反演
定理:若 \(g=f*I\),则 \(f=\mu*g\)。证明:
\[g=f*I\Rightarrow \mu*g=f*I*\mu=f*\varepsilon=f
\]
求和变形
技巧:
- 增加枚举变量。
- 交换枚举变量。
- 删除无用变量。
- 换元。
例题
- \(\sum_{i=1}^n\sum_{j=1}^n\gcd(i,j)\)
\[\begin{aligned}
&\sum_{i=1}^n\sum_{j=1}^n\gcd(i,j)\\
=&\sum_{i=1}^n\sum_{j=1}^n id(\gcd(i,j))\\
=&\sum_{i=1}^n\sum_{j=1}^n\sum_{d\mid\gcd(i,j)}\varphi(d)I\left(\frac{\gcd(i,j)}d\right)\\
=&\sum_{i=1}^n\sum_{j=1}^n\sum_{d\mid\gcd(i,j)}\varphi(d)\\
=&\sum_{d=1}^n\varphi(d)\sum_{i=1}^n\sum_{j=1}^n[d\mid\gcd(i,j)]\\
=&\sum_{d=1}^n\varphi(d)\sum_{i=1}^n\sum_{j=1}^n[i=k_1d][j=k_2d]\\
=&\sum_{d=1}^n\varphi(d)\left(\left\lfloor\frac nd\right\rfloor\right)^2
\end{aligned}
\]
数论分块即可。
- \(\sum_{i=1}^n\sum_{j=1}^n\operatorname{lcm}(i,j)\)
\[\begin{aligned}
&\sum_{i=1}^n\sum_{j=1}^n\operatorname{lcm}(i,j)\\
=&\sum_{i=1}^n\sum_{j=1}^n\frac{ij}{\gcd(i,j)}\\
=&\sum_{i=1}^n\sum_{j=1}^n\sum_{d=1}^n[\gcd(i,j)=d]\frac{ij}d\\
=&\sum_{d=1}^n\sum_{i=1}^n\sum_{j=1}^n[\gcd(i,j)=d]\frac{ij}d\\
=&\sum_{d=1}^n\sum_{i'=1}^{\left\lfloor \frac nd\right\rfloor}\sum_{j'=1}^{\left\lfloor \frac nd\right\rfloor}[\gcd(i'd,j'd)=d]\frac{i'd\cdot j'd}d\\
=&\sum_{d=1}^n d\sum_{i'=1}^{\left\lfloor \frac nd\right\rfloor}\sum_{j'=1}^{\left\lfloor \frac nd\right\rfloor}[\gcd(i',j')=1]i'j'
\end{aligned}
\]
把后边两个 \(\sum\) 单独拎出来:
\[\begin{aligned}
f(n)=&\sum_{i=1}^n\sum_{j=1}^n[\gcd(i,j)=1]ij\\
=&\sum_{i=1}^n\sum_{j=1}^n\varepsilon(\gcd(i,j))ij\\
=&\sum_{i=1}^n\sum_{j=1}^n ij\sum_{d\mid\gcd(i,j)}\mu(d)I\left(\frac{\gcd(i,j)}d\right)\\
=&\sum_{i=1}^n\sum_{j=1}^n ij\sum_{d\mid\gcd(i,j)}\mu(d)\\
=&\sum_{d=1}^n\mu(d)\sum_{i'=1}^{\left\lfloor\frac nd\right\rfloor}\sum_{j'=1}^{\left\lfloor\frac nd\right\rfloor}i'd\cdot j'd\\
=&\sum_{d=1}^n\mu(d)\cdot d^2\sum_{i'=1}^{\left\lfloor\frac nd\right\rfloor}\sum_{j'=1}^{\left\lfloor\frac nd\right\rfloor}i'j'\\
=&\sum_{d=1}^n\mu(d)\cdot d^2\sum_{i'=1}^{\left\lfloor\frac nd\right\rfloor}i'\sum_{j'=1}^{\left\lfloor\frac nd\right\rfloor}j'\\
=&\sum_{d=1}^n\mu(d)\cdot d^2\cdot g\left(\left\lfloor\frac nd\right\rfloor\right)^2
\end{aligned}
\]
其中:
\[g(n)=\frac{n(n+1)}2
\]
这个 \(f(n)\) 可以数论分块求解。
最后,我们有:
\[\begin{aligned}
&\sum_{i=1}^n\sum_{j=1}^n\operatorname{lcm}(i,j)\\
=&\sum_{d=1}^n d\cdot f\left(\left\lfloor\frac nd\right\rfloor\right)
\end{aligned}
\]
数论分块即可。
- \(\sum_{i=1}^n\operatorname{lcm}(i,n)\)
其实推这个式子有比较简单的方法,不过我还是用了最暴力的方法(跳了一些步):
\[\begin{aligned}
&\sum_{i=1}^n\operatorname{lcm}(i,n)\\
=&n\sum_{i=1}^n\frac{i}{\gcd(i,n)}\\
=&n\sum_{d\mid n}\sum_{i=1}^n[\gcd(i,n)=d]\frac id\\
=&n\sum_{d\mid n}\sum_{i=1}^{\frac nd}\left[\gcd\left(i,\frac nd\right)=1\right]i
\end{aligned}
\]
同样把后面那个 \(\sum\) 拿出来:
\[\begin{aligned}
f(n)=&\sum_{i=1}^n[\gcd(i,n)=1]i\\
=&\sum_{i=1}^n\sum_{d\mid\gcd(i,n)}i\cdot\mu(d)\\
=&\sum_{d\mid n}\sum_{i=1}^{\frac nd}i\cdot d\cdot \mu(d)\\
=&\sum_{d\mid n}d\cdot \mu(d)\sum_{i=1}^{\frac nd}i\\
=&\sum_{d\mid n}d\cdot \mu(d)\cdot \frac{\frac nd\left(\frac nd+1\right)}2\\
=&\frac n2\sum_{d\mid n}\mu(d)\left(\frac nd+1\right)\\
=&\frac n2\sum_{d\mid n}\mu(d)id\left(\frac nd\right)+\sum_{d\mid n}\mu(d)I\left(\frac nd\right)\\
=&\frac n2(\varphi(n)+\varepsilon(n))
\end{aligned}
\]
注意,最后几步是在逆用反演公式!
代回原式:
\[\begin{aligned}
&\sum_{i=1}^n\operatorname{lcm}(i,n)\\
=&n\sum_{d\mid n}f\left(\frac nd\right)\\
=&n\sum_{d\mid n}f(d)\\
=&\frac n2\sum_{d\mid n}d(\varphi(d)+\varepsilon(d))
\end{aligned}
\]
当 \(d=1\) 时,\(\varepsilon(d)=1\),\(\varphi(d)=1\),其他时候 \(\varepsilon(d)=0\),于是最终的答案是:
\[\frac n2\sum_{d\mid n,d\ne 1}d\varphi(d)+\frac n2
\]
本文来自博客园,作者:registerGen,转载请注明原文链接:https://www.cnblogs.com/registergen/p/mobius.html

浙公网安备 33010602011771号