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

Proarrow.Category.Instance.PreorderAsCategory

Documentation

newtype POCATK k Source Comments #

Constructors

PC k 

Instances

Instances details
Monoidal (POCATK Constraint) Source Comments # 
Instance details

Defined in Proarrow.Category.Instance.PreorderAsCategory

Associated Types

type Unit 
Instance details

Defined in Proarrow.Category.Instance.PreorderAsCategory

type (a :: POCATK Constraint) ** (b :: POCATK Constraint) 
Instance details

Defined in Proarrow.Category.Instance.PreorderAsCategory

type (a :: POCATK Constraint) ** (b :: POCATK Constraint) = a && b

Methods

leftUnitor :: forall (a :: POCATK Constraint). Ob a => ((Unit :: POCATK Constraint) ** a) ~> a Source Comments #

leftUnitorInv :: forall (a :: POCATK Constraint). Ob a => a ~> ((Unit :: POCATK Constraint) ** a) Source Comments #

rightUnitor :: forall (a :: POCATK Constraint). Ob a => (a ** (Unit :: POCATK Constraint)) ~> a Source Comments #

rightUnitorInv :: forall (a :: POCATK Constraint). Ob a => a ~> (a ** (Unit :: POCATK Constraint)) Source Comments #

associator :: forall (a :: POCATK Constraint) (b :: POCATK Constraint) (c :: POCATK Constraint). (Ob a, Ob b, Ob c) => ((a ** b) ** c) ~> (a ** (b ** c)) Source Comments #

associatorInv :: forall (a :: POCATK Constraint) (b :: POCATK Constraint) (c :: POCATK Constraint). (Ob a, Ob b, Ob c) => (a ** (b ** c)) ~> ((a ** b) ** c) Source Comments #

PreorderOf k => CategoryOf (POCATK k) Source Comments # 
Instance details

Defined in Proarrow.Category.Instance.PreorderAsCategory

Associated Types

type (~>) 
Instance details

Defined in Proarrow.Category.Instance.PreorderAsCategory

type (~>) = PoAsCat :: POCATK k -> POCATK k -> Type
HasBinaryProducts (POCATK Constraint) Source Comments # 
Instance details

Defined in Proarrow.Category.Instance.PreorderAsCategory

Associated Types

type (l :: POCATK Constraint) && (r :: POCATK Constraint) 
Instance details

Defined in Proarrow.Category.Instance.PreorderAsCategory

Methods

fst :: forall (a :: POCATK Constraint) (b :: POCATK Constraint). (Ob a, Ob b) => (a && b) ~> a Source Comments #

