不规则Bernoulli和Euler素数
关键词:不规则素数,伯努利数,欧拉数,计算模p,Akiyama-Tanigawa算法,Ernst Eduard Kummer,Thomas Mautsch,OEIS A000928、OEIS A120337和OEIS A128197。

“1847-1850年间,先驱数学家库默,用他深刻的分圆场理论建立一类被称为“正则”素数的素数。。。众所周知,存在无穷多个不规则素数;事实上,这是一个似是而非的猜想,即只有渐近所有素数的分数1/Sqrt(e)~0.6都是正则的。"
[Ribenboim,引自OEIS A000928。]

不规则素数的计算。
(1) Bernoulli不规则素数

  定义:素数p如果没有则称为B-regular偶数指数高达(p-3)的伯努利数,B_2、B_4、B_6。。。,B_(p-3)可被p整除。高效计算B-不规则素数列表不是琐碎的任务。为了简单起见,我想有一个例行程序在高达例如n=1000或n=2000的范围内相当好。下面我给出一个用Maple编写的例程。然而,我做到了不使用任何计算机代数,除非使用预计算列表不调用Maple的内置函数伯努利(n)被制造出来。============================================================双规则素数:=proc(len)局部t,m,j,F,P,k,lenP;t:=数组(0..len):t[0]:=1;F:={};k:=1;P:=选择(isprime,[$2..len]);lenP:=nops(P);从2到len do的mt[m-1]:=1/m;对于从m-1到-1 do的jt[j-1]:=j*(t[j-1-t[j]);od;如果irem(m,2)=0,则下一个fi;如果iquo(m,2)=P[k],则k:=k+1 fi;对于从k到lenP的j do如果irem(numer(t[0]),P[j])=0,则F:=F并集{P[j]}fi;od;od;F端:-----------------------------------------------------------t: =time():B不规则素数(n):time(()-t;%%;nops(%);n=1000->282秒,(64个IP),n=2000->4331秒(121 IP)。============================================================我在新闻组sci.math.symbolic上发布了这个例程并写道:“我想学习更有效的方法来计算不规则素数。任何改进、不同的实现或算法非常感谢。"我从托马斯·莫奇那里得到了一个很好的答案:“我认为你的程序的基本问题是你首先直接计算伯努利数迅速变大。最好单独计算模p对于每个质数,而不是计算巨大的伯努利数,然后只减少结果的模素数。" 以下是托马斯的建议:===============================================================不规则:=进程(p)局部a、b、n、ah、half、quarter;a:=[1];b: =[1];一半:=iquo(p,2);四分之一:=-一半/2 mod p;对于n从1到半1 doah:=a[1]*四分之一/n mod p;a:=[ah/(n-half)mod p,a[]];ah-添加(b[i]*a[i],i=1..n)mod p;如果%=0,则返回true,否则b:=[b[],%]结束if;结束do:假结束进程:BIrregPrimes:=proc(len)局部p,F;p:=3;F:=空;而p<=len do如果是B不规则(p),则F:=F,p结束于:;p:=下一素数(p)结束do:F端程序:-----------------------------------------------------------t: =time():BIrregPrimes(n):时间()-t;%%;nops([%]);n=1000->8秒,(64 IP),n=2000->59秒(121 IP)。===============================================================我真的很喜欢托马斯的解决方案,一颗编程明珠!而且速度很快!对于好的老库默来说,这个夏天真是太棒了!它带走了他差不多20年才找到前10个左右。多谢你,托马斯!接下来是一个Bernoulli不规则素数的表,直到len=2000。===============================================================[ 37,   59,   67,  101,  103,  131, 149, 157, 233, 257, 263, 271,283,  293,  307,  311,  347,  353, 379, 389, 401, 409, 421, 433,461,  463,  467,  491,  523,  541, 547, 557, 577, 587, 593, 607,613、617、619、631、647、653、659、673、677、683、691、727,751,  757,  761,  773,  797,  809, 811, 821, 827, 839, 877, 881,887,  929,  953,  971, 1061, 1091, 1117, 1129, 1151, 1153, 1193,1201, 1217, 1229, 1237, 1279, 1283, 1291, 1297, 1301, 1307,1319, 1327, 1367, 1381, 1409, 1429, 1439, 1483, 1499, 1523,1559、1597、1609、1613、1619、1621、1637、1663、1669、1721,1733, 1753, 1759, 1777, 1787, 1789, 1811, 1831, 1847, 1871,1877, 1879, 1889, 1901, 1933, 1951, 1979, 1987, 1993, 1997]================================================================(2) 欧拉不规则素数

  定义:素数p是Euler-irregular(E-unregular)如果它将欧拉数E(2n)除以0<2n<p-1。下面的Maple过程计算Bernoulli不规则素数以及欧拉不规则素数。不规则素数(100,B);#计算Bernoulli不规则素数不规则素数(100,E);#计算Euler不规则素数------------------------------------------------------------不规则素数:=proc(len,typ)局部t,m,j,F,例如bg,p,maxp;例如:=n->(-1)^iquo(n-1,4)*2^iquo(1-n,2)*ceil((n mod 4)/3);bg:=n->1/n;t:=数组(0..len):t[0]:=1;F:={};从2到len do的mt[m-1]:=`if`(类型=B,bg(m),例如(m));从m-1到-1 do的jt[j-1]:=j*(t[j-1-t[j]);od;如果irem(m,2)=0,则下一个fi;p:=下一素数(m);最大值:=最小值(abs(t[0]),len);而p<=最大do如果abs(t[0])mod p=0然后打印(类型[m-1],p);F:=F联合{p}fi;p:=下一素数(p);od;od;F端:------------------------------------------------------------计算中唯一的差异取决于“类型”是bg(m)和eg(m)分别在第六行中的调用。没有调用Maple的内置函数bernoulli(n)或euler(n)制造完成。接下来是一个直到len=2000的欧拉不规则素数表。============================================================[19,  31,  43,  47,  61,  67,  71,  79, 101, 137, 139, 149,193, 223, 241, 251, 263, 277, 307, 311, 349, 353, 359, 373,379419433461463491509541563571577587,619, 677, 691, 709, 739, 751, 761, 769, 773, 811, 821, 877,887, 907, 929, 941, 967, 971, 983,1013,1019,1031,1039,1049,1051,1069,1151,1163,1187,1223,1229,1231,1277,1279,1283,1291,1307,1319,1361,1381,1399,1409,1423,1427,1429,1439,1447,1453,152315311559158316011621163716631693169717231733,1759,1787,1801,1831,1867,1873,1877,1879,1889,1901,1907,1931,1933,1951,1987,1993,1997]============================================================(3) 弱和强不规则素数我们说素数是弱不规则若(iff)伯努利不规则欧拉不规则。19,   31,   37,   43,   47,   59,   61,   67,   71,   79,101,  103,  131,  137,  139,  149,  157,  193,  223,  233,241,  251,  257,  263,  271,  277,  283,  293,  307,  311,347,  349,  353,  359,  373,  379,  389,  401,  409,  419,421,  433,  461,  463,  467,  491,  509,  523,  541,  547,557,  563,  571,  577,  587,  593,  607,  613,  617,  619,631,  647,  653,  659,  673,  677,  683,  691,  709,  727,739,  751,  757,  761,  769,  773,  797,  809,  811,  821,827,  839,  877,  881,  887,  907,  929,  941,  953,  967,971,  983, 1013, 1019, 1031, 1039, 1049, 1051, 1061, 1069,1091, 1105, 1117, 1129, 1151, 1153, 1163, 1187, 1193, 1201,1217, 1223, 1229, 1231, 1237, 1277, 1279, 1283, 1291, 1297,1301, 1307, 1319, 1327, 1361, 1367, 1381, 1399, 1409, 1423,1427, 1429, 1439, 1447, 1453, 1483, 1499, 1523, 1531, 1559,1583, 1597, 1601, 1609, 1613, 1619, 1621, 1637, 1663, 1669,1693, 1697, 1721, 1723, 1729, 1733, 1753, 1759, 1777, 1787,1789, 1801, 1811, 1831, 1847, 1867, 1871, 1873, 1877, 1879,1889, 1901, 1907, 1931, 1933, 1951, 1979, 1987, 1993, 1997.我们说素数是强烈不规则若(iff)伯努利不规则欧拉不规则。67,  101,  149,  263,  307,  311,  353,  379,  433,  461,463,  491,  541,  577,  587,  619,  677,  691,  751,  761,773、811、821、877、887、929、971、1151、1229、1279,1283, 1291, 1307, 1319, 1381, 1409, 1429, 1439, 1523, 1559,1621, 1637, 1663, 1733, 1759, 1787, 1831, 1877, 1879, 1889,1901, 1933, 1951, 1987, 1993, 1997.外部链接:[1] http://primes.utm.edu/top20/page.php?id=26[2] http://primes.utm.edu/top20/page.php?id=25[3] http://www.ams.org/mcom/2007-76-257/S0025-5718-06-01887-4/home.html

[上次编辑时间:2007-01-24]