Dismiss Notice
Join Physics Forums Today!
The friendliest, high quality science and math community on the planet! Everyone who loves science is here!

Another terminology question. ZFC and classes.

  1. Jun 16, 2010 #1


    User Avatar
    Staff Emeritus
    Science Advisor
    Gold Member

    It's often said that the axioms of ZFC set theory are the foundation of mathematics, but the same people who say that also use the term "class" a lot. For example, "the class of all ordinals", is apparently too large to qualify as a set. What's bugging me right now is that I read that there's no such thing as classes in ZFC. There's nothing but sets. So why are people using the term "class" at all? I guess the answer is "because it's useful". But shouldn't we either refrain from using that term, or say that we're actually using NBG, not ZFC.
  2. jcsd
  3. Jun 16, 2010 #2
    The short answer is that every set is class, but there are classes (called proper classes) that are not sets, like the (proper) class of all ordinals, the class of all sets, the famous Russell class of all sets that aren't members of themselves, etc.

    That's not entirely true: the objects in the intended domain of interpretation of ZFC are indeed what we take as "enough" sets to reduce almost, but not all, known mathematics to them, but you can refer proper classes indirectly within ZFC. For example, the formula:

    [tex]\phi\left(x\right)\equiv \forall y\left(y \in x \leftrightarrow y\notin y\right)[/tex]

    Defines the Russell class in ZFC, in the sense that it's true (relative to the intended interpretation) iff the free variable x is substituted for a name that denotes this class. You can also define the union and intersection of proper classes. What you can't do is prove, in ZFC, something like:

    [tex]\exists x\phi\left(x\right)[/tex]

    Just a couple last points: ZFC is the "foundation" of Mathematics only in the weak sense that it's enough for now; there is an ongoing discussion if there is a need to add new axioms (or take another approach altogether, like Category Theory).

    People don't use NBG (it's a nightmare) because it's unnecessary: everything that can be proved about sets (improper classes) in NBG can already be proved in ZFC alone, and there isn't really much use for proper classes, so people stick to the simplest theory (there are also alternative set theories to ZFC, most of them advanced by philosophical reasons, but most people don't use them because they are either reducible to ZFC, oe much weaker).
  4. Jun 17, 2010 #3


    User Avatar
    Staff Emeritus
    Science Advisor
    Gold Member

    Explicitly, a class in ZFC is a first-order unary predicate. A set is a member of a class iff it satisfies the predicate that defines the class.
  5. Jun 17, 2010 #4


    User Avatar
    Staff Emeritus
    Science Advisor
    Gold Member

    That's what I thought until yesterday, and I guess I'm back to thinking so now. I was confused by a few statements in the Wikipedia articles. These are from the ZFC article:
    The ontology of NBG includes proper classes as well as sets; a set is any class that can be a member of another class. (Sounds like they're saying that even the statement after the semicolon doesn't make sense in ZFC)

    ZFC does not formalize the notion of classes (collections of mathematical objects defined by a property shared by their members) and specifically does not include proper classes (objects that have members but cannot be members themselves).(The part after the "and" seems to be saying that the concept of a "proper class" isn't used at all in ZFC).
    And these are from the NBG article.
    The defining aspect of NBG is the distinction between proper class and set. (How could something that ZFC does too be the defining aspect of NBG?)

    A proper class is very large; NBG even admits of "the class of all sets". (Sounds like we wouldn't be able to say things like this if we prefer ZFC).

    Now you're making me curious. What known mathematics can't be reduced to ZFC?

    This is good stuff. :smile: I appreciate it. I'm still kind of new at this, so I wouldn't have thought of that way of saying it. Would the class of all sets be "defined" similarly by [itex]\phi\left(x\right)\equiv \forall y(y \in x)[/itex]?

    I have heard about that, but I don't really see the point. Is the goal to make the foundation as intuitive and easy to understand as possible, or is it to somehow find "the truth"? (I would be very skeptical towards the latter).

    That sounds good, but I don't know what it means. I have never really studied any kind of logic beyond truth tables for logical symbols. (I know what iff means, but I still don't understand first order or predicate. I know what unary means in other contexts, but I'm not sure if it I can a apply that here).

    I've been reading a little in a pdf of Rautenberg's book on mathematical logic the past few days, and I'll probably buy the book the next time I order stuff from Amazon. I might order Kunen's book too. If either of you have opinions about that, I'd be interested in hearing them (since I haven't been able to find Kunen's book online). In particular, does Kunen cover good stuff that Rautenberg doesn't?
  6. Jun 17, 2010 #5


    User Avatar
    Staff Emeritus
    Science Advisor
    Gold Member

    A predicate is something like
    x > 0
    which is a logical formula with zero or more free variables. (In this case, x is the free variable of type "real number". > and 0 have their obvious meaning)

    There are predicates such as
    P(x) = "x is not an element of x".​
    This predicate defines a class, which we might decide to write in set-builder notation:
    { x | x is not an element of x }.​
    This class, of course, is not a set. But it can be useful to retain the similar notation.

    JSuarez made the assertion "the union of two classes is a class". But what can that mean? :confused: This is ZFC, and ZFC talks about sets, how can we say anything about classes? Well, there are two common ways to proceed.
    1. In second-order logic, we can treat classes as objects themselves. Of course, proper classes still can't be members of a set, or even of a class. (But, as you might imagine, there are second-order classes)
    2. The assertion is really a theorem schema -- a ZFC theorem-valued function whose domain is strings of symbols that express classes.

    Both of these approaches have drawbacks. The first requires second-order logic which can be unpleasant at times. The second requires invoking some sort of theory of computation.

    Normally this would be a relevant point, but it's somewhat moot -- the axioms of ZFC already suffer from this flaw!

    (One neat thing about NBG is that it can be presented in a way that doesn't suffer this flaw)

    I confess that I'm lazy, and prefer to boldly assume Tarski's axiom.
  7. Jun 17, 2010 #6
    Ok, let me dispel a potential misunderstanding first. I didn't say:

    Which is indeed meaningless. What I wrote (I didn't edited in any way) was:

    And I didn't put much stock in it when I wrote it. What I meant was that, if you refer two classes by first-order predicates [itex]\phi_1\left(x\right)[/itex] and [itex]\phi_2\left(x\right)[/itex], then their "union" and "intersection" will be denoted by the predicates [itex]\phi_1\left(x\right)\cup \phi_1\left(x\right)[/itex] and [itex]\phi_1\left(x\right)\cap \phi_1\left(x\right)[/itex]. This is merely an extension of the trick of talking about classes in ZFC using first-order formulas and doesn't mean much, because you can't talk about membership in a proper class.

    By the way, I agree that Tarski's axiom does give you a lot of things for free.

    It doesn't: sets are exactly the classes where the membership relation is well-defined.

    The concept may be used (with restrictions, as was already said) but the object "proper class" doesn't exist in the ontology of sets.

    Because proper classes exist in the intended interpretaion of NBG, but they don't in ZFC.

    In ZFC, the only thing we can do is refer the "class of all sets" by the formula [itex]\phi\left(x\right)\equiv x=x[/itex]. In the intended interpretation of NBG this class exists as an object.

    This happens, for example, when you want to state something about the category of all groups (or ring, vector spaces, topological spaces, etc.); the class of all objects of these categories is not a set, but you can circunvent this, because these are "locally small" categories, but I won't go into this now. There are also "large" categories where everything is a proper class, but Hurkyl could say more about this than I.

    It's a possibility; there is another one above.

    I have to say neither one. One goal of foundational research is indeed to know how much Mathematics can be extracted from a few assumptions as possible, but it's not required that these are intuitive and/or easy. On the other hand, the goal of an "ultimate" foundation is, at least for the present, dead.

    One final note: if you are new to logic, I would recommend that you start by Enderton's book "A Mathematical Introduction to Logic"; I don't know the books you mention (I know Ken Kunen, but the only book I read from him was about forcing in set theory) but, in my opinion, it's difficult to surpass Enderton's clarity.
  8. Jun 17, 2010 #7


    User Avatar
    Staff Emeritus
    Science Advisor
    Gold Member

    Okay, that's fair. But still, defining the operation has the same sticky issues as stating the theorem.

    Maybe I'm misreading you but.... If we're viewing predicates as classes, we do get to talk about membership. If I use [P] when I'm viewing P as a class, then we define
    [tex]x \in [P] := P(x)[/tex]​
    and we get all the second-order theorems you'd expect, such as
    [tex]x \in [P] \wedge x \in [Q] \Leftrightarrow x \in [P] \cap [Q][/tex]​
  9. Jun 17, 2010 #8
    Language is slippery. We can talk about membership of a set in a class, but not of membership of a proper class in another one (we don't even have names for classes in ZFC).

    And yes, you are correct in stating that most set equalities transfer to classes, actually we can even do it without using the membership relation; for example, when you state:

    x \in [P] \wedge x \in [Q] \Leftrightarrow x \in [P] \cap [Q]

    This can also be written as:

    [P \cap Q]\left(x\right) \equiv \phi\left(x\right)\wedge\psi\left(x\right)

    And the same goes for containment, equality, etc.

    But as an example that [itex]\in[/itex] causes problems when dealing with classes, how could we express [itex]\mathcal{P}\left(A\right)[/itex], if A is a proper class?
  10. Jun 18, 2010 #9


    User Avatar
    Staff Emeritus
    Science Advisor
    Gold Member

    Right; the membership relation I stated is on Set x Class, not on Class x Class. (if it looked like I said otherwise, I didn't mean it)

    However, without really going beyond what we've permitted ourselves already, we can make statements like
    [tex]A : B \to C[/tex]​
    with all three variables proper classes, as well as all of the things we can do with cartesian productions and transposition. e.g.
    [tex]A : B \to \mathcal{P}(C)[/tex]​
    is equivalent to
    [tex]A : B \times C \to \{ 0, 1 \}[/tex]​
    and, of course,
    [tex]A \in \mathcal{P}(C) \equiv A : C \to \{ 0, 1 \}[/tex]​
Share this great discussion with others via Reddit, Google+, Twitter, or Facebook