HaskellForMaths-0.4.9: Combinatorics, group theory, commutative algebra, non-commutative algebra

Safe HaskellSafe
LanguageHaskell98

Math.Algebras.Structures

Contents

Description

A module defining various algebraic structures that can be defined on vector spaces - specifically algebra, coalgebra, bialgebra, Hopf algebra, module, comodule

Synopsis

Documentation

class Mon m where Source #

Monoid

Methods

munit :: m Source #

mmult :: m -> m -> m Source #

Instances
Mon LaurentMonomial Source # 
Instance details

Defined in Math.Algebras.LaurentPoly

Mon [a] Source # 
Instance details

Defined in Math.QuantumAlgebra.Tangle

Methods

munit :: [a] Source #

mmult :: [a] -> [a] -> [a] Source #

Ord v => Mon (Grevlex v) Source # 
Instance details

Defined in Math.CommutativeAlgebra.Polynomial

Methods

munit :: Grevlex v Source #

mmult :: Grevlex v -> Grevlex v -> Grevlex v Source #

Ord v => Mon (Glex v) Source # 
Instance details

Defined in Math.CommutativeAlgebra.Polynomial

Methods

munit :: Glex v Source #

mmult :: Glex v -> Glex v -> Glex v Source #

Ord v => Mon (Lex v) Source # 
Instance details

Defined in Math.CommutativeAlgebra.Polynomial

Methods

munit :: Lex v Source #

mmult :: Lex v -> Lex v -> Lex v Source #

Ord v => Mon (MonImpl v) Source # 
Instance details

Defined in Math.CommutativeAlgebra.Polynomial

Methods

munit :: MonImpl v Source #

mmult :: MonImpl v -> MonImpl v -> MonImpl v Source #

Ord a => Mon (SymmetricAlgebra a) Source # 
Instance details

Defined in Math.Algebras.TensorAlgebra

Mon (TensorAlgebra a) Source # 
Instance details

Defined in Math.Algebras.TensorAlgebra

Mon (NonComMonomial v) Source # 
Instance details

Defined in Math.Algebras.NonCommutative

(Mon a, Mon b) => Mon (Elim2 a b) Source # 
Instance details

Defined in Math.CommutativeAlgebra.Polynomial

Methods

munit :: Elim2 a b Source #

mmult :: Elim2 a b -> Elim2 a b -> Elim2 a b Source #

class Algebra k b where Source #

Caution: If we declare an instance Algebra k b, then we are saying that the vector space Vect k b is a k-algebra. In other words, we are saying that b is the basis for a k-algebra. So a more accurate name for this class would have been AlgebraBasis.

Methods

unit :: k -> Vect k b Source #

mult :: Vect k (Tensor b b) -> Vect k b Source #

Instances
(Eq k, Num k) => Algebra k () Source # 
Instance details

Defined in Math.Algebras.Structures

Methods

unit :: k -> Vect k () Source #

mult :: Vect k (Tensor () ()) -> Vect k () Source #

(Eq k, Num k) => Algebra k HBasis Source # 
Instance details

Defined in Math.Algebras.Quaternions

(Eq k, Num k) => Algebra k NSym Source # 
Instance details

Defined in Math.Combinatorics.CombinatorialHopfAlgebra

Methods

unit :: k -> Vect k NSym Source #

mult :: Vect k (Tensor NSym NSym) -> Vect k NSym Source #

(Eq k, Num k) => Algebra k SymH Source # 
Instance details

Defined in Math.Combinatorics.CombinatorialHopfAlgebra

Methods

unit :: k -> Vect k SymH Source #

mult :: Vect k (Tensor SymH SymH) -> Vect k SymH Source #

(Eq k, Num k) => Algebra k SymE Source # 
Instance details

Defined in Math.Combinatorics.CombinatorialHopfAlgebra

Methods

unit :: k -> Vect k SymE Source #

mult :: Vect k (Tensor SymE SymE) -> Vect k SymE Source #

(Eq k, Num k) => Algebra k SymM Source # 
Instance details

Defined in Math.Combinatorics.CombinatorialHopfAlgebra

Methods

unit :: k -> Vect k SymM Source #

mult :: Vect k (Tensor SymM SymM) -> Vect k SymM Source #

(Eq k, Num k) => Algebra k QSymF Source # 
Instance details

Defined in Math.Combinatorics.CombinatorialHopfAlgebra

Methods

unit :: k -> Vect k QSymF Source #

mult :: Vect k (Tensor QSymF QSymF) -> Vect k QSymF Source #

(Eq k, Num k) => Algebra k QSymM Source # 
Instance details

Defined in Math.Combinatorics.CombinatorialHopfAlgebra

Methods

unit :: k -> Vect k QSymM Source #

mult :: Vect k (Tensor QSymM QSymM) -> Vect k QSymM Source #

(Eq k, Num k) => Algebra k YSymM Source # 
Instance details

Defined in Math.Combinatorics.CombinatorialHopfAlgebra

Methods

unit :: k -> Vect k YSymM Source #

mult :: Vect k (Tensor YSymM YSymM) -> Vect k YSymM Source #

(Eq k, Num k) => Algebra k SSymM Source # 
Instance details

Defined in Math.Combinatorics.CombinatorialHopfAlgebra

Methods

unit :: k -> Vect k SSymM Source #

mult :: Vect k (Tensor SSymM SSymM) -> Vect k SSymM Source #

(Eq k, Num k) => Algebra k SSymF Source # 
Instance details

Defined in Math.Combinatorics.CombinatorialHopfAlgebra

Methods

unit :: k -> Vect k SSymF Source #

mult :: Vect k (Tensor SSymF SSymF) -> Vect k SSymF Source #

(Eq k, Num k) => Algebra k OBasis Source # 
Instance details

Defined in Math.Algebras.Octonions

(Eq k, Num k) => Algebra k M3 Source # 
Instance details

Defined in Math.Algebras.Matrix

Methods

unit :: k -> Vect k M3 Source #

mult :: Vect k (Tensor M3 M3) -> Vect k M3 Source #

(Eq k, Num k) => Algebra k Mat2 Source # 
Instance details

Defined in Math.Algebras.Matrix

Methods

unit :: k -> Vect k Mat2 Source #

mult :: Vect k (Tensor Mat2 Mat2) -> Vect k Mat2 Source #

(Eq k, Num k) => Algebra k LaurentMonomial Source # 
Instance details

Defined in Math.Algebras.LaurentPoly

(Eq k, Num k) => Algebra k QNFBasis Source # 
Instance details

Defined in Math.NumberTheory.QuadraticField

(Eq k, Num k, Ord b, Algebra k b) => Algebra k (Op b) Source # 
Instance details

Defined in Math.Algebras.Structures

Methods

unit :: k -> Vect k (Op b) Source #

mult :: Vect k (Tensor (Op b) (Op b)) -> Vect k (Op b) Source #

(Eq k, Num k, Ord v, Show v) => Algebra k (Grevlex v) Source # 
Instance details

Defined in Math.CommutativeAlgebra.Polynomial

Methods

unit :: k -> Vect k (Grevlex v) Source #

mult :: Vect k (Tensor (Grevlex v) (Grevlex v)) -> Vect k (Grevlex v) Source #

(Eq k, Num k, Ord v, Show v) => Algebra k (Glex v) Source # 
Instance details

Defined in Math.CommutativeAlgebra.Polynomial

Methods

unit :: k -> Vect k (Glex v) Source #

mult :: Vect k (Tensor (Glex v) (Glex v)) -> Vect k (Glex v) Source #

(Eq k, Num k, Ord v, Show v) => Algebra k (Lex v) Source # 
Instance details

Defined in Math.CommutativeAlgebra.Polynomial

Methods

unit :: k -> Vect k (Lex v) Source #

mult :: Vect k (Tensor (Lex v) (Lex v)) -> Vect k (Lex v) Source #

(Eq k, Num k) => Algebra k (Permutation Int) Source # 
Instance details

Defined in Math.Algebras.GroupAlgebra

(Eq k, Num k, Ord a) => Algebra k (YSymF a) Source # 
Instance details

Defined in Math.Combinatorics.CombinatorialHopfAlgebra

Methods

unit :: k -> Vect k (YSymF a) Source #

mult :: Vect k (Tensor (YSymF a) (YSymF a)) -> Vect k (YSymF a) Source #

(Eq k, Num k) => Algebra k (Dual SSymF) Source # 
Instance details

Defined in Math.Combinatorics.CombinatorialHopfAlgebra

Methods

unit :: k -> Vect k (Dual SSymF) Source #

mult :: Vect k (Tensor (Dual SSymF) (Dual SSymF)) -> Vect k (Dual SSymF) Source #

(Eq k, Num k, Ord a) => Algebra k (Shuffle a) Source # 
Instance details

Defined in Math.Combinatorics.CombinatorialHopfAlgebra

Methods

unit :: k -> Vect k (Shuffle a) Source #

mult :: Vect k (Tensor (Shuffle a) (Shuffle a)) -> Vect k (Shuffle a) Source #

(Eq k, Num k, Ord a) => Algebra k (Interval a) Source #

The incidence algebra of a poset is the free k-vector space having as its basis the set of intervals in the poset, with multiplication defined by concatenation of intervals. The incidence algebra can also be thought of as the vector space of functions from intervals to k, with multiplication defined by the convolution (f*g)(x,y) = sum [ f(x,z) g(z,y) | x <= z <= y ].

Instance details

Defined in Math.Combinatorics.IncidenceAlgebra

Methods

unit :: k -> Vect k (Interval a) Source #

mult :: Vect k (Tensor (Interval a) (Interval a)) -> Vect k (Interval a) Source #

(Eq k, Num k, Ord a) => Algebra k (ExteriorAlgebra a) Source # 
Instance details

Defined in Math.Algebras.TensorAlgebra

(Eq k, Num k, Ord a) => Algebra k (SymmetricAlgebra a) Source # 
Instance details

Defined in Math.Algebras.TensorAlgebra

(Eq k, Num k, Ord a) => Algebra k (TensorAlgebra a) Source # 
Instance details

Defined in Math.Algebras.TensorAlgebra

(Eq k, Num k, Ord v) => Algebra k (NonComMonomial v) Source # 
Instance details

Defined in Math.Algebras.NonCommutative

(Eq k, Num k, Ord v) => Algebra k (GlexMonomial v) Source # 
Instance details

Defined in Math.Algebras.Commutative

(Eq k, Num k, Ord a) => Algebra k [a] Source # 
Instance details

Defined in Math.QuantumAlgebra.Tangle

Methods

unit :: k -> Vect k [a] Source #

mult :: Vect k (Tensor [a] [a]) -> Vect k [a] Source #

Algebra Q (SL2 ABCD) Source # 
Instance details

Defined in Math.Algebras.AffinePlane

Methods

unit :: Q -> Vect Q (SL2 ABCD) Source #

mult :: Vect Q (Tensor (SL2 ABCD) (SL2 ABCD)) -> Vect Q (SL2 ABCD) Source #

(Eq k, Num k, Ord a, Ord b, Algebra k a, Algebra k b) => Algebra k (Tensor a b) Source #

The tensor product of k-algebras can itself be given the structure of a k-algebra

Instance details

Defined in Math.Algebras.Structures

Methods

unit :: k -> Vect k (Tensor a b) Source #

mult :: Vect k (Tensor (Tensor a b) (Tensor a b)) -> Vect k (Tensor a b) Source #

(Eq k, Num k, Ord a, Ord b, Algebra k a, Algebra k b) => Algebra k (DSum a b) Source #

The direct sum of k-algebras can itself be given the structure of a k-algebra. This is the product object in the category of k-algebras.

Instance details

Defined in Math.Algebras.Structures

Methods

unit :: k -> Vect k (DSum a b) Source #

mult :: Vect k (Tensor (DSum a b) (DSum a b)) -> Vect k (DSum a b) Source #

(Eq k, Num k, Ord a, Mon a, Ord b, Mon b) => Algebra k (Elim2 a b) Source # 
Instance details

Defined in Math.CommutativeAlgebra.Polynomial

Methods

unit :: k -> Vect k (Elim2 a b) Source #

mult :: Vect k (Tensor (Elim2 a b) (Elim2 a b)) -> Vect k (Elim2 a b) Source #

