   echo = 1 (on)
? p2=Pol([1,3021,-786303,-6826636057,-546603588746,3853890514072057]);
? fa=[11699,6;2392997,2;4987333019653,2];
? setrand(1);N=10^8;a=matrix(3,5,j,k,vectorv(5,l,random\N));
? nfpol=x^5-5*x^3+5*x+25;nf=nfinit(nfpol)
[x^5 - 5*x^3 + 5*x + 25, [1, 2], 595125, 45, [[1, -1.08911514572050482502495
27946671612684, -2.4285174907194186068992069565359418365, 0.7194669112891317
8943997506477288225734, -2.5558200350691694950646071159426779972; 1, -0.1383
8372073406036365047976417441696637 - 0.4918163765776864349975328551474152510
7*I, 1.9647119211288133163138753392090569931 + 0.809714924188978951282940822
19556466857*I, -0.072312766896812300380582649294307897122 + 2.19808037538462
76641195195160383234878*I, -0.98796319352507039803950539735452837195 + 1.570
1452385894131769052374806001981109*I; 1, 1.682941293594312776162956161507997
6006 + 2.0500351226010726172974286983598602164*I, -0.75045317576910401286427
186094108607489 + 1.3101462685358123283560773619310445916*I, -0.787420688747
75359433940488309213323155 + 2.1336633893126618034168454610457936018*I, 1.26
58732110596551455718089553258673705 - 2.716479010374315056657802803578983483
5*I], [1, -1.0891151457205048250249527946671612684, -2.428517490719418606899
2069565359418365, 0.71946691128913178943997506477288225734, -2.5558200350691
694950646071159426779972; 1, -0.63020009731174679864801261932183221744, 2.77
44268453177922675968161614046216617, 2.1257676084878153637389368667440155906
, 0.58218204506434277886573208324566973893; 1, 0.353432655843626071347053090
97299828470, 1.1549969969398343650309345170134923246, -2.2703931422814399645
001021653326313849, -2.5581084321144835749447428779547264828; 1, 3.732976416
1953853934603848598678578170, 0.55969309276670831549180550098995851667, 1.34
62427005649082090774405779536603703, -1.450605799314659911085993848253116112
9; 1, -0.36709382900675984113447253685186261580, -2.060599444304916341220349
2228721306665, -2.9210840780604153977562503441379268334, 3.98235222143397020
22296117589048508540], [1, -1, -2, 1, -3; 1, -1, 3, 2, 1; 1, 0, 1, -2, -3; 1
, 4, 1, 1, -1; 1, 0, -2, -3, 4], [5, 2, 0, -1, -2; 2, -2, -5, -10, 20; 0, -5
, 10, -10, 5; -1, -10, -10, -17, 1; -2, 20, 5, 1, -8], [345, 0, 200, 110, 17
7; 0, 345, 95, 1, 145; 0, 0, 5, 4, 3; 0, 0, 0, 1, 0; 0, 0, 0, 0, 1], [63, 3,
 0, -6, -9; 3, 8, -5, -1, 16; 0, -5, 22, -10, 0; -6, -1, -10, -14, -9; -9, 1
6, 0, -9, -2], [345, [138, 117, 330, 288, -636; -172, -88, 65, 118, -116; 53
, 1, 138, -173, 65; 1, -172, 54, 191, 106; 0, 118, 173, 225, -34]], [3, 5, 2
3]], [-2.4285174907194186068992069565359418365, 1.96471192112881331631387533
92090569931 + 0.80971492418897895128294082219556466857*I, -0.750453175769104
01286427186094108607489 + 1.3101462685358123283560773619310445916*I], [1, 1/
15*x^4 - 2/3*x^2 + 1/3*x + 4/3, x, 2/15*x^4 - 1/3*x^2 + 2/3*x - 1/3, -1/15*x
^4 + 1/3*x^3 + 1/3*x^2 - 4/3*x - 2/3], [1, 0, 3, 1, 10; 0, 0, -2, 1, -5; 0, 
1, 0, 3, -5; 0, 0, 1, 1, 10; 0, 0, 0, 3, 0], [1, 0, 0, 0, 0, 0, -1, -1, -2, 
4, 0, -1, 3, -1, 1, 0, -2, -1, -3, -1, 0, 4, 1, -1, -1; 0, 1, 0, 0, 0, 1, 1,
 -1, -1, 1, 0, -1, -2, -1, 1, 0, -1, -1, -1, 3, 0, 1, 1, 3, -3; 0, 0, 1, 0, 
0, 0, 0, 0, 1, -1, 1, 0, 0, 0, -2, 0, 1, 0, -1, -1, 0, -1, -2, -1, -1; 0, 0,
 0, 1, 0, 0, 1, 0, 0, 0, 0, 0, 1, 1, 2, 1, 0, 1, 0, 0, 0, 0, 2, 0, -1; 0, 0,
 0, 0, 1, 0, -1, -1, -1, 1, 0, -1, 0, 1, 0, 0, -1, 1, 0, 0, 1, 1, 0, 0, -1]]
