| Copyright | © 2022–2025 Jonathan Knowles | 
|---|---|
| License | Apache-2.0 | 
| Safe Haskell | None | 
| Language | Haskell2010 | 
Test.QuickCheck.Classes.Group
Description
This module provides Laws definitions for classes exported by
 Data.Group.
Group
groupLaws :: (Arbitrary a, Show a, Eq a, Group a) => Proxy a -> Laws Source #
Includes the following laws:
Inversion
invertmempty==mempty
invert(inverta)==a
a<>inverta==memptyinverta<>a==mempty
Subtraction
a~~mempty==a
a~~a==mempty
a~~b==a<>invertb
Exponentiation
powa 0==mempty
n>=0 ==>powa n==mconcat(replicaten a) n<=0 ==>powa n==invert(mconcat(replicate(absn) a))
Superclass laws
Note that the following superclass laws are not included: