莫比乌斯反演

本文介绍了莫比乌斯函数的定义、性质和计算方法,以及如何使用莫比乌斯反演解决数论问题。同时,文章涵盖了整除分块技术在处理整除求和问题上的应用,和狄利克雷卷积的概念及其在数论函数结合、分配等定律中的作用。这些理论在算法和计算机科学中有重要应用。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

一、莫比乌斯函数

定义

设正整数 n n n 分解质因数为 n = p 1 c 1 p 2 c 2 … p m c m n=p_1^{c_1}p_2^{c_2}\dots p_m^{c_m} n=p1c1p2c2pmcm,定义函数
μ ( n ) = { 0 ∃ i ∈ [ 1 , m ] ,   c i > 1 1 m ≡ 0 ( m o d 2 ) ,   ∀ i ∈ [ 1 , m ] ,   c i = 1 − 1 m ≡ 1 ( m o d 2 ) ,   ∀ i ∈ [ 1 , m ] ,   c i = 1 \mu(n)=\begin{cases}0&\exists i\in [1,m],\:c_i>1\\1&m\equiv 0 \pmod 2,\:\forall i \in [1,m],\:c_i=1\\-1&m\equiv 1 \pmod 2,\:\forall i \in [1,m],\:c_i=1\end{cases} μ(n)= 011i[1,m],ci>1m0(mod2),i[1,m],ci=1m1(mod2),i[1,m],ci=1
μ ( n ) \mu(n) μ(n)莫比乌斯函数
特别地, μ ( 1 ) = 1 \mu(1)=1 μ(1)=1

性质
  • 对于任意的正整数 n n n,有 ∑ d ∣ n μ ( d ) = [ n = 1 ] \sum\limits_{d\mid n}{\mu(d)}=[n=1] dnμ(d)=[n=1]
  • 莫比乌斯函数是积性函数,即 a , b a,b a,b 互质时, μ ( a b ) = μ ( a ) μ ( b ) \mu(ab)=\mu(a)\mu(b) μ(ab)=μ(a)μ(b)
计算

回顾 欧拉函数与积性函数专题,很明显莫比乌斯函数可以使用线性筛求解

void primes(int n)
{
	mu[1]=1;
	for(int i=2; i<=n; i++)
	{
		if(!v[i])
		{
			v[i]=i;
			prime[++tot]=i;
			mu[i]=-1;
		}
			
		for(int j=1; j<=tot; j++)
		{
			if(prime[j]>v[i] || prime[j]>n/i)
				break;
			v[i*prime[j]]=prime[j];
			if(i%prime[j]==0)
				break;
			mu[i*prime[j]]=-mu[i];
		}
	}
}

二、整除分块

整除分块是用于解决整除求和问题 ∑ i = 1 n ⌊ n i ⌋ \sum\limits_{i=1}^n{\left\lfloor\frac{n}{i}\right\rfloor} i=1nin

  • ⌊ n i ⌋ \left\lfloor\frac{n}{i}\right\rfloor in 按相同值分块
  • 可以证明,分块少于 2 n 2\sqrt{n} 2n
for(LL l=1,r; l<=n; l=r+1)
{
	r=n/(n/l);
	ans+=(r-l+1)*(n/l);
}

三、狄利克雷卷积

定义

两个数论函数 f ( x ) , g ( x ) f(x),g(x) f(x),g(x),则它们的 狄利克雷卷积 得到的结果 h ( x ) h(x) h(x) 定义为:
h ( x ) = ∑ d ∣ x f ( d ) g ( x d ) = ∑ a b = x f ( a ) g ( b ) h(x)=\sum\limits_{d\mid x}{f(d)g\left(\frac{x}{d}\right)}=\sum\limits_{ab=x}{f(a)g(b)} h(x)=dxf(d)g(dx)=ab=xf(a)g(b)

性质
  • 满足交换律、结合律、分配律
一些其它定义
  • 定义 ε ( n ) = [ n = 1 ] ε(n)=[n=1] ε(n)=[n=1] ε \varepsilon ε 是狄利克雷卷积运算中的单位元,即对于任何数论函数 f f f,都有 f ∗ ε = f f*\varepsilon=f fε=f

    证明 ( f ∗ ε ) ( n ) = ∑ d ∣ n f ( d ) ε ( n d ) = f ( n ) (f*ε)(n)=\sum\limits_{d|n}{f(d)ε(\frac{n}{d})}=f(n) (fε)(n)=dnf(d)ε(dn)=f(n)

  • 定义 i d ( n ) = n id(n)=n id(n)=n

常见结论
  • μ ∗ 1 = ε \mu * 1=ε μ1=ε

    证明 μ ∗ 1 = ∑ d ∣ n μ ( d ) = [ n = 1 ] = ε \mu *1=\sum\limits_{d|n}{\mu(d)}=[n=1]=ε μ1=dnμ(d)=[n=1]=ε

  • φ ∗ 1 = i d \varphi *1=id φ1=id

    证明 φ ∗ 1 = ∑ d ∣ n φ ( d ) = n = i d \varphi*1=\sum\limits_{d|n}{\varphi(d)}=n=id φ1=dnφ(d)=n=id

  • i d ∗ μ = φ id * \mu =\varphi idμ=φ

    证明
    ∵ i d ∗ ε = i d \because id*ε=id idε=id
    ∴ i d ∗ μ ∗ 1 = φ ∗ 1 \therefore id*\mu*1=\varphi*1 idμ1=φ1
    ∴ i d ∗ μ = φ \therefore id * \mu =\varphi idμ=φ

四、莫比乌斯反演

结论

f ( n ) , g ( n ) f(n),g(n) f(n),g(n) 为两个数论函数。

  • 如果有 f ( n ) = ∑ d ∣ n g ( d ) f(n)=\sum\limits_{d\mid n}g(d) f(n)=dng(d),那么有
    g ( n ) = ∑ d ∣ n μ ( d ) f ( n d ) g(n)=\sum\limits_{d\mid n}\mu(d)f(\frac{n}{d}) g(n)=dnμ(d)f(dn)

    证明:容易看出,数论函数 g ( n ) g(n) g(n) 的莫比乌斯变换,就是将 g ( n ) g(n) g(n) 1 1 1 进行狄利克雷卷积。
    ∵ f = g ∗ 1 \because f=g*1 f=g1
    ∴ f ∗ μ = g ∗ 1 ∗ μ = g ∗ ε = g \therefore f*\mu=g*1*\mu=g*ε=g fμ=g1μ=gε=g

  • 如果有 f ( n ) = ∑ n ∣ d g ( d ) f(n)=\sum\limits_{n|d}g(d) f(n)=ndg(d),那么有
    g ( n ) = ∑ n ∣ d μ ( d n ) f ( d ) g(n)=\sum_{n|d}\mu(\frac{d}{n})f(d) g(n)=ndμ(nd)f(d)

    证明:考虑逆推:
    ∑ n ∣ d μ ( d n ) f ( d ) \quad \sum\limits_{n|d}{\mu(\frac{d}{n})f(d)} ndμ(nd)f(d)
    = ∑ k = 1 μ ( k ) f ( k n ) =\sum\limits_{k=1}{\mu(k)f(kn)} =k=1μ(k)f(kn)
    = ∑ k = 1 μ ( k ) ∑ k n ∣ d g ( d ) = \sum\limits_{k=1}{\mu(k)\sum\limits_{kn|d}{g(d)}} =k=1μ(k)kndg(d)
    = ∑ n ∣ d g ( d ) ∑ k ∣ d n μ ( k ) =\sum\limits_{n|d}{g(d)\sum\limits_{k|\frac{d}{n}}{\mu(k)}} =ndg(d)kndμ(k)
    = ∑ n ∣ d g ( d ) ϵ ( d n ) = \sum\limits_{n|d}{g(d)\epsilon(\frac{d}{n})} =ndg(d)ϵ(nd)
    = g ( n ) =g(n) =g(n)

应用

关于莫反的习题,详见以后的博客

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值