? nfinit(nfpol,2)
[x^5 - 2*x^4 + 3*x^3 + 8*x^2 + 3*x + 2, [1, 2], 595125, 4, [[1, -1.089115145
7205048250249527946671612684, -2.4285174907194186068992069565359418365, 0.71
946691128913178943997506477288225734, -2.55582003506916949506460711594267799
72; 1, -0.13838372073406036365047976417441696637 + 0.49181637657768643499753
285514741525107*I, 1.9647119211288133163138753392090569931 - 0.8097149241889
7895128294082219556466857*I, -0.072312766896812300380582649294307897122 - 2.
1980803753846276641195195160383234878*I, -0.98796319352507039803950539735452
837195 - 1.5701452385894131769052374806001981109*I; 1, 1.6829412935943127761
629561615079976006 + 2.0500351226010726172974286983598602164*I, -0.750453175
76910401286427186094108607489 + 1.3101462685358123283560773619310445916*I, -
0.78742068874775359433940488309213323155 + 2.1336633893126618034168454610457
936018*I, 1.2658732110596551455718089553258673705 - 2.7164790103743150566578
028035789834835*I], [1, -1.0891151457205048250249527946671612684, -2.4285174
907194186068992069565359418365, 0.71946691128913178943997506477288225734, -2
.5558200350691694950646071159426779972; 1, 0.3534326558436260713470530909729
9828470, 1.1549969969398343650309345170134923246, -2.27039314228143996450010
21653326313849, -2.5581084321144835749447428779547264828; 1, -0.630200097311
74679864801261932183221744, 2.7744268453177922675968161614046216617, 2.12576
76084878153637389368667440155906, 0.58218204506434277886573208324566973893; 
1, 3.7329764161953853934603848598678578170, 0.559693092766708315491805500989
95851667, 1.3462427005649082090774405779536603703, -1.4506057993146599110859
938482531161129; 1, -0.36709382900675984113447253685186261580, -2.0605994443
049163412203492228721306665, -2.9210840780604153977562503441379268334, 3.982
3522214339702022296117589048508540], [1, -1, -2, 1, -3; 1, 0, 1, -2, -3; 1, 
-1, 3, 2, 1; 1, 4, 1, 1, -1; 1, 0, -2, -3, 4], [5, 2, 0, -1, -2; 2, -2, -5, 
-10, 20; 0, -5, 10, -10, 5; -1, -10, -10, -17, 1; -2, 20, 5, 1, -8], [345, 0
, 200, 110, 177; 0, 345, 95, 1, 145; 0, 0, 5, 4, 3; 0, 0, 0, 1, 0; 0, 0, 0, 
0, 1], [63, 3, 0, -6, -9; 3, 8, -5, -1, 16; 0, -5, 22, -10, 0; -6, -1, -10, 
-14, -9; -9, 16, 0, -9, -2], [345, [138, 117, 330, 288, -636; -172, -88, 65,
 118, -116; 53, 1, 138, -173, 65; 1, -172, 54, 191, 106; 0, 118, 173, 225, -
34]], [3, 5, 23]], [-1.0891151457205048250249527946671612684, -0.13838372073
406036365047976417441696637 + 0.49181637657768643499753285514741525107*I, 1.
6829412935943127761629561615079976006 + 2.0500351226010726172974286983598602
164*I], [1, x, -1/2*x^4 + 3/2*x^3 - 5/2*x^2 - 2*x + 1, -1/2*x^4 + x^3 - x^2 
- 9/2*x - 1, -1/2*x^4 + x^3 - 2*x^2 - 7/2*x - 2], [1, 0, -1, -7, -14; 0, 1, 
1, -2, -15; 0, 0, 0, 2, 4; 0, 0, 1, 1, -2; 0, 0, -1, -3, -4], [1, 0, 0, 0, 0
, 0, -1, -1, -2, 4, 0, -1, 3, -1, 1, 0, -2, -1, -3, -1, 0, 4, 1, -1, -1; 0, 
1, 0, 0, 0, 1, 1, -1, -1, 1, 0, -1, -2, -1, 1, 0, -1, -1, -1, 3, 0, 1, 1, 3,
 -3; 0, 0, 1, 0, 0, 0, 0, 0, 1, -1, 1, 0, 0, 0, -2, 0, 1, 0, -1, -1, 0, -1, 
-2, -1, -1; 0, 0, 0, 1, 0, 0, 1, 0, 0, 0, 0, 0, 1, 1, 2, 1, 0, 1, 0, 0, 0, 0
, 2, 0, -1; 0, 0, 0, 0, 1, 0, -1, -1, -1, 1, 0, -1, 0, 1, 0, 0, -1, 1, 0, 0,
 1, 1, 0, 0, -1]]
? nfinit(nfpol,3)[2]
Mod(-1/2*x^4 + 3/2*x^3 - 5/2*x^2 - 2*x + 1, x^5 - 2*x^4 + 3*x^3 + 8*x^2 + 3*
x + 2)
? nf3=nfinit(x^6+108);
? setrand(1);bnf2=bnfinit(y^3-y-1);nf2=bnf2[7];
? setrand(1);bnf=bnfinit(x^2-x-57,,[0.2,0.2])
[Mat(3), Mat([1, 1, 2]), [-2.7124653051843439746808795106061300699 + 3.14159
26535897932384626433832795028842*I; 2.7124653051843439746808795106061300699]
, [1.7903417566977293763292119206302198761, 1.289761953065273502503008607239
5031017 + 3.1415926535897932384626433832795028842*I, 0.E-57, 0.5005798036324
5587382620331339071677436; -1.7903417566977293763292119206302198761, -1.2897
619530652735025030086072395031017, 0.E-57, -0.500579803632455873826203313390
71677436 + 3.1415926535897932384626433832795028842*I], [[3, [-1, 1]~, 1, 1, 
[0, 57; 1, 1]], [5, [-2, 1]~, 1, 1, [1, 57; 1, 2]], [3, [0, 1]~, 1, 1, [-1, 
57; 1, 0]], [5, [1, 1]~, 1, 1, [-2, 57; 1, -1]]], 0, [x^2 - x - 57, [2, 0], 
229, 1, [[1, -7.0663729752107779635959310246705326059; 1, 8.0663729752107779
635959310246705326059], [1, -7.0663729752107779635959310246705326059; 1, 8.0
663729752107779635959310246705326059], [1, -7; 1, 8], [2, 1; 1, 115], [229, 
114; 0, 1], [115, -1; -1, 2], [229, [114, 57; 1, 115]], [229]], [-7.06637297
52107779635959310246705326059, 8.0663729752107779635959310246705326059], [1,
 x], [1, 0; 0, 1], [1, 0, 0, 57; 0, 1, 1, 1]], [[3, [3], [[3, 2; 0, 1]]], 2.
7124653051843439746808795106061300699, 1, [2, -1], [x + 7]], [Mat(1), [[0, 0
]], [[1.7903417566977293763292119206302198761, -1.79034175669772937632921192
06302198761]]], [0, 0]]
? dobnf(x^2-x-100000,1)
[[5], [Mod(379554884019013781006303254896369154068336082609238336*x + 119836
165644250789990462835950022871665178127611316131167, x^2 - x - 100000)]]
? \p19
   realprecision = 19 significant digits
