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) (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.
A lift of a commutative square is a diagonal morphism making the two triangles commute.
- exists_lift : nonempty (category_theory.arrow.lift_struct sq)
has_lift sq says that there is some lift_struct sq, i.e., that it is possible to find a
diagonal morphism making the two triangles commute.
Instances
Given has_lift sq, obtain a lift.
If there is a lift of a commutative square sq, we can access it by saying lift sq.
A functor C ⥤ D induces a functor between the corresponding arrow categories.