The category of arrows
The category of arrows, with morphisms commutative squares.
We set this up as a specialization of the comma category comma L R
,
where L
and R
are both the identity functor.
We also define the typeclass has_lift
, representing a choice of a lift
of a commutative square (that is, a diagonal morphism making the two triangles commute).
Tags
comma, arrow
The arrow category of T
has as objects all morphisms in T
and as morphisms commutative
squares in T
.
Equations
- category_theory.arrow T = category_theory.comma (𝟭 T) (𝟭 T)
Equations
- category_theory.arrow.inhabited T = {default := (λ (this : category_theory.comma (𝟭 T) (𝟭 T)), this) (inhabited.default (category_theory.comma (𝟭 T) (𝟭 T)))}
An object in the arrow category is simply a morphism in T
.
A morphism in the arrow category is a commutative square connecting two objects of the arrow category.
We can also build a morphism in the arrow category out of any commutative square in T
.
- lift : f.right ⟶ g.left
- fac_left : f.hom ≫ category_theory.arrow.has_lift.lift sq = sq.left
- fac_right : category_theory.arrow.has_lift.lift sq ≫ g.hom = sq.right
A lift of a commutative square is a diagonal morphism making the two triangles commute.
Instances
If we have chosen a lift of a commutative square sq
, we can access it by saying lift sq
.
Equations
- _ = _
Equations
- _ = _
A functor C ⥤ D
induces a functor between the corresponding arrow categories.