How do we know that $\mathbb{R}^{\mathbb{R}}$ exists at all? So i just had one of those existential crisis, i thought previously that the set of all functions (including functions from reals to complex, from matrices to sequences, and even from functions to functions) existed. but, recalling spivak's (1994, pg 47) formal definition of a function:

A function is a collection of pairs of numbers with the following property:
  if $(a, b)$ and $(a, c)$ are both in the collection, then $b = c$; in other words, the
  collection must not contain two different pairs with the same first element.

so the set of all functions would be $$\mathscr{A_F}=\{f|f\notin f\text{ and if } (a,b),(a,c)\in f\implies b=c\}$$ ($(f\notin f)$ since $f$ is a set per this definition)
i think that without too much difficulty we can show that $\mathscr{A_F}\in\mathscr{A_F}\iff\mathscr{A_F}\notin\mathscr{A_F}$, so, just like the proof by russel, the set of all functions is non existent.
so i have like this doubt that not every arbitrary collection of functions is a set, more precisely, how can do we know that $\mathbb{R}^{\mathbb{R}}$ (set of all functions from R to R) exists at all,?
Ref:
Michael Spivak (1994), Calculus, Publish or Perish.
 A: You can go quite far with forming collections of functions which are actually sets (they exist in ZFC), and are closed under $(X,Y)\mapsto Y^X$. 
You can start with any basic domains. For example,
$$
\mathcal{D}_0 = \{\Bbb 2, \Bbb N, \Bbb Z, \Bbb Q, \Bbb R, \Bbb C\} \cup \{M_{m,n}(\Bbb R)\mid n,m<\omega\} , 
$$
where e.g. $M_{m,n}(\Bbb R)$ is the set of all $m\times n$ matrices over $\Bbb R$.
Given $\mathcal{D}_n$, define
$$
\mathcal{D}_{n+1} = \mathcal{D}_n \cup \{Y^X\mid X,Y\in \mathcal{D}_n\}.
$$
Let $\mathcal{D} = \bigcup_n \mathcal{D}_n$. Then $\mathcal{D}$ is closed under $(X,Y)\mapsto Y^X$.
$n\mapsto \mathcal{D}_n$ is well-defined by induction. By Replacement its range exists (is a set), and by Union, the union of its range $\mathcal{D}$ exists.

However, there is no "set" of all functions, any more than there is a "set" of all sets: it's simply too big. There's an easy way to see this. Let $\mathscr{F}$ be the class of all functions. Let $X = \{f(\emptyset): f\in \mathscr{F} \text{ and } \emptyset\in domain(f)\}$. Then clearly every set $x\in X$. If $\mathscr{F}$ were a set then $X$ would be a set too (by Separation and Replacement). However, $X = V$ is the entire universe, so it isn't a set.
A: The basic lession Russell's paradox teaches us is that we cannot expect simply to write
$$ \{ f \mid f\text{ has such-and-such property}\} $$
and get a set out of it. Thus, in order to avoid paradoxes, set theory since about 1900 has always depended on restricting how you can use the set builder notation. With the right set of restrictions, it is hoped, one can make all of the sets we need for ordinary mathematics, yet not be able to conclude nonsense such as Russell's paradox.
The most widely used and accepted rules for this are known as ZFC and are based on an idea by Ernst Zermelo, who proposed that (my paraphrase!) a "valid" use of the set builder notation should always have the form
$$ \{ f\in A \mid f \text{ has such-and-such property}\}$$
where $A$ is some set we already know exists. To this Zermelo added a small selection of hand-picked set-construction methods that don't fit into this particular mold, such as
$$ \{ A, B \} $$
where $A$ and $B$ are already known to exist, or
$$ \{ x \mid x \subseteq A \} \qquad = \mathcal P(A) $$
where $A$ is already known to exist. The latter is the axiom of power sets, which is the principal way of constructing larger sets from smaller ones in ZFC.
(Note that we don't, strictly speaking, know that these particular restrictions will keep the paradoxes at bay -- and, thanks to Gödel, we cannot in principle know that -- by the fact that they have withstood a century of clever and determined attempts to subvert them lets most mathematicians sleep soundly at night anyway).
In particular, if you already knows that $\mathbb R$ exists (which is an interesting story in its own right), then the axioms will allow you to conclude that $\mathbb R\times \mathbb R$ exists: the set that has every ordered pair of two real numbers as elements, and nothing else.
A real function is then a subset of $\mathbb R\times\mathbb R$ (with some additional restrictions), which means that every function is an element of $\mathcal P(\mathbb R\times\mathbb R)$. And this means that the collection of all real functions can be written as
$$ \{ f \in \mathcal P(\mathbb R\times\mathbb R) \mid (\text{conditions on $f$ go here}) \} $$
which fits the form proposed by Zermelo.
