[数论]莫比乌斯反演3
索引
实用技巧
1、
\[[gcd(i,j)=1]=\sum_{d|gcd(i,j)}\mu(d)
\]
证明
根据性质1,其实就是莫比乌斯函数的定义
莫比乌斯函数的性质1
\[\sum_{d|n}\mu(d)=[n=1]
\]
那么我们将gcd(i,j)带入n即可得到
\[\sum_{d|gcd(i,j)}\mu(d)=[gcd(i,j)=1]
\]
证毕。
2、
求下式
\[\sum_{j=1}^{n}\sum_{j=1}^{m}gcd(i,j),(n<m)
\]
因为
\[\sum_{d|n}\varphi(d)=n
\]
我们按照套路将上式的要求的式子的\(n\)替换为\(gcd(i,j)\)
即原式变换为:
\[\sum_{i=1}^{n}\sum_{j=1}^{m}\sum_{d|gcd(i,j)}\varphi(d)
\]
按照套路将d分类得
\[\sum_{d=1}^{n}\varphi(d)\times\lfloor\frac{n}{d}\rfloor\times\lfloor\frac{m}{d}\rfloor
\]
结束。
3、
这是套路3(见下)的简化版
将一般求和式转为枚举式
例如下式:
\[\sum_{i=1}^{\lfloor\frac{a}{d}\rfloor}\sum_{j=1}^{\lfloor\frac{b}{d}\rfloor}\sum_{x|gcd(i,j)}\mu(x)
\]
可以转换为:
\[\sum_{i=1}^{\lfloor\frac{a}{d}\rfloor}\sum_{j=1}^{\lfloor\frac{b}{d}\rfloor}\sum_{x=1}^{\lfloor\frac{a}{d}\rfloor}\mu(x)\times[x|gcd(i,j)]
\]
套路
1、若我们想要求
\[\sum_{i=1}^n\sum_{j=1}^m[gcd(i,j)=k]
\]
我们不妨将其转换为:
\[\sum_{i=1}^{\lfloor\frac{n}{k}\rfloor}\sum_{j=1}^{\lfloor\frac{m}{k}\rfloor}[gcd(i,j)=1]
\]
2、当反演公式中大量出现两个数的乘积时,珂以换元将它变为一个整体
例如:
\[\sum_{p\in\text{素数集合},p|k}\ \ \ \ \ \sum_{d=1}^{\lfloor\frac{n}{p}\rfloor}\mu(d)\lfloor\frac{n}{pd}\rfloor\lfloor\frac{m}{pd}\rfloor
\]
令\(k=pd\),我们将它变换为
\[\sum_{p\in\text{素数集合},p|k}\ \ \ \ \ \sum_{d=1}^{\lfloor\frac{n}{p}\rfloor}\mu(\frac{k}{p})\lfloor\frac{n}{k}\rfloor\lfloor\frac{m}{k}\rfloor
\]
变换完成
这样做好处是便于优化
3、枚举一个新的变量以简化求和公式
例如
\[\sum_{k=1}^{n}\sum_{i=1}^{\lfloor\frac{n}{k}\rfloor}\sum_{j=1}^{\lfloor\frac{m}{k}\rfloor}\sum_{d|gcd(i,j)}\mu(d)\ \ \ \ \ (k\in\text{素数集合})
\]
我们枚举d取代多余的\(\sum\)
简单来说用枚举\(d\)来取代枚举\(i,j\)
于是式子变成了
\[\sum_{k=1}^{n}\sum_{i=d}^{\lfloor\frac{n}{k}\rfloor}\mu(d)\times\lfloor\frac{n}{kd}\rfloor\times\lfloor\frac{m}{kd}\rfloor\ \ \ \ \ (k\in\text{素数集合})
\]
参考资料
莫比乌斯反演-让我们从基础开始 作者:[中]·An_account
莫比乌斯反演-从莫比乌斯到欧拉 作者:[中]·An_account