? setrand(1);sbnf=bnfcompress(bnfinit(x^3-x^2-14*x-1))
[x^3 - x^2 - 14*x - 1, 3, 10889, [1, x, x^2 - x - 9], [-3.233732695981516673
, -0.07182350902743636345, 4.305556205008953036], 0, Mat(2), Mat([1, 1, 0, 1
, 0, 1]), [9, 15, 16, 17, 39, 33, 10], [2, -1], [[0, 1, 0]~, [5, 3, 1]~], [[
[4, -1, 0]~, [-1, 1, 0]~, [2, 1, 0]~, [3, 1, 0]~, [-10, -5, -1]~, [-1, -1, 0
]~, [-3, 0, 0]~], 0]]
? bnfinit(sbnf)
[Mat(2), Mat([1, 1, 0, 1, 0, 1]), [1.173637103435061715 + 3.1415926535897932
38*I, -4.562279014988837902 + 3.141592653589793238*I; -2.633543432738976050 
+ 3.141592653589793238*I, 1.420330600779487358 + 3.141592653589793238*I; 1.4
59906329303914335, 3.141948414209350544], [1.246346989334819161, 0.540400637
6129469728 + 3.141592653589793238*I, -0.6926391142471042845 + 3.141592653589
793238*I, -1.990056445584799714 + 3.141592653589793238*I, -0.830562594660718
8640, 0.004375616572659815402, 0; 0.6716827432867392936, -0.8333219883742404
172 + 3.141592653589793238*I, -0.2461086674077943078, 0.5379005671092853267,
 -1.552661549868775854 + 3.141592653589793238*I, -0.8738318043071131265 + 3.
141592653589793238*I, 0; -1.918029732621558455 + 3.141592653589793238*I, 0.2
929213507612934444, 0.9387477816548985923, 1.452155878475514387, 2.383224144
529494718 + 3.141592653589793238*I, 0.8694561877344533111 + 3.14159265358979
3238*I, 0], [[3, [-1, 1, 0]~, 1, 1, [1, 10, 45; 1, 7, 6; 1, 1, -3]], [5, [-1
, 1, 0]~, 1, 1, [0, 10, 45; 1, 6, 6; 1, 1, -4]], [5, [2, 1, 0]~, 1, 1, [1, -
17, 42; -2, 4, -9; 1, -2, -3]], [5, [3, 1, 0]~, 1, 1, [2, 19, 46; 2, 9, 11; 
1, 2, -2]], [13, [19, 1, 0]~, 1, 1, [-2, -53, 38; -6, -3, -29; 1, -6, -6]], 
[11, [1, 1, 0]~, 1, 1, [-3, -8, 43; -1, 1, -4; 1, -1, -7]], [3, [10, 1, 1]~,
 1, 2, [-1, 9, 1; 1, 0, 5; 0, 1, -1]]]~, 0, [x^3 - x^2 - 14*x - 1, [3, 0], 1
0889, 1, [[1, -3.233732695981516673, 4.690759845041404812; 1, -0.07182350902
743636345, -8.923017874523549404; 1, 4.305556205008953036, 5.232258029482144
592], [1, -3.233732695981516673, 4.690759845041404812; 1, -0.071823509027436
36345, -8.923017874523549404; 1, 4.305556205008953036, 5.232258029482144592]
, [1, -3, 5; 1, 0, -9; 1, 4, 5], [3, 1, 1; 1, 29, 8; 1, 8, 129], [10889, 569
8, 8994; 0, 1, 0; 0, 0, 1], [3677, -121, -21; -121, 386, -23; -21, -23, 86],
 [10889, [1899, 46720, 5235; 5191, 7095, 25956; 1, 5191, 1895]], []], [-3.23
3732695981516673, -0.07182350902743636345, 4.305556205008953036], [1, x, x^2
 - x - 9], [1, 0, 9; 0, 1, 1; 0, 0, 1], [1, 0, 0, 0, 9, 1, 0, 1, 44; 0, 1, 0
, 1, 1, 5, 0, 5, 1; 0, 0, 1, 0, 1, 0, 1, 0, -4]], [[2, [2], [[3, 2, 0; 0, 1,
 0; 0, 0, 1]]], 10.34800724602767998, 1, [2, -1], [x, x^2 + 2*x - 4]], [Mat(
1), [[0, 0, 0]], [[1.246346989334819161, 0.6716827432867392936, -1.918029732
621558455 + 3.141592653589793238*I]]], [[[4, -1, 0]~, [-1, 1, 0]~, [2, 1, 0]
~, [3, 1, 0]~, [-10, -5, -1]~, [-1, -1, 0]~, [-3, 0, 0]~], 0]]
? \p38
   realprecision = 38 significant digits
? bnr=bnrinit(bnf,[[5,3;0,1],[1,0]],1);bnr.cyc
[12]
? bnr2=bnrinit(bnf,[[25,13;0,1],[1,1]],1);bnr2.bid
[[[25, 13; 0, 1], [1, 1]], [80, [20, 2, 2], [[2, 0]~, [-24, 0]~, [2, 2]~]], 
Mat([[5, [-2, 1]~, 1, 1, [1, 57; 1, 2]], 2]), [[[[4], [2], [2], [Vecsmall([0
, 0])], 1], [[5], [6], [6], [Vecsmall([0, 0])], Mat([1/5, -13/5])]], [[2, 2]
, [-24, [2, 2]~], [Vecsmall([0, 1]), Vecsmall([1, 1])]]], [1, -12, 0, 0; 0, 
0, 1, 0; 0, 0, 0, 1]]
? rnfinit(nf2,x^5-x-2)
[x^5 - x - 2, [[83718587879473471, -18162091535584830*x^14 + 659399873895590
0*x^13 + 89125883511340690*x^12 - 123429972713895380*x^11 - 8618468612826159
0*x^10 + 508290939376248430*x^9 - 88425050961683595*x^8 - 806556841120532680
*x^7 - 2575481228604156570*x^6 + 2756771576006241774*x^5 - 28977279276236285
95*x^4 + 4379071886234238350*x^3 - 4957913590225421420*x^2 - 981408476020699
484*x + 24006278056864075, 39516536165538345*x^14 - 6500512476832995*x^13 - 
196215472046117185*x^12 + 229902227480108910*x^11 + 237380704030959181*x^10 
- 1064931988160773805*x^9 - 20657086671714300*x^8 + 1772885205999206010*x^7 
+ 5952033217241102348*x^6 - 4838840187320655696*x^5 + 5180390720553188700*x^
4 - 8374015687535120430*x^3 + 8907744727915040221*x^2 + 4155976664123434381*
x + 318920215718580450], 1/83718587879473471], [[49744, 0, 0; 0, 49744, 0; 0
, 0, 49744], 3109], 1, [], [], [[1, x, x^2, x^3, x^4], [1, 1, 1, 1, 1]], [1,
 0, 0, 0, 0; 0, 1, 0, 0, 0; 0, 0, 1, 0, 0; 0, 0, 0, 1, 0; 0, 0, 0, 0, 1], 1,
 [y^3 - y - 1, [1, 1], -23, 1, [[1, 0.75487766624669276004950889635852869189
, 1.3247179572447460259609088544780973407; 1, -0.877438833123346380024754448
17926434595 - 0.74486176661974423659317042860439236724*I, -0.662358978622373
01298045442723904867037 + 0.56227951206230124389918214490937306150*I], [1, 0
.75487766624669276004950889635852869189, 1.324717957244746025960908854478097
3407; 1, -1.6223005997430906166179248767836567132, -0.1000794665600717690812
7228232967560887; 1, -0.13257706650360214343158401957487197871, -1.224638490
6846742568796365721484217319], [1, 1, 1; 1, -2, 0; 1, 0, -1], [3, -1, 0; -1,
 1, 3; 0, 3, 2], [23, 16, 13; 0, 1, 0; 0, 0, 1], [7, -2, 3; -2, -6, 9; 3, 9,
 -2], [23, [10, 1, 8; 7, 3, 1; 1, 7, 10]], [23]], [1.32471795724474602596090
88544780973407, -0.66235897862237301298045442723904867037 + 0.56227951206230
124389918214490937306150*I], [1, y^2 - 1, y], [1, 0, 1; 0, 0, 1; 0, 1, 0], [
1, 0, 0, 0, 0, 1, 0, 1, 1; 0, 1, 0, 1, -1, 0, 0, 0, 1; 0, 0, 1, 0, 1, 0, 1, 
0, 0]], [x^15 - 5*x^13 + 5*x^12 + 7*x^11 - 26*x^10 - 5*x^9 + 45*x^8 + 158*x^
7 - 98*x^6 + 110*x^5 - 190*x^4 + 189*x^3 + 144*x^2 + 25*x + 1, 3951653616553
8345/83718587879473471*x^14 - 6500512476832995/83718587879473471*x^13 - 1962
15472046117185/83718587879473471*x^12 + 229902227480108910/83718587879473471
*x^11 + 237380704030959181/83718587879473471*x^10 - 1064931988160773805/8371
8587879473471*x^9 - 20657086671714300/83718587879473471*x^8 + 17728852059992
06010/83718587879473471*x^7 + 5952033217241102348/83718587879473471*x^6 - 48
38840187320655696/83718587879473471*x^5 + 5180390720553188700/83718587879473
471*x^4 - 8374015687535120430/83718587879473471*x^3 + 8907744727915040221/83
718587879473471*x^2 + 4155976664123434381/83718587879473471*x + 318920215718
580450/83718587879473471, -1, y^3 - y - 1, x^5 - x - 2], [0, 0]]
? bnfcertify(bnf)
1
? dobnf(x^4+24*x^2+585*x+1791,,[0.1,0.1])
[[4], [Mod(1/147*x^3 + 1/147*x^2 - 8/49*x - 9/49, x^4 + 24*x^2 + 585*x + 179
1)]]
? bnrconductor(bnf,[[25,13;0,1],[1,1]])
[[5, 3; 0, 1], [1, 0]]
? bnrconductorofchar(bnr,[2])
[[5, 3; 0, 1], [0, 0]]
? bnfisprincipal(bnf,[5,1;0,1],0)
[1]~
? bnfisprincipal(bnf,[5,1;0,1])
[[1]~, [-2, -1/3]~]
? bnfisunit(bnf,Mod(3405*x-27466,x^2-x-57))
[-4, Mod(1, 2)]~
? bnfnarrow(bnf)
[3, [3], [[3, 2; 0, 1]]]
? bnfsignunit(bnf)

