// Magma code for working with number field 35.35.10607266494966666158512469468409065269845427817856998775062284008873509080731241.1 // (Note that not all these functions may be available, and some may take a long time to execute.) // Define the number field: R := PolynomialRing(Rationals()); K := NumberField(R![-27756643, 172726939, 146105313, -2696920777, 3432884529, 11871839347, -32473918206, -451900172, 86642725878, -87564669300, -60624002242, 165504701751, -62920019542, -96083394992, 100720726682, 736744022, -47903559470, 19862461891, 8653560326, -8565464505, 444168124, 1664362308, -471756827, -154446290, 89830596, 2494886, -8797227, 885684, 492148, -93149, -15350, 4336, 231, -102, -1, 1]); // Defining polynomial: DefiningPolynomial(K); // Degree over Q: Degree(K); // Signature: Signature(K); // Discriminant: Discriminant(Integers(K)); // Ramified primes: PrimeDivisors(Discriminant(Integers(K))); // Integral basis: IntegralBasis(K); // Class group: ClassGroup(K); // Unit group: UK, f := UnitGroup(K); // Unit rank: UnitRank(K); // Generator for roots of unity: K!f(TU.1) where TU,f is TorsionUnitGroup(K); // Fundamental units: [K!f(g): g in Generators(UK)]; // Regulator: Regulator(K); // Galois group: GaloisGroup(K); // Frobenius cycle types: p := 7; // to obtain a list of $[e_i,f_i]$ for the factorization of the ideal $p\mathcal{O}_K$: idealfactors := Factorization(p*Integers(K)); // get the data [ : primefactor in idealfactors];