実行例
円分多項式の例です.
(%i9) ROU(x,N):=rat(apply("*",makelist((x^(N/s)-1)^moebius(s),s,listify(divisors(N)))))$ Evaluation took 0.0000 seconds (0.0000 elapsed) using 0 bytes. (%i10) for i:3 thru 22 do print([p:ROU(x,i),mp(p),RR6(cs(nGG(DA)))])$ [x^2+x+1,A^2+3,[[a1+A,A],[a1^2+3,a1]]] [x^2+1,A^2+4,[[2*a1+A,A],[a1^2+1,a1]]] [x^4+x^3+x^2+x+1,A^4+A^3+A^2+A+1, [[(a2+a1+1)/4+A,A],[a2^2-2*a1+10,a2],[a1^2-5,a1]]] [x^2-x+1,A^2+3,[[a1+A,A],[a1^2+3,a1]]] [x^6+x^5+x^4+x^3+x^2+x+1,A^6+A^5+A^4+A^3+A^2+A+1, [[A-(a1*(6*a2^2*w2+2*a2^2-7)-14*a2^2-14*a2-7)/42,A],[a1*(3*w2+2)+a2^3+7,a2], [w2^2+w2+1,w2],[a1^2+7,a1]]] [x^4+1,A^4+1,[[(a2+a1)/2+A,A],[a2^2+2,a2],[a1^2-2,a1]]] [x^6+x^3+1,A^6+A^3+1,[[a2/2+A,A],[a2^3-4*a1-4,a2],[a1^2+3,a1]]] [x^4-x^3+x^2-x+1,A^4-A^3+A^2-A+1, [[(a2+a1-1)/4+A,A],[a2^2+2*a1+10,a2],[a1^2-5,a1]]] [x^10+x^9+x^8+x^7+x^6+x^5+x^4+x^3+x^2+x+1, A^10+A^9+A^8+A^7+A^6+A^5+A^4+A^3+A^2+A+1, [[(a1*((58*a2^4+198*a2^3-11*a2^2)*w2^3+((-322*a2^4)-33*a2^3-121*a2^2)*w2^2 +(240*a2^4+132*a2^3+55*a2^2)*w2 -290*a2^4+99*a2^3-110*a2^2+121) +((-1892*a2^4)-374*a2^3-605*a2^2)*w2^3 +((-462*a2^4)-473*a2^3-121*a2^2)*w2^2+((-880*a2^4)+88*a2^3-363*a2^2)*w2 -1650*a2^4-671*a2^3-484*a2^2+242*a2+121) /1210 +A,A],[a1*(40*w2^3+20*w2^2+30*w2+47)-55*w2^3+55*w2^2-55*w2+a2^5+77,a2], [w2^4+w2^3+w2^2+w2+1,w2],[a1^2+11,a1]]] [x^4-x^2+1,A^4-A^2+1,[[(a2+a1)/2+A,A],[a2^2+1,a2],[a1^2-3,a1]]] [x^12+x^11+x^10+x^9+x^8+x^7+x^6+x^5+x^4+x^3+x^2+x+1, A^12+A^11+A^10+A^9+A^8+A^7+A^6+A^5+A^4+A^3+A^2+A+1, [[(a1*(a2*(4*a3^2*w3-25*a3^2)-26*a3^2*w3-52*a3^2+312) +a2*((-26*a3^2*w3)+65*a3^2+312)+286*a3^2*w3+104*a3^2+624*a3+312) /3744 +A,A],[a2*(18*w3+7)+a1*(a2*((-6*w3)-3)-8)+a3^3+52,a3],[w3^2+w3+1,w3], [a2^2+6*a1+26,a2],[a1^2-13,a1]]] [x^6-x^5+x^4-x^3+x^2-x+1,A^6-A^5+A^4-A^3+A^2-A+1, [[A-(a1*(6*a2^2*w2+2*a2^2-7)+14*a2^2-14*a2+7)/42,A],[a1*(3*w2+2)+a2^3-7,a2], [w2^2+w2+1,w2],[a1^2+7,a1]]] [x^8-x^7+x^5-x^4+x^3-x+1,A^8-A^7+A^5-A^4+A^3-A+1, [[(a3+a2+a1-1)/8+A,A],[a3^2+2*a2+a1*((-2*a2)-4)+28,a3],[a2^2-6*a1-30,a2], [a1^2-5,a1]]] [x^8+1,A^8+1,[[(a3+a2)/2+A,A],[a3^2+a1+2,a3],[a2^2+a1-2,a2],[a1^2-2,a1]]] [x^16+x^15+x^14+x^13+x^12+x^11+x^10+x^9+x^8+x^7+x^6+x^5+x^4+x^3+x^2+x+1, A^16+A^15+A^14+A^13+A^12+A^11+A^10+A^9+A^8+A^7+A^6+A^5+A^4+A^3+A^2+A+1, [[(a4+a3+a2+a1+1)/16+A,A],[a4^2-2*a3+a1*(8-2*a3)+a2*((-2*a3)-8)+136,a4], [a3^2+a1*(2*a2+12)-6*a2-68,a3],[a2^2-2*a1-34,a2],[a1^2-17,a1]]] [x^6-x^3+1,A^6-A^3+1,[[a2/2+A,A],[a2^3-4*a1+4,a2],[a1^2+3,a1]]] [x^18+x^17+x^16+x^15+x^14+x^13+x^12+x^11+x^10+x^9+x^8+x^7+x^6+x^5+x^4+x^3+x^2 +x+1, A^18+A^17+A^16+A^15+A^14+A^13+A^12+A^11+A^10+A^9+A^8+A^7+A^6+A^5+A^4+A^3+A^2 +A+1, [[(a1*(w2*(a2*(3672*a3^2*w3+2112*a3^2)+a2^2*(231*a3^2*w3+448*a3^2+22924944)) +a2*(2340*a3^2*w3+1784*a3^2)+a2^2*((-324*a3^2*w3)-293*a3^2+33113808) +15504*a3^2*w3-10944*a3^2+774353664) +w2*(a2^2*(399*a3^2*w3+266*a3^2-145191312) +a2*((-7296*a3^2*w3)-17632*a3^2)) +a2*(4332*a3^2*w3-3496*a3^2+774353664) +a2^2*((-342*a3^2*w3)+1501*a3^2-48397104)-55632*a3^2*w3-41344*a3^2 +20377728*a3+774353664) /13938365952 +A,A], [a1*(w2*(a2*(1481544*w3-493848)+a2^2*((-136458*w3)-227430)) +11852352*w3+a2^2*((-155952*w3)-12996)-493848*a2+7901568) +w2*(a2*(7407720*w3+6420024)+a2^2*(1111158*w3+370386)) +a2*(2963088*w3-493848)+a2^2*((-740772*w3)-493848)+a3^3+75064896,a3], [w3^2+w3+1,w3],[228*w2+a1*(16-36*w2)+a2^3+152,a2],[w2^2+w2+1,w2], [a1^2+19,a1]]] [x^8-x^6+x^4-x^2+1,A^8-A^6+A^4-A^2+1, [[(a3+a2)/4+A,A],[a3^2+2*a1+6,a3],[a2^2+2*a1-10,a2],[a1^2-5,a1]]] [x^12-x^11+x^9-x^8+x^6-x^4+x^3-x+1,A^12-A^11+A^9-A^8+A^6-A^4+A^3-A+1, [[A-(a1*(3*a2*a3^2+8*a3^2-56)+a2*(7*a3^2-56)+28*a3^2-112*a3+56)/672,A], [a3^3-7*a2+a1*(a2-12)+56,a3],[a2^2+2*a1+10,a2],[a1^2-21,a1]]] [x^10-x^9+x^8-x^7+x^6-x^5+x^4-x^3+x^2-x+1, A^10-A^9+A^8-A^7+A^6-A^5+A^4-A^3+A^2-A+1, [[(a1*((58*a2^4-198*a2^3-11*a2^2)*w2^3+((-322*a2^4)+33*a2^3-121*a2^2)*w2^2 +(240*a2^4-132*a2^3+55*a2^2)*w2 -290*a2^4-99*a2^3-110*a2^2+121) +(1892*a2^4-374*a2^3+605*a2^2)*w2^3+(462*a2^4-473*a2^3+121*a2^2)*w2^2 +(880*a2^4+88*a2^3+363*a2^2)*w2+1650*a2^4-671*a2^3+484*a2^2+242*a2-121) /1210 +A,A],[a1*(40*w2^3+20*w2^2+30*w2+47)+55*w2^3-55*w2^2+55*w2+a2^5-77,a2], [w2^4+w2^3+w2^2+w2+1,w2],[a1^2+11,a1]]] Evaluation took 41.3960 seconds (41.4410 elapsed) using 10160.376 MB.
次は 11 次拡大を含むので時間が掛かります.
(%i12) print([p:ROU(x,23),mp(p),RR6(cs(nGG(DA)))])$ [x^22+x^21+x^20+x^19+x^18+x^17+x^16+x^15+x^14+x^13+x^12+x^11+x^10+x^9+x^8+x^7 +x^6+x^5+x^4+x^3+x^2+x+1, A^22+A^21+A^20+A^19+A^18+A^17+A^16+A^15+A^14+A^13+A^12+A^11+A^10+A^9+A^8+A^7 +A^6+A^5+A^4+A^3+A^2+A+1, [[(a1*((22711467475534198*a2^10+847656939034980*a2^9+328864770731640*a2^8 +19604741278064*a2^7-10713350489280*a2^6 +899469127648*a2^5+655331361792*a2^4 +12250319616*a2^3-6160979456*a2^2) *w2^9 +(39210376235165047*a2^10+2041710859169370*a2^9+733881801397984*a2^8 +14975939529168*a2^7-26094666163296*a2^6 +3085175093696*a2^5+1220699341568*a2^4 +77155521792*a2^3-22064903168*a2^2) *w2^8 +(44258439323364695*a2^10+3203058077583282*a2^9+1086461046496968*a2^8 -12416794104704*a2^7-41260490775696*a2^6 +5863155824672*a2^5+1516563404544*a2^4 +174298407168*a2^3-42697020416*a2^2) *w2^7 +(36252932377559731*a2^10+3962979058122594*a2^9+1274661086788456*a2^8 -53876459982320*a2^7-51395783099968*a2^6 +8351433082784*a2^5+1449040253312*a2^4 +272730799872*a2^3-61179958784*a2^2) *w2^6 +(17735547288835748*a2^10+4080204258656724*a2^9+1238729739093416*a2^8 -96239906925832*a2^7-53282659141264*a2^6 +9759997523200*a2^5+1039568725888*a2^4 +341074688256*a2^3-72069131776*a2^2) *w2^5 +((-5414577014723690*a2^10)+3517515506329206*a2^9+990074952435016*a2^8 -126057041160920*a2^7-46322048846112*a2^6 +9641627602944*a2^5+418118078976*a2^4 +357838283520*a2^3-71925853184*a2^2) *w2^4 +((-25847439637650301*a2^10)+2453562504314970*a2^9+607642864832560*a2^8 -133861132247864*a2^7-32723893820416*a2^6 +8033919936032*a2^5-217984361344*a2^4 +317541179520*a2^3-60177008640*a2^2) *w2^3 +((-37075751068922942*a2^10)+1226142813215268*a2^9+212852962075632*a2^8 -117174436025296*a2^7-16805512936224*a2^6 +5447303727776*a2^5-666801436032*a2^4 +233078449536*a2^3-41264234496*a2^2) *w2^2 +((-35534601764595846*a2^10)+224953512486384*a2^9-68951751229648*a2^8 -81294861335224*a2^7-3620882635952*a2^6 +2703003978208*a2^5-785831683712*a2^4 +131314829568*a2^3-20775395840*a2^2) *w2-21713295739522928*a2^10-232134869059746*a2^9-148300269904712*a2^8 -37613918803656*a2^7+2643970591392*a2^6+672332846240*a2^5 -537243326592*a2^4+44380543872*a2^3-5301307904*a2^2+6590815232) +(23127481912300174*a2^10-4266420106368780*a2^9-1138621329910408*a2^8 +187360039390496*a2^7+56494249686592*a2^6 -12676273242976*a2^5-124724014336*a2^4 -485284591104*a2^3+95566820864*a2^2) *w2^9 +(101470356548088363*a2^10-5657737299806442*a2^9-1243802641976576*a2^8 +395808948442240*a2^7+76242423677632*a2^6 -21008077937344*a2^5+1469393600256*a2^4 -861390895104*a2^3+158179565568*a2^2) *w2^8 +(210155314754852863*a2^10-3732218201923602*a2^9-282149613567896*a2^8 +559165668119584*a2^7+52974608932720*a2^6 -22350123734048*a2^5+4276364496128*a2^4 -1009039484160*a2^3+171361196032*a2^2) *w2^7 +(314675650233351123*a2^10+898798478208330*a2^9+1441019713076728*a2^8 +625565597409600*a2^7-5921818285152*a2^6 -16276263112800*a2^5+7405103289984*a2^4 -882237930240*a2^3+128520897024*a2^2) *w2^6 +(381846894974485910*a2^10+6764997665935512*a2^9+3378611252436072*a2^8 +573927223073160*a2^7-81747656536464*a2^6 -4714980758016*a2^5+9862008765952*a2^4 -520316206848*a2^3+42840299008*a2^2) *w2^5 +(390342653382438482*a2^10+12003902568405402*a2^9+4915453381952560*a2^8 +420645366298040*a2^7-150428730646176*a2^6 +8663142278528*a2^5+10867108088832*a2^4 -38327023360*a2^3-56021929472*a2^2) *w2^4 +(337465582190696883*a2^10+14952197895233958*a2^9+5563609584583344*a2^8 +214385938621864*a2^7-190159286564736*a2^6 +19610665087776*a2^5+10101319834240*a2^4 +410385707136*a2^3-138407119872*a2^2) *w2^3 +(240003777890885208*a2^10+14673820711808060*a2^9+5117294845027984*a2^8 +20634845593008*a2^7-188325170689696*a2^6 +24651756486752*a2^5+7807716133504*a2^4 +683976178560*a2^3-177952011264*a2^2) *w2^2 +(128900674716232452*a2^10+11257153806707688*a2^9+3718210938875040*a2^8 -99093307914712*a2^7-145508697393104*a2^6 +22185977861024*a2^5+4714689528704*a2^4 +694829531904*a2^3-161474973184*a2^2) *w2+39430722907678478*a2^10+5786964780828642*a2^9+1810557120845464*a2^8 -106785679762504*a2^7-75303787322272*a2^6+12996173068448*a2^5 +1804128210816*a2^4+439614539904*a2^3-95566820864*a2^2+6590815232*a2 +6590815232) /144997935104 +A,A], [a1*(981871616*w2^9+573213696*w2^8-345849856*w2^7+1610481664*w2^6 +2609913856*w2^5+2784956416*w2^4+3007206400*w2^3 +863858688*w2^2+549716992*w2+958533632) +3252648960*w2^9+13344021504*w2^8+9279959040*w2^7+3458611200*w2^6 +6119798784*w2^5+2020761600*w2^4+3886339072*w2^3+1821276160*w2^2 -6719032320*w2+a2^11-2574940160,a2], [w2^10+w2^9+w2^8+w2^7+w2^6+w2^5+w2^4+w2^3+w2^2+w2+1,w2],[a1^2+23,a1]]] Evaluation took 691.5360 seconds (692.1830 elapsed) using 92077.766 MB.
その後は,...
(%i13) for i:24 thru 28 do print([p:ROU(x,i),mp(p),RR6(cs(nGG(DA)))])$ [x^8-x^4+1,A^8-A^4+1, [[(a3+a2+a1)/4+A,A],[a3^2-2*a1*a2+8,a3],[a2^2-2,a2],[a1^2-6,a1]]] [x^20+x^15+x^10+x^5+1,A^20+A^15+A^10+A^5+1, [[a3/2+A,A],[a3^5-8*a2-8*a1-8,a3],[a2^2-2*a1+10,a2],[a1^2-5,a1]]] [x^12-x^11+x^10-x^9+x^8-x^7+x^6-x^5+x^4-x^3+x^2-x+1, A^12-A^11+A^10-A^9+A^8-A^7+A^6-A^5+A^4-A^3+A^2-A+1, [[A-(a1*(a2*(4*a3^2*w3-25*a3^2)+26*a3^2*w3+52*a3^2-312) +a2*(26*a3^2*w3-65*a3^2-312)+286*a3^2*w3+104*a3^2-624*a3+312) /3744,A],[a1*(a2*(6*w3+3)-8)+a2*(18*w3+7)+a3^3-52,a3],[w3^2+w3+1,w3], [a2^2-6*a1+26,a2],[a1^2-13,a1]]] [x^18+x^9+1,A^18+A^9+1, [[a3/2+A,A],[a3^3-4*a2,a3],[a2^3-4*a1-4,a2],[a1^2+3,a1]]] [x^12-x^10+x^8-x^6+x^4-x^2+1,A^12-A^10+A^8-A^6+A^4-A^2+1, [[(a1*(6*a3^2*w3+2*a3^2+7)+a2*(7-14*a3^2)+14*a3)/42+A,A], [a1*((-3*w3)-2)+a3^3-7*a2,a3],[w3^2+w3+1,w3],[a2^2+1,a2],[a1^2-7,a1]]] Evaluation took 77.5920 seconds (77.6710 elapsed) using 9047.339 MB.