一、互质与欧拉函数

互质:

  ∀a,b∈N\forall a, b \in N∀a,b∈N,如果 gcd(a, b) = 1,则称 a, b 互质。
  对于三个或以上的数,我们把 gcd(a, b, c) = 1 的情况称为 a, b, c 互质。把 gcd(a, b) = gcd(a, c) = gcd(b, c) = 1 的情况称为 a, b, c 两两互质。

欧拉函数:

  1 ~ N 中的与 N 互质的整数的个数叫做欧拉函数 记做 φ(N)\varphi(N)φ(N)。
  在算术基本定理中 n=p1c1×p2c2×⋯×pmcmn = p_1^{c_1} \times p_2^{c_2} \times \cdots \times p_m^{c_m}n=p1c1​​×p2c2​​×⋯×pmcm​​则:
φ(N)=N×p1−1p1×p2−1p2×⋯×pm−1pm=N×∏质数p∣n(1−1p)\varphi(N) = N \times \frac{p_1-1}{p_1} \times \frac{p_2-1}{p_2} \times \cdots \times \frac{p_m-1}{p_m} = N \times \prod_{质数p \mid n}(1-\frac{1}{p}) φ(N)=N×p1​p1​−1​×p2​p2​−1​×⋯×pm​pm​−1​=N×质数p∣n∏​(1−p1​)
 证明:
  要求出 φ(N)\varphi(N)φ(N),我们只需求出所有与 N 不互质的数的个数,用总数减去它就好了,而与 N 不互质的数一定是 N 的质因数的 k 倍 (k∈Zk\in Zk∈Z)。所以我们只需要找出 N 的所有质因数及其小于 N 的所有倍数的和就好了。
  首先假设 p 是 N 的一个质因数,则 p 的小于 N 的倍数就能表示为:
p,2p,3p,⋯(Np)×pp,\; 2p,\; 3p,\; \cdots \; (\frac{N}{p} ) \times p p,2p,3p,⋯(pN​)×p
  很容易看出,这个序列一共有 Np\frac{N}{p}pN​ 个数。同理,我们可以说明另一个 N 的质因数 q 的小于 N 的倍数的总数是 Nq\frac{N}{q}qN​ 个。但是,我们发现这些数 中是有重合的部分的。下面这个序列的数就被算了两次:
pq,2pq,3pq,⋯,Npq×pqpq, \; 2pq, \; 3pq, \; \cdots, \; \frac{N}{pq}\times pq pq,2pq,3pq,⋯,pqN​×pq
  这共 Npq\frac{N}{pq}pqN​ 个数应该被加回来一次。所以我们得到了1 ~ N 中不与, N 含有共同质因子 p, q 的数的个数为:
N−Np−Nq+Npq=N×(1−1p−1q+1pq)=N(1−1p)(1−1q)N-\frac{N}{p} - \frac{N}{q} + \frac{N}{pq} = N\times (1 - \frac{1}{p} - \frac{1}{q} + \frac{1}{pq}) = N(1-\frac{1}{p})(1-\frac{1}{q}) N−pN​−qN​+pqN​=N×(1−p1​−q1​+pq1​)=N(1−p1​)(1−q1​)

  设 n=∏pikin=\prod p_i^{k_i}n=∏piki​​
  以此类推,我们就可以得到 φ(n)=∏p∣N(1−1p)\varphi(n) = \prod_{p\mid N}(1-\frac{1}{p})φ(n)=∏p∣N​(1−p1​)。


二、同余类与剩余系

  对于 ∀a∈[0,m−1]\forall a \in [0, m-1]∀a∈[0,m−1],与 a 模 m 同余的集合可以表示成这样:{x∣x=km+a,k∈Z}\lbrace x\mid x = km + a, \; k \in Z \rbrace{x∣x=km+a,k∈Z}。我们称这个集合为模 m 的一个同余类。记为 aˉ\bar{a}aˉ
  模 m 的同余类一共有 m 个,他们分别是 0ˉ,1ˉ,2ˉ,⋯,m−1‾\bar{0}, \; \bar{1}, \; \bar{2}, \; \cdots , \; \overline{m-1}0ˉ,1ˉ,2ˉ,⋯,m−1​。它们一起构成了模 m 的完全剩余系
  1 ~ m 中与 m 互质的数代表的同余类共有 φ(m)\varphi(m)φ(m) 个,他们构成了 m 的简化剩余系
  简化剩余系有一个重要的性质,就是它对于模 m 乘法封闭。这是因为我们取 ∀a,b∈[1,m]\forall a, b \in [1, m]∀a,b∈[1,m] 且 gcd(a, m) = gcd(b, m) = 1。则 ab 不可能与 m 含有相同的质因子,因为 ab 除了 a 和 b 没有其他的质因子了。所以 ab 也和 m 互质。也就是说 ab mod m 也属于简化剩余系。


三、费马小定理与欧拉定理:

费马小定理

  如果 p 是质数,则对于任意整数 a,都有 ap≡a(modp)a^p \equiv a \pmod pap≡a(modp)

