2

Please let me apologize that I am by far not an expert in logic and set theory but when reading the axoims of Zermelo and Fraenkel (ZF) I feel very uncomfortable with the formulation of the Axiom schema of specification:

Here, if $A$ is already some set, a collection $B=\{x\in A\mid \varphi(x)\}$ is defined to be a set as well, where $\varphi(x)$ is 'a formula with a free variable $x$'. I want to think of $\varphi$ as a function $$ \varphi\colon A\to \{0,1\} $$ but at this point, I do not have the notion of a functon yet (a function is a specific subset $A\times\{0,1\}$).

On the other hand, a function as above is exactly a subclass $B\subset A$ with $\varphi(x)=1$ if $x\in B$ and $\varphi(x)=0$ else.

Can I replace the axiom schema of specification in ZF by the axiom 'every subclass of a set is itself a set'?

Aparently, every subclass of a set is in fact a set in ZF, see here.

  • 2
    I don't really understand what you mean. How do you define a "subset" without already saying that it is a set? – tomasz Sep 06 '24 at 13:19
  • Or do you mean "every definable subclass of a set is a set"? I'm pretty sure this is equivalent to the usual axiom. – tomasz Sep 06 '24 at 13:22
  • Yes, this is what i meant. Sorry. Confusing. – mrpotato Sep 06 '24 at 13:24
  • 2
    The normal definition of the axiom does *not* presume functions of the form $f \subset A \times {0, 1}$, it involves *formulas* $\phi$ of first order logic. So, your proposed definition sounds like it’s probably just rephrasing the normal definition in different language. I say “probably” because it’s not 100% clear if you’re using terms like “subclass” with their standard meaning. – NikS Sep 06 '24 at 14:04

2 Answers2

6

First of all, you should familiarize yourself with the notion of a formula of first-order logic in the language of set theory, either formally (as in the definition on wikipedia or from any introductory logic textbook) or at least informally (as in, for example, Section 1.2 "Properties" of Introduction to Set Theory by Hrbáček and Jech). It's really not that complicated a concept.

Next, you should realize that "class" is not a defined concept in ZFC. From the point of view of ZFC, everything that exists is a set. Variables can't refer to proper classes, we can't quantify over proper classes, etc. So the statement "every subclass of a set is a set" can't be written down as an axiom of ZFC.

Now, when we talk about doing mathematics using ZFC, we often find ourselves wanting to talk about proper classes, in the sense of collections of sets that don't form a set, e.g. "all sets", "all sets with two elements", "all topological spaces", etc. If everything that exists is a set, what allows us to talk about such collections? Well, it's that they're specified by formulas of first-order logic in the language of set theory! So, for example, there is a formula $\varphi(x)$ that says "$x$ is a set with two elements". So we can talk about membership of sets in the class (by writing $\varphi(x)$ and $\lnot \varphi(x)$), even though the class itself is not an object that we can name by a variable.

Since this is the only access that ZFC has to classes, people often make the convention that in the context of ZFC, "class" means "collection of sets defined by a first-order formula in the language of set theory".

This brings us to making sense of your proposal "every subclass of a set is a set". If we adopt the convention above, then we can translate this proposal as follows: whenever we have a formula $\varphi(x)$ and a set $A$, the subclass of $A$ consisting of those elements satisfying $\varphi(x)$ [which is a class defined by the formula $x\in A\land \varphi(x)$] is a set. And this is exactly what the axiom schema of specification says.

So the schema of specification is not some mysterious thing. It's the closest ZFC can come (by virtue of being a first-order theory in the language of set theory, where variables can only range over sets) to expressing your intuitive idea "every subclass of a set is a set".

Alex Kruckman
  • 86,811
  • Is it entirely accurate to say “‘class’ is not a defined concept in ZFC”? Jech Set Theory says: “If $\phi(x, p_1, \ldots , p_n)$ is a formula, we call $C = {x : \phi(x, p_1, \ldots , p_n) }$ a class. Members of the class $C$ are all those sets $x$ that satisfy $\phi(x, p_1, \ldots , p_n)$.” That seems fairly well-defined to me. – NikS Sep 06 '24 at 19:33
  • 4
    @NikS That's a meta-theoretic definition, which we can use when we talk about ZFC. Inside ZFC, i.e. in the language of set theory, there is no definition of "class". This is in contrast to notions like "ordered pair" or "function" or "topological space", which do admit definitions in ZFC. – Alex Kruckman Sep 06 '24 at 20:02
  • OK, I see what you mean – NikS Sep 06 '24 at 20:06
  • There is also the option of extending ZFC to include proper classes, at which point you probably have NBG or something resembling it. – Kevin Sep 06 '24 at 23:33
  • @Kevin: You can also do second-order ZFC, where you can talk about classes, but the question is (probably) about first-order ZFC. – tomasz Sep 07 '24 at 11:20
4

If by "subclass" you mean "definable subclass", then yes, this is equivalent to the axiom of separation.

Formally, you can express this via the following axiom schema: $$ \forall x,y(\forall z (\varphi(z,y)\rightarrow z\in x))\rightarrow (\exists t \forall z (z\in t\leftrightarrow \varphi(z,y))) $$ (where $\varphi(z,y)$ is a formula in the language of set theory, $y$ can be a tuple).

This implies the axiom of separation (basically, just replace $\varphi(z,y)$ by $\varphi'(z,y,x)=\varphi(z,y)\land z\in x$). The converse is even easier.

tomasz
  • 37,896
  • Thanks for your answer. What does '(definable) subclass' mean? – mrpotato Sep 06 '24 at 13:38
  • A definable class is a family of all elements satisfying a given formula. A subclass of a set is a class whose elements are all members of this set. – tomasz Sep 06 '24 at 13:57
  • Are there restrictions on the formula, i.e. 'first order logic' or something? Thanks. – mrpotato Sep 06 '24 at 13:58
  • Yes, I am only talking about first order formulas here. If you meant to ask about higher order set theory, you should really make that clear in the question. – tomasz Sep 06 '24 at 14:00