MappingPackage3(A, B, C)ΒΆ

mappkg.spad line 146

various Currying operations.

*: (B -> C, A -> B) -> A -> C
f*g is the function h such that h x= f(g x).
constantLeft: B -> C -> (A, B) -> C
constantLeft(f) is the function g such that g (a, b)= f b.
constantRight: A -> C -> (A, B) -> C
constantRight(f) is the function g such that g (a, b)= f a.
curryLeft: ((A, B) -> C, A) -> B -> C
curryLeft(f, a) is the function g such that g b = f(a, b).
curryRight: ((A, B) -> C, B) -> A -> C
curryRight(f, b) is the function g such that g a = f(a, b).
twist: (A, B) -> C -> (B, A) -> C
twist(f) is the function g such that g (a, b)= f(b, a).