Safe Haskell | None |
---|---|
Language | Haskell2010 |
- leftIdentityOnElemWithEquality :: (b -> a -> a) -> (a -> a -> Bool) -> b -> a -> Bool
- leftIdentityOnGenWithEquality :: Show a => (b -> a -> a) -> (a -> a -> Bool) -> b -> Gen a -> Property
- leftIdentityOnGen :: (Show a, Eq a) => (b -> a -> a) -> b -> Gen a -> Property
- leftIdentityOnValid :: (Show a, Eq a, GenValidity a) => (b -> a -> a) -> b -> Property
- leftIdentity :: (Show a, Eq a, GenValidity a) => (b -> a -> a) -> b -> Property
- rightIdentityOnElemWithEquality :: (a -> b -> a) -> (a -> a -> Bool) -> b -> a -> Bool
- rightIdentityOnGenWithEquality :: Show a => (a -> b -> a) -> (a -> a -> Bool) -> b -> Gen a -> Property
- rightIdentityOnGen :: (Show a, Eq a) => (a -> b -> a) -> b -> Gen a -> Property
- rightIdentityOnValid :: (Show a, Eq a, GenValidity a) => (a -> b -> a) -> b -> Property
- rightIdentity :: (Show a, Eq a, GenValidity a) => (a -> b -> a) -> b -> Property
- identityOnGen :: (Show a, Eq a) => (a -> a -> a) -> a -> Gen a -> Property
- identityOnValid :: (Show a, Eq a, GenValidity a) => (a -> a -> a) -> a -> Property
- identity :: (Show a, Eq a, GenValidity a) => (a -> a -> a) -> a -> Property
- associativeOnGens :: (Show a, Eq a) => (a -> a -> a) -> Gen (a, a, a) -> Property
- associativeOnValids :: (Show a, Eq a, GenValidity a) => (a -> a -> a) -> Property
- associative :: (Show a, Eq a, GenValidity a) => (a -> a -> a) -> Property
- associativeOnArbitrary :: (Show a, Eq a, Arbitrary a) => (a -> a -> a) -> Property
- commutativeOnGens :: (Show a, Eq a) => (a -> a -> a) -> Gen (a, a) -> Property
- commutativeOnValids :: (Show a, Eq a, GenValidity a) => (a -> a -> a) -> Property
- commutative :: (Show a, Eq a, GenValidity a) => (a -> a -> a) -> Property
- commutativeOnArbitrary :: (Show a, Eq a, Arbitrary a) => (a -> a -> a) -> Property
Properties of operations
Identity element
Left identity
leftIdentityOnElemWithEquality Source #
:: (b -> a -> a) | A binary operation |
-> (a -> a -> Bool) | An equality |
-> b | A candidate left-identity |
-> a | An element |
-> Bool |
\[ LeftIdentity(\star, \doteq, b) \quad\equiv\quad \forall a: (b \star a) \doteq a \]
leftIdentityOnValid :: (Show a, Eq a, GenValidity a) => (b -> a -> a) -> b -> Property Source #
leftIdentity :: (Show a, Eq a, GenValidity a) => (b -> a -> a) -> b -> Property Source #
Right identity
rightIdentityOnElemWithEquality Source #
:: (a -> b -> a) | A binary operation |
-> (a -> a -> Bool) | An equality |
-> b | A candidate right-identity |
-> a | An element |
-> Bool |
\[ RightIdentity(\star, \doteq, b) \quad\equiv\quad \forall a: (a \star b) \doteq a \]
rightIdentityOnValid :: (Show a, Eq a, GenValidity a) => (a -> b -> a) -> b -> Property Source #
rightIdentity :: (Show a, Eq a, GenValidity a) => (a -> b -> a) -> b -> Property Source #
Identity
identityOnValid :: (Show a, Eq a, GenValidity a) => (a -> a -> a) -> a -> Property Source #
Associativity
associativeOnValids :: (Show a, Eq a, GenValidity a) => (a -> a -> a) -> Property Source #
associative :: (Show a, Eq a, GenValidity a) => (a -> a -> a) -> Property Source #
Commutativity
commutativeOnValids :: (Show a, Eq a, GenValidity a) => (a -> a -> a) -> Property Source #
commutative :: (Show a, Eq a, GenValidity a) => (a -> a -> a) -> Property Source #