zoukankan      html  css  js  c++  java
  • Fermat小定理的证明

    本证明参考了李煜东老师《算法竞赛进阶指南》.

    我们首先证明欧拉定理,然后推导出费马小定理.

    欧拉定理:若(gcd(a,n)=1,a,nin mathbb{Z}),则(a^{phi(n)}equiv 1 pmod{n}).其中(phi(n))为欧拉函数.

    设n的简化剩余系为({overline{d_1},overline{d_2},dots,overline{d_{phi(n)}}}).

    由定义,设(d_1,d_2,dots,d_{phi(n)})(phi(n))个和n互质的,小于n的正整数.即:(gcd(n,d_i)=1,i=1,2,...,phi(n)).

    由于gcd是积性函数,我们有:(gcd(n,prodlimits_{i=1}^{phi(n)}{d_i})=1).

    (ad_iequiv ad_j pmod{n}),则由a,n互质,我们直接得到:(d_iequiv d_j pmod{n}).

    互为逆否命题的命题具有相同真假性.我们有:(d_i ot equiv d_j pmod{n} implies ad_i otequiv ad_j pmod{n})

    从剩余系的角度来讲,简化剩余系关于模(n)乘法封闭,故(overline{ad_i})也在简化剩余系中.由于(forall i eq j,d_i eq d_j),集合({overline{d_i}})({overline{ad_i}})均能表示(n)的简化剩余系,(i=1,2,dots,phi(n)).这里的意思是(forall i=1,2,...,phi(n), exists j=1,2,..,phi(n) , ad_i equiv d_j pmod{n}).

    我们可以写出以下式子:$$a^{phi(n)}cdot prodlimits_{i=1}^{phi(n)}d_i equiv prodlimits_{i=1}^{phi(n)}ad_iequiv prodlimits_{i=1}^{phi(n)}d_i pmod{n}$$

    由于(gcd(n,prodlimits_{i=1}^{phi(n)}d_i)=1),消去之得到:$$a^{phi(n)}equiv 1 pmod{n}$$

    稍微注意一下(prodlimits_{i=1}^{phi(n)}ad_iequiv prodlimits_{i=1}^{phi(n)}d_i pmod{n})这个代换.这里相当于是左右两边(d_i)相乘的顺序不同,但最终的乘积结果相同.原因在上面已经提到了.


    (n)是质数时,(phi(n)=n-1).此时有:$$a^{phi(n)}equiv a^{n-1} equiv 1 pmod{n}$$
    证毕.

  • 相关阅读:
    golang学习----nil值
    CentOS配置multipath
    oracle基础-创建表空间
    oracle数据库基本命令
    CentOS使用fdisk扩展磁盘空间
    CentOS增加swap分区
    VMWARE错误-"VirtualInfrastructure.Utils.ClientsXml"的类型初始值设定项引发异常
    windows server 2008远程桌面最大连接数设置
    windows sserver 2008远程桌面端口修改
    iSCSI配置
  • 原文地址:https://www.cnblogs.com/LinearODE/p/10561255.html
Copyright © 2011-2022 走看看