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

Proarrow.Category.Instance.Zero

Documentation

data VOID Source Comments #

Instances

Instances details
CategoryOf VOID Source Comments #

The category with no objects, the initial category.

Instance details

Defined in Proarrow.Category.Instance.Zero

Associated Types

type (~>) 
Instance details

Defined in Proarrow.Category.Instance.Zero

type (~>) = Zero
type Ob (a :: VOID) 
Instance details

Defined in Proarrow.Category.Instance.Zero

type Ob (a :: VOID) = Bottom
DaggerProfunctor Zero Source Comments # 
Instance details

Defined in Proarrow.Category.Instance.Zero

Methods

dagger :: forall (a :: VOID) (b :: VOID). Zero a b -> Zero b a Source Comments #

Promonad Zero Source Comments # 
Instance details

Defined in Proarrow.Category.Instance.Zero

Methods

id :: forall (a :: VOID). Ob a => Zero a a Source Comments #

(.) :: forall (b :: VOID) (c :: VOID) (a :: VOID). Zero b c -> Zero a b -> Zero a c Source Comments #

Profunctor Zero Source Comments # 
Instance details

Defined in Proarrow.Category.Instance.Zero

Methods

dimap :: forall (c :: VOID) (a :: VOID) (b :: VOID) (d :: VOID). (c ~> a) -> (b ~> d) -> Zero a b -> Zero c d Source Comments #

(\\) :: forall (a :: VOID) (b :: VOID) r. ((Ob a, Ob b) => r) -> Zero a b -> r Source Comments #

ThinProfunctor Zero Source Comments # 
Instance details

Defined in Proarrow.Category.Instance.Zero

Associated Types

type HasArrow Zero (a :: VOID) (b :: VOID) 
Instance details

Defined in Proarrow.Category.Instance.Zero

type HasArrow Zero (a :: VOID) (b :: VOID) = ()

Methods

arr :: forall (a :: VOID) (b :: VOID). (Ob a, Ob b, HasArrow Zero a b) => Zero a b Source Comments #

withArr :: forall (a :: VOID) (b :: VOID) r. Zero a b -> (HasArrow Zero a b => r) -> r Source Comments #

HasInitialObject k => HasColimits (Unweighted :: VOID -> () -> Type) k Source Comments # 
Instance details

Defined in Proarrow.Category.Colimit

Methods

colimit :: forall (d :: VOID +-> k). Representable d => (d :.: (Unweighted :: VOID -> () -> Type)) :~> Colimit (Unweighted :: VOID -> () -> Type) d Source Comments #

colimitUniv :: forall (d :: VOID +-> k) (p :: () +-> k). (Representable d, Representable p) => ((d :.: (Unweighted :: VOID -> () -> Type)) :~> p) -> Colimit (Unweighted :: VOID -> () -> Type) d :~> p Source Comments #

HasTerminalObject k => HasLimits (Unweighted :: () -> VOID -> Type) k Source Comments # 
Instance details

Defined in Proarrow.Category.Limit

Methods

limit :: forall (d :: VOID +-> k). Representable d => (Limit (Unweighted :: () -> VOID -> Type) d :.: (Unweighted :: () -> VOID -> Type)) :~> d Source Comments #

limitUniv :: forall (d :: VOID +-> k) (p :: () +-> k). (Representable d, Representable p) => ((p :.: (Unweighted :: () -> VOID -> Type)) :~> d) -> p :~> Limit (Unweighted :: () -> VOID -> Type) d Source Comments #

type (~>) Source Comments # 
Instance details

Defined in Proarrow.Category.Instance.Zero

type (~>) = Zero
type Ob (a :: VOID) Source Comments # 
Instance details

Defined in Proarrow.Category.Instance.Zero

type Ob (a :: VOID) = Bottom
type HasArrow Zero (a :: VOID) (b :: VOID) Source Comments # 
Instance details

Defined in Proarrow.Category.Instance.Zero

type HasArrow Zero (a :: VOID) (b :: VOID) = ()
type Colimit (Unweighted :: VOID -> () -> Type) (d :: VOID +-> k) Source Comments # 
Instance details

Defined in Proarrow.Category.Colimit

type Colimit (Unweighted :: VOID -> () -> Type) (d :: VOID +-> k) = InitialLimit d
type Limit (Unweighted :: () -> VOID -> Type) (d :: VOID +-> k) Source Comments # 
Instance details

Defined in Proarrow.Category.Limit

type Limit (Unweighted :: () -> VOID -> Type) (d :: VOID +-> k) = TerminalLimit d

data Zero (a :: VOID) (b :: VOID) Source Comments #

Instances

Instances details
DaggerProfunctor Zero Source Comments # 
Instance details

Defined in Proarrow.Category.Instance.Zero

Methods

dagger :: forall (a :: VOID) (b :: VOID). Zero a b -> Zero b a Source Comments #

Promonad Zero Source Comments # 
Instance details

Defined in Proarrow.Category.Instance.Zero

Methods

id :: forall (a :: VOID). Ob a => Zero a a Source Comments #

(.) :: forall (b :: VOID) (c :: VOID) (a :: VOID). Zero b c -> Zero a b -> Zero a c Source Comments #

Profunctor Zero Source Comments # 
Instance details

Defined in Proarrow.Category.Instance.Zero

Methods

dimap :: forall (c :: VOID) (a :: VOID) (b :: VOID) (d :: VOID). (c ~> a) -> (b ~> d) -> Zero a b -> Zero c d Source Comments #

(\\) :: forall (a :: VOID) (b :: VOID) r. ((Ob a, Ob b) => r) -> Zero a b -> r Source Comments #

ThinProfunctor Zero Source Comments # 
Instance details

Defined in Proarrow.Category.Instance.Zero

Associated Types

type HasArrow Zero (a :: VOID) (b :: VOID) 
Instance details

Defined in Proarrow.Category.Instance.Zero

type HasArrow Zero (a :: VOID) (b :: VOID) = ()

Methods

arr :: forall (a :: VOID) (b :: VOID). (Ob a, Ob b, HasArrow Zero a b) => Zero a b Source Comments #

withArr :: forall (a :: VOID) (b :: VOID) r. Zero a b -> (HasArrow Zero a b => r) -> r Source Comments #

type HasArrow Zero (a :: VOID) (b :: VOID) Source Comments # 
Instance details

Defined in Proarrow.Category.Instance.Zero

type HasArrow Zero (a :: VOID) (b :: VOID) = ()

class Bottom where Source Comments #

Methods

no :: a Source Comments #