gasp-1.4.0.0: A framework of algebraic classes
Safe HaskellSafe-Inferred
LanguageHaskell2010

Algebra.Category.NatTrans

Documentation

newtype NatTrans (f :: Type -> Type) (g :: Type -> Type) Source #

Constructors

NatTrans (forall x. f x -> g x) 

Instances

Instances details
Category NatTrans Source # 
Instance details

Defined in Algebra.Category.NatTrans

Associated Types

type Obj NatTrans :: k -> Constraint Source #

Methods

(.) :: forall (a :: k) (b :: k) (c :: k). (Obj NatTrans a, Obj NatTrans b, Obj NatTrans c) => NatTrans b c -> NatTrans a b -> NatTrans a c Source #

id :: forall (a :: k). Obj NatTrans a => NatTrans a a Source #

Monoidal ((⊗) :: (Type -> Type) -> (Type -> Type) -> Type -> Type) (One :: Type -> Type) NatTrans Source # 
Instance details

Defined in Algebra.Category.NatTrans

Methods

(⊗) :: forall (a :: k) (b :: k) (c :: k) (d :: k). (Obj NatTrans a, Obj NatTrans b, Obj NatTrans c, Obj NatTrans d) => NatTrans a b -> NatTrans c d -> NatTrans (a c) (b d) Source #

assoc :: forall (a :: k) (b :: k) (c :: k). (Obj NatTrans a, Obj NatTrans b, Obj NatTrans c) => NatTrans ((a b) c) (a (b c)) Source #

assoc_ :: forall (a :: k) (b :: k) (c :: k). (Obj NatTrans a, Obj NatTrans b, Obj NatTrans c) => NatTrans (a (b c)) ((a b) c) Source #

unitorR :: forall (a :: k). (Obj NatTrans a, Obj NatTrans One) => NatTrans a (a One) Source #

unitorR_ :: forall (a :: k). (Obj NatTrans a, Obj NatTrans One) => NatTrans (a One) a Source #

unitorL :: forall (a :: k). (Obj NatTrans a, Obj NatTrans One) => NatTrans a (One a) Source #

unitorL_ :: forall (a :: k). (Obj NatTrans a, Obj NatTrans One) => NatTrans (One a) a Source #

Monoidal ((∘) :: (Type -> Type) -> (Type -> Type) -> Type -> Type) Id NatTrans Source # 
Instance details

Defined in Algebra.Category.NatTrans

Methods

(⊗) :: forall (a :: k) (b :: k) (c :: k) (d :: k). (Obj NatTrans a, Obj NatTrans b, Obj NatTrans c, Obj NatTrans d) => NatTrans a b -> NatTrans c d -> NatTrans (a c) (b d) Source #

assoc :: forall (a :: k) (b :: k) (c :: k). (Obj NatTrans a, Obj NatTrans b, Obj NatTrans c) => NatTrans ((a b) c) (a (b c)) Source #

assoc_ :: forall (a :: k) (b :: k) (c :: k). (Obj NatTrans a, Obj NatTrans b, Obj NatTrans c) => NatTrans (a (b c)) ((a b) c) Source #

unitorR :: forall (a :: k). (Obj NatTrans a, Obj NatTrans Id) => NatTrans a (a Id) Source #

unitorR_ :: forall (a :: k). (Obj NatTrans a, Obj NatTrans Id) => NatTrans (a Id) a Source #

unitorL :: forall (a :: k). (Obj NatTrans a, Obj NatTrans Id) => NatTrans a (Id a) Source #

unitorL_ :: forall (a :: k). (Obj NatTrans a, Obj NatTrans Id) => NatTrans (Id a) a Source #

type Obj NatTrans Source # 
Instance details

Defined in Algebra.Category.NatTrans