(Co)limit presentations #
Let J
and C
be categories and X : C
. We define type ColimitPresentation J X
that contains
the data of objects Dⱼ
and natural maps sⱼ : Dⱼ ⟶ X
that make X
the colimit of the Dⱼ
.
Main definitions: #
CategoryTheory.Limits.ColimitPresentation
: A colimit presentation ofX
overJ
is a diagram{Dᵢ}
inC
and natural mapssᵢ : Dᵢ ⟶ X
makingX
into the colimit of theDᵢ
.CategoryTheory.Limits.ColimitPresentation.bind
: Given a colimit presentation ofX
and colimit presentations of the components, this is the colimit presentation over the sigma type.CategoryTheory.Limits.LimitPresentation
: A limit presentation ofX
overJ
is a diagram{Dᵢ}
inC
and natural mapssᵢ : X ⟶ Dᵢ
makingX
into the limit of theDᵢ
.
TODOs: #
- Refactor
TransfiniteCompositionOfShape
so that it extendsColimitPresentation
.
A colimit presentation of X
over J
is a diagram {Dᵢ}
in C
and natural maps
sᵢ : Dᵢ ⟶ X
making X
into the colimit of the Dᵢ
.
- diag : Functor J C
The diagram
{Dᵢ}
. The natural maps
sᵢ : Dᵢ ⟶ X
.X
is the colimit of theDᵢ
viasᵢ
.
Instances For
The cocone associated to a colimit presentation.
Instances For
The canonical colimit presentation of any object over a point.
Equations
- One or more equations did not get rendered due to their size.
Instances For
If F : J ⥤ C
is a functor that has a colimit, then this is the obvious
colimit presentation of colimit F
.
Equations
- CategoryTheory.Limits.ColimitPresentation.colimit F = { diag := F, ι := (CategoryTheory.Limits.getColimitCocone F).1.ι, isColimit := CategoryTheory.Limits.colimit.isColimit F }
Instances For
If F
preserves colimits of shape J
, it maps colimit presentations of X
to
colimit presentations of F(X)
.
Equations
- One or more equations did not get rendered due to their size.
Instances For
If P
is a colimit presentation of X
, it is possible to define another
colimit presentation of X
where P.diag
is replaced by an isomorphic functor.
Equations
- P.changeDiag e = { diag := F, ι := CategoryTheory.CategoryStruct.comp e.hom P.ι, isColimit := (CategoryTheory.Limits.IsColimit.precomposeHomEquiv e { pt := X, ι := P.ι }).invFun P.isColimit }
Instances For
Map a colimit presentation under an isomorphism.
Equations
- One or more equations did not get rendered due to their size.
Instances For
Change the index category of a colimit presentation.
Equations
Instances For
The type underlying the category used in the construction of the composition
of colimit presentations. This is simply Σ j, I j
but with a different category structure.
Equations
- CategoryTheory.Limits.ColimitPresentation.Total P = ((j : J) × I j)
Instances For
Constructor for Total
to guide type checking.
Equations
Instances For
Morphisms in the Total
category.
The underlying morphism in the first component.
A morphism in
C
.
Instances For
Composition of morphisms in the Total
category.
Equations
- f.comp g = { base := CategoryTheory.CategoryStruct.comp f.base g.base, hom := CategoryTheory.CategoryStruct.comp f.hom g.hom, w := ⋯ }
Instances For
Equations
- One or more equations did not get rendered due to their size.
If P
is a colimit presentation over J
of X
and for every j
we are given a colimit
presentation Qⱼ
over I j
of the P.diag.obj j
, this is the refined colimit presentation of X
over Total Q
.
Equations
- One or more equations did not get rendered due to their size.
Instances For
A limit presentation of X
over J
is a diagram {Dᵢ}
in C
and natural maps
sᵢ : X ⟶ Dᵢ
making X
into the limit of the Dᵢ
.
- diag : Functor J C
The diagram
{Dᵢ}
. The natural maps
sᵢ : X ⟶ Dᵢ
.X
is the limit of theDᵢ
viasᵢ
.
Instances For
The cone associated to a limit presentation.
Instances For
The canonical limit presentation of any object over a point.
Equations
- One or more equations did not get rendered due to their size.
Instances For
If F : J ⥤ C
is a functor that has a limit, then this is the obvious
limit presentation of limit F
.
Equations
- CategoryTheory.Limits.LimitPresentation.limit F = { diag := F, π := (CategoryTheory.Limits.getLimitCone F).1.π, isLimit := CategoryTheory.Limits.limit.isLimit F }
Instances For
If F
preserves limits of shape J
, it maps limit presentations of X
to
limit presentations of F(X)
.
Equations
- One or more equations did not get rendered due to their size.
Instances For
If P
is a limit presentation of X
, it is possible to define another
limit presentation of X
where P.diag
is replaced by an isomorphic functor.
Equations
- P.changeDiag e = { diag := F, π := CategoryTheory.CategoryStruct.comp P.π e.inv, isLimit := (CategoryTheory.Limits.IsLimit.postcomposeHomEquiv e.symm { pt := X, π := P.π }).invFun P.isLimit }
Instances For
Map a limit presentation under an isomorphism.
Equations
- P.ofIso e = { diag := P.diag, π := CategoryTheory.CategoryStruct.comp ((CategoryTheory.Functor.const J).map e.inv) P.π, isLimit := P.isLimit.ofIsoLimit (CategoryTheory.Limits.Cones.ext e ⋯) }
Instances For
Change the index category of a limit presentation.