无心人 发表于 2010-9-4 11:16:45

:dizzy:

没天理了
编译了个PARI/GP
进程序,瞬间完成
分解个2^256 + 1
也就几十秒

wayne 发表于 2010-9-4 16:00:22

171# 无心人

试试分解 2^293+1,:lol

无心人 发表于 2010-9-4 20:09:52

呃,90位以下的问题都不大吧
好像以前测试过95位的
几个小时

100的肯定长的多

wayne 发表于 2010-9-4 20:17:16

2^256+1 不到1秒钟就能搞定,
2^293+1 即便是十分钟,都还没分解出来

chyanog 发表于 2010-9-5 13:22:12

2^293+1=3*587*26371*33403*13453890779540632945331892129844577*
762551893101410166019390283047520363896913

wayne 发表于 2010-9-5 13:41:09

175# chyanog
:b:

花了多少时间?

chyanog 发表于 2010-9-5 13:53:17

:D 4202 s

chyanog 发表于 2010-9-5 13:57:44

本帖最后由 chyanog 于 2010-9-5 13:59 编辑

我也没有料到花费时间居然以小时计,这就是典型的NP问题吧,最近不是有新闻说有人证明了P!=NP吗

wayne 发表于 2010-9-5 14:02:25

178# chyanog
不知道是不是NP

wayne 发表于 2010-9-5 14:11:41

http://zh.wikipedia.org/zh-cn/整数分解


现在还不确切知道整数分解属于那个复杂性等级。

我们知道这个问题的判定问题形式(“请问N是否有一个比M小的因子?”)是在NP与co-NP之中。因为不管是答案为是或不是,我们都可以用一个质因子以及该质因子的质数证明来验证这个答案。由 肖 的算法,我们得知这个问题在BQP中。大部份的人则怀疑这个问题不在P、NP-Complete、以及co-NP-Complete这三个复杂性类别中。如果这个问题可以被证明为NP-Complete或co-NP-Complete,则我们便可推得NP=co-NP。这将会是个很震憾的结果,也因此大多数人猜想整数分解这个问题不在上述的复杂性类别中。也有许多人尝试去找出多项式时间的算法来解决这个问题,但是都尚未成功,因此这个问题也被多数人怀疑不在P中。

有趣的是,当判定问题为“N是否为一合数?”则比要找出N的因子这个问题要简单的许多。有文章指出前者这个问题可以在多项式时间中解决(其中n为N的位数)。若允许微小的失误,更有许多的随机化算法可以非常快速的测试出一个数是否为质数。测试一个数是否质数不难,这是RSA算法中非常重要的一环,因为它在一开始的时后需要找很大的质数。(参见素性测试)。
页: 8 9 10 11 12 13 14 15 16 17 [18] 19 20 21
查看完整版本: 下载了个VirtualBox