Skip to content

费马小定理

Fermat's little theorem

素数 p 与不被 p 整除的整数 a 满足 a^(p−1)≡1 mod p。

条目类型
定理

形式陈述

p素数。对任意整数 a,在模同余意义下都有

apa(modp).

pa,则 a 的剩余类在模 p 的乘法下可逆,可以消去一个 a,得到常见形式

ap11(modp).

两个版本覆盖的范围略有不同。第二式只适用于 ap 互素的情形;第一式在 pa 时仍成立,因为两边都同余于零。把这一区分写清楚,可以避免在底数不可逆时错误地消元。

一种证明使用有限群。模 p 的非零剩余类组成阶为 p1 的乘法群 Fp×。由Lagrange 定理,任意元素的阶整除 p1,所以

[a]p1=[1].

另一种证明更接近初等数论。若 pa,乘法映射

[k][ak]

会把非零剩余类 [1],,[p1] 重新排列。将排列前后的元素全部相乘,得到

ap1(p1)!(p1)!(modp).

由于 (p1)! 在模 p 下可逆,消去它便得到结论。两种证明表达的是同一结构:素数性确保所有非零剩余类都能参与乘法群运算。

直觉

费马小定理不是“幂碰巧出现周期”,而是有限群中元素反复相乘必然回到单位元的具体表现。模 p 的乘法世界只有 p1 个非零状态;群结构又禁止轨道在到达 1 之前陷入不可逆的死路,因此每个元素的周期都整除 p1

定理给出的是一个统一有效的指数,不一定给出最短周期。某个底数的真正周期是它在 Fp× 中的阶,可以是 p1 的真因子。只有本原元的阶才恰好等于 p1

把所有底数同时放进一个多项式,还能得到有限域恒等式

xpx=cFp(xc).

费马小定理说明每个 cFp 都是左侧的根;两边又都是首一的 p 次多项式,因此完全相同。这个形式把逐个整数的同余提升为域上的结构结论:Frobenius 映射 xxp 在素域上就是恒等映射。

例子与边界

p=11a=2。因为

210=10241(mod11),

定理得到验证。但同样在模 11 下,

35=2431(mod11),

所以 3 的阶是 5,而不是 10。这说明 p1 只是所有非零底数共同适用的周期上界。

当底数被模数整除时,只能使用 apa(modp)。例如 a=p=11 时,11100(mod11),显然不能写成 1。错误往往不在幂运算,而在忽略了消去 a 所需的可逆性。

逆命题不成立。合数

341=1131

满足 23401(mod341),因为 210=10241(mod341)。这样的数称为以 2 为底的伪素数。更强的反例是 Carmichael 数;最小的 561=31117 对每个与 561 互素的 a 都满足

a5601(mod561).

因此,若一个数通过若干次费马测试,只能说明它没有被这些底数识破,不能据此断言它是素数。

费马小定理可用于约化巨大指数。计算 32026(mod17) 时,317 互素,因此指数可按 16 约化:

202610(mod16).

再由

3413,38161(mod17),

得到

32026310(1)98(mod17).

这里约化的是乘法群中的指数。若底数与模数不互素,就不能把指数简单地按 p1 处理。

推论与应用

pa,定理立即给出模逆公式

a1ap2(modp).

配合二进制快速幂,可以在 O(logp) 次模乘内计算逆元。例如模 7 下,31355,因为 351(mod7)。在需要大量逆元时,还要比较扩展 Euclid、批量递推与预处理等方法;费马公式提供的是一种结构上直接、实现上简洁的选择。

Euler 定理把结论推广到任意正整数模数:若 gcd(a,n)=1,则

aφ(n)1(modn).

n=p 为素数时,φ(p)=p1,费马小定理正是这一一般群论结论的素数模特例。RSA 的正确性证明使用的是这条更一般的指数周期结构,而不是单独依赖素数模公式。

有限域 Fq 中,相应推广是每个元素都满足 xq=x。多项式 xqx 因而恰好以该域全部元素为根。这个恒等式用于构造有限域、描述子域,并分析 Frobenius 自同态的轨道。

费马素性测试从本定理得到必要条件,但伪素数和 Carmichael 数表明该条件不充分。Miller–Rabin 测试进一步利用 n1=2sd 的平方链结构,能够识别费马测试遗漏的大量合数;它的可靠性来自更强的群结构约束,而不是简单增加底数数量。

参考资料
  • Kenneth Ireland and Michael Rosen, A Classical Introduction to Modern Number Theory, 2nd ed., Springer, 1990, Chapter 2.
  • Ivan Niven, Herbert S. Zuckerman, and Hugh L. Montgomery, An Introduction to the Theory of Numbers, 5th ed., Wiley, 1991, Chapter 2.
  • Victor Shoup, A Computational Introduction to Number Theory and Algebra, 2nd ed., Cambridge University Press, 2009, Chapters 2–3.
关系图谱6 个相邻概念 · 1 类关系

拖动节点调整位置。

显示关系

显示:依赖

  1. 前置三跳
  2. 前置二跳
  3. 前置一跳
  4. 当前条目
  5. 后续一跳
  6. 后续二跳
  7. 后续三跳
文字版关系按与当前条目的最短距离分组