{ T | :> | RelativeComonad F | |
; cut | : | β {A}, T (E Γ A) β T A | |
; cut_counit | : | β {A}, Tβ
counit[A] β cut β F β
Οβ β Tβ
counit | |
; cut_cobind | : | β {A B} {f : T A β F B}, Tβ
cobind(f) β cut β cut β Tβ
cobind (Extend (@cut) f) }. |
Arguments RelativeComonadWithCut | {_ _ _ _} _ _ {_}. | |
Arguments mkRelativeComonadWithCut | {_ _ _ _ _ _ _ _ _} _ _. | |
Arguments T | {_ _ _ _ _ _ _} _. | |
Arguments cut | {_ _ _ _ _ _ _} _ {_}. | |
Arguments cut_counit | {_ _ _ _ _ _ _} _ {_}. | |
Arguments cut_cobind | {_ _ _ _ _ _ _} _ {_ _ _}. | |
Arguments extend | {_ _ _ _ _ _ _} _ {_ _}. |
Notation "'cut[' X ]" | β (cut _ (A β X)) (only parsing). | |
Notation "T 'β cut'" | β (cut T) (at level 0). | |
Notation "T 'β cut[' X ]" | β (cut T (A β X)) (at level 0, only parsing). | |
Notation "T 'β extend'" | β (extend T) (at level 0). |
(RelativeComonad.make β¦ T β T ; | counit β counit ; cobind β cobind β¦ ) cut _ _) (only parsing). |
{ Ο | :> | [T] β [S] | |
; Ο_cut | : | β {A}, Sβ
cut β Ο(E Γ A) β Ο(A) β Tβ
cut }. |
Arguments mkMorphism | {_ _ _ _ _ _ _ _ _ _} _. | |
Arguments Ο | {_ _ _ _ _ _ _ _ _} _. | |
Arguments Ο_cut | {_ _ _ _ _ _ _ _ _} _ {_}. |
Setoid.make | β¦ Carrier | β Morphism T S | |
; Equiv | β _β_ β¦. |