Algebra (LaurentPoly Q) (SL2q String) Source # 
Instance details

Defined in Math.QuantumAlgebra.QuantumPlane

Algebra (LaurentPoly Q) (M2q String) Source # 
Instance details

Defined in Math.QuantumAlgebra.QuantumPlane

Algebra (LaurentPoly Q) (Aq02 String) Source # 
Instance details

Defined in Math.QuantumAlgebra.QuantumPlane

Algebra (LaurentPoly Q) (Aq20 String) Source # 
Instance details

Defined in Math.QuantumAlgebra.QuantumPlane

unit' :: (Eq k, Num k, Algebra k b) => Vect k () -> Vect k b Source #

Sometimes it is more convenient to work with this version of unit.

class Coalgebra k b where Source #

An instance declaration for Coalgebra k b is saying that the vector space Vect k b is a k-coalgebra.

Methods

counit :: Vect k b -> k Source #

comult :: Vect k b -> Vect k (Tensor b b) Source #

Instances
(Eq k, Num k) => Coalgebra k EBasis Source # 
Instance details

Defined in Math.Algebras.Structures

(Eq k, Num k) => Coalgebra k () Source # 
Instance details

Defined in Math.Algebras.Structures

Methods

counit :: Vect k () -> k Source #

comult :: Vect k () -> Vect k (Tensor () ()) Source #

(Eq k, Num k) => Coalgebra k NSym Source # 
Instance details

Defined in Math.Combinatorics.CombinatorialHopfAlgebra

Methods

counit :: Vect k NSym -> k Source #

comult :: Vect k NSym -> Vect k (Tensor NSym NSym) Source #

(Eq k, Num k) => Coalgebra k SymH Source # 
Instance details

Defined in Math.Combinatorics.CombinatorialHopfAlgebra

Methods

counit :: Vect k SymH -> k Source #

comult :: Vect k SymH -> Vect k (Tensor SymH SymH) Source #

(Eq k, Num k) => Coalgebra k SymE Source # 
Instance details

Defined in Math.Combinatorics.CombinatorialHopfAlgebra

Methods

counit :: Vect k SymE -> k Source #

comult :: Vect k SymE -> Vect k (Tensor SymE SymE) Source #

(Eq k, Num k) => Coalgebra k SymM Source # 
Instance details

Defined in Math.Combinatorics.CombinatorialHopfAlgebra

Methods

counit :: Vect k SymM -> k Source #

comult :: Vect k SymM -> Vect k (Tensor SymM SymM) Source #

(Eq k, Num k) => Coalgebra k QSymF Source # 
Instance details

Defined in Math.Combinatorics.CombinatorialHopfAlgebra

(Eq k, Num k) => Coalgebra k QSymM Source # 
Instance details

Defined in Math.Combinatorics.CombinatorialHopfAlgebra

(Eq k, Num k) => Coalgebra k YSymM Source # 
Instance details

Defined in Math.Combinatorics.CombinatorialHopfAlgebra

(Eq k, Num k) => Coalgebra k SSymM Source # 
Instance details

Defined in Math.Combinatorics.CombinatorialHopfAlgebra

(Eq k, Num k) => Coalgebra k SSymF Source # 
Instance details

Defined in Math.Combinatorics.CombinatorialHopfAlgebra

(Eq k, Num k) => Coalgebra k Mat2' Source # 
Instance details

Defined in Math.Algebras.Matrix

(Eq k, Num k, Ord m, Mon m) => Coalgebra k (MonoidCoalgebra m) Source # 
Instance details

Defined in Math.Algebras.Structures

(Eq k, Num k) => Coalgebra k (SetCoalgebra b) Source # 
Instance details

Defined in Math.Algebras.Structures

(Eq k, Num k, Ord b, Coalgebra k b) => Coalgebra k (Op b) Source # 
Instance details

Defined in Math.Algebras.Structures

Methods

counit :: Vect k (Op b) -> k Source #

comult :: Vect k (Op b) -> Vect k (Tensor (Op b) (Op b)) Source #

(Eq k, Num k) => Coalgebra k (Dual HBasis) Source # 
Instance details

