- 注册时间
- 2017-12-7
- 最后登录
- 1970-1-1
- 威望
- 星
- 金币
- 枚
- 贡献
- 分
- 经验
- 点
- 鲜花
- 朵
- 魅力
- 点
- 上传
- 次
- 下载
- 次
- 积分
- 3243
- 在线时间
- 小时
|
马上注册,结交更多好友,享用更多功能,让你轻松玩转社区。
您需要 登录 才可以下载或查看,没有账号?欢迎注册
×
本帖最后由 .·.·. 于 2018-11-30 22:06 编辑
翻Mathematica文档的时候偶然看见的尽管 Wolfram 语言可能分解不了大整数,但是它常常能检测该整数是否为素数. 此外,Wolfram 语言有一个寻找第 k 个素数的快速方法. 这是Mathematica的结果- In[1]:= ClearSystemCache[]; Timing[Prime[1000000000000]]
- Out[1]= {15.3125, 29996224275833}
复制代码 Pari/GP给出了……抱歉Pari/GP超时了- 21:41:50> prime(100001000000)
- time = 125 ms.
- %1 = 2760755949043
- 21:41:51> prime(100100000000)
- time = 12,548 ms.
- %2 = 2763592093411
- 21:42:03> prime(100200000000)
- time = 25,109 ms.
- %3 = 2766456741569
复制代码 Mathematica表示我一个顶你仨- In[1]:= ClearSystemCache[]; Timing[{Prime[100001000000],Prime[100100000000], Prime[100200000000]}]
- Out[1]= {8.60938, {2760755949043, 2763592093411, 2766456741569}}
复制代码
很好奇Mathematica的算法是什么
在scholar.google.com上面搜索Nth Prime找到的都是类似On Formulae for the Nth Prime Number的文章
里面很多东西很好玩
比如威尔逊定理,$(p-1)! \equiv 1(\mod p)$
从而$\cos \pi [\frac{(x-1)!-1}x]$只有当x为质数(或1)的时候才返回1,否则返回0
于是$\pi(n)=\sum_{x=2}^n\cos \pi [\frac{(x-1)!-1}x]$
画风相当清奇
但显然这不是我们想要的公式
……
所以
这个快速算法到底是什么
以及,有没有什么比较好的关键词或者网站,用来搜寻这种算法呢?
(虽然感觉有九成概率我就算拿到算法也什么都看不懂)
(万一呢) |
|