首页 > 其他分享 >莫比乌斯反演

莫比乌斯反演

时间:2024-02-01 09:33:05浏览次数:31  
标签:frac gcd 积性 乌斯 sum mu 反演 莫比 displaystyle

前置:积性函数与狄利克雷卷积整除分块

两个基础积性函数:\(\varepsilon(n)=[n=1]\),\(1(n)=1\)。

性质:\(\varepsilon*f=f\),\(f\) 是任意函数。

结论:\(f(n)\) 是积性函数 \(\iff g(n)=\displaystyle\sum_{d|n}f(d)\) 是积性。

证明

$\Rightarrow $ 方向:\(g=f*1\),狄利克雷卷积的性质在前置里面证了。

\(\Leftarrow\) 方向:归纳法。

  1. \(g(1)=f(1)\)。由于 \(g\) 积性,所以 \(g(1)=g(1)g(1)\),所以 \(g(1)=f(1)=1\)。

  2. 对于 \(n>1\),设 \(n=ab,\;(a,b)=1\)。归纳法知 \(f(1)\sim f(n-1)\) 是积性函数。

\[g(n)=g(ab)=\displaystyle\sum_{d|ab}f(d) \]

\[=\displaystyle\sum_{d_1|a}\sum_{d_2|b}f(d_1d_2) \]

注意一下,当 \(d_1=a,d_2=b\) 时,\(d_1d_2=n\),这里我们还不知道 \(f(n)\) 是积性的。所以我们要把这种情况拆出来单独考虑。

\[=\displaystyle(\sum_{d_1|a}\sum_{d_2|b}f(d_1)\cdot f(d_2))-f(a)f(b)+f(ab) \]

另外,有条件 \(g\) 是积性函数,所以

\[g(n)=g(a)g(b)=\displaystyle\sum_{d_1|a}f(d_1)\sum_{d_2|b}f(d_2)=\sum_{d_1|a}\sum_{d_2|b}f(d_1)f(d_2) \]

两个式子对比一下,得到 \(f(a)f(b)=f(ab)\),所以 \(f(n)\) 也是积性函数。归纳法证毕。


莫比乌斯函数:定义 \(\sum_{d|n}\mu (d)=\varepsilon(n)\) 的函数 \(\mu\) 称莫比乌斯函数。

性质1:\(\mu\) 是积性函数。

证明:在开头的前置里证明过这个结论。因为 \(\varepsilon\) 是积性函数,所以 \(\mu\) 也是积性函数。

性质2:设 \(p\) 为质数,则:

\[\mu(p^k)=\begin{cases} 1 & k=0\\ -1 & k=1\\ 0 & k>1 \end{cases}\]

证明:\(\sum_{i=0}^k\mu(p^i)=\varepsilon(p^k)\) 代入易得。

性质3:设 \(n\) 有 \(k\) 个质因子,则:

\[\mu(n)=\begin{cases} 1 & n=1\\ 0 & n\text{ 有质因子次数大于 $1$}\\ (-1)^k & \text{其他情况} \end{cases}\]

证明:用前两个性质易得。

性质4:\(\mu*1=\varepsilon\)。


莫比乌斯反演两个公式:

  1. \(g(n)=\sum_{d|n}f(n)\iff f=\mu*g\)。

  2. \(g(n)=\sum_{n|d}f(n)\iff f(n)=\sum_{n|d}\mu*f\),注意这个公式的 \(d\) 是一直变大直到 \(+\infty\) 的。

只证明一:由狄利克雷卷积的结合律、交换律:

\[g(n)=\sum_{d|n}f(n)=f*1 \]

所以

\[\mu*g=\mu*(f*1)=(\mu*1)*f=\varepsilon*f=f \]

显然这个等式从哪个方向都可以推出来。

【应用】

  1. 注意 \(\sum_{d|n}\mu(d)=\varepsilon(n)\)。也很有用。

ZAP-Queries

求 \(\displaystyle\sum_{i=1}^a\sum_{j=1}^b[gcd(a,b)=d]\),\(a,b,d\le 5e4\)。有多组测试数据,最多 \(5e4\) 组。

常用变形: \(gcd(a,b)=d\iff gcd(\frac{a}{d},\frac{b}{d})=1\),然后用 \(\sum_{d|n}\mu(d)=\varepsilon(gcd(\frac{a}{d},\frac{b}{d}))\) 转化。

回到正题。

\[\text{原式}=\displaystyle\sum_{i=1}^a\sum_{j=1}^b[d|i]\times [d|j]\times [gcd(\frac{i}{d},\frac{j}{d})=1] \]

既然 \(i,j\) 是 \(d\) 的倍数,我们不如直接枚举 \(i'=i/d,j'=j/d\)

\[=\displaystyle\sum_{i'=1}^{[\frac{a}{d}]}\sum_{j'=1}^{[\frac{b}{d}]}[gcd(i',j')=1] \]

莫比乌斯函数性质:\(\sum_{d|n}\mu(d)=\varepsilon(n)\)