[-1]

[ 1]

? bnrclassno(bnf,[[5,3;0,1],[1,0]])
12
? lu=ideallist(bnf,55,3);
? bnrclassnolist(bnf,lu)
[[3], [], [3, 3], [3], [6, 6], [], [], [], [3, 3, 3], [], [3, 3], [3, 3], []
, [], [12, 6, 6, 12], [3], [3, 3], [], [9, 9], [6, 6], [], [], [], [], [6, 1
2, 6], [], [3, 3, 3, 3], [], [], [], [], [], [3, 6, 6, 3], [], [], [9, 3, 9]
, [6, 6], [], [], [], [], [], [3, 3], [3, 3], [12, 12, 6, 6, 12, 12], [], []
, [6, 6], [9], [], [3, 3, 3, 3], [], [3, 3], [], [6, 12, 12, 6]]
? bnrdisc(bnr,Mat(6))
[12, 12, 18026977100265125]
? bnrdisc(bnr)
[24, 12, 40621487921685401825918161408203125]
? bnrdisc(bnr2,,,2)
0
? bnrdisc(bnr,Mat(6),,1)
[6, 2, [125, 13; 0, 1]]
? bnrdisc(bnr,,,1)
[12, 1, [1953125, 1160888; 0, 1]]
? bnrdisc(bnr2,,,3)
0
? bnrdisclist(bnf,lu)
[[[6, 6, Mat([229, 3])]], [], [[], []], [[]], [[12, 12, [5, 3; 229, 6]], [12
, 12, [5, 3; 229, 6]]], [], [], [], [[], [], []], [], [[], []], [[], []], []
, [], [[24, 24, [3, 6; 5, 9; 229, 12]], [], [], [24, 24, [3, 6; 5, 9; 229, 1
2]]], [[]], [[], []], [], [[18, 18, [19, 6; 229, 9]], [18, 18, [19, 6; 229, 
9]]], [[], []], [], [], [], [], [[], [24, 24, [5, 12; 229, 12]], []], [], [[
], [], [], []], [], [], [], [], [], [[], [12, 12, [3, 3; 11, 3; 229, 6]], [1
2, 12, [3, 3; 11, 3; 229, 6]], []], [], [], [[18, 18, [2, 12; 3, 12; 229, 9]
], [], [18, 18, [2, 12; 3, 12; 229, 9]]], [[12, 12, [37, 3; 229, 6]], [12, 1
2, [37, 3; 229, 6]]], [], [], [], [], [], [[], []], [[], []], [[], [], [], [
], [], []], [], [], [[12, 12, [2, 12; 3, 3; 229, 6]], [12, 12, [2, 12; 3, 3;
 229, 6]]], [[18, 18, [7, 12; 229, 9]]], [], [[], [], [], []], [], [[], []],
 [], [[], [24, 24, [5, 9; 11, 6; 229, 12]], [24, 24, [5, 9; 11, 6; 229, 12]]
, []]]
? bnrdisclist(bnf,20)
[[[[matrix(0,2), [[6, 6, Mat([229, 3])], [0, 0, 0], [0, 0, 0], [0, 0, 0]]]],
 [], [[Mat([12, 1]), [[0, 0, 0], [0, 0, 0], [0, 0, 0], [12, 0, [3, 3; 229, 6
]]]], [Mat([13, 1]), [[0, 0, 0], [12, 6, [-1, 1; 3, 3; 229, 6]], [0, 0, 0], 
[0, 0, 0]]]], [[Mat([10, 1]), [[0, 0, 0], [0, 0, 0], [0, 0, 0], [0, 0, 0]]]]
, [[Mat([20, 1]), [[12, 12, [5, 3; 229, 6]], [0, 0, 0], [0, 0, 0], [24, 0, [
5, 9; 229, 12]]]], [Mat([21, 1]), [[12, 12, [5, 3; 229, 6]], [24, 12, [5, 9;
 229, 12]], [0, 0, 0], [0, 0, 0]]]], [], [], [], [[Mat([12, 2]), [[0, 0, 0],
 [0, 0, 0], [0, 0, 0], [0, 0, 0]]], [[12, 1; 13, 1], [[0, 0, 0], [0, 0, 0], 
[12, 6, [-1, 1; 3, 6; 229, 6]], [24, 0, [3, 12; 229, 12]]]], [Mat([13, 2]), 
[[0, 0, 0], [0, 0, 0], [0, 0, 0], [0, 0, 0]]]], [], [[Mat([44, 1]), [[0, 0, 
0], [12, 6, [-1, 1; 11, 3; 229, 6]], [0, 0, 0], [0, 0, 0]]], [Mat([45, 1]), 
[[0, 0, 0], [0, 0, 0], [0, 0, 0], [12, 0, [11, 3; 229, 6]]]]], [[[10, 1; 12,
 1], [[0, 0, 0], [0, 0, 0], [0, 0, 0], [0, 0, 0]]], [[10, 1; 13, 1], [[0, 0,
 0], [0, 0, 0], [0, 0, 0], [0, 0, 0]]]], [], [], [[[12, 1; 20, 1], [[24, 24,
 [3, 6; 5, 9; 229, 12]], [0, 0, 0], [0, 0, 0], [48, 0, [3, 12; 5, 18; 229, 2
4]]]], [[13, 1; 20, 1], [[0, 0, 0], [24, 12, [3, 6; 5, 6; 229, 12]], [24, 12
, [3, 6; 5, 9; 229, 12]], [48, 0, [3, 12; 5, 18; 229, 24]]]], [[12, 1; 21, 1
], [[0, 0, 0], [0, 0, 0], [24, 12, [3, 6; 5, 9; 229, 12]], [48, 0, [3, 12; 5
, 18; 229, 24]]]], [[13, 1; 21, 1], [[24, 24, [3, 6; 5, 9; 229, 12]], [48, 2
4, [3, 12; 5, 18; 229, 24]], [0, 0, 0], [0, 0, 0]]]], [[Mat([10, 2]), [[0, 0
, 0], [12, 6, [-1, 1; 2, 12; 229, 6]], [12, 6, [-1, 1; 2, 12; 229, 6]], [24,
 0, [2, 36; 229, 12]]]]], [[Mat([68, 1]), [[0, 0, 0], [0, 0, 0], [12, 6, [-1
, 1; 17, 3; 229, 6]], [0, 0, 0]]], [Mat([69, 1]), [[0, 0, 0], [0, 0, 0], [12
, 6, [-1, 1; 17, 3; 229, 6]], [0, 0, 0]]]], [], [[Mat([76, 1]), [[18, 18, [1
9, 6; 229, 9]], [0, 0, 0], [0, 0, 0], [36, 0, [19, 15; 229, 18]]]], [Mat([77
, 1]), [[18, 18, [19, 6; 229, 9]], [36, 18, [-1, 1; 19, 15; 229, 18]], [0, 0
, 0], [0, 0, 0]]]], [[[10, 1; 20, 1], [[0, 0, 0], [0, 0, 0], [0, 0, 0], [0, 
0, 0]]], [[10, 1; 21, 1], [[0, 0, 0], [0, 0, 0], [0, 0, 0], [0, 0, 0]]]]]]
? bnrisprincipal(bnr,idealprimedec(bnf,7)[1])
[[9]~, [32879/6561, 13958/19683]~]
? dirzetak(nfinit(x^3-10*x+8),30)
[1, 2, 0, 3, 1, 0, 0, 4, 0, 2, 1, 0, 0, 0, 0, 5, 1, 0, 0, 3, 0, 2, 0, 0, 2, 
0, 1, 0, 1, 0]
? factornf(x^3+x^2-2*x-1,t^3+t^2-2*t-1)

