同余式、幂与费马小定理

关注我的公众号c137Lab获取更多相关内容

在这里插入图片描述

​ 看过了整数的规律,那么整数 aa 的幂 a1,a2,a^1,a^2,\cdotsmm 是否存在规律呢?一般来说,最好识别出同余规律的是素数,我们就从素数模开始。

​ 按照一般数论研究的方法,我们先列出一些数据,观察其中是否存在某些规律( a=1,2,3,a=1,2,3,\cdots ):

img1

​ 在这些表中可以看出许多有趣的规律,在此我们介绍其中的一个——费马小定理。这个结果由费马最先提出,但是费马并没有证明。第一个证明是莱布尼茨提出的。

费马小定理:

​ 设 pp 是素数, aa 是任意整数且 a≢0( mod p)a\not\equiv0(\ mod\ p)
ap11( mod p) a^{p-1}\equiv 1(\ mod\ p)

​ 在让人头疼的证明之前,我们先看看费马小定理到底有什么用。回想之前介绍过的索引余数系统(Index RNS),就是使用 agα mod pa\equiv g^\alpha\ mod\ p 来表示整数的。那么接下来对于 RNS 提出两个问题,并使用费马小定理解决这两个问题:

  1. α\alpha 很大时,如何快速计算出 aa

  2. 当已知 a,α,pa,\alpha,p 时,如何求解 gg

解:

  1. 例如当计算 235( mod 7)2^{35}(\ mod\ 7) 时,利用费马小定理可得 261( mod 7)2^6\equiv1(\ mod\ 7)
    235=26×5+5=(26)5+2515×25( mod 7)32( mod 7)4( mod 7) 2^{35}=2^{6\times5+5}=(2^6)^5+2^5\\ \equiv1^5\times2^5(\ mod\ 7)\equiv32(\ mod\ 7)\equiv4(\ mod\ 7)

  2. 假设解同余式 4x103( mod 11)4\equiv x^{103}(\ mod\ 11) ,根据费马小定理有 x101( mod 11)x^{10}\equiv1(\ mod\ 11)
    x100=(x10)10+x3 x^{100}=(x^{10})^{10}+x^3
    则原同余式可以等价为求解:
    4x3( mod 11) 4\equiv x^3(\ mod\ 11)
    则通过几次尝试或查找表即可完成求解。

​ 接下来开始证明费马小定理:

​ 为了详细地叙述证明思路,先证明一个特例:361( mod 7)3^6\equiv 1(\ mod\ 7)

观察 x( mod 7),x=1,2,,6x(\ mod\ 7),x=1,2,\cdots,6 ,将其乘以3:

x( mod 7)x(\ mod\ 7) 1 2 3 4 5 6
3x( mod 7)3x(\ mod\ 7) 3 6 2 5 1 4

​ 不难发现,第二行的数同样还是 123456123456 ,只不过进行了重新排序,将第一行和第二行分别相乘,可以得到下面的结论:
(31)(32)(33)(34)(35)(36)6!( mod 7) (3*1)(3*2)(3*3)(3*4)(3*5)(3*6)\equiv6!(\ mod\ 7)
即:
366!6!( mod 7) 3^6*6!\equiv6!(\ mod\ 7)
由于 6!6! 和 7 互素,则可以从同余式两边消去.即得证 361( mod 7)3^6\equiv1(\ mod\ 7)

接下来将这一结论拓展到一般性。首先证明上面用到的一个重要结论:

断言:pp 是素数,aa 是任何整数且 a≢0( mod p)a\not\equiv0(\ mod\ p) 则数
a,2a,3a,,(p1)a ( mod p) a,2a,3a,\cdots,(p-1)a\ (\ mod\ p)

1,2,3,,(p1) ( mod p) 1,2,3,\cdots,(p-1)\ (\ mod\ p)
相同,只是次序不同。

证明: 由于 aa 是任何整数且 a≢0( mod p)a\not\equiv0(\ mod\ p) ,则显然 a,2a,3a,,(p1)a ( mod p)a,2a,3a,\cdots,(p-1)a\ (\ mod\ p) 中没有一个数能够被 pp 整除。假设从数列中取出两个数 ja,kaja,ka ,令 1j,kp11\leq j,k\leq p-1 ,并假设他们同余
jaka( mod p) ja\equiv ka(\ mod\ p)
p(jk)ap\mid(j-k)a 由于 pp 不整除 aa ,根据素数整除性定理可以得到:
p(jk) p\mid (j-k)
同时 jk<p1|j-k|<p-1 ,不难看出 jk=0j-k=0j=kj=k

从这里可以得出一个结论:a,2a,3a,,(p1)aa,2a,3a,\cdots,(p-1)a 中任意的两个值对模 pp 不同。但是仅有 p1p-1 个数对模 pp 不同,即 1,2,3,,(p1)1,2,3,\cdots,(p-1),则两数列 a,2a,3a,,(p1)aa,2a,3a,\cdots,(p-1)a1,2,3,,(p1)1,2,3,\cdots,(p-1) 此时完成了断言的证明。

接下来利用这一断言证明费马小定理:

证明: 由于数列 a,2a,3a,,(p1)aa,2a,3a,\cdots,(p-1)a1,2,3,,(p1)1,2,3,\cdots,(p-1) 相同,则
a(2a)(3a)((p1)a)123(p1)( mod p) a\cdot (2a)\cdot(3a)\cdots((p-1)a)\equiv1\cdot2\cdot3\cdots(p-1)(\ mod\ p)

ap1(p1)!(p1)!( mod p) a^{p-1}\cdot(p-1)!\equiv(p-1)!(\ mod\ p)

由于 (p1)!(p-1)!pp 互素,消去 (p1)!(p-1)! 则可以得到费马小定理:
ap11( mod p) a^{p-1}\equiv1(\ mod\ p)

参考文献:A Brief Introduction to Number Theory --Joseph H.Silverman

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章