sage: x = polygen(QQ); K.<a> = NumberField(x^24 - 4*x^23 - 46*x^22 - 480*x^21 + 5830*x^20 - 25870*x^19 + 206480*x^18 - 191630*x^17 - 4281025*x^16 + 28414975*x^15 - 195744705*x^14 + 208438870*x^13 + 1179057105*x^12 - 6862168300*x^11 + 66919163400*x^10 - 36121402305*x^9 - 363153392130*x^8 + 823833868955*x^7 - 9862870228300*x^6 + 10526861697400*x^5 + 52566236252030*x^4 - 75005259428795*x^3 - 303707165704555*x^2 - 333094778067275*x - 142134894616225)
gp: K = bnfinit(y^24 - 4*y^23 - 46*y^22 - 480*y^21 + 5830*y^20 - 25870*y^19 + 206480*y^18 - 191630*y^17 - 4281025*y^16 + 28414975*y^15 - 195744705*y^14 + 208438870*y^13 + 1179057105*y^12 - 6862168300*y^11 + 66919163400*y^10 - 36121402305*y^9 - 363153392130*y^8 + 823833868955*y^7 - 9862870228300*y^6 + 10526861697400*y^5 + 52566236252030*y^4 - 75005259428795*y^3 - 303707165704555*y^2 - 333094778067275*y - 142134894616225, 1)
magma: R<x> := PolynomialRing(Rationals()); K<a> := NumberField(x^24 - 4*x^23 - 46*x^22 - 480*x^21 + 5830*x^20 - 25870*x^19 + 206480*x^18 - 191630*x^17 - 4281025*x^16 + 28414975*x^15 - 195744705*x^14 + 208438870*x^13 + 1179057105*x^12 - 6862168300*x^11 + 66919163400*x^10 - 36121402305*x^9 - 363153392130*x^8 + 823833868955*x^7 - 9862870228300*x^6 + 10526861697400*x^5 + 52566236252030*x^4 - 75005259428795*x^3 - 303707165704555*x^2 - 333094778067275*x - 142134894616225);
oscar: Qx, x = polynomial_ring(QQ); K, a = number_field(x^24 - 4*x^23 - 46*x^22 - 480*x^21 + 5830*x^20 - 25870*x^19 + 206480*x^18 - 191630*x^17 - 4281025*x^16 + 28414975*x^15 - 195744705*x^14 + 208438870*x^13 + 1179057105*x^12 - 6862168300*x^11 + 66919163400*x^10 - 36121402305*x^9 - 363153392130*x^8 + 823833868955*x^7 - 9862870228300*x^6 + 10526861697400*x^5 + 52566236252030*x^4 - 75005259428795*x^3 - 303707165704555*x^2 - 333094778067275*x - 142134894616225)
\( x^{24} - 4 x^{23} - 46 x^{22} - 480 x^{21} + 5830 x^{20} - 25870 x^{19} + 206480 x^{18} + \cdots - 142134894616225 \)
sage: K.defining_polynomial()
gp: K.pol
magma: DefiningPolynomial(K);
oscar: defining_polynomial(K)
Degree : $24$
sage: K.degree()
gp: poldegree(K.pol)
magma: Degree(K);
oscar: degree(K)
Signature : $(4, 10)$
sage: K.signature()
gp: K.sign
magma: Signature(K);
oscar: signature(K)
Discriminant :
\(6769025210045733840131040987091228089411742985248565673828125\)
\(\medspace = 5^{41}\cdot 29^{22}\)
sage: K.disc()
gp: K.disc
magma: OK := Integers(K); Discriminant(OK);
oscar: OK = ring_of_integers(K); discriminant(OK)
Root discriminant : \(342.46\)
sage: (K.disc().abs())^(1./K.degree())
gp: abs(K.disc)^(1/poldegree(K.pol))
magma: Abs(Discriminant(OK))^(1/Degree(K));
oscar: OK = ring_of_integers(K);
(1.0 * abs(discriminant(OK)))^(1/degree(K))
Galois root discriminant : $5^{39/20}29^{19/20}\approx 565.287791942645$
Ramified primes :
\(5\), \(29\)
sage: K.disc().support()
gp: factor(abs(K.disc))[,1]~
magma: PrimeDivisors(Discriminant(OK));
oscar: prime_divisors(discriminant(OK))
Discriminant root field : \(\Q(\sqrt{5}) \)
$\Aut(K/\Q)$ :
$C_4$
sage: K.automorphisms()
magma: Automorphisms(K);
oscar: automorphism_group(K)
This field is not Galois over $\Q$.
This is not a CM field .
This field has no CM subfields.
$1$, $a$, $a^{2}$, $a^{3}$, $a^{4}$, $a^{5}$, $a^{6}$, $a^{7}$, $a^{8}$, $a^{9}$, $a^{10}$, $a^{11}$, $a^{12}$, $a^{13}$, $a^{14}$, $a^{15}$, $a^{16}$, $a^{17}$, $a^{18}$, $\frac{1}{3}a^{19}-\frac{1}{3}a^{18}+\frac{1}{3}a^{17}-\frac{1}{3}a^{16}-\frac{1}{3}a^{15}-\frac{1}{3}a^{14}+\frac{1}{3}a^{13}-\frac{1}{3}a^{12}-\frac{1}{3}a^{11}-\frac{1}{3}a^{10}-\frac{1}{3}a^{9}-\frac{1}{3}a^{8}-\frac{1}{3}a^{7}+\frac{1}{3}a^{6}-\frac{1}{3}a^{5}+\frac{1}{3}a^{3}-\frac{1}{3}a+\frac{1}{3}$, $\frac{1}{3}a^{20}+\frac{1}{3}a^{16}+\frac{1}{3}a^{15}+\frac{1}{3}a^{12}+\frac{1}{3}a^{11}+\frac{1}{3}a^{10}+\frac{1}{3}a^{9}+\frac{1}{3}a^{8}-\frac{1}{3}a^{5}+\frac{1}{3}a^{4}+\frac{1}{3}a^{3}-\frac{1}{3}a^{2}+\frac{1}{3}$, $\frac{1}{3}a^{21}+\frac{1}{3}a^{17}+\frac{1}{3}a^{16}+\frac{1}{3}a^{13}+\frac{1}{3}a^{12}+\frac{1}{3}a^{11}+\frac{1}{3}a^{10}+\frac{1}{3}a^{9}-\frac{1}{3}a^{6}+\frac{1}{3}a^{5}+\frac{1}{3}a^{4}-\frac{1}{3}a^{3}+\frac{1}{3}a$, $\frac{1}{45}a^{22}+\frac{1}{45}a^{21}-\frac{2}{15}a^{20}+\frac{1}{9}a^{19}+\frac{1}{9}a^{18}-\frac{1}{9}a^{17}+\frac{4}{9}a^{16}-\frac{1}{9}a^{15}+\frac{1}{9}a^{14}-\frac{1}{9}a^{13}-\frac{1}{3}a^{12}+\frac{1}{3}a^{11}-\frac{2}{9}a^{9}-\frac{1}{9}a^{8}-\frac{1}{3}a^{7}+\frac{1}{9}a^{6}-\frac{1}{3}a^{5}-\frac{1}{3}a^{4}-\frac{4}{9}a^{3}-\frac{1}{9}a^{2}+\frac{1}{9}a+\frac{1}{9}$, $\frac{1}{37\cdots 55}a^{23}+\frac{54\cdots 79}{12\cdots 85}a^{22}-\frac{84\cdots 32}{75\cdots 91}a^{21}+\frac{96\cdots 59}{37\cdots 55}a^{20}-\frac{36\cdots 08}{83\cdots 99}a^{19}-\frac{21\cdots 11}{75\cdots 91}a^{18}+\frac{13\cdots 69}{75\cdots 91}a^{17}-\frac{35\cdots 58}{75\cdots 91}a^{16}-\frac{13\cdots 16}{10\cdots 13}a^{15}+\frac{24\cdots 59}{75\cdots 91}a^{14}+\frac{34\cdots 89}{75\cdots 91}a^{13}-\frac{99\cdots 48}{25\cdots 97}a^{12}+\frac{30\cdots 34}{25\cdots 97}a^{11}+\frac{26\cdots 16}{75\cdots 91}a^{10}+\frac{15\cdots 79}{75\cdots 91}a^{9}+\frac{32\cdots 16}{75\cdots 91}a^{8}+\frac{46\cdots 44}{75\cdots 91}a^{7}-\frac{15\cdots 87}{75\cdots 91}a^{6}+\frac{28\cdots 58}{83\cdots 99}a^{5}+\frac{28\cdots 24}{75\cdots 91}a^{4}-\frac{65\cdots 71}{25\cdots 97}a^{3}-\frac{84\cdots 49}{75\cdots 91}a^{2}+\frac{81\cdots 26}{25\cdots 97}a-\frac{51\cdots 96}{10\cdots 13}$
sage: K.integral_basis()
gp: K.zk
magma: IntegralBasis(K);
oscar: basis(OK)
Ideal class group : not computed
sage: K.class_group().invariants()
gp: K.clgp
magma: ClassGroup(K);
oscar: class_group(K)
Narrow class group : not computed
sage: K.narrow_class_group().invariants()
gp: bnfnarrow(K)
magma: NarrowClassGroup(K);
sage: UK = K.unit_group()
magma: UK, fUK := UnitGroup(K);
oscar: UK, fUK = unit_group(OK)
Rank : $13$
sage: UK.rank()
gp: K.fu
magma: UnitRank(K);
oscar: rank(UK)
Torsion generator :
\( -1 \)
(order $2$)
sage: UK.torsion_generator()
gp: K.tu[2]
magma: K!f(TU.1) where TU,f is TorsionUnitGroup(K);
oscar: torsion_units_generator(OK)
Fundamental units : not computed
sage: UK.fundamental_units()
gp: K.fu
magma: [K|fUK(g): g in Generators(UK)];
oscar: [K(fUK(a)) for a in gens(UK)]
Regulator : not computed
sage: K.regulator()
gp: K.reg
magma: Regulator(K);
oscar: regulator(K)
Unit signature rank : not computed
\[
\begin{aligned}\lim_{s\to 1} (s-1)\zeta_K(s) =\mathstrut & \frac{2^{r_1}\cdot (2\pi)^{r_2}\cdot R\cdot h}{w\cdot\sqrt{|D|}}\cr = \mathstrut &\frac{2^{4}\cdot(2\pi)^{10}\cdot R \cdot h}{2\cdot\sqrt{6769025210045733840131040987091228089411742985248565673828125}}\cr\mathstrut & \text{
some values not computed }
\end{aligned}\]
sage: # self-contained SageMath code snippet to compute the analytic class number formula
x = polygen(QQ); K.<a> = NumberField(x^24 - 4*x^23 - 46*x^22 - 480*x^21 + 5830*x^20 - 25870*x^19 + 206480*x^18 - 191630*x^17 - 4281025*x^16 + 28414975*x^15 - 195744705*x^14 + 208438870*x^13 + 1179057105*x^12 - 6862168300*x^11 + 66919163400*x^10 - 36121402305*x^9 - 363153392130*x^8 + 823833868955*x^7 - 9862870228300*x^6 + 10526861697400*x^5 + 52566236252030*x^4 - 75005259428795*x^3 - 303707165704555*x^2 - 333094778067275*x - 142134894616225)
DK = K.disc(); r1,r2 = K.signature(); RK = K.regulator(); RR = RK.parent()
hK = K.class_number(); wK = K.unit_group().torsion_generator().order();
2^r1 * (2*RR(pi))^r2 * RK * hK / (wK * RR(sqrt(abs(DK))))
gp: \\ self-contained Pari/GP code snippet to compute the analytic class number formula
K = bnfinit(x^24 - 4*x^23 - 46*x^22 - 480*x^21 + 5830*x^20 - 25870*x^19 + 206480*x^18 - 191630*x^17 - 4281025*x^16 + 28414975*x^15 - 195744705*x^14 + 208438870*x^13 + 1179057105*x^12 - 6862168300*x^11 + 66919163400*x^10 - 36121402305*x^9 - 363153392130*x^8 + 823833868955*x^7 - 9862870228300*x^6 + 10526861697400*x^5 + 52566236252030*x^4 - 75005259428795*x^3 - 303707165704555*x^2 - 333094778067275*x - 142134894616225, 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)))]
magma: /* self-contained Magma code snippet to compute the analytic class number formula */
Qx<x> := PolynomialRing(Rationals()); K<a> := NumberField(x^24 - 4*x^23 - 46*x^22 - 480*x^21 + 5830*x^20 - 25870*x^19 + 206480*x^18 - 191630*x^17 - 4281025*x^16 + 28414975*x^15 - 195744705*x^14 + 208438870*x^13 + 1179057105*x^12 - 6862168300*x^11 + 66919163400*x^10 - 36121402305*x^9 - 363153392130*x^8 + 823833868955*x^7 - 9862870228300*x^6 + 10526861697400*x^5 + 52566236252030*x^4 - 75005259428795*x^3 - 303707165704555*x^2 - 333094778067275*x - 142134894616225);
OK := Integers(K); DK := Discriminant(OK);
UK, fUK := UnitGroup(OK); clK, fclK := ClassGroup(OK);
r1,r2 := Signature(K); RK := Regulator(K); RR := Parent(RK);
hK := #clK; wK := #TorsionSubgroup(UK);
2^r1 * (2*Pi(RR))^r2 * RK * hK / (wK * Sqrt(RR!Abs(DK)));
oscar: # self-contained Oscar code snippet to compute the analytic class number formula
Qx, x = polynomial_ring(QQ); K, a = number_field(x^24 - 4*x^23 - 46*x^22 - 480*x^21 + 5830*x^20 - 25870*x^19 + 206480*x^18 - 191630*x^17 - 4281025*x^16 + 28414975*x^15 - 195744705*x^14 + 208438870*x^13 + 1179057105*x^12 - 6862168300*x^11 + 66919163400*x^10 - 36121402305*x^9 - 363153392130*x^8 + 823833868955*x^7 - 9862870228300*x^6 + 10526861697400*x^5 + 52566236252030*x^4 - 75005259428795*x^3 - 303707165704555*x^2 - 333094778067275*x - 142134894616225);
OK = ring_of_integers(K); DK = discriminant(OK);
UK, fUK = unit_group(OK); clK, fclK = class_group(OK);
r1,r2 = signature(K); RK = regulator(K); RR = parent(RK);
hK = order(clK); wK = torsion_units_order(K);
2^r1 * (2*pi)^r2 * RK * hK / (wK * sqrt(RR(abs(DK))))
$\GL(2,5)$ (as 24T1353 ):
sage: K.galois_group()
gp: polgalois(K.pol)
magma: GaloisGroup(K);
oscar: G, Gtx = galois_group(K);
degree(K) > 1 ? (G, transitive_group_identification(G)) : (G, nothing)
Fields in the database are given up to isomorphism. Isomorphic
intermediate fields are shown with their multiplicities.
sage: K.subfields()[1:-1]
gp: L = nfsubfields(K); L[2..length(L)]
magma: L := Subfields(K); L[2..#L];
oscar: subfields(K)[2:end-1]
$p$
$2$
$3$
$5$
$7$
$11$
$13$
$17$
$19$
$23$
$29$
$31$
$37$
$41$
$43$
$47$
$53$
$59$
Cycle type
${\href{/padicField/2.8.0.1}{8} }^{3}$
${\href{/padicField/3.4.0.1}{4} }^{5}{,}\,{\href{/padicField/3.2.0.1}{2} }^{2}$
R
${\href{/padicField/7.4.0.1}{4} }^{5}{,}\,{\href{/padicField/7.2.0.1}{2} }^{2}$
${\href{/padicField/11.12.0.1}{12} }^{2}$
${\href{/padicField/13.4.0.1}{4} }^{5}{,}\,{\href{/padicField/13.2.0.1}{2} }^{2}$
$24$
${\href{/padicField/19.3.0.1}{3} }^{8}$
$24$
R
${\href{/padicField/31.12.0.1}{12} }^{2}$
${\href{/padicField/37.4.0.1}{4} }^{5}{,}\,{\href{/padicField/37.2.0.1}{2} }^{2}$
$20{,}\,{\href{/padicField/41.4.0.1}{4} }$
${\href{/padicField/43.8.0.1}{8} }^{3}$
$24$
$24$
${\href{/padicField/59.2.0.1}{2} }^{10}{,}\,{\href{/padicField/59.1.0.1}{1} }^{4}$
In the table, R denotes a ramified prime.
Cycle lengths which are repeated in a cycle type are indicated by
exponents.
sage: # to obtain a list of [e_i,f_i] for the factorization of the ideal pO_K for p=7 in Sage:
p = 7; [(e, pr.norm().valuation(p)) for pr,e in K.factor(p)]
gp: \\ 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]])
magma: // to obtain a list of [e_i,f_i] for the factorization of the ideal pO_K for p=7 in Magma:
p := 7; [<pr[2], Valuation(Norm(pr[1]), p)> : pr in Factorization(p*Integers(K))];
oscar: # to obtain a list of [e_i,f_i] for the factorization of the ideal pO_K for p=7 in Oscar:
p = 7; pfac = factor(ideal(ring_of_integers(K), p)); [(e, valuation(norm(pr),p)) for (pr,e) in pfac]
(0) (0) (2) (3) (5) (7) (11) (13) (17) (19) (23) (29) (31) (37) (41) (43) (47) (53) (59)