Safe Haskell | Safe |
---|---|
Language | Haskell98 |
- class Multiplicative r => Unital r where
- product :: (Foldable f, Unital r) => f r -> r
- class Algebra r a => UnitalAlgebra r a where
- class Coalgebra r c => CounitalCoalgebra r c where
- class (UnitalAlgebra r a, CounitalCoalgebra r a) => Bialgebra r a
Unital Multiplication (Multiplicative monoid)
class Multiplicative r => Unital r where Source #
pow :: r -> Natural -> r infixr 8 Source #
productWith :: Foldable f => (a -> r) -> f a -> r Source #
Unital Associative Algebra
class Algebra r a => UnitalAlgebra r a where Source #
An associative unital algebra over a semiring, built using a free module
Unital Coassociative Coalgebra
class Coalgebra r c => CounitalCoalgebra r c where Source #
Bialgebra
class (UnitalAlgebra r a, CounitalCoalgebra r a) => Bialgebra r a Source #
A bialgebra is both a unital algebra and counital coalgebra
where the mult
and unit
are compatible in some sense with
the comult
and counit
. That is to say that
mult
and unit
are a coalgebra homomorphisms or (equivalently) that
comult
and counit
are an algebra homomorphisms.
Semiring r => Bialgebra r () Source # | |
(Commutative k, Rng k) => Bialgebra k TrigBasis Source # | |
(TriviallyInvolutive r, Rng r) => Bialgebra r QuaternionBasis' Source # | |
(Commutative k, Semiring k) => Bialgebra k HyperBasis Source # | |
Rng k => Bialgebra k DualBasis' Source # | |
(TriviallyInvolutive r, Rng r) => Bialgebra r QuaternionBasis Source # | |
(Commutative k, Monoidal k, Semiring k) => Bialgebra k HyperBasis' Source # | |
Rng k => Bialgebra k DualBasis Source # | |
Rng k => Bialgebra k ComplexBasis Source # | |
(Monoidal r, Semiring r) => Bialgebra r (Seq a) Source # | |
(Monoidal r, Semiring r) => Bialgebra r [a] Source # | |
(Bialgebra r a, Bialgebra r b) => Bialgebra r (a, b) Source # | |
(Bialgebra r a, Bialgebra r b, Bialgebra r c) => Bialgebra r (a, b, c) Source # | |
(Bialgebra r a, Bialgebra r b, Bialgebra r c, Bialgebra r d) => Bialgebra r (a, b, c, d) Source # | |
(Bialgebra r a, Bialgebra r b, Bialgebra r c, Bialgebra r d, Bialgebra r e) => Bialgebra r (a, b, c, d, e) Source # | |