Defined in Math.Algebras.Quaternions

(Eq k, Num k) => Coalgebra k (Permutation Int) Source # 
Instance details

Defined in Math.Algebras.GroupAlgebra

(Eq k, Num k, Ord a) => Coalgebra k (YSymF a) Source # 
Instance details

Defined in Math.Combinatorics.CombinatorialHopfAlgebra

Methods

counit :: Vect k (YSymF a) -> k Source #

comult :: Vect k (YSymF a) -> Vect k (Tensor (YSymF a) (YSymF a)) Source #

(Eq k, Num k) => Coalgebra k (Dual SSymF) Source # 
Instance details

Defined in Math.Combinatorics.CombinatorialHopfAlgebra

(Eq k, Num k, Ord a) => Coalgebra k (Shuffle a) Source # 
Instance details

Defined in Math.Combinatorics.CombinatorialHopfAlgebra

Methods

counit :: Vect k (Shuffle a) -> k Source #

comult :: Vect k (Shuffle a) -> Vect k (Tensor (Shuffle a) (Shuffle a)) Source #

(Eq k, Num k, Ord a) => Coalgebra k (Interval a) Source # 
Instance details

Defined in Math.Combinatorics.IncidenceAlgebra

Methods

counit :: Vect k (Interval a) -> k Source #

comult :: Vect k (Interval a) -> Vect k (Tensor (Interval a) (Interval a)) Source #

(Eq k, Num k, Ord c) => Coalgebra k (TensorCoalgebra c) Source # 
Instance details

Defined in Math.Algebras.TensorAlgebra

(Eq k, Num k) => Coalgebra k (GlexMonomial v) Source # 
Instance details

Defined in Math.Algebras.Commutative

Coalgebra Q (SL2 ABCD) Source # 
Instance details

Defined in Math.Algebras.AffinePlane

(Eq k, Num k, Ord a, Ord b, Coalgebra k a, Coalgebra k b) => Coalgebra k (Tensor a b) Source #

The tensor product of k-coalgebras can itself be given the structure of a k-coalgebra

Instance details

Defined in Math.Algebras.Structures

Methods

counit :: Vect k (Tensor a b) -> k Source #

comult :: Vect k (Tensor a b) -> Vect k (Tensor (Tensor a b) (Tensor a b)) Source #

(Eq k, Num k, Ord a, Ord b, Coalgebra k a, Coalgebra k b) => Coalgebra k (DSum a b) Source #

The direct sum of k-coalgebras can itself be given the structure of a k-coalgebra. This is the coproduct object in the category of k-coalgebras.

Instance details

Defined in Math.Algebras.Structures

Methods

counit :: Vect k (DSum a b) -> k Source #

comult :: Vect k (DSum a b) -> Vect k (Tensor (DSum a b) (DSum a b)) Source #

Coalgebra (LaurentPoly Q) (SL2q String) Source # 
Instance details

Defined in Math.QuantumAlgebra.QuantumPlane

Coalgebra (LaurentPoly Q) (M2q String) Source # 
Instance details

Defined in Math.QuantumAlgebra.QuantumPlane

counit' :: (Eq k, Num k, Coalgebra k b) => Vect k b -> Vect k () Source #

Sometimes it is more convenient to work with this version of counit.

class (Algebra k b, Coalgebra k b) => Bialgebra k b Source #

A bialgebra is an algebra which is also a coalgebra, subject to the compatibility conditions that counit and comult must be algebra morphisms (or equivalently, that unit and mult must be coalgebra morphisms)

Instances
(Eq k, Num k) => Bialgebra k NSym Source # 
Instance details

Defined in Math.Combinatorics.CombinatorialHopfAlgebra

(Eq k, Num k) => Bialgebra k SymH Source # 
Instance details

Defined in Math.Combinatorics.CombinatorialHopfAlgebra

(Eq k, Num k) => Bialgebra k SymE Source # 
Instance details

Defined in Math.Combinatorics.CombinatorialHopfAlgebra

(Eq k, Num k) => Bialgebra k SymM Source # 
Instance details

Defined in Math.Combinatorics.CombinatorialHopfAlgebra

(Eq k, Num k) => Bialgebra k QSymF Source # 
Instance details

