Carmichael function[卡迈克尔函数相关性质]

文章目录

  • Carmichael函数
    • 示例
    • 用Carmichael定理计算 λ ( n ) \lambda(n) λ(n)
      • Carmichael定理
  • Carmichael函数的性质

Carmichael函数

在数论中,Carmichael函数的定义为使得 a m ≡ 1   m o d   n a^{m} \equiv 1 \bmod n am1modn成立的最小正整数 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 121mod8 3 2 = 9 ≡ 1   m o d   8 3^2=9\equiv1\bmod8 32=91mod8 5 2 = 25 ≡ 1   m o d   8 5^2=25\equiv1\bmod8 52=251mod8,以及 7 2 = 49 ≡ 1   m o d   8 7^{2}=49 \equiv 1\bmod 8 72=491mod8

对于欧拉函数来说, φ ( 8 ) = 4 \varphi(8)=4 φ(8)=4,因为欧拉函数只需要满足对于所有与8互素的数 a a a,有 a 4 ≡ 1 (   m o d   8 ) a^{4} \equiv 1(\bmod 8) a41(mod8),而不需要满足 a a a的最小性。

用Carmichael定理计算 λ ( n ) \lambda(n) λ(n)

根据唯一因式分解定理,任何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=p1r1p2r2pkrk
其中, p 1 < p 2 < … < p k p_{1}p1<p2<<pk是有小到大排列的素数 r 1 , r 2 , … , r k r_{1}, r_{2}, \ldots, r_{k} r1,r2,,rk是正整数。那么, λ ( n ) \lambda(n) λ(n)就是其中每一项的λ的最小公倍数,有:
λ ( 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定理

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)=pr1(p1)

Carmichael函数的性质

a a a n n n互素, m m m是最小指数, a m ≡ 1   m o d   n a^m\equiv1\bmod n am1modn,那么有:
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) abλ(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))

你可能感兴趣的:(密码学,抽象代数,安全)