English
An isomorphism f: G ≃* H induces an order isomorphism mapSubgroup: Subgroup G ≃o Subgroup H by sg ↦ Subgroup.map f sg, with inverse sg ↦ Subgroup.map f.symm sg.
Русский
Изоморфизм f: G ≃* H порождает упорядоченную латыну мапп Subgroup: Subgroup G ≃o Subgroup H, равную sg ↦ Subgroup.map f sg, с об invers sg ↦ Subgroup.map f.symm sg.
LaTeX
$$$\\operatorname{mapSubgroup}(f): \\mathrm{Subgroup}(G) \\cong_{\\mathrm{ord}} \\mathrm{Subgroup}(H)$$$
Lean4
/-- An isomorphism of groups gives an order isomorphism between the lattices of subgroups,
defined by sending subgroups to their forward images.
See also `MulEquiv.comapSubgroup` which maps subgroups to their inverse images.
-/
@[to_additive (attr := simps) /-- An isomorphism of groups gives an order isomorphism between the lattices of subgroups,
defined by sending subgroups to their forward images.
See also `AddEquiv.comapAddSubgroup` which maps subgroups to their inverse images. -/
]
def mapSubgroup {H : Type*} [Group H] (f : G ≃* H) : Subgroup G ≃o Subgroup H
where
toFun := Subgroup.map f
invFun := Subgroup.map f.symm
left_inv sg := by simp [Subgroup.map_map]
right_inv sh := by simp [Subgroup.map_map]
map_rel_iff'
{sg1
sg2} :=
⟨fun h => by simpa [Subgroup.map_map] using Subgroup.map_mono (f := (f.symm : H →* G)) h, Subgroup.map_mono⟩