With regards to Zermelo-Fraenkel Set Theory, is the $0$ and $\emptyset$ in $0 =\{ \}= \emptyset$ equal? I have been studying philosophy for some time now, although my knowledge with respect to mathematics is amateur at best. I recently starting learning set theory on my own, but have ran into an issue (at-least i think it's an issue). From what i understand (from one book and several youtube videos), $0 = \{\} = \emptyset$ in Zermelo-Fraenkel Set Theory. If that's the case, why are there two ways of representing the same thing? Instead of having both '$0$' and '$\emptyset$' representing one thing, why can't we have only one of those symbols represent that same exact thing? My apologies in advance for my lack of clarity; as I'm sure you noticed my mathematical jargon is not that good. Thanks for all of your help!
 A: $0$ and $\emptyset$ are both used to represent the same set (the set containing nothing) because of a certain technicality: The easiest way to define natural numbers in terms of sets has $0$ defined as the set containing nothing. But if you're a regular mathematician, usually you don't want to think of $0$ as a set containing no elements, you want to think of it as a number, to a point where if someone writes $a\not\in 0$ it would be borderline confusing because $0$ doesn't seem like the type of object for which it makes sense to ask about the element of relation. Most of the time, we use $\emptyset$ to mean the set containing zero elements, but in set theory when you're working with the bare bones notions, since $0$ is defined as the set with no elements it's used interchangably with the emptyset. But I think it's wrong to think of $0$ as a symbol for "the empty set." I think it's healthier to think of $0$ as the symbol for the number zero, and just know that in set theory this number is formally defined as a set, and it happens to be the set containing nothing.
A: Being incredibly pedantic, neither $\emptyset$, nor $0$, nor $\{\}$ are symbols in the ZF set theory. ZF set theory is axiomatized using the symbol $\in$ alone.
So, in a certain sense, everything that is not $\in$ is extra stuff that is added to ZF to make it easier to work with.
Set-builder notation $\{ x : x \in A \land \varphi(x)\}$ can be defined formally as the set of all values $x$ satisfying $\varphi$ and in $A$. We know that every set named using set builder notation exists by the axiom schema of comprehension and we know that the set named using set builder notation is unique by the axiom of extensionality.
Using this, we can define $\{\}$ as $\{x : x \in E \land \bot \}$, where $E$ is an arbitrary set. We know there's at least one set because our domain can't be empty. Alternatively, we can make $E$ the set promised to us by the axiom of infinity.
We can define $\emptyset$ the same way that we defined $\{\}$.
$0$ is a bit different. There are two commonly used set-based constructions for the natural numbers.
The Von Neumann naturals are $0 = \emptyset$, $1 = \{0\}$, $2 = \{0, 1\}$, $3=\{0,1,2\}$...
The Zermelo naturals are $0 = \emptyset$, $1 = \{0\}$, $2 = \{1\}$, $3=\{2\}$ ...
In both of these explicit constructions $0$ is the empty set, but there are trivial variations of them where $0$ is mapped to something else.
These constructions can be viewed as definitions of the natural numbers or as ways of interpreting natural numbers.