fst' :: forall (a :: POCATK Constraint) (a' :: POCATK Constraint) (b :: POCATK Constraint). (a ~> a') -> Obj b -> (a && b) ~> a' Source Comments #

snd :: forall (a :: POCATK Constraint) (b :: POCATK Constraint). (Ob a, Ob b) => (a && b) ~> b Source Comments #

snd' :: forall (a :: POCATK Constraint) (b :: POCATK Constraint) (b' :: POCATK Constraint). Obj a -> (b ~> b') -> (a && b) ~> b' Source Comments #

(&&&) :: forall (a :: POCATK Constraint) (x :: POCATK Constraint) (y :: POCATK Constraint). (a ~> x) -> (a ~> y) -> a ~> (x && y) Source Comments #

(***) :: forall (a :: POCATK Constraint) (b :: POCATK Constraint) (x :: POCATK Constraint) (y :: POCATK Constraint). (a ~> x) -> (b ~> y) -> (a && b) ~> (x && y) Source Comments #

HasTerminalObject (POCATK Constraint) Source Comments # 
Instance details

Defined in Proarrow.Category.Instance.PreorderAsCategory

Associated Types

type TerminalObject 
Instance details

Defined in Proarrow.Category.Instance.PreorderAsCategory

type TerminalObject = 'PC ()
DaggerProfunctor (PoAsCat :: POCATK (DISCRETE k) -> POCATK (DISCRETE k) -> Type) Source Comments # 
Instance details

Defined in Proarrow.Category.Instance.PreorderAsCategory

Methods

dagger :: forall (a :: POCATK (DISCRETE k)) (b :: POCATK (DISCRETE k)). PoAsCat a b -> PoAsCat b a Source Comments #

PreorderOf k => Promonad (PoAsCat :: POCATK k -> POCATK k -> Type) Source Comments # 
Instance details

Defined in Proarrow.Category.Instance.PreorderAsCategory

Methods

id :: forall (a :: POCATK k). Ob a => PoAsCat a a Source Comments #

(.) :: forall (b :: POCATK k) (c :: POCATK k) (a :: POCATK k). PoAsCat b c -> PoAsCat a b -> PoAsCat a c Source Comments #

MonoidalProfunctor (PoAsCat :: POCATK Constraint -> POCATK Constraint -> Type) Source Comments # 
Instance details

Defined in Proarrow.Category.Instance.PreorderAsCategory

Methods

par0 :: PoAsCat (Unit :: POCATK Constraint) (Unit :: POCATK Constraint) Source Comments #

par :: forall (x1 :: POCATK Constraint) (x2 :: POCATK Constraint) (y1 :: POCATK Constraint) (y2 :: POCATK Constraint). PoAsCat x1 x2 -> PoAsCat y1 y2 -> PoAsCat (x1 ** y1) (x2 ** y2) Source Comments #

PreorderOf k => Profunctor (PoAsCat :: POCATK k -> POCATK k -> Type) Source Comments # 
Instance details

Defined in Proarrow.Category.Instance.PreorderAsCategory

Methods

dimap :: forall (c :: POCATK k) (a :: POCATK k) (b :: POCATK k) (d :: POCATK k). (c ~> a) -> (b ~> d) -> PoAsCat a b -> PoAsCat c d Source Comments #

(\\) :: forall (a :: POCATK k) (b :: POCATK k) r. ((Ob a, Ob b) => r) -> PoAsCat a b -> r Source Comments #

PreorderOf k => ThinProfunctor (PoAsCat :: POCATK k -> POCATK k -> Type) Source Comments # 
Instance details

Defined in Proarrow.Category.Instance.PreorderAsCategory

Methods

arr :: forall (a :: POCATK k) (b :: POCATK k). (Ob a, Ob b, HasArrow (PoAsCat :: POCATK k -> POCATK k -> Type) a b) => PoAsCat a b Source Comments #

withArr :: forall (a :: POCATK k) (b :: POCATK k) r. PoAsCat a b -> (HasArrow (PoAsCat :: POCATK k -> POCATK k -> Type) a b => r) -> r Source Comments #

type UN ('PC :: j -> POCATK j) ('PC k :: POCATK j) Source Comments # 
Instance details

Defined in Proarrow.Category.Instance.PreorderAsCategory

type UN ('PC :: j -> POCATK j) ('PC k :: POCATK j) = k
type Unit Source Comments # 
Instance details

Defined in Proarrow.Category.Instance.PreorderAsCategory

type (~>) Source Comments # 
Instance details

Defined in Proarrow.Category.Instance.PreorderAsCategory

type (~>) = PoAsCat :: POCATK k -> POCATK k -> Type
type TerminalObject Source Comments # 
Instance details

Defined in Proarrow.Category.Instance.PreorderAsCategory

type TerminalObject = 'PC ()
type Ob (a :: POCATK k) Source Comments # 
Instance details

Defined in Proarrow.Category.Instance.PreorderAsCategory

type Ob (a :: POCATK k) = (Is ('PC :: k -> POCATK k) a, COb (UN ('PC :: k -> POCATK k) a))
type (a :: POCATK Constraint) ** (b :: POCATK Constraint) Source Comments # 
Instance details

Defined in Proarrow.Category.Instance.PreorderAsCategory

type (a :: POCATK Constraint) ** (b :: POCATK Constraint) = a && b
type (l :: POCATK Constraint) && (r :: POCATK Constraint) Source Comments # 
Instance details

