Safe Haskell | Safe-Inferred |
---|
- class Multiplicative r => InvolutiveMultiplication r where
- adjoint :: r -> r
- class (Semiring r, InvolutiveMultiplication r) => InvolutiveSemiring r
- class (InvolutiveSemiring r, Algebra r a) => InvolutiveAlgebra r a where
- inv :: (a -> r) -> a -> r
- class (InvolutiveSemiring r, Coalgebra r c) => InvolutiveCoalgebra r c where
- coinv :: (c -> r) -> c -> r
- class (Bialgebra r h, InvolutiveAlgebra r h, InvolutiveCoalgebra r h) => InvolutiveBialgebra r h
- class (Commutative r, InvolutiveMultiplication r) => TriviallyInvolutive r
- class (CommutativeAlgebra r a, TriviallyInvolutive r, InvolutiveAlgebra r a) => TriviallyInvolutiveAlgebra r a
- class (CocommutativeCoalgebra r a, TriviallyInvolutive r, InvolutiveCoalgebra r a) => TriviallyInvolutiveCoalgebra r a
- class (InvolutiveBialgebra r h, TriviallyInvolutiveAlgebra r h, TriviallyInvolutiveCoalgebra r h) => TriviallyInvolutiveBialgebra r h
Involution
class Multiplicative r => InvolutiveMultiplication r whereSource
An semigroup with involution
adjoint a * adjoint b = adjoint (b * a)
class (Semiring r, InvolutiveMultiplication r) => InvolutiveSemiring r Source
adjoint (x + y) = adjoint x + adjoint y
Involutive Algebras
class (InvolutiveSemiring r, Algebra r a) => InvolutiveAlgebra r a whereSource
class (InvolutiveSemiring r, Coalgebra r c) => InvolutiveCoalgebra r c whereSource
class (Bialgebra r h, InvolutiveAlgebra r h, InvolutiveCoalgebra r h) => InvolutiveBialgebra r h Source
(Bialgebra r h, InvolutiveAlgebra r h, InvolutiveCoalgebra r h) => InvolutiveBialgebra r h |
Trivial Involution
class (Commutative r, InvolutiveMultiplication r) => TriviallyInvolutive r Source
adjoint = id
class (CommutativeAlgebra r a, TriviallyInvolutive r, InvolutiveAlgebra r a) => TriviallyInvolutiveAlgebra r a Source
(TriviallyInvolutive r, InvolutiveSemiring r) => TriviallyInvolutiveAlgebra r () | |
(TriviallyInvolutiveAlgebra r a, TriviallyInvolutiveAlgebra r b) => TriviallyInvolutiveAlgebra r (a, b) | |
(TriviallyInvolutiveAlgebra r a, TriviallyInvolutiveAlgebra r b, TriviallyInvolutiveAlgebra r c) => TriviallyInvolutiveAlgebra r (a, b, c) | |
(TriviallyInvolutiveAlgebra r a, TriviallyInvolutiveAlgebra r b, TriviallyInvolutiveAlgebra r c, TriviallyInvolutiveAlgebra r d) => TriviallyInvolutiveAlgebra r (a, b, c, d) | |
(TriviallyInvolutiveAlgebra r a, TriviallyInvolutiveAlgebra r b, TriviallyInvolutiveAlgebra r c, TriviallyInvolutiveAlgebra r d, TriviallyInvolutiveAlgebra r e) => TriviallyInvolutiveAlgebra r (a, b, c, d, e) |
class (CocommutativeCoalgebra r a, TriviallyInvolutive r, InvolutiveCoalgebra r a) => TriviallyInvolutiveCoalgebra r a Source
(TriviallyInvolutive r, InvolutiveSemiring r) => TriviallyInvolutiveCoalgebra r () | |
(TriviallyInvolutiveCoalgebra r a, TriviallyInvolutiveCoalgebra r b) => TriviallyInvolutiveCoalgebra r (a, b) | |
(TriviallyInvolutiveCoalgebra r a, TriviallyInvolutiveCoalgebra r b, TriviallyInvolutiveCoalgebra r c) => TriviallyInvolutiveCoalgebra r (a, b, c) | |
(TriviallyInvolutiveCoalgebra r a, TriviallyInvolutiveCoalgebra r b, TriviallyInvolutiveCoalgebra r c, TriviallyInvolutiveCoalgebra r d) => TriviallyInvolutiveCoalgebra r (a, b, c, d) | |
(TriviallyInvolutiveCoalgebra r a, TriviallyInvolutiveCoalgebra r b, TriviallyInvolutiveCoalgebra r c, TriviallyInvolutiveCoalgebra r d, TriviallyInvolutiveCoalgebra r e) => TriviallyInvolutiveCoalgebra r (a, b, c, d, e) |
class (InvolutiveBialgebra r h, TriviallyInvolutiveAlgebra r h, TriviallyInvolutiveCoalgebra r h) => TriviallyInvolutiveBialgebra r h Source
(InvolutiveBialgebra r h, TriviallyInvolutiveAlgebra r h, TriviallyInvolutiveCoalgebra r h) => TriviallyInvolutiveBialgebra r h |