此条目的主題是小於等於
n的正整數中與
n互質的數的數目。关于形式為

的函數,請見「
歐拉函數 (複變函數)」。
当
n为1至1000的整数时

的值
在數論中,對正整數n,歐拉函數
是小於等於n的正整數中與n互質的數的數目。此函數以其首名研究者歐拉命名,它又稱為φ函數(由高斯所命名)或是歐拉總計函數[1](totient function,由西爾維斯特所命名)。
例如
,因為1、3、5和7均與8互質。
欧拉函数实际上是模n的同余类所构成的乘法群(即环
的所有单位元组成的乘法群)的阶。这个性质与拉格朗日定理一起構成了欧拉定理的證明。
歷史:欧拉函數與費馬小定理[编辑]
1736年,欧拉證明了费马小定理[2]:
- 假若
為質數,
為任意正整數,那麼
可被
整除。
然後欧拉予以一般化:
- 假若
與
互質,那麼
可被
整除。亦即,
。
其中
即為歐拉總計函數。如果
為質數,那麼
,因此,有高斯的版本[3]:
- 假若
為質數,
與
互質(
不是
的倍數),那麼
。
欧拉函數的值[编辑]
以下為
為
至
時,對應
的值
φ(n) for 1 ≤ n ≤ 100
+
|
1 |
2 |
3 |
4 |
5 |
6 |
7 |
8 |
9 |
10
|
0
|
1 |
1 |
2 |
2 |
4 |
2 |
6 |
4 |
6 |
4
|
10
|
10 |
4 |
12 |
6 |
8 |
8 |
16 |
6 |
18 |
8
|
20
|
12 |
10 |
22 |
8 |
20 |
12 |
18 |
12 |
28 |
8
|
30
|
30 |
16 |
20 |
16 |
24 |
12 |
36 |
18 |
24 |
16
|
40
|
40 |
12 |
42 |
20 |
24 |
22 |
46 |
16 |
42 |
20
|
50
|
32 |
24 |
52 |
18 |
40 |
24 |
36 |
28 |
58 |
16
|
60
|
60 |
30 |
36 |
32 |
48 |
20 |
66 |
32 |
44 |
24
|
70
|
70 |
24 |
72 |
36 |
40 |
36 |
60 |
24 |
78 |
32
|
80
|
54 |
40 |
82 |
24 |
64 |
42 |
56 |
40 |
88 |
24
|
90
|
72 |
44 |
60 |
46 |
72 |
32 |
96 |
42 |
60 |
40
|
若
有標準分解
(其中各
為互異的質因子,各
為質因子的次數),則歐拉函數在該處的值為

亦可等價地寫成

此結果可由
在質數冪處的取值,以及其積性得到。
質數冪處取值[编辑]
最簡單的情況有
(小于等于1的正整数中唯一和1互質的數就是1本身)。
一般地,若n是質數p的k次冪,則
,因為除了p的倍數外,其他數都跟n互質。
歐拉函數是積性函數,即是说若m,n互質,則
。使用中國剩餘定理有較簡略的證明:設A, B, C是跟m, n, mn互質的數的集,據中國剩餘定理,
和
可建立雙射(一一對應)關係,因此兩者元素個數相等。
較詳細的證明如下:
設
,且
。若
與
互質,則
與
、
均互質。又因為
,若
分別與
互質,則
一定和
互質。反之亦然,即若
與
互質,則亦有
分別與
互質。
由中國剩餘定理,方程組

的通解可以寫成
其中
為固定的整數,故二元組
(要滿足
)與小於
且與
互質的正整數
一一對應。
由
的定義(和乘法原理),前一種數對
的個數為
。而後一種數
的個數為
。
所以,
公式的證明[编辑]
結合以上兩小節的結果可得:若
有質因數分解式
,則

計算
的歐拉函數值:

n的欧拉函数
也是循环群 Cn 的生成元的个数(也是n阶分圆多项式的次数)。Cn 中每个元素都能生成 Cn 的一个子群,即必然是某个子群的生成元。而且按照定义,不同的子群不可能有相同的生成元。此外, Cn 的所有子群都具有 Cd 的形式,其中d整除n(记作d | n)。因此只要考察n的所有因数d,将 Cd 的生成元个数相加,就将得到 Cn 的元素总个数:n。也就是说:

其中的d为n的正约数。
运用默比乌斯反转公式来“翻转”这个和,就可以得到另一个关于
的公式:

其中 μ 是所谓的默比乌斯函数,定义在正整数上。
對任何兩個互質的正整數a, m(即 gcd(a,m) = 1),
,有

即欧拉定理。
这个定理可以由群论中的拉格朗日定理得出,因为任意与m互质的a都属于环
的单位元组成的乘法群
當m是質數p時,此式則為:

即費馬小定理。
生成函数[编辑]
以下两个由欧拉函数生成的级数都是来自于上节所给出的性质:
。
由
(n)生成的狄利克雷级数是:

其中ζ(s)是黎曼ζ函数。推导过程如下:



- 使用开始时的等式,就得到:

- 于是

欧拉函数生成的朗贝级数如下:

其对于满足 |q|<1 的q收敛。
推导如下:

后者等价于:

欧拉函数的走势[编辑]
随着n变大,估计
的值是一件很难的事。当n为质数时,
,但有时
又与n差得很远。
在n足够大时,有估计:
- 对每个 ε > 0,都有n > N(ε)使得

如果考虑比值:

由以上已经提到的公式,可以得到其值等于类似
的项的乘积。因此,使比值小的n将是两两不同的质数的乘积。由素数定理可以知道,常数 ε 可以被替换为:

就平均值的意义上来说是与n很相近的,因为:

其中的O表示大O符号。这个等式也可以说明在集合 {1, 2, ..., n} 中随机选取两个数,则当n趋于无穷大时,它们互质的概率趋于
。一个相关的结果是比值
的平均值:

其他与欧拉函数有关的等式[编辑]

使得 ![{\displaystyle [(a>1\land n>1)\rightarrow (l|\varphi (a^{n}-1)\land l\geq n)]}](https://wikimedia.org/api/rest_v1/media/math/render/svg/580703fbafb9bc0f881425b2a65ce95e2c98eeb7)
使得 ![{\displaystyle [(a>1\land n>6\land 4\nmid n)\rightarrow (l|\varphi (a^{n}-1)\land l\geq 2n)]}](https://wikimedia.org/api/rest_v1/media/math/render/svg/d7f52bf7a4c789d0247a5b71dd96b059946233fa)






与欧拉函数有关的不等式[编辑]
,其中n > 2,γ 为欧拉-马歇罗尼常数。
,其中n > 0。
- 对整数n > 6,
。
- 当n为质数时,显然有
。对于合数的n,则有:

程式代码[编辑]
C++[编辑]
template <typename T>
inline T phi(T n) {
T ans = n;
for (T i = 2; i * i <= n; ++i)
if (n % i == 0) {
ans = ans / i * (i - 1);
while (n % i == 0) n /= i;
}
if (n > 1) ans = ans / n * (n - 1);
return ans;
}
参考来源[编辑]
- Milton Abramowitz、Irene A. Stegun, Handbook of Mathematical Functions, (1964) Dover Publications , New York. ISBN 0-486-61272-4. 24.3.2节.
- Eric Bach、Jeffrey Shallit, Algorithmic Number Theory, 卷 1, 1996, MIT Press. ISBN 0-262-02405-5, 8.8节,234页.
- 柯召,孙琦:数论讲义(上册),第二版,高等教育出版社,2001
文獻来源[编辑]
參考資料[编辑]