[         x + Mod(-t, t^3 + t^2 - 2*t - 1) 1]

[   x + Mod(-t^2 + 2, t^3 + t^2 - 2*t - 1) 1]

[x + Mod(t^2 + t - 1, t^3 + t^2 - 2*t - 1) 1]

? vp=idealprimedec(nf,3)[1]
[3, [1, 0, 1, 0, 0]~, 1, 1, [1, 4, -1, 6, -4; -1, 2, 4, 3, -5; -1, -1, 1, 0,
 4; -1, -1, -2, 0, -2; 0, 3, 0, 0, 0]]
? idx=idealhnf(nf,vp)

[3 2 1 0 1]

[0 1 0 0 0]

[0 0 1 0 0]

[0 0 0 1 0]

[0 0 0 0 1]

? idy=idealred(nf,idx,[1,5,6])

[5 0 0 0 2]

[0 5 0 0 2]

[0 0 5 0 1]

[0 0 0 5 2]

[0 0 0 0 1]

? idx2=idealmul(nf,idx,idx)

[9 5 7 0 4]

[0 1 0 0 0]

[0 0 1 0 0]

[0 0 0 1 0]

[0 0 0 0 1]

? idt=idealmul(nf,idx,idx,1)

[2 0 0 0 0]

[0 2 0 0 0]

[0 0 2 0 0]

[0 0 0 2 1]

[0 0 0 0 1]

? idz=idealintersect(nf,idx,idy)

[15 10 5 0 12]

[ 0  5 0 0  2]

[ 0  0 5 0  1]

[ 0  0 0 5  2]

[ 0  0 0 0  1]

? aid=[idx,idy,idz,1,idx];
? idealadd(nf,idx,idy)

[1 0 0 0 0]

[0 1 0 0 0]

[0 0 1 0 0]

[0 0 0 1 0]

[0 0 0 0 1]

? idealaddtoone(nf,idx,idy)
[[0, -1, -3, -1, 2]~, [1, 1, 3, 1, -2]~]
? idealaddtoone(nf,[idy,idx])
[[-5, 0, 0, 0, 0]~, [6, 0, 0, 0, 0]~]
? idealappr(nf,idy)
[-1, 4, 2, -1, -3]~
? idealappr(nf,idealfactor(nf,idy),1)
[-1, 4, 2, -1, -3]~
? idealcoprime(nf,idx,idx)
[-1/3, 1/3, 1/3, 1/3, 0]~
? idealdiv(nf,idy,idt)

[5   0 5/2   0   1]

[0 5/2   0   0   1]

[0   0 5/2   0 1/2]

[0   0   0 5/2   1]

[0   0   0   0 1/2]

? idealdiv(nf,idx2,idx,1)

[3 2 1 0 1]

[0 1 0 0 0]

