• 浅谈欧拉定理的证明


    自己在校内互坑赛出了一道欧拉定理的板子题,但是因为数据水变成了模拟数学题,真是一个悲伤的故事。。。

    说一下欧拉定理的证明吧,之前一直认为费马小定理的证明很复杂,但是懂了欧拉定理之后就迎刃而解了。

    首先,我们需要知道欧拉定理是什么:

    ​ 数论上的欧拉定理,指的是

    [a^x equiv 1 (modn) ]

    这个式子实在a和n互质的前提下成立的。

    为什么成立呢?下面来证一下。

    首先,我们知道在1到n的数中,与n互质的一共有(φ(n))个,所以我们把这(φ(n))个数拿出来,放到设出的集合X中,即为(x_1,x_2……x_{φ(n)})

    那么接下来,我们可以再设出一个集合为M,设M中的数为:

    [m1=a*x1 \m2=a*x2 \…… \mφ(n)=a*xφ(n) ]

    下面我们证明两个推理:

    一、M中任意两个数都不模n同余。

    反证法。

    证明:假设M中存在两个数设为(m_a,m_b)模n同余。

    ​ 即(m_a equiv m_b)

    ​ 移项得到:(m_a-m_b=n*k)

    ​ 再将m用x来表示得到:(a*x_a-a*x_b=n*k)

    ​ 提取公因式得到(a*(x_a-x_b)=n*k)

    ​ 我们现在已知a与n互质,那么式子就可以转化为:(x_a-x_bequiv 0(modn)),因为a中没有与n的公因子(1除外)所以a对模n同余0并没有什么贡献。

    ​ 又因为(x_a,x_b)都是小于n的并且不会相同,所以(x_a-x_b)一定是小于n的,那么上述的式子自然全都不成立。

    ​ 假设不成立。

    证得:M中任意两个数都不模n同余。

    二、M中的数除以n的余数全部与n互质。

    证明:我们已知(m_i=a*x_i).

    ​ 又因为a与n互质,(x_i)与n互质,所以可得(m_i)与n互质。

    ​ 带入到欧几里得算法中推一步就好了。

    ​ 即:

    [gcd(a*x_i,n)=gcd(m_i,n)=gcd(n,m_imodn)=1 ]

    证毕。

    根据我们证得的两个性质,就可以开始推式子了。

    首先,根据第二个性质可以知道,M中的数分别对应X中的每个数模n同余。

    所以可以得到:

    [m_1*m_2*……*m_{φ(n)}equiv x_1*x_2*……*x_{φ(n)}(mod n) ]

    现在我们把(m_i)替换成x的形式,就可以得到:

    [a*x_1*a*x_2*……*a*x_{φ(n)}equiv x_1*x_2*……*x_{φ(n)}(modn) ]

    很显然,我们应该移项了,但是在移项之前,我们认为这么多的a很烦,那么就先乘起来:

    [a^{φ(n)}*(x_1*x_2……*x_{φ(n)})equiv x_1*x_2……*x_{φ(n)}(mod n) ]

    很开心,我们终于凑出了(a^{φ(n)}),那么就开始移项吧:

    [(a^{φ(n)}-1)*(x_1*x_2……*x_{φ(n)})equiv 0(mod n) ]

    然后,就出来啦:

    [a^{φ(n)}equiv 1(mod n) ]

    证毕。

    开心。

  • 相关阅读:
    flowableU应用
    公募REITs打新基本
    A股市场人气排名因子
    flowableUI 流程演示
    flowable之监听器分配
    flowable基础二,
    【python股票量化】人气指标AR策略编程实现
    Java使用hutool工具类发送http请求
    一个模拟消息订阅和发布的简单程序
    CAXA基本操作旋转
  • 原文地址:https://www.cnblogs.com/wangxiaodai/p/9758242.html
Copyright © 2020-2023  润新知