Metamath Proof Explorer |
< Previous
Next >
Nearby theorems |
||
Mirrors > Home > MPE Home > Th. List > df-clab | Structured version Visualization version GIF version |
Description: Define class abstraction
notation (so-called by Quine), also called a
"class builder" in the literature. 𝑥 and 𝑦 need
not be distinct.
Definition 2.1 of [Quine] p. 16.
Typically, 𝜑 will have 𝑦 as a
free variable, and "{𝑦 ∣ 𝜑} " is read "the class of
all sets 𝑦
such that 𝜑(𝑦) is true." We do not define
{𝑦 ∣
𝜑} in
isolation but only as part of an expression that extends or
"overloads"
the ∈ relationship.
This is our first use of the ∈ symbol to connect classes instead of sets. The syntax definition wcel 1937, which extends or "overloads" the wel 1938 definition connecting setvar variables, requires that both sides of ∈ be classes. In df-cleq 2498 and df-clel 2501, we introduce a new kind of variable (class variable) that can be substituted with expressions such as {𝑦 ∣ 𝜑}. In the present definition, the 𝑥 on the left-hand side is a setvar variable. Syntax definition cv 1467 allows us to substitute a setvar variable 𝑥 for a class variable: all sets are classes by cvjust 2500 (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 2614 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 done with theorems such as vtoclg 3128 which is used, for example, to convert elirrv 8197 to elirr 8198. 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 {𝑦 ∣ 𝜑} a "class term". While the three class definitions df-clab 2492, df-cleq 2498, and df-clel 2501 are eliminable and conservative and thus meet the requirements for sound definitions, they are technically axioms in that they do not satisfy the requirements for the current definition checker. The proofs of conservativity require external justification that is beyond the scope of the definition checker. For a general discussion of the theory of classes, see mmset.html#class. (Contributed by NM, 26-May-1993.) |
Ref | Expression |
---|---|
df-clab | ⊢ (𝑥 ∈ {𝑦 ∣ 𝜑} ↔ [𝑥 / 𝑦]𝜑) |
Step | Hyp | Ref | Expression |
---|---|---|---|
1 | vx | . . . 4 setvar 𝑥 | |
2 | 1 | cv 1467 | . . 3 class 𝑥 |
3 | wph | . . . 4 wff 𝜑 | |
4 | vy | . . . 4 setvar 𝑦 | |
5 | 3, 4 | cab 2491 | . . 3 class {𝑦 ∣ 𝜑} |
6 | 2, 5 | wcel 1937 | . 2 wff 𝑥 ∈ {𝑦 ∣ 𝜑} |
7 | 3, 4, 1 | wsb 1828 | . 2 wff [𝑥 / 𝑦]𝜑 |
8 | 6, 7 | wb 191 | 1 wff (𝑥 ∈ {𝑦 ∣ 𝜑} ↔ [𝑥 / 𝑦]𝜑) |
Colors of variables: wff setvar class |
This definition is referenced by: abid 2493 hbab1 2494 hbab 2496 cvjust 2500 cbvab 2628 clelab 2630 nfabd2 2665 vjust 3067 dfsbcq2 3294 sbc8g 3299 unab 3736 inab 3737 difab 3738 abtru 3785 csbab 3837 exss 4704 iotaeq 5605 abrexex2g 6847 opabex3d 6848 opabex3 6849 abrexex2 6851 bj-hbab1 31568 bj-abbi 31572 bj-vjust 31583 eliminable1 31632 bj-vexwt 31647 bj-vexwvt 31649 bj-abfal 31693 bj-snsetex 31743 bj-vjust2 31805 csbabgOLD 37559 |
Copyright terms: Public domain | W3C validator |