求解模奇质数意义下的二次同余方程

2019-04-13 12:37发布

若有方程:
x2a(modp) 这个方程的解已经可以在优秀的时间内求解,不过这里只探讨p为奇质数的情况。

O(n)解法

首先有欧拉准则:x2a(modp)有解 ap121(modp)
证明:
1.充分性。
ap12=(x2)p12=xp1
由费马小定理,xp11(modp)
2.必要性。
g为模p意义下的原根,gia(modp)
gi(p1)21(modp)
g为原根,那么(p1)|(i(p1)2)
此时i为偶数,令x=gi2可以构造出一组解。
显然BSGS可以构造出一组解,问题可以在O(n)内解决,不过还有更加优美的解法。

O(log2n)解法

x2w(modp)无解,则称wp的一个二次非剩余系中的一类。对于这样的w,有:
wp121(modp)
证明:
由费马小定理:wp11(modp)
wp12±1(modp)
由欧拉准则有:wp12≢1(modp)
得证:wp12