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

Definition df-clab 2072
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 1436, which extends or "overloads" the wel 1437 definition connecting setvar variables, requires that both sides of  e. be a class. In df-cleq 2078 and df-clel 2081, 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 1286 allows us to substitute a setvar variable  x for a class variable: all sets are classes by cvjust 2080 (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 2193 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 http://us.metamath.org/mpeuni/mmset.html#class. (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 1286 . . 3  class  x
3 wph . . . 4  wff  ph
4 vy . . . 4  setvar  y
53, 4cab 2071 . . 3  class  { y  |  ph }
62, 5wcel 1436 . 2  wff  x  e. 
{ y  |  ph }
73, 4, 1wsb 1689 . 2  wff  [ x  /  y ] ph
86, 7wb 103 1  wff  ( x  e.  { y  | 
ph }  <->  [ x  /  y ] ph )
Colors of variables: wff set class
This definition is referenced by:  abid  2073  hbab1  2074  hbab  2076  cvjust  2080  abbi  2198  sb8ab  2206  cbvab  2207  clelab  2209  nfabd  2243  vjust  2616  dfsbcq2  2832  sbc8g  2836  csbabg  2978  unab  3255  inab  3256  difab  3257  rabeq0  3301  abeq0  3302  oprcl  3629  exss  4028  peano1  4382  peano2  4383  iotaeq  4954  nfvres  5300  abrexex2g  5848  opabex3d  5849  opabex3  5850  abrexex2  5852  bdab  11174  bdph  11186  bdcriota  11219
  Copyright terms: Public domain W3C validator