Safe Haskell | Safe-Infered |
---|
- testProdRepl :: IO ()
- initProdRepl :: (Ord a, Show a) => [Permutation a] -> IO (Int, IOArray Int (Permutation a))
- nextProdRepl :: (Ord a, Show a) => (Int, IOArray Int (Permutation a)) -> IO (Maybe (Permutation a))
- updateArray :: (Integral t, Num i, Ix i, MArray a1 a m, HasInverses a) => a1 i a -> i -> i -> t -> m (Maybe a)
- sgs :: (Ord a, Show a) => [Permutation a] -> [Permutation a]
- rss :: (Ord k, Show k) => [Permutation k] -> [((k, Map k (Permutation k)), [Permutation k])]
- rss' :: (Eq a, Num a, Ord k, Show k) => (Int, IOArray Int (Permutation k)) -> [((k, Map k (Permutation k)), [Permutation k])] -> a -> IO [((k, Map k (Permutation k)), [Permutation k])]
- initLevels :: (Num a, Ord k) => [Permutation k] -> [((k, Map k a), [a1])]
- updateLevels :: (Ord k, Show k) => [((k, Map k (Permutation k)), [Permutation k])] -> Maybe (Permutation k) -> (Bool, [((k, Map k (Permutation k)), [Permutation k])])
- updateLevels' :: (Ord k, Show k) => [((k, Map k (Permutation k)), [Permutation k])] -> [((k, Map k (Permutation k)), [Permutation k])] -> Permutation k -> k -> [((k, Map k (Permutation k)), [Permutation k])]
- baseTransversalsSGS :: (Ord k, Show k) => [Permutation k] -> [(k, Map k (Permutation k))]
- isMemberSGS :: (Ord a, Show a) => [Permutation a] -> Permutation a -> Bool
Documentation
testProdRepl :: IO ()Source
initProdRepl :: (Ord a, Show a) => [Permutation a] -> IO (Int, IOArray Int (Permutation a))Source
nextProdRepl :: (Ord a, Show a) => (Int, IOArray Int (Permutation a)) -> IO (Maybe (Permutation a))Source
updateArray :: (Integral t, Num i, Ix i, MArray a1 a m, HasInverses a) => a1 i a -> i -> i -> t -> m (Maybe 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 random Schreier-Sims algorithm, so has a small (<10^-6) chance of being incomplete. The sgs is relative to the base implied by the Ord instance.
rss :: (Ord k, Show k) => [Permutation k] -> [((k, Map k (Permutation k)), [Permutation k])]Source
rss' :: (Eq a, Num a, Ord k, Show k) => (Int, IOArray Int (Permutation k)) -> [((k, Map k (Permutation k)), [Permutation k])] -> a -> IO [((k, Map k (Permutation k)), [Permutation k])]Source
initLevels :: (Num a, Ord k) => [Permutation k] -> [((k, Map k a), [a1])]Source
updateLevels :: (Ord k, Show k) => [((k, Map k (Permutation k)), [Permutation k])] -> Maybe (Permutation k) -> (Bool, [((k, Map k (Permutation k)), [Permutation k])])Source
updateLevels' :: (Ord k, Show k) => [((k, Map k (Permutation k)), [Permutation k])] -> [((k, Map k (Permutation k)), [Permutation k])] -> Permutation k -> k -> [((k, Map k (Permutation k)), [Permutation k])]Source
baseTransversalsSGS :: (Ord k, Show k) => [Permutation k] -> [(k, Map k (Permutation k))]Source
isMemberSGS :: (Ord a, Show a) => [Permutation a] -> Permutation a -> BoolSource
Given a strong generating set gs, isMemberSGS gs is a membership test for the group