找回密码
 新注册用户
搜索
查看: 14088|回复: 18

[GIMPS]新手对运行prime95的提问

[复制链接]
发表于 2005-12-8 20:39:37 | 显示全部楼层 |阅读模式
运行prime95进行计算寻找梅森素数时,是计算某一位上的所有数还是计算某一位上的一个数。例如两位数就有90个,1千万位上的数则远远超过千万个,1千万零1万位的数量将是1千万位数量的10倍。prime95在计算的时候是计算某一位上的所有数还是计算某一位上的一个数。另外,prime95在运算时,每“10000”显示一次进度,这里的“10000”指的是什么。请教版主了。
回复

使用道具 举报

发表于 2005-12-8 21:04:53 | 显示全部楼层
Prime95寻找的是形如(2^n)-1的质数。

10000指的是迭代次数。

关于以上的问题,详见http://www.equn.com/gimps/math.htm
回复

使用道具 举报

 楼主| 发表于 2005-12-9 12:31:27 | 显示全部楼层
非数学专业真难理解。还是不明白Prime95是否寻找的是某一位上的所有数。如果不是的话,1个千万位上的数量太庞大了。
回复

使用道具 举报

发表于 2005-12-9 12:47:30 | 显示全部楼层
什么叫做“某一位上的所有数”?楼主的描述看不明白...
回复

使用道具 举报

发表于 2005-12-9 13:14:25 | 显示全部楼层
楼主大概对什么是梅森素数没什么概念
梅森素数是形如2^p-1的素数,其中p是素数
所以它寻找的时候并非从2,3,4,5,6,7,8,9,10,...之类的数中去寻找
而是从2^2-1,2^3-1,2^5-1,2^7-1,2^11-1,2^13-1,...之类的数中去寻找
所以“计算某一位上的所有数还是计算某一位上的一个数”这种说法是不存在的
即除了个位数只可能是1,3,7,9外
别的位数均可能是0,1,2,3,4,5,6,7,8,9

10000指的是迭代次数。
卢卡斯-莱默素性测试是非常简单的:如果 P > 2, 2^P-1 是素数当且仅当 S[P-2] = 0,其中,S0 = 4,S[N] = (S[N-1]^2 - 2) mod (2^P-1)。例如,证明 2^7 - 1 是素数的过程如下:

        S0 = 4
        S1 = (4 * 4 - 2) mod 127 = 14
        S2 = (14 * 14 - 2) mod 127 = 67
        S3 = (67 * 67 - 2) mod 127 = 42
        S4 = (42 * 42 - 2) mod 127 = 111
        S5 = (111 * 111 - 2) mod 127 = 0


S[N] = (S[N-1]^2 - 2) mod (2^P-1)。
这个算式运行一次算迭代一次
10000的意思就是这个算是连续运算了10000次
所以总共需要迭代p-2次才能确定2^p-1这个数是不是素数
回复

使用道具 举报

 楼主| 发表于 2005-12-9 17:14:15 | 显示全部楼层
首先感谢管理员和热心网友的指点.
1、先回管理员的问题——什么叫做“某一位上的所有数”?楼主的描述看不明白... :我的意思是例如17是两位数的质数(别笑我还没确定质数和素数是否完全一样,暂时先用质数说明),那么从10到99都是两位数。同理,一千万位数是会有很多的,是不是要从一千万位数中找一个素数。
2、5楼的描述“素数是形如2^p-1的素数,其中p是素数”,我似乎有一点点理解,p是素数,那么要找千万位素数,P应该是多少位素数。
3、如果我的问题很幼稚,请多包涵,我确实想知道。
4、我浏览了管理员的个人网页,管理员是不是将面临找工作.我的经验(也是我的沉痛教训):兴趣第一则会有先苦后甜(或者先甜后也甜)Good luck!
回复

使用道具 举报

发表于 2005-12-9 17:20:48 | 显示全部楼层
1.
不是从所有大于等于千万位的数中寻找质数,而是从形如2^p-1的数寻找质数,只是说如果碰巧你找到的数位数大于一千万,你就会获得奖金而已。
2.
用对数粗略估计是p>34000000
3.
欢迎提问,更欢迎计算
回复

使用道具 举报

发表于 2005-12-9 17:37:04 | 显示全部楼层
引用 ztsjt 在 2005-12-9 17:14 时的帖子:
一千万位数是会有很多的,是不是要从一千万位数中找一个素数。

不是。确切的说,不是“找”,而是“检验”。先用已有的素数中挑一个出来,比如“3”,令 p=3 ,然后算出 (2^p)-1=(2^3)-1=7,然后按照一定的算法,常用的算法是让 7 依次除以 2、3、5 看看是否能整除,如果不能,就是素数,恰好 7 是素数,即当 p 等于素数 3 时,按照规则计算 (2^p)-1 得到的 7 也是素数,那么 7 就是梅森素数。

人类发展至今,依次发现了若干个素数,然后依次令 p 等于这些素数,然后按照规则计算 (2^p)-1 ,然后检测得到的结果是否依然是素数,经过漫长的岁月和全人类不懈的努力,目前总共发现了 42 个梅森素数。目前正在测试的指数 p (p 本身也是一个人类已经正式确实是素数的数)已经超过 8 位数,想想 (2^p)-1 会有多少位?这个数可能超过 1000 万位!

