Safe Haskell | None |
---|---|
Language | Haskell98 |
A module for doing arithmetic in the group algebra.
Group elements are represented as permutations of the integers, and are entered and displayed
using a Haskell-friendly version of cycle notation. For example, the permutation (1 2 3)(4 5)
would be entered as p [[1,2,3],[4,5]]
, and displayed as [[1,2,3],[4,5]].
Given a field K and group G, the group algebra KG is the free K-vector space over the elements of G.
Elements of the group algebra consist of arbitrary K-linear combinations of elements of G.
For example, p [[1,2,3]] + 2 * p [[1,2],[3,4]]
Synopsis
- type GroupAlgebra k = Vect k (Permutation Int)
- p :: [[Int]] -> GroupAlgebra Q
Documentation
type GroupAlgebra k = Vect k (Permutation Int) Source #
p :: [[Int]] -> GroupAlgebra Q Source #
Construct a permutation, as an element of the group algebra, from a list of cycles.
For example, p [[1,2],[3,4,5]]
constructs the permutation (1 2)(3 4 5), which is displayed
as [[1,2],[3,4,5]].
Orphan instances
(Eq k, Num k) => HopfAlgebra k (Permutation Int) Source # | |
antipode :: Vect k (Permutation Int) -> Vect k (Permutation Int) Source # | |
(Eq k, Num k) => Bialgebra k (Permutation Int) Source # | |
(Eq k, Num k) => Coalgebra k (Permutation Int) Source # | |
counit :: Vect k (Permutation Int) -> k Source # comult :: Vect k (Permutation Int) -> Vect k (Tensor (Permutation Int) (Permutation Int)) Source # | |
(Eq k, Num k) => Algebra k (Permutation Int) Source # | |
unit :: k -> Vect k (Permutation Int) Source # mult :: Vect k (Tensor (Permutation Int) (Permutation Int)) -> Vect k (Permutation Int) Source # | |
(Eq k, Num k) => Module k (Permutation Int) Int Source # | |
(Eq k, Num k) => Module k (Permutation Int) [Int] Source # | |
HasInverses (GroupAlgebra Q) Source # | Note that the inverse of a group algebra element can only be efficiently calculated if the group generated by the non-zero terms is very small (eg <100 elements). |
inverse :: GroupAlgebra Q -> GroupAlgebra Q Source # |