[0 0 1 0 0]

[0 0 0 1 0]

[0 0 0 0 1]

? idealfactor(nf,idz)

[[3, [1, 0, 1, 0, 0]~, 1, 1, [1, 4, -1, 6, -4; -1, 2, 4, 3, -5; -1, -1, 1, 0
, 4; -1, -1, -2, 0, -2; 0, 3, 0, 0, 0]] 1]

[[5, [-1, 0, 0, 0, 2]~, 4, 1, [2, -3, 0, -12, 6; 2, 2, -5, -2, 6; 1, 1, 0, -
1, -7; 2, 2, 5, 3, 1; 1, -4, 0, -1, 3]] 3]

[[5, [2, 0, 0, 0, -2]~, 1, 1, [2, 1, 10, -4, 2; 0, 0, -5, 0, 0; 3, -1, 0, -1
, -7; 0, 0, 5, 5, 5; 1, -2, 0, 3, 1]] 1]

? idealhnf(nf,vp[2],3)

[3 2 1 0 1]

[0 1 0 0 0]

[0 0 1 0 0]

[0 0 0 1 0]

[0 0 0 0 1]

? ideallist(bnf,20)
[[[1, 0; 0, 1]], [], [[3, 2; 0, 1], [3, 0; 0, 1]], [[2, 0; 0, 2]], [[5, 3; 0
, 1], [5, 1; 0, 1]], [], [], [], [[9, 5; 0, 1], [3, 0; 0, 3], [9, 3; 0, 1]],
 [], [[11, 9; 0, 1], [11, 1; 0, 1]], [[6, 4; 0, 2], [6, 0; 0, 2]], [], [], [
[15, 8; 0, 1], [15, 3; 0, 1], [15, 11; 0, 1], [15, 6; 0, 1]], [[4, 0; 0, 4]]
, [[17, 14; 0, 1], [17, 2; 0, 1]], [], [[19, 18; 0, 1], [19, 0; 0, 1]], [[10
, 6; 0, 2], [10, 2; 0, 2]]]
? bid=idealstar(nf2,54)
[[[54, 0, 0; 0, 54, 0; 0, 0, 54], [0]], [132678, [1638, 9, 9]], [[2, [2, 0, 
0]~, 1, 3, 1], 1; [3, [3, 0, 0]~, 1, 3, 1], 3], [[[[7], [[2, 1, 0]~], [[-26,
 -27, 0]~], [Vecsmall([])], 1]], [[[26], [[4, 2, 2]~], [[-23, 2, 2]~], [Vecs
mall([])], 1], [[3, 3, 3], [4, [1, 3, 0]~, [1, 0, 3]~], [-77, [1, -24, 0]~, 
[1, 0, -24]~], [Vecsmall([]), Vecsmall([]), Vecsmall([])], [1/3, 0, 0; 0, 1/
3, 0; 0, 0, 1/3]], [[3, 3, 3], [10, [1, 9, 0]~, [1, 0, 9]~], [-233, [1, -18,
 0]~, [1, 0, -18]~], [Vecsmall([]), Vecsmall([]), Vecsmall([])], [1/9, 0, 0;
 0, 1/9, 0; 0, 0, 1/9]]], [[], [], []]], [468, 469, 0, 0, -364, 0, 0, -1092;
 0, 0, 1, 0, -6, -6, 0, 0; 0, 0, 0, 1, -3, 0, -6, 0]]
? ideallog(nf2,y,bid)
[1100, 8, 0]~
? idealmin(nf,idx,[1,2,3])
[1, 0, 1, 0, 0]~
? idealnorm(nf,idt)
16
? idp=idealpow(nf,idx,7)

[2187 1436 1807 630 1822]

[   0    1    0   0    0]

[   0    0    1   0    0]

[   0    0    0   1    0]

[   0    0    0   0    1]

? idealpow(nf,idx,7,1)

[1 0 0 0 0]

[0 1 0 0 0]

[0 0 1 0 0]

[0 0 0 1 0]

[0 0 0 0 1]

? idealprimedec(nf,2)
[[2, [3, 0, 1, 0, 0]~, 1, 1, [0, 2, 0, -4, -2; 0, 0, 0, 2, 0; 0, 0, -2, -2, 
-2; 1, 0, 3, 0, -1; 1, 0, 1, 0, -1]], [2, [12, -4, -2, 11, 3]~, 1, 4, [1, -1
, 3, -1, 1; 0, 0, -2, -1, 1; 1, 0, 1, 0, -2; 0, 0, 1, 2, 2; 0, -1, 0, 1, 1]]
]
? idealprimedec(nf,3)
[[3, [1, 0, 1, 0, 0]~, 1, 1, [1, 4, -1, 6, -4; -1, 2, 4, 3, -5; -1, -1, 1, 0
, 4; -1, -1, -2, 0, -2; 0, 3, 0, 0, 0]], [3, [1, 1, 1, 0, 0]~, 2, 2, [0, -6,
 3, -9, 9; 2, -1, -7, -5, 7; 2, 1, 0, 1, -7; 1, 2, 3, 2, 4; 0, -5, -1, 0, 2]
]]
? idealprimedec(nf,11)
[[11, [11, 0, 0, 0, 0]~, 1, 5, 1]]
? idealtwoelt(nf,idy)
[5, [2, 2, 1, 2, 1]~]
? idealtwoelt(nf,idy,10)
[-1, 4, 2, 4, 2]~
? idealstar(nf2,54)
[[[54, 0, 0; 0, 54, 0; 0, 0, 54], [0]], [132678, [1638, 9, 9]], [[2, [2, 0, 
0]~, 1, 3, 1], 1; [3, [3, 0, 0]~, 1, 3, 1], 3], [[[[7], [[2, 1, 0]~], [[-26,
 -27, 0]~], [Vecsmall([])], 1]], [[[26], [[4, 2, 1]~], [[-23, 2, -26]~], [Ve
csmall([])], 1], [[3, 3, 3], [4, [1, 3, 0]~, [1, 0, 3]~], [-77, [1, -24, 0]~
, [1, 0, -24]~], [Vecsmall([]), Vecsmall([]), Vecsmall([])], [1/3, 0, 0; 0, 
1/3, 0; 0, 0, 1/3]], [[3, 3, 3], [10, [1, 9, 0]~, [1, 0, 9]~], [-233, [1, -1
8, 0]~, [1, 0, -18]~], [Vecsmall([]), Vecsmall([]), Vecsmall([])], [1/9, 0, 
0; 0, 1/9, 0; 0, 0, 1/9]]], [[], [], []]], [468, -77, 0, 728, -1456, 0, 546,
 -1092; 0, 0, 1, 0, -1, -6, 0, -3; 0, 1, 0, -1, 1, 0, -3, 3]]
