@@ -278,6 +278,16 @@ def createsLimitOfReflectsIso {K : J ⥤ C} {F : C ⥤ D} [ReflectsIsomorphisms
278
278
exact IsLimit.ofIsoLimit hd' (asIso f).symm }
279
279
#align category_theory.creates_limit_of_reflects_iso CategoryTheory.createsLimitOfReflectsIso
280
280
281
+ /-- If `F` reflects isomorphisms and we can lift a single limit cone to a limit cone, then `F`
282
+ creates limits. Note that unlike `createsLimitOfReflectsIso`, to apply this result it is
283
+ necessary to know that `K ⋙ F` actually has a limit. -/
284
+ def createsLimitOfReflectsIso' {K : J ⥤ C} {F : C ⥤ D} [ReflectsIsomorphisms F]
285
+ {c : Cone (K ⋙ F)} (hc : IsLimit c) (h : LiftsToLimit K F c hc) : CreatesLimit K F :=
286
+ createsLimitOfReflectsIso fun _ t =>
287
+ { liftedCone := h.liftedCone
288
+ validLift := h.validLift ≪≫ IsLimit.uniqueUpToIso hc t
289
+ makesLimit := h.makesLimit }
290
+
281
291
-- Notice however that even if the isomorphism is `Iso.refl _`,
282
292
-- this construction will insert additional identity morphisms in the cone maps,
283
293
-- so the constructed limits may not be ideal, definitionally.
@@ -390,6 +400,16 @@ def createsColimitOfReflectsIso {K : J ⥤ C} {F : C ⥤ D} [ReflectsIsomorphism
390
400
exact IsColimit.ofIsoColimit hd' (asIso f) }
391
401
#align category_theory.creates_colimit_of_reflects_iso CategoryTheory.createsColimitOfReflectsIso
392
402
403
+ /-- If `F` reflects isomorphisms and we can lift a single colimit cocone to a colimit cocone, then
404
+ `F` creates limits. Note that unlike `createsColimitOfReflectsIso`, to apply this result it is
405
+ necessary to know that `K ⋙ F` actually has a colimit. -/
406
+ def createsColimitOfReflectsIso' {K : J ⥤ C} {F : C ⥤ D} [ReflectsIsomorphisms F]
407
+ {c : Cocone (K ⋙ F)} (hc : IsColimit c) (h : LiftsToColimit K F c hc) : CreatesColimit K F :=
408
+ createsColimitOfReflectsIso fun _ t =>
409
+ { liftedCocone := h.liftedCocone
410
+ validLift := h.validLift ≪≫ IsColimit.uniqueUpToIso hc t
411
+ makesColimit := h.makesColimit }
412
+
393
413
-- Notice however that even if the isomorphism is `Iso.refl _`,
394
414
-- this construction will insert additional identity morphisms in the cocone maps,
395
415
-- so the constructed colimits may not be ideal, definitionally.
0 commit comments