再需要判定的数比较大时,用枚举法肯定不行的,但目前数学界也没有任何一种又快又准确的判定素数的方法,并且也证明了素数不存在任何一种通项表达式。但作为初等数论中最大的一部分内容,数学家们对素数性质进行了大量研究,并得出很多完美结论,这些结论在素数判定时能起到辅助作用。

1. 威尔逊定理:

  若p是素数,则(p-1)!=-1 (mod p) (逆定理也成立)

  改定理的逆定理也成立,故可用来判定素数,但其复杂度为O(n),甚至不如试除法。此定理有时用来简化有关阶乘的计算。

2. 欧拉定理:

  若gcd(a,m)=1,则aΦ(m)=1 (mod m)。

  挺常用的一个定理,证明留坑待填...

3. 费马小定理和伪素数:

  若p为素数,则ap-1=1 (mod p)。

  即欧拉定理的特例,用的也比较多。

  要注意的是该定理的逆命题并不成立,符合该定理的逆命题的合数p称为伪素数,如561就是一个伪素数。

4. 米勒罗宾算法:

  若费马小定理的逆命题成立,那就非常好,可以轻松地用前面介绍的快速幂来判定一个数是否为素数。但可惜的是它并不成立,但人们发现,不满足逆命题的数很少,因此只要对a进行重复取值,那么判定结果的正确率能解近100%。因此,出现了这样一种概率性算法--米勒罗宾测试法。

  算法实现待填...

  很多时候要用到这样的算法,都是因为数据太大,而此时伴随的常常就是高精度和Java。很方便的是Java的BigInteger类提供了该方法的实现,其原型为:

  

boolean isProbablerPrime(int certainty)

  如果此时的BigInteger可能为素数,则返回true; 如果一定为合数,则返回false。传入的参数越大,则判断准确率越高,但是花费的时间也越长。这个参数一般取50即可。

  

转载于:https://www.cnblogs.com/FrankChen831X/p/10826571.html

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

  1. 初等数论四大定理(威尔逊定理,欧拉定理,费马小定理,中国剩余定理)

    初等数论四大定理 1. 威尔逊定理 (1) 结论 当且仅当ppp为素数时,(p−1)!≡−1(modp)(p-1)!\equiv -1(\mod p)(p−1)!≡−1(modp). (2) 证明 充 ...

  2. 初等数论四大定理(威尔逊定理,欧拉定理,中国剩余定理,费马小定理)

    1.威尔逊定理:在初等数论中,威尔逊定理给出了判定一个自然数是否为素数的充分必要条件.即:当且仅当p为素数时:( p -1 )! ≡ p-1 ( mod p ),但是由于阶乘是呈爆炸增长的,其结论对于 ...

  3. 算法 {欧拉函数,欧拉定理,费马小定理}

    欧拉函数 定义 ϕ ( x ) , x ∈ N + \phi(x), \ \ x \in N^+ ϕ(x),  x∈N+ means the number of y ∈ N + y \in N^+ y ...

  4. 初等数论四大定理之——费马小定理

    皮埃尔·德·费马(Pierre de Fermat),1601年生于法国,是一个律师和业余数学家.他在数学多个分支上都有贡献,成就甚至超过了许多职业的数学家,被誉为"业余数学家之王" ...

  5. 三个重要的同余式——威尔逊定理、费马小定理、欧拉定理 + 求幂大法的证明

    一.威尔逊定理 若p为质数,则 p|(p-1)!+1 亦:(p-1)! ≡ p-1 ≡ -1(mod p) 例题: HDU 2973 YAPTCHA (威尔逊定理及其逆定理) 解题报告见http:// ...

  6. 欧拉定理 费马小定理

    前言 学基础数论的时候看过证明,然而很快就忘了,最近在学习高深一点的数论,于是再复习一下欧拉定理和费马小定理. 欧拉定理 内容 若正整数 \(a,n\) 互质,则 \(a^{\varphi(n)}\e ...

  7. 【BZOJ】3398: [Usaco2009 Feb]Bullcow 牡牛和牝牛(排列组合+乘法逆元+欧拉定理/费马小定理)...

    http://www.lydsy.com/JudgeOnline/problem.php?id=3398 以下牡牛为a,牝牛为b. 学完排列计数后试着来写这题,"至少"一词可以给我 ...

  8. 剩余系,剩余定理,同余定理,费马小定理的证明

    费马小定理: 证明:假如p是质数,且(a,p)=1,那么 a^(p-1) ≡1(mod p) 一.准备知识: 所谓"剩余系",就是指对于某一个特定的正整数n,一个整数集中的数模n所 ...

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

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

  10. 同余定理 逆元 中国剩余定理 费马小定理

    同余定理 同余定理是数论中的重要概念.给定一个正整数m,如果两个整数a和b满足(a-b)能够被m整除,即(a-b)/m得到一个整数,那么就称整数a与b对模m同余,记作a≡b(mod m). 两个整数a ...

最新文章

  1. mysql 2053_php – MySql一般错误:2053
  2. 科学世界的人文关怀:开源科学与人工智能
  3. table相关的API
  4. iphone以旧换新活动_iPhone:我降价 1600 元!安卓:我有 5G
  5. idea 新建的java项目没发run_IDEA 如何创建一个普通的 Java 项目,及创建 Java 文件并运行...
  6. 截取最后一个下划线前面的字符
  7. 后盾网php多少钱_亿多星全脑开发招代理多少钱@山东聊城网
  8. 阶段1 语言基础+高级_1-3-Java语言高级_06-File类与IO流_08 转换流_2_编码引出的问题_FileReader读取GBK格式文件...
  9. win10 安装 mysql解压版安装步骤
  10. 万达电商为何刻意回避阿里与马云
  11. 基于SDL的魂斗罗小游戏(源码+解析)
  12. 推荐系统-推荐冷启动问题
  13. 安装mysql 遇到问题
  14. GD32F103 USB 虚拟U盘实验一(内部Flash)
  15. PTA L1-039 python实现
  16. 大数据工程师入职京东年薪37w(附:面试真题分享)
  17. Ubuntu安装过程中出现“没有定义根文件系统”,Ubuntu安装过程中无法读取Windows分区
  18. App2sd功能和Asec文件
  19. 20130822-STM8L101F3P6的PD0使用异常,尚未解决~!
  20. mysql select 导出_mysql利用sql语句将查询结果导出

热门文章

  1. python 修改列表中的元素
  2. 回归模型-线性回归算法
  3. Amazon AWS云计算服务平台概述
  4. linux mysql 5.0.45_RedHat糸列Mysql-5.0.45的安装
  5. android bundle传递list对象集合,如何从android中的firebase中检索List对象
  6. php服务器日志在哪里看,云服务器日志在哪里看
  7. 在线PHP网页查看,php查看是否在线
  8. 引入三方库_关于使用第三方库、代码复用的一些思考
  9. iOS开发网络——数据缓存
  10. android中XMl文件的读取