HasPullback #
HasPullback f g
and pullback f g
provides API for HasLimit
and limit
in the case of
pullacks.
Main definitions #
HasPullback f g
: this is an abbreviation forHasLimit (cospan f g)
, and is a typeclass used to express the fact that a given pair of morphisms has a pullback.HasPullbacks
: expresses the fact thatC
admits all pullbacks, it is implemented as an abbreviation forHasLimitsOfShape WalkingCospan C
pullback f g
: Given aHasPullback f g
instance, this function returns the choice of a limit object corresponding to the pullback off
andg
. It fits into the following diagram:
pullback f g ---pullback.snd f g---> Y
| |
| |
pullback.snd f g g
| |
v v
X --------------f--------------> Z
HasPushout f g
: this is an abbreviation forHasColimit (span f g)
, and is a typeclass used to express the fact that a given pair of morphisms has a pushout.HasPushouts
: expresses the fact thatC
admits all pushouts, it is implemented as an abbreviation forHasColimitsOfShape WalkingSpan C
pushout f g
: Given aHasPushout f g
instance, this function returns the choice of a colimit object corresponding to the pushout off
andg
. It fits into the following diagram:
X --------------f--------------> Y
| |
g pushout.inr f g
| |
v v
Z ---pushout.inl f g---> pushout f g
Main results & API #
The following API is available for using the universal property of
pullback f g
:lift
,lift_fst
,lift_snd
,lift'
,hom_ext
(for uniqueness).pullback.map
is the induced map between pullbacksW ×ₛ X ⟶ Y ×ₜ Z
given pointwise (compatible) mapsW ⟶ Y
,X ⟶ Z
andS ⟶ T
.pullbackComparison
: Given a functorG
, this is the natural morphismG.obj (pullback f g) ⟶ pullback (G.map f) (G.map g)
pullbackSymmetry
provides the natural isomorphismpullback f g ≅ pullback g f
(The dual results for pushouts are also available)
References #
HasPullback f g
represents a particular choice of limiting cone
for the pair of morphisms f : X ⟶ Z
and g : Y ⟶ Z
.
Equations
Instances For
HasPushout f g
represents a particular choice of colimiting cocone
for the pair of morphisms f : X ⟶ Y
and g : X ⟶ Z
.
Equations
Instances For
pullback f g
computes the pullback of a pair of morphisms with the same target.
Equations
Instances For
The cone associated to the pullback of f
and g
Equations
Instances For
pushout f g
computes the pushout of a pair of morphisms with the same source.
Equations
Instances For
The cocone associated to the pullback of f
and g
Equations
Instances For
The first projection of the pullback of f
and g
.
Equations
Instances For
The second projection of the pullback of f
and g
.
Equations
Instances For
The first inclusion into the pushout of f
and g
.
Equations
Instances For
The second inclusion into the pushout of f
and g
.
Equations
Instances For
A pair of morphisms h : W ⟶ X
and k : W ⟶ Y
satisfying h ≫ f = k ≫ g
induces a morphism
pullback.lift : W ⟶ pullback f g
.
Equations
Instances For
A pair of morphisms h : Y ⟶ W
and k : Z ⟶ W
satisfying f ≫ h = g ≫ k
induces a morphism
pushout.desc : pushout f g ⟶ W
.
Equations
Instances For
The cone associated to a pullback is a limit cone.
Equations
Instances For
The cocone associated to a pushout is a colimit cone.
Equations
Instances For
A pair of morphisms h : W ⟶ X
and k : W ⟶ Y
satisfying h ≫ f = k ≫ g
induces a morphism
l : W ⟶ pullback f g
such that l ≫ pullback.fst = h
and l ≫ pullback.snd = k
.
Equations
- CategoryTheory.Limits.pullback.lift' h k w = ⟨CategoryTheory.Limits.pullback.lift h k w, ⋯⟩
Instances For
A pair of morphisms h : Y ⟶ W
and k : Z ⟶ W
satisfying f ≫ h = g ≫ k
induces a morphism
l : pushout f g ⟶ W
such that pushout.inl _ _ ≫ l = h
and pushout.inr _ _ ≫ l = k
.
Equations
- CategoryTheory.Limits.pullback.desc' h k w = ⟨CategoryTheory.Limits.pushout.desc h k w, ⋯⟩
Instances For
Two morphisms into a pullback are equal if their compositions with the pullback morphisms are equal
The pullback cone built from the pullback projections is a pullback.
Equations
Instances For
Two morphisms out of a pushout are equal if their compositions with the pushout morphisms are equal
The pushout cocone built from the pushout coprojections is a pushout.
Equations
- One or more equations did not get rendered due to their size.
Instances For
Given such a diagram, then there is a natural morphism W ×ₛ X ⟶ Y ×ₜ Z
.
W ⟶ Y
↘ ↘
S ⟶ T
↗ ↗
X ⟶ Z
Equations
- One or more equations did not get rendered due to their size.
Instances For
The canonical map X ×ₛ Y ⟶ X ×ₜ Y
given S ⟶ T
.
Equations
- One or more equations did not get rendered due to their size.
Instances For
Given such a diagram, then there is a natural morphism W ⨿ₛ X ⟶ Y ⨿ₜ Z
.
W ⟶ Y
↗ ↗
S ⟶ T
↘ ↘
X ⟶ Z
Equations
- One or more equations did not get rendered due to their size.
Instances For
The canonical map X ⨿ₛ Y ⟶ X ⨿ₜ Y
given S ⟶ T
.
Equations
- One or more equations did not get rendered due to their size.
Instances For
Equations
- ⋯ = ⋯
If f₁ = f₂
and g₁ = g₂
, we may construct a canonical
isomorphism pullback f₁ g₁ ≅ pullback f₂ g₂
Equations
- One or more equations did not get rendered due to their size.
Instances For
Equations
- ⋯ = ⋯
If f₁ = f₂
and g₁ = g₂
, we may construct a canonical
isomorphism pushout f₁ g₁ ≅ pullback f₂ g₂
Equations
- One or more equations did not get rendered due to their size.
Instances For
The comparison morphism for the pullback of f,g
.
This is an isomorphism iff G
preserves the pullback of f,g
; see
Mathlib/CategoryTheory/Limits/Preserves/Shapes/Pullbacks.lean
Equations
- CategoryTheory.Limits.pullbackComparison G f g = CategoryTheory.Limits.pullback.lift (G.map (CategoryTheory.Limits.pullback.fst f g)) (G.map (CategoryTheory.Limits.pullback.snd f g)) ⋯
Instances For
The comparison morphism for the pushout of f,g
.
This is an isomorphism iff G
preserves the pushout of f,g
; see
Mathlib/CategoryTheory/Limits/Preserves/Shapes/Pullbacks.lean
Equations
- CategoryTheory.Limits.pushoutComparison G f g = CategoryTheory.Limits.pushout.desc (G.map (CategoryTheory.Limits.pushout.inl f g)) (G.map (CategoryTheory.Limits.pushout.inr f g)) ⋯
Instances For
Making this a global instance would make the typeclass search go in an infinite loop.
The isomorphism X ×[Z] Y ≅ Y ×[Z] X
.
Equations
- One or more equations did not get rendered due to their size.
Instances For
Making this a global instance would make the typeclass search go in an infinite loop.
The isomorphism Y ⨿[X] Z ≅ Z ⨿[X] Y
.
Equations
- One or more equations did not get rendered due to their size.
Instances For
HasPullbacks
represents a choice of pullback for every pair of morphisms
See https://stacks.math.columbia.edu/tag/001W
Equations
Instances For
HasPushouts
represents a choice of pushout for every pair of morphisms
Equations
Instances For
If C
has all limits of diagrams cospan f g
, then it has all pullbacks
If C
has all colimits of diagrams span f g
, then it has all pushouts
The duality equivalence WalkingSpanᵒᵖ ≌ WalkingCospan
Equations
Instances For
The duality equivalence WalkingCospanᵒᵖ ≌ WalkingSpan
Equations
Instances For
Having wide pullback at any universe level implies having binary pullbacks.
Equations
- ⋯ = ⋯
Having wide pushout at any universe level implies having binary pushouts.
Equations
- ⋯ = ⋯