Skip to content

Latest commit

 

History

History
30 lines (22 loc) · 1.03 KB

curry.md

File metadata and controls

30 lines (22 loc) · 1.03 KB

title: Currying author: Keith A. Lewis institution: KALX, LLC email: [email protected] classoption: fleqn abstract: Relationship between Cartesian product and exponentials. ...

\newcommand\mb[1]{\mathbf{#1}} \newcommand\RR{\mb{R}} \newcommand\cat[1]{\mathbf{#1}}

Notation can be used as a tool of thought, as Iverson pointed out, and won a Turing Award for.

The cartesian product of sets $A$ and $B$ is the set of all pairs $A\times B = {(a, b)\mid a\in A, b\in B}$.

The exponential of sets $A$ and $B$ is the set of all functions $A^B = {f\colon B\to A}$.

Currying is the isomorphism between $A^{B\times C}$ and $(A^B)^C$.

The language Iverson invented, APL, parsed expressons from right to left. We write $A^B = {f\colon A\leftarrow B}$ and $bf$ instead of $f(b)$.

If $f\colon A\leftarrow B\times C$ define $,f\colon (A\leftarrow B)\leftarrow C$ by $bc,f = b(c,f) = (b,c)f$.

Exercise. Show $a = b(c,f)$ if and only if $a = (b,c)f$.