Skip to content
This repository was archived by the owner on Jul 24, 2024. It is now read-only.

Commit 3424a59

Browse files
committed
chore(category_theory/limits/*): Unify names for limit constructions. (#15810)
List of renames: `limits_from_equalizers_and_products` -> `has_limits_of_has_equalizers_and_products` `colimits_from_coequalizers_and_coproducts` -> `has_colimits_of_has_coequalizers_and_coproducts` `finite_limits_from_equalizers_and_finite_products` -> `has_finite_limits_of_has_equalizers_and_finite_products` `finite_colimits_from_coequalizers_and_finite_coproducts` -> `has_finite_colimits_of_has_coequalizers_and_finite_coproducts` `has_binary_products_of_terminal_and_pullbacks` -> `has_binary_products_of_has_terminal_and_pullbacks` `has_binary_coproducts_of_initial_and_pushouts` -> `has_binary_coproducts_of_has_initial_and_pushouts` `has_equalizers_of_pullbacks_and_binary_products` -> `has_equalizers_of_has_pullbacks_and_binary_products` `has_coequalizers_of_pushouts_and_binary_coproducts` -> `has_coequalizers_of_has_pushouts_and_binary_coproducts` `preserves_equalizers_of_pullbacks_and_binary_products` -> `preserves_equalizers_of_preserves_pullbacks_and_binary_products` `preserves_coequalizers_of_pushouts_and_binary_coproducts` -> `preserves_coequalizers_of_preserves_pushouts_and_binary_coproducts` `has_finite_coproducts_of_has_binary_and_terminal` -> `has_finite_coproducts_of_has_binary_and_initial` Co-authored-by: Andrew Yang <36414270+erdOne@users.noreply.github.com>
1 parent 43894ff commit 3424a59

File tree

9 files changed

+39
-38
lines changed

9 files changed

+39
-38
lines changed

src/algebraic_geometry/locally_ringed_space/has_colimits.lean

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -291,7 +291,7 @@ end⟩
291291

292292
end has_coequalizer
293293

294-
instance : has_colimits LocallyRingedSpace := colimits_from_coequalizers_and_coproducts
294+
instance : has_colimits LocallyRingedSpace := has_colimits_of_has_coequalizers_and_coproducts
295295

296296
noncomputable
297297
instance : preserves_colimits LocallyRingedSpace.forget_to_SheafedSpace :=

src/category_theory/abelian/basic.lean

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -460,11 +460,11 @@ has_pushouts_of_has_binary_coproducts_of_has_coequalizers C
460460

461461
@[priority 100]
462462
instance has_finite_limits : has_finite_limits C :=
463-
limits.finite_limits_from_equalizers_and_finite_products
463+
limits.has_finite_limits_of_has_equalizers_and_finite_products
464464

465465
@[priority 100]
466466
instance has_finite_colimits : has_finite_colimits C :=
467-
limits.finite_colimits_from_coequalizers_and_finite_coproducts
467+
limits.has_finite_colimits_of_has_coequalizers_and_finite_coproducts
468468

469469
end
470470

src/category_theory/abelian/opposite.lean

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -21,8 +21,8 @@ open category_theory.limits
2121
variables (C : Type*) [category C] [abelian C]
2222

2323
local attribute [instance]
24-
finite_limits_from_equalizers_and_finite_products
25-
finite_colimits_from_coequalizers_and_finite_coproducts
24+
has_finite_limits_of_has_equalizers_and_finite_products
25+
has_finite_colimits_of_has_coequalizers_and_finite_coproducts
2626
has_finite_limits_opposite has_finite_colimits_opposite has_finite_products_opposite
2727

2828
instance : abelian Cᵒᵖ :=

src/category_theory/limits/constructions/binary_products.lean

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -90,7 +90,7 @@ variable (C)
9090

9191
/-- Any category with pullbacks and terminal object has binary products. -/
9292
-- This is not an instance, as it is not always how one wants to construct binary products!
93-
lemma has_binary_products_of_terminal_and_pullbacks
93+
lemma has_binary_products_of_has_terminal_and_pullbacks
9494
[has_terminal C] [has_pullbacks C] :
9595
has_binary_products C :=
9696
{ has_limit := λ F, has_limit.mk (limit_cone_of_terminal_and_pullbacks F) }
@@ -187,7 +187,7 @@ variable (C)
187187

188188
/-- Any category with pushouts and initial object has binary coproducts. -/
189189
-- This is not an instance, as it is not always how one wants to construct binary coproducts!
190-
lemma has_binary_coproducts_of_initial_and_pushouts
190+
lemma has_binary_coproducts_of_has_initial_and_pushouts
191191
[has_initial C] [has_pushouts C] :
192192
has_binary_coproducts C :=
193193
{ has_colimit := λ F, has_colimit.mk (colimit_cocone_of_initial_and_pushouts F) }

src/category_theory/limits/constructions/equalizers.lean

Lines changed: 11 additions & 10 deletions
Original file line numberDiff line numberDiff line change
@@ -29,7 +29,7 @@ variables {C : Type u} [category.{v} C]
2929
variables {D : Type u'} [category.{v'} D] (G : C ⥤ D)
3030

3131
-- We hide the "implementation details" inside a namespace
32-
namespace has_equalizers_of_pullbacks_and_binary_products
32+
namespace has_equalizers_of_has_pullbacks_and_binary_products
3333

3434
variables [has_binary_products C] [has_pullbacks C]
3535

@@ -76,12 +76,13 @@ def equalizer_cone_is_limit (F : walking_parallel_pair ⥤ C) : is_limit (equali
7676
{ erw [limit.lift_π, ← J0, pullback_fst_eq_pullback_snd] }
7777
end }
7878

79-
end has_equalizers_of_pullbacks_and_binary_products
79+
end has_equalizers_of_has_pullbacks_and_binary_products
8080

81-
open has_equalizers_of_pullbacks_and_binary_products
81+
open has_equalizers_of_has_pullbacks_and_binary_products
8282
/-- Any category with pullbacks and binary products, has equalizers. -/
8383
-- This is not an instance, as it is not always how one wants to construct equalizers!
84-
lemma has_equalizers_of_pullbacks_and_binary_products [has_binary_products C] [has_pullbacks C] :
84+
lemma has_equalizers_of_has_pullbacks_and_binary_products
85+
[has_binary_products C] [has_pullbacks C] :
8586
has_equalizers C :=
8687
{ has_limit := λ F, has_limit.mk
8788
{ cone := equalizer_cone F,
@@ -90,7 +91,7 @@ lemma has_equalizers_of_pullbacks_and_binary_products [has_binary_products C] [h
9091
local attribute[instance] has_pullback_of_preserves_pullback
9192

9293
/-- A functor that preserves pullbacks and binary products also presrves equalizers. -/
93-
def preserves_equalizers_of_pullbacks_and_binary_products
94+
def preserves_equalizers_of_preserves_pullbacks_and_binary_products
9495
[has_binary_products C] [has_pullbacks C]
9596
[preserves_limits_of_shape (discrete walking_pair) G]
9697
[preserves_limits_of_shape walking_cospan G] :
@@ -128,7 +129,7 @@ def preserves_equalizers_of_pullbacks_and_binary_products
128129

129130

130131
-- We hide the "implementation details" inside a namespace
131-
namespace has_coequalizers_of_pushouts_and_binary_coproducts
132+
namespace has_coequalizers_of_has_pushouts_and_binary_coproducts
132133

133134
variables [has_binary_coproducts C] [has_pushouts C]
134135

@@ -177,12 +178,12 @@ def coequalizer_cocone_is_colimit (F : walking_parallel_pair ⥤ C) :
177178
{ rw [colimit.ι_desc, ← pushout_inl_eq_pushout_inr], exact J1 }
178179
end }
179180

180-
end has_coequalizers_of_pushouts_and_binary_coproducts
181+
end has_coequalizers_of_has_pushouts_and_binary_coproducts
181182

182-
open has_coequalizers_of_pushouts_and_binary_coproducts
183+
open has_coequalizers_of_has_pushouts_and_binary_coproducts
183184
/-- Any category with pullbacks and binary products, has equalizers. -/
184185
-- This is not an instance, as it is not always how one wants to construct equalizers!
185-
lemma has_coequalizers_of_pushouts_and_binary_coproducts
186+
lemma has_coequalizers_of_has_pushouts_and_binary_coproducts
186187
[has_binary_coproducts C] [has_pushouts C] : has_coequalizers C :=
187188
{ has_colimit := λ F, has_colimit.mk
188189
{ cocone := coequalizer_cocone F,
@@ -191,7 +192,7 @@ lemma has_coequalizers_of_pushouts_and_binary_coproducts
191192
local attribute[instance] has_pushout_of_preserves_pushout
192193

193194
/-- A functor that preserves pushouts and binary coproducts also presrves coequalizers. -/
194-
def preserves_coequalizers_of_pushouts_and_binary_coproducts
195+
def preserves_coequalizers_of_preserves_pushouts_and_binary_coproducts
195196
[has_binary_coproducts C] [has_pushouts C]
196197
[preserves_colimits_of_shape (discrete walking_pair) G]
197198
[preserves_colimits_of_shape walking_span G] :

src/category_theory/limits/constructions/finite_products_of_binary_products.lean

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -303,7 +303,7 @@ begin
303303
end }
304304

305305
/-- If `C` has an initial object and binary coproducts, then it has finite coproducts. -/
306-
lemma has_finite_coproducts_of_has_binary_and_terminal : has_finite_coproducts C :=
306+
lemma has_finite_coproducts_of_has_binary_and_initial : has_finite_coproducts C :=
307307
⟨λ J 𝒥, begin
308308
resetI,
309309
apply has_colimits_of_shape_of_equivalence (discrete.equivalence (fintype.equiv_fin J)).symm,

src/category_theory/limits/constructions/limits_of_products_and_equalizers.lean

Lines changed: 15 additions & 15 deletions
Original file line numberDiff line numberDiff line change
@@ -133,7 +133,7 @@ Any category with products and equalizers has all limits.
133133
134134
See <https://stacks.math.columbia.edu/tag/002N>.
135135
-/
136-
lemma limits_from_equalizers_and_products
136+
lemma has_limits_of_has_equalizers_and_products
137137
[has_products.{w} C] [has_equalizers C] : has_limits_of_size.{w w} C :=
138138
{ has_limits_of_shape := λ J 𝒥,
139139
{ has_limit := λ F, by exactI has_limit_of_equalizer_and_product F } }
@@ -143,7 +143,7 @@ Any category with finite products and equalizers has all finite limits.
143143
144144
See <https://stacks.math.columbia.edu/tag/002O>.
145145
-/
146-
lemma finite_limits_from_equalizers_and_finite_products
146+
lemma has_finite_limits_of_has_equalizers_and_finite_products
147147
[has_finite_products C] [has_equalizers C] : has_finite_limits C :=
148148
⟨λ J _ _, { has_limit := λ F, by exactI has_limit_of_equalizer_and_product F }⟩
149149

@@ -219,11 +219,11 @@ preserves_limits_of_size.{w w} G :=
219219

220220
lemma has_finite_limits_of_has_terminal_and_pullbacks [has_terminal C] [has_pullbacks C] :
221221
has_finite_limits C :=
222-
@@finite_limits_from_equalizers_and_finite_products _
222+
@@has_finite_limits_of_has_equalizers_and_finite_products _
223223
(@@has_finite_products_of_has_binary_and_terminal _
224-
(has_binary_products_of_terminal_and_pullbacks C) infer_instance)
225-
(@@has_equalizers_of_pullbacks_and_binary_products _
226-
(has_binary_products_of_terminal_and_pullbacks C) infer_instance)
224+
(has_binary_products_of_has_terminal_and_pullbacks C) infer_instance)
225+
(@@has_equalizers_of_has_pullbacks_and_binary_products _
226+
(has_binary_products_of_has_terminal_and_pullbacks C) infer_instance)
227227

228228
/-- If G preserves terminal objects and pullbacks, it preserves all finite limits. -/
229229
def preserves_finite_limits_of_preserves_terminal_and_pullbacks
@@ -236,7 +236,7 @@ begin
236236
haveI : preserves_limits_of_shape (discrete walking_pair) G :=
237237
preserves_binary_products_of_preserves_terminal_and_pullbacks G,
238238
exact @@preserves_finite_limits_of_preserves_equalizers_and_finite_products _ _ _ _ G
239-
(preserves_equalizers_of_pullbacks_and_binary_products G)
239+
(preserves_equalizers_of_preserves_pullbacks_and_binary_products G)
240240
(preserves_finite_products_of_preserves_binary_and_terminal G),
241241
end
242242

@@ -341,7 +341,7 @@ Any category with coproducts and coequalizers has all colimits.
341341
342342
See <https://stacks.math.columbia.edu/tag/002P>.
343343
-/
344-
lemma colimits_from_coequalizers_and_coproducts
344+
lemma has_colimits_of_has_coequalizers_and_coproducts
345345
[has_coproducts.{w} C] [has_coequalizers C] : has_colimits_of_size.{w w} C :=
346346
{ has_colimits_of_shape := λ J 𝒥,
347347
{ has_colimit := λ F, by exactI has_colimit_of_coequalizer_and_coproduct F } }
@@ -351,7 +351,7 @@ Any category with finite coproducts and coequalizers has all finite colimits.
351351
352352
See <https://stacks.math.columbia.edu/tag/002Q>.
353353
-/
354-
lemma finite_colimits_from_coequalizers_and_finite_coproducts
354+
lemma has_finite_colimits_of_has_coequalizers_and_finite_coproducts
355355
[has_finite_coproducts C] [has_coequalizers C] : has_finite_colimits C :=
356356
⟨λ J _ _, { has_colimit := λ F, by exactI has_colimit_of_coequalizer_and_coproduct F }⟩
357357

@@ -426,11 +426,11 @@ preserves_colimits_of_size.{w} G :=
426426

427427
lemma has_finite_colimits_of_has_initial_and_pushouts [has_initial C] [has_pushouts C] :
428428
has_finite_colimits C :=
429-
@@finite_colimits_from_coequalizers_and_finite_coproducts _
430-
(@@has_finite_coproducts_of_has_binary_and_terminal _
431-
(has_binary_coproducts_of_initial_and_pushouts C) infer_instance)
432-
(@@has_coequalizers_of_pushouts_and_binary_coproducts _
433-
(has_binary_coproducts_of_initial_and_pushouts C) infer_instance)
429+
@@has_finite_colimits_of_has_coequalizers_and_finite_coproducts _
430+
(@@has_finite_coproducts_of_has_binary_and_initial _
431+
(has_binary_coproducts_of_has_initial_and_pushouts C) infer_instance)
432+
(@@has_coequalizers_of_has_pushouts_and_binary_coproducts _
433+
(has_binary_coproducts_of_has_initial_and_pushouts C) infer_instance)
434434

435435
/-- If G preserves initial objects and pushouts, it preserves all finite colimits. -/
436436
def preserves_finite_colimits_of_preserves_initial_and_pushouts
@@ -443,7 +443,7 @@ begin
443443
haveI : preserves_colimits_of_shape (discrete walking_pair) G :=
444444
preserves_binary_coproducts_of_preserves_initial_and_pushouts G,
445445
exact @@preserves_finite_colimits_of_preserves_coequalizers_and_finite_coproducts _ _ _ _ G
446-
(preserves_coequalizers_of_pushouts_and_binary_coproducts G)
446+
(preserves_coequalizers_of_preserves_pushouts_and_binary_coproducts G)
447447
(preserves_finite_coproducts_of_preserves_binary_and_initial G),
448448
end
449449

src/category_theory/limits/constructions/over/default.lean

Lines changed: 4 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -44,19 +44,19 @@ end
4444

4545
instance has_finite_limits {B : C} [has_finite_wide_pullbacks C] : has_finite_limits (over B) :=
4646
begin
47-
apply @finite_limits_from_equalizers_and_finite_products _ _ _ _,
47+
apply @has_finite_limits_of_has_equalizers_and_finite_products _ _ _ _,
4848
{ exact construct_products.over_finite_products_of_finite_wide_pullbacks, },
49-
{ apply @has_equalizers_of_pullbacks_and_binary_products _ _ _ _,
49+
{ apply @has_equalizers_of_has_pullbacks_and_binary_products _ _ _ _,
5050
{ haveI : has_pullbacks C := ⟨by apply_instance⟩,
5151
exact construct_products.over_binary_product_of_pullback },
5252
{ apply_instance, } }
5353
end
5454

5555
instance has_limits {B : C} [has_wide_pullbacks.{w} C] : has_limits_of_size.{w} (over B) :=
5656
begin
57-
apply @limits_from_equalizers_and_products _ _ _ _,
57+
apply @has_limits_of_has_equalizers_and_products _ _ _ _,
5858
{ exact construct_products.over_products_of_wide_pullbacks },
59-
{ apply @has_equalizers_of_pullbacks_and_binary_products _ _ _ _,
59+
{ apply @has_equalizers_of_has_pullbacks_and_binary_products _ _ _ _,
6060
{ haveI : has_pullbacks C := ⟨infer_instance⟩,
6161
exact construct_products.over_binary_product_of_pullback },
6262
{ apply_instance, } }

src/order/category/omega_complete_partial_order.lean

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -131,7 +131,7 @@ has_limit.mk ⟨_, has_equalizers.is_equalizer f g⟩
131131

132132
instance : has_equalizers ωCPO.{v} := has_equalizers_of_has_limit_parallel_pair _
133133

134-
instance : has_limits ωCPO.{v} := limits_from_equalizers_and_products
134+
instance : has_limits ωCPO.{v} := has_limits_of_has_equalizers_and_products
135135

136136
end
137137

0 commit comments

Comments
 (0)