Defined in Math.Combinatorics.CombinatorialHopfAlgebra

(Eq k, Num k) => Bialgebra k QSymM Source # 
Instance details

Defined in Math.Combinatorics.CombinatorialHopfAlgebra

(Eq k, Num k) => Bialgebra k YSymM Source # 
Instance details

Defined in Math.Combinatorics.CombinatorialHopfAlgebra

(Eq k, Num k) => Bialgebra k SSymM Source # 
Instance details

Defined in Math.Combinatorics.CombinatorialHopfAlgebra

(Eq k, Num k) => Bialgebra k SSymF Source # 
Instance details

Defined in Math.Combinatorics.CombinatorialHopfAlgebra

(Eq k, Num k) => Bialgebra k (Permutation Int) Source # 
Instance details

Defined in Math.Algebras.GroupAlgebra

(Eq k, Num k, Ord a) => Bialgebra k (YSymF a) Source # 
Instance details

Defined in Math.Combinatorics.CombinatorialHopfAlgebra

(Eq k, Num k) => Bialgebra k (Dual SSymF) Source # 
Instance details

Defined in Math.Combinatorics.CombinatorialHopfAlgebra

(Eq k, Num k, Ord a) => Bialgebra k (Shuffle a) Source # 
Instance details

Defined in Math.Combinatorics.CombinatorialHopfAlgebra

Bialgebra Q (SL2 ABCD) Source # 
Instance details

Defined in Math.Algebras.AffinePlane

Bialgebra (LaurentPoly Q) (SL2q String) Source # 
Instance details

Defined in Math.QuantumAlgebra.QuantumPlane

Bialgebra (LaurentPoly Q) (M2q String) Source # 
Instance details

Defined in Math.QuantumAlgebra.QuantumPlane

class Bialgebra k b => HopfAlgebra k b where Source #

Methods

antipode :: Vect k b -> Vect k b Source #

Instances
(Eq k, Num k) => HopfAlgebra k NSym Source # 
Instance details

Defined in Math.Combinatorics.CombinatorialHopfAlgebra

Methods

antipode :: Vect k NSym -> Vect k NSym Source #

(Eq k, Num k) => HopfAlgebra k SymM Source # 
Instance details

Defined in Math.Combinatorics.CombinatorialHopfAlgebra

Methods

antipode :: Vect k SymM -> Vect k SymM Source #

(Eq k, Num k) => HopfAlgebra k QSymF Source # 
Instance details

Defined in Math.Combinatorics.CombinatorialHopfAlgebra

Methods

antipode :: Vect k QSymF -> Vect k QSymF Source #

(Eq k, Num k) => HopfAlgebra k QSymM Source # 
Instance details

Defined in Math.Combinatorics.CombinatorialHopfAlgebra

Methods

antipode :: Vect k QSymM -> Vect k QSymM Source #

(Eq k, Num k) => HopfAlgebra k YSymM Source # 
Instance details

Defined in Math.Combinatorics.CombinatorialHopfAlgebra

Methods

antipode :: Vect k YSymM -> Vect k YSymM Source #

(Eq k, Num k) => HopfAlgebra k SSymM Source # 
Instance details

Defined in Math.Combinatorics.CombinatorialHopfAlgebra

Methods

antipode :: Vect k SSymM -> Vect k SSymM Source #

(Eq k, Num k) => HopfAlgebra k SSymF Source # 
Instance details

Defined in Math.Combinatorics.CombinatorialHopfAlgebra

Methods

antipode :: Vect k SSymF -> Vect k SSymF Source #

(Eq k, Num k) => HopfAlgebra k (Permutation Int) Source # 
Instance details

Defined in Math.Algebras.GroupAlgebra

(Eq k, Num k, Ord a) => HopfAlgebra k (YSymF a) Source # 
Instance details

Defined in Math.Combinatorics.CombinatorialHopfAlgebra

Methods

antipode :: Vect k (YSymF a) -> Vect k (YSymF a) Source #

(Eq k, Num k) => HopfAlgebra k (Dual SSymF) Source # 
Instance details

Defined in Math.Combinatorics.CombinatorialHopfAlgebra

Methods