目前的任务是继续增大 p,计算出 (2^p)-1 ,然后检测得到的数,看是否依然是素数!

不要老想着 1000 万位数,梅森素数和 1000 万位数没有任何关系!!!!!!!

只不过有人愿意奖励第一个发现超过 1000 万位梅森素数的人,就好比某个网站的计数器现有 1 亿访问量,有大款要出钱“奖励”恰好第 2 亿个访问该网站的人,要给这个人数不清的钱.....

假如没奖金.....
回复

使用道具 举报

 楼主| 发表于 2005-12-9 21:51:00 | 显示全部楼层
逐渐有点点开窍。
提供奖金的人确是执卓,我运行Prime95是从好奇开始,打柴不误狩猎,我现在进行第三个P,也是第一个位数大于一千万的数,也没感到对计算机其他程序运行的影响(只是风扇一直高速运转,噪声大,为此我又换了一个CPU风扇)。再想问一声,如果P是质数,那么我现在运行的M34656637应该是质数了?
“假如没奖金.....”,这个问题提的好!计算机发展到今天的普及程度,我认为重要的原因之一应归功于电脑游戏。游戏激发了无数人的好奇心,又促使好多人投入了IT事业。有点扯远了,再次感谢对我的解答!

[ Last edited by ztsjt on 2005-12-9 at 21:53 ]
回复

使用道具 举报

发表于 2005-12-9 23:04:10 | 显示全部楼层
引用 ztsjt 在 2005-12-9 21:51 时的帖子:
如果 P 是质数,那么我现在运行的 M34656637 应该是质数了?

如果您说的“如果 P 是质数,那么我现在运行的 M34656637 应该是质数了”成立,那还要 Prime95 程序干什么?还要分布式干什么?
官方分配给您的 p 都是素数,否则项目就该改名了,如果 p 不是素数,那就与梅森素数毫无关系了。
对于您说的话,里面的“ M34656637 ”表示 p= 34656637,那么目前正在检测的数就是 (2^34656637)-1,如果根据您说的就是质数了,那您完全可以令 p 为一个更大的数,然后估计一下位数是否超过 1000 万位,这样多试几次,数不清的美元就来了....
回复

使用道具 举报

发表于 2005-12-10 13:33:40 | 显示全部楼层
p是素数不能推出2^p-1是素数

另设2^p-1>10^(1000*10^4)
p>(1000*10^4)*lg2(10)=33219280.948
回复

使用道具 举报

 楼主| 发表于 2005-12-15 18:03:20 | 显示全部楼层
引用 碧城仙 在 2005-12-9 23:04 时的帖子:

如果您说的“如果 P 是质数,那么我现在运行的 M34656637 应该是质数了”成立,那还要 Prime95 程序干什么?还要分布式干什么?
官方分配给您的 p 都是素数,否则项目就该改名了,如果 p 不是素数,那就与梅森 ...

管理员真是"高手",越解释我越不明白.
回复

使用道具 举报

发表于 2005-12-15 22:57:35 | 显示全部楼层
假如没有奖金,参加项目的朋友们的动机都很纯,就好理解了。
一直有人谈论为什么中国不出诺贝尔奖,因为国内的科研环境,搞科研的都是为职称,为钱,为名为利.....

假如您的命题成立,那么由 2 是素数,可以推出 3 是素数;由 3 是素数,可以推出 7 是素数;由 7 是素数,可以推出 (2^7)-1 是素数;然后依此类推下去就可以了,那还要您贡献 CPU 来参加计算干什么呢?如果您的结论成立,全世界那么多科学家不都白研究了....
回复

使用道具 举报

 楼主| 发表于 2005-12-16 17:23:05 | 显示全部楼层
引用 碧城仙 在 2005-12-15 22:57 时的帖子:
假如没有奖金,参加项目的朋友们的动机都很纯,就好理解了。

“假如没有奖金,参加项目的朋友们的动机都很纯,就好理解了。”唉!这该死的奖金,让参加项目的朋友们的动机都不纯了,也不好理解了!
回复

使用道具 举报

发表于 2005-12-16 20:04:28 | 显示全部楼层
seti停了打算转投这里,也算是新手了,借题目提点问题:〉
我是A64 3200+ oc 250*10程序正在测试,预计一小时内完成,但是我听说测试要一天才能完成,测试期间我能不能用机器干点别的?(已经在干了……-_-!)
我打算在这台机器上设置好然后拷到其它机器(那些都不能上网)上运行,会不会有什么影响?或者要注意些什么?
PrimeGrid@China和GIMPSChina组有什么区别?
图中stage1完成了,开始stage2意义是什么?

[ Last edited by lightwing on 2005-12-17 at 11:17 ]
Snap1.jpg
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 新注册用户

本版积分规则

论坛官方淘宝店开业啦~
欢迎大家多多支持基金会~

Archiver|手机版|小黑屋|中国分布式计算总站 ( 沪ICP备05042587号 )

GMT+8, 2024-5-4 09:31

Powered by Discuz! X3.5

© 2001-2024 Discuz! Team.

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