algebra-3.1: Constructive abstract algebra

Safe HaskellNone

Numeric.Algebra.Involutive

Contents

Synopsis

Involution

class Multiplicative r => InvolutiveMultiplication r whereSource

An semigroup with involution

 adjoint a * adjoint b = adjoint (b * a)

Methods

adjoint :: r -> rSource

Instances

InvolutiveMultiplication Bool 
InvolutiveMultiplication Int 
InvolutiveMultiplication Int8 
InvolutiveMultiplication Int16 
InvolutiveMultiplication Int32 
InvolutiveMultiplication Int64 
InvolutiveMultiplication Integer 
InvolutiveMultiplication Word 
InvolutiveMultiplication Word8 
InvolutiveMultiplication Word16 
InvolutiveMultiplication Word32 
InvolutiveMultiplication Word64 
InvolutiveMultiplication () 
InvolutiveMultiplication Natural 
InvolutiveMultiplication Euclidean 
(Multiplicative (Complex r), Commutative r, Rng r, InvolutiveMultiplication r) => InvolutiveMultiplication (Complex r) 
(Multiplicative (Quaternion r), TriviallyInvolutive r, Rng r) => InvolutiveMultiplication (Quaternion r) 
(Multiplicative (Dual r), Commutative r, Rng r, InvolutiveSemiring r) => InvolutiveMultiplication (Dual r) 
(Multiplicative (Hyper' r), Commutative r, InvolutiveSemiring r, Rng r) => InvolutiveMultiplication (Hyper' r) 
(Multiplicative (Hyper r), Commutative r, Group r, InvolutiveSemiring r) => InvolutiveMultiplication (Hyper r) 
(Multiplicative (Dual' r), Commutative r, Rng r, InvolutiveSemiring r) => InvolutiveMultiplication (Dual' r) 
(Multiplicative (Quaternion' r), TriviallyInvolutive r, Rng r) => InvolutiveMultiplication (Quaternion' r) 
(Multiplicative (Trig r), Commutative r, Rng r, InvolutiveMultiplication r) => InvolutiveMultiplication (Trig r) 
(Multiplicative (h -> r), InvolutiveAlgebra r h) => InvolutiveMultiplication (h -> r) 
(Multiplicative (a, b), InvolutiveMultiplication a, InvolutiveMultiplication b) => InvolutiveMultiplication (a, b) 
(Multiplicative (:->: h r), HasTrie h, InvolutiveAlgebra r h) => InvolutiveMultiplication (:->: h r) 
(Multiplicative (a, b, c), InvolutiveMultiplication a, InvolutiveMultiplication b, InvolutiveMultiplication c) => InvolutiveMultiplication (a, b, c) 
(Multiplicative (a, b, c, d), InvolutiveMultiplication a, InvolutiveMultiplication b, InvolutiveMultiplication c, InvolutiveMultiplication d) => InvolutiveMultiplication (a, b, c, d) 
(Multiplicative (a, b, c, d, e), InvolutiveMultiplication a, InvolutiveMultiplication b, InvolutiveMultiplication c, InvolutiveMultiplication d, InvolutiveMultiplication e) => InvolutiveMultiplication (a, b, c, d, e) 

class (Semiring r, InvolutiveMultiplication r) => InvolutiveSemiring r Source

adjoint (x + y) = adjoint x + adjoint y

Instances

InvolutiveSemiring Bool 
InvolutiveSemiring Int 
InvolutiveSemiring Int8 
InvolutiveSemiring Int16 
InvolutiveSemiring Int32 
InvolutiveSemiring Int64 
InvolutiveSemiring Integer 
InvolutiveSemiring Word 
InvolutiveSemiring Word8 
InvolutiveSemiring Word16 
InvolutiveSemiring Word32 
InvolutiveSemiring Word64 
InvolutiveSemiring () 
InvolutiveSemiring Natural 
InvolutiveSemiring Euclidean 
(Semiring (Complex r), InvolutiveMultiplication (Complex r), Commutative r, Rng r, InvolutiveSemiring r) => InvolutiveSemiring (Complex r) 
(Semiring (Dual r), InvolutiveMultiplication (Dual r), Commutative r, Rng r, InvolutiveSemiring r) => InvolutiveSemiring (Dual r) 
(Semiring (Hyper' r), InvolutiveMultiplication (Hyper' r), Commutative r, InvolutiveSemiring r, Rng r) => InvolutiveSemiring (Hyper' r) 
(Semiring (Hyper r), InvolutiveMultiplication (Hyper r), Commutative r, Group r, InvolutiveSemiring r) => InvolutiveSemiring (Hyper r) 
(Semiring (Dual' r), InvolutiveMultiplication (Dual' r), Commutative r, Rng r, InvolutiveSemiring r) => InvolutiveSemiring (Dual' r) 
(Semiring (Trig r), InvolutiveMultiplication (Trig r), Commutative r, Rng r, InvolutiveSemiring r) => InvolutiveSemiring (Trig r) 
(Semiring (a, b), InvolutiveMultiplication (a, b), InvolutiveSemiring a, InvolutiveSemiring b) => InvolutiveSemiring (a, b) 
(Semiring (a, b, c), InvolutiveMultiplication (a, b, c), InvolutiveSemiring a, InvolutiveSemiring b, InvolutiveSemiring c) => InvolutiveSemiring (a, b, c) 
(Semiring (a, b, c, d), InvolutiveMultiplication (a, b, c, d), InvolutiveSemiring a, InvolutiveSemiring b, InvolutiveSemiring c, InvolutiveSemiring d) => InvolutiveSemiring (a, b, c, d) 
(Semiring (a, b, c, d, e), InvolutiveMultiplication (a, b, c, d, e), InvolutiveSemiring a, InvolutiveSemiring b, InvolutiveSemiring c, InvolutiveSemiring d, InvolutiveSemiring e) => InvolutiveSemiring (a, b, c, d, e) 

Involutive Algebras

class (InvolutiveSemiring r, Algebra r a) => InvolutiveAlgebra r a whereSource

Methods

inv :: (a -> r) -> a -> rSource

Instances

(Algebra r (), InvolutiveSemiring r) => InvolutiveAlgebra r () 
(Algebra k ComplexBasis, InvolutiveSemiring k, Rng k) => InvolutiveAlgebra k ComplexBasis 
(Algebra r QuaternionBasis, TriviallyInvolutive r, InvolutiveSemiring r, Rng r) => InvolutiveAlgebra r QuaternionBasis 
(Algebra k DualBasis, InvolutiveSemiring k, Rng k) => InvolutiveAlgebra k DualBasis 
(Algebra k HyperBasis', Commutative k, Group k, InvolutiveSemiring k) => InvolutiveAlgebra k HyperBasis' 
(Algebra k HyperBasis, Commutative k, Group k, InvolutiveSemiring k) => InvolutiveAlgebra k HyperBasis 
(Algebra k DualBasis', InvolutiveSemiring k, Rng k) => InvolutiveAlgebra k DualBasis' 
(Algebra r QuaternionBasis', TriviallyInvolutive r, InvolutiveSemiring r, Rng r) => InvolutiveAlgebra r QuaternionBasis' 
(Algebra k TrigBasis, Commutative k, Group k, InvolutiveSemiring k) => InvolutiveAlgebra k TrigBasis 
(InvolutiveSemiring r, Algebra r (a, b), InvolutiveAlgebra r a, InvolutiveAlgebra r b) => InvolutiveAlgebra r (a, b) 
(InvolutiveSemiring r, Algebra r (a, b, c), InvolutiveAlgebra r a, InvolutiveAlgebra r b, InvolutiveAlgebra r c) => InvolutiveAlgebra r (a, b, c) 
(InvolutiveSemiring r, Algebra r (a, b, c, d), InvolutiveAlgebra r a, InvolutiveAlgebra r b, InvolutiveAlgebra r c, InvolutiveAlgebra r d) => InvolutiveAlgebra r (a, b, c, d) 
(InvolutiveSemiring r, Algebra r (a, b, c, d, e), InvolutiveAlgebra r a, InvolutiveAlgebra r b, InvolutiveAlgebra r c, InvolutiveAlgebra r d, InvolutiveAlgebra r e) => InvolutiveAlgebra r (a, b, c, d, e) 

class (InvolutiveSemiring r, Coalgebra r c) => InvolutiveCoalgebra r c whereSource

Methods

coinv :: (c -> r) -> c -> rSource

Instances

(Coalgebra r (), InvolutiveSemiring r) => InvolutiveCoalgebra r () 
(Coalgebra k ComplexBasis, InvolutiveSemiring k, Rng k) => InvolutiveCoalgebra k ComplexBasis 
(Coalgebra r QuaternionBasis, TriviallyInvolutive r, InvolutiveSemiring r, Rng r) => InvolutiveCoalgebra r QuaternionBasis 
(Coalgebra k DualBasis, InvolutiveSemiring k, Rng k) => InvolutiveCoalgebra k DualBasis 
(Coalgebra k HyperBasis', Commutative k, Group k, InvolutiveSemiring k) => InvolutiveCoalgebra k HyperBasis' 
(Coalgebra k HyperBasis, Commutative k, Group k, InvolutiveSemiring k) => InvolutiveCoalgebra k HyperBasis 
(Coalgebra k DualBasis', InvolutiveSemiring k, Rng k) => InvolutiveCoalgebra k DualBasis' 
(Coalgebra r QuaternionBasis', TriviallyInvolutive r, InvolutiveSemiring r, Rng r) => InvolutiveCoalgebra r QuaternionBasis' 
(Coalgebra k TrigBasis, Commutative k, Group k, InvolutiveSemiring k) => InvolutiveCoalgebra k TrigBasis 
(InvolutiveSemiring r, Coalgebra r (a, b), InvolutiveCoalgebra r a, InvolutiveCoalgebra r b) => InvolutiveCoalgebra r (a, b) 
(InvolutiveSemiring r, Coalgebra r (a, b, c), InvolutiveCoalgebra r a, InvolutiveCoalgebra r b, InvolutiveCoalgebra r c) => InvolutiveCoalgebra r (a, b, c) 
(InvolutiveSemiring r, Coalgebra r (a, b, c, d), InvolutiveCoalgebra r a, InvolutiveCoalgebra r b, InvolutiveCoalgebra r c, InvolutiveCoalgebra r d) => InvolutiveCoalgebra r (a, b, c, d) 
(InvolutiveSemiring r, Coalgebra r (a, b, c, d, e), InvolutiveCoalgebra r a, InvolutiveCoalgebra r b, InvolutiveCoalgebra r c, InvolutiveCoalgebra r d, InvolutiveCoalgebra r e) => InvolutiveCoalgebra r (a, b, c, d, e) 

Trivial Involution

class (Commutative r, InvolutiveMultiplication r) => TriviallyInvolutive r Source

 adjoint = id