@@ -4,7 +4,7 @@ Released under Apache 2.0 license as described in the file LICENSE.
4
4
Authors: Andrew Yang
5
5
6
6
! This file was ported from Lean 3 source module category_theory.limits.preserves.finite
7
- ! leanprover-community/mathlib commit 024a4231815538ac739f52d08dd20a55da0d6b23
7
+ ! leanprover-community/mathlib commit 3974a774a707e2e06046a14c0eaef4654584fada
8
8
! Please do not edit these lines, except to modify the commit id
9
9
! if you have ported upstream changes.
10
10
-/
@@ -60,19 +60,22 @@ noncomputable instance (priority := 100) preservesLimitsOfShapeOfPreservesFinite
60
60
apply preservesLimitsOfShapeOfEquiv (FinCategory.equivAsType J)
61
61
#align category_theory.limits.preserves_limits_of_shape_of_preserves_finite_limits CategoryTheory.Limits.preservesLimitsOfShapeOfPreservesFiniteLimits
62
62
63
- -- Porting note: this is a dangerous instance as it has unbound universe variables.
63
+ -- This is a dangerous instance as it has unbound universe variables.
64
+ /-- If we preserve limits of some arbitrary size, then we preserve all finite limits. -/
64
65
noncomputable def PreservesLimitsOfSize.preservesFiniteLimits (F : C ⥤ D)
65
66
[PreservesLimitsOfSize.{w, w₂} F] : PreservesFiniteLimits F where
66
67
preservesFiniteLimits J (sJ : SmallCategory J) fJ := by
67
68
haveI := preservesSmallestLimitsOfPreservesLimits F
68
69
exact preservesLimitsOfShapeOfEquiv (FinCategory.equivAsType J) F
69
70
#align category_theory.limits.preserves_limits.preserves_finite_limits_of_size CategoryTheory.Limits.PreservesLimitsOfSize.preservesFiniteLimits
70
71
71
- -- Porting note: added as a specialization of the dangerous instance above.
72
+ -- Added as a specialization of the dangerous instance above, for limits indexed in Type 0 .
72
73
noncomputable instance (priority := 120 ) PreservesLimitsOfSize0.preservesFiniteLimits
73
74
(F : C ⥤ D) [PreservesLimitsOfSize.{0 , 0 } F] : PreservesFiniteLimits F :=
74
75
PreservesLimitsOfSize.preservesFiniteLimits F
76
+ #align preserves_limits_of_size.zero.preserves_finite_limits CategoryTheory.Limits.PreservesLimitsOfSize0.preservesFiniteLimits
75
77
78
+ -- An alternative specialization of the dangerous instance for small limits.
76
79
noncomputable instance (priority := 120 ) PreservesLimits.preservesFiniteLimits (F : C ⥤ D)
77
80
[PreservesLimits F] : PreservesFiniteLimits F :=
78
81
PreservesLimitsOfSize.preservesFiniteLimits F
@@ -128,18 +131,22 @@ noncomputable instance (priority := 100) preservesColimitsOfShapeOfPreservesFini
128
131
apply preservesColimitsOfShapeOfEquiv (FinCategory.equivAsType J)
129
132
#align category_theory.limits.preserves_colimits_of_shape_of_preserves_finite_colimits CategoryTheory.Limits.preservesColimitsOfShapeOfPreservesFiniteColimits
130
133
131
- -- Porting note: this is a dangerous instance as it has unbound universe variables.
134
+ -- This is a dangerous instance as it has unbound universe variables.
135
+ /-- If we preserve colimits of some arbitrary size, then we preserve all finite colimits. -/
132
136
noncomputable def PreservesColimitsOfSize.preservesFiniteColimits (F : C ⥤ D)
133
137
[PreservesColimitsOfSize.{w, w₂} F] : PreservesFiniteColimits F where
134
138
preservesFiniteColimits J (sJ : SmallCategory J) fJ := by
135
139
haveI := preservesSmallestColimitsOfPreservesColimits F
136
140
exact preservesColimitsOfShapeOfEquiv (FinCategory.equivAsType J) F
141
+ #align category_theory.limits.preserves_colimits_of_size.preserves_finite_colimits CategoryTheory.Limits.PreservesColimitsOfSize.preservesFiniteColimits
137
142
138
- -- Porting note: added as a specialization of the dangerous instance above.
143
+ -- Added as a specialization of the dangerous instance above, for colimits indexed in Type 0 .
139
144
noncomputable instance (priority := 120 ) PreservesColimitsOfSize0.preservesFiniteColimits
140
145
(F : C ⥤ D) [PreservesColimitsOfSize.{0 , 0 } F] : PreservesFiniteColimits F :=
141
146
PreservesColimitsOfSize.preservesFiniteColimits F
147
+ #align preserves_colimits_of_size.zero.preserves_finite_colimits CategoryTheory.Limits.PreservesColimitsOfSize0.preservesFiniteColimits
142
148
149
+ -- An alternative specialization of the dangerous instance for small colimits.
143
150
noncomputable instance (priority := 120 ) PreservesColimits.preservesFiniteColimits (F : C ⥤ D)
144
151
[PreservesColimits F] : PreservesFiniteColimits F :=
145
152
PreservesColimitsOfSize.preservesFiniteColimits F
0 commit comments