一、推荐一个断点为271441=521^2的素数判别方法:P(1)=0,P(2)=2,P(3)=3=P(0), P(n)=P(n-2)+P(n-3),等价于:P(1)=0,P(2)=2,P(3)=3=P(0),P(4)=2,P(5)=5,P(n)=P(n-1)+P(n-5).这个数列是有名的Perrin序列(佩林序列,或译佩兰序列)。性质一:
在n=1到271441=521^2之间,如果判别 n 能整除 P(n),则n为素数。
在n=271441=521^2时开始出现断点,即521^2 能整除 P(521^2),但显然 n=521^2不是素数。我们将满足 n 整除 P(n),而n为合数的n,称为Perrin pseudoprime,即Perrin伪素数,或译佩林伪素数,或译佩兰伪素数。
性质二:P(n)=A^n+B^n+C^n,其中A,B,C是xxx-x-1=0的三个根,其中仅有一个实根,不妨设为A,则A=
由上性质1,最小的Perrin伪素数是521^2=271441。因此,我常常想,如果能研究好这个Perrin(n)对n求余的计算有何高效巧妙的方法,甚至能够用人工速算或四则运算计算器来少量的计算便能给出结果,那么,一些位数不多的整数,就容易判别它的素性了。100亿以下的perrin伪素数的个数并不多,不过我目前没有掌握充分的数据。
其他性质,包括用一些整数的运算来计算Perrin序列的方法,请见:
一共有 36 个台阶,每次只能走 1 或 2 或 3 个台阶,一共有多少种走法? - 何冬州杨巅杨艳华典生的回答 - 知乎 https://www. zhihu.com/question/3918 79652/answer/1200556697
或见本文后面附录《专讲Perrin序列》
二、推荐一个大数分解的思路进行研究:
已知 大奇数A;找到整数F=floor(sqrt(A))=int(sqrt(A))=[sqrt(A)]=Int[Sqrt[A]]=
令A=L*A/L=(s-r)(s+r),即A+rr=ss; 不妨设 L=s-r<=F,则有s=r+L,A=L(L+2r), s+r=A/(s-r), 故A/F<=(s+r)=A/L,-F<=r-s<=-L,故A/F-F<=2r<=A/L-L,即r属于区间 [[A/F-F], [A/L]-L],区间长度值为([A/L]-L-[A/F]+F)。
然后,我们再着眼于A+rr=(r+L)^2,我们将等式左侧依次递增如下:
r=[A/F]-F开始,A+rr +(2r+1) +(2r+3) +(2r+5) + ... + (2r+ 2(A/L-L-A/F+F) -1),不停地加,直到出现平方数,即告结束。(推荐这个过程)
或者(不推荐这个过程)&