| Safe Haskell | Safe-Infered | 
|---|
Numeric.Algebra.Unital
Contents
- class Multiplicative r => Unital r  where
- one :: r
 - pow :: Whole n => r -> n -> r
 - productWith :: Foldable f => (a -> r) -> f a -> r
 
 - product :: (Foldable f, Unital r) => f r -> r
 - class Algebra r a => UnitalAlgebra r a  where
- unit :: r -> a -> r
 
 - class Coalgebra r c => CounitalCoalgebra r c  where
- counit :: (c -> r) -> r
 
 - class (UnitalAlgebra r a, CounitalCoalgebra r a) => Bialgebra r a
 
Unital Multiplication (Multiplicative monoid)
class Multiplicative r => Unital r whereSource
Instances
Unital Associative Algebra
class Algebra r a => UnitalAlgebra r a whereSource
An associative unital algebra over a semiring, built using a free module
Instances
Unital Coassociative Coalgebra
class Coalgebra r c => CounitalCoalgebra r c whereSource
Instances
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.
Instances
| Semiring r => Bialgebra r () | |
| Rng k => Bialgebra k ComplexBasis | |
| (TriviallyInvolutive r, Rng r) => Bialgebra r QuaternionBasis | |
| Rng k => Bialgebra k DualBasis | |
| (Commutative k, Monoidal k, Semiring k) => Bialgebra k HyperBasis' | |
| (Commutative k, Semiring k) => Bialgebra k HyperBasis | |
| Rng k => Bialgebra k DualBasis' | |
| (TriviallyInvolutive r, Rng r) => Bialgebra r QuaternionBasis' | |
| (Commutative k, Rng k) => Bialgebra k TrigBasis | |
| (Monoidal r, Semiring r) => Bialgebra r (Seq a) | |
| (Monoidal r, Semiring r) => Bialgebra r [a] | |
| (Bialgebra r a, Bialgebra r b) => Bialgebra r (a, b) | |
| (Bialgebra r a, Bialgebra r b, Bialgebra r c) => Bialgebra r (a, b, c) | |
| (Bialgebra r a, Bialgebra r b, Bialgebra r c, Bialgebra r d) => Bialgebra r (a, b, c, d) | |
| (Bialgebra r a, Bialgebra r b, Bialgebra r c, Bialgebra r d, Bialgebra r e) => Bialgebra r (a, b, c, d, e) |