Pasting lemma #
This file proves the pasting lemma for pullbacks. That is, given the following diagram:
X₁ - f₁ -> X₂ - f₂ -> X₃
| | |
i₁ i₂ i₃
∨ ∨ ∨
Y₁ - g₁ -> Y₂ - g₂ -> Y₃
if the right square is a pullback, then the left square is a pullback iff the big square is a pullback.
Main results #
pasteHorizIsPullback
shows that the big square is a pullback if both the small squares are.leftSquareIsPullback
shows that the left square is a pullback if the other two are.pullbackRightPullbackFstIso
shows, using thepullback
API, thatW ×[X] (X ×[Z] Y) ≅ W ×[Z] Y
.pullbackLeftPullbackSndIso
shows, using thepullback
API, that(X ×[Z] Y) ×[Y] W ≅ X ×[Z] W
.
The PullbackCone
obtained by pasting two PullbackCone
's horizontally
Equations
- t₂.pasteHoriz t₁ hi₂ = CategoryTheory.Limits.PullbackCone.mk t₁.fst (CategoryTheory.CategoryStruct.comp t₁.snd t₂.snd) ⋯
Instances For
Given
X₁ - f₁ -> X₂ - f₂ -> X₃
| | |
i₁ i₂ i₃
↓ ↓ ↓
Y₁ - g₁ -> Y₂ - g₂ -> Y₃
Then the big square is a pullback if both the small squares are.
Equations
- One or more equations did not get rendered due to their size.
Instances For
Given
X₁ - f₁ -> X₂ - f₂ -> X₃
| | |
i₁ i₂ i₃
↓ ↓ ↓
Y₁ - g₁ -> Y₂ - g₂ -> Y₃
Then the left square is a pullback if the right square and the big square are.
Equations
- One or more equations did not get rendered due to their size.
Instances For
Given that the right square is a pullback, the pasted square is a pullback iff the left square is.
Equations
- One or more equations did not get rendered due to their size.
Instances For
The PullbackCone
obtained by pasting two PullbackCone
's vertically
Equations
- t₁.pasteVert t₂ hi₂ = CategoryTheory.Limits.PullbackCone.mk (CategoryTheory.CategoryStruct.comp t₂.fst t₁.fst) t₂.snd ⋯
Instances For
Pasting two pullback cones vertically is isomorphic to the pullback cone obtained by flipping them, pasting horizontally, and then flipping the result again.
Equations
- t₁.pasteVertFlip t₂ hi₂ = CategoryTheory.Limits.PullbackCone.ext (CategoryTheory.Iso.refl (t₁.pasteVert t₂ hi₂).flip.pt) ⋯ ⋯
Instances For
Given
Y₃ - i₃ -> X₃
| |
g₂ f₂
∨ ∨
Y₂ - i₂ -> X₂
| |
g₁ f₁
∨ ∨
Y₁ - i₁ -> X₁
The big square is a pullback if both the small squares are.
Equations
- One or more equations did not get rendered due to their size.
Instances For
Given
Y₃ - i₃ -> X₃
| |
g₂ f₂
∨ ∨
Y₂ - i₂ -> X₂
| |
g₁ f₁
∨ ∨
Y₁ - i₁ -> X₁
The top square is a pullback if the bottom square and the big square are.
Equations
- One or more equations did not get rendered due to their size.
Instances For
Given that the bottom square is a pullback, the pasted square is a pullback iff the top square is.
Equations
- One or more equations did not get rendered due to their size.
Instances For
The pushout cocone obtained by pasting two pushout cocones horizontally.
Equations
- t₁.pasteHoriz t₂ hi₂ = CategoryTheory.Limits.PushoutCocone.mk (CategoryTheory.CategoryStruct.comp t₁.inl t₂.inl) t₂.inr ⋯
Instances For
Given
X₁ - f₁ -> X₂ - f₂ -> X₃
| | |
i₁ i₂ i₃
∨ ∨ ∨
Y₁ - g₁ -> Y₂ - g₂ -> Y₃
Then the big square is a pushout if both the small squares are.
Equations
- One or more equations did not get rendered due to their size.
Instances For
Given
X₁ - f₁ -> X₂ - f₂ -> X₃ | | | i₁ i₂ i₃ ∨ ∨ ∨ Y₁ - g₁ -> Y₂ - g₂ -> Y₃
Then the right square is a pushout if the left square and the big square are.
Equations
- One or more equations did not get rendered due to their size.
Instances For
Given that the left square is a pushout, the pasted square is a pushout iff the right square is.
Equations
- One or more equations did not get rendered due to their size.
Instances For
The PullbackCone
obtained by pasting two PullbackCone
's vertically
Equations
- t₁.pasteVert t₂ hi₂ = CategoryTheory.Limits.PushoutCocone.mk t₂.inl (CategoryTheory.CategoryStruct.comp t₁.inr t₂.inr) ⋯
Instances For
Pasting two pushout cocones vertically is isomorphic to the pushout cocone obtained by flipping them, pasting horizontally, and then flipping the result again.
Equations
- t₁.pasteVertFlip t₂ hi₂ = CategoryTheory.Limits.PushoutCocone.ext (CategoryTheory.Iso.refl (t₁.pasteVert t₂ hi₂).flip.pt) ⋯ ⋯
Instances For
Given
Y₃ - i₃ -> X₃
| |
g₂ f₂
∨ ∨
Y₂ - i₂ -> X₂
| |
g₁ f₁
∨ ∨
Y₁ - i₁ -> X₁
The big square is a pushout if both the small squares are.
Equations
- One or more equations did not get rendered due to their size.
Instances For
Given
Y₃ - i₃ -> X₃
| |
g₂ f₂
∨ ∨
Y₂ - i₂ -> X₂
| |
g₁ f₁
∨ ∨
Y₁ - i₁ -> X₁
The bottom square is a pushout if the top square and the big square are.
Equations
- One or more equations did not get rendered due to their size.
Instances For
Given that the top square is a pushout, the pasted square is a pushout iff the bottom square is.
Equations
- One or more equations did not get rendered due to their size.
Instances For
The canonical isomorphism W ×[X] (X ×[Z] Y) ≅ W ×[Z] Y
Equations
- One or more equations did not get rendered due to their size.
Instances For
The canonical isomorphism (X ×[Z] Y) ×[Y] W ≅ X ×[Z] W
Equations
- One or more equations did not get rendered due to their size.
Instances For
The canonical isomorphism (Y ⨿[X] Z) ⨿[Z] W ≅ Y ⨿[X] W
Equations
- One or more equations did not get rendered due to their size.
Instances For
The canonical isomorphism W ⨿[Y] (Y ⨿[X] Z) ≅ W ⨿[X] Z
Equations
- One or more equations did not get rendered due to their size.