? idealval(nf,idp,vp)
7
? ba=nfalgtobasis(nf,x^3+5)
[6, 1, 3, 1, 3]~
? bb=nfalgtobasis(nf,x^3+x)
[1, 1, 4, 1, 3]~
? bc=matalgtobasis(nf,[x^2+x;x^2+1])

[[3, -2, 1, 1, 0]~]

[[4, -2, 0, 1, 0]~]

? matbasistoalg(nf,bc)

[Mod(x^2 + x, x^5 - 5*x^3 + 5*x + 25)]

[Mod(x^2 + 1, x^5 - 5*x^3 + 5*x + 25)]

? nfbasis(x^3+4*x+5)
[1, x, 1/7*x^2 - 1/7*x - 2/7]
? nfbasistoalg(nf,ba)
Mod(x^3 + 5, x^5 - 5*x^3 + 5*x + 25)
? nfdisc(x^3+4*x+12)
-1036
? nfeltdiv(nf,ba,bb)
[584/373, 66/373, -32/373, -105/373, 120/373]~
? nfeltdiveuc(nf,ba,bb)
[2, 0, 0, 0, 0]~
? nfeltdivrem(nf,ba,bb)
[[2, 0, 0, 0, 0]~, [4, -1, -5, -1, -3]~]
? nfeltmod(nf,ba,bb)
[4, -1, -5, -1, -3]~
? nfeltmul(nf,ba,bb)
[50, -15, -35, 60, 15]~
? nfeltpow(nf,bb,5)
[-291920, 136855, 230560, -178520, 74190]~
? nfeltreduce(nf,ba,idx)
[1, 0, 0, 0, 0]~
? nfeltval(nf,ba,vp)
0
? nffactor(nf2,x^3+x)

[      x 1]

[x^2 + 1 1]

? aut=nfgaloisconj(nf3)
[-x, x, -1/12*x^4 - 1/2*x, -1/12*x^4 + 1/2*x, 1/12*x^4 - 1/2*x, 1/12*x^4 + 1
/2*x]~
? nfgaloisapply(nf3,aut[5],Mod(x^5,x^6+108))
Mod(-1/2*x^5 + 9*x^2, x^6 + 108)
? nfhilbert(nf,3,5)
-1
? nfhilbert(nf,3,5,vp)
-1
? nfhnf(nf,[a,aid])
[[1, 1, 4; 0, 1, 0; 0, 0, 1], [[15, 2, 10, 12, 4; 0, 1, 0, 0, 0; 0, 0, 1, 0,
 0; 0, 0, 0, 1, 0; 0, 0, 0, 0, 1], 1, 1]]
? da=nfdetint(nf,[a,aid])

[15 10 5 0 12]

[ 0  5 0 0  2]

[ 0  0 5 0  1]

[ 0  0 0 5  2]

[ 0  0 0 0  1]

? nfhnfmod(nf,[a,aid],da)
[[1, 1, 4; 0, 1, 0; 0, 0, 1], [[15, 2, 10, 12, 4; 0, 1, 0, 0, 0; 0, 0, 1, 0,
 0; 0, 0, 0, 1, 0; 0, 0, 0, 0, 1], 1, 1]]
? nfisideal(bnf[7],[5,1;0,1])
1
? nfisincl(x^2+1,x^4+1)
[-x^2, x^2]
? nfisincl(x^2+1,nfinit(x^4+1))
[-x^2, x^2]
? nfisisom(x^3+x^2-2*x-1,x^3+x^2-2*x-1)
[x, -x^2 - x + 1, x^2 - 2]
? nfisisom(x^3-2,nfinit(x^3-6*x^2-6*x-30))
[-1/25*x^2 + 13/25*x - 2/5]
? nfroots(nf2,x+2)
[Mod(-2, y^3 - y - 1)]
? nfrootsof1(nf)
[2, -1]
? nfsnf(nf,[a[,1..3],[1,1,1],[idealinv(nf,idx),idealinv(nf,idy),1]])
[[15706993357777254170417850, 1636878763571210697462070, 1307908830618593502
9427775, 1815705333955314515809980, 7581330311082212790621785; 0, 5, 0, 0, 0
; 0, 0, 5, 0, 0; 0, 0, 0, 5, 0; 0, 0, 0, 0, 5], [1, 0, 0, 0, 0; 0, 1, 0, 0, 
0; 0, 0, 1, 0, 0; 0, 0, 0, 1, 0; 0, 0, 0, 0, 1], [1, 0, 0, 0, 0; 0, 1, 0, 0,
 0; 0, 0, 1, 0, 0; 0, 0, 0, 1, 0; 0, 0, 0, 0, 1]]
? nfsubfields(nf)
[[x, 0], [x^5 - 5*x^3 + 5*x + 25, x]]
? polcompositum(x^4-4*x+2,x^3-x-1)
[x^12 - 4*x^10 + 8*x^9 + 12*x^8 + 12*x^7 + 138*x^6 + 132*x^5 - 43*x^4 + 58*x
^2 - 128*x - 5]
? polcompositum(x^4-4*x+2,x^3-x-1,1)
[[x^12 - 4*x^10 + 8*x^9 + 12*x^8 + 12*x^7 + 138*x^6 + 132*x^5 - 43*x^4 + 58*
x^2 - 128*x - 5, Mod(-279140305176/29063006931199*x^11 + 129916611552/290630
06931199*x^10 + 1272919322296/29063006931199*x^9 - 2813750209005/29063006931
199*x^8 - 2859411937992/29063006931199*x^7 - 414533880536/29063006931199*x^6
 - 35713977492936/29063006931199*x^5 - 17432607267590/29063006931199*x^4 + 4
9785595543672/29063006931199*x^3 + 9423768373204/29063006931199*x^2 - 427797
76146743/29063006931199*x + 37962587857138/29063006931199, x^12 - 4*x^10 + 8
*x^9 + 12*x^8 + 12*x^7 + 138*x^6 + 132*x^5 - 43*x^4 + 58*x^2 - 128*x - 5), M
od(-279140305176/29063006931199*x^11 + 129916611552/29063006931199*x^10 + 12
72919322296/29063006931199*x^9 - 2813750209005/29063006931199*x^8 - 28594119
37992/29063006931199*x^7 - 414533880536/29063006931199*x^6 - 35713977492936/
29063006931199*x^5 - 17432607267590/29063006931199*x^4 + 49785595543672/2906
3006931199*x^3 + 9423768373204/29063006931199*x^2 - 13716769215544/290630069
31199*x + 37962587857138/29063006931199, x^12 - 4*x^10 + 8*x^9 + 12*x^8 + 12
*x^7 + 138*x^6 + 132*x^5 - 43*x^4 + 58*x^2 - 128*x - 5), -1]]
? polgalois(x^6-3*x^2-1)
[12, 1, 1, "A_4(6) = [2^2]3"]
? polred(x^5-2*x^4-4*x^3-96*x^2-352*x-568)
[x - 1, x^5 - x^4 + 2*x^3 - 4*x^2 + x - 1]
? polred(x^4-28*x^3-458*x^2+9156*x-25321,3)

