[数论数学]莫比乌斯反演定理

近期学习了莫比乌斯反演,算是一个学习笔记吧…

在这里首先要说明:

1:本文讨论的所有函数为数论函数,即定义域为 D = N ∗ D=N^* D=N的函数;

2: ∑ d ∣ n f ( d ) \sum \limits_{d|n}f(d) dnf(d)表示 d d d取遍 n n n的所有正因子,再将所有的 f ( d ) f(d) f(d)相加,例如当 n = 6 n=6 n=6时, ∑ d ∣ n f ( d ) = f ( 1 ) + f ( 2 ) + f ( 3 ) + f ( 6 ) \sum \limits_{d|n}f(d)=f(1)+f(2)+f(3)+f(6) dnf(d)=f(1)+f(2)+f(3)+f(6)

3: ∏ i = 1 k a i = a 1 × a 2 × . . . × a k \prod \limits_{i=1}^ka_i=a_1 \times a_2 \times ... \times a_k i=1kai=a1×a2×...×ak,即所有 a i a_i ai的乘积;

4: [ p ] [p] [p](其中p是一个表达式)表示当p成立时,值为1;否则值为0;

5: ( a , b ) (a,b) (a,b)表示 g c d ( a , b ) gcd(a,b) gcd(a,b),即 a , b a,b a,b的最大公因数;

6:几个在狄利克雷卷积中会出现的基本函数:

  • ε ( n ) = [ n = 1 ] \varepsilon(n)=[n=1] ε(n)=[n=1],也就是 ε ( n ) = { 1 n = 1 0 n ≠ 1 \varepsilon(n)=\begin{cases}1\qquad n=1\\0 \qquad n \neq 1 \end{cases} ε(n)={ 1n=10n̸=1
  • I ( n ) = 1 I(n)=1 I(n)=1
  • i d ( n ) = n id(n)=n id(n)=n

一、积性函数

定义:如果一个函数 f ( n ) f(n) f(n)满足:当 ( a , b ) = 1 (a,b)=1 (a,b)=1时,有 f ( a b ) = f ( a ) × f ( b ) f(ab)=f(a) \times f(b) f(ab)=f(a)×f(b),则称 f ( n ) f(n) f(n)为积性函数。

进一步,如果对于任意数 a , b a,b a,b,都有 f ( a b ) = f ( a ) × f ( b ) f(ab)=f(a) \times f(b) f(ab)=f(a)×f(b),则称 f ( n ) f(n) f(n)为完全积性函数。

积性函数的基本性质:对于任意正整数 n ≠ 1 n \neq 1 n̸=1,根据唯一分解定理,可以进行分解素因数:即 n = p 1 c 1 . . . p k c k = ∏ i = 1 k p i c i n=p_1^{c_1}...p_k^{c_k}=\prod \limits_{i=1}^kp_i^{c_i} n=p1c1...pkck=i=1kpici,显然所有的 p i c i p_i^{c_i} pici两两互素,因此有:

f ( n ) = f ( p 1 c 1 ) × . . . × f ( p k c k ) = ∏ i = 1 k f ( p i c i ) f(n)=f(p_1^{c_1}) \times ... \times f(p_k^{c_k})=\prod \limits_{i=1}^kf(p_i^{c_i}) f(n)=f(p1c1)×...×f(pkck)=i=1kf(pici)

因此,我们可以用类似线性筛素数的方法线性筛出某一积性函数的值,只需要知道对于每一个素数以及素数的方幂结果为多少即可。

由积性函数以及完全积性函数的定义, ε ( n ) , I ( n ) , i d ( n ) \varepsilon(n),I(n),id(n) ε(n),I(n),id(n)显然皆为完全积性函数。

证明积性函数的常见方法是利用上面的唯一分解式,将 a , b a,b a,b唯一分解,再用 ( a , b ) = 1 (a,b)=1 (a,b)=1的条件可以得到分解出来的所有素数两两不等,从而继续证明。

例如:证明 d ( n ) d(n) d(n) n n n的正因子个数为积性函数。

证明:取 ( a , b ) = 1 (a,b)=1 (a,b)=1,将 a , b a,b a,b分解得: a = ∏ i = 1 k p i c i a=\prod \limits_{i=1}^kp_i^{c_i} a=i=1kpici,且 b = ∏ i = 1 l q i d i b=\prod \limits_{i=1}^lq_i^{d_i} b=i=1lqidi,则 p i , q i p_i,q_i pi,qi两两不等(由 ( a , b ) = 1 (a,b)=1 (a,b)=1可得),于是:
d ( a ) = ∏ i = 1 k ( c i + 1 ) d(a)=\prod \limits_{i=1}^k(c_i+1) d(a)=i=1k(ci+1),且 d ( b ) = ∏ i = 1 l ( d i + 1 ) d(b)=\prod \limits_{i=1}^l(d_i+1) d(b)=i=1l(di+1)
由于 p i , q i p_i,q_i pi,qi两两不等,所以 d ( a b ) = ∏ i = 1 k ( c i + 1 ) ∏ i = 1 l ( d i + 1 ) = d ( a ) × d ( b ) d(ab)=\prod \limits_{i=1}^k(c_i+1)\prod \limits_{i=1}^l(d_i+1)=d(a) \times d(b) d(ab)=i=1k(ci+1)i=1l(di+1)=d(a)×d(b),即 d ( n ) d(n) d(n)是积性函数。

*积性函数另一个不太常用的性质:若 f ( n ) f(n) f(n)是积性函数,则或者 f ( n ) f(n) f(n)是值为 0 0 0的常值函数,或者 f ( 1 ) = 1 f(1)=1 f(1)=1

证明十分容易,因为 ( n , 1 ) = 1 (n,1)=1 (n,1)=1,所以 f ( n ) = f ( 1 ) × f ( n ) f(n)=f(1) \times f(n) f(n)=f(1)×f(n),则 f ( n ) = 0 f(n)=0 f(n)=0或者 f ( 1 ) = 1 f(1)=1 f(1)=

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值