Safe Haskell  Safe 

Language  Haskell2010 
Documentation
class Monoid m => Group m where Source #
A Group
is a Monoid
plus a function, invert
, such that:
a <> invert a == mempty
invert a <> a == mempty
Instances
Group () Source #  
Group a => Group (Identity a) Source # 

Group a => Group (Dual a) Source #  
Num a => Group (Sum a) Source #  
Fractional a => Group (Product a) Source #  
Group b => Group (a > b) Source #  
(Group a, Group b) => Group (a, b) Source #  
Group (Proxy x) Source #  Trivial group, Functor style. 
(Group a, Group b, Group c) => Group (a, b, c) Source #  
Group a => Group (Const a x) Source # 

(Group (f a), Group (g a)) => Group ((f :*: g) a) Source #  Product of groups, Functor style. 
(Group a, Group b, Group c, Group d) => Group (a, b, c, d) Source #  
Group (f (g a)) => Group ((f :.: g) a) Source #  
(Group a, Group b, Group c, Group d, Group e) => Group (a, b, c, d, e) Source #  
class Group g => Abelian g Source #
Instances
Abelian () Source #  
Defined in Data.Group  
Abelian a => Abelian (Identity a) Source #  
Defined in Data.Group  
Abelian a => Abelian (Dual a) Source #  
Defined in Data.Group  
Num a => Abelian (Sum a) Source #  
Defined in Data.Group  
Fractional a => Abelian (Product a) Source #  
Defined in Data.Group  
Abelian b => Abelian (a > b) Source #  
Defined in Data.Group  
(Abelian a, Abelian b) => Abelian (a, b) Source #  
Defined in Data.Group  
Abelian (Proxy x) Source #  
Defined in Data.Group  
(Abelian a, Abelian b, Abelian c) => Abelian (a, b, c) Source #  
Defined in Data.Group  
Abelian a => Abelian (Const a x) Source #  
Defined in Data.Group  
(Abelian (f a), Abelian (g a)) => Abelian ((f :*: g) a) Source #  
Defined in Data.Group  
(Abelian a, Abelian b, Abelian c, Abelian d) => Abelian (a, b, c, d) Source #  
Defined in Data.Group  
Abelian (f (g a)) => Abelian ((f :.: g) a) Source #  
Defined in Data.Group  
(Abelian a, Abelian b, Abelian c, Abelian d, Abelian e) => Abelian (a, b, c, d, e) Source #  
Defined in Data.Group 
class Group a => Cyclic a where Source #
A Group
G is Cyclic
if there exists an element x of G such that for all y in G, there exists an n, such that
y = pow x n