Usually, the notation $A^B$ denotes the set of all functions from $B$ to $A$.
This makes sense because in a sense, $\mathbb R^3$ can be seen as the set of all functions from $\{1,2,3\}$ to $\mathbb R$. This is because
- any function $f$ from $\{1,2,3\}$ to $\mathbb R$ can represent one element of $\mathbb R^3$ as $[f(1), f(2), f(3)]$, and
- every element $[x_1,x_2,x_3]$ of $\mathbb R^3$ represents one function from $\{1,2,3\}$ to $\mathbb R$, specifically the function for which $f(1)=x_1, f(2)=x_2$ and $f(3)=x_3$.
This generalizes even if we replace $3$ with an infinite set. For example, $\mathbb R^\mathbb N$ can be seen as the set of sequences of real numbers, so an element would be $[x_1,x_2,x_3,\dots]$, but at the same time, this is also a mapping from $\mathbb N$ to $\mathbb R$ (one that maps $1$ to $x_1$, $2$ to $x_2$ and so on).
In general then, $A^B$ simply denotes a set where each element is a "$|B|$-tuple", i.e. each elements is some mapping that maps each element of $B$ to some element of $A$. A function from $\mathbb R $ to $\mathbb R$ is really nothing more than an object which, for each real number $x$, perscribes another real number $y$. It's just our decision to denote this as $f(x)=y$.