莫比乌斯反演【OI Pharos 6.1.5】
前置知识: 整数分块,积性函数
1 概念
1.1 莫比乌斯函数
1.2 莫比乌斯反演定理
F
(
i
)
=
∑
d
∣
i
f
(
d
)
⇔
f
(
i
)
=
∑
d
∣
i
μ
(
i
d
)
F
(
d
)
F(i) = \sum_{d|i} f(d) \Leftrightarrow f(i) = \sum_{d|i}\mu(\frac{i}{d})F(d)
F(i)=d∣i∑f(d)⇔f(i)=d∣i∑μ(di)F(d)
F
(
i
)
=
∑
i
∣
n
f
(
n
)
⇔
f
(
i
)
=
∑
i
∣
n
μ
(
n
i
)
F
(
n
)
F(i) = \sum_{i|n} f(n) \Leftrightarrow f(i) = \sum_{i|n}\mu(\frac{n}{i})F(n)
F(i)=i∣n∑f(n)⇔f(i)=i∣n∑μ(in)F(n)
2 证明
引理1
∑ d ∣ i μ ( d ) = [ i = = 1 ] \sum_{d|i}\mu(d) = [i == 1] d∣i∑μ(d)=[i==1]
证明
∑
d
∣
i
μ
(
i
d
)
F
(
d
)
\sum_{d|i}\mu(\frac{i}{d})F(d)\\
d∣i∑μ(di)F(d)
带入定义式,
=
∑
d
∣
i
μ
(
i
d
)
∑
k
∣
i
d
f
(
k
)
(1)
= \sum_{d|i}\mu(\frac{i}{d}) \sum_{k|\frac{i}{d}} f(k) \tag1 \ \ \ \ \
=d∣i∑μ(di)k∣di∑f(k) (1)
调整求和顺序,
=
∑
d
∣
i
f
(
d
)
∑
k
∣
i
d
μ
(
k
)
(2)
= \sum_{d|i}f(d) \sum_{k|\frac{i}{d}}\mu(k) \tag2 \ \ \ \ \ \
=d∣i∑f(d)k∣di∑μ(k) (2)
由于引理1,
=
∑
d
∣
i
f
(
d
)
×
[
i
d
=
=
1
]
=
∑
d
∣
i
f
(
d
)
×
[
i
=
=
d
]
=
f
(
i
)
= \sum_{d|i}f(d) \times [\frac{i}{d} == 1]\ \\ = \sum_{d|i}f(d) \times [i == d]\ \ \ \\ = f(i) \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \
=d∣i∑f(d)×[di==1] =d∣i∑f(d)×[i==d] =f(i)
证毕。
重点是要理解调整求和顺序这一步
( 1 ) (1) (1) 式可以理解为枚举三个数 d , k , i d k d,k,\frac{\frac{i}{d}}{k} d,k,kdi满足 i d × k × d k = i {\frac{i}{d} \times k \times \frac{d}{k}} = i di×k×kd=i
对于每一项 μ ( i d ) f ( k ) \mu(\frac{i}{d})f(k) μ(di)f(k)求和
( 2 ) (2) (2) 式也可以理解为枚举三个数 d , k , i d k d,k,\frac{\frac{i}{d}}{k} d,k,kdi满足 i d × k × d k = i {\frac{i}{d} \times k \times \frac{d}{k}} = i di×k×kd=i
对于每一项 μ ( k ) f ( d ) \mu(k)f(d) μ(k)f(d)求和
每一个(1)式中的项都会在(2)式中被枚举到,所以可以调整求和顺序