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

Safe Haskell | None
Language | Haskell98

Math.Algebra.Group.SchreierSims

Synopsis

- cosetRepsGx :: Ord k => [Permutation k] -> k -> Map k (Permutation k)
- schreierGeneratorsGx :: Ord a => (a, Map a (Permutation a)) -> [Permutation a] -> [Permutation a]
- sift :: Ord k => [(k, Map k (Permutation k))] -> Permutation k -> Maybe (Permutation k)
- findBase :: Ord a => [Permutation a] -> a
- sgs :: (Ord a, Show a) => [Permutation a] -> [Permutation a]
- bsgs :: Ord a => [Permutation a] -> [(a, Map a (Permutation a))]
- bsgs' :: Ord a => [a] -> [Permutation a] -> [(a, Map a (Permutation a))]
- newLevel :: Ord k => [k] -> [Permutation k] -> ([k], ((k, Map k (Permutation k)), [Permutation k]))
- newLevel' :: Ord k => k -> [Permutation k] -> ((k, Map k (Permutation k)), [Permutation k])
- ss :: Ord a => [a] -> [Permutation a] -> [((a, Map a (Permutation a)), [Permutation a])]
- ss' :: Ord a => [a] -> [((a, Map a (Permutation a)), [Permutation a])] -> [((a, Map a (Permutation a)), [Permutation a])] -> [((a, Map a (Permutation a)), [Permutation a])]
- isMemberBSGS :: Ord k => [(k, Map k (Permutation k))] -> Permutation k -> Bool
- eltsBSGS :: Num b => [(a, Map k b)] -> [b]
- cartProd :: [[a]] -> [[a]]
- orderBSGS :: [(a1, Map k a2)] -> Integer
- isMember :: (Ord t, Show t) => [Permutation t] -> Permutation t -> Bool
- elts :: (Ord t, Show t) => [Permutation t] -> [Permutation t]
- order :: (Ord t, Show t) => [Permutation t] -> Integer
- isSubgp :: (Foldable t, Ord k) => t (Permutation k) -> [Permutation k] -> Bool
- isNormal :: Ord k => [Permutation k] -> [Permutation k] -> Bool
- index :: (Ord t1, Ord t2, Show t1, Show t2) => [Permutation t1] -> [Permutation t2] -> Integer
- reduceGens :: Ord a => [Permutation a] -> [Permutation a]
- reduceGensBSGS :: Ord a => [Permutation a] -> ([Permutation a], [(a, Map a (Permutation a))])
- normalClosure :: Ord a => [Permutation a] -> [Permutation a] -> [Permutation a]
- commutatorGp :: Ord a => [Permutation a] -> [Permutation a] -> [Permutation a]
- derivedSubgp :: Ord a => [Permutation a] -> [Permutation a]

# Documentation

cosetRepsGx :: Ord k => [Permutation k] -> k -> Map k (Permutation k) Source #

schreierGeneratorsGx :: Ord a => (a, Map a (Permutation a)) -> [Permutation a] -> [Permutation a] Source #

sift :: Ord k => [(k, Map k (Permutation k))] -> Permutation k -> Maybe (Permutation k) Source #

findBase :: Ord a => [Permutation a] -> a Source #

sgs :: (Ord a, Show a) => [Permutation a] -> [Permutation a] Source #

Given generators for a permutation group, return a strong generating set. The result is calculated using Schreier-Sims algorithm, and is relative to the base implied by the Ord instance

bsgs :: Ord a => [Permutation a] -> [(a, Map a (Permutation a))] Source #

bsgs' :: Ord a => [a] -> [Permutation a] -> [(a, Map a (Permutation a))] Source #

newLevel :: Ord k => [k] -> [Permutation k] -> ([k], ((k, Map k (Permutation k)), [Permutation k])) Source #

newLevel' :: Ord k => k -> [Permutation k] -> ((k, Map k (Permutation k)), [Permutation k]) Source #

ss :: Ord a => [a] -> [Permutation a] -> [((a, Map a (Permutation a)), [Permutation a])] Source #

ss' :: Ord a => [a] -> [((a, Map a (Permutation a)), [Permutation a])] -> [((a, Map a (Permutation a)), [Permutation a])] -> [((a, Map a (Permutation a)), [Permutation a])] Source #

isMemberBSGS :: Ord k => [(k, Map k (Permutation k))] -> Permutation k -> Bool Source #

eltsBSGS :: Num b => [(a, Map k b)] -> [b] Source #

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

orderBSGS :: [(a1, Map k a2)] -> Integer Source #

isMember :: (Ord t, Show t) => [Permutation t] -> Permutation t -> Bool Source #

Given generators for a group, determine whether a permutation is a member of the group, using Schreier-Sims algorithm

elts :: (Ord t, Show t) => [Permutation t] -> [Permutation t] Source #

Given generators for a group, return a (sorted) list of all elements of the group, using Schreier-Sims algorithm

order :: (Ord t, Show t) => [Permutation t] -> Integer Source #

Given generators for a group, return the order of the group (the number of elements), using Schreier-Sims algorithm

isSubgp :: (Foldable t, Ord k) => t (Permutation k) -> [Permutation k] -> Bool Source #

isNormal :: Ord k => [Permutation k] -> [Permutation k] -> Bool Source #

index :: (Ord t1, Ord t2, Show t1, Show t2) => [Permutation t1] -> [Permutation t2] -> Integer Source #

reduceGens :: Ord a => [Permutation a] -> [Permutation a] Source #

reduceGensBSGS :: Ord a => [Permutation a] -> ([Permutation a], [(a, Map a (Permutation a))]) Source #

normalClosure :: Ord a => [Permutation a] -> [Permutation a] -> [Permutation a] Source #

commutatorGp :: Ord a => [Permutation a] -> [Permutation a] -> [Permutation a] Source #

derivedSubgp :: Ord a => [Permutation a] -> [Permutation a] Source #