|
无误差之双筛求哥猜
崔坤多次强调双筛法求哥猜素数对没有误差,对此不太理解,现终于弄明白了其中的道理。
以前本人所用的双筛法异常复杂繁琐,特别是对于稍大一点的偶数就没有实用性。
实际上求偶数n的哥猜数就是求双筛之筛余数对,可先将n表示成n/2个奇数对,用集{q,n-q}表示,
数对集中的q=1,3,5,……,n-1;n-q=n-1,n-3,n-5,……,5,3,1;
分别对数对集中的各个奇数附加一个标记数,若q或n-q是素数标1,否则标0,再将两个标记数相乘,得数是1或0,
统计两标记的乘积中的1的个数,就是偶数n的双计哥猜素数对数,且不用再进行误差调整。
这是因为你已将奇数对中的1标记为0,自然最终的1的个数中不再包含1+p和p+1了,
你已将根内素数标记为1,在双筛过程中小素对(p和n-p)被保留,不用再补加。
筛分表达式简记为:Σ{q01*(n-q)01},式中q01——若q是素数则1,否则0;(n-q)01——若n-q是素数则1,否则0。
5列数据大表可用集合符号{q,q01,(n-q),(n-q)01,q01*(n-q)01}表示,再相加求出乘积中1的个数即可。
正常情况下筛分进行的n根内的最大素数即可,实际上按上述方法,筛分到n内最大素数也无妨。
反之若只用少数几个素数pk筛分(k=1,2,……i),操作中将{q,n-q}中的不是pk倍数的奇数q及n-q标为0,其余都是1了,
它们实际上保留的是与pk互素的奇数对,不全是素数对,且要进行误差调整。
|
|