Skip to content

Commit 60c8caa

Browse files
committed
review
1 parent d9d55cb commit 60c8caa

File tree

1 file changed

+18
-12
lines changed

1 file changed

+18
-12
lines changed

Mathlib/GroupTheory/QuotientGroup/Defs.lean

Lines changed: 18 additions & 12 deletions
Original file line numberDiff line numberDiff line change
@@ -60,7 +60,7 @@ as a congruence relation.
6060
@[to_additive
6161
"The additive congruence relation defined by the kernel of an additive group homomorphism is
6262
equal to its kernel as an additive congruence relation."]
63-
theorem con_ker_eq_Con_ker {M : Type*} [Monoid M] (f : G →* M) :
63+
theorem con_ker_eq_conKer {M : Type*} [Monoid M] (f : G →* M) :
6464
QuotientGroup.con f.ker = Con.ker f := by
6565
ext
6666
rw [QuotientGroup.con, Con.rel_mk, Setoid.comm', leftRel_apply, Con.ker_rel, MonoidHom.eq_iff]
@@ -169,31 +169,32 @@ The subgroup defined by the class of `1` for a congruence relation on a group.
169169
"The `AddSubgroup` defined by the class of `0` for an additive congruence relation
170170
on an `AddGroup`."]
171171
protected def _root_.Con.subgroup (c : Con G) : Subgroup G where
172-
carrier := { x | c 1 x }
172+
carrier := { x | c x 1 }
173173
one_mem' := c.refl 1
174174
mul_mem' hx hy := by simpa using c.mul hx hy
175175
inv_mem' h := by simpa using c.inv h
176176

177177
@[to_additive (attr := simp)]
178-
theorem _root_.Con.subgroup_mem_iff {c : Con G} {x : G} :
179-
x ∈ c.subgroup ↔ c 1 x := Iff.rfl
178+
theorem _root_.Con.mem_subgroup_iff {c : Con G} {x : G} :
179+
x ∈ c.subgroup ↔ c x 1 := Iff.rfl
180180

181181
@[to_additive]
182182
instance (c : Con G) : c.subgroup.Normal :=
183183
fun x hx g ↦ by simpa using (c.mul (c.mul (c.refl g) hx) (c.refl g⁻¹))⟩
184184

185185
@[to_additive]
186-
theorem _root_.Con.subgroup_QuotientGroup_con (H : Subgroup G) [H.Normal] :
186+
theorem _root_.Con.subgroup_quotientGroupCon (H : Subgroup G) [H.Normal] :
187187
(QuotientGroup.con H).subgroup = H := by
188188
ext
189189
simp [QuotientGroup.con, leftRel_apply]
190190

191-
@[to_additive]
191+
@[to_additive (attr := simp)]
192192
theorem con_subgroup (c : Con G) :
193193
QuotientGroup.con c.subgroup = c := by
194194
ext x y
195-
rw [QuotientGroup.con, Con.rel_mk, leftRel_apply, Con.subgroup_mem_iff]
196-
exact ⟨fun h ↦ by simpa using c.mul (c.refl x) h, fun h ↦ by simpa using c.mul (c.refl x⁻¹) h⟩
195+
rw [QuotientGroup.con, Con.rel_mk, leftRel_apply, Con.mem_subgroup_iff]
196+
exact ⟨fun h ↦ by simpa using c.mul (c.refl x) (c.symm h),
197+
fun h ↦ by simpa using c.mul (c.refl x⁻¹) (c.symm h)⟩
197198

198199
/--
199200
The normal subgroups correspond to the congruence relations on a group.
@@ -204,7 +205,7 @@ def _root_.Subgroup.orderIsoCon :
204205
{ N : Subgroup G // N.Normal } ≃o Con G where
205206
toFun := fun ⟨N, _⟩ ↦ QuotientGroup.con N
206207
invFun c := ⟨c.subgroup, inferInstance⟩
207-
left_inv := fun ⟨N, _⟩ ↦ Subtype.mk_eq_mk.mpr (Con.subgroup_QuotientGroup_con N)
208+
left_inv := fun ⟨N, _⟩ ↦ Subtype.mk_eq_mk.mpr (Con.subgroup_quotientGroupCon N)
208209
right_inv c := QuotientGroup.con_subgroup c
209210
map_rel_iff' := by
210211
simp only [QuotientGroup.con, Equiv.coe_fn_mk, Con.le_def, Con.rel_mk, leftRel_apply]
@@ -214,15 +215,20 @@ def _root_.Subgroup.orderIsoCon :
214215

215216
@[to_additive]
216217
lemma con_le_iff {N M : Subgroup G} [N.Normal] [M.Normal] :
217-
N ≤ M ↔ QuotientGroup.con N ≤ QuotientGroup.con M :=
218-
(Subgroup.orderIsoCon.map_rel_iff (a := ⟨N, inferInstance⟩) (b := ⟨M, inferInstance⟩)).symm
218+
QuotientGroup.con N ≤ QuotientGroup.con M ↔ N ≤ M :=
219+
(Subgroup.orderIsoCon.map_rel_iff (a := ⟨N, inferInstance⟩) (b := ⟨M, inferInstance⟩))
220+
221+
@[to_additive]
222+
lemma con_mono {N M : Subgroup G} [hN : N.Normal] [hM : M.Normal] (h : N ≤ M) :
223+
QuotientGroup.con N ≤ QuotientGroup.con M :=
224+
con_le_iff.mpr h
219225

220226
/-- A group homomorphism `φ : G →* M` with `N ⊆ ker(φ)` descends (i.e. `lift`s) to a
221227
group homomorphism `G/N →* M`. -/
222228
@[to_additive "An `AddGroup` homomorphism `φ : G →+ M` with `N ⊆ ker(φ)` descends (i.e. `lift`s)
223229
to a group homomorphism `G/N →* M`."]
224230
def lift (φ : G →* M) (HN : N ≤ φ.ker) : Q →* M :=
225-
(QuotientGroup.con N).lift φ <| con_ker_eq_Con_ker φ ▸ con_le_iff.mp HN
231+
(QuotientGroup.con N).lift φ <| con_ker_eq_conKer φ ▸ con_mono HN
226232

227233
@[to_additive (attr := simp)]
228234
theorem lift_mk {φ : G →* M} (HN : N ≤ φ.ker) (g : G) : lift N φ HN (g : Q) = φ g :=

0 commit comments

Comments
 (0)