找回密码
 欢迎注册
查看: 15165|回复: 12

[原创] 小素数测试专题

[复制链接]
发表于 2010-7-14 20:09:24 | 显示全部楼层 |阅读模式

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

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

×
先发下,压缩的1950内的素数表
  1. 3061772255,3589881307,3941801551,3869175206,1003737868,1789221341,2025689703,1448519198,3727535587,3646245930,60813475,788046164,1726563581,3090813942,1161440076,2354364177
复制代码
以30k + 1, 7, 11, 13, 17, 19, 23, 29为表示形式,每字节表示一组,每4字节组成一个32位双字,k = 1到64的全部结果压缩到16个双字
毋因群疑而阻独见  毋任己意而废人言
毋私小惠而伤大体  毋借公论以快私情
 楼主| 发表于 2010-7-14 21:25:47 | 显示全部楼层
32位的素性测试,应该是可以分成几种不同方法的
1、完全的试除
2、试除辅助Miller Rabin测试
3、完全的Miller Rabin测试
毋因群疑而阻独见  毋任己意而废人言
毋私小惠而伤大体  毋借公论以快私情
 楼主| 发表于 2010-7-14 21:58:55 | 显示全部楼层
打包素数的代码

  1. let power2 = take 32 (iterate (*2) 1)
  2. *Primes List> let pack32 = zip (sort [x | i <- [0, 30, 60, 90], j <- [1, 7, 11,
  3. 13, 17, 19, 23, 29], let x = i + j]) power2
  4. *Primes List> let pack32b b = sum \$ map (\(_, y) -> y) \$ filter (\(x, _) -> isPr
  5. ime x) \$ map (\(x, y) -> (x + b, y)) pack32
  6. *Primes List> let pack2p16 = [x | i <- [0..545], let x = pack32b (120 * i  + 30)]
复制代码
结果 pack2p16.txt (5.62 KB, 下载次数: 1)
毋因群疑而阻独见  毋任己意而废人言
毋私小惠而伤大体  毋借公论以快私情
发表于 2010-7-17 17:05:20 | 显示全部楼层
1# 无心人


这样分组,不是有些重复了吗,如77,91
可以把3*5*7*11*13*17*19*23*29=3234846615分成一组
毋因群疑而阻独见  毋任己意而废人言
毋私小惠而伤大体  毋借公论以快私情
发表于 2010-7-17 20:22:20 | 显示全部楼层
用hash最快吧
毋因群疑而阻独见  毋任己意而废人言
毋私小惠而伤大体  毋借公论以快私情
 楼主| 发表于 2010-7-18 10:29:21 | 显示全部楼层
呵呵,有人关心了
这个东西最近有点不想做了
过几天做个测试集
至少10万数据,包括5%素数,全部spsp(2),其他合数
毋因群疑而阻独见  毋任己意而废人言
毋私小惠而伤大体  毋借公论以快私情
 楼主| 发表于 2010-7-18 10:31:34 | 显示全部楼层
4#
老大你说的俺不懂,并不是最好的压缩形式,诸位有好方式,可以讨论
毋因群疑而阻独见  毋任己意而废人言
毋私小惠而伤大体  毋借公论以快私情
 楼主| 发表于 2010-7-18 10:38:03 | 显示全部楼层
做hash在2, 3, 5, 7那个帖子里,我测试了几个
单 hash并不很理想,要到20000以上的素数才保证不重复

我在考虑取中间9位的形式,看2次位组合是不是能保证足够覆盖
毋因群疑而阻独见  毋任己意而废人言
毋私小惠而伤大体  毋借公论以快私情
发表于 2010-7-18 15:38:35 | 显示全部楼层
我还是不理解你的压缩方法,压缩了以后判断素数是怎么用的?
毋因群疑而阻独见  毋任己意而废人言
毋私小惠而伤大体  毋借公论以快私情
发表于 2010-7-18 19:25:48 | 显示全部楼层
我这瞎子都摸清大象了,qianyb还没搞懂?又想多了吧。
毋因群疑而阻独见  毋任己意而废人言
毋私小惠而伤大体  毋借公论以快私情
您需要登录后才可以回帖 登录 | 欢迎注册

本版积分规则

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

GMT+8, 2024-5-3 13:21 , Processed in 0.053629 second(s), 19 queries .

Powered by Discuz! X3.5

© 2001-2024 Discuz! Team.

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