This module provides some utility functions for inverting functions.
Author: Michael Hanus
Version: November 2020
invf1
:: (Data a, Data b) => (a -> b) -> b -> a
Inverts a unary function. |
invf2
:: (Data a, Data b, Data c) => (a -> b -> c) -> c -> (a,b)
Inverts a binary function. |
invf3
:: (Data a, Data b, Data c, Data d) => (a -> b -> c -> d) -> d -> (a,b,c)
Inverts a ternary function. |
invf4
:: (Data a, Data b, Data c, Data d, Data e) => (a -> b -> c -> d -> e) -> e -> (a,b,c,d)
Inverts a function of arity 4. |
invf5
:: (Data a, Data b, Data c, Data d, Data e, Data f) => (a -> b -> c -> d -> e -> f) -> f -> (a,b,c,d,e)
Inverts a function of arity 5. |
Inverts a unary function. |
Inverts a binary function. |
Inverts a ternary function. |
Inverts a function of arity 4. |
Inverts a function of arity 5. |