莫比乌斯反演

参考资料

一.莫比乌斯函数

1.定义:
\(n\)分解后为\(p_1^{c_1}*p_2^{c_2}*...*p_k^{c_k}\)
\(\mu(n)=\begin{cases}0\ \exists i\in[1,k],c_i>1\\ 1\ k\equiv 0\pmod{2},\forall i\in[1,k],c_i=1\\-1\ k\equiv 1\pmod{2},\forall i\in[1,k],c_i=1 \end{cases}\)
线性筛\(\mu()\)

int mu[maxn];
bool vis[maxn];
vector<int>prime;
void shai_mu(int n)
{
	vis[1]=1;mu[1]=1;
	for(int i=1;i<=n;i++)
	{
		if(!vis[i])prime.push_back(i),mu[i]=-1;
		for(unsigned int j=0;j<prime.size()&&i*prime[j]<=n;j++)
		{
			vis[i*prime[j]]=1;
			if(i%prime[j]==0){mu[i*prime[j]]=0;break;}
			mu[i*prime[j]]=-mu[i];
		}
	}
}

2.性质:
\(\sum\limits_{d|n}\mu(d)=[n=1]\)
证明:
1.\(n=1\)显然成立。
2.对于\(n>1\),设\(n=p_1^{c_1}*p_2^{c_2}*...*p_k^{c_k}\)
\(\mu(d)\)不为\(0\)的只有\(d\)所有质因子次数均为\(1\)的,质因子数为\(i\)的有\(C_k^i\)个。
\(\sum\limits_{d|n}\mu(d)=C_k^0-C_k^1+...+(-1)^k*C_k^k=\sum\limits_{i=0}^k (-1)^i*C_k^i=0\)(二项式定理)。

二.莫比乌斯反演

1.设\(F(n)\)\(f(n)\)是定义在非负整数集合上的两个函数,且满足\(F(n)=\sum\limits_{d|n}f(d)\),则:\(f(n)=\sum\limits_{d|n}\mu(d)F(\frac{n}{d})\)
证明:
\(\sum\limits_{d|n}\mu(d)F(\frac{n}{d})=\sum\limits_{d|n}\mu(d)\sum\limits_{k|\frac{n}{d}}f(k)=\sum\limits_{k|n}f(k)\sum\limits_{d|\frac{n}{k}}\mu(d)=f(n)\)
2.\(\sum\limits_{d|n}\frac{\mu(d)}{d}=\frac{\varphi(n)}{n}\)
证明:
首先有\(n=\sum\limits_{d|n}\varphi(d)\)
\(F(n)=n,f(n)=\varphi(n)\)
\(\varphi(n)=\sum\limits_{d|n}\mu(d)\frac{n}{d}\)
\(\frac{\varphi(n)}{n}=\sum\limits_{d|n}\frac{\mu(d)}{d}\)
3.如果\(F(n)=\sum\limits_{n|d}f(d)\),则\(f(n)=\sum\limits_{n|d}\mu(\frac{d}{n})*F(d)\)
证明:
\(k=\frac{d}{n}\)
原式\(=\sum\limits_{k=1}^{+\infty}\mu(k)F(n*k)=\sum\limits_{k=1}^{+\infty}\mu(k)\sum\limits_{n*k|t}f(t)=\sum\limits_{n|t}f(t)*\sum\limits_{k|\frac{t}{n}}\mu(k)=f(n)\)

posted @ 2019-11-26 11:41  nofind  阅读(138)  评论(0编辑  收藏  举报