Are all functions sets? I am studying Zermelo-Frankel set theory from Jech's Set Theory book. I understood it like functions are sets but the book uses the phrase "If a class F is a function" in Axiom Schema of Replacement. Why does it call it a class F instead of a set?
 A: You're right that technically that's a bad phrasing. It's informal language to help motivate the axiom, which is a bit technical.
More precisely, Replacement says:

If $F$ is a class such that $(i)$ each element of $F$ is an ordered pair, and $(ii)$ for each $(x, y), (x, y')\in F$ we have $y=y'$, then [the rest of the axiom].

A class satisfying $(i)$ and $(ii)$ is called a class function; basically, Replacement says "any class function whose domain is a set, is a set" (actually it says that the range is a set, but it's easy to see that these statements are equivalent).
A: I only have Jech's first edition.  He is clear about the notion of class as a proxy for working with formulas because Zermelo-Fraenkel set theory has no proper classes.  Fortunately, this unfortunate simplification in his presentation of replacement is accompanied by the actual form of the schema members:
$$ 
\begin{array}{c}
\forall x \forall y \forall z 
[ \phi ( x, y, p ) \wedge \phi ( x, z, p ) 
\rightarrow
y = z]\\
\rightarrow \\
\forall X \exists Y \forall y 
[ y \in Y 
\leftrightarrow 
(\exists x \in X) \phi( x, y, p )], \\ 
\end{array} 
$$
where $\phi ( x, y, p )$ is a given formula.
There are no proper classes in Zermelo-Fraenkel set theory.  So, all functions are sets.  Axiom schemas relate elements of the language to the objects of the domain.  If one accepts the cardinality of a language as an epistemological limitation, schemas delimit the domain.  This is why the question of which functions exist in a given model determine numerous properties for a model.  A countable language can describe no more than a countable collection of functions.