Defined in Proarrow.Category.Instance.PreorderAsCategory

type HasArrow (PoAsCat :: POCATK k -> POCATK k -> Type) ('PC a :: POCATK k) ('PC b :: POCATK k) Source Comments # 
Instance details

Defined in Proarrow.Category.Instance.PreorderAsCategory

type HasArrow (PoAsCat :: POCATK k -> POCATK k -> Type) ('PC a :: POCATK k) ('PC b :: POCATK k) = a <= b

data PoAsCat (a :: POCATK k) (b :: POCATK k) where Source Comments #

Constructors

PoAsCat :: forall {k} (a1 :: k) (b1 :: k). a1 <= b1 => PoAsCat ('PC a1) ('PC b1) 

Instances

Instances details
DaggerProfunctor (PoAsCat :: POCATK (DISCRETE k) -> POCATK (DISCRETE k) -> Type) Source Comments # 
Instance details

Defined in Proarrow.Category.Instance.PreorderAsCategory

Methods

dagger :: forall (a :: POCATK (DISCRETE k)) (b :: POCATK (DISCRETE k)). PoAsCat a b -> PoAsCat b a Source Comments #

PreorderOf k => Promonad (PoAsCat :: POCATK k -> POCATK k -> Type) Source Comments # 
Instance details

Defined in Proarrow.Category.Instance.PreorderAsCategory

Methods

id :: forall (a :: POCATK k). Ob a => PoAsCat a a Source Comments #

(.) :: forall (b :: POCATK k) (c :: POCATK k) (a :: POCATK k). PoAsCat b c -> PoAsCat a b -> PoAsCat a c Source Comments #

MonoidalProfunctor (PoAsCat :: POCATK Constraint -> POCATK Constraint -> Type) Source Comments # 
Instance details

Defined in Proarrow.Category.Instance.PreorderAsCategory

Methods

par0 :: PoAsCat (Unit :: POCATK Constraint) (Unit :: POCATK Constraint) Source Comments #

par :: forall (x1 :: POCATK Constraint) (x2 :: POCATK Constraint) (y1 :: POCATK Constraint) (y2 :: POCATK Constraint). PoAsCat x1 x2 -> PoAsCat y1 y2 -> PoAsCat (x1 ** y1) (x2 ** y2) Source Comments #

PreorderOf k => Profunctor (PoAsCat :: POCATK k -> POCATK k -> Type) Source Comments # 
Instance details

Defined in Proarrow.Category.Instance.PreorderAsCategory

Methods

dimap :: forall (c :: POCATK k) (a :: POCATK k) (b :: POCATK k) (d :: POCATK k). (c ~> a) -> (b ~> d) -> PoAsCat a b -> PoAsCat c d Source Comments #

(\\) :: forall (a :: POCATK k) (b :: POCATK k) r. ((Ob a, Ob b) => r) -> PoAsCat a b -> r Source Comments #

PreorderOf k => ThinProfunctor (PoAsCat :: POCATK k -> POCATK k -> Type) Source Comments # 
Instance details

Defined in Proarrow.Category.Instance.PreorderAsCategory

Methods

arr :: forall (a :: POCATK k) (b :: POCATK k). (Ob a, Ob b, HasArrow (PoAsCat :: POCATK k -> POCATK k -> Type) a b) => PoAsCat a b Source Comments #

withArr :: forall (a :: POCATK k) (b :: POCATK k) r. PoAsCat a b -> (HasArrow (PoAsCat :: POCATK k -> POCATK k -> Type) a b => r) -> r Source Comments #

type HasArrow (PoAsCat :: POCATK k -> POCATK k -> Type) ('PC a :: POCATK k) ('PC b :: POCATK k) Source Comments # 
Instance details

Defined in Proarrow.Category.Instance.PreorderAsCategory

type HasArrow (PoAsCat :: POCATK k -> POCATK k -> Type) ('PC a :: POCATK k) ('PC b :: POCATK k) = a <= b