【 在 feng321 的大作中提到: 】
: [upload=1][/upload][upload=2][/upload][upload=3][/upload]
: 要实现的是如图所示的算法(数字都很大,n可能是100位的整数)。chatgpt写的这个python算法,非常快
: 我自己按照 miller算法的原本思路,直接写的python(如下),慢得一塌糊涂。我的代码,非常慢,好理解。直接进行大整数的幂运算、整除取余数运算,确实非常慢。但是chatgpt实现的这个mod_exp(base, exp, mod),我看不懂啊。大佬能提示一下吗?在miller_rabin(n,aa, k=1)函数里,有两个地方,调用了mod_exp函数。大佬能解释一下这个 mod_exp 到底是干嘛的吗?谢谢
: ...................
检查x是不是素数,
米勒-素数检查是求 power(a, x-1),
米勒-拉宾素性检验是求 power(a, power(2,r)*d),
如果对应到这个mod_exp(base, exp, mod) 那base相当于是a的d次方, exp是r, mode是x
--
FROM 115.171.154.*