sage: x = polygen(QQ); K.<a> = NumberField(x^4 - x^3 - 7*x^2 - 8*x + 64)
gp: K = bnfinit(y^4 - y^3 - 7*y^2 - 8*y + 64, 1)
magma: R<x> := PolynomialRing(Rationals()); K<a> := NumberField(x^4 - x^3 - 7*x^2 - 8*x + 64);
oscar: Qx, x = polynomial_ring(QQ); K, a = number_field(x^4 - x^3 - 7*x^2 - 8*x + 64)
x 4 − x 3 − 7 x 2 − 8 x + 64 x^{4} - x^{3} - 7x^{2} - 8x + 64 x 4 − x 3 − 7 x 2 − 8 x + 6 4
sage: K.defining_polynomial()
gp: K.pol
magma: DefiningPolynomial(K);
oscar: defining_polynomial(K)
Degree : 4 4 4
sage: K.degree()
gp: poldegree(K.pol)
magma: Degree(K);
oscar: degree(K)
Signature : [ 0 , 2 ] [0, 2] [ 0 , 2 ]
sage: K.signature()
gp: K.sign
magma: Signature(K);
oscar: signature(K)
Discriminant :
8649 8649 8 6 4 9
= 3 2 ⋅ 3 1 2 \medspace = 3^{2}\cdot 31^{2} = 3 2 ⋅ 3 1 2
sage: K.disc()
gp: K.disc
magma: OK := Integers(K); Discriminant(OK);
oscar: OK = ring_of_integers(K); discriminant(OK)
Root discriminant : 9.64 9.64 9 . 6 4
sage: (K.disc().abs())^(1./K.degree())
gp: abs(K.disc)^(1/poldegree(K.pol))
magma: Abs(Discriminant(OK))^(1/Degree(K));
oscar: (1.0 * dK)^(1/degree(K))
Galois root discriminant : 3 1 / 2 3 1 1 / 2 ≈ 9.643650760992955 3^{1/2}31^{1/2}\approx 9.643650760992955 3 1 / 2 3 1 1 / 2 ≈ 9 . 6 4 3 6 5 0 7 6 0 9 9 2 9 5 5
Ramified primes :
3 3 3 , 31 31 3 1
sage: K.disc().support()
gp: factor(abs(K.disc))[,1]~
magma: PrimeDivisors(Discriminant(OK));
oscar: prime_divisors(discriminant((OK)))
Discriminant root field : Q \Q Q
Aut ( K / Q ) \Aut(K/\Q) A u t ( K / Q )
= = =
Gal ( K / Q ) \Gal(K/\Q) G a l ( K / Q ) :
C 2 2 C_2^2 C 2 2
sage: K.automorphisms()
magma: Automorphisms(K);
oscar: automorphisms(K)
This field is Galois and abelian over Q \Q Q .
Conductor : 93 = 3 ⋅ 31 93=3\cdot 31 9 3 = 3 ⋅ 3 1
Dirichlet character group :
{ \lbrace { χ 93 ( 32 , ⋅ ) \chi_{93}(32,·) χ 9 3 ( 3 2 , ⋅ ) , χ 93 ( 1 , ⋅ ) \chi_{93}(1,·) χ 9 3 ( 1 , ⋅ ) , χ 93 ( 92 , ⋅ ) \chi_{93}(92,·) χ 9 3 ( 9 2 , ⋅ ) , χ 93 ( 61 , ⋅ ) \chi_{93}(61,·) χ 9 3 ( 6 1 , ⋅ ) } \rbrace }
This is a CM field .
Reflex fields : Q ( − 3 ) \Q(\sqrt{-3}) Q ( − 3 ) , Q ( − 31 ) \Q(\sqrt{-31}) Q ( − 3 1 )
1 1 1 , a a a , a 2 a^{2} a 2 , 1 56 a 3 + 1 8 a 2 − 1 8 a − 1 7 \frac{1}{56}a^{3}+\frac{1}{8}a^{2}-\frac{1}{8}a-\frac{1}{7} 5 6 1 a 3 + 8 1 a 2 − 8 1 a − 7 1
sage: K.integral_basis()
gp: K.zk
magma: IntegralBasis(K);
oscar: basis(OK)
Ideal class group : C 3 C_{3} C 3 , which has order 3 3 3
sage: K.class_group().invariants()
gp: K.clgp
magma: ClassGroup(K);
oscar: class_group(K)
Narrow class group : C 3 C_{3} C 3 , which has order 3 3 3
sage: K.narrow_class_group().invariants()
gp: bnfnarrow(K)
magma: NarrowClassGroup(K);
Relative class number : 3 3 3
sage: UK = K.unit_group()
magma: UK, fUK := UnitGroup(K);
oscar: UK, fUK = unit_group(OK)
Rank : 1 1 1
sage: UK.rank()
gp: K.fu
magma: UnitRank(K);
oscar: rank(UK)
Torsion generator :
1 56 a 3 + 1 8 a 2 − 1 8 a − 1 7 \frac{1}{56} a^{3} + \frac{1}{8} a^{2} - \frac{1}{8} a - \frac{1}{7} 5 6 1 a 3 + 8 1 a 2 − 8 1 a − 7 1
(order 6 6 6 )
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 unit :
1 56 a 3 + 1 8 a 2 − 9 8 a + 13 7 \frac{1}{56}a^{3}+\frac{1}{8}a^{2}-\frac{9}{8}a+\frac{13}{7} 5 6 1 a 3 + 8 1 a 2 − 8 9 a + 7 1 3
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 : 3.36610464293 3.36610464293 3 . 3 6 6 1 0 4 6 4 2 9 3
sage: K.regulator()
gp: K.reg
magma: Regulator(K);
oscar: regulator(K)
lim s → 1 ( s − 1 ) ζ K ( s ) = ( 2 r 1 ⋅ ( 2 π ) r 2 ⋅ R ⋅ h w ⋅ ∣ D ∣ ≈ ( 2 0 ⋅ ( 2 π ) 2 ⋅ 3.36610464293 ⋅ 3 6 ⋅ 8649 ≈ ( 0.714454219320
\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 \approx\mathstrut &\frac{2^{0}\cdot(2\pi)^{2}\cdot 3.36610464293 \cdot 3}{6\cdot\sqrt{8649}}\cr\approx \mathstrut & 0.714454219320
\end{aligned} s → 1 lim ( s − 1 ) ζ K ( s ) = ( ≈ ( ≈ ( w ⋅ ∣ D ∣ 2 r 1 ⋅ ( 2 π ) r 2 ⋅ R ⋅ h 6 ⋅ 8 6 4 9 2 0 ⋅ ( 2 π ) 2 ⋅ 3 . 3 6 6 1 0 4 6 4 2 9 3 ⋅ 3 0 . 7 1 4 4 5 4 2 1 9 3 2 0
sage: # self-contained SageMath code snippet to compute the analytic class number formula
x = polygen(QQ); K.<a> = NumberField(x^4 - x^3 - 7*x^2 - 8*x + 64)
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^4 - x^3 - 7*x^2 - 8*x + 64, 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^4 - x^3 - 7*x^2 - 8*x + 64);
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 = PolynomialRing(QQ); K, a = NumberField(x^4 - x^3 - 7*x^2 - 8*x + 64);
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))))
C 2 2 C_2^2 C 2 2 (as 4T2 ):
sage: K.galois_group(type='pari')
gp: polgalois(K.pol)
magma: G = GaloisGroup(K);
oscar: G, Gtx = galois_group(K); G, transitive_group_identification(G)
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(b)]
magma: L := Subfields(K); L[2..#L];
oscar: subfields(K)[2:end-1]
U K g a l / Tors ( U K g a l ) ≅ U_{K^{gal}}/\textrm{Tors}(U_{K^{gal}}) \cong U K g a l / Tors ( U K g a l ) ≅ A 1 A_1 A 1
p p p
2 2 2
3 3 3
5 5 5
7 7 7
11 11 1 1
13 13 1 3
17 17 1 7
19 19 1 9
23 23 2 3
29 29 2 9
31 31 3 1
37 37 3 7
41 41 4 1
43 43 4 3
47 47 4 7
53 53 5 3
59 59 5 9
Cycle type
2 2 {\href{/padicField/2.2.0.1}{2} }^{2} 2 2
R
2 2 {\href{/padicField/5.2.0.1}{2} }^{2} 2 2
1 4 {\href{/padicField/7.1.0.1}{1} }^{4} 1 4
2 2 {\href{/padicField/11.2.0.1}{2} }^{2} 2 2
2 2 {\href{/padicField/13.2.0.1}{2} }^{2} 2 2
2 2 {\href{/padicField/17.2.0.1}{2} }^{2} 2 2
1 4 {\href{/padicField/19.1.0.1}{1} }^{4} 1 4
2 2 {\href{/padicField/23.2.0.1}{2} }^{2} 2 2
2 2 {\href{/padicField/29.2.0.1}{2} }^{2} 2 2
R
2 2 {\href{/padicField/37.2.0.1}{2} }^{2} 2 2
2 2 {\href{/padicField/41.2.0.1}{2} }^{2} 2 2
2 2 {\href{/padicField/43.2.0.1}{2} }^{2} 2 2
2 2 {\href{/padicField/47.2.0.1}{2} }^{2} 2 2
2 2 {\href{/padicField/53.2.0.1}{2} }^{2} 2 2
2 2 {\href{/padicField/59.2.0.1}{2} }^{2} 2 2
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]
Data is given for all irreducible
representations of the Galois group for the Galois closure
of this field. Those marked with * are summands in the
permutation representation coming from this field. Representations
which appear with multiplicity greater than one are indicated
by exponents on the *.
(0) (0) (2) (3) (5) (7) (11) (13) (17) (19) (23) (29) (31) (37) (41) (43) (47) (53) (59)