- class Group a where
- propAssoc :: (Group a, Eq a) => a -> a -> a -> Bool
- propId :: (Group a, Eq a) => a -> Bool
- propInv :: (Group a, Eq a) => a -> Bool
- propGroup :: (Group a, Eq a) => a -> a -> a -> Property
- class Group a => AbelianGroup a
- propComm :: (AbelianGroup a, Eq a) => a -> a -> Bool
- propAbelianGroup :: (AbelianGroup a, Eq a) => a -> a -> a -> Property
- sumGroup :: AbelianGroup a => [a] -> a

# Documentation

propComm :: (AbelianGroup a, Eq a) => a -> a -> BoolSource

propAbelianGroup :: (AbelianGroup a, Eq a) => a -> a -> a -> PropertySource

sumGroup :: AbelianGroup a => [a] -> aSource