numeric-prelude-0.4.3.3: An experimental alternative hierarchy of numeric type classes
Copyright(c) Henning Thielemann 2006
Maintainernumericprelude@henning-thielemann.de
Stabilityprovisional
Portabilityrequires multi-parameter type classes
Safe HaskellNone
LanguageHaskell98

MathObj.Permutation.CycleList.Check

Description

 
Synopsis

Documentation

newtype Cycle i Source #

We shall make a little bit of a hack here, enabling us to use additive or multiplicative syntax for groups as we wish by simply instantiating Num with both operations corresponding to the group operation of the permutation group we're studying

There are quite a few way we could represent elements of permutation groups: the images in a row, a list of the cycles, et.c. All of these differ highly in how complex various operations end up being.

Constructors

Cycle 

Fields

Instances

Instances details
Eq i => Eq (Cycle i) Source # 
Instance details

Defined in MathObj.Permutation.CycleList.Check

Methods

(==) :: Cycle i -> Cycle i -> Bool #

(/=) :: Cycle i -> Cycle i -> Bool #

Read i => Read (Cycle i) Source # 
Instance details

Defined in MathObj.Permutation.CycleList.Check

Show i => Show (Cycle i) Source # 
Instance details

Defined in MathObj.Permutation.CycleList.Check

Methods

showsPrec :: Int -> Cycle i -> ShowS #

show :: Cycle i -> String #

showList :: [Cycle i] -> ShowS #

data T i Source #

Constructors

Cons 

Fields

Instances

Instances details
C T Source # 
Instance details

Defined in MathObj.Permutation.CycleList.Check

Methods

domain :: Ix i => T i -> (i, i) Source #

apply :: Ix i => T i -> i -> i Source #

inverse :: Ix i => T i -> T i Source #

Ix i => Eq (T i) Source #

These instances may need more work They involve converting a permutation to a table.

Instance details

Defined in MathObj.Permutation.CycleList.Check

Methods

(==) :: T i -> T i -> Bool #

(/=) :: T i -> T i -> Bool #

Ix i => Ord (T i) Source # 
Instance details

Defined in MathObj.Permutation.CycleList.Check

Methods

compare :: T i -> T i -> Ordering #

(<) :: T i -> T i -> Bool #

(<=) :: T i -> T i -> Bool #

(>) :: T i -> T i -> Bool #

(>=) :: T i -> T i -> Bool #

max :: T i -> T i -> T i #

min :: T i -> T i -> T i #

Show i => Show (T i) Source # 
Instance details

Defined in MathObj.Permutation.CycleList.Check

Methods

showsPrec :: Int -> T i -> ShowS #

show :: T i -> String #

showList :: [T i] -> ShowS #

Ix i => C (T i) Source # 
Instance details

Defined in MathObj.Permutation.CycleList.Check

Methods

idt :: T i Source #

(<*>) :: T i -> T i -> T i Source #

cumulate :: [T i] -> T i Source #

fromCycles :: (i, i) -> [[i]] -> T i Source #

Does not check whether the input values are in range.

toCycles :: T i -> [[i]] Source #

toTable :: Ix i => T i -> T i Source #

fromTable :: Ix i => T i -> T i Source #

liftCmpTable2 :: Ix i => (T i -> T i -> a) -> T i -> T i -> a Source #

liftTable2 :: Ix i => (T i -> T i -> T i) -> T i -> T i -> T i Source #

closure :: Ix i => [T i] -> [T i] Source #