| Safe Haskell | None |
|---|---|
| Language | GHC2024 |
Proarrow.Category.Bicategory.Co
Documentation
newtype COK (kk :: CAT k) (j :: k) (k1 :: k) Source Comments #
Constructors
| CO (kk j k1) |
Instances
| WithObO2 Tight kk => WithObO2 Cotight (COK kk :: s -> s -> Type) Source Comments # | |
| WithObO2 Cotight kk => WithObO2 Tight (COK kk :: s -> s -> Type) Source Comments # | |
| Bicategory kk => Bicategory (COK kk :: s -> s -> Type) Source Comments # | Create a dual of a bicategory by reversing the 2-cells. |
Defined in Proarrow.Category.Bicategory.Co Methods o :: forall {i :: s} (j :: s) (k :: s) (a :: COK kk j k) (b :: COK kk j k) (c :: COK kk i j) (d :: COK kk i j). (a ~> b) -> (c ~> d) -> O a c ~> O b d Source Comments # withOb2 :: forall {i :: s} {j :: s} {k :: s} (a :: COK kk j k) (b :: COK kk i j) r. (Ob a, Ob b, Ob0 (COK kk) i, Ob0 (COK kk) j, Ob0 (COK kk) k) => (Ob (O a b) => r) -> r Source Comments # withOb0s :: forall {j :: s} {k :: s} (a :: COK kk j k) r. Ob a => ((Ob0 (COK kk) j, Ob0 (COK kk) k) => r) -> r Source Comments # (\\\) :: forall (i :: s) (j :: s) (ps :: COK kk i j) (qs :: COK kk i j) r. ((Ob0 (COK kk) i, Ob0 (COK kk) j, Ob ps, Ob qs) => r) -> (ps ~> qs) -> r Source Comments # leftUnitor :: forall {i :: s} {j :: s} (a :: COK kk i j). (Ob0 (COK kk) i, Ob0 (COK kk) j, Ob a) => O (I :: COK kk j j) a ~> a Source Comments # leftUnitorInv :: forall {i :: s} {j :: s} (a :: COK kk i j). (Ob0 (COK kk) i, Ob0 (COK kk) j, Ob a) => a ~> O (I :: COK kk j j) a Source Comments # rightUnitor :: forall {i :: s} {j :: s} (a :: COK kk i j). (Ob0 (COK kk) i, Ob0 (COK kk) j, Ob a) => O a (I :: COK kk i i) ~> a Source Comments # rightUnitorInv :: forall {i :: s} {j :: s} (a :: COK kk i j). (Ob0 (COK kk) i, Ob0 (COK kk) j, Ob a) => a ~> O a (I :: COK kk i i) Source Comments # associator :: forall {h :: s} {i :: s} {j :: s} {k :: s} (a :: COK kk j k) (b :: COK kk i j) (c :: COK kk h i). (Ob0 (COK kk) h, Ob0 (COK kk) i, Ob0 (COK kk) j, Ob0 (COK kk) k, Ob a, Ob b, Ob c) => O (O a b) c ~> O a (O b c) Source Comments # associatorInv :: forall {h :: s} {i :: s} {j :: s} {k :: s} (a :: COK kk j k) (b :: COK kk i j) (c :: COK kk h i). (Ob0 (COK kk) h, Ob0 (COK kk) i, Ob0 (COK kk) j, Ob0 (COK kk) k, Ob a, Ob b, Ob c) => O a (O b c) ~> O (O a b) c Source Comments # | |
| Equipment kk => Equipment (COK kk :: k -> k -> Type) Source Comments # | |
Defined in Proarrow.Category.Bicategory.Co Methods withCotightAdjoint :: forall {j :: k} {k1 :: k} (f :: COK kk j k1) r. IsTight f => ((Adjunction f (CotightAdjoint f), IsCotight (CotightAdjoint f)) => r) -> r Source Comments # withTightAdjoint :: forall {j :: k} {k1 :: k} (f :: COK kk j k1) r. IsCotight f => ((Adjunction (TightAdjoint f) f, IsTight (TightAdjoint f)) => r) -> r Source Comments # | |
| RightKanExtension j2 f => LeftKanExtension ('CO j2 :: COK kk j1 d) ('CO f :: COK kk j1 e) Source Comments # | |
| RightKanLift j f => LeftKanLift ('CO j :: COK kk d k2) ('CO f :: COK kk e k2) Source Comments # | |
| LeftKanExtension j2 f => RightKanExtension ('CO j2 :: COK kk j1 d) ('CO f :: COK kk j1 e) Source Comments # | |
| LeftKanLift j f => RightKanLift ('CO j :: COK kk d k2) ('CO f :: COK kk e k2) Source Comments # | |
| Adjunction f g => Adjunction ('CO g :: COK kk k2 j) ('CO f :: COK kk j k2) Source Comments # | |
| Monad m => Comonad ('CO m :: COK kk a a) Source Comments # | |
| Comonad m => Monad ('CO m :: COK kk a a) Source Comments # | |
| CategoryOf (kk j k2) => CategoryOf (COK kk j k2) Source Comments # | |
Defined in Proarrow.Category.Bicategory.Co | |
| (Bicategory kk, Ob0 kk h, Ob0 kk i, Ob0 kk j, Ob0 kk k2) => Functor (P kk kk (HK kk) :: COK kk h i -> kk j k2 -> HK kk h j +-> HK kk i k2) Source Comments # | |
| CategoryOf (kk j k2) => Promonad (Co :: COK kk j k2 -> COK kk j k2 -> Type) Source Comments # | |
| CategoryOf (kk j k2) => Profunctor (Co :: COK kk j k2 -> COK kk j k2 -> Type) Source Comments # | |
Defined in Proarrow.Category.Bicategory.Co | |
| type Ob0 (COK kk :: s -> s -> Type) (k2 :: k1) Source Comments # | |
Defined in Proarrow.Category.Bicategory.Co | |
| type IsOb Cotight (p :: COK kk i j) Source Comments # | |
| type IsOb Tight (p :: COK kk i j) Source Comments # | |
| type Lan ('CO j2 :: COK kk j1 d) ('CO f :: COK kk j1 e) Source Comments # | |
| type Lift ('CO j :: COK kk d k2) ('CO f :: COK kk e k2) Source Comments # | |
| type Ran ('CO j2 :: COK kk j1 d) ('CO f :: COK kk j1 e) Source Comments # | |
| type Rift ('CO j :: COK kk d k2) ('CO f :: COK kk e k2) Source Comments # | |
| type I Source Comments # | |
Defined in Proarrow.Category.Bicategory.Co | |
| type CotightAdjoint (p :: COK kk k2 j) Source Comments # | |
Defined in Proarrow.Category.Bicategory.Co | |
| type TightAdjoint (p :: COK kk k2 j) Source Comments # | |
Defined in Proarrow.Category.Bicategory.Co | |
| type O (a :: COK kk k1 k2) (b :: COK kk j k1) Source Comments # | |
| type UN ('CO :: kk j k2 -> COK kk j k2) ('CO k3 :: COK kk j k2) Source Comments # | |
| type (~>) Source Comments # | |
| type Ob (a :: COK kk j k2) Source Comments # | |
data Co (a :: COK kk j k1) (b :: COK kk j k1) where Source Comments #
Constructors
| Co :: forall {k} {kk :: CAT k} {j :: k} {k1 :: k} (b1 :: kk j k1) (a1 :: kk j k1). (b1 ~> a1) -> Co ('CO a1) ('CO b1) |
Instances
| CategoryOf (kk j k2) => Promonad (Co :: COK kk j k2 -> COK kk j k2 -> Type) Source Comments # | |
| CategoryOf (kk j k2) => Profunctor (Co :: COK kk j k2 -> COK kk j k2 -> Type) Source Comments # | |
Defined in Proarrow.Category.Bicategory.Co | |