找回密码
 欢迎注册
查看: 15091|回复: 11

[讨论] 将单质数表为两数平方和的最快速算法

[复制链接]
发表于 2011-1-2 08:58:55 | 显示全部楼层 |阅读模式

马上注册,结交更多好友,享用更多功能,让你轻松玩转社区。

您需要 登录 才可以下载或查看,没有账号?欢迎注册

×
最近论坛讨论的问题有点少,那我就出个问题吧,设p是质数,当p较大时,求
p=x^2+y^2的最快速算法,已知有sqrt(p)的连分式的PQa算法可以给出一个确定性的算法.不知还是否还有其它较好的算法。
毋因群疑而阻独见  毋任己意而废人言
毋私小惠而伤大体  毋借公论以快私情
发表于 2011-1-2 11:56:34 | 显示全部楼层
p=4n+1形式时才有解吧

点评

2也有解,不是吗?  发表于 2021-2-26 09:19
毋因群疑而阻独见  毋任己意而废人言
毋私小惠而伤大体  毋借公论以快私情
发表于 2021-2-24 10:26:27 | 显示全部楼层
https://bbs.emath.ac.cn/forum.ph ... 125&fromuid=865
程序的代码我已经替你写好了
毋因群疑而阻独见  毋任己意而废人言
毋私小惠而伤大体  毋借公论以快私情
发表于 2021-2-25 15:31:26 | 显示全部楼层
本帖最后由 uk702 于 2021-2-25 15:46 编辑

个人觉得这是个好方法,https://www.ams.org/journals/mco ... -1972-0314745-6.pdf
Image 1.jpg

点评

值用最后一行就可以了  发表于 2021-3-1 09:26
这是一个不错的算法!  发表于 2021-2-26 11:08

评分

参与人数 1威望 +2 金币 +2 贡献 +2 经验 +2 鲜花 +2 收起 理由
葡萄糖 + 2 + 2 + 2 + 2 + 2 谢谢分享!

查看全部评分

毋因群疑而阻独见  毋任己意而废人言
毋私小惠而伤大体  毋借公论以快私情
发表于 2021-2-25 20:38:49 | 显示全部楼层
以 p = 10^100 + 949 为例,使用 julia 验证上述结果(由于 10^100+949 是 8k+5 型素数,故选 c = 2)
a = big(10)^100 + 949; b = (a-1) >> 2; x0 = powermod(2, b, a); d = isqrt(a);
x1 = a % x0;
while x1 > d
  x2 = x0 % x1;
  x0, x1 = x1, x2
end
println((x1, x0 % x1))

得:(99697921470138519447541656418848509184628524016382, 7766881905507050845172598218029833369440123277895)
https://bbs.emath.ac.cn/forum.ph ... amp;page=1#pid78125 第 7 楼的结果一致。
毋因群疑而阻独见  毋任己意而废人言
毋私小惠而伤大体  毋借公论以快私情
发表于 2021-2-26 09:24:35 | 显示全部楼层
uk702 发表于 2021-2-25 20:38
以 p = 10^100 + 949 为例,使用 julia 验证上述结果(由于 10^100+949 是 8k+5 型素数,故选 c = 2)
a = b ...

那你知道pell方程x^2-A*y^2=B如何求解吗?

点评

只记得该书有求解 x^2-Ny^2=1 的方法,是否能求解更一般的 x^2-Ny^2=D 就不清楚了。  发表于 2021-2-26 09:45
有连分数的解法,之前在美国新数学丛书的《连分数》册中看过,是不是最高效的算法就不知了。  发表于 2021-2-26 09:33
毋因群疑而阻独见  毋任己意而废人言
毋私小惠而伤大体  毋借公论以快私情
发表于 2021-2-26 10:13:42 | 显示全部楼层
mathematica 发表于 2021-2-26 09:24
那你知道pell方程x^2-A*y^2=B如何求解吗?


又找到了一个很牛叉的数论软件(还带代码),可以解你的问题  \(x^2 - dy^2\) = n,见 frattini(d,n)。
但它有说了The algorithm works only for small d and n,由此看来,你的问题除了试算外,有没有通用算法可能还要打个问号。

请见:http://www.numbertheory.org/calc/krm_calc.html#[56]
毋因群疑而阻独见  毋任己意而废人言
毋私小惠而伤大体  毋借公论以快私情
您需要登录后才可以回帖 登录 | 欢迎注册

本版积分规则

小黑屋|手机版|数学研发网 ( 苏ICP备07505100号 )

GMT+8, 2024-4-20 07:21 , Processed in 0.050276 second(s), 20 queries .

Powered by Discuz! X3.5

© 2001-2024 Discuz! Team.

快速回复 返回顶部 返回列表