-- Hoogle documentation, generated by Haddock -- See Hoogle, http://www.haskell.org/hoogle/ -- | Haskell 98 groups -- -- Haskell 98 groups. A group is a monoid with invertibility. @package groups @version 0.1.0.1 module Data.Group -- | A Group is a Monoid plus a function, invert, such -- that: -- --
-- a invert a == mempty --class Monoid m => Group m invert :: Group m => m -> m instance (Group a, Group b, Group c, Group d, Group e) => Group (a, b, c, d, e) instance (Group a, Group b, Group c, Group d) => Group (a, b, c, d) instance (Group a, Group b, Group c) => Group (a, b, c) instance (Group a, Group b) => Group (a, b) instance Group a => Group (Dual a) instance Fractional a => Group (Product a) instance Num a => Group (Sum a) instance Group ()