\[=\displaystyle\sum_{i'=1}^{[\frac{a}{d}]}\sum_{j'=1}^{[\frac{b}{d}]}\sum_{k|gcd(i',j')}\mu(k) \]

\[=\displaystyle\sum_{i'=1}^{[\frac{a}{d}]}\sum_{j'=1}^{[\frac{b}{d}]}\sum_{k|i',k|j'}\mu(k) \]

同样,既然 \(i',j'\) 是 \(k\) 的倍数,不如先枚举 \(k\)。记 \(A=[\frac{a}{d}],B=[\frac{b}{d}]\)。

\[=\displaystyle\sum_{k=1}^{\min(A,B)}\sum_{i''=1}^{[\frac{A}{k}]}\sum_{j''=1}^{[\frac{B}{k}]}\mu(k) \]

\[=\displaystyle\sum_{k=1}^{\min(A,B)}[\frac{A}{k}][\frac{B}{k}]\mu(k) \]

发现 \([\frac{A}{k}][\frac{B}{k}]\) 的取值是 \(O(\sqrt A)\) 的,可以整除分块。

为什么是 \(O(\sqrt A)\) 的?把 \([\frac{A}{k}]\) 的函数图像画出来,是阶梯式下降的,每一层阶梯就是一个取值区间。而 \([\frac{B}{k}]\) 的函数图像最多把 \([\frac{A}{k}]\) 再多分割出一倍。

整除分块后,就是对一个区间的 \(\mu\) 求和,可以用前缀和。

复杂度 \(O(\sqrt A)\)。

公约数的和

\[\sum_{i=1}^n\sum_{j=i+1}^ngcd(i,j),n\le 2\times 10^6 \]

这里有一个经典 trick: 枚举 \(gcd\) 然后统计个数。

\[\sum_{g=1}^ng\times \sum_{i=1}^{[\frac{n}{g}]}\sum_{j=i+1}^{[\frac{n}{g}]}[gcd(i,j)=1] \]

记 \(G=[\frac{n}{g}]\)。注意这里又可以用 \(\varepsilon(gcd(i,j))\) 了。

\[\sum_{g=1}^ng\times \sum_{i=1}^G\sum_{j=i+1}^G\sum_{d|i,d|j}\mu(d) \]

先枚举 \(d\)。

\[\sum_{g=1}^ng\sum_{d=1}^G\sum_{i=1}^{[\frac{G}{d}]}\sum_{j=1}^{[\frac{G}{d}]}\mu(d) \]

\[\sum_{g=1}^ng\sum_{d=1}^G\mu(d)\cdot\sum_{i=1}^{[\frac{G}{d}]}\sum_{j=1}^{[\frac{G}{d}]}1 \]

\[\sum_{g=1}^ng\sum_{d=1}^G\mu(d)\cdot\frac{1}{2}[\dfrac{G}{d}]([\dfrac{G}{d}-1]) \]

对 \([\dfrac{G}{d}]\) 进行数论分块。

复杂度:对于每一个 \(g\),复杂度是 \(O(\sqrt G)=O(\sqrt{\dfrac{n}{g}})\) 的。

总复杂度 \(O(\displaystyle\sum_{g=1}^n\sqrt{\frac{{n}}{{g}}})=O(\sqrt n+\sqrt \frac{n}{2}+\cdots)<O(n+\dfrac{n}{2}+\cdots)=O(n\log n).\)


Crash 的数字表格

经典题。求 \(\displaystyle\sum_{i=1}^n\sum_{j=1}^mlcm(i,j)\),\(n,m\le 10^7\)。

不妨 \(n\le m\)。

\[\text{原式}=\sum_{i=1}^n\sum_{j=1}^m\dfrac{i\cdot j}{gcd(i,j)}=\sum_{g=1}^{n}\sum_{i=1}^{[n/g]}\sum_{j=1}^{[m/g]}\dfrac{ijg^2}{g}\cdot[gcd(i,j)=1] \]

\[=\sum_{g=1}^ng\sum_{i=1}^{[n/g]}\sum_{j=1}^{[m/g]}ij\cdot\sum_{d|i,d|j}\mu(d) \]

记 \([n/g]=N,[m/g]=M.\)

\[=\sum_{g=1}^ng\sum_{d=1}^N\mu(d)\sum_{i=1}^{[N/d]}\sum_{j=1^{}}^{[M/d]}ij \]

其中 \(\sum_{i=1}^{[N/d]}\sum_{j=1^{}}^{[M/d]}ij\) 是可以 \(O(1)\) 求得的。

记 \(f(x,y)=\sum_{d=1}^x\mu(d)\sum_{i=1}^{[x/d]}\sum_{j=1}^{[y/d]}ij\)。

则 \(\text{原式}=ans(n)=\displaystyle\sum_{g=1}^ng\cdot f([\dfrac{n}{g}],[\dfrac{m}{g}]).\)

在求 \(ans(n)\) 的时候用整除分块 \([\dfrac{n}{g}],[\dfrac{m}{g}]\);在求 \(f()\) 的时候再整除分块。