antipode :: Vect k (Dual SSymF) -> Vect k (Dual SSymF) Source #

(Eq k, Num k, Ord a) => HopfAlgebra k (Shuffle a) Source # 
Instance details

Defined in Math.Combinatorics.CombinatorialHopfAlgebra

Methods

antipode :: Vect k (Shuffle a) -> Vect k (Shuffle a) Source #

HopfAlgebra Q (SL2 ABCD) Source # 
Instance details

Defined in Math.Algebras.AffinePlane

Methods

antipode :: Vect Q (SL2 ABCD) -> Vect Q (SL2 ABCD) Source #

HopfAlgebra (LaurentPoly Q) (SL2q String) Source # 
Instance details

Defined in Math.QuantumAlgebra.QuantumPlane

newtype Op b Source #

Constructors

Op b 
Instances
(Eq k, Num k, Ord b, Coalgebra k b) => Coalgebra k (Op b) Source # 
Instance details

Defined in Math.Algebras.Structures

Methods

counit :: Vect k (Op b) -> k Source #

comult :: Vect k (Op b) -> Vect k (Tensor (Op b) (Op b)) Source #

(Eq k, Num k, Ord b, Algebra k b) => Algebra k (Op b) Source # 
Instance details

Defined in Math.Algebras.Structures

Methods

unit :: k -> Vect k (Op b) Source #

mult :: Vect k (Tensor (Op b) (Op b)) -> Vect k (Op b) Source #

Eq b => Eq (Op b) Source # 
Instance details

Defined in Math.Algebras.Structures

Methods

(==) :: Op b -> Op b -> Bool #

(/=) :: Op b -> Op b -> Bool #

Ord b => Ord (Op b) Source # 
Instance details

Defined in Math.Algebras.Structures

Methods

compare :: Op b -> Op b -> Ordering #

(<) :: Op b -> Op b -> Bool #

(<=) :: Op b -> Op b -> Bool #

(>) :: Op b -> Op b -> Bool #

(>=) :: Op b -> Op b -> Bool #

max :: Op b -> Op b -> Op b #

min :: Op b -> Op b -> Op b #

Show b => Show (Op b) Source # 
Instance details

Defined in Math.Algebras.Structures

Methods

showsPrec :: Int -> Op b -> ShowS #

show :: Op b -> String #

showList :: [Op b] -> ShowS #

newtype SetCoalgebra b Source #

Constructors

SC b 
Instances
(Eq k, Num k) => Coalgebra k (SetCoalgebra b) Source # 
Instance details

Defined in Math.Algebras.Structures

Eq b => Eq (SetCoalgebra b) Source # 
Instance details

Defined in Math.Algebras.Structures

Ord b => Ord (SetCoalgebra b) Source # 
Instance details

Defined in Math.Algebras.Structures

Show b => Show (SetCoalgebra b) Source # 
Instance details

Defined in Math.Algebras.Structures

class Algebra k a => Module k a m where Source #

Methods

action :: Vect k (Tensor a m) -> Vect k m Source #

Instances
Algebra k a => Module k a a Source # 
Instance details

Defined in Math.Algebras.Structures

Methods

action :: Vect k (Tensor a a) -> Vect k a Source #

(Eq k, Num k) => Module k Mat2 EBasis Source # 
Instance details

Defined in Math.Algebras.Matrix

(Eq k, Num k, Ord a, Ord u, Ord v, Bialgebra k a, Module k a u, Module k a v) => Module k a (Tensor u v) Source # 
Instance details

Defined in Math.Algebras.Structures

Methods

action :: Vect k (Tensor a (Tensor u v)) -> Vect k (Tensor u v) Source #

(Eq k, Num k) => Module k (Permutation Int) Int Source # 
Instance details

Defined in Math.Algebras.GroupAlgebra

(Eq k, Num k) => Module k (Permutation Int) [Int] Source # 
Instance details

Defined in Math.Algebras.GroupAlgebra

Methods

action :: Vect k (Tensor (Permutation Int) [Int]) -> Vect k [Int] Source #

(Eq k, Num k, Ord a, Ord u, Ord v, Algebra k a, Module k a u, Module k a v) => Module k (Tensor a a) (Tensor u v) Source # 
Instance details

