在数论中,Carmichael函数的定义为使得 a m ≡ 1 m o d n a^{m} \equiv 1 \bmod n am≡1modn成立的最小正整数 m m m,其中 ( a , n ) = 1 (a,n)=1 (a,n)=1,将 m m m记作 λ ( n ) \lambda(n) λ(n)。在抽象代数术语中, λ ( n ) \lambda(n) λ(n)是模 n n n的乘法群的指数。
Carmichael函数也被称为规约函数(reduced totient function)以及最小泛指数函数(least universal exponent function)。
下图是一张Carmichael函数 λ ( n ) \lambda(n) λ(n)与欧拉函数 φ ( n ) \varphi(n) φ(n)的对比表:
n n n | 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | 11 | 12 | 13 | 14 | 15 | 16 | 17 | 18 | 19 | 20 | 21 | 22 | 23 | 24 | 25 | 26 | 27 | 28 | 29 | 30 | 31 | 32 | 33 | 34 | 35 | 36 |
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
λ ( n ) \lambda(n) λ(n) | 1 | 1 | 2 | 2 | 4 | 2 | 6 | 2 | 6 | 4 | 10 | 2 | 12 | 6 | 4 | 4 | 16 | 6 | 18 | 4 | 6 | 10 | 22 | 2 | 20 | 12 | 18 | 6 | 28 | 4 | 30 | 8 | 10 | 16 | 12 | 6 |
φ ( n ) \varphi(n) φ(n) | 1 | 1 | 2 | 2 | 4 | 2 | 6 | 4 | 6 | 4 | 10 | 4 | 12 | 6 | 8 | 8 | 16 | 6 | 18 | 8 | 12 | 10 | 22 | 8 | 20 | 12 | 18 | 12 | 28 | 8 | 30 | 16 | 20 | 16 | 24 | 12 |
对于8的Charmichael函数是2,即 λ ( 8 ) = 2 \lambda(8)=2 λ(8)=2,则对于任意的 a a a满足 ( a , 8 ) = 1 (a,8)=1 (a,8)=1,有 a 2 = 1 m o d 8 a^2=1\bmod 8 a2=1mod8。也就是说 1 2 ≡ 1 m o d 8 1^2\equiv1\bmod8 12≡1mod8, 3 2 = 9 ≡ 1 m o d 8 3^2=9\equiv1\bmod8 32=9≡1mod8, 5 2 = 25 ≡ 1 m o d 8 5^2=25\equiv1\bmod8 52=25≡1mod8,以及 7 2 = 49 ≡ 1 m o d 8 7^{2}=49 \equiv 1\bmod 8 72=49≡1mod8。
对于欧拉函数来说, φ ( 8 ) = 4 \varphi(8)=4 φ(8)=4,因为欧拉函数只需要满足对于所有与8互素的数 a a a,有 a 4 ≡ 1 ( m o d 8 ) a^{4} \equiv 1(\bmod 8) a4≡1(mod8),而不需要满足 a a a的最小性。
根据唯一因式分解定理,任何n>1的整数都可以用唯一的方式写成
n = p 1 r 1 p 2 r 2 ⋯ p k r k n=p_{1}^{r_{1}} p_{2}^{r_{2}} \cdots p_{k}^{r_{k}} n=p1r1p2r2⋯pkrk
其中, p 1 < p 2 < … < p k p_{1}
λ ( n ) = lcm ( λ ( p 1 r 1 ) , λ ( p 2 r 2 ) , … , λ ( p k r k ) ) \lambda(n)=\operatorname{lcm}\left(\lambda\left(p_{1}^{r_{1}}\right), \lambda\left(p_{2}^{r_{2}}\right), \ldots, \lambda\left(p_{k}^{r_{k}}\right)\right) λ(n)=lcm(λ(p1r1),λ(p2r2),…,λ(pkrk))
上述的公式可由中国剩余定理来证明。
Carmichael定理解释了如何计算素数幂 p r p^r pr的 λ ( p r ) \lambda(p^r) λ(pr):对于奇数素数的幂以及2和4, λ ( p r ) \lambda(p^r) λ(pr)等于欧拉函数 φ ( p r ) \varphi(p^r) φ(pr);对于 2 3 2^3 23及以上的2的幂次,它等于欧拉函数的一半,即:
λ ( p r ) = { φ ( p r ) if p r = 2 , 3 r , 4 , 5 r , 7 r , 1 1 r , 1 3 r , 1 7 r , 1 9 r , 2 3 r , 2 9 r , 3 1 r , … 1 2 φ ( p r ) if p r = 8 , 16 , 32 , 64 , 128 , 256 , … \lambda\left(p^{r}\right)=\left\{\begin{array}{ll}\varphi\left(p^{r}\right) & \text { if } p^{r}=2,3^{r}, 4,5^{r}, 7^{r}, 11^{r}, 13^{r}, 17^{r}, 19^{r}, 23^{r}, 29^{r}, 31^{r}, \ldots \\ \frac{1}{2} \varphi\left(p^{r}\right) & \text { if } p^{r}=8,16,32,64,128,256, \ldots\end{array}\right. λ(pr)={ φ(pr)21φ(pr) if pr=2,3r,4,5r,7r,11r,13r,17r,19r,23r,29r,31r,… if pr=8,16,32,64,128,256,…
素数幂 p r p^r pr的欧拉函数的计算方法是:
φ ( p r ) = p r − 1 ( p − 1 ) \quad\varphi\left(p^{r}\right)=p^{r-1}(p-1) φ(pr)=pr−1(p−1)
设 a a a和 n n n互素, m m m是最小指数, a m ≡ 1 m o d n a^m\equiv1\bmod n am≡1modn,那么有:
m ∣ λ ( n ) \quad m \mid \lambda(n) m∣λ(n)
也就是说,模 n n n整数环中任意元素 a a a的阶 m : = ord n ( a ) m:=\operatorname{ord}_{n}(a) m:=ordn(a)整除 λ ( n ) \lambda(n) λ(n)。同时还有:
λ ( n ) = max { ord n ( a ) : gcd ( a , n ) = 1 } \quad\lambda(n)=\max \left\{\operatorname{ord}_{n}(a): \operatorname{gcd}(a, n)=1\right\} λ(n)=max{ ordn(a):gcd(a,n)=1}
a ∣ b ⇒ λ ( a ) ∣ λ ( b ) \quad a|b \Rightarrow \lambda(a)| \lambda(b) a∣b⇒λ(a)∣λ(b)
λ ( lcm ( a , b ) ) = lcm ( λ ( a ) , λ ( b ) ) \quad \lambda(\operatorname{lcm}(a, b))=\operatorname{lcm}(\lambda(a), \lambda(b)) λ(lcm(a,b))=lcm(λ(a),λ(b))