Class group map induced by an extension of domains #
For an injective ring homomorphism f : A →+* B of commutative domains, we construct the group
homomorphism ClassGroup.map f hf : ClassGroup A →* ClassGroup B given by pushing fractional ideals
forward along f. For an injective extension A → B (equivalently Module.IsTorsionFree A B),
ClassGroup.extendedHom A B is the special case of the algebra map.
Main definitions #
ClassGroup.map f hf: the map between class groups induced by an injective ring homomorphism.ClassGroup.mulEquiv g: the isomorphism between class groups induced by a ring isomorphism.ClassGroup.extendedHom A B: the induced map between the class groups.ClassGroup.extendedIdeal A B: the extension of a nonzero integral ideal.
Main results #
ClassGroup.map_mk0: compatibility ofClassGroup.mapwith nonzero integral ideals.ClassGroup.map_id,ClassGroup.map_map: functoriality ofClassGroup.map.ClassGroup.extendedHom_mk: compatibility with representatives as fractional ideals.ClassGroup.extendedHom_mk0: compatibility with representatives as nonzero integral ideals.ClassGroup.extendedHom_comp: compatibility of extension in a towerA → B → C.ClassGroup.extendedHom_eq_one_of_forall_isPrincipal: if the extension of every ideal is principal, thenClassGroup.extendedHom A Bis trivial.
The monoid homomorphism ClassGroup A → ClassGroup B induced by an injective ring
homomorphism f : A →+* B of domains, given by extending fractional ideals along f.
Equations
- ClassGroup.map f hf = QuotientGroup.map (toPrincipalIdeal A (FractionRing A)).range (toPrincipalIdeal B (FractionRing B)).range (Units.map ↑(FractionalIdeal.extendedHom' (FractionRing B) ⋯)) ⋯
Instances For
A ring isomorphism A ≃+* B induces an isomorphism on their class groups.
Equations
- ClassGroup.mulEquiv g = { toFun := ⇑(ClassGroup.map ↑g ⋯), invFun := ⇑(ClassGroup.map ↑g.symm ⋯), left_inv := ⋯, right_inv := ⋯, map_mul' := ⋯ }
Instances For
The monoid homomorphism ClassGroup A → ClassGroup B induced by an
injective extension of domains A → B.
Equations
- ClassGroup.extendedHom A B = ClassGroup.map (algebraMap A B) ⋯
Instances For
The extension of a nonzero integral ideal along an injective extension of domains.
Equations
- ClassGroup.extendedIdeal A B I = ⟨Ideal.map (algebraMap A B) ↑I, ⋯⟩