linear-1.20.7: Linear Algebra

License BSD-style (see the file LICENSE) Edward Kmett provisional portable None Haskell98

Linear.Algebra

Description

Synopsis

Documentation

class Num r => Algebra r m where Source #

An associative unital algebra over a ring

Minimal complete definition

Methods

mult :: (m -> m -> r) -> m -> r Source #

unital :: r -> m -> r Source #

Instances

 Num r => Algebra r () Source # Methodsmult :: (() -> () -> r) -> () -> r Source #unital :: r -> () -> r Source # Num r => Algebra r Void Source # Methodsmult :: (Void -> Void -> r) -> Void -> r Source #unital :: r -> Void -> r Source # (Num r, TrivialConjugate r) => Algebra r (E Quaternion) Source # Methodsmult :: (E Quaternion -> E Quaternion -> r) -> E Quaternion -> r Source #unital :: r -> E Quaternion -> r Source # Num r => Algebra r (E Complex) Source # Methodsmult :: (E Complex -> E Complex -> r) -> E Complex -> r Source #unital :: r -> E Complex -> r Source # Num r => Algebra r (E V1) Source # Methodsmult :: (E V1 -> E V1 -> r) -> E V1 -> r Source #unital :: r -> E V1 -> r Source # Num r => Algebra r (E V0) Source # Methodsmult :: (E V0 -> E V0 -> r) -> E V0 -> r Source #unital :: r -> E V0 -> r Source # (Algebra r a, Algebra r b) => Algebra r (a, b) Source # Methodsmult :: ((a, b) -> (a, b) -> r) -> (a, b) -> r Source #unital :: r -> (a, b) -> r Source #

class Num r => Coalgebra r m where Source #

A coassociative counital coalgebra over a ring

Minimal complete definition

Methods

comult :: (m -> r) -> m -> m -> r Source #

counital :: (m -> r) -> r Source #

Instances

 Num r => Coalgebra r () Source # Methodscomult :: (() -> r) -> () -> () -> r Source #counital :: (() -> r) -> r Source # Num r => Coalgebra r Void Source # Methodscomult :: (Void -> r) -> Void -> Void -> r Source #counital :: (Void -> r) -> r Source # (Num r, TrivialConjugate r) => Coalgebra r (E Quaternion) Source # Methodscomult :: (E Quaternion -> r) -> E Quaternion -> E Quaternion -> r Source #counital :: (E Quaternion -> r) -> r Source # Num r => Coalgebra r (E Complex) Source # Methodscomult :: (E Complex -> r) -> E Complex -> E Complex -> r Source #counital :: (E Complex -> r) -> r Source # Num r => Coalgebra r (E V4) Source # Methodscomult :: (E V4 -> r) -> E V4 -> E V4 -> r Source #counital :: (E V4 -> r) -> r Source # Num r => Coalgebra r (E V3) Source # Methodscomult :: (E V3 -> r) -> E V3 -> E V3 -> r Source #counital :: (E V3 -> r) -> r Source # Num r => Coalgebra r (E V2) Source # Methodscomult :: (E V2 -> r) -> E V2 -> E V2 -> r Source #counital :: (E V2 -> r) -> r Source # Num r => Coalgebra r (E V1) Source # Methodscomult :: (E V1 -> r) -> E V1 -> E V1 -> r Source #counital :: (E V1 -> r) -> r Source # Num r => Coalgebra r (E V0) Source # Methodscomult :: (E V0 -> r) -> E V0 -> E V0 -> r Source #counital :: (E V0 -> r) -> r Source # (Coalgebra r m, Coalgebra r n) => Coalgebra r (m, n) Source # Methodscomult :: ((m, n) -> r) -> (m, n) -> (m, n) -> r Source #counital :: ((m, n) -> r) -> r Source #

multRep :: (Representable f, Algebra r (Rep f)) => f (f r) -> f r Source #

unitalRep :: (Representable f, Algebra r (Rep f)) => r -> f r Source #

comultRep :: (Representable f, Coalgebra r (Rep f)) => f r -> f (f r) Source #

counitalRep :: (Representable f, Coalgebra r (Rep f)) => f r -> r Source #