欧拉函数,数论函数

文章详细介绍了数论中的欧拉函数,包括其定义、性质和积性函数的概念。欧拉函数φ(x)表示小于x并与x互质的正整数个数,文章通过多个性质和推论展示了φ(x)的计算和应用,如φ(x)是积性函数,以及与约数和、质因子的关系。此外,文章还探讨了与欧拉函数相关的数论问题,如gcd的性质和狄利克雷卷积。

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

对于整数而言:

定义

数论函数

定义域为正整数,值域(陪域)为复数(一般是整数)的函数,称为数论函数。
经典的数论函数有:
欧拉函数 φ ( x ) = ∑ i = 0 x − 1 [ i ⊥ x ] \varphi(x)=\sum_{i=0}^{x-1}[i\perp x] φ(x)=i=0x1[ix]:表示[0,x-1]中与x互质的数的个数
常数函数 1 ( x ) = 1 1(x)=1 1(x)=1
幂函数 I d k ( x ) = x k Id_k(x)=x^k Idk(x)=xk,当k=1时为恒等函数 i d ( x ) = x id(x)=x id(x)=x,当k=0时为常数函数 1 1 1
整除函数 σ k ( x ) = ∑ d ∣ x d k \sigma_k(x)=\sum_{d|x}d^k σk(x)=dxdk,当k=1时为约数和函数,当k=0时为约数个数函数 d d d
莫比乌斯函数 μ ( x ) = { 1                                                                            ( x = 1 ) 0                                          ( x 含有相同质因子 ) ( − 1 ) s ( s 为 x 的不同质因子的个数 ) \mu (x)=\left\{\begin{matrix} 1\;\;\;\;\;\;\;\;\;\;\;\;\;\;\;\;\;\;\;\;\;\;\;\;\;\;\;\;\;\;\;\;\;\;\;\;\;(x=1)\\ 0\;\;\;\;\;\;\;\;\;\;\;\;\;\;\;\;\;\;\;\;(x含有相同质因子)\\ (-1)^s(s为x的不同质因子的个数) \end{matrix}\right. μ(x)= 1(x=1)0(x含有相同质因子)(1)s(sx的不同质因子的个数)

积性函数

若对于x⊥y,有 f ( x ) f ( y ) = f ( x y ) f(x)f(y)=f(xy) f(x)f(y)=f(xy),则称f为积性函数。
若对于所有x,y有 f ( x ) f ( y ) = f ( x y ) f(x)f(y)=f(xy) f(x)f(y)=f(xy),则称f为完全积性函数。
上述数论函数都是积性函数,暂时不给出证明,具体用到的时候再一一证明。

若有 f f f是非恒等于0的积性函数,有 f ( 1 ) = 1 f(1)=1 f(1)=1
这是因为由于 ∀ x , 1 ⊥ x \forall x,1 \perp x x,1x只有这样才能保证 f ( x ) = f ( x ) ⋅ f ( 1 ) f(x)=f(x)\cdot f(1) f(x)=f(x)f(1)

欧拉函数

φ ( 1 ) = 1 \varphi(1)=1 φ(1)=1

欧拉函数的积性证明起来比较麻烦,主要的方法有:

  1. 群论
  2. 狄利克雷卷积
  3. 中国剩余定理
  4. 同余方程转不定方程
  5. 容斥原理

前四种门槛都比较高,就不再说了,这里只贴一下容斥原理的证明过程好了:
**在这里插入图片描述**
引用

QED.
此时,利用容斥原理,其实已经求出了欧拉函数的计算公式,但是底下我们再利用积性作为性质来证明一下欧拉函数的公式。

欧拉函数的性质

定义 P \mathbb{P} P表示质数集合。

性质1

∀ x ⊥ y : φ ( x ) ⋅ φ ( y ) = φ ( x ⋅ y ) \forall x \perp y:\varphi(x)\cdot\varphi(y)=\varphi(x\cdot y) xy:φ(x)φ(y)=φ(xy)

欧拉函数是积性函数。

性质2

∀ p ∈ P : φ ( p ) = p − 1 \forall p \in \mathbb{P}:\varphi(p)=p-1 pP:φ(p)=p1

性质3

φ ( p k ) = ( p − 1 ) p k − 1 \varphi(p^k)=(p-1)p^{k-1} φ(pk)=(p1)pk1

证明:
对于 p k p^k pk,在 [ 0 , p k − 1 ] [0,p^k-1] [0,pk1]范围内显然只有p的倍数与它不互质。
那么在此范围内,p的倍数一共有 { 0 ⋅ p , 1 ⋅ p , 2 ⋅ p , 3 ⋅ p , . . . , ( p k − 1 ⋅ p ) } \{0\cdot p,1\cdot p,2\cdot p,3\cdot p,...,(p^{k-1}\cdot p)\} {0p,1p,2p,3p,...,(pk1p)}这些数(不包括 ( p k − 1 ⋅ p ) (p^{k-1}\cdot p) (pk1p)),也就是总共 p k − 1 p^{k-1} pk1个数。
那么与 p k p^k pk互质的数的个数就是 φ ( p k ) = p k − p k − 1 = p k − 1 ( p − 1 ) \varphi(p^k)=p^k-p^{k-1}=p^{k-1}(p-1) φ(pk)=pkpk1=pk1(p1)

QED.

性质4

φ ( n ) = n ∏ i = 1 s ( 1 − 1 p i ) \varphi(n)=n\prod_{i=1}^s\left(1-\frac 1 {p_i} \right) φ(n)=ni=1s(1pi1)

欧拉函数计算公式。

证明:
p i p_i pi表示 n n n的不同质因子, s s s表示质因子个数
推导积性函数的性质时,很容易想到把一个数分解成它的标准分解式,把函数拆开:
φ ( n ) = φ ( ∏ i = 1 s p i a i ) \varphi(n)=\varphi\left(\prod_{i=1}^sp_i^{a_i}\right) φ(n)=φ(i=1spiai)

注意到各个素因子之间肯定是互质的,因此可以拆开:
= ∏ i = 1 s φ ( p i a i ) =\prod_{i=1}^s\varphi(p_i^{a_i}) =i=1sφ(piai)

直接套公式:
= ∏ i = 1 s ( p i − 1 ) p i a i − 1 =\prod_{i=1}^s(p_i-1)p_i^{a_i-1} =i=1s(pi1)piai1
= ∏ i = 1 s ( 1 − 1 p i ) p i a i =\prod_{i=1}^s\left(1-\frac 1 {p_i}\right)p_i^{a_i} =i=1s(1pi1)piai

其实 ∏ i = 1 s p i a i \prod_{i=1}^sp_i^{a_i} i=1spiai就是 n n n,可以提出来:
= n ∏ i = 1 s ( 1 − 1 p i ) =n\prod_{i=1}^s\left(1-\frac 1 {p_i}\right) =ni=1s(1pi1)

QED.
最后我们发现, a i a_i ai没了,这表明,欧拉函数只和质因子有关,和含有同一个质因子的次数无关。这也很显然,只要含有此质因子一次, n n n就与此质因子所有的倍数不互质了。

推论1:

m ∣ n : φ ( m ) ∣ φ ( n ) m|n:\varphi(m)|\varphi(n) mn:φ(m)φ(n)

目前没看到什么用

证明就是把公式拆开:
φ ( n ) = n m m ∏ ( 1 − 1 只属于 n 不属于 m 的质因子 ) ⋅ ∏ ( 1 − 1 m 的质因子 ) \varphi(n)=\frac n m m \prod\left(1-\frac 1 {只属于n不属于m的质因子}\right)\cdot\prod\left(1-\frac 1 {m的质因子}\right) φ(n)=mnm(1只属于n不属于m的质因子1)(1m的质因子1)
= n m ∏ ( 1 − 1 只属于 n 不属于 m 的质因子 ) ⋅ m ∏ ( 1 − 1 m 的质因子 ) =\frac n m \prod\left(1-\frac 1 {只属于n不属于m的质因子}\right)\cdot m\prod\left(1-\frac 1 {m的质因子}\right) =mn(1只属于n不属于m的质因子1)m(1m的质因子1)
= n m ∏ ( 1 − 1 只属于 n 不属于 m 的质因子 ) φ ( m ) =\frac n m \prod\left(1-\frac 1 {只属于n不属于m的质因子}\right)\varphi(m) =mn(1只属于n不属于m的质因子1)φ(m)

QED.

推论2:

p ∈ P : φ ( p ⋅ x ) = { p ∣ x : p ⋅ φ ( x )          e l s e : φ ( p ) ⋅ φ ( x ) p \in \mathbb{P}: \varphi(p\cdot x)= \left\{\begin{matrix} p|x:p\cdot \varphi(x)\;\;\;\;\\ else:\varphi(p)\cdot\varphi(x) \end{matrix}\right. pP:φ(px)={px:pφ(x)else:φ(p)φ(x)

可以用来筛欧拉函数。

证明也是把公式拆开。

推论3

gcd ⁡ ( x , y ) = d : φ ( x y ) = φ ( x ) φ ( y ) d φ ( d ) \gcd(x,y)=d:\varphi(xy)=\frac{\varphi(x)\varphi(y)d}{\varphi(d)} gcd(x,y)=d:φ(xy)=φ(d)φ(x)φ(y)d

这个过程实际上是积性函数性质的推广。
所以证明也是带进公式:
φ ( x y ) = x y ∏ ( 1 − 1 x y 的质因子 ) \varphi(xy)=xy\prod\left(1-\frac 1{xy的质因子}\right) φ(xy)=xy(1xy的质因子1)

= x y ( ∏ ( 1 − 1 x 的质因子 ) ∏ ( 1 − 1 y 的质因子 ) ∏ ( 1 − 1 x y 的公共质因子 ) ) =xy\left(\frac{\prod\left(1-\frac{1}{x的质因子}\right)\prod\left(1-\frac{1}{y的质因子}\right)}{\prod\left(1-\frac{1}{xy的公共质因子}\right)}\right) =xy((1xy的公共质因子1)(1x的质因子1)(1y的质因子1))

拆一下贡献,把 x x x贡献给左边的prod式,y贡献到右边:
= x ∏ ( 1 − 1 x 的质因子 ) y ∏ ( 1 − 1 y 的质因子 ) ∏ ( 1 − 1 x y 的公共质因子 ) =\frac{x\prod\left(1-\frac{1}{x的质因子}\right)y\prod\left(1-\frac{1}{y的质因子}\right)}{\prod\left(1-\frac{1}{xy的公共质因子}\right)} =(1xy的公共质因子1)x(1x的质因子1)y(1y的质因子1)

上下乘一个 d d d
= x ∏ ( 1 − 1 x 的质因子 ) y ∏ ( 1 − 1 y 的质因子 ) ⋅ d d ⋅ ∏ ( 1 − 1 x y 的公共质因子 ) =\frac{x\prod\left(1-\frac{1}{x的质因子}\right)y\prod\left(1-\frac{1}{y的质因子}\right)\cdot d}{d\cdot\prod\left(1-\frac{1}{xy的公共质因子}\right)} =d(1xy的公共质因子1)x(1x的质因子1)y(1y的质因子1)d
= φ ( x ) φ ( y ) d φ ( d ) =\frac{\varphi(x)\varphi(y)d}{\varphi(d)} =φ(d)φ(x)φ(y)d

QED.

性质5

事实上,欧拉函数还有如下重要性质:

n = ∑ d ∣ n φ ( d ) n=\underset{d|n}{\sum}\varphi(d) n=dnφ(d)

这个性质证明起来比较麻烦,主要有这么几种方法:

  1. 比较形式的朴素证明
  2. 狄利克雷卷积
  3. 朴素的证明

这里只说第1,3种证明方法,其他的方法遇到的时候再说好了。

比较形式的朴素证明:

首先有: X n = Z ∩ [ 1 , n ] \mathbb{X}_n=\mathbb{Z}\cap[1,n] Xn=Z[1,n],也就是 X n = { 1 , 2 , . . . , n } \mathbb{X}_n=\{1,2,...,n\} Xn={1,2,...,n}
其次定义 A d = { x ∈ X n , gcd ⁡ ( x , n ) = d } \mathbb{A}_d=\{x \in \mathbb{X}_n,\gcd(x,n)=d\} Ad={xXn,gcd(x,n)=d},也就是区间[1,n]中gcd=d的所有数

注意到: d ∤ n : A d = ∅ d∤n:\mathbb{A}_d=\varnothing dn:Ad=
因而有: ⋃ d ∣ n A d = ⋃ d = 1 n A d = X n \underset{d|n}\bigcup \mathbb{A}_d=\overset{n}{\underset{d=1}\bigcup }\mathbb{A}_d=\mathbb{X}_n dnAd=d=1nAd=Xn

注意到: d ∣ n : A d = { x ∈ X n , gcd ⁡ ( x , n ) = d } = { x ∈ X n , gcd ⁡ ( x d , n d ) = 1 } = { x ∈ X n d , gcd ⁡ ( x , n d ) = 1 } d|n:\mathbb{A}_d=\{x \in \mathbb{X}_n,\gcd(x,n)=d\}=\{x \in \mathbb{X}_n,\gcd( \frac x d ,\frac n d )=1\}=\{x \in \mathbb{X}_{\frac n d },\gcd( x, \frac n d )=1\} dn:Ad={xXn,gcd(x,n)=d}={xXn,gcd(dx,dn)=1}={xXdn,gcd(x,dn)=1},此时 ∣ A d ∣ = φ ( n d ) |A_d|=\varphi(\frac n d) Ad=φ(dn)

因此有: n = ∣ X n ∣ = ∣ ⋃ d ∣ n A d ∣ n=\left|\mathbb{X}_n\right|=\left|\underset{d|n}\bigcup \mathbb{A}_d\right| n=Xn= dnAd

如何计算 A d \mathbb{A}_d Ad的并集的大小呢?事实上,任意 A d \mathbb{A}_d Ad之间交集都为空,这很显然,所以只需要计算每个集合的大小,再求和就好了。
= ∑ d ∣ n ∣ A d ∣ = ∑ d ∣ n φ ( n d ) = ∑ d ∣ n φ ( d ) =\underset{d|n}\sum \left|\mathbb{A}_d\right|=\underset{d|n}\sum\varphi(\frac n d)=\underset{d|n}\sum\varphi(d) =dnAd=dnφ(dn)=dnφ(d)

QED.

朴素的证明:

n = 12 n=12 n=12为例,我们先考虑以12为分母的所有真分数:
0 12 , 1 12 , 2 12 , 3 12 , 4 12 , 5 12 , 6 12 , 7 12 , 8 12 , 9 12 , 10 12 , 11 12 , 11 12 \frac 0 {12},\frac 1 {12},\frac 2 {12},\frac 3 {12},\frac 4 {12},\frac 5 {12},\frac 6 {12},\frac 7 {12},\frac 8 {12},\frac 9 {12},\frac {10} {12},\frac {11} {12},\frac {11} {12} 120,121,122,123,124,125,126,127,128,129,1210,1211,1211

约分,整理一下:
0 1 , 1 2 , 1 3 , 2 3 , 1 4 , 3 4 , 1 6 , 5 6 , 1 12 , 5 12 , 7 12 , 11 12 \frac 0 1,\frac 1 2,\frac 1 3,\frac 2 3,\frac 1 4,\frac 3 4,\frac 1 6,\frac 5 6,\frac 1 {12},\frac 5 {12},\frac 7 {12},\frac {11} {12} 10,21,31,32,41,43,61,65,121,125,127,1211

首先,分母都是 n n n的约数,这很显然。
其次,分母为 d d d的分数出现次数为 φ ( d ) \varphi(d) φ(d)。这怎么证明呢?
假设分母为 d d d的分数共有 X d X_d Xd个。
首先 X d ≤ φ ( d ) X_d\leq\varphi(d) Xdφ(d)
其次,不存在 x ⊥ d : x d 不存在 x\perp d:\frac x d 不存在 xd:dx不存在。因为 x d \frac x d dx对应的 x ⋅ n d n \frac {x\cdot \frac n d} n nxdn一定存在,且只有一种约分的方法(一个分数只有一种最简形式)。因此: φ ( d ) ≤ X d \varphi(d)\leq X_d φ(d)Xd

因此 X d = φ ( d ) X_d=\varphi(d) Xd=φ(d)

而我们知道,把 n n n为分母的真分数化简,最终一定得到 n n n个不相同的既约真分数:
n = ∑ d ∣ n X d = ∑ d ∣ n φ ( d ) n=\underset{d|n}\sum X_d=\underset{d|n}\sum \varphi(d) n=dnXd=dnφ(d)

很明显不可能得到小于 n n n个既约真分数吧?(好像不太明显)
假设有两个既约真分数相等,设为 a b = c d ( a ⊥ b , c ⊥ d , a ≠ c , b ≠ d ) \frac a b =\frac c d(a\perp b,c\perp d,a\neq c,b\neq d) ba=dc(ab,cd,a=c,b=d)
即: a d = b c ad=bc ad=bc
就有: a d c = b \frac {ad} c =b cad=b d = b c a d=\frac {bc} a d=abc
由于: c ⊥ d      c\perp d\;\; cd a ⊥ b a\perp b ab
所以: c ∣ a c|a ca a ∣ c a|c ac,即 a = c a=c a=c,矛盾。

QED.

性质6

小于x且与x互质的数的和: x φ ( x ) 2 x\frac {\varphi(x)} 2 x2φ(x)

妙极了,因为O( n \sqrt n n )用试除法分解质因子的同时可以得到一个数的欧拉函数值,所以可以O( n \sqrt n n )求这个和。(还可以 O ( n 4 ) O\left(\sqrt[4]n\right) O(4n )求)

证明:
…写到这里突然不会证了。
我刚刚明明会的…

好了,我证出来了。但是要用莫比乌斯反演狄利克雷卷积
不放到莫比乌斯反演的文章里是因为,莫比乌斯反演的文章太长了,用浏览器编辑起来非常的卡。

要求:
∑ i = 1 n − 1 [ i ⊥ n ] i \overset{n-1}{\underset{i=1}\sum}[i\perp n]i i=1n1[in]i

直接对这个式子做莫比乌斯反演:
= ∑ d ∣ n μ ( d ) ∑ i = 1 n − 1 [ d ∣ i ] i =\underset{d|n}\sum \mu(d)\overset{n-1}{\underset{i=1}\sum}[d|i]i =dnμ(d)i=1n1[di]i
= ∑ d ∣ n μ ( d ) d ∑ i = 1 ⌊ n − 1 d ⌋ i =\underset{d|n}\sum \mu(d)d\overset{\left\lfloor\frac {n-1}d\right\rfloor}{\underset{i=1}\sum}i =dnμ(d)di=1dn1i

注意到 ⌊ n − 1 d ⌋ = n d − 1 \left\lfloor\frac {n-1}d\right\rfloor=\frac nd -1 dn1=dn1,这是因为 d ∣ n d \mid n dn,因此 n d \frac nd dn恰好取整,因而 ⌊ n − 1 d ⌋ \left\lfloor\frac {n-1}d\right\rfloor dn1应等于 n d \frac nd dn的取整值再 − 1 -1 1

= ∑ d ∣ n μ ( d ) d ∑ i = 1 n d − 1 i =\underset{d|n}\sum \mu(d)d\overset{\frac nd -1}{\underset{i=1}\sum}i =dnμ(d)di=1dn1i

做等差数列求和:

= ∑ d ∣ n μ ( d ) d ( n d ) ( n d + 1 ) 2 =\underset{d|n}\sum \mu(d)d\frac{\left(\frac nd\right)\left(\frac nd+1\right)}{2} =dnμ(d)d2(dn)(dn+1)
= 1 2 ∑ d ∣ n μ ( d ) d ( n d ) ( n d + 1 ) =\frac{1}{2}\underset{d|n}\sum \mu(d)d{\left(\frac nd\right)\left(\frac nd+1\right)} =21dnμ(d)d(dn)(dn+1)
= n 2 ∑ d ∣ n μ ( d ) n d + 1 2 ∑ d ∣ n μ ( d ) d ⋅ n d =\frac{n}{2}\underset{d|n}\sum \mu(d)\frac nd+\frac{1}{2}\underset{d|n}\sum \mu(d)d\cdot \frac nd =2ndnμ(d)dn+21dnμ(d)ddn
= n 2 ∑ d ∣ n μ ( d ) n d + n 2 ∑ d ∣ n μ ( d ) =\frac{n}{2}\underset{d|n}\sum \mu(d)\frac nd+\frac{n}{2}\underset{d|n}\sum \mu(d) =2ndnμ(d)dn+2ndnμ(d)
= n 2 ∑ d ∣ n μ ( d ) n d + n 2 [ n = 1 ] =\frac{n}{2}\underset{d|n}\sum \mu(d)\frac nd+\frac n2[n=1] =2ndnμ(d)dn+2n[n=1]

n > 1 n>1 n>1

= n 2 ∑ d ∣ n μ ( d ) n d =\frac{n}{2}\underset{d|n}\sum \mu(d)\frac nd =2ndnμ(d)dn

这个和式就是狄利克雷卷积:
= n 2 φ ( n ) =\frac n2\varphi(n) =2nφ(n)

QED.

当然还有一种证明方法,考虑到gcd算法,设 x ⊥ n x\perp n xn,则 g c d ( n , x ) = g c d ( n , n − x ) = 1 gcd(n,x)=gcd(n,n-x)=1 gcd(n,x)=gcd(n,nx)=1,说明 n − x ⊥ n n-x\perp n nxn,这表明,与 n n n互质的数成对出现,且每一对的和都为 n n n。我们知道与 n n n互质的数共有 φ ( n ) \varphi(n) φ(n)个,也就是 φ ( n ) 2 \frac{\varphi(n)}2 2φ(n)对。求得答案相同。

关于欧拉函数的其他一些东西

与欧拉函数有关的练习题

P2158 [SDOI2008] 仪仗队
P2568 GCD
P2398 GCD SUM

杂项

事实上, φ ( x ) = x − 1 \varphi(x)=x-1 φ(x)=x1表明 x ∈ P x\in\mathbb{P} xP,这或许有用,但大概率没用,但是还是有点用。

后记

于是皆大欢喜。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值