Which sets are present in every model of ZF?

As in the title: the existence of which sets is implied by the axioms of $\mathsf{ZF}$? For example one such set would be the empty set whose existence is demanded by the Axiom of the Empty Set.

But are for example all ordinals also present in every model because their existence follows from the axioms? I presume the answer must be no as we can have countable models of $\mathsf{ZF}$ but there are uncountably many ordinals.

Or do ordinals just happen to be present in any standard model because of the structure of the model?

In response to Trevor's last paragraph: Trying to make my question mathematically precise, I would like to ask: apart from $P(x)=$ "$x$ is the empty set", which sets we know intuitively are present in every model. For example, we know there exists an infinite set. But can there be a model where the smallest infinite set is already uncountable so that there are no natural numbers $\omega$? And similarly, can there be a model where there is no set representing the real numbers?

Thank you for your help.


Second edit: After reading Trevor's edit I would like to rephrase my question as follows:

For which sets $s$ that we know, like e.g. empty set, $\omega$, $\mathbb R$, ordinals, does $M$ think that $s$ exists? Trying to write it as a formula: For which $s$ does $M \models \exists x (x = s)$.


As Asaf pointed out, it is not true that $\omega$ is in every model of ZF. It is not even true that every model $(M,E)$ of ZF has a set $X$ such that $(X,E \restriction X \times X)$ is isomorphic to $(\omega, \mathord{\in} \restriction \omega \times \omega)$.

Instead I will answer the question I think you may have meant to ask, namely "what sets are in every transitive model of ZF?"

The sets that are in every transitive model of ZF are the ones that are in $L_\alpha$, the $\alpha^\text{th}$ level of Goedel's constructible universe $L$, where $\alpha$ is least such that $L_\alpha$ satisfies ZF. This is because if $M$ is a transitive model of ZF then $L^M$ is a level of $L$.

By the way, it makes no formal sense to say "an axiom implies $X$" or even "an axiom implies the existence of $X$" where $X$ is a set. What does make sense is to say "an axiom implies the existence of a set $X$ with property $P$." This makes sense because "there exists a set $X$ with property $P$" is a statement. Axioms imply statements, not sets. Of course it should not be against the law to say imprecise things but I think in this case it may be causing you confusion.

EDIT:

ZF proves that the class of all finite ordinals, denoted $\omega$, exists as a set. If $(M, \in)$ is a transitive model of ZF, then $\omega^M$, which is the element of $M$ that the model $(M,\in)$ thinks is the class of all finite ordinals, is equal to $\omega$ itself. Moreover the finite ordinals of $M$ are exactly the finite ordinals.

The class of all ordinals of $M$, denoted $\text{Ord}^M$, is an initial segment of $\text{Ord}$, the class of all ordinals. If $M$ is a set rather than a proper class, then some ordinals will be missing from $\text{Ord}^M$. In this case $\text{Ord}^M$ is itself an ordinal.

By the Loewenhein–Skolem theorem, $M$ may be countable, in which case $M$ does not contain any uncountable ordinals and $\text{Ord}^M$ is a countable ordinal. However, by Cantor's theorem applied in $(M,\in)$, there are many ordinals in $M$ that are uncountable in $M$ even though they are countable in $V$. This (roughly) is known as Skolem's paradox.

Real numbers can be coded as subsets of $\omega$ in an absolute way, so because $\omega^M = \omega$, $\mathbb{R}^M$ is a subset of $\mathbb{R}$. However, equality can fail: for example, if $M$ is countable then $\mathbb{R}^M$ is countable and therefore cannot be equal to $\mathbb{R}$.


No set is present in "all" models of ZF.

To see this suppose that $(M,E)$ is a model of ZF, namely $E$ satisfies all the properties that $\in$ should.

Now define $M'$ to be $\{x\cup\{M\}\mid x\in M\}$ and $E'=\{\langle x\cup\{M\},y\cup\{M\}\rangle\mid \langle x,y\rangle\in E\}$, then clearly $(M',E')$ is isomorphic to $(M,E)$ and is therefore a model of ZF, however $M\cap M'=\varnothing$.

On the other hand, all transitive models have the same finite sets.

This question is a bit like asking what number is in all groups. Surely, they all have a neutral element, but this is not the same element in every group.


To the comment, if we look at $H(\omega)$ all the sets which are really hereditarily finite (that is, they are finite, and their members are finite, and so on) can be found within any model of ZF; although $H(\omega)$ itself might not be found there.

The reason is that we can write a definition which defines uniquely every set in $H(\omega)$, such definition would be like "there are five elements; one is the singleton of the set in which there are three elements ..." (this sort of statements are long to write, even formally). If $(M,E)$ is a model of ZF then there is a unique set with the property of being "empty", and from this set we can essentially define all the other sets in $H(\omega)$.

Note that $H(\omega)$ itself (and equivalently $\omega$) need not be an element of the model, if it were then it was the $\omega$ of the model (it is necessarily the smallest inductive set). But it is possible to have a model whose $\omega$ is non-standard.