Commutative squares that are pushout or pullback squares #
In this file, we translate the IsPushout and IsPullback
API for the objects of the category Square C of commutative
squares in a category C. We also obtain lemmas which state
in this language that a pullback of a monomorphism is
a monomorphism (and similarly for pushouts of epimorphisms).
@[reducible, inline]
abbrev CategoryTheory.Square.pullbackCone {C : Type u} [Category.{v, u} C] (sq : Square C) :
Limits.PullbackCone sq.f₂₄ sq.f₃₄
The pullback cone attached to a commutative square.
Equations
- sq.pullbackCone = CategoryTheory.Limits.PullbackCone.mk sq.f₁₂ sq.f₁₃ ⋯
Instances For
@[reducible, inline]
abbrev CategoryTheory.Square.pushoutCocone {C : Type u} [Category.{v, u} C] (sq : Square C) :
Limits.PushoutCocone sq.f₁₂ sq.f₁₃
The pushout cocone attached to a commutative square.
Equations
- sq.pushoutCocone = CategoryTheory.Limits.PushoutCocone.mk sq.f₂₄ sq.f₃₄ ⋯
Instances For
The condition that a commutative square is a pullback square.
Equations
- sq.IsPullback = CategoryTheory.IsPullback sq.f₁₂ sq.f₁₃ sq.f₂₄ sq.f₃₄
Instances For
The condition that a commutative square is a pushout square.
Instances For
theorem CategoryTheory.Square.IsPullback.mk {C : Type u} [Category.{v, u} C] (sq : Square C) (h : Limits.IsLimit sq.pullbackCone) :
sq.IsPullback
theorem CategoryTheory.Square.IsPushout.mk {C : Type u} [Category.{v, u} C] (sq : Square C) (h : Limits.IsColimit sq.pushoutCocone) :
sq.IsPushout
noncomputable def CategoryTheory.Square.IsPullback.isLimit {C : Type u} [Category.{v, u} C] {sq : Square C} (h : sq.IsPullback) :
If a commutative square sq is a pullback square,
then sq.pullbackCone is a limit.
Equations
Instances For
noncomputable def CategoryTheory.Square.IsPushout.isColimit {C : Type u} [Category.{v, u} C] {sq : Square C} (h : sq.IsPushout) :
If a commutative square sq is a pushout square,
then sq.pushoutCocone is a colimit.
Equations
Instances For
theorem CategoryTheory.Square.IsPullback.of_iso {C : Type u} [Category.{v, u} C] {sq₁ sq₂ : Square C} (h : sq₁.IsPullback) (e : sq₁ ≅ sq₂) :
sq₂.IsPullback
theorem CategoryTheory.Square.IsPullback.iff_of_iso {C : Type u} [Category.{v, u} C] {sq₁ sq₂ : Square C} (e : sq₁ ≅ sq₂) :
theorem CategoryTheory.Square.IsPushout.of_iso {C : Type u} [Category.{v, u} C] {sq₁ sq₂ : Square C} (h : sq₁.IsPushout) (e : sq₁ ≅ sq₂) :
sq₂.IsPushout
theorem CategoryTheory.Square.IsPushout.iff_of_iso {C : Type u} [Category.{v, u} C] {sq₁ sq₂ : Square C} (e : sq₁ ≅ sq₂) :
theorem CategoryTheory.Square.IsPushout.op {C : Type u} [Category.{v, u} C] {sq : Square C} (h : sq.IsPushout) :
sq.op.IsPullback
theorem CategoryTheory.Square.IsPushout.unop {C : Type u} [Category.{v, u} C] {sq : Square Cᵒᵖ} (h : sq.IsPushout) :
sq.unop.IsPullback
theorem CategoryTheory.Square.IsPullback.op {C : Type u} [Category.{v, u} C] {sq : Square C} (h : sq.IsPullback) :
theorem CategoryTheory.Square.IsPullback.unop {C : Type u} [Category.{v, u} C] {sq : Square Cᵒᵖ} (h : sq.IsPullback) :
theorem CategoryTheory.Square.IsPullback.flip {C : Type u} [Category.{v, u} C] {sq : Square C} (h : sq.IsPullback) :
sq.flip.IsPullback
theorem CategoryTheory.Square.IsPullback.mono_f₁₃ {C : Type u} [Category.{v, u} C] {sq : Square C} (h : sq.IsPullback) [Mono sq.f₂₄] :
theorem CategoryTheory.Square.IsPullback.mono_f₁₂ {C : Type u} [Category.{v, u} C] {sq : Square C} (h : sq.IsPullback) [Mono sq.f₃₄] :
theorem CategoryTheory.Square.IsPushout.flip {C : Type u} [Category.{v, u} C] {sq : Square C} (h : sq.IsPushout) :
theorem CategoryTheory.Square.IsPushout.epi_f₂₄ {C : Type u} [Category.{v, u} C] {sq : Square C} (h : sq.IsPushout) [Epi sq.f₁₃] :
theorem CategoryTheory.Square.IsPushout.epi_f₃₄ {C : Type u} [Category.{v, u} C] {sq : Square C} (h : sq.IsPushout) [Epi sq.f₁₂] :