sage: x = polygen(QQ); K.<a> = NumberField(x^12 - x^11 + 66*x^10 - 170*x^9 + 1249*x^8 - 3446*x^7 + 12689*x^6 - 57227*x^5 + 67939*x^4 - 83461*x^3 + 539865*x^2 - 552644*x + 152881)
gp: K = bnfinit(y^12 - y^11 + 66*y^10 - 170*y^9 + 1249*y^8 - 3446*y^7 + 12689*y^6 - 57227*y^5 + 67939*y^4 - 83461*y^3 + 539865*y^2 - 552644*y + 152881, 1)
magma: R<x> := PolynomialRing(Rationals()); K<a> := NumberField(x^12 - x^11 + 66*x^10 - 170*x^9 + 1249*x^8 - 3446*x^7 + 12689*x^6 - 57227*x^5 + 67939*x^4 - 83461*x^3 + 539865*x^2 - 552644*x + 152881);
oscar: Qx, x = polynomial_ring(QQ); K, a = number_field(x^12 - x^11 + 66*x^10 - 170*x^9 + 1249*x^8 - 3446*x^7 + 12689*x^6 - 57227*x^5 + 67939*x^4 - 83461*x^3 + 539865*x^2 - 552644*x + 152881)
x12−x11+66x10−170x9+1249x8−3446x7+12689x6−57227x5+⋯+152881
sage: K.defining_polynomial()
magma: DefiningPolynomial(K);
oscar: defining_polynomial(K)
Degree: | | 12 |
|
Signature: | | [0,6] |
|
Discriminant: | |
161428875495388931828125
=56⋅78⋅1311
|
magma: OK := Integers(K); Discriminant(OK);
oscar: OK = ring_of_integers(K); discriminant(OK)
|
Root discriminant: | | 85.90 | 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: | | 51/272/31311/12≈85.90104262646453
|
Ramified primes: | |
5, 7, 13
|
gp: factor(abs(K.disc))[,1]~
magma: PrimeDivisors(Discriminant(OK));
oscar: prime_divisors(discriminant((OK)))
|
Discriminant root field: | | Q(13)
|
Aut(K/Q)
=
Gal(K/Q):
| | C12 |
|
This field is Galois and abelian over Q. |
Conductor: | | 455=5⋅7⋅13 |
Dirichlet character group:
| |
{χ455(256,⋅), χ455(1,⋅), χ455(99,⋅), χ455(214,⋅), χ455(296,⋅), χ455(239,⋅), χ455(16,⋅), χ455(246,⋅), χ455(184,⋅), χ455(186,⋅), χ455(219,⋅), χ455(319,⋅)}
|
This is a CM field. |
Reflex fields: | | 4.0.54925.12, 12.0.161428875495388931828125.130 |
1, a, a2, a3, a4, a5, a6, a7, 21a8−21a7−21a5−21a4−21a3−21a−21, 7821a9−78271a8−234a7+782121a6−465a5+782337a4−39112a3+78289a2+782227a, 7821a10−39147a8+391120a7−39148a6+782167a5+39126a4+2310a3+391145a2+39143a−21, 16⋯861a11−99⋯5844⋯53a10+84⋯9382⋯88a9−84⋯9386⋯50a8+84⋯9320⋯61a7−16⋯8682⋯33a6+16⋯8684⋯87a5+84⋯9342⋯94a4+49⋯2979⋯65a3−84⋯9341⋯76a2−73⋯8234⋯05a−18⋯0221⋯01
C13×C78, which has order 1014
(assuming GRH)
sage: K.class_group().invariants()
Relative class number: 338
(assuming GRH)
sage: UK = K.unit_group()
magma: UK, fUK := UnitGroup(K);
oscar: UK, fUK = unit_group(OK)
Rank: | | 5
|
|
Torsion generator: | |
−1
(order 2)
| sage: UK.torsion_generator()
magma: K!f(TU.1) where TU,f is TorsionUnitGroup(K);
oscar: torsion_units_generator(OK)
|
Fundamental units: | |
65⋯57553359443973002a11−65⋯5732⋯61a10+38⋯2124⋯78a9−38⋯2115⋯16a8+65⋯5713⋯46a7−65⋯5753⋯16a6+65⋯5718⋯08a5−65⋯5764⋯04a4+65⋯5717⋯06a3−65⋯5725⋯78a2+28⋯5970⋯38a−16⋯2759⋯23, 16⋯8673⋯77a11+16⋯8629⋯47a10+16⋯8630⋯73a9+84⋯9393⋯09a8−16⋯8633⋯59a7+49⋯2997⋯90a6−16⋯8674⋯47a5+84⋯9314⋯14a4−16⋯8614⋯45a3+16⋯8610⋯55a2+73⋯8210⋯61a+94⋯0147⋯29, 16⋯8680⋯87a11+16⋯8619⋯21a10+16⋯8654⋯61a9+84⋯9323⋯32a8+16⋯8681⋯47a7+84⋯9316⋯87a6+16⋯8654⋯47a5−49⋯2957⋯04a4−16⋯8664⋯35a3−16⋯8679⋯65a2+73⋯8270⋯75a+94⋯0131⋯17, 99⋯5833⋯67a11+16⋯8634⋯37a10+84⋯9319⋯54a9+84⋯9383⋯41a8+84⋯9317⋯09a7+16⋯8623⋯61a6−16⋯8616⋯43a5+84⋯9329⋯68a4−84⋯9369⋯46a3+49⋯2954⋯89a2+73⋯8246⋯27a+18⋯0218⋯05, 16⋯8611⋯21a11+16⋯8612⋯69a10+84⋯9333⋯63a9+84⋯9317⋯67a8+84⋯9325⋯19a7+16⋯8617⋯61a6−16⋯8621⋯53a5−84⋯9313⋯52a4−84⋯9310⋯38a3−84⋯9322⋯01a2+73⋯8211⋯41a+18⋯0211⋯39
(assuming GRH)
| sage: UK.fundamental_units()
magma: [K|fUK(g): g in Generators(UK)];
oscar: [K(fUK(a)) for a in gens(UK)]
|
Regulator: | | 6176.96689838
(assuming GRH)
|
|
s→1lim(s−1)ζK(s)=(≈(≈(w⋅∣D∣2r1⋅(2π)r2⋅R⋅h2⋅16142887549538893182812520⋅(2π)6⋅6176.96689838⋅10140.479591892500
(assuming GRH)
# self-contained SageMath code snippet to compute the analytic class number formula
x = polygen(QQ); K.<a> = NumberField(x^12 - x^11 + 66*x^10 - 170*x^9 + 1249*x^8 - 3446*x^7 + 12689*x^6 - 57227*x^5 + 67939*x^4 - 83461*x^3 + 539865*x^2 - 552644*x + 152881)
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))))
# self-contained Pari/GP code snippet to compute the analytic class number formula
K = bnfinit(x^12 - x^11 + 66*x^10 - 170*x^9 + 1249*x^8 - 3446*x^7 + 12689*x^6 - 57227*x^5 + 67939*x^4 - 83461*x^3 + 539865*x^2 - 552644*x + 152881, 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)))]
/* self-contained Magma code snippet to compute the analytic class number formula */
Qx<x> := PolynomialRing(Rationals()); K<a> := NumberField(x^12 - x^11 + 66*x^10 - 170*x^9 + 1249*x^8 - 3446*x^7 + 12689*x^6 - 57227*x^5 + 67939*x^4 - 83461*x^3 + 539865*x^2 - 552644*x + 152881);
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)));
# self-contained Oscar code snippet to compute the analytic class number formula
Qx, x = PolynomialRing(QQ); K, a = NumberField(x^12 - x^11 + 66*x^10 - 170*x^9 + 1249*x^8 - 3446*x^7 + 12689*x^6 - 57227*x^5 + 67939*x^4 - 83461*x^3 + 539865*x^2 - 552644*x + 152881);
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))))
C12 (as 12T1):
sage: K.galois_group(type='pari')
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]
p |
2 |
3 |
5 |
7 |
11 |
13 |
17 |
19 |
23 |
29 |
31 |
37 |
41 |
43 |
47 |
53 |
59 |
Cycle type |
43 |
62 |
R |
R |
12 |
R |
112 |
12 |
112 |
34 |
12 |
43 |
12 |
34 |
12 |
62 |
43 |
In the table, R denotes a ramified prime.
Cycle lengths which are repeated in a cycle type are indicated by
exponents.
# to obtain a list of
[ei,fi] for the factorization of the ideal
pOK for
p=7 in Sage:
p = 7; [(e, pr.norm().valuation(p)) for pr,e in K.factor(p)]
\\ to obtain a list of
[ei,fi] for the factorization of the ideal
pOK for
p=7 in Pari:
p = 7; pfac = idealprimedec(K, p); vector(length(pfac), j, [pfac[j][3], pfac[j][4]])
// to obtain a list of
[ei,fi] for the factorization of the ideal
pOK for $p=7 in Magma:
p := 7; [<pr[2], Valuation(Norm(pr[1]), p)> : pr in Factorization(p*Integers(K))];
# to obtain a list of
[ei,fi] for the factorization of the ideal
pOK 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]
p | Label | Polynomial
| e |
f |
c |
Galois group |
Slope content |
5
| 5.6.2.6a1.1 | x12+2x10+8x9+3x8+8x7+22x6+8x5+5x4+16x3+4x2+5x+4 | 2 | 6 | 6 | C12 | [ ]26 |
7
| 7.4.3.8a1.1 | x12+15x10+12x9+84x8+120x7+263x6+372x5+492x4+424x3+286x2+108x+27 | 3 | 4 | 8 | C12 | [ ]34 |
13
| 13.1.12.11a1.12 | x12+156 | 12 | 1 | 11 | C12 | [ ]12 |