How to show $(a^b)^c=a^{bc}$ for arbitrary cardinal numbers? One of the basic (and frequently used) properties of cardinal exponentiation is that $(a^b)^c=a^{bc}$.
What is the proof of this fact?
As Arturo pointed out in his comment, in computer science this is called currying. 
 A: Martin gave a complete and detailed answer, I will give a short proof that might be clearer.
Recall that $A^B = \{f\mid f\colon B\to A\}$, i.e. all the functions from $B$ into $A$.
Since we defined cardinality as equivalence classes, it suffices to show that $(A^B)^C$ is equinumerous with $A^{B\times C}$ for arbitrary sets.
First we need to understand these two sets. $(A^B)^C$ is a set of functions, whose domain is $C$ and their value is a function from $B$ into $A$. That is a typical function would take an element of $C$ and return a function from $B$ into $A$.
$A^{B\times C}$ is the set of all functions whose domain is $B\times C$, into $A$. These functions take ordered pairs (or two variables) from $B\times C$ and return an element of $A$.
The intuition of what we are going to do is similar to $f_n = \cos (nx)$ and $f(x,n) = \cos (nx)$. The former is a function from $\mathbb N$ into $\mathbb R^\mathbb R$ (namely $n\mapsto \cos(nx)$), while the latter is a function from $\mathbb R\times\mathbb N\to\mathbb R$.
The way we do it is by defining $\varphi\colon(A^B)^C\to A^{B\times C}$ defined as in a similar way. $\varphi(f)$ will be the function that when fixing $c$ we have $f(c)$.
Rigorously, this is defined as: $$\varphi(f)(b,c) = f(c)(b)$$
To check that this is one-to-one, if $g,f\in (A^B)^C$ are two different functions, take $c$ such that $f(c)\neq g(c)$ (remember that both of these values are functions from $A^B$). That means that for some $b\in B$ we have $f(c)(b)\neq g(c)(b)$.
Therefore at the pair $\langle b,c\rangle$ the function $\varphi(f)$ will have a different value than $\varphi(g)$.
To show that $\varphi$ is a surjection, we take a function $g\colon B\times C\to A$, and simply set $f\colon C\to A^B$ to be $f(c)(b) = g(b,c)$. We need, of course, to show that $f$ is well defined, and then we can easily show that $\varphi(f)=g$.
A: Theorem: For arbitrary cardinal numbers the equality $(a^b)^c=a^{bc}$ holds.
Proof. It suffices to show that there is a bijection between $(A^B)^C$ and
$A^{B\times C}$ for arbitrary sets $A$, $B$, $C$. We will try to find functions
$\varphi:{(A^B)^C}\to{A^{B\times C}}$ and $\psi:{A^{B\times C}}\to{(A^B)^C}$ and show that they are inverse to each other.
We want to find a map $\varphi:{(A^B)^C}\to{A^{B\times C}}$. I.e.,
for any given map $f: C\to A^B$ we would like to get
some map assigning elements from $A$ to pairs $(b,c)\in B\times C$. 
For arbitrary $c\in C$ we have the map ${f(c)}:B\to A$ --
so it is quite natural map the pair $(b,c)$ to $f(c)(b)$, i.e.
$$\varphi(f):{B\times C}\to A$$
$$\varphi(f)(b,c)=f(c)(b)$$
Conversely, to each map $g:{B\times C}\to A$ we would like to assign 
a map ${\psi(g)}:C \to {A^B}$, i.e. a map which 
assigns to each element from $C$ some function from $B$ to $A$. If
we are given a function from $B\times C$ to $A$, and if we fix $c\in
C$ and change only the element $b\in B$ we see, that we get a map
from $B$ to $A$. This can be written more precisely as
$${(\psi(g))(c)}:B\to A$$
$$(\psi(g))(c)(b)=g(b,c)$$
This map is sketched in the figure bellow, where kde
$A=\mathbb R$, $B=\langle 0,1\rangle$, $C=\langle0,\infty)$. The "cuts" marked on the graph
of the given function are precisely the functions from $B$ to $A$ assigned 
to elements of $C$. (I've chosen the sets $A$, $B$ a $C$ to be different,
so that we can see on the picture which set is which.)
Simply by composition we get that both $\varphi\circ\psi$ and
$\psi\circ\varphi$ is identity. Let us first compute
${\varphi\circ\psi}:{A^{B\times C}}\to {A^{B\times C}}$. For arbitrary
$g:{B\times C}\to A$ we would like to find out how the function
${\varphi(\psi(g))}:{B\times C}\to A$ looks. We get (directly using the definition of the maps $\varphi$ and $\psi$) that
$$\varphi(\psi(g))(b,c)=\psi(g)(c)(b)=g(b,c).$$
Thus we have $\varphi(\psi(g))=g$ for each $g\in A^{B\times C}$, and thus
$\varphi\circ\psi=id_{A^{B\times C}}$.
Now let us try to compute ${\psi\circ\varphi}:{(A^B)^C}\to {(A^B)^C}$. If we have a map
$f:C\to {A^B}$, we would like to find out whether
$\psi(\varphi(f))=f$. Using definitions of $\varphi$ and $\psi$ we get
$$\psi(\varphi(f))(c)(b)=\varphi(f)(b,c)=f(c)(b).$$
Since this is true for any $b\in B$, we get the equality of the
functions $$\psi(\varphi(f))(c)=f(c).$$ Again, this equality holds
for each $c\in C$, hence $\psi\circ\varphi(f)=f$. The last
equality (which holds for arbitrary $f\in (A^B)^C$) implies the equality of the 
functions $\psi\circ\varphi=id_{(A^B)^C}$.
We have found out that $\psi=\varphi^{-1}$, hence both maps $\varphi$ and
$\psi$ are bijective. 

Figure illustrating the proof. (I have used the function $f(x,y)=\frac32+\frac15\sin{\pi
x}$:

