\\ Pari/GP code for working with number field 16.0.9558738202625098335096647974912.1

\\ Some of these functions may take a long time to execute (this depends on the field).

\\ Define the number field: 
K = bnfinit(y^16 - 4*y^15 + 125*y^14 - 242*y^13 + 6009*y^12 - 2806*y^11 + 152163*y^10 + 77764*y^9 + 2270754*y^8 + 2268820*y^7 + 20419650*y^6 + 23613418*y^5 + 108544365*y^4 + 144136500*y^3 + 338502596*y^2 + 272619382*y + 291449783, 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

\\ 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^16 - 4*x^15 + 125*x^14 - 242*x^13 + 6009*x^12 - 2806*x^11 + 152163*x^10 + 77764*x^9 + 2270754*x^8 + 2268820*x^7 + 20419650*x^6 + 23613418*x^5 + 108544365*x^4 + 144136500*x^3 + 338502596*x^2 + 272619382*x + 291449783, 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(b)]

\\ Galois group: 
polgalois(K.pol)

\\ Frobenius cycle types: 
\\ to obtain a list of $[e_i,f_i]$ for the factorization of the ideal $p\mathcal{O}_K$ for $p=7$ in Pari:
p = 7; pfac = idealprimedec(K, p); vector(length(pfac), j, [pfac[j][3], pfac[j][4]])