欧拉定理

  若正整数 a, n 互质,则 aφ(n)≡1(modn)a^{\varphi(n)} \equiv 1 \pmod naφ(n)≡1(modn) 其中 φ(n)\varphi(n)φ(n) 为欧拉函数。

  证明:
  假设 n 的简化剩余系为 {X1‾,X2‾,X3‾,⋯,Xφ(n)‾}\lbrace \overline{X_1}, \overline{X_2}, \overline{X_3}, \cdots, \overline{X_{\varphi(n)}} \rbrace{X1​​,X2​​,X3​​,⋯,Xφ(n)​​}。我们可以证明{aX1‾,Xa2‾,aX3‾,⋯,aXφ(n)‾}\lbrace \overline{aX_1}, \overline{Xa_2}, \overline{aX_3}, \cdots, \overline{aX_{\varphi(n)}} \rbrace{aX1​​,Xa2​​,aX3​​,⋯,aXφ(n)​​}也是 n 的简化剩余系。
  反证法,对于 ∀Xi,Xj\forall X_i, X_j∀Xi​,Xj​,如果
aXi≡aXj(modn)aX_i \equiv aX_j \pmod naXi​≡aXj​(modn)
 则
a(Xi−Xj)≡0(modn)a(X_i-X_j) \equiv 0 \pmod na(Xi​−Xj​)≡0(modn)
 就是
(amodn×(Xi−Xj)modn)modn=0(a \mod n \times (X_i-X_j)\mod n)\mod n = 0(amodn×(Xi​−Xj​)modn)modn=0
 又因为我们知道 a 与 n 互质,所以 amodna\mod namodn 不为0,所以只能是
Xi−Xj≡0(modn)X_i-X_j \equiv 0 \pmod nXi​−Xj​≡0(modn)
 也就是
Xi≡Xj(modn)X_i \equiv X_j \pmod nXi​≡Xj​(modn)
 又因为XiX_iXi​ 和 XjX_jXj​ 在简化剩余系中所以 Xi≡Xj(modn)X_i \equiv X_j \pmod nXi​≡Xj​(modn)只要在 Xi≠XjX_i \neq X_jXi​​=Xj​时必定不成立。
 也就是说这也就说明了当 Xi≠XjX_i \neq X_jXi​​=Xj​时 一定有
aXimodn≠aXjmodnaX_i \mod n \neq aX_j \mod naXi​modn​=aXj​modn

所以aXiaX_iaXi​ 和 aXjaX_jaXj​ 可以作为两个不同的同余类的代表。

  又因为我们在上面讲过,简化剩余系对于模 n 乘法封闭,所以 aXi‾\overline{aX_i}aXi​​也在简化剩余系当中。所以{X1‾,X2‾,X3‾,⋯,Xφ(n)‾}\lbrace \overline{X_1}, \overline{X_2}, \overline{X_3}, \cdots, \overline{X_{\varphi(n)}} \rbrace{X1​​,X2​​,X3​​,⋯,Xφ(n)​​} 和 {aX1‾,Xa2‾,aX3‾,⋯,aXφ(n)‾}\lbrace \overline{aX_1}, \overline{Xa_2}, \overline{aX_3}, \cdots, \overline{aX_{\varphi(n)}} \rbrace{aX1​​,Xa2​​,aX3​​,⋯,aXφ(n)​​}都是 n 的简化剩余系。
  综上所述:
aφ(n)a1a2⋯aφ(n)≡(aa1)(aa2)⋯(aaφ(n))≡a1a2⋯aφ(n)(modn)a^{\varphi(n)}a_1a_2\cdots a_{\varphi(n)} \equiv (aa_1)(aa_2)\cdots (aa_{\varphi(n)}) \equiv a_1a_2\cdots a_{\varphi(n)} \pmod n aφ(n)a1​a2​⋯aφ(n)​≡(aa1​)(aa2​)⋯(aaφ(n)​)≡a1​a2​⋯aφ(n)​(modn)
  因此我们得到了:
aφ(n)≡1(modn)a^{\varphi(n)} \equiv 1\pmod n aφ(n)≡1(modn)

  欧拉定理证完了之后我们就可以发现费马小定理其实是欧拉定理的一个特殊情况,当 n 为质数时(后面用 p 表示),φ(p)=p−1\varphi(p) = p-1φ(p)=p−1,所以我们得到:
aφ(p)≡ap−1≡1(modp)a^{\varphi(p)} \equiv a^{p-1} \equiv 1 \pmod p aφ(p)≡ap−1≡1(modp)
  两边同时乘上 a,得到了:
ap≡a(modp)a^p \equiv a \pmod p ap≡a(modp)

证毕


参考资料:《算法竞赛进阶指南》和 另一个欧拉定理的证明:https://blog.csdn.net/ymzqwq/article/details/96269772

