ILE Home Intuitionistic Logic Explorer < Previous   Next >
Nearby theorems
Mirrors  >  Home  >  ILE Home  >  Th. List  >  df-clab Unicode version

Definition df-clab 2104
Description: Define class abstraction notation (so-called by Quine), also called a "class builder" in the literature.  x and  y need not be distinct. Definition 2.1 of [Quine] p. 16. Typically,  ph will have  y as a free variable, and " { y  |  ph } " is read "the class of all sets  y such that  ph ( y ) is true." We do not define  { y  |  ph } in isolation but only as part of an expression that extends or "overloads" the  e. relationship.

This is our first use of the 
e. symbol to connect classes instead of sets. The syntax definition wcel 1465, which extends or "overloads" the wel 1466 definition connecting setvar variables, requires that both sides of  e. be a class. In df-cleq 2110 and df-clel 2113, we introduce a new kind of variable (class variable) that can substituted with expressions such as  { y  | 
ph }. In the present definition, the  x on the left-hand side is a setvar variable. Syntax definition cv 1315 allows us to substitute a setvar variable  x for a class variable: all sets are classes by cvjust 2112 (but not necessarily vice-versa). For a full description of how classes are introduced and how to recover the primitive language, see the discussion in Quine (and under abeq2 2226 for a quick overview).

Because class variables can be substituted with compound expressions and setvar variables cannot, it is often useful to convert a theorem containing a free setvar variable to a more general version with a class variable.

This is called the "axiom of class comprehension" by [Levy] p. 338, who treats the theory of classes as an extralogical extension to our logic and set theory axioms. He calls the construction  {
y  |  ph } a "class term".

For a general discussion of the theory of classes, see https://us.metamath.org/mpeuni/mmset.html#class 2226. (Contributed by NM, 5-Aug-1993.)

Assertion
Ref Expression
df-clab  |-  ( x  e.  { y  | 
ph }  <->  [ x  /  y ] ph )

Detailed syntax breakdown of Definition df-clab
StepHypRef Expression
1 vx . . . 4  setvar  x
21cv 1315 . . 3  class  x
3 wph . . . 4  wff  ph
4 vy . . . 4  setvar  y
53, 4cab 2103 . . 3  class  { y  |  ph }
62, 5wcel 1465 . 2  wff  x  e. 
{ y  |  ph }
73, 4, 1wsb 1720 . 2  wff  [ x  /  y ] ph
86, 7wb 104 1  wff  ( x  e.  { y  | 
ph }  <->  [ x  /  y ] ph )
Colors of variables: wff set class
This definition is referenced by:  abid  2105  hbab1  2106  hbab  2108  cvjust  2112  abbi  2231  sb8ab  2239  cbvab  2240  clelab  2242  nfabd  2277  vjust  2661  dfsbcq2  2885  sbc8g  2889  csbabg  3031  unab  3313  inab  3314  difab  3315  rabeq0  3362  abeq0  3363  oprcl  3699  exss  4119  peano1  4478  peano2  4479  iotaeq  5066  nfvres  5422  abrexex2g  5986  opabex3d  5987  opabex3  5988  abrexex2  5990  bdab  12932  bdph  12944  bdcriota  12977
  Copyright terms: Public domain W3C validator