\\ Pari/GP code for working with number field 21.5.3052362005276854563388878363788994862792704.1. \\ Some of these functions may take a long time to execute (this depends on the field). \\ Define the number field: K = bnfinit(y^21 + 24*y^19 - 16*y^18 + 27*y^17 - 36*y^16 - 1662*y^15 + 3348*y^14 + 6192*y^13 - 21968*y^12 + 113589*y^11 - 313734*y^10 - 769213*y^9 + 4433508*y^8 - 9942741*y^7 + 17192778*y^6 - 23957316*y^5 + 23677128*y^4 - 15268592*y^3 + 6066144*y^2 - 1348032*y + 128384, 1) \\ Defining polynomial: K.pol \\ Degree over Q: poldegree(K.pol) \\ Signature: K.sign \\ Discriminant: K.disc \\ Ramified primes: factor(abs(K.disc))[,1]~ \\ Integral basis: K.zk \\ Class group: K.clgp \\ Narrow class group: bnfnarrow(K) \\ Unit rank: K.fu \\ Generator for roots of unity: K.tu[2] \\ Fundamental units: K.fu \\ Regulator: K.reg \\ Analytic class number formula: \\ self-contained Pari/GP code snippet to compute the analytic class number formula K = bnfinit(x^21 + 24*x^19 - 16*x^18 + 27*x^17 - 36*x^16 - 1662*x^15 + 3348*x^14 + 6192*x^13 - 21968*x^12 + 113589*x^11 - 313734*x^10 - 769213*x^9 + 4433508*x^8 - 9942741*x^7 + 17192778*x^6 - 23957316*x^5 + 23677128*x^4 - 15268592*x^3 + 6066144*x^2 - 1348032*x + 128384, 1); [polcoeff (lfunrootres (lfuncreate (K))[1][1][2], -1), 2^K.r1 * (2*Pi)^K.r2 * K.reg * K.no / (K.tu[1] * sqrt (abs (K.disc)))] \\ Intermediate fields: L = nfsubfields(K); L[2..length(L)] \\ Galois group: polgalois(K.pol) \\ Frobenius cycle types: \\ to obtain a list of [e_i,f_i] for the factorization of the ideal pO_K for p=7 in Pari: p = 7; pfac = idealprimedec(K, p); vector(length(pfac), j, [pfac[j][3], pfac[j][4]])