• 数论(9):费马小定理与欧拉定理


    概述:

    费马小定理和欧拉定理是数论中非常重要的两个定理,对解决整除问题和同余问题有着强大的功能。

    费马小定理与欧拉定理

    费马小定理:(m) 为质数且 (a) 不为 (m) 的倍数(即:(gcd(a,m) = 1)时有 $a^{m−1}≡1 mod (m) $

    另一个形式:对于任意整数 (a) ,有 (a^m equiv a pmod{m})

    根据费马小定理可知: (a^{m−2}) 就是 (a) 在模 (m) 意义下的逆元.

    欧拉定理:(a) , (m) 互质时, (aϕ(m)≡ 1 mod (m)) (这个式子也可以求逆元)

    其实根据欧拉函数,我们可以看出费马小定理就是欧拉定理的特殊情况,因为若 (m) 为质数:$ ϕ(m)=m−1$

    简单来说欧拉函数 φ(n) 是小于等于 n 的正整数中与 n 互质的数的个数。

    费马小定理证明

    设一个质数为 (p) ,我们取一个不为 (p) 倍数的数 (a)

    构造一个序列: (A={1,2,3dots,p-1}) ,这个序列有着这样一个性质:

    [prod_{i=1}^{n}space A_iequivprod_{i=1}^{n} (A_i imes a) pmod p ]

    证明:

    [ecause (A_i,p)=1,(A_i imes a,p)=1 ]

    又因为每一个 (A_i imes a pmod p) 都是独一无二的,且 (A_i imes a pmod p < p)

    得证(每一个 (A_i imes a) 都对应了一个 (A_i) )

    (f=(p-1)!) , 则 (fequiv a imes A_1 imes a imes A_2 imes a imes A_3 dots imes A_{p-1} pmod p)

    [a^{p-1} imes f equiv f pmod p \ a^{p-1} equiv 1 pmod p ]

    证毕。

    应用

    首先看一个基本的例子。

    (a = 3,n = 5),这两个数是互素的。

    (5) 小的正整数中与 (5) 互素的数有 (1、2、3和4),所以 (φ(5)=4)

    计算: (a^{φ(n)} = 3^4 =81),而 (81= 80 + 1 ≡ 1 (mod 5))

    与定理结果相符。

    简化幂的模运算

    这个定理可以用来简化幂的模运算。

    比如计算(7^{222})的个位数,实际是求7(^{222})(10)除的余数。

    (7)(10)互素,且(φ(10)=4)

    由欧拉定理知(7^4≡1 (mod 10))

    所以(7^{222}=(7^4)^55*(7^2)≡1^{55}*7^2≡49≡9 (mod 10))

    欧拉定理证明

    实际上这个证明过程跟上文费马小定理的证明过程是非常相似的: 构造一个与 (m) 互质的数列 ,再进行操作。

    (r_1, r_2, cdots, r_{varphi(m)}) 为模 (m) 意义下的一个简化剩余系,则 (ar_1, ar_2, cdots, ar_{varphi(m)}) 也为模 (m) 意义下的一个简化剩余系。所以 (r_1r_2 cdots r_{varphi(m)} equiv ar_1 cdot ar_2 cdots ar_{varphi(m)} equiv a^{varphi(m)}r_1r_2 cdots r_{varphi(m)} pmod{m}) ,可约去 (r_1r_2 cdots r_{varphi(m)}) ,即得 (a^{varphi(m)} equiv 1 pmod{m})

    (m) 为素数时,由于 (varphi(m) = m - 1) ,代入欧拉定理可立即得到费马小定理。

    参考

    Wiki:https://zh.wikipedia.org/wiki/%E8%B4%B9%E9%A9%AC%E5%B0%8F%E5%AE%9A%E7%90%86

    欧拉定理

    费马小定理、欧拉定理与扩展欧拉定理(含证明)

    数论四大定理之欧拉定理

    RSA算法原理(一)之欧拉定理

    The desire of his soul is the prophecy of his fate
    你灵魂的欲望,是你命运的先知。

  • 相关阅读:
    Linux网络编程必看书籍推荐
    SpringMVC DispatcherServlet初始化过程
    freemarker写select组件(五)
    hdu 1009 FatMouse&#39; Trade
    新IOS编程语言 Swift 新编译器Xcode6
    NoSQL数据库:数据的一致性
    POJ 3041 Asteroids
    POJ 3342 Party at Hali-Bula (树形dp 树的最大独立集 判多解 好题)
    __repr__与__str__
    HDU 4950 Monster(公式)
  • 原文地址:https://www.cnblogs.com/RioTian/p/13938770.html
Copyright © 2020-2023  润新知