二次剩余--欧拉准则
来源:互联网 发布:网络配线架价格 编辑:程序博客网 时间:2024/04/29 01:38
目录
- 1叙述
- 2举例
- 2.1例子一:对于给定数,寻找其为二次剩余的模数
- 2.2例子二:对指定的质数p,寻找其二次剩余
- 3证明
- 4参考资料
- 5外部链接
叙述
若是奇质数且不能整除,则:
- 是模的二次剩余当且仅当:
- 是模的非二次剩余当且仅当:
以勒让德符号表示,即为:
举例
例子一:对于给定数,寻找其为二次剩余的模数
令a = 17。对于怎样的质数p,17是模p的二次剩余呢?
根据判别法里给出的准则,我们可以从小的质数开始检验。
首先测试p = 3。我们有:17(3 − 1)/2 = 171 ≡ 2 (mod 3) ≡ -1 (mod 3),因此17不是模3的二次剩余。
再来测试p = 13。我们有:17(13 − 1)/2 = 176 ≡ 1 (mod 13),因此17是模13的二次剩余。实际上我们有:17 ≡ 4 (mod 13),而22 = 4.
运用同余性质和勒让德符号可以加快检验速度。继续算下去,可以得到:
- 对于质数p =,(17/p) = +1(也就是说17是模这些质数的二次剩余)。
- 对于质数p =,(17/p) = -1(也就是说17是模这些质数的二次非剩余)。
例子二:对指定的质数p,寻找其二次剩余
哪些数是模17的二次剩余?
我们可以手工计算:
- 12 = 1
- 22 = 4
- 32 = 9
- 42 = 16
- 52 = 25 ≡ 8 (mod 17)
- 62 = 36 ≡ 2 (mod 17)
- 72 = 49 ≡ 15 (mod 17)
- 82 = 64 ≡ 13 (mod 17)
于是得到:所有模17的二次剩余的集合是。要注意的是我们只需要算到8,因为9=17-8,9的平方与8的平方模17是同余的:92 = (−8)2 = 82 ≡ 13 (mod 17).(同理不需计算比9大的数)。
但是对于验证一个数是不是模17的二次剩余,就不必将所有模17的二次剩余全部算出。比如说要检验数字3是否是模17的二次剩余,只需要计算3(17 − 1)/2 = 38 ≡ 812 ≡ ( − 4)2 ≡ − 1 (mod 17),然后由欧拉准则判定3不是模17的二次剩余。
欧拉准则与高斯引理以及二次互反律有关,并且在定义欧拉-雅可比伪素数(见伪素数)时会用到。
证明
首先,由于 是一个奇素数,由费马小定理,。但是是一个偶数,所以有
是一个素数,所以 和 中必有一个是 的倍数。因此模的余数必然是1或-1。
- 证明若是模的二次剩余,则
若是模的二次剩余,则存在,跟互质。根据费马小定理得:
- 证明若,则是模的二次剩余
是一个奇素数,所以关于的原根存在。设是的一个原根,则存在使得。于是
- 二次剩余--欧拉准则
- 【二次剩余-欧拉准则】HDOJ Jacobi symbol 3589
- 51nod 1195 斐波那契数列的循环节【斐波那契数列&&二次剩余&&欧拉判定准则】
- NEU 1440 The minimum square sum (平方剩余和欧拉准则)
- 【NEU1440】The minimum square sum (平方剩余和欧拉准则)
- 二次剩余
- 二次剩余
- 二次剩余
- 二次剩余
- [二次剩余]求解二次剩余
- POJ 1808 (用欧拉准则计算勒让德符号 ,入门题) (二次剩余)
- HDU 3589 二次剩余
- URAL 1132 二次剩余
- 二次剩余方程求解
- poj1808--二次剩余
- URAL 1132 二次剩余
- 关于二次剩余
- 中国剩余定理,欧拉函数
- 获取指定的系统路径 SHGetSpecialFolderPath
- SenchaTouch添加自定义事件
- Breakpoint 4's offset expression evaluation failed.
- 2015编程之美 资格赛 B题 区间dp
- 密码字段出现在一个不安全的 http:// 页面中。这是一个可能导致用户登录凭据被窃取的安全风险。
- 二次剩余--欧拉准则
- c++成员函数默认参数
- 共享内存
- myeclipse同时启动多个MAVEN 项目
- 苹果你深深的伤害了我,还不让我说
- 线程工程ThreadFactory
- 编程之美一题
- 浮点数在计算机中存储方式
- OC结构体