Skip to content

Commit 1deca17

Browse files
committed
chore: Rename QuotientMap to IsQuotientMap (#18062)
`Function.Embedding` is a type while `Embedding` is a proposition, and there are many other kinds of embeddings than topological embeddings. Hence this PR is a step towards 1. renaming `Embedding` to `IsEmbedding` and similarly for neighboring declarations (which `QuotientMap` is) 2. namespacing it inside `Topology`
1 parent b9ed435 commit 1deca17

35 files changed

+291
-162
lines changed

Mathlib/Analysis/Complex/ReImTopology.lean

Lines changed: 11 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -18,7 +18,7 @@ Each statement about `Complex.re` listed below has a counterpart about `Complex.
1818
1919
* `Complex.isHomeomorphicTrivialFiberBundle_re`: `Complex.re` turns `ℂ` into a trivial
2020
topological fiber bundle over `ℝ`;
21-
* `Complex.isOpenMap_re`, `Complex.quotientMap_re`: in particular, `Complex.re` is an open map
21+
* `Complex.isOpenMap_re`, `Complex.isQuotientMap_re`: in particular, `Complex.re` is an open map
2222
and is a quotient map;
2323
* `Complex.interior_preimage_re`, `Complex.closure_preimage_re`, `Complex.frontier_preimage_re`:
2424
formulas for `interior (Complex.re ⁻¹' s)` etc;
@@ -52,11 +52,17 @@ theorem isOpenMap_re : IsOpenMap re :=
5252
theorem isOpenMap_im : IsOpenMap im :=
5353
isHomeomorphicTrivialFiberBundle_im.isOpenMap_proj
5454

55-
theorem quotientMap_re : QuotientMap re :=
56-
isHomeomorphicTrivialFiberBundle_re.quotientMap_proj
55+
theorem isQuotientMap_re : IsQuotientMap re :=
56+
isHomeomorphicTrivialFiberBundle_re.isQuotientMap_proj
5757

58-
theorem quotientMap_im : QuotientMap im :=
59-
isHomeomorphicTrivialFiberBundle_im.quotientMap_proj
58+
@[deprecated (since := "2024-10-22")]
59+
alias quotientMap_re := isQuotientMap_re
60+
61+
theorem isQuotientMap_im : IsQuotientMap im :=
62+
isHomeomorphicTrivialFiberBundle_im.isQuotientMap_proj
63+
64+
@[deprecated (since := "2024-10-22")]
65+
alias quotientMap_im := isQuotientMap_im
6066

6167
theorem interior_preimage_re (s : Set ℝ) : interior (re ⁻¹' s) = re ⁻¹' interior s :=
6268
(isOpenMap_re.preimage_interior_eq_interior_preimage continuous_re _).symm

Mathlib/Analysis/Normed/Operator/Banach.lean

Lines changed: 5 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -249,8 +249,11 @@ protected theorem isOpenMap (surj : Surjective f) : IsOpenMap f := by
249249

250250
exact Set.mem_image_of_mem _ (hε this)
251251

252-
protected theorem quotientMap (surj : Surjective f) : QuotientMap f :=
253-
(f.isOpenMap surj).to_quotientMap f.continuous surj
252+
theorem isQuotientMap (surj : Surjective f) : IsQuotientMap f :=
253+
(f.isOpenMap surj).isQuotientMap f.continuous surj
254+
255+
@[deprecated (since := "2024-10-22")]
256+
alias quotientMap := isQuotientMap
254257

255258
end
256259

Mathlib/Condensed/TopComparison.lean

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -31,7 +31,7 @@ variable {C : Type u} [Category.{v} C] (G : C ⥤ TopCat.{w})
3131
(X : Type w') [TopologicalSpace X]
3232

3333
/--
34-
An auxiliary lemma to that allows us to use `QuotientMap.lift` in the proof of
34+
An auxiliary lemma to that allows us to use `IsQuotientMap.lift` in the proof of
3535
`equalizerCondition_yonedaPresheaf`.
3636
-/
3737
theorem factorsThrough_of_pullbackCondition {Z B : C} {π : Z ⟶ B} [HasPullback π π]
@@ -61,7 +61,7 @@ condition which is required to be a sheaf for the regular topology.
6161
-/
6262
theorem equalizerCondition_yonedaPresheaf
6363
[∀ (Z B : C) (π : Z ⟶ B) [EffectiveEpi π], PreservesLimit (cospan π π) G]
64-
(hq : ∀ (Z B : C) (π : Z ⟶ B) [EffectiveEpi π], QuotientMap (G.map π)) :
64+
(hq : ∀ (Z B : C) (π : Z ⟶ B) [EffectiveEpi π], IsQuotientMap (G.map π)) :
6565
EqualizerCondition (yonedaPresheaf G X) := by
6666
apply EqualizerCondition.mk
6767
intro Z B π _ _
@@ -113,7 +113,7 @@ def TopCat.toSheafCompHausLike :
113113
apply (config := { allowSynthFailures := true }) equalizerCondition_yonedaPresheaf
114114
(CompHausLike.compHausLikeToTop.{u} P) X
115115
intro Z B π he
116-
apply QuotientMap.of_surjective_continuous (hs _ he) π.continuous
116+
apply IsQuotientMap.of_surjective_continuous (hs _ he) π.continuous
117117

118118
/--
119119
`TopCat.toSheafCompHausLike` yields a functor from `TopCat.{max u w}` to

Mathlib/GroupTheory/QuotientGroup/Basic.lean

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -432,7 +432,7 @@ the equalities, since the type of `(A'.addSubgroupOf A : AddSubgroup A)` depends
432432
def equivQuotientSubgroupOfOfEq {A' A B' B : Subgroup G} [hAN : (A'.subgroupOf A).Normal]
433433
[hBN : (B'.subgroupOf B).Normal] (h' : A' = B') (h : A = B) :
434434
A ⧸ A'.subgroupOf A ≃* B ⧸ B'.subgroupOf B :=
435-
MonoidHom.toMulEquiv (quotientMapSubgroupOfOfLe h'.le h.le) (quotientMapSubgroupOfOfLe h'.ge h.ge)
435+
(quotientMapSubgroupOfOfLe h'.le h.le).toMulEquiv (quotientMapSubgroupOfOfLe h'.ge h.ge)
436436
(by ext ⟨x, hx⟩; rfl)
437437
(by ext ⟨x, hx⟩; rfl)
438438

Mathlib/RingTheory/Jacobson.lean

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -285,8 +285,8 @@ theorem isIntegral_isLocalization_polynomial_quotient
285285
[IsLocalization.Away (pX.map (Quotient.mk (P.comap (C : R →+* R[X])))).leadingCoeff Rₘ]
286286
[Algebra (R[X] ⧸ P) Sₘ] [IsLocalization ((Submonoid.powers (pX.map (Quotient.mk (P.comap
287287
(C : R →+* R[X])))).leadingCoeff).map (quotientMap P C le_rfl) : Submonoid (R[X] ⧸ P)) Sₘ] :
288-
(IsLocalization.map Sₘ (quotientMap P C le_rfl) (Submonoid.powers (pX.map (Quotient.mk (P.comap
289-
(C : R →+* R[X])))).leadingCoeff).le_comap_map : Rₘ →+* Sₘ).IsIntegral := by
288+
(IsLocalization.map Sₘ (quotientMap P C le_rfl) (Submonoid.powers (pX.map (Quotient.mk
289+
(P.comap (C : R →+* R[X])))).leadingCoeff).le_comap_map : Rₘ →+* Sₘ).IsIntegral := by
290290
let P' : Ideal R := P.comap C
291291
let M : Submonoid (R ⧸ P') :=
292292
Submonoid.powers (pX.map (Quotient.mk (P.comap (C : R →+* R[X])))).leadingCoeff

Mathlib/Topology/Algebra/Constructions/DomMulAct.lean

Lines changed: 9 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -52,7 +52,10 @@ theorem coe_mkHomeomorph_symm : ⇑(mkHomeomorph : M ≃ₜ Mᵈᵐᵃ).symm = m
5252
@[to_additive] theorem isOpenEmbedding_mk : IsOpenEmbedding (@mk M) := mkHomeomorph.isOpenEmbedding
5353
@[to_additive] theorem isClosedEmbedding_mk : IsClosedEmbedding (@mk M) :=
5454
mkHomeomorph.isClosedEmbedding
55-
@[to_additive] theorem quotientMap_mk : QuotientMap (@mk M) := mkHomeomorph.quotientMap
55+
@[to_additive] theorem isQuotientMap_mk : IsQuotientMap (@mk M) := mkHomeomorph.isQuotientMap
56+
57+
@[deprecated (since := "2024-10-22")]
58+
alias quotientMap_mk := isQuotientMap_mk
5659

5760
@[deprecated (since := "2024-10-20")]
5861
alias closedEmbedding_mk := isClosedEmbedding_mk
@@ -77,7 +80,10 @@ theorem isClosedEmbedding_mk_symm : IsClosedEmbedding (@mk M).symm :=
7780
alias closedEmbedding_mk_symm := isClosedEmbedding_mk_symm
7881

7982
@[to_additive]
80-
theorem quotientMap_mk_symm : QuotientMap (@mk M).symm := mkHomeomorph.symm.quotientMap
83+
theorem isQuotientMap_mk_symm : IsQuotientMap (@mk M).symm := mkHomeomorph.symm.isQuotientMap
84+
85+
@[deprecated (since := "2024-10-22")]
86+
alias quotientMap_mk_symm := isQuotientMap_mk_symm
8187

8288
@[to_additive] instance instT0Space [T0Space M] : T0Space Mᵈᵐᵃ := embedding_mk_symm.t0Space
8389
@[to_additive] instance instT1Space [T1Space M] : T1Space Mᵈᵐᵃ := embedding_mk_symm.t1Space
@@ -106,7 +112,7 @@ instance instDiscreteTopology [DiscreteTopology M] : DiscreteTopology Mᵈᵐᵃ
106112

107113
@[to_additive]
108114
instance instSeparableSpace [SeparableSpace M] : SeparableSpace Mᵈᵐᵃ :=
109-
quotientMap_mk.separableSpace
115+
isQuotientMap_mk.separableSpace
110116

111117
@[to_additive]
112118
instance instFirstCountableTopology [FirstCountableTopology M] : FirstCountableTopology Mᵈᵐᵃ :=

Mathlib/Topology/Algebra/Group/Basic.lean

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1047,7 +1047,8 @@ theorem MulAction.isClosedMap_quotient [CompactSpace α] :
10471047
letI := orbitRel α β
10481048
IsClosedMap (Quotient.mk' : β → Quotient (orbitRel α β)) := by
10491049
intro t ht
1050-
rw [← quotientMap_quotient_mk'.isClosed_preimage, MulAction.quotient_preimage_image_eq_union_mul]
1050+
rw [← isQuotientMap_quotient_mk'.isClosed_preimage,
1051+
MulAction.quotient_preimage_image_eq_union_mul]
10511052
convert ht.smul_left_of_isCompact (isCompact_univ (X := α))
10521053
rw [← biUnion_univ, ← iUnion_smul_left_image]
10531054
rfl

Mathlib/Topology/Algebra/Group/Quotient.lean

Lines changed: 7 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -30,8 +30,11 @@ instance [CompactSpace G] (N : Subgroup G) : CompactSpace (G ⧸ N) :=
3030
Quotient.compactSpace
3131

3232
@[to_additive]
33-
theorem quotientMap_mk (N : Subgroup G) : QuotientMap (mk : G → G ⧸ N) :=
34-
quotientMap_quot_mk
33+
theorem isQuotientMap_mk (N : Subgroup G) : IsQuotientMap (mk : G → G ⧸ N) :=
34+
isQuotientMap_quot_mk
35+
36+
@[deprecated (since := "2024-10-22")]
37+
alias quotientMap_mk := isQuotientMap_mk
3538

3639
@[to_additive]
3740
theorem continuous_mk {N : Subgroup G} : Continuous (mk : G → G ⧸ N) :=
@@ -121,13 +124,13 @@ theorem _root_.topologicalGroup_quotient [N.Normal] : TopologicalGroup (G ⧸ N)
121124
theorem isClosedMap_coe {H : Subgroup G} (hH : IsCompact (H : Set G)) :
122125
IsClosedMap ((↑) : G → G ⧸ H) := by
123126
intro t ht
124-
rw [← (quotientMap_mk H).isClosed_preimage, preimage_image_mk_eq_mul]
127+
rw [← (isQuotientMap_mk H).isClosed_preimage, preimage_image_mk_eq_mul]
125128
exact ht.mul_right_of_isCompact hH
126129

127130
@[to_additive]
128131
instance instT3Space [N.Normal] [hN : IsClosed (N : Set G)] : T3Space (G ⧸ N) := by
129132
rw [← QuotientGroup.ker_mk' N] at hN
130-
haveI := TopologicalGroup.t1Space (G ⧸ N) ((quotientMap_mk N).isClosed_preimage.mp hN)
133+
haveI := TopologicalGroup.t1Space (G ⧸ N) ((isQuotientMap_mk N).isClosed_preimage.mp hN)
131134
infer_instance
132135

133136
end QuotientGroup

Mathlib/Topology/Algebra/ProperAction/Basic.lean

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -113,7 +113,7 @@ theorem t2Space_quotient_mulAction_of_properSMul [ProperSMul G X] :
113113
let π : X → Quotient R := Quotient.mk'
114114
have : IsOpenQuotientMap (Prod.map π π) :=
115115
MulAction.isOpenQuotientMap_quotientMk.prodMap MulAction.isOpenQuotientMap_quotientMk
116-
rw [← this.quotientMap.isClosed_preimage]
116+
rw [← this.isQuotientMap.isClosed_preimage]
117117
convert ProperSMul.isProperMap_smul_pair.isClosedMap.isClosed_range
118118
· ext ⟨x₁, x₂⟩
119119
simp only [mem_preimage, map_apply, mem_diagonal_iff, mem_range, Prod.mk.injEq, Prod.exists,

Mathlib/Topology/Algebra/Ring/Ideal.lean

Lines changed: 6 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -58,12 +58,15 @@ theorem QuotientRing.isOpenMap_coe : IsOpenMap (mk N) :=
5858
theorem QuotientRing.isOpenQuotientMap_mk : IsOpenQuotientMap (mk N) :=
5959
QuotientAddGroup.isOpenQuotientMap_mk
6060

61-
theorem QuotientRing.quotientMap_coe_coe : QuotientMap fun p : R × R => (mk N p.1, mk N p.2) :=
62-
((isOpenQuotientMap_mk N).prodMap (isOpenQuotientMap_mk N)).quotientMap
61+
theorem QuotientRing.isQuotientMap_coe_coe : IsQuotientMap fun p : R × R => (mk N p.1, mk N p.2) :=
62+
((isOpenQuotientMap_mk N).prodMap (isOpenQuotientMap_mk N)).isQuotientMap
63+
64+
@[deprecated (since := "2024-10-22")]
65+
alias QuotientRing.quotientMap_coe_coe := QuotientRing.isQuotientMap_coe_coe
6366

6467
instance topologicalRing_quotient : TopologicalRing (R ⧸ N) where
6568
__ := QuotientAddGroup.instTopologicalAddGroup _
66-
continuous_mul := (QuotientRing.quotientMap_coe_coe N).continuous_iff.2 <|
69+
continuous_mul := (QuotientRing.isQuotientMap_coe_coe N).continuous_iff.2 <|
6770
continuous_quot_mk.comp continuous_mul
6871

6972
end CommRing

0 commit comments

Comments
 (0)