欧拉定理与费马小定理相关推荐

  1. 初等数论--同余--欧拉函数、欧拉定理、费马小定理

    初等数论--同余--欧拉函数.欧拉定理.费马小定理 概念 同余类,既约同余类 欧拉函数 完全剩余系,既约剩余系 关于完全剩余系.既约剩余系一些比较简单的定理 欧拉定理.费马小定理 博主是初学初等数论( ...

  2. 数论杂谈(欧拉定理与费马小定理结论与应用)

    文章目录 欧拉定理: 欧拉定理性质: 扩展欧拉定理: 费马小定理: 指数循环节 费马大定理 逆元: 例题 原根 定义: 原根存在条件 例题 快速幂 代码 矩阵快速幂 原理: 代码: 欧拉定理: aφ( ...

  3. 关于素数常用结论--威尔逊定理、欧拉定理、费马小定理、米勒罗宾算法

    再需要判定的数比较大时,用枚举法肯定不行的,但目前数学界也没有任何一种又快又准确的判定素数的方法,并且也证明了素数不存在任何一种通项表达式.但作为初等数论中最大的一部分内容,数学家们对素数性质进行了大 ...

  4. 欧拉定理及费马小定理

    欧拉定理 1.定义:若a于n互质,则aφ(n)≡1(modn)a^{\varphi(n)}\equiv1 (mod\quad n)aφ(n)≡1(modn),这里的φ()\varphi()φ()为欧拉 ...

  5. 欧拉定理,费马小定理证明

    今天呕心沥血地花了40分钟去研究欧拉定理的证明,终于是明白了,同时,作为欧拉儿子定理的费马小定理,自然毫无压力的搞定了. 为了方便随时查看,在这里转载一下(360百科). 内容: 在数论中,欧拉定理, ...

  6. 欧拉定理与费马小定理的证明过程

    转载自http://blog.csdn.net/Cold_Chair/article/details/52235196 内容: 在数论中,欧拉定理,(也称费马-欧拉定理)是一个关于同余的性质.欧拉定理 ...

  7. 7. 数论四大定理(威尔逊定理、欧拉定理、费马小定理、孙子定理)

    一.准备工作 点击查看数论基础知识 二.威尔逊定理 威尔逊定理给出了判定一个自然数是否为素数的充分必要条件.但是由于阶乘是呈爆炸增长的,其结论对于实际操作意义不大. 1. 定理及其变形 当且仅当p为素 ...

  8. 数论四大定理(欧拉定理、费马小定理、中国剩余定理、威尔逊定理)

    前置知识 同余 假设 a,ba,ba,b 都是整数,如果 nnn 是一个正整数,且存在整数 kkk 使得 a−b=k×na−b=k \times na−b=k×n,则称 a,ba,ba,b 模 nnn ...

  9. 【初等数论四大定理之三】欧拉定理,费马小定理,威尔逊定理

    突然想整理一下几个定理及其证明. 欧拉定理 若n,a为正整数,且n,a互质,则: 费马小定理: 假如p是质数,且gcd(a,p)=1,那么 a^(p-1)≡1(mod p) 求逆元方法之一:其实是欧拉 ...

最新文章

  1. 2021年大数据常用语言Scala(五):基础语法学习 字符串
  2. 如何画出高级酷炫的神经网络图?优秀程序员都用了这几个工具
  3. 《TCP/IP详解》
  4. 关于android 图像格式问题
  5. python学习-综合练习五(五人分鱼(优化解)、顺向、反向推导)
  6. 零基础不建议学前端_web前端开发零基础怎样入门-哈尔滨前端学习
  7. 结对项目 刘静 201303014059 计科高职13-2
  8. 查询空缺_携程旅行2021校招开启,9大类职位,1000+岗位空缺,本科及以上学历...
  9. 互联网晚报 | 1月15日 星期六 | 娃哈哈董事长称准备6亿发年终奖;河南省消协对辛巴提起公益诉讼;支付宝上线消息“刷子”功能...
  10. 洛谷P5269 欧稳欧再次学车
  11. 如何在Pr中应用混合模式合成影片中的剪辑?
  12. CentOS获取软件安装包源码
  13. matlab 排序 sorttrows
  14. office 2010图标出现异常时的解决办法
  15. Google Earth Engine —— LandTrendr JavaScript 模块API(2万多字长文)
  16. 程序员自编 “购房宝典” 火爆 GitHub !
  17. android 怎样扩大内存卡,SD卡变RAM 增加虚拟内存方法
  18. 136 137 260只出现一次的数字【我亦无他唯手熟尔】
  19. 一文带你了解软件测试的价值,以后别再说软测天天在划水啦
  20. HBASE MOB设计

热门文章

  1. centos对应linux版本
  2. ICV:中国车载超声波雷达市场规模预计2024年可达20亿美元
  3. Unity 字体间距
  4. 用20行Python代码为《都挺好》剧照进行人脸检测
  5. nvidia显卡驱动程序旧版本下载
  6. 微信小程序picker组件的确认,取消按钮方法
  7. 自己的一项发明专利已获国家知识产权局授权,另外在数据挖掘、海量数据处理领域的两项发明专利已启动申报
  8. 无法启动 IIS Express Web 服务器
  9. 学习记录:python GoPUP获取百度指数动态数据对比看国人野性消费
  10. 学好SQF, 快活Arma3