lawz-0.1.1: Common mathematical laws.

Safe HaskellSafe
LanguageHaskell2010

Test.Function.Invertible

Synopsis

Documentation

adjoint_on :: Rel r Bool -> Rel s Bool -> (s -> r) -> (r -> s) -> s -> r -> Bool Source #

\( \forall a: f a \# b \Leftrightarrow a \# g b \)

For example, a Galois connection is defined by adjoint_on (<=).

invertible :: Eq r => (r -> s) -> (s -> r) -> r -> Bool Source #

\( \forall a: f (g a) \equiv a \)

invertible_on :: Rel s b -> (s -> r) -> (r -> s) -> s -> b Source #

\( \forall a: f (g a) \doteq a \)