interface TensorMonoid : Cont -> Type Its extension is an applicative functor
All Naperian containers, BinTree, BinTreeLeaf, List, Maybe,...
Parameters: c
Methods:
tensorN : Scalar =%> c tensorM : (c >< c) =%> c
Implementations:
TensorMonoid Maybe TensorMonoid Either TensorMonoid List IsNaperian c => TensorMonoid c TensorMonoid BinTree TensorMonoid BinTreeLeaf
tensorN : TensorMonoid c => Scalar =%> c- Visibility: public export
tensorM : TensorMonoid c => (c >< c) =%> c- Visibility: public export
interface TensorComonoid : Cont -> Type- Parameters: c
Methods:
tensorCounit : c =%> Scalar tensorComult : c =%> (c >< c)
Implementation: SeqComonoid c -> TensorComonoid c
tensorCounit : TensorComonoid c => c =%> Scalar- Visibility: public export
tensorComult : TensorComonoid c => c =%> (c >< c)- Visibility: public export
interface SeqMonoid : Cont -> Type Its extension is a monad
Just as Applicative => Monad, here TensorMonoid => SeqMonoid
Parameters: c
Constraints: TensorMonoid c
Methods:
seqM : (c >@ c) =%> c
Implementations:
SeqMonoid List IsNaperian c => SeqMonoid c
seqM : SeqMonoid c => (c >@ c) =%> c- Visibility: public export
interface SeqComonoid : Cont -> Type These are directed containers, a.k.a. categories
Does this interface constraint follow analogously?
Parameters: c
Constraints: TensorComonoid c
Methods:
seqComult : c =%> (c >@ c)
seqComult : SeqComonoid c => c =%> (c >@ c)- Visibility: public export
interface CoprodMonoid : Cont -> Type- Parameters: c
Methods:
plusN : Empty =%> c plusM : (c >+< c) =%> c
plusN : CoprodMonoid c => Empty =%> c- Visibility: public export
plusM : CoprodMonoid c => (c >+< c) =%> c- Visibility: public export
interface ProdMonoid : Cont -> Type Its extension is an Alternative?
Parameters: c
Methods:
prodN : UnitCont =%> c prodM : (c >*< c) =%> c
prodN : ProdMonoid c => UnitCont =%> c- Visibility: public export
prodM : ProdMonoid c => (c >*< c) =%> c- Visibility: public export
pairExtensions : Ext c a -> Ext d b -> Ext (c >< d) (a, b)- Visibility: public export
liftA2Ext : TensorMonoid c => Ext c a -> Ext c b -> Ext c (a, b)- Visibility: public export