数论相关
Posted mengsuenyan
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了数论相关相关的知识,希望对你有一定的参考价值。
数论相关
质数测试
Miller-Rabin随机质数测试算法
记有一个待测试奇自然数a
, 及测试总轮数s
. Miller-Rabin算法有如下定理:
- 如果n是一个奇合数, 那么测试n为合数的证据的数据至少为((n-1)/2);
- 对于任意(a gt 2)的奇数和正整数
s
, Miller-Rabin出错的概率至多为(2^{-s});
[egin{aligned}
& // 测试一个数是否是合数 & WITNESS(a, n) & quad n-1 = 2^{t}*u, a \% 2=1& quad x_0 = a^{u} \% n & quad for i in 1..=t & quad quad x_i = x_{i-1}^{2} \% n & quad quad if x_i = 1 AndAnd x_{i-1}
e 1 AndAnd x_{i-1}
e n-1& quad quad quad return true& quad quad end & quad end& quad & quad if x_t
e 1& quad quad return true& quad end& quad return false& end
& quad & quad & // 测试奇自然数n是质数还是合数 & MILLER-RABIN(n,s)& quad for j in 0..s& quad quad a=RANDOM(1,n)& quad quad if WITNESS(a,n) & quad quad quad return COMPOSITE & quad quad end& quad return PRIME& end \end{aligned}
]
参考资料
- 算法导论;
以上是关于数论相关的主要内容,如果未能解决你的问题,请参考以下文章