default(parisize,12M);
rnfpolredbest(nfinit(quadpoly(5,y)),x^7-14*x^5+56*x^3-56*x+22)
\\ rnfpolred(nfinit(quadpoly(1996,y)),quadray(1996,1))
\\ rnfpolred(nfinit(quadpoly(904,y)),quadray(904,1))
K=bnfinit(quadpoly(29,y)); T=quadray(29,17)
rnfpolredabs(K,T)
chk(K,T)=[rnfconductor(K,T,2),norm(poldisc(T))];
chk(K,rnfpolredbest(K,T))
chk(K,rnfpolredabs(K,[T,100],16))
chk(K,rnfpolredbest(K,[T,100]))
K=nfinit(y^3-y-1); T=x^3-x-1;
rnfpolredabs(K,T)
rnfpolredabs(K,T,2)
[P,a]=rnfpolredbest(K,T,1);
liftall(subst(K.pol,y,a))
[P,a,b]=rnfpolredbest(K,T,3);
liftall(subst(K.pol,y,a))
substvec(T,[x,y],[a,b])
rnfpolred(nfinit(quadpoly(1129,y)),quadray(1129,1));

nfinit(Pol([256,-2560,5120,6400,-60320,6976,116320,72560,-456615,270630,-129362]));
polredabs(quadpoly(14586217464))
polredabs(x^12+139968*x^10+24814646784*x^8+1854249948463104*x^6+177954917169813848064*x^4-1827912356210202139164672*x^2+68504919608701082757419237376);
polredabs(x^4+10^21*x^2+1)
polredabs(x^4+146077*x^2+2629386)
polredabs(y^4-2*y^3-24*y^2+61*y+2,1)
\\#1146
polredabs(x^9-4*x^7-3*x^6+9*x^5+8*x^4-6*x^3-9*x^2-4*x-1)
\\#1228
polredabs(x^5-13*x^3+3*x^2+5*x-1)
\\#1229
polredabs(x^6+21471450*x^2+71643071500)
polredbest(x^6+21471450*x^2+71643071500)
polredbest(4*x^4+146077*x^2+2629386)

polredabs(2*x+1)
polredabs(2*x+1,1)
polred([x,[1]])
polred(2*x+1)
polred(2*x+1,1)
polred(4*x^2+1,2)
polredbest(2*x+1)
polredbest(2*x+1,1)
polredbest(4*x^2+1,1)
polredord(2*x+1)
polredord(4*x^2+1)
\\ #1519, test T->unscale != 1
polredbest(x^8+24*x^6+80*x^5+1040*x^4-4288*x^3-12736*x^2-61952*x+311296,1)
\\ #1511
polredabs(x^16-4*x^15-334*x^14+264*x^13+32231*x^12+57392*x^11-1031422*x^10-3628868*x^9+7185297*x^8+42417784*x^7+11283472*x^6-137773504*x^5-127243504*x^4+69059728*x^3+56307944*x^2-6264432*x+6436)
\\ #1653
f=x^40+10*x^39+75*x^38+410*x^37+1888*x^36+7364*x^35+25310*x^34+77140*x^33+211669*x^32+524946*x^31+1183823*x^30+2430610*x^29+4548530*x^28+7743916*x^27+11954920*x^26+16627228*x^25+20626386*x^24+22445616*x^23+20835590*x^22+15611648*x^21+8209812*x^20+1290846*x^19-2562740*x^18-2525172*x^17-76374*x^16+2095346*x^15+2320830*x^14+1050748*x^13-71120*x^12-238080*x^11+31952*x^10+106808*x^9+12549*x^8-18470*x^7-485*x^6+3202*x^5-232*x^4-430*x^3+150*x^2-20*x+1;
polredbest(f);
polredabs(x^5 - 331137220*x^4 + 37922047405356360*x^3 - 1127174691845938128093840*x^2 + 52208293424667465123438066822480*x - 16507431553557006099641796204889368224)

f=5*x^12+13*x^4+11*x^3+2*x+1;
[g,h] = polredabs(f,1); [g,subst(f,x,h)]

\\ #1961
polredabs(x^15-15*x^13-2*x^12+78*x^11-10*x^10-393*x^9+81*x^8+939*x^7-373*x^6-822*x^5+723*x^4-1588*x^3-57*x^2+127*x-13)

\\ #1963
f=x^23-4324*x^21-6486*x^20+5382299*x^19-23233933*x^18-2724444300*x^17+29686323629*x^16+512000507352*x^15-10294412120640*x^14+6885232378569*x^13+1102283075184770*x^12-8796561210816172*x^11-7798660667836453*x^10+474243077814357335*x^9-2826995282155771181*x^8+5949260040976823570*x^7+9167317157190582864*x^6-81864894718917833350*x^5+204445625295748936871*x^4-269173314235796280477*x^3+199912058984322799237*x^2-78929282232647458634*x+12862216057817467245;
polredabs(f)==f

K=nfinit(z^4 + 50*z^2 + 45);
u=rnfpolredabs(K,x^4 - 6*x^2 - 5*x - 1)
rnfpolredabs(K,u)

\\ #2035
K=nfinit(polcyclo(5,t));
rnfpolredabs(K, y^2+(t^3+3*t^2+3*t+1)*y+(-53*t^3-10*t-10), 1)[1]

\\ #2301
polredbest(4*x^6+1,1)

\\ #2414
polredbest(y^4 - y^3 - 1/4,1)

\\ #2538
K=nfinit(y^4-18*y^2+82); b=-4*y^3-12*y^2+40*y+121;
rnfpolredabs(K,x^4-b)
rnfpolredabs(K,x^4+(4*y^3-9*y^2-40*y+95)*x^2+(-2*y^3+8*y^2+20*y-82)*x+(58*y^3-178*y^2-520*y+1604))

K=bnfinit(y^4 - 18*y^2 + 82);
A=x^4+(4*y^3-15*y^2-40*y+149)*x^2+(-2*y^3+8*y^2+20*y-82)*x+(46*y^3-136*y^2-424*y+1262);
rnfpolredabs(K,A)
B=x^4+Mod(4*y^3+12*y^2-40*y-121,y^4-18*y^2+82);
rnfpolredabs(K,B)

A=x^4+(4*y^3-10*y^2-40*y+105)*x^2+(-2*y^3+10*y^2+16*y-82)*x+(54*y^3-162*y^2-484*y+1458);
rnfpolredabs(K,A)


\\ ERRORS, keep at end of file

\\#2241
polredbest(x^6+30*x^5+133*x^4-2340*x^3-12284*x^2+29519*x-3856)