复杂度 \(O(\sqrt n\cdot \sqrt N)<O(n).\)

.

标签:frac,gcd,积性,乌斯,sum,mu,反演,莫比,displaystyle
From: https://www.cnblogs.com/FLY-lai/p/18000545

相关文章

  • 【容斥反演】Nanami and Trip Schemes Count Problem
    链接给定\(k\)个特殊格子,求从(1,1)往右或往上走到(n,m),在经过不超过\(p\)个特殊格的情况下的方案数设\(f(S)\)表示钦定走S集合中格子的方案,\(g(S)\)为恰好走S集合的方案,那么\(f\)与\(g\)的关系就是一个\(\subseteq\)意义下的前缀和。即\[f(S)=\sum_{S\subs......
  • 【笔记】莫比乌斯反演
    0约定\([n]=[1,n]\cap\mathttZ\)1数论分块形如$S(n)=\sum\limits_{i=1}^nf(i)g(\left\lfloor\dfrac{n}{i}\right\rfloor)$。可以在\(O(\sqrtn)\)的时间复杂度内求解。1.1解法对于\(1\lei\le\sqrtn\),显然,\(i\)最多\(\sqrtn\)种取值,故而\(\left\l......
  • 【GEE】GEE反演地表温度相关问题说明(空洞、Landsat9数据集等)
    ​     之前分享了基于GEE-Landsat8数据集地表温度反演(LST热度计算),最近有很多小伙伴私信我很多问题,一一回复太慢了,所以今天写篇文章统一回答一下大家的问题。问题1:数据有很多空洞、某些条带没有数据等问题2:如何使用Landsat9数据进行温度反演问题3:该反演算法的来源......
  • 二项式反演学习笔记
    前置知识二项式定理:\((a+b)^n=\sum_{i=0}^n\binom{n}{i}a^ib^{n-i}\)。二项式反演反演公式1:\[f(n)=\sum_{i=0}^n\binom{n}{i}g(i)\iffg(n)=\sum_{i=0}^n(-1)^{n-i}\binom{n}{i}f(i)\]证明:\[\begin{aligned}\sum_{i=0}^n(-1)^{n-i}\binom{n}{i}f(i)&=\sum_{i=0......
  • 莫比乌斯反演学习笔记
    前置知识狄利克雷卷积:\(f*g=\sum_{d|n}f(d)g(\frac{n}{d})\)。积性函数,线性筛。数论分块。单位函数:\(\varepsilon(n)=[n=1]\)。(积性函数)常数函数:\(1(n)=1\)。(积性函数)莫比乌斯函数引理1:\(f(n)\)是积性函数等价于\(g(n)=\sum_{d|n}f(d)\)是积性函数。证明:显然,\(g=......
  • 【学习笔记】数论函数与莫比乌斯反演
    一.数论函数基础数论函数:满足值域为整数的函数。本文下述的数若无特殊说明均为整数。若无特殊说明则钦定\(\displaystylen=\prod_{i=1}^kp_i^{e_i},p_i\in\mathbb{P}\)。\(\mathbb{P}\)表示质数集合,\(p_i\)互不相同。介绍几个常见的数论函数:\(I(n)\):恒等函数,无论\(n\)......
  • 【算法】莫比乌斯反演
    参考博客OI-Wiki|Biuld-数学|Million-组合计数学习笔记|狄利克雷卷积和莫比乌斯反演|算法学习笔记(35):狄利克雷卷积狄利克雷卷积莫反的前置知识,主要引入了一个新运算。常用积性函数单位函数\(\varepsilon(n)=\begin{cases}1&n=1\\0&\text{otherwise}\end{cases}......
  • Landsat 7大气校正法的地表温度反演:ENVI实现
    本文介绍基于ENVI软件,实现对Landsat7遥感影像加以大气校正方法的地表温度反演操作。(基于ENVI的Landsat7地表温度(LST)大气校正方法反演与地物温度分析)1图像前期处理与本文理论部分更新:基于GEE的地表温度Landsat反演可以看谷歌地球引擎GEE批量计算Landsat地表温度,自动批量操作......
  • 各类反演总结
    反演就是有两个函数\(f\)和\(g\),可以简单得出\(g\)转化成\(f\)的式子,那么就可以从\(f\)推回\(g\)。内容:子集反演二项式反演莫比乌斯反演欧拉反演斯特林反演子集反演若\(f(S)=\sum_{T\inS}g(T)\),那么\(g(S)=\sum_{T\inS}(-1)^{|S|-|T|}......
  • 莫比乌斯函数平方前缀和
    考虑求\(\sum_{i=1}^n\mu(i)^2\)结论是\(\mu(i)^2=\sum_{j^2|i}\mu(j)\)考虑证明这个式子。先证明若\(\mu(i)\neq0\)此时\(\mu(i)^2=1\)显然只有\(j=1\)在右式造成贡献\(1\)等式成立。若存在\(j\neq1\)也在右式造成贡献,那么显然\(i\)有次数\(\ge2\)质因子了\(\mu(i)=0\)与......