{sphen112a = [114, 3, 6, 6, 3, 2, 2, 1, 3, 3, 2, 2, 1, 5, 2, 3, 2, 1, 6, 4, 4, 2, 4, 4, 2, 5, 4, 2, 3, 4, 2, 1, 3, 3, 6, 5, 4, 3, 1, 5, 4, 2, 5, 1, 1, 3, 4, 5, 5, 5, 5, 6, 3, 6, 1, 6, 1, 4, 3, 1, 6, 4, 6, 3, 1, 3, 2, 1, 2, 2, 6, 3, 2, 3, 5, 4, 6, 6, 5, 2, 2, 2, 3, 4, 6, 5, 2, 3, 3, 2, 6, 5, 1, 2, 6, 1, 4, 3, 5, 3, 3, 3, 4, 1, 4, 2, 2, 1, 2, 6, 3, 2];} {sphen112b = [114, 3, 6, 6, 3, 2, 2, 1, 3, 3, 2, 2, 1, 5, 2, 3, 2, 1, 6, 4, 4, 2, 4, 4, 2, 5, 4, 2, 3, 4, 2, 1, 3, 3, 6, 5, 4, 3, 1, 5, 4, 2, 5, 1, 1, 3, 4, 5, 5, 5, 5, 6, 3, 6, 1, 6, 1, 4, 3, 1, 6, 4, 6, 3, 1, 3, 2, 1, 2, 2, 6, 3, 2, 3, 5, 4, 6, 6, 5, 2, 2, 2, 3, 4, 6, 5, 2, 3, 3, 2, 6, 5, 1, 2, 6, 1, 4, 3, 2, 3, 3, 4, 2, 2, 3, 2, 2, 1, 4, 5, 1, 1];} {ischain(s)=local(f,n=s[1],P,t); P=[[1,2,3],[1,3,2],[2,1,3],[2,3,1],[3,1,2],[3,2,1]]; for(k=1,#s,print1(k": ");n=eval(n);f=factor(n)[,1]; if(#f<3||n!=f[1]*f[2]*f[3],print("fail");break(), if(k==#s,print(n" has factors "f~),print1(n " = "); n="";for(j=1,3,t=f[P[s[k+1]][j]];print1(t); if(j<3,print1("*"),print());n=concat(n,t)))));} {help = [776138643886819159, 31959826356802139863, 131992804379134551337, 279755534926629925710529, 3560069924753742385008757, 44441392465505778928852391, 254323682861657201447097517, 825870903378953486613333059, 3212811194667642172717285421, 22391341593044530285149898951399, 279266379458408962203287153922757, 459398339094029258648238821238901, 1112855025245713405760119117644349, 258831873719454155642819270000354207, 717587475380584841858952639940582819, 790534165491790294798223552220982109, 137695869863418482831427152485544807356487, 183437102625703617061491866716104318193613, 255452477520217500280687506284987891830277, 796610812622401229445703852860285601203444617, 264826408189053125316980663318334214942573680163, 802858296584762393413142855658612884168540557207, 7084119930971958198960503493364876362911320555127];} default(factor_add_primes,1); if(isprime(help)==vector(#help,k,1),addprimes(help)); ischain(sphen112a); ischain(sphen112b); print(round(gettime/10^3)" seconds");