网上搜莫比乌斯函数大多都没有写莫比乌斯函数的由来,而是直接写的定义式,这里对莫比乌斯函数进行推导。
学习了狄利克雷卷积后,我们来看以下几个常见的积性函数:
常函数:I(n)=1I(n)=1I(n)=1
单位元:ξ(n)=[n=1](ξ∗f=f)\xi(n)=[n=1] (\xi*f=f)ξ(n)=[n=1](ξ∗f=f)
莫比乌斯函数
对于一个数我们可以对其求逆,那么函数是否也可以求逆呢?答案是肯定的。我们看下面式子:
f−1∗f=ξ f^{-1}*f=\xi f−1∗f=ξ
f−1f^{-1}f−1即是我们要的fff的逆。
f−1∗f=xif^{-1}*f=xif−1∗f=xi
⇓\Downarrow⇓
∀n:∑d∣nf(d)∗f−1(nd)=[n=1]\forall n:\sum_{d|n}{f(d)*f^{-1}(\frac{n}{d})=[n=1]}∀n:∑d∣nf(d)∗f−1(dn)=[n=1]
若n=1
f−1(1)=1f(1)f^{-1}(1)=\frac{1}{f(1)}f−1(1)=f(1)1
若n≠1=\not1≠1
f−1(n)∗f(n)=xi(n)f^{-1}(n)*f(n)=xi(n)f−1(n)∗f(n)=xi(n)
f−1(n)∗f(n)=0f^{-1}(n)*f(n)=0f−1(n)∗f(n)=0
∑d∣nf(d)∗f−1(nd)=0\sum_{d|n}{f(d)*f^{-1}(\frac{n}{d})}=0d∣n∑f(d)∗f−1(dn)=0
将d=1从公式中提出来:
f(1)∗f−1(n)+∑d∣nf(d)∗f−1(nd)=0 (d̸=1)f(1)*f^{-1}(n)+\sum_{d|n}{f(d)*f^{-1}(\frac{n}{d})}=0 (d\not=1)f(1)∗f−1(n)+d∣n∑f(d)∗f−1(dn)=0 (d̸=1)
f−1(n)=−∑d∣nf(d)∗f−1(nd)f(1) (d̸=1)f^{-1}(n)=\frac{-\sum_{d|n}{f(d)*f^{-1}(\frac{n}{d})}}{f(1)} (d\not=1)f−1(n)=f(1)−∑d∣nf(d)∗f−1(dn) (d̸=1)
fff的逆即为这个式子了
那么接下来我们试试把f=If=If=I,n为质数的逆求出来试试:
f−1(p)=−f(p)∗f−1(1)f(1)=−1f^{-1}(p)=\frac{-f(p)*f^{-1}(1)}{f(1)}=-1f−1(p)=f(1)−f(p)∗f−1(1)=−1
看看p2p^2p2:
f−1(p2)=−(f(p2)∗f−1(1)+f(p)∗f−1(p))=0f^{-1}(p^2)=-(f(p^2)*f^{-1}(1)+f(p)*f^{-1}(p))=0f−1(p2)=−(f(p2)∗f−1(1)+f(p)∗f−1(p))=0
推广到pkp^kpk
f−1(pk)=−∑i=1kf(pi)∗f−1(pk−i)f^{-1}(p^k)=-\sum_{i=1}^{k}{f(p^i)*f^{-1}(p^{k-i})}f−1(pk)=−∑i=1kf(pi)∗f−1(pk−i)
不难看出:当k>1时,f(pk)f(p^k)f(pk)就等于0了
所以对于合数n=p1a1p2a2...pkakn=p_1^{a_1}p_2^{a_2}...p_k^{a^k}n=p1a1p2a2...pkak 有
f−1(n)=f−1(p1a1)f−1(p2a2)...f−1(pkak)f^{-1}(n)=f^{-1}(p_1^{a_1})f^{-1}(p_2^{a_2})...f^{-1}(p_k^{a_k})f−1(n)=f−1(p1a1)f−1(p2a2)...f−1(pkak) (I−1I^{-1}I−1 为积性函数)
(积性函数的逆也是积性函数)
证明:
设fff为积性函数,有
f(i∗j)=f(i)∗f(j)f(i*j)=f(i)*f(j)f(i∗j)=f(i)∗f(j)
f(i∗j)∗f−1(i∗j)=ξf(i*j)*f^{-1}(i*j)=\xif(i∗j)∗f−1(i∗j)=ξ
f(i)∗f−1(i)∗f(j)∗f−1(j)=ξf(i)*f^{-1}(i)*f(j)*f^{-1}(j)=\xif(i)∗f−1(i)∗f(j)∗f−1(j)=ξ
联立得:
f(i∗j)∗f−1(i∗j)=f(i)∗f−1(i)∗f(j)∗f−1(j)f(i*j)*f^{-1}(i*j)=f(i)*f^{-1}(i)*f(j)*f^{-1}(j)f(i∗j)∗f−1(i∗j)=f(i)∗f−1(i)∗f(j)∗f−1(j)
f−1(i∗j)=f−1(i)∗f−1(j)f^{-1}(i*j)=f^{-1}(i)*f^{-1}(j)f−1(i∗j)=f−1(i)∗f−1(j)
证毕
如果an>1a_n>1an>1那么f(n)=0f(n)=0f(n)=0
设f−1=μ(I−1=μ)f^{-1}=\mu(I^{-1}=\mu)f−1=μ(I−1=μ),则有:
μ={1 n=1(−1)k a1=a2=...=ak=10 otherwise \mu = \begin{cases} 1 n=1\\ (-1)^k a^1=a^2=...=a^k=1\\ 0 otherwise\\ \end{cases}μ=⎩⎪⎨⎪⎧1 n=1(−1)k a1=a2=...=ak=10 otherwise
这个便是我们所知的莫比乌斯函数了。
积性函数的逆也是积性函数。
由我们的推导可知:
μ∗I=ξ ξ∗f=f\mu*I=\xi \xi*f=fμ∗I=ξ ξ∗f=f
设f∗I=gf*I=gf∗I=g
f∗I∗μ=g∗μf*I*\mu=g*\muf∗I∗μ=g∗μ
公式
- g(n)=∑d∣nf(d) ⇐⇒ f(n)=∑d∣nμ(d)g(nd)g(n)=\sum_{d|n}{f(d)} \Leftarrow\Rightarrow f(n)=\sum_{d|n}{\mu(d)g(\frac{n}{d})}g(n)=∑d∣nf(d) ⇐⇒ f(n)=∑d∣nμ(d)g(dn)
- g(n)=∑n∣df(d) ⇐⇒ f(n)=∑n∣dμ(d)g(dn)g(n)=\sum_{n|d}{f(d)} \Leftarrow\Rightarrow f(n)=\sum_{n|d}{\mu(d)g(\frac{d}{n})}g(n)=∑n∣df(d) ⇐⇒ f(n)=∑n∣dμ(d)g(nd)
证明
方法一:逆推
-
∑d∣nμ(d)g(nd)=∑d∣nμ(d)∑x∣ndf(x)=∑x∣nf(x)∑d∣nxμ(d)=∑x∣nf(x)[nx=1]=f(n)\sum_{d|n}{\mu(d)g(\frac{n}{d})}=\sum_{d|n}{\mu(d)\sum_{x|\frac{n}{d}}{f(x)}=\sum_{x|n}{f(x)}\sum_{d|\frac{n}{x}}{\mu(d)}=\sum_{x|n}{f(x)[\frac{n}{x}=1]}}=f(n)d∣n∑μ(d)g(dn)=d∣n∑μ(d)x∣dn∑f(x)=x∣n∑f(x)d∣xn∑μ(d)=x∣n∑f(x)[xn=1]=f(n)
-
第二个式子同理
方法二:卷积法(因为好多人不知道μ\muμ的性质所以不知道这点)
g=f∗Ig=f*Ig=f∗I
g∗μ=f∗I∗μg*\mu=f*I*\mug∗μ=f∗I∗μ
g∗μ=f∗ξg*\mu=f*\xig∗μ=f∗ξ
g∗μ=fg*\mu=fg∗μ=f
得证