莫比乌斯反演小结


感觉不是很难()


用途

求gcd,lcm,因数个数,因数和有关的求和问题。


前置芝士

莫比乌斯函数

这个自己百度
重要的只有\([n==1]=\sum_{d|n}\mu(d)\)

欧拉函数

同上。
\(\phi(n)=\sum_{d|n}d\mu(\dfrac{n}{d})\),证明:

\[\begin{array}{l} \phi(n)=\sum_{i=1}^{n}[gcd(i,n)=1]\\ =\sum_{i=1}^{n}\sum_{d|gcd(i,n)}\mu(d)\\ =\sum_{d|n}\mu(d)\sum_{i=1}^{\frac{n}{d}}\\ =\sum_{d|n}\dfrac{n}{d}\mu(d)\\ =\sum_{d|n}d\mu(\dfrac{n}{d}) \end{array} \]

线性筛&整除分块

同上。


规范的写法

\(f(n)=\sum_{d|n}g(d)\)
那么\(g(n)=\sum_{d|n}\mu(d)f(\dfrac{n}{d})\)

这个证明直接硬带即可。

\(\sum_{d|n}\mu(d)f(\dfrac{n}{d})=\sum_{d|n}\mu(d)\sum_{k|\frac{n}{d}}g(k)=\sum_{k|n}g(k)\sum_{d|\frac{n}{k}}\mu(d)=\sum_{k|n}g(k)[\dfrac{n}{k}=1]=\sum_{k|n}g(k)[k=n]=g(n)\)

亦可使用狄利克雷卷积证明,这里不展开。


实际的用法

规范写法太麻烦了,实际上我们一般不会真的写出这个过程,只是交换求和顺序而已。
实际上,反演只是简化和式计算的方式而已,这点可以看看具体数学。
举几个例子吧。(不包含杜教筛)

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

\[\begin{array}{l} \sum_{i=1}^{n}\sum_{j=1}^{n}gcd(i,j)\\ =\sum_{d=1}^{n}\sum_{i=1}^{\lfloor\frac{n}{d}\rfloor}\sum_{j=1}^{\lfloor\frac{n}{d}\rfloor}d [gcd(i,j)=1]\\ =\sum_{d=1}^{n}d\sum_{i=1}^{\lfloor\frac{n}{d}\rfloor}\sum_{j=1}^{\lfloor\frac{n}{d}\rfloor}\sum_{k|gcd(i,j)}\mu(k)\\ =\sum_{d=1}^{n}d\sum_{k=1}^{\lfloor\frac{n}{d}\rfloor}\mu(k)\sum_{i=1}^{\lfloor\frac{n}{dk}\rfloor}\sum_{j=1}^{\lfloor\frac{n}{dk}\rfloor}\\ =\sum_{d=1}^{n}d\sum_{k=1}^{\lfloor\frac{n}{d}\rfloor}\mu(k)\lfloor\frac{n}{dk}\rfloor^2\\ =\sum_{T=1}^{n}\lfloor\frac{n}{T}\rfloor^2\sum_{d|T}d\ \mu(\frac{T}{d})\\ =\sum_{T=1}^{n}\lfloor\frac{n}{T}\rfloor^2\phi(T) \end{array} \]

其中令\(T=dk\)

2.\(\sum_{i=1}^{n}\sum_{j=1}^{n}lcm(i,j)\)

\[\begin{array}{l} \sum_{i=1}^{n}\sum_{j=1}^{n}lcm(i,j)\\ =\sum_{d=1}^{n}\sum_{i=1}^{\lfloor\frac{n}{d}\rfloor}\sum_{j=1}^{\lfloor\frac{n}{d}\rfloor}dij [gcd(i,j)=1]\\ =\sum_{d=1}^{n}d\sum_{i=1}^{\lfloor\frac{n}{d}\rfloor}i\sum_{j=1}^{\lfloor\frac{n}{d}\rfloor}j\sum_{k|gcd(i,j)}\mu(k)\\ =\sum_{d=1}^{n}d\sum_{k=1}^{\lfloor\frac{n}{d}\rfloor}\mu(k)\sum_{i=1}^{\lfloor\frac{n}{dk}\rfloor}i\sum_{j=1}^{\lfloor\frac{n}{dk}\rfloor}j\\ =\sum_{d=1}^{n}d\sum_{k=1}^{\lfloor\frac{n}{d}\rfloor}\mu(k)k^2S_{\lfloor\frac{n}{dk}\rfloor}^2\\ =\sum_{T=1}^{n}T\ S_{\lfloor\frac{n}{T}\rfloor}^2\sum_{k|T}k\ \mu(k)\\ \end{array} \]

其中\(S_i=\sum_{i=1}^{n}i\)
注意别漏了\(k^2\)
\(f(n)=\sum_{k|n}k\mu(k)\)
可以直接\(O(nlogn)\)枚举倍数,但是此类积性函数的积也可以直接筛出。
有时候需要辅助数组。使用辅助数组甚至可以筛出某些非积性函数。

3.\(\sum_{i=1}^{n}\sum_{j=1}^{n}d(ij)\)

首先有引理\(d(ij)=\sum_{x|i}\sum_{y|j}[gcd(x,y)=1]\)
简单证明:
\(p_k(k\in[1,n])\)\(ij\) 的质因子。

\(i=\prod_{k=1}^{n}p_k^{a_k},j=\prod_{k=1}^{n}p_k^{b_k}\)

那么对于任意\(u|ij\),有\(u=\prod_{k=1}^{n}p_k^{c_k}\ (p_i\in prime,a_k,b_k,c_k\in N,c_k\leq a_k+b_k)\)

\(s_1,s_2\)分别为\(u\)对应的\(x,y\),初始为1。
对于质因子\(p_k\),若\(c_k\leq a_k\),则\(s_1\)乘上\(p_k^{a_k}\),否则\(s_2\)乘上\(p_k^{c_k-a_k}\)
注意到\(s_1,s_2\)始终互质,且我们对u和x,y建立了一一映射,证毕。

\[\begin{array}{l} \sum_{i=1}^{n}\sum_{j=1}^{n}d(ij)\\ =\sum_{i=1}^{n}\sum_{j=1}^{n}\sum_{x|i}\sum_{y|j}[gcd(x,y)=1]\\ =\sum_{x=1}^{n}\sum_{y=1}^{n}\sum_{i=1}^{\lfloor\frac{n}{x}\rfloor}\sum_{j=1}^{\lfloor\frac{n}{y}\rfloor}[gcd(x,y)=1]\\ =\sum_{x=1}^{n}\sum_{y=1}^{n}\sum_{k|gcd(x,y)}\mu(k)\lfloor\dfrac{n}{x}\rfloor\lfloor\dfrac{n}{y}\rfloor\\ =\sum_{k=1}^{n}\mu(k)\sum_{x=1}^{\lfloor\frac{n}{k}\rfloor}\lfloor\dfrac{n}{kx}\rfloor\sum_{y=1}^{\lfloor\frac{n}{k}\rfloor}\lfloor\dfrac{n}{ky}\rfloor\\ =\sum_{k=1}^{n}\mu(k) (\sum_{x=1}^{\lfloor\frac{n}{k}\rfloor}\lfloor\dfrac{\lfloor\frac{n}{k}\rfloor}{x}\rfloor) (\sum_{y=1}^{\lfloor\frac{n}{k}\rfloor}\lfloor\dfrac{\lfloor\frac{n}{k}\rfloor}{y}\rfloor)\\ =\sum_{k=1}^{n}\mu(k)f(\lfloor\dfrac{n}{k}\rfloor)^2 \end{array} \]

其中\(f(n)=\sum_{i=1}^{n}\lfloor\dfrac{n}{i}\rfloor\)

4.