引言
在数论问题中,积性函数有着广泛的应用。
如在莫比乌斯反演问题中,函数变换之后如何快速维护前缀和往往是最重要也是最难的一步。如果维护的函数具有积性,那就可以尝试利用线性筛在 O ( n ) O(n) O(n)的时限内完成预处理,从而达到优化复杂度的神奇作用。
本文的大部分相关性质及公式来自:《线性筛与积性函数》- 贾志鹏
博主将试着证明其中的性质公式,严谨性可能欠缺,其目的主要是帮助大家理解并记忆。
积性函数的定义和性质
定义: 对于一个定义域为 N + N^{+} N+的函数 f f f,对于任意两个互质的正整数 a , b a,b a,b,均满足 f ( a b ) = f ( a ) f ( b ) f(ab)=f(a)f(b) f(ab)=f(a)f(b),则称函数 f f f为积性函数
若对于任意整数 a , b a,b a,b都有 f ( a b ) = f ( a ) f ( b ) f(ab) = f(a)f(b) f(ab)=f(a)f(b),则函数 f f f被称为完全积性函数。
性质:
(1)对于任意积性函数 f f f,均有 f ( 1 ) = 1 f(1) = 1 f(1)=1
证明:因 1 1 1与任何数都互质,假设存在一个正整数 a a a满足 f ( a ) ! = 0 f(a)!=0 f(a)!=0,故由定义: f ( a ) = f ( 1 ∗ a ) = f ( 1 ) f ( a ) f(a) = f(1*a) = f(1)f(a) f(a)=f(1∗a)=f(1)f(a)
因 f ( a ) f(a) f(a)不为 0 0 0,故等号两端同时消去一个 f ( a ) f(a) f(a),得:
f ( 1 ) = 1 f(1) = 1 f(1)=1
证毕。
(2)对于一个大于 1 1 1的正整数N,设 N = ∏ p i a i N = \prod p_i^{a_i} N=∏piai, p i p_i pi为互不相同的素数。那么对于一个积性函数 f f f来说,有:
f ( N ) = f ( ∏ p i a i ) = ∏ f ( p i a i ) f(N) = f(\prod p_i^{a_i}) = \prod f(p_i^{a_i}) f(N)=f(∏piai)=∏f(piai)
若 f f f完全积性,则 f ( N ) = ∏ f ( p i ) a i f(N) = \prod f(p_i)^{a_i} f(N)=∏f(pi)ai
证明:由积性和完全积性的定义易得。
欧拉函数 φ \varphi φ
定义:对于正整数 n n n, φ ( n ) \varphi(n) φ(n)是小于n的正整数中与n互质的个数。
定义式:若 n = ∏ p i a i n = \prod p_i^{a_i} n=∏piai
φ ( n ) = n ∏ ( 1 − 1 p i ) \varphi(n) = n \prod(1 - \frac{1}{p_i}) φ(n)=n∏(1−pi1)
性质:
(1)欧拉函数为积性函数,而不是完全积性函数。
证明:设两个互质的正整数 n , m n,m n,m
则:
φ ( n ) = n ∏ ( 1 − 1 p i ) \varphi(n) = n \prod(1 - \frac{1}{p_i}) φ(n)=n∏(1−pi1)
φ ( m ) = m ∏ ( 1 − 1 p i ′ ) \varphi(m) =m \prod(1 - \frac{1}{p'_i}) φ(m)=m∏(1−pi′1)
φ ( n ) φ ( m ) = n ∏ ( 1 − 1 p i ) m ∏ ( 1 − 1 p i ′ ) = n m ∏ ( 1 − 1 p i ) ( 1 − 1 p i ′ ) \varphi(n)\varphi(m) = n \prod(1 - \frac{1}{p_i})m \prod(1 - \frac{1}{p'_i}) = nm\prod(1 - \frac{1}{p_i})(1 - \frac{1}{p'_i}) φ(n)φ(m)=n∏(1−pi1)m∏(1−pi′1)=nm∏(1−pi1)(1−pi′1)
因 n , m n,m n,m互质,故 p i , p i ′ p_i,p'_i pi,pi′ 各不相同,且均为 n m nm nm的质因子。
故推出:
φ ( n m ) = φ ( n ) φ ( m ) \varphi(nm) = \varphi(n)\varphi(m) φ(nm)=φ(n)φ(m)
积性函数性质得证。
而完全积性由上证明可见, n , m n,m n,m互质是一个严格且不可或缺的条件,可见,欧拉函数不是完全积性函数。
(2)假设存在一个素数 p p p和一个正整数 k k k,则: φ ( p k ) = p k − p k − 1 \varphi(p^k) = p^k - p^{k-1} φ(pk)=pk−pk−1
证明:
可以从反面来思考这件事,在小于 p k p^k pk且与其不互质的数有以下形式:
p ∗ 1 , p ∗ 2 , . . . p ∗ ( p k − 1 − 1 ) p*1,p*2,...p*(p^{k-1} - 1) p∗1,p∗2,...p∗(p