Class groups of finite flat algebras¶
Class groups of finite flat algebras
- dual_pairs.class_group.class_group(A, S)¶
Return the S-class group of A.
This is a version for étale algebras of the method
NumberField.S_class_group().EXAMPLES:
sage: from dual_pairs import FiniteFlatAlgebra sage: from dual_pairs.class_group import class_group sage: from dual_pairs.etale_algebra import ideal_generator sage: R.<x> = QQ[] sage: A = FiniteFlatAlgebra(QQ, [x, x^2 + 23]) sage: S = [5] sage: Cl, gens, from_Cl, to_Cl = class_group(A, S) sage: c = Cl.random_element(); c # random f^2 sage: I = from_Cl(c); I # random (Fractional ideal (1), Fractional ideal (4, 1/2*a + 3/2)) sage: to_Cl(I) == c True sage: ideal_generator(A, S, I^-3) # random (1, -3/128*a1 - 7/128)