莫比乌斯反演 学习笔记
供复习,没证明。
要开始这个知识点,首先要了解一些 数论函数。
- 数论函数: 定义域为正整数,值域为复数的一个子集的函数。
一、基本数论函数及性质
-
元函数 \(\epsilon(n)=[n=1]\)
-
\(1\) 函数 \(1(n)=1\)
-
除数函数 \(\sigma_k(n)=p^k\),其中 \(p\) 为 \(n\) 的约数。
特别地,\(\sigma_0(n)\) 代表 \(n\) 的约数个数,\(\sigma_1(n)\) 代表 \(n\) 的约数个数和。
-
幂函数 \({I}_k(n)= n^k\)
特别地,\(I_0(n)= 1\) ,\(I_1(n)= n\)。\(I_1\) 一般可以简写为 \(I\) 。
-
欧拉函数 \(\varphi(n)\) 代表 \([1,n]\) 内与 \(n\) 互质的正整数个数。
-
莫比乌斯函数
\[\mu(n)\begin{cases} 1 \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ n = 1\\ (-1)^k \ \ \ \ \ \ \ \ \ n = p_1p_2p_3...p_k\\ 0 \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ otherwise \end{cases}\]其中 \(p_1p_2...p_k\) 为互不相同的质数。
这六个数论函数会比较常用。他们都有一个共同的性质:积性函数。
-
积性函数 对于一个数论函数,若 \(a,b\) 互质,如果 \(f(a)f(b) = f(ab)\) 成立,则称 \(f\) 是积性函数。
-
完全积性函数 对于一个数论函数,如果 \(f(a)f(b) = f(ab)\) 成立,则称 \(f\) 是积性函数(即不要求 \(a,b\) 互质)。
二、狄利克雷卷积
- 定义
两个数论函数 \(f,g\) 的 卷积 为 \(h\) ,满足:
记作 \(h = f * g\)
- 常用的卷积(特别是前三个)
-
\(I =\varphi * 1\),即 \(\sum_{i\mid n}\varphi(i)=n\)
-
\(\epsilon =\mu * 1\),即 \(\sum_{i\mid n}\mu(i)=[n=1]\)
-
\(\varphi =\mu * I\),即 \(\sum_{i\mid n}\mu(i) \times i = \varphi(n)\)
-
\(I * 1 = \sigma_1\)
-
\(1 * 1 = \sigma_0\)
- 性质
-
若两个数论函数 \(f,g\) 为积性函数,则其卷积 \(h\) 也是积性函数。
-
卷积满足 交换律 和 结合律 。即 \(f * g = g * f\) 以及 \(f*(g*h)=(f*g)*h\)
-
任何数论函数卷上元函数均为其本身,即 \(f * \epsilon = f\) 。
三、莫比乌斯反演
开始之前,先复习一个内容:
-
整除分块
求一个形如 \(\begin{aligned}\sum_{i=1}^n \lfloor \frac ni \rfloor\end{aligned}\) 的值,我们需要 \(O(n)\) 枚举吗?
显然不用。原因是有大量的 \(\lfloor \frac ni \rfloor\) 是重复的。比如说,当 \(n = 10\) ,\(i = 6,7,8,9,10\) 的时候 \(\lfloor \frac ni \rfloor\) 都是一样的。
所以我们在枚举 \(i\) 的时候,不用每次都写
i++,而是可以令next_i=n/(n/i)+1,得到的next_i就是下一次的i。这样的时间复杂度为 \(O(\sqrt{n})\)。简单证明:
当 \(1 ≤ i ≤\sqrt{n}\) , 显然 \(\lfloor \frac ni \rfloor\) 最多只有 $ \sqrt{n}$ 种取值。
当 \(\sqrt{n} ≤ i ≤ n\) , 显然 \(1 ≤ \lfloor \frac ni \rfloor ≤ \sqrt{n}\) ,最多也只有 $ \sqrt{n}$ 种取值。
每次跳到下一个
i(即next_i),易知 \(\lfloor \frac ni \rfloor\) 都会 +1,故得证。 -
莫比乌斯反演定理 若 \(g = f * 1\) ,则 \(f = g * \mu\) 。
-
略证:
因为 \(g = f * 1\)
故 \(f = f * \epsilon = f * 1 * \mu = g * \mu\)
即证。
-
-
莫比乌斯反演的变形 \(g(n)=\sum_{n\mid d}f(d)\) 等价于 \(f(n)=\sum_{n\mid d}\mu\left(\frac dn\right)\ g(d)\)
记忆:即将 整除 和 分数 的地方将 \(n,d\) 交换了。
-
反演的意义
将一些式子通过 莫比乌斯反演定理 变形,可以对式子进行线性的初始化(e.g 线性欧拉筛 / 线性筛 \(\mu\) ),将复杂度降至 \(O(n)\)。
进一步地,通过 整除分块 , 能够把复杂度进一步降低到 \(O(\sqrt{n})\)。
四、小结和提示
-
看到 \([\gcd = k]\) 的形式,要第一时间想到莫比乌斯反演。
-
没有思路时,考虑交换求和顺序。

浙公网安备 33010602011771号