用户:Peter Luschny/SchinzelSierpinsiConjectureAndCalkinWilfTree
目录
Schinzel-Sierpinski猜想
和Calkin-Wolf树。
介绍
-
素数)。
整数的情况
SchinzelSierpinskiPrimes:=进程(a,类型) 局部p,q,p; P:=选择(isprime,[$1..4000]): 如果a=1,则返回(2)fi; 对于p中的p do,对于p do中的q 如果(p+1)/(q+1)=a,则 `if`(type=“numer”,p,q); 返回(%)fi od od; 打印(“需要更多素数!”)结束:
a:=proc(n)局部q; q:=2; 虽然不是质数(n*(q+1)-1)do q:=下一素数(q); od; 问 结束时间:
A062251号 :=n->SchinzelSierpinskiPrimes(n,“numer”): A062251号 = 2, 5, 11, 11, 19, 17, 41, 23, 53, 29, 43, 47, 103, 41, 59, 47, 67, 53, 113, 59, 83, 131, 137, 71, 149, 103, 107, 83, A060324型 :=n->SchinzelSierpinskiPrimes(n,“denom”): A060324型 = 2, 2, 3, 2, 3, 2, 5, 2, 5, 2, 3, 3, 7, 2, 3, 2, 3, 2, 5, 2, 3, 5, 5, 2, 5, 3, 3, 2, 5, 2, 13, 3
卡尔金-威尔夫树
DijkstraFusc:=proc(m)选项记忆; 局部a,b,n; a:=1; b:=0; n:=米; 当n>0时 如果类型为(n,奇数),则b:=a+b,否则a:=a+b-fi; n:=iquo(n,2)od; b端: //返回Calkin-Wilf树的第n级 CalkinWilfTree:=proc(n)local k; seq(DijkstraFusc(k)/DijkstraFusc(k+1),k=2^(n-1)。。 2^n-1)结束:
有理数的情况
辛泽尔·西尔宾斯基(Schinzel Sierpinski):= proc(a,b)局部p,q,p; P:=选择(isprime,[1..4000]美元): 对于p中的p do,对于p do中的q 如果(p+1)/(q+1)=a/b,则返回(`if`(a<b,-p*q,p*q))fi od od; 打印(“需要更多素数!”)结束: SchinzelSierpinskiEncodedCalkinWilfTree:=进程(n)局部l; seq(Schinzel-Sierpinski(数字(l),分母(l)),l=卡尔金-威尔夫树(n))结束: seq(打印(SchinzelSierpinskiEncodedCalkinWilfTree(i)),i=0..5);
情况r=(p+1)/(q+1)
//第一次遍历中的编码树[形式r=(p+1)/(q+1)]。 A=4、-10、10、-33、15、-15、33、-22、6、-209、133、, -133, 209, -6, 22, -57, 667, -91, 65, -14, 589, -1189, 39, //编码树的最右边的分支, //即自然数的代码。 seq(SchinzelSierpinski(n,1),n=1..42); B=4、10、33、22、57、34、205、46、265、58、129、, 141, 721, 82, 177, 94, 201, 106, 565, 118, 249, 655, 685,
情况r=(p−1)/(q−1
4, -6,6, -21,35,-35,21, -10,221,-77,55,-55,77,-221,10,
//第一次遍历中的编码树[形式r=(p-1)/(q-1)]。 4, -6, 6, -21, 35, -35, 21, -10, 221, -77, 55, -55, 77, -221, 10, -33, 46513, -493, 377, -119, 187, -1333, 559, -559, 1333, -187, 119, //这个编码树的最右边的分支, //即自然数的代码。 4, 6, 21, 10, 33, 14, 145, 51, 57, 22, 69, 26, 265, 87, 93, 34, 721, 38, 2101, 123, 129, 46, 141, 485, 505, 159, 545, 58, 177, 62,
与超奇异素数有联系吗?
4, 10, 33,15, 22,6,209,133, 57,(667),91,65,14,(589),(1189),39,
附录
CalkinWilfTree_level:=进程(n) 局部k,DijkstraFusc; DijkstraFusc:=proc(m)选项记忆; 局部a、b、n; a:=1; b:=0; n:=米; 当n>0时 如果类型为(n,奇数),则b:=a+b,否则a:=a+b-fi; n:=iquo(n,2) od; b端: seq(DijkstraFusc(k)/DijkstraFusc(k+1), k=2^(n-1)。。 2^n-1)结束: 对于i从1到6,执行CalkinWilfTree_level(i)od;
#--快速且节省的实现。 SchinzelSierpinski:=进程(l,素数类型,outtype) 局部a、b、r、p、q、uno、sgn、SearchLimit; a:=数字(l); b:=denom(l); 搜索限制:=40000; q:=2; sgn:=`if`(a<b,-1,1); uno:=`if`(primetype=“plus”,1,-1); dor:=a*(q+uno); 如果r mod b=0,则p:=r/b-uno; 如果是素数(p),则 如果outtype=“pri”,则返回(p/q) elif outtype=“cod”然后返回(sgn*p*q) elif outtype=“num”然后返回(p) elif outtype=“den”然后返回(q) else ERROR(“类型规范错误!”) 菲菲; q:=下一素数(q); 如果q>SearchLimit,则 错误(“已达到搜索限制!输入为:”,a,b) fi(菲涅耳) od端: 因为我从1到3做 seq(SchinzelSierpinski(l,“加号”,“pri”), l=CalkinWilfTree_level(i))od;
工具书类