proarrow-0: Category theory with a central role for profunctors
Safe HaskellNone
LanguageHaskell2010

Proarrow.Category.Instance.Prof

Documentation

data Prof (p :: j +-> k) (q :: j +-> k) where Source Comments #

Constructors

Prof 

Fields

Instances

Instances details
Promonad (Prof :: (j +-> k) -> (j +-> k) -> Type) Source Comments # 
Instance details

Defined in Proarrow.Category.Instance.Prof

Methods

id :: forall (a :: j +-> k). Ob a => Prof a a Source Comments #

(.) :: forall (b :: j +-> k) (c :: j +-> k) (a :: j +-> k). Prof b c -> Prof a b -> Prof a c Source Comments #

(Monoidal j, Monoidal k) => MonoidalProfunctor (Prof :: (j +-> k) -> (j +-> k) -> Type) Source Comments # 
Instance details

Defined in Proarrow.Profunctor.Day

Methods

par0 :: Prof (Unit :: j +-> k) (Unit :: j +-> k) Source Comments #

par :: forall (x1 :: j +-> k) (x2 :: j +-> k) (y1 :: j +-> k) (y2 :: j +-> k). Prof x1 x2 -> Prof y1 y2 -> Prof (x1 ** y1) (x2 ** y2) Source Comments #

Profunctor (Prof :: (j +-> k) -> (j +-> k) -> Type) Source Comments # 
Instance details

Defined in Proarrow.Category.Instance.Prof

Methods

dimap :: forall (c :: j +-> k) (a :: j +-> k) (b :: j +-> k) (d :: j +-> k). (c ~> a) -> (b ~> d) -> Prof a b -> Prof c d Source Comments #

(\\) :: forall (a :: j +-> k) (b :: j +-> k) r. ((Ob a, Ob b) => r) -> Prof a b -> r Source Comments #

Orphan instances

CategoryOf (j +-> k) Source Comments #

The category of profunctors and natural transformations between them.

Instance details

Associated Types

type (~>) 
Instance details

Defined in Proarrow.Category.Instance.Prof

type (~>) = Prof :: (j +-> k) -> (j +-> k) -> Type