Defined in Math.Algebras.Structures

Methods

action :: Vect k (Tensor (Tensor a a) (Tensor u v)) -> Vect k (Tensor u v) Source #

(*.) :: (Module k a m, Num k) => Vect k a -> Vect k m -> Vect k m Source #

class Coalgebra k c => Comodule k c n where Source #

Methods

coaction :: Vect k n -> Vect k (Tensor c n) Source #

Instances
Coalgebra k c => Comodule k c c Source # 
Instance details

Defined in Math.Algebras.Structures

Methods

coaction :: Vect k c -> Vect k (Tensor c c) Source #

(Eq k, Num k, Ord a, Ord m, Ord n, Bialgebra k a, Comodule k a m, Comodule k a n) => Comodule k a (Tensor m n) Source # 
Instance details

Defined in Math.Algebras.Structures

Methods

coaction :: Vect k (Tensor m n) -> Vect k (Tensor a (Tensor m n)) Source #

Comodule (LaurentPoly Q) (M2q String) (Aq20 String) Source # 
Instance details

Defined in Math.QuantumAlgebra.QuantumPlane

class HasPairing k u v where Source #

A pairing is a non-degenerate bilinear form U x V -> k. We are typically interested in pairings having additional properties. For example:

  • A bialgebra pairing is a pairing between bialgebras A and B such that the mult in A is adjoint to the comult in B, and vice versa, and the unit in A is adjoint to the counit in B, and vice versa.
  • A Hopf pairing is a bialgebra pairing between Hopf algebras A and B such that the antipodes in A and B are adjoint.

Methods

pairing :: Vect k (Tensor u v) -> Vect k () Source #

Instances
(Eq k, Num k) => HasPairing k () () Source # 
Instance details

Defined in Math.Algebras.Structures

Methods

pairing :: Vect k (Tensor () ()) -> Vect k () Source #

(Eq k, Num k) => HasPairing k NSym QSymM Source #

A duality pairing between NSym and QSymM (monomial basis), showing that NSym and QSym are dual.

Instance details

Defined in Math.Combinatorics.CombinatorialHopfAlgebra

Methods

pairing :: Vect k (Tensor NSym QSymM) -> Vect k () Source #

(Eq k, Num k) => HasPairing k SymH SymM Source #

A duality pairing between the complete and monomial bases of Sym, showing that Sym is self-dual.

Instance details

Defined in Math.Combinatorics.CombinatorialHopfAlgebra

Methods

pairing :: Vect k (Tensor SymH SymM) -> Vect k () Source #

(Eq k, Num k) => HasPairing k SSymF SSymF Source #

A pairing showing that SSym is self-adjoint

Instance details

Defined in Math.Combinatorics.CombinatorialHopfAlgebra

Methods

pairing :: Vect k (Tensor SSymF SSymF) -> Vect k () Source #

(Eq k, Num k) => HasPairing k SSymF (Dual SSymF) Source # 
Instance details

Defined in Math.Combinatorics.CombinatorialHopfAlgebra

Methods

pairing :: Vect k (Tensor SSymF (Dual SSymF)) -> Vect k () Source #

(Eq k, Num k, HasPairing k u v, HasPairing k u' v') => HasPairing k (Tensor u u') (Tensor v v') Source # 
Instance details

Defined in Math.Algebras.Structures

Methods

pairing :: Vect k (Tensor (Tensor u u') (Tensor v v')) -> Vect k () Source #

pairing' :: (Num k, HasPairing k u v) => Vect k u -> Vect k v -> k Source #

The pairing function with a more Haskellish type signature

Orphan instances

(Eq k, Num k, Eq b, Ord b, Show b, Algebra k b) => Num (Vect k b) Source # 
Instance details

Methods

(+) :: Vect k b -> Vect k b -> Vect k b #

(-) :: Vect k b -> Vect k b -> Vect k b #

(*) :: Vect k b -> Vect k b -> Vect k b #

negate :: Vect k b -> Vect k b #

abs :: Vect k b -> Vect k b #

signum :: Vect k b -> Vect k b #

fromInteger :: Integer -> Vect k b #