# What is the domain of the successor function?

Before defining the natural numbers, how do you define the successor function? $S(x)=x\cup\{x\}$ is a function on _ into _?

In two textbooks I've seen, the authors introduce the function (before the naturals) by saying "for every set $x$, we define the successor $S(x)$...". But doesn't that imply that the domain of $S$ contains all sets?

Kinda funny that "what is the domain of the successor function?" is a title that does not meet this website's standards. (I guess if you click submit enough times...)

• If it is defined before $\mathbb{N}$, then it's probably not a function. Bourbaki, for one, define $+$ for cardinal numbers (which is not a function), then $\mathbb{N}$ as a set of all finite cardinal numbers, then introduce $+_{\mathbb{N}}$, function of $\{\mathbb{N} \times \mathbb{N} \to \mathbb{N}\}$. – Abstraction Apr 28 '16 at 16:05
• If it's not a function, then what is it? – fdgdfgfgfd Apr 28 '16 at 17:10
• Notation for cardinal numbers, in Bourbaki case ($\mathfrak{a}+\mathfrak{b}$ is, by definition, a cardinal number of a certain well-defined set). In you textbooks it's probably a notation for sets (note that no theorems proved by that point for functions are used directly to prove something about $S$... or at least they shouldn't be). – Abstraction Apr 29 '16 at 8:44

We can define the successor function on the class of all sets. In fact, we may define $S \colon V \to V, x \mapsto x \cup \{x\}$, where $V$ is the proper class of all sets. Note that this can be done within ZFC: While $S$ does not exists as an object in ZFC, we have that $S = \{ (x, x \cup \{x\}) \mid x \in V \}$ is a definable class and those can be regarded as "virtual classes" in ZFC. Also note that for any set $D$, the function $S \restriction D \colon D \to S"D, x \mapsto x \cup \{x \}$ is a set and hence an object in ZFC.
edit: I should probably remark that, while virtual classes are a handy way to deal with proper classes in ZFC, there are some limitations to this approach. For example, statements of the form "For every virtual class ..." can in general not be formalized within ZFC and there may be classes that are not virtual, i.e. are not a collection of sets that satisfy a given, fixed formula. For example, the modeling relation $\models := \{ (\phi, x) \mid \phi(x) \text{ is true } \}$ is provably not a virtual class.
• @fdgdfgfgfd Virtual class and definable class mean the same thing. Let $\phi(v_0,v_1, \ldots, v_n)$ be a formula in the language of set theory with exactly $v_0, v_1, \ldots, v_n)$ as its free variables. Let $p_1, \ldots, p_n$ be fixed sets (acting as parameters). Then $C := \{ x \in V \mid \phi(x, p_1, \ldots, p_n) \}$ is the virtual class that is defined by $\phi$ and $p_1, \ldots, p_n$. Every virtual class is of this form (for suitable $\phi$ and $p_1, \ldots, p_n$). You may (and should) think of $C$ as an abbreviation for the formula $\phi(x, p_1, \ldots, p_n)$. – Stefan Mesken Apr 28 '16 at 18:24