[                                                1           x - 1]

[                   1/115*x^2 - 14/115*x - 212/115   x^2 - 2*x - 9]

[                  -1/115*x^2 + 14/115*x + 442/115   x^2 - 2*x - 9]

[                   1/115*x^2 - 14/115*x - 327/115        x^2 - 10]

[1/4485*x^3 - 7/1495*x^2 - 1034/4485*x + 7924/4485 x^4 - 8*x^2 + 6]

? polred(x^4+576,1)
[x - 1, x^2 - 3*x + 3, x^2 - 2*x + 2, x^2 - x + 1, x^2 + 1, x^4 - x^2 + 1]
? polred(x^4+576,3)

[                           1         x - 1]

[    -1/192*x^3 - 1/8*x + 3/2 x^2 - 3*x + 3]

[                1/24*x^2 + 1 x^2 - 2*x + 2]

[               -1/24*x^2 + 1 x^2 - 2*x + 2]

[    -1/192*x^3 - 1/8*x + 1/2   x^2 - x + 1]

[     1/192*x^3 + 1/8*x + 1/2   x^2 - x + 1]

[                    1/24*x^2       x^2 + 1]

[1/192*x^3 + 1/48*x^2 - 1/8*x x^4 - x^2 + 1]

? polred(p2,0,fa)
[x - 1, x^5 - 80*x^3 - 223*x^2 + 800*x + 2671]
? polred(p2,1,fa)
[x - 1, x^5 - 80*x^3 - 223*x^2 + 800*x + 2671]
? polredabs(x^5-2*x^4-4*x^3-96*x^2-352*x-568)
x^5 - x^4 + 2*x^3 - 4*x^2 + x - 1
? polredabs(x^5-2*x^4-4*x^3-96*x^2-352*x-568,1)
[x^5 - x^4 + 2*x^3 - 4*x^2 + x - 1, Mod(2*x^4 - x^3 + 3*x^2 - 3*x - 1, x^5 -
 x^4 + 2*x^3 - 4*x^2 + x - 1)]
? polredord(x^3-12*x+45*x-1)
[x - 1, x^3 + 33*x - 1]
? polsubcyclo(31,5)
x^5 + x^4 - 12*x^3 - 21*x^2 + x + 5
? setrand(1);poltschirnhaus(x^5-x-1)
x^5 + 10*x^4 + 32*x^3 - 100*x^2 - 879*x - 1457
? p=x^5-5*x+y;aa=rnfpseudobasis(nf2,p)
[[1, 0, 0, -2, [3, 1, 0]~; 0, 1, 0, 2, [0, -1, 0]~; 0, 0, 1, 1, [-5, -2, 0]~
; 0, 0, 0, 1, -2; 0, 0, 0, 0, 1], [1, 1, 1, [1, 0, 2/5; 0, 1, 3/5; 0, 0, 1/5
], [1, 0, 22/25; 0, 1, 8/25; 0, 0, 1/25]], [416134375, 202396875, 60056800; 
0, 3125, 2700; 0, 0, 25], [-1275, 5, 5]~]
? rnfbasis(bnf2,aa)

[1 0 0  [-26/25, 11/25, -8/25]~         [0, 4, -7]~]

[0 1 0   [53/25, -8/25, -1/25]~ [6/5, -41/5, 53/5]~]

[0 0 1 [-14/25, -21/25, 13/25]~  [-16/5, 1/5, 7/5]~]

[0 0 0     [7/25, -2/25, 6/25]~  [2/5, -2/5, 11/5]~]

[0 0 0     [9/25, 1/25, -3/25]~   [2/5, -7/5, 6/5]~]

? rnfdisc(nf2,p)
[[416134375, 202396875, 60056800; 0, 3125, 2700; 0, 0, 25], [-1275, 5, 5]~]
? rnfequation(nf2,p)
x^15 - 15*x^11 + 75*x^7 - x^5 - 125*x^3 + 5*x + 1
? rnfequation(nf2,p,1)
[x^15 - 15*x^11 + 75*x^7 - x^5 - 125*x^3 + 5*x + 1, Mod(-x^5 + 5*x, x^15 - 1
5*x^11 + 75*x^7 - x^5 - 125*x^3 + 5*x + 1), 0]
? rnfhnfbasis(bnf2,aa)

[1 0 0 [-6/5, -4/5, 2/5]~   [3/25, -8/25, 24/25]~]

[0 1 0  [6/5, 4/5, -2/5]~   [-9/25, -1/25, 3/25]~]

[0 0 1  [3/5, 2/5, -1/5]~ [-8/25, 13/25, -39/25]~]

[0 0 0  [3/5, 2/5, -1/5]~   [4/25, 6/25, -18/25]~]

[0 0 0                  0   [-2/25, -3/25, 9/25]~]

? rnfisfree(bnf2,aa)
1
? rnfsteinitz(nf2,aa)
[[1, 0, 0, [-26/25, 11/25, -8/25]~, [29/125, -2/25, 8/125]~; 0, 1, 0, [53/25
, -8/25, -1/25]~, [-53/125, 7/125, 1/125]~; 0, 0, 1, [-14/25, -21/25, 13/25]
~, [9/125, 19/125, -13/125]~; 0, 0, 0, [7/25, -2/25, 6/25]~, [-9/125, 2/125,
 -6/125]~; 0, 0, 0, [9/25, 1/25, -3/25]~, [-8/125, -1/125, 3/125]~], [1, 1, 
1, 1, [125, 0, 22; 0, 125, 108; 0, 0, 1]], [416134375, 202396875, 60056800; 
0, 3125, 2700; 0, 0, 25], [-1275, 5, 5]~]
? setrand(1);quadclassunit(1-10^7,,[1,1])
[2416, [1208, 2], [Qfb(277, 55, 9028), Qfb(1700, 1249, 1700)], 1]
? setrand(1);quadclassunit(10^9-3,,[0.5,0.5])
[4, [4], [Qfb(211, 31405, -16263, 0.E-38)], 2800.625251907016076486370621737
0745514]
? if(getheap()!=HEAP,getheap())
? print("Total time spent: ",gettime);
Total time spent: 72
