Wide pullbacks #
We define the category WidePullbackShape, (resp. WidePushoutShape) which is the category
obtained from a discrete category of type J by adjoining a terminal (resp. initial) element.
Limits of this shape are wide pullbacks (pushouts).
The convenience method wideCospan (wideSpan) constructs a functor from this category, hitting
the given morphisms.
We use WidePullbackShape to define ordinary pullbacks (pushouts) by using J := WalkingPair,
which allows easy proofs of some related lemmas.
Furthermore, wide pullbacks are used to show the existence of limits in the slice category.
Namely, if C has wide pullbacks then C/B has limits for any object B in C.
Typeclasses HasWidePullbacks and HasFiniteWidePullbacks assert the existence of wide
pullbacks and finite wide pullbacks.
A wide pullback shape for any type J can be written simply as Option J.
Equations
Instances For
A wide pushout shape for any type J can be written simply as Option J.
Equations
Instances For
Equations
- CategoryTheory.Limits.instInhabitedWidePullbackShape J = { default := none }
Equations
- CategoryTheory.Limits.instInhabitedWidePushoutShape J = { default := none }
The type of arrows for the shape indexing a wide pushout.
Instances For
Equations
- CategoryTheory.Limits.WidePushoutShape.instDecidableEqHom.decEq (CategoryTheory.Limits.WidePushoutShape.Hom.id a✝) (CategoryTheory.Limits.WidePushoutShape.Hom.id a✝) = isTrue ⋯
- CategoryTheory.Limits.WidePushoutShape.instDecidableEqHom.decEq (CategoryTheory.Limits.WidePushoutShape.Hom.init a_2) (CategoryTheory.Limits.WidePushoutShape.Hom.init a_2) = isTrue ⋯
Instances For
The type of arrows for the shape indexing a wide pullback.
Instances For
Equations
- CategoryTheory.Limits.WidePullbackShape.instDecidableEqHom.decEq (CategoryTheory.Limits.WidePullbackShape.Hom.id a✝) (CategoryTheory.Limits.WidePullbackShape.Hom.id a✝) = isTrue ⋯
- CategoryTheory.Limits.WidePullbackShape.instDecidableEqHom.decEq (CategoryTheory.Limits.WidePullbackShape.Hom.term a_2) (CategoryTheory.Limits.WidePullbackShape.Hom.term a_2) = isTrue ⋯
Instances For
Equations
- One or more equations did not get rendered due to their size.
Equations
- One or more equations did not get rendered due to their size.
Construct a functor out of the wide pullback shape given a J-indexed collection of arrows to a fixed object.
Equations
- One or more equations did not get rendered due to their size.
Instances For
Construct a functor out of the wide pushout shape given a J-indexed collection of arrows from a fixed object.
Equations
- One or more equations did not get rendered due to their size.
Instances For
Every diagram is naturally isomorphic (actually, equal) to a wideCospan
Equations
Instances For
Every diagram is naturally isomorphic (actually, equal) to a wideSpan
Equations
Instances For
Construct a cone over a wide cospan.
Equations
- One or more equations did not get rendered due to their size.
Instances For
Construct a cocone over a wide span.
Equations
- One or more equations did not get rendered due to their size.
Instances For
Wide pullback diagrams of equivalent index types are equivalent.
Equations
- One or more equations did not get rendered due to their size.
Instances For
Wide pushout diagrams of equivalent index types are equivalent.
Equations
- One or more equations did not get rendered due to their size.
Instances For
Lifting universe and morphism levels preserves wide pullback diagrams.
Equations
- One or more equations did not get rendered due to their size.
Instances For
Lifting universe and morphism levels preserves wide pushout diagrams.
Equations
- One or more equations did not get rendered due to their size.
Instances For
Show two functors out of a wide pullback shape are isomorphic by showing their components are isomorphic.
Equations
- One or more equations did not get rendered due to their size.
Instances For
A category HasWidePullbacks if it has all limits of shape WidePullbackShape J, i.e. if it
has a wide pullback for every collection of morphisms with the same codomain.
Equations
Instances For
A category HasWidePushouts if it has all colimits of shape WidePushoutShape J, i.e. if it
has a wide pushout for every collection of morphisms with the same domain.
Equations
Instances For
HasWidePullback B objs arrows means that wideCospan B objs arrows has a limit.
Equations
- CategoryTheory.Limits.HasWidePullback B objs arrows = CategoryTheory.Limits.HasLimit (CategoryTheory.Limits.WidePullbackShape.wideCospan B objs arrows)
Instances For
HasWidePushout B objs arrows means that wideSpan B objs arrows has a colimit.
Equations
- CategoryTheory.Limits.HasWidePushout B objs arrows = CategoryTheory.Limits.HasColimit (CategoryTheory.Limits.WidePushoutShape.wideSpan B objs arrows)
Instances For
A choice of wide pullback.
Equations
- CategoryTheory.Limits.widePullback B objs arrows = CategoryTheory.Limits.limit (CategoryTheory.Limits.WidePullbackShape.wideCospan B objs arrows)
Instances For
A choice of wide pushout.
Equations
- CategoryTheory.Limits.widePushout B objs arrows = CategoryTheory.Limits.colimit (CategoryTheory.Limits.WidePushoutShape.wideSpan B objs arrows)
Instances For
The j-th projection from the pullback.
Equations
- CategoryTheory.Limits.WidePullback.π arrows j = CategoryTheory.Limits.limit.π (CategoryTheory.Limits.WidePullbackShape.wideCospan B objs arrows) (some j)
Instances For
The j-th inclusion to the pushout.
Equations
- CategoryTheory.Limits.WidePushout.ι arrows j = CategoryTheory.Limits.colimit.ι (CategoryTheory.Limits.WidePushoutShape.wideSpan B objs arrows) (some j)
Instances For
The unique map to the base from the pullback.
Equations
Instances For
The unique map from the head to the pushout.
Equations
Instances For
Lift a collection of morphisms to a morphism to the pullback.
Equations
- One or more equations did not get rendered due to their size.
Instances For
Descend a collection of morphisms to a morphism from the pushout.
Equations
- One or more equations did not get rendered due to their size.
Instances For
A wide pullback cone is a cone on the wide cospan formed by a family of morphisms.
Equations
Instances For
The projection on the components of a wide pullback cone.
Instances For
The projection to the base of a wide pullback cone.
Instances For
Construct a wide pullback cone from the projections.
Equations
Instances For
Constructor to show a wide pullback cone is limiting.
Equations
- CategoryTheory.Limits.WidePullbackCone.IsLimit.mk s lift facbase facπ uniq = { lift := lift, fac := ⋯, uniq := ⋯ }
Instances For
Lift a family of morphisms to a limiting wide pullback cone.
Equations
Instances For
To show two wide pullback cones are isomorphic, it suffices to give a compatible isomorphism of their cone points.
Equations
Instances For
Reindex a wide pullback cone.
Equations
- s.reindex e = CategoryTheory.Limits.WidePullbackCone.mk s.base (fun (i : ι') => s.π (e i)) ⋯
Instances For
Reindexing a pullback cone preserves being limiting.
Equations
- One or more equations did not get rendered due to their size.
Instances For
The action on morphisms of the obvious functor
WidePullbackShape_op : WidePullbackShape J ⥤ (WidePushoutShape J)ᵒᵖ
Equations
- CategoryTheory.Limits.widePullbackShapeOpMap J x✝ x✝ (CategoryTheory.Limits.WidePullbackShape.Hom.id x✝) = Quiver.Hom.op (CategoryTheory.Limits.WidePushoutShape.Hom.id x✝)
- CategoryTheory.Limits.widePullbackShapeOpMap J (some j) none (CategoryTheory.Limits.WidePullbackShape.Hom.term j) = Quiver.Hom.op (CategoryTheory.Limits.WidePushoutShape.Hom.init j)
Instances For
The action on morphisms of the obvious functor
widePushoutShapeOp : WidePushoutShape J ⥤ (WidePullbackShape J)ᵒᵖ
Equations
- CategoryTheory.Limits.widePushoutShapeOpMap J x✝ x✝ (CategoryTheory.Limits.WidePushoutShape.Hom.id x✝) = Quiver.Hom.op (CategoryTheory.Limits.WidePullbackShape.Hom.id x✝)
- CategoryTheory.Limits.widePushoutShapeOpMap J none (some j) (CategoryTheory.Limits.WidePushoutShape.Hom.init j) = Quiver.Hom.op (CategoryTheory.Limits.WidePullbackShape.Hom.term j)
Instances For
The obvious functor WidePullbackShape J ⥤ (WidePushoutShape J)ᵒᵖ
Equations
- One or more equations did not get rendered due to their size.
Instances For
The obvious functor WidePushoutShape J ⥤ (WidePullbackShape J)ᵒᵖ
Equations
- One or more equations did not get rendered due to their size.
Instances For
The obvious functor (WidePullbackShape J)ᵒᵖ ⥤ WidePushoutShape J
Equations
Instances For
The obvious functor (WidePushoutShape J)ᵒᵖ ⥤ WidePullbackShape J
Equations
Instances For
The inverse of the unit isomorphism of the equivalence
widePushoutShapeOpEquiv : (WidePushoutShape J)ᵒᵖ ≌ WidePullbackShape J
Equations
- One or more equations did not get rendered due to their size.
Instances For
The inverse of the unit isomorphism of the equivalence
widePullbackShapeOpEquiv : (WidePullbackShape J)ᵒᵖ ≌ WidePushoutShape J
Equations
- One or more equations did not get rendered due to their size.
Instances For
The counit isomorphism of the equivalence
widePullbackShapeOpEquiv : (WidePullbackShape J)ᵒᵖ ≌ WidePushoutShape J
Equations
- One or more equations did not get rendered due to their size.
Instances For
The counit isomorphism of the equivalence
widePushoutShapeOpEquiv : (WidePushoutShape J)ᵒᵖ ≌ WidePullbackShape J
Equations
- One or more equations did not get rendered due to their size.
Instances For
The duality equivalence (WidePushoutShape J)ᵒᵖ ≌ WidePullbackShape J
Equations
- One or more equations did not get rendered due to their size.
Instances For
The duality equivalence (WidePullbackShape J)ᵒᵖ ≌ WidePushoutShape J
Equations
- One or more equations did not get rendered due to their size.
Instances For
If a category has wide pushouts on a higher universe level it also has wide pushouts on a lower universe level.
If a category has wide pullbacks on a higher universe level it also has wide pullbacks on a lower universe level.