Data.Group
 Portability portable Stability experimental Maintainer Edward Kmett
Description
Extends Monoid to support Group operations
Synopsis
module Data.Monoid.Multiplicative
class Monoid a => Group a where
 gnegate :: a -> a minus :: a -> a -> a gsubtract :: a -> a -> a
gnegate :: Group a => a -> a
gsubtract :: Group a => a -> a -> a
minus :: Group a => a -> a -> a
class Multiplicative g => MultiplicativeGroup g where
 over :: g -> g -> g under :: g -> g -> g grecip :: g -> g
over :: MultiplicativeGroup g => g -> g -> g
under :: MultiplicativeGroup g => g -> g -> g
grecip :: MultiplicativeGroup g => g -> g
Documentation
module Data.Monoid.Multiplicative
 class Monoid a => Group a where Source
Minimal complete definition: gnegate or minus
Methods
 gnegate :: a -> a Source
 minus :: a -> a -> a Source
 gsubtract :: a -> a -> a Source
Instances
 Group a => Group (Dual a) Num a => Group (Sum a) Fractional a => Group (Product a) Group a => Group (Self a) Group a => Group (FromString a) MultiplicativeGroup g => Group (Log g) Num a => Group (FromNum a) Bits a => Group (Boolean a) Group a => Group (ReducedBy a s) (Group m, Applicative f) => Group (App f m) (Group m, Monad f) => Group (Mon f m) (Modular s a, Integral a) => Group (Mod a s) (Group r, Bimodule r m, Group m) => Group (D s r m)
 gnegate :: Group a => a -> a Source
 gsubtract :: Group a => a -> a -> a Source
 minus :: Group a => a -> a -> a Source
 class Multiplicative g => MultiplicativeGroup g where Source
Minimal definition over or grecip
Methods
 over :: g -> g -> g Source
`x / y`
 under :: g -> g -> g Source
`x  y`
 grecip :: g -> g Source
Instances
 MultiplicativeGroup a => MultiplicativeGroup (Dual a) MultiplicativeGroup g => MultiplicativeGroup (Self g) MultiplicativeGroup g => MultiplicativeGroup (FromString g) Group g => MultiplicativeGroup (Exp g) MultiplicativeGroup g => MultiplicativeGroup (ReducedBy g s)
 over :: MultiplicativeGroup g => g -> g -> g Source
`x / y`
 under :: MultiplicativeGroup g => g -> g -> g Source
`x  y`
 grecip :: MultiplicativeGroup g => g -> g Source