| Metamath
Proof Explorer Theorem List (p. 38 of 501) | < Previous Next > | |
| Bad symbols? Try the
GIF version. |
||
|
Mirrors > Metamath Home Page > MPE Home Page > Theorem List Contents > Recent Proofs This page: Page List |
||
| Color key: | (1-30976) |
(30977-32499) |
(32500-50086) |
| Type | Label | Description |
|---|---|---|
| Statement | ||
| Theorem | rmoimi 3701 | Restricted "at most one" is preserved through implication (note wff reversal). (Contributed by Alexander van der Vekens, 17-Jun-2017.) |
| ⊢ (𝜑 → 𝜓) ⇒ ⊢ (∃*𝑥 ∈ 𝐴 𝜓 → ∃*𝑥 ∈ 𝐴 𝜑) | ||
| Theorem | rmoimi2 3702 | Restricted "at most one" is preserved through implication (note wff reversal). (Contributed by Alexander van der Vekens, 17-Jun-2017.) |
| ⊢ ∀𝑥((𝑥 ∈ 𝐴 ∧ 𝜑) → (𝑥 ∈ 𝐵 ∧ 𝜓)) ⇒ ⊢ (∃*𝑥 ∈ 𝐵 𝜓 → ∃*𝑥 ∈ 𝐴 𝜑) | ||
| Theorem | 2reu5a 3703 | Double restricted existential uniqueness in terms of restricted existence and restricted "at most one". (Contributed by Alexander van der Vekens, 17-Jun-2017.) |
| ⊢ (∃!𝑥 ∈ 𝐴 ∃!𝑦 ∈ 𝐵 𝜑 ↔ (∃𝑥 ∈ 𝐴 (∃𝑦 ∈ 𝐵 𝜑 ∧ ∃*𝑦 ∈ 𝐵 𝜑) ∧ ∃*𝑥 ∈ 𝐴 (∃𝑦 ∈ 𝐵 𝜑 ∧ ∃*𝑦 ∈ 𝐵 𝜑))) | ||
| Theorem | reuimrmo 3704 | Restricted uniqueness implies restricted "at most one" through implication, analogous to euimmo 2617. (Contributed by Alexander van der Vekens, 25-Jun-2017.) |
| ⊢ (∀𝑥 ∈ 𝐴 (𝜑 → 𝜓) → (∃!𝑥 ∈ 𝐴 𝜓 → ∃*𝑥 ∈ 𝐴 𝜑)) | ||
| Theorem | 2reuswap 3705* | A condition allowing swap of uniqueness and existential quantifiers. (Contributed by Thierry Arnoux, 7-Apr-2017.) (Revised by NM, 16-Jun-2017.) |
| ⊢ (∀𝑥 ∈ 𝐴 ∃*𝑦 ∈ 𝐵 𝜑 → (∃!𝑥 ∈ 𝐴 ∃𝑦 ∈ 𝐵 𝜑 → ∃!𝑦 ∈ 𝐵 ∃𝑥 ∈ 𝐴 𝜑)) | ||
| Theorem | 2reuswap2 3706* | A condition allowing swap of uniqueness and existential quantifiers. (Contributed by Thierry Arnoux, 7-Apr-2017.) |
| ⊢ (∀𝑥 ∈ 𝐴 ∃*𝑦(𝑦 ∈ 𝐵 ∧ 𝜑) → (∃!𝑥 ∈ 𝐴 ∃𝑦 ∈ 𝐵 𝜑 → ∃!𝑦 ∈ 𝐵 ∃𝑥 ∈ 𝐴 𝜑)) | ||
| Theorem | reuxfrd 3707* | Transfer existential uniqueness from a variable 𝑥 to another variable 𝑦 contained in expression 𝐴. (Contributed by NM, 16-Jan-2012.) Separate variables 𝐵 and 𝐶. (Revised by Thierry Arnoux, 8-Oct-2017.) |
| ⊢ ((𝜑 ∧ 𝑦 ∈ 𝐶) → 𝐴 ∈ 𝐵) & ⊢ ((𝜑 ∧ 𝑥 ∈ 𝐵) → ∃*𝑦 ∈ 𝐶 𝑥 = 𝐴) ⇒ ⊢ (𝜑 → (∃!𝑥 ∈ 𝐵 ∃𝑦 ∈ 𝐶 (𝑥 = 𝐴 ∧ 𝜓) ↔ ∃!𝑦 ∈ 𝐶 𝜓)) | ||
| Theorem | reuxfr 3708* | Transfer existential uniqueness from a variable 𝑥 to another variable 𝑦 contained in expression 𝐴. (Contributed by NM, 14-Nov-2004.) (Revised by NM, 16-Jun-2017.) |
| ⊢ (𝑦 ∈ 𝐶 → 𝐴 ∈ 𝐵) & ⊢ (𝑥 ∈ 𝐵 → ∃*𝑦 ∈ 𝐶 𝑥 = 𝐴) ⇒ ⊢ (∃!𝑥 ∈ 𝐵 ∃𝑦 ∈ 𝐶 (𝑥 = 𝐴 ∧ 𝜑) ↔ ∃!𝑦 ∈ 𝐶 𝜑) | ||
| Theorem | reuxfr1d 3709* | Transfer existential uniqueness from a variable 𝑥 to another variable 𝑦 contained in expression 𝐴. Cf. reuxfr1ds 3710. (Contributed by Thierry Arnoux, 7-Apr-2017.) |
| ⊢ ((𝜑 ∧ 𝑦 ∈ 𝐶) → 𝐴 ∈ 𝐵) & ⊢ ((𝜑 ∧ 𝑥 ∈ 𝐵) → ∃!𝑦 ∈ 𝐶 𝑥 = 𝐴) & ⊢ ((𝜑 ∧ 𝑥 = 𝐴) → (𝜓 ↔ 𝜒)) ⇒ ⊢ (𝜑 → (∃!𝑥 ∈ 𝐵 𝜓 ↔ ∃!𝑦 ∈ 𝐶 𝜒)) | ||
| Theorem | reuxfr1ds 3710* | Transfer existential uniqueness from a variable 𝑥 to another variable 𝑦 contained in expression 𝐴. Use reuhypd 5365 to eliminate the second hypothesis. (Contributed by NM, 16-Jan-2012.) |
| ⊢ ((𝜑 ∧ 𝑦 ∈ 𝐶) → 𝐴 ∈ 𝐵) & ⊢ ((𝜑 ∧ 𝑥 ∈ 𝐵) → ∃!𝑦 ∈ 𝐶 𝑥 = 𝐴) & ⊢ (𝑥 = 𝐴 → (𝜓 ↔ 𝜒)) ⇒ ⊢ (𝜑 → (∃!𝑥 ∈ 𝐵 𝜓 ↔ ∃!𝑦 ∈ 𝐶 𝜒)) | ||
| Theorem | reuxfr1 3711* | Transfer existential uniqueness from a variable 𝑥 to another variable 𝑦 contained in expression 𝐴. Use reuhyp 5366 to eliminate the second hypothesis. (Contributed by NM, 14-Nov-2004.) |
| ⊢ (𝑦 ∈ 𝐶 → 𝐴 ∈ 𝐵) & ⊢ (𝑥 ∈ 𝐵 → ∃!𝑦 ∈ 𝐶 𝑥 = 𝐴) & ⊢ (𝑥 = 𝐴 → (𝜑 ↔ 𝜓)) ⇒ ⊢ (∃!𝑥 ∈ 𝐵 𝜑 ↔ ∃!𝑦 ∈ 𝐶 𝜓) | ||
| Theorem | reuind 3712* | Existential uniqueness via an indirect equality. (Contributed by NM, 16-Oct-2010.) |
| ⊢ (𝑥 = 𝑦 → (𝜑 ↔ 𝜓)) & ⊢ (𝑥 = 𝑦 → 𝐴 = 𝐵) ⇒ ⊢ ((∀𝑥∀𝑦(((𝐴 ∈ 𝐶 ∧ 𝜑) ∧ (𝐵 ∈ 𝐶 ∧ 𝜓)) → 𝐴 = 𝐵) ∧ ∃𝑥(𝐴 ∈ 𝐶 ∧ 𝜑)) → ∃!𝑧 ∈ 𝐶 ∀𝑥((𝐴 ∈ 𝐶 ∧ 𝜑) → 𝑧 = 𝐴)) | ||
| Theorem | 2rmorex 3713* | Double restricted quantification with "at most one", analogous to 2moex 2641. (Contributed by Alexander van der Vekens, 17-Jun-2017.) |
| ⊢ (∃*𝑥 ∈ 𝐴 ∃𝑦 ∈ 𝐵 𝜑 → ∀𝑦 ∈ 𝐵 ∃*𝑥 ∈ 𝐴 𝜑) | ||
| Theorem | 2reu5lem1 3714* | Lemma for 2reu5 3717. Note that ∃!𝑥 ∈ 𝐴∃!𝑦 ∈ 𝐵𝜑 does not mean "there is exactly one 𝑥 in 𝐴 and exactly one 𝑦 in 𝐵 such that 𝜑 holds"; see comment for 2eu5 2657. (Contributed by Alexander van der Vekens, 17-Jun-2017.) |
| ⊢ (∃!𝑥 ∈ 𝐴 ∃!𝑦 ∈ 𝐵 𝜑 ↔ ∃!𝑥∃!𝑦(𝑥 ∈ 𝐴 ∧ 𝑦 ∈ 𝐵 ∧ 𝜑)) | ||
| Theorem | 2reu5lem2 3715* | Lemma for 2reu5 3717. (Contributed by Alexander van der Vekens, 17-Jun-2017.) |
| ⊢ (∀𝑥 ∈ 𝐴 ∃*𝑦 ∈ 𝐵 𝜑 ↔ ∀𝑥∃*𝑦(𝑥 ∈ 𝐴 ∧ 𝑦 ∈ 𝐵 ∧ 𝜑)) | ||
| Theorem | 2reu5lem3 3716* | Lemma for 2reu5 3717. This lemma is interesting in its own right, showing that existential restriction in the last conjunct (the "at most one" part) is optional; compare rmo2 3838. (Contributed by Alexander van der Vekens, 17-Jun-2017.) |
| ⊢ ((∃!𝑥 ∈ 𝐴 ∃!𝑦 ∈ 𝐵 𝜑 ∧ ∀𝑥 ∈ 𝐴 ∃*𝑦 ∈ 𝐵 𝜑) ↔ (∃𝑥 ∈ 𝐴 ∃𝑦 ∈ 𝐵 𝜑 ∧ ∃𝑧∃𝑤∀𝑥 ∈ 𝐴 ∀𝑦 ∈ 𝐵 (𝜑 → (𝑥 = 𝑧 ∧ 𝑦 = 𝑤)))) | ||
| Theorem | 2reu5 3717* | Double restricted existential uniqueness in terms of restricted existential quantification and restricted universal quantification, analogous to 2eu5 2657 and reu3 3686. (Contributed by Alexander van der Vekens, 17-Jun-2017.) |
| ⊢ ((∃!𝑥 ∈ 𝐴 ∃!𝑦 ∈ 𝐵 𝜑 ∧ ∀𝑥 ∈ 𝐴 ∃*𝑦 ∈ 𝐵 𝜑) ↔ (∃𝑥 ∈ 𝐴 ∃𝑦 ∈ 𝐵 𝜑 ∧ ∃𝑧 ∈ 𝐴 ∃𝑤 ∈ 𝐵 ∀𝑥 ∈ 𝐴 ∀𝑦 ∈ 𝐵 (𝜑 → (𝑥 = 𝑧 ∧ 𝑦 = 𝑤)))) | ||
| Theorem | 2reurmo 3718 | Double restricted quantification with restricted existential uniqueness and restricted "at most one", analogous to 2eumo 2643. (Contributed by Alexander van der Vekens, 24-Jun-2017.) |
| ⊢ (∃!𝑥 ∈ 𝐴 ∃*𝑦 ∈ 𝐵 𝜑 → ∃*𝑥 ∈ 𝐴 ∃!𝑦 ∈ 𝐵 𝜑) | ||
| Theorem | 2reurex 3719* | Double restricted quantification with existential uniqueness, analogous to 2euex 2642. (Contributed by Alexander van der Vekens, 24-Jun-2017.) |
| ⊢ (∃!𝑥 ∈ 𝐴 ∃𝑦 ∈ 𝐵 𝜑 → ∃𝑦 ∈ 𝐵 ∃!𝑥 ∈ 𝐴 𝜑) | ||
| Theorem | 2rmoswap 3720* | A condition allowing to swap restricted "at most one" and restricted existential quantifiers, analogous to 2moswap 2645. (Contributed by Alexander van der Vekens, 25-Jun-2017.) |
| ⊢ (∀𝑥 ∈ 𝐴 ∃*𝑦 ∈ 𝐵 𝜑 → (∃*𝑥 ∈ 𝐴 ∃𝑦 ∈ 𝐵 𝜑 → ∃*𝑦 ∈ 𝐵 ∃𝑥 ∈ 𝐴 𝜑)) | ||
| Theorem | 2rexreu 3721* | Double restricted existential uniqueness implies double restricted unique existential quantification, analogous to 2exeu 2647. (Contributed by Alexander van der Vekens, 25-Jun-2017.) |
| ⊢ ((∃!𝑥 ∈ 𝐴 ∃𝑦 ∈ 𝐵 𝜑 ∧ ∃!𝑦 ∈ 𝐵 ∃𝑥 ∈ 𝐴 𝜑) → ∃!𝑥 ∈ 𝐴 ∃!𝑦 ∈ 𝐵 𝜑) | ||
This is a very useless definition, which "abbreviates" (𝑥 = 𝑦 → 𝜑) as CondEq(𝑥 = 𝑦 → 𝜑). What this display hides, though, is that the first expression, even though it has a shorter constant string, is actually much more complicated in its parse tree: it is parsed as (wi (wceq (cv vx) (cv vy)) wph), while the CondEq version is parsed as (wcdeq vx vy wph). It also allows to give a name to the specific ternary operation (𝑥 = 𝑦 → 𝜑). This is all used as part of a metatheorem: we want to say that ⊢ (𝑥 = 𝑦 → (𝜑(𝑥) ↔ 𝜑(𝑦))) and ⊢ (𝑥 = 𝑦 → 𝐴(𝑥) = 𝐴(𝑦)) are provable, for any expressions 𝜑(𝑥) or 𝐴(𝑥) in the language. The proof is by induction, so the base case is each of the primitives, which is why you will see a theorem for each of the set.mm primitive operations. The metatheorem comes with a disjoint variables assumption: every variable in 𝜑(𝑥) is assumed disjoint from 𝑥 except 𝑥 itself. For such a proof by induction, we must consider each of the possible forms of 𝜑(𝑥). If it is a variable other than 𝑥, then we have CondEq(𝑥 = 𝑦 → 𝐴 = 𝐴) or CondEq(𝑥 = 𝑦 → (𝜑 ↔ 𝜑)), which is provable by cdeqth 3726 and reflexivity. Since we are only working with class and wff expressions, it can't be 𝑥 itself in set.mm, but if it was we'd have to also prove CondEq(𝑥 = 𝑦 → 𝑥 = 𝑦) (where set equality is being used on the right). Otherwise, it is a primitive operation applied to smaller expressions. In these cases, for each setvar variable parameter to the operation, we must consider if it is equal to 𝑥 or not, which yields 2^n proof obligations. Luckily, all primitive operations in set.mm have either zero or one setvar variable, so we only need to prove one statement for the non-set constructors (like implication) and two for the constructors taking a set (the universal quantifier and the class builder). In each of the primitive proofs, we are allowed to assume that 𝑦 is disjoint from 𝜑(𝑥) and vice versa, because this is maintained through the induction. This is how we satisfy the disjoint variable conditions of cdeqab1 3731 and cdeqab 3729. | ||
| Syntax | wcdeq 3722 | Extend wff notation to include conditional equality. This is a technical device used in the proof that Ⅎ is the not-free predicate, and that definitions are conservative as a result. |
| wff CondEq(𝑥 = 𝑦 → 𝜑) | ||
| Definition | df-cdeq 3723 | Define conditional equality. All the notation to the left of the ↔ is fake; the parentheses and arrows are all part of the notation, which could equally well be written CondEq𝑥𝑦𝜑. On the right side is the actual implication arrow. The reason for this definition is to "flatten" the structure on the right side (whose tree structure is something like (wi (wceq (cv vx) (cv vy)) wph) ) into just (wcdeq vx vy wph). (Contributed by Mario Carneiro, 11-Aug-2016.) |
| ⊢ (CondEq(𝑥 = 𝑦 → 𝜑) ↔ (𝑥 = 𝑦 → 𝜑)) | ||
| Theorem | cdeqi 3724 | Deduce conditional equality. (Contributed by Mario Carneiro, 11-Aug-2016.) |
| ⊢ (𝑥 = 𝑦 → 𝜑) ⇒ ⊢ CondEq(𝑥 = 𝑦 → 𝜑) | ||
| Theorem | cdeqri 3725 | Property of conditional equality. (Contributed by Mario Carneiro, 11-Aug-2016.) |
| ⊢ CondEq(𝑥 = 𝑦 → 𝜑) ⇒ ⊢ (𝑥 = 𝑦 → 𝜑) | ||
| Theorem | cdeqth 3726 | Deduce conditional equality from a theorem. (Contributed by Mario Carneiro, 11-Aug-2016.) |
| ⊢ 𝜑 ⇒ ⊢ CondEq(𝑥 = 𝑦 → 𝜑) | ||
| Theorem | cdeqnot 3727 | Distribute conditional equality over negation. (Contributed by Mario Carneiro, 11-Aug-2016.) |
| ⊢ CondEq(𝑥 = 𝑦 → (𝜑 ↔ 𝜓)) ⇒ ⊢ CondEq(𝑥 = 𝑦 → (¬ 𝜑 ↔ ¬ 𝜓)) | ||
| Theorem | cdeqal 3728* | Distribute conditional equality over quantification. (Contributed by Mario Carneiro, 11-Aug-2016.) |
| ⊢ CondEq(𝑥 = 𝑦 → (𝜑 ↔ 𝜓)) ⇒ ⊢ CondEq(𝑥 = 𝑦 → (∀𝑧𝜑 ↔ ∀𝑧𝜓)) | ||
| Theorem | cdeqab 3729* | Distribute conditional equality over abstraction. (Contributed by Mario Carneiro, 11-Aug-2016.) |
| ⊢ CondEq(𝑥 = 𝑦 → (𝜑 ↔ 𝜓)) ⇒ ⊢ CondEq(𝑥 = 𝑦 → {𝑧 ∣ 𝜑} = {𝑧 ∣ 𝜓}) | ||
| Theorem | cdeqal1 3730* | Distribute conditional equality over quantification. Usage of this theorem is discouraged because it depends on ax-13 2377. (Contributed by Mario Carneiro, 11-Aug-2016.) (New usage is discouraged.) |
| ⊢ CondEq(𝑥 = 𝑦 → (𝜑 ↔ 𝜓)) ⇒ ⊢ CondEq(𝑥 = 𝑦 → (∀𝑥𝜑 ↔ ∀𝑦𝜓)) | ||
| Theorem | cdeqab1 3731* | Distribute conditional equality over abstraction. Usage of this theorem is discouraged because it depends on ax-13 2377. (Contributed by Mario Carneiro, 11-Aug-2016.) (New usage is discouraged.) |
| ⊢ CondEq(𝑥 = 𝑦 → (𝜑 ↔ 𝜓)) ⇒ ⊢ CondEq(𝑥 = 𝑦 → {𝑥 ∣ 𝜑} = {𝑦 ∣ 𝜓}) | ||
| Theorem | cdeqim 3732 | Distribute conditional equality over implication. (Contributed by Mario Carneiro, 11-Aug-2016.) |
| ⊢ CondEq(𝑥 = 𝑦 → (𝜑 ↔ 𝜓)) & ⊢ CondEq(𝑥 = 𝑦 → (𝜒 ↔ 𝜃)) ⇒ ⊢ CondEq(𝑥 = 𝑦 → ((𝜑 → 𝜒) ↔ (𝜓 → 𝜃))) | ||
| Theorem | cdeqcv 3733 | Conditional equality for set-to-class promotion. (Contributed by Mario Carneiro, 11-Aug-2016.) |
| ⊢ CondEq(𝑥 = 𝑦 → 𝑥 = 𝑦) | ||
| Theorem | cdeqeq 3734 | Distribute conditional equality over equality. (Contributed by Mario Carneiro, 11-Aug-2016.) |
| ⊢ CondEq(𝑥 = 𝑦 → 𝐴 = 𝐵) & ⊢ CondEq(𝑥 = 𝑦 → 𝐶 = 𝐷) ⇒ ⊢ CondEq(𝑥 = 𝑦 → (𝐴 = 𝐶 ↔ 𝐵 = 𝐷)) | ||
| Theorem | cdeqel 3735 | Distribute conditional equality over elementhood. (Contributed by Mario Carneiro, 11-Aug-2016.) |
| ⊢ CondEq(𝑥 = 𝑦 → 𝐴 = 𝐵) & ⊢ CondEq(𝑥 = 𝑦 → 𝐶 = 𝐷) ⇒ ⊢ CondEq(𝑥 = 𝑦 → (𝐴 ∈ 𝐶 ↔ 𝐵 ∈ 𝐷)) | ||
| Theorem | nfcdeq 3736* | If we have a conditional equality proof, where 𝜑 is 𝜑(𝑥) and 𝜓 is 𝜑(𝑦), and 𝜑(𝑥) in fact does not have 𝑥 free in it according to Ⅎ, then 𝜑(𝑥) ↔ 𝜑(𝑦) unconditionally. This proves that Ⅎ𝑥𝜑 is actually a not-free predicate. Usage of this theorem is discouraged because it depends on ax-13 2377. (Contributed by Mario Carneiro, 11-Aug-2016.) (New usage is discouraged.) |
| ⊢ Ⅎ𝑥𝜑 & ⊢ CondEq(𝑥 = 𝑦 → (𝜑 ↔ 𝜓)) ⇒ ⊢ (𝜑 ↔ 𝜓) | ||
| Theorem | nfccdeq 3737* | Variation of nfcdeq 3736 for classes. Usage of this theorem is discouraged because it depends on ax-13 2377. (Contributed by Mario Carneiro, 11-Aug-2016.) Avoid ax-11 2163. (Revised by GG, 19-May-2023.) (New usage is discouraged.) |
| ⊢ Ⅎ𝑥𝐴 & ⊢ CondEq(𝑥 = 𝑦 → 𝐴 = 𝐵) ⇒ ⊢ 𝐴 = 𝐵 | ||
| Theorem | rru 3738* |
Relative version of Russell's paradox ru 3739 (which corresponds to the
case 𝐴 = V).
Originally a subproof in pwnss 5298. (Contributed by Stefan O'Rear, 22-Feb-2015.) Avoid df-nel 3038. (Revised by Steven Nguyen, 23-Nov-2022.) Reduce axiom usage. (Revised by GG, 30-Aug-2024.) |
| ⊢ ¬ {𝑥 ∈ 𝐴 ∣ ¬ 𝑥 ∈ 𝑥} ∈ 𝐴 | ||
| Theorem | ru 3739 |
Russell's Paradox. Proposition 4.14 of [TakeutiZaring] p. 14.
In the late 1800s, Frege's Axiom of (unrestricted) Comprehension, expressed in our notation as 𝐴 ∈ V, asserted that any collection of sets 𝐴 is a set i.e. belongs to the universe V of all sets. In particular, by substituting {𝑥 ∣ 𝑥 ∉ 𝑥} (the "Russell class") for 𝐴, it asserted {𝑥 ∣ 𝑥 ∉ 𝑥} ∈ V, meaning that the "collection of all sets which are not members of themselves" is a set. However, here we prove {𝑥 ∣ 𝑥 ∉ 𝑥} ∉ V. This contradiction was discovered by Russell in 1901 (published in 1903), invalidating the Comprehension Axiom and leading to the collapse of Frege's system, which Frege acknowledged in the second edition of his Grundgesetze der Arithmetik. In 1908, Zermelo rectified this fatal flaw by replacing Comprehension with a weaker Subset (or Separation) Axiom ssex 5267 asserting that 𝐴 is a set only when it is smaller than some other set 𝐵. However, Zermelo was then faced with a "chicken and egg" problem of how to show 𝐵 is a set, leading him to introduce the set-building axioms of Null Set 0ex 5253, Pairing prex 5383, Union uniex 7688, Power Set pwex 5326, and Infinity omex 9556 to give him some starting sets to work with (all of which, before Russell's Paradox, were immediate consequences of Frege's Comprehension). In 1922 Fraenkel strengthened the Subset Axiom with our present Replacement Axiom funimaex 6581 (whose modern formalization is due to Skolem, also in 1922). Thus, in a very real sense Russell's Paradox spawned the invention of ZF set theory and completely revised the foundations of mathematics! Another mainstream formalization of set theory, devised by von Neumann, Bernays, and Goedel, uses class variables rather than setvar variables as its primitives. The axiom system NBG in [Mendelson] p. 225 is suitable for a Metamath encoding. NBG is a conservative extension of ZF in that it proves exactly the same theorems as ZF that are expressible in the language of ZF. An advantage of NBG is that it is finitely axiomatizable - the Axiom of Replacement can be broken down into a finite set of formulas that eliminate its wff metavariable. Finite axiomatizability is required by some proof languages (although not by Metamath). There is a stronger version of NBG called Morse-Kelley (axiom system MK in [Mendelson] p. 287). Russell himself continued in a different direction, avoiding the paradox with his "theory of types". Quine extended Russell's ideas to formulate his New Foundations set theory (axiom system NF of [Quine] p. 331). In NF, the collection of all sets is a set, contrarily to ZF and NBG set theories. Russell's paradox has other consequences: when classes are too large (beyond the size of those used in standard mathematics), the axiom of choice ac4 10389 and Cantor's theorem canth 7314 are provably false. (See ncanth 7315 for some intuition behind the latter.) Recent results (as of 2014) seem to show that NF is equiconsistent to Z (ZF in which ax-sep 5242 replaces ax-rep 5225) with ax-sep 5242 restricted to only bounded quantifiers. NF is finitely axiomatizable and can be encoded in Metamath using the axioms from T. Hailperin, "A set of axioms for logic", J. Symb. Logic 9:1-19 (1944). Under our ZF set theory, every set is a member of the Russell class by elirrv 9506 (derived from the Axiom of Regularity), so for us the Russell class equals the universe V (Theorem ruv 9514). See ruALT 9515 for an alternate proof of ru 3739 derived from that fact. (Contributed by NM, 7-Aug-1994.) Remove use of ax-13 2377. (Revised by BJ, 12-Oct-2019.) Remove use of ax-10 2147, ax-11 2163, and ax-12 2185. (Revised by BTernaryTau, 20-Jun-2025.) (Proof modification is discouraged.) |
| ⊢ {𝑥 ∣ 𝑥 ∉ 𝑥} ∉ V | ||
| Theorem | ruOLD 3740 | Obsolete version of ru 3739 as of 20-Jun-2025. (Contributed by NM, 7-Aug-1994.) Remove use of ax-13 2377. (Revised by BJ, 12-Oct-2019.) (Proof modification is discouraged.) (New usage is discouraged.) |
| ⊢ {𝑥 ∣ 𝑥 ∉ 𝑥} ∉ V | ||
| Syntax | wsbc 3741 | Extend wff notation to include the proper substitution of a class for a set. Read this notation as "the proper substitution of class 𝐴 for setvar variable 𝑥 in wff 𝜑". |
| wff [𝐴 / 𝑥]𝜑 | ||
| Definition | df-sbc 3742 |
Define the proper substitution of a class for a set.
When 𝐴 is a proper class, our definition evaluates to false (see sbcex 3751). This is somewhat arbitrary: we could have, instead, chosen the conclusion of sbc6 3772 for our definition, whose right-hand side always evaluates to true for proper classes. Our definition also does not produce the same results as discussed in the proof of Theorem 6.6 of [Quine] p. 42 (although Theorem 6.6 itself does hold, as shown by dfsbcq 3743 below). For example, if 𝐴 is a proper class, Quine's substitution of 𝐴 for 𝑦 in 0 ∈ 𝑦 evaluates to 0 ∈ 𝐴 rather than our falsehood. (This can be seen by substituting 𝐴, 𝑦, and 0 for alpha, beta, and gamma in Subcase 1 of Quine's discussion on p. 42.) Unfortunately, Quine's definition requires a recursive syntactic breakdown of 𝜑, and it does not seem possible to express it with a single closed formula. If we did not want to commit to any specific proper class behavior, we could use this definition only to prove Theorem dfsbcq 3743, which holds for both our definition and Quine's, and from which we can derive a weaker version of df-sbc 3742 in the form of sbc8g 3749. However, the behavior of Quine's definition at proper classes is similarly arbitrary, and for practical reasons (to avoid having to prove sethood of 𝐴 in every use of this definition) we allow direct reference to df-sbc 3742 and assert that [𝐴 / 𝑥]𝜑 is always false when 𝐴 is a proper class. Theorem sbc2or 3750 shows the apparently "strongest" statement we can make regarding behavior at proper classes if we start from dfsbcq 3743. The related definition df-csb 3851 defines proper substitution into a class variable (as opposed to a wff variable). (Contributed by NM, 14-Apr-1995.) (Revised by NM, 25-Dec-2016.) |
| ⊢ ([𝐴 / 𝑥]𝜑 ↔ 𝐴 ∈ {𝑥 ∣ 𝜑}) | ||
| Theorem | dfsbcq 3743 |
Proper substitution of a class for a set in a wff given equal classes.
This is the essence of the sixth axiom of Frege, specifically Proposition
52 of [Frege1879] p. 50.
This theorem, which is similar to Theorem 6.7 of [Quine] p. 42 and holds under both our definition and Quine's, provides us with a weak definition of the proper substitution of a class for a set. Since our df-sbc 3742 does not result in the same behavior as Quine's for proper classes, if we wished to avoid conflict with Quine's definition we could start with this theorem and dfsbcq2 3744 instead of df-sbc 3742. (dfsbcq2 3744 is needed because unlike Quine we do not overload the df-sb 2069 syntax.) As a consequence of these theorems, we can derive sbc8g 3749, which is a weaker version of df-sbc 3742 that leaves substitution undefined when 𝐴 is a proper class. However, it is often a nuisance to have to prove the sethood hypothesis of sbc8g 3749, so we will allow direct use of df-sbc 3742 after Theorem sbc2or 3750 below. Proper substitution with a proper class is rarely needed, and when it is, we can simply use the expansion of Quine's definition. (Contributed by NM, 14-Apr-1995.) |
| ⊢ (𝐴 = 𝐵 → ([𝐴 / 𝑥]𝜑 ↔ [𝐵 / 𝑥]𝜑)) | ||
| Theorem | dfsbcq2 3744 | This theorem, which is similar to Theorem 6.7 of [Quine] p. 42 and holds under both our definition and Quine's, relates logic substitution df-sb 2069 and substitution for class variables df-sbc 3742. Unlike Quine, we use a different syntax for each in order to avoid overloading it. See remarks in dfsbcq 3743. (Contributed by NM, 31-Dec-2016.) |
| ⊢ (𝑦 = 𝐴 → ([𝑦 / 𝑥]𝜑 ↔ [𝐴 / 𝑥]𝜑)) | ||
| Theorem | sbsbc 3745 | Show that df-sb 2069 and df-sbc 3742 are equivalent when the class term 𝐴 in df-sbc 3742 is a setvar variable. This theorem lets us reuse theorems based on df-sb 2069 for proofs involving df-sbc 3742. (Contributed by NM, 31-Dec-2016.) (Proof modification is discouraged.) |
| ⊢ ([𝑦 / 𝑥]𝜑 ↔ [𝑦 / 𝑥]𝜑) | ||
| Theorem | sbceq1d 3746 | Equality theorem for class substitution. (Contributed by Mario Carneiro, 9-Feb-2017.) (Revised by NM, 30-Jun-2018.) |
| ⊢ (𝜑 → 𝐴 = 𝐵) ⇒ ⊢ (𝜑 → ([𝐴 / 𝑥]𝜓 ↔ [𝐵 / 𝑥]𝜓)) | ||
| Theorem | sbceq1dd 3747 | Equality theorem for class substitution. (Contributed by Mario Carneiro, 9-Feb-2017.) (Revised by NM, 30-Jun-2018.) |
| ⊢ (𝜑 → 𝐴 = 𝐵) & ⊢ (𝜑 → [𝐴 / 𝑥]𝜓) ⇒ ⊢ (𝜑 → [𝐵 / 𝑥]𝜓) | ||
| Theorem | sbceqbid 3748* | Equality theorem for class substitution. (Contributed by Thierry Arnoux, 4-Sep-2018.) |
| ⊢ (𝜑 → 𝐴 = 𝐵) & ⊢ (𝜑 → (𝜓 ↔ 𝜒)) ⇒ ⊢ (𝜑 → ([𝐴 / 𝑥]𝜓 ↔ [𝐵 / 𝑥]𝜒)) | ||
| Theorem | sbc8g 3749 | This is the closest we can get to df-sbc 3742 if we start from dfsbcq 3743 (see its comments) and dfsbcq2 3744. (Contributed by NM, 18-Nov-2008.) (Proof shortened by Andrew Salmon, 29-Jun-2011.) (Proof modification is discouraged.) |
| ⊢ (𝐴 ∈ 𝑉 → ([𝐴 / 𝑥]𝜑 ↔ 𝐴 ∈ {𝑥 ∣ 𝜑})) | ||
| Theorem | sbc2or 3750* | The disjunction of two equivalences for class substitution does not require a class existence hypothesis. This theorem tells us that there are only 2 possibilities for [𝐴 / 𝑥]𝜑 behavior at proper classes, matching the sbc5 3769 (false) and sbc6 3772 (true) conclusions. This is interesting since dfsbcq 3743 and dfsbcq2 3744 (from which it is derived) do not appear to say anything obvious about proper class behavior. Note that this theorem does not tell us that it is always one or the other at proper classes; it could "flip" between false (the first disjunct) and true (the second disjunct) as a function of some other variable 𝑦 that 𝜑 or 𝐴 may contain. (Contributed by NM, 11-Oct-2004.) (Proof modification is discouraged.) |
| ⊢ (([𝐴 / 𝑥]𝜑 ↔ ∃𝑥(𝑥 = 𝐴 ∧ 𝜑)) ∨ ([𝐴 / 𝑥]𝜑 ↔ ∀𝑥(𝑥 = 𝐴 → 𝜑))) | ||
| Theorem | sbcex 3751 | By our definition of proper substitution, it can only be true if the substituted expression is a set. (Contributed by Mario Carneiro, 13-Oct-2016.) |
| ⊢ ([𝐴 / 𝑥]𝜑 → 𝐴 ∈ V) | ||
| Theorem | sbceq1a 3752 | Equality theorem for class substitution. Class version of sbequ12 2259. (Contributed by NM, 26-Sep-2003.) |
| ⊢ (𝑥 = 𝐴 → (𝜑 ↔ [𝐴 / 𝑥]𝜑)) | ||
| Theorem | sbceq2a 3753 | Equality theorem for class substitution. Class version of sbequ12r 2260. (Contributed by NM, 4-Jan-2017.) |
| ⊢ (𝐴 = 𝑥 → ([𝐴 / 𝑥]𝜑 ↔ 𝜑)) | ||
| Theorem | spsbc 3754 | Specialization: if a formula is true for all sets, it is true for any class which is a set. Similar to Theorem 6.11 of [Quine] p. 44. This is Frege's ninth axiom per Proposition 58 of [Frege1879] p. 51. See also stdpc4 2074 and rspsbc 3830. (Contributed by NM, 16-Jan-2004.) |
| ⊢ (𝐴 ∈ 𝑉 → (∀𝑥𝜑 → [𝐴 / 𝑥]𝜑)) | ||
| Theorem | spsbcd 3755 | Specialization: if a formula is true for all sets, it is true for any class which is a set. Similar to Theorem 6.11 of [Quine] p. 44. See also stdpc4 2074 and rspsbc 3830. (Contributed by Mario Carneiro, 9-Feb-2017.) |
| ⊢ (𝜑 → 𝐴 ∈ 𝑉) & ⊢ (𝜑 → ∀𝑥𝜓) ⇒ ⊢ (𝜑 → [𝐴 / 𝑥]𝜓) | ||
| Theorem | sbcth 3756 | A substitution into a theorem remains true (when 𝐴 is a set). (Contributed by NM, 5-Nov-2005.) |
| ⊢ 𝜑 ⇒ ⊢ (𝐴 ∈ 𝑉 → [𝐴 / 𝑥]𝜑) | ||
| Theorem | sbcthdv 3757* | Deduction version of sbcth 3756. (Contributed by NM, 30-Nov-2005.) (Proof shortened by Andrew Salmon, 8-Jun-2011.) |
| ⊢ (𝜑 → 𝜓) ⇒ ⊢ ((𝜑 ∧ 𝐴 ∈ 𝑉) → [𝐴 / 𝑥]𝜓) | ||
| Theorem | sbcid 3758 | An identity theorem for substitution. See sbid 2263. (Contributed by Mario Carneiro, 18-Feb-2017.) |
| ⊢ ([𝑥 / 𝑥]𝜑 ↔ 𝜑) | ||
| Theorem | nfsbc1d 3759 | Deduction version of nfsbc1 3760. (Contributed by NM, 23-May-2006.) (Revised by Mario Carneiro, 12-Oct-2016.) |
| ⊢ (𝜑 → Ⅎ𝑥𝐴) ⇒ ⊢ (𝜑 → Ⅎ𝑥[𝐴 / 𝑥]𝜓) | ||
| Theorem | nfsbc1 3760 | Bound-variable hypothesis builder for class substitution. (Contributed by NM, 5-Aug-1993.) (Revised by Mario Carneiro, 12-Oct-2016.) |
| ⊢ Ⅎ𝑥𝐴 ⇒ ⊢ Ⅎ𝑥[𝐴 / 𝑥]𝜑 | ||
| Theorem | nfsbc1v 3761* | Bound-variable hypothesis builder for class substitution. (Contributed by Mario Carneiro, 12-Oct-2016.) |
| ⊢ Ⅎ𝑥[𝐴 / 𝑥]𝜑 | ||
| Theorem | nfsbcdw 3762* | Deduction version of nfsbcw 3763. Version of nfsbcd 3765 with a disjoint variable condition, which does not require ax-13 2377. (Contributed by NM, 23-Nov-2005.) Avoid ax-13 2377. (Revised by GG, 10-Jan-2024.) |
| ⊢ Ⅎ𝑦𝜑 & ⊢ (𝜑 → Ⅎ𝑥𝐴) & ⊢ (𝜑 → Ⅎ𝑥𝜓) ⇒ ⊢ (𝜑 → Ⅎ𝑥[𝐴 / 𝑦]𝜓) | ||
| Theorem | nfsbcw 3763* | Bound-variable hypothesis builder for class substitution. Version of nfsbc 3766 with a disjoint variable condition, which does not require ax-13 2377. (Contributed by NM, 7-Sep-2014.) Avoid ax-13 2377. (Revised by GG, 10-Jan-2024.) |
| ⊢ Ⅎ𝑥𝐴 & ⊢ Ⅎ𝑥𝜑 ⇒ ⊢ Ⅎ𝑥[𝐴 / 𝑦]𝜑 | ||
| Theorem | sbccow 3764* | A composition law for class substitution. Version of sbcco 3767 with a disjoint variable condition, which requires fewer axioms. (Contributed by NM, 26-Sep-2003.) Avoid ax-13 2377. (Revised by GG, 10-Jan-2024.) |
| ⊢ ([𝐴 / 𝑦][𝑦 / 𝑥]𝜑 ↔ [𝐴 / 𝑥]𝜑) | ||
| Theorem | nfsbcd 3765 | Deduction version of nfsbc 3766. Usage of this theorem is discouraged because it depends on ax-13 2377. Use the weaker nfsbcdw 3762 when possible. (Contributed by NM, 23-Nov-2005.) (Revised by Mario Carneiro, 12-Oct-2016.) (New usage is discouraged.) |
| ⊢ Ⅎ𝑦𝜑 & ⊢ (𝜑 → Ⅎ𝑥𝐴) & ⊢ (𝜑 → Ⅎ𝑥𝜓) ⇒ ⊢ (𝜑 → Ⅎ𝑥[𝐴 / 𝑦]𝜓) | ||
| Theorem | nfsbc 3766 | Bound-variable hypothesis builder for class substitution. Usage of this theorem is discouraged because it depends on ax-13 2377. Use the weaker nfsbcw 3763 when possible. (Contributed by NM, 7-Sep-2014.) (Revised by Mario Carneiro, 12-Oct-2016.) (New usage is discouraged.) |
| ⊢ Ⅎ𝑥𝐴 & ⊢ Ⅎ𝑥𝜑 ⇒ ⊢ Ⅎ𝑥[𝐴 / 𝑦]𝜑 | ||
| Theorem | sbcco 3767* | A composition law for class substitution. Usage of this theorem is discouraged because it depends on ax-13 2377. Use the weaker sbccow 3764 when possible. (Contributed by NM, 26-Sep-2003.) (Revised by Mario Carneiro, 13-Oct-2016.) (New usage is discouraged.) |
| ⊢ ([𝐴 / 𝑦][𝑦 / 𝑥]𝜑 ↔ [𝐴 / 𝑥]𝜑) | ||
| Theorem | sbcco2 3768* | A composition law for class substitution. Importantly, 𝑥 may occur free in the class expression substituted for 𝐴. (Contributed by NM, 5-Sep-2004.) (Proof shortened by Andrew Salmon, 8-Jun-2011.) |
| ⊢ (𝑥 = 𝑦 → 𝐴 = 𝐵) ⇒ ⊢ ([𝑥 / 𝑦][𝐵 / 𝑥]𝜑 ↔ [𝐴 / 𝑥]𝜑) | ||
| Theorem | sbc5 3769* | An equivalence for class substitution. (Contributed by NM, 23-Aug-1993.) (Revised by Mario Carneiro, 12-Oct-2016.) (Proof shortened by SN, 2-Sep-2024.) |
| ⊢ ([𝐴 / 𝑥]𝜑 ↔ ∃𝑥(𝑥 = 𝐴 ∧ 𝜑)) | ||
| Theorem | sbc5ALT 3770* | Alternate proof of sbc5 3769. This proof helps show how clelab 2881 works, since it is equivalent but shorter thanks to now-available library theorems like vtoclbg 3515 and isset 3455. (Contributed by NM, 23-Aug-1993.) (Revised by Mario Carneiro, 12-Oct-2016.) (New usage is discouraged.) (Proof modification is discouraged.) |
| ⊢ ([𝐴 / 𝑥]𝜑 ↔ ∃𝑥(𝑥 = 𝐴 ∧ 𝜑)) | ||
| Theorem | sbc6g 3771* | An equivalence for class substitution. (Contributed by NM, 11-Oct-2004.) (Proof shortened by Andrew Salmon, 8-Jun-2011.) (Proof shortened by SN, 5-Oct-2024.) |
| ⊢ (𝐴 ∈ 𝑉 → ([𝐴 / 𝑥]𝜑 ↔ ∀𝑥(𝑥 = 𝐴 → 𝜑))) | ||
| Theorem | sbc6 3772* | An equivalence for class substitution. (Contributed by NM, 23-Aug-1993.) (Proof shortened by Eric Schmidt, 17-Jan-2007.) |
| ⊢ 𝐴 ∈ V ⇒ ⊢ ([𝐴 / 𝑥]𝜑 ↔ ∀𝑥(𝑥 = 𝐴 → 𝜑)) | ||
| Theorem | sbc7 3773* | An equivalence for class substitution in the spirit of df-clab 2716. Note that 𝑥 and 𝐴 don't have to be distinct. (Contributed by NM, 18-Nov-2008.) (Revised by Mario Carneiro, 13-Oct-2016.) |
| ⊢ ([𝐴 / 𝑥]𝜑 ↔ ∃𝑦(𝑦 = 𝐴 ∧ [𝑦 / 𝑥]𝜑)) | ||
| Theorem | cbvsbcw 3774* | Change bound variables in a wff substitution. Version of cbvsbc 3776 with a disjoint variable condition, which does not require ax-13 2377. (Contributed by Jeff Hankins, 19-Sep-2009.) Avoid ax-13 2377. (Revised by GG, 10-Jan-2024.) |
| ⊢ Ⅎ𝑦𝜑 & ⊢ Ⅎ𝑥𝜓 & ⊢ (𝑥 = 𝑦 → (𝜑 ↔ 𝜓)) ⇒ ⊢ ([𝐴 / 𝑥]𝜑 ↔ [𝐴 / 𝑦]𝜓) | ||
| Theorem | cbvsbcvw 3775* | Change the bound variable of a class substitution using implicit substitution. Version of cbvsbcv 3777 with a disjoint variable condition, which does not require ax-13 2377. (Contributed by NM, 30-Sep-2008.) Avoid ax-13 2377. (Revised by GG, 10-Jan-2024.) |
| ⊢ (𝑥 = 𝑦 → (𝜑 ↔ 𝜓)) ⇒ ⊢ ([𝐴 / 𝑥]𝜑 ↔ [𝐴 / 𝑦]𝜓) | ||
| Theorem | cbvsbc 3776 | Change bound variables in a wff substitution. Usage of this theorem is discouraged because it depends on ax-13 2377. Use the weaker cbvsbcw 3774 when possible. (Contributed by Jeff Hankins, 19-Sep-2009.) (Proof shortened by Andrew Salmon, 8-Jun-2011.) (New usage is discouraged.) |
| ⊢ Ⅎ𝑦𝜑 & ⊢ Ⅎ𝑥𝜓 & ⊢ (𝑥 = 𝑦 → (𝜑 ↔ 𝜓)) ⇒ ⊢ ([𝐴 / 𝑥]𝜑 ↔ [𝐴 / 𝑦]𝜓) | ||
| Theorem | cbvsbcv 3777* | Change the bound variable of a class substitution using implicit substitution. Usage of this theorem is discouraged because it depends on ax-13 2377. Use the weaker cbvsbcvw 3775 when possible. (Contributed by NM, 30-Sep-2008.) (Revised by Mario Carneiro, 13-Oct-2016.) (New usage is discouraged.) |
| ⊢ (𝑥 = 𝑦 → (𝜑 ↔ 𝜓)) ⇒ ⊢ ([𝐴 / 𝑥]𝜑 ↔ [𝐴 / 𝑦]𝜓) | ||
| Theorem | sbciegft 3778* | Conversion of implicit substitution to explicit class substitution, using a bound-variable hypothesis instead of distinct variables. (Closed theorem version of sbciegf 3780.) (Contributed by NM, 10-Nov-2005.) (Revised by Mario Carneiro, 13-Oct-2016.) (Proof shortened by SN, 14-May-2025.) |
| ⊢ ((𝐴 ∈ 𝑉 ∧ Ⅎ𝑥𝜓 ∧ ∀𝑥(𝑥 = 𝐴 → (𝜑 ↔ 𝜓))) → ([𝐴 / 𝑥]𝜑 ↔ 𝜓)) | ||
| Theorem | sbciegftOLD 3779* | Obsolete version of sbciegft 3778 as of 14-May-2025. (Contributed by NM, 10-Nov-2005.) (Revised by Mario Carneiro, 13-Oct-2016.) (Proof modification is discouraged.) (New usage is discouraged.) |
| ⊢ ((𝐴 ∈ 𝑉 ∧ Ⅎ𝑥𝜓 ∧ ∀𝑥(𝑥 = 𝐴 → (𝜑 ↔ 𝜓))) → ([𝐴 / 𝑥]𝜑 ↔ 𝜓)) | ||
| Theorem | sbciegf 3780* | Conversion of implicit substitution to explicit class substitution. (Contributed by NM, 14-Dec-2005.) (Revised by Mario Carneiro, 13-Oct-2016.) |
| ⊢ Ⅎ𝑥𝜓 & ⊢ (𝑥 = 𝐴 → (𝜑 ↔ 𝜓)) ⇒ ⊢ (𝐴 ∈ 𝑉 → ([𝐴 / 𝑥]𝜑 ↔ 𝜓)) | ||
| Theorem | sbcieg 3781* | Conversion of implicit substitution to explicit class substitution. (Contributed by NM, 10-Nov-2005.) Avoid ax-10 2147, ax-12 2185. (Revised by GG, 12-Oct-2024.) |
| ⊢ (𝑥 = 𝐴 → (𝜑 ↔ 𝜓)) ⇒ ⊢ (𝐴 ∈ 𝑉 → ([𝐴 / 𝑥]𝜑 ↔ 𝜓)) | ||
| Theorem | sbcie2g 3782* | Conversion of implicit substitution to explicit class substitution. This version of sbcie 3783 avoids a disjointness condition on 𝑥, 𝐴 by substituting twice. (Contributed by Mario Carneiro, 15-Oct-2016.) |
| ⊢ (𝑥 = 𝑦 → (𝜑 ↔ 𝜓)) & ⊢ (𝑦 = 𝐴 → (𝜓 ↔ 𝜒)) ⇒ ⊢ (𝐴 ∈ 𝑉 → ([𝐴 / 𝑥]𝜑 ↔ 𝜒)) | ||
| Theorem | sbcie 3783* | Conversion of implicit substitution to explicit class substitution. (Contributed by NM, 4-Sep-2004.) |
| ⊢ 𝐴 ∈ V & ⊢ (𝑥 = 𝐴 → (𝜑 ↔ 𝜓)) ⇒ ⊢ ([𝐴 / 𝑥]𝜑 ↔ 𝜓) | ||
| Theorem | sbciedf 3784* | Conversion of implicit substitution to explicit class substitution, deduction form. (Contributed by NM, 29-Dec-2014.) |
| ⊢ (𝜑 → 𝐴 ∈ 𝑉) & ⊢ ((𝜑 ∧ 𝑥 = 𝐴) → (𝜓 ↔ 𝜒)) & ⊢ Ⅎ𝑥𝜑 & ⊢ (𝜑 → Ⅎ𝑥𝜒) ⇒ ⊢ (𝜑 → ([𝐴 / 𝑥]𝜓 ↔ 𝜒)) | ||
| Theorem | sbcied 3785* | Conversion of implicit substitution to explicit class substitution, deduction form. (Contributed by NM, 13-Dec-2014.) Avoid ax-10 2147, ax-12 2185. (Revised by GG, 12-Oct-2024.) |
| ⊢ (𝜑 → 𝐴 ∈ 𝑉) & ⊢ ((𝜑 ∧ 𝑥 = 𝐴) → (𝜓 ↔ 𝜒)) ⇒ ⊢ (𝜑 → ([𝐴 / 𝑥]𝜓 ↔ 𝜒)) | ||
| Theorem | sbcied2 3786* | Conversion of implicit substitution to explicit class substitution, deduction form. (Contributed by NM, 13-Dec-2014.) |
| ⊢ (𝜑 → 𝐴 ∈ 𝑉) & ⊢ (𝜑 → 𝐴 = 𝐵) & ⊢ ((𝜑 ∧ 𝑥 = 𝐵) → (𝜓 ↔ 𝜒)) ⇒ ⊢ (𝜑 → ([𝐴 / 𝑥]𝜓 ↔ 𝜒)) | ||
| Theorem | elrabsf 3787 | Membership in a restricted class abstraction, expressed with explicit class substitution. (The variation elrabf 3644 has implicit substitution). The hypothesis specifies that 𝑥 must not be a free variable in 𝐵. (Contributed by NM, 30-Sep-2003.) (Proof shortened by Mario Carneiro, 13-Oct-2016.) |
| ⊢ Ⅎ𝑥𝐵 ⇒ ⊢ (𝐴 ∈ {𝑥 ∈ 𝐵 ∣ 𝜑} ↔ (𝐴 ∈ 𝐵 ∧ [𝐴 / 𝑥]𝜑)) | ||
| Theorem | eqsbc1 3788* | Substitution for the left-hand side in an equality. Class version of eqsb1 2863. (Contributed by Andrew Salmon, 29-Jun-2011.) Avoid ax-13 2377. (Revised by Wolf Lammen, 29-Apr-2023.) |
| ⊢ (𝐴 ∈ 𝑉 → ([𝐴 / 𝑥]𝑥 = 𝐵 ↔ 𝐴 = 𝐵)) | ||
| Theorem | sbcng 3789 | Move negation in and out of class substitution. (Contributed by NM, 16-Jan-2004.) |
| ⊢ (𝐴 ∈ 𝑉 → ([𝐴 / 𝑥] ¬ 𝜑 ↔ ¬ [𝐴 / 𝑥]𝜑)) | ||
| Theorem | sbcimg 3790 | Distribution of class substitution over implication. (Contributed by NM, 16-Jan-2004.) |
| ⊢ (𝐴 ∈ 𝑉 → ([𝐴 / 𝑥](𝜑 → 𝜓) ↔ ([𝐴 / 𝑥]𝜑 → [𝐴 / 𝑥]𝜓))) | ||
| Theorem | sbcan 3791 | Distribution of class substitution over conjunction. (Contributed by NM, 31-Dec-2016.) (Revised by NM, 17-Aug-2018.) |
| ⊢ ([𝐴 / 𝑥](𝜑 ∧ 𝜓) ↔ ([𝐴 / 𝑥]𝜑 ∧ [𝐴 / 𝑥]𝜓)) | ||
| Theorem | sbcor 3792 | Distribution of class substitution over disjunction. (Contributed by NM, 31-Dec-2016.) (Revised by NM, 17-Aug-2018.) |
| ⊢ ([𝐴 / 𝑥](𝜑 ∨ 𝜓) ↔ ([𝐴 / 𝑥]𝜑 ∨ [𝐴 / 𝑥]𝜓)) | ||
| Theorem | sbcbig 3793 | Distribution of class substitution over biconditional. (Contributed by Raph Levien, 10-Apr-2004.) |
| ⊢ (𝐴 ∈ 𝑉 → ([𝐴 / 𝑥](𝜑 ↔ 𝜓) ↔ ([𝐴 / 𝑥]𝜑 ↔ [𝐴 / 𝑥]𝜓))) | ||
| Theorem | sbcn1 3794 | Move negation in and out of class substitution. One direction of sbcng 3789 that holds for proper classes. (Contributed by NM, 17-Aug-2018.) |
| ⊢ ([𝐴 / 𝑥] ¬ 𝜑 → ¬ [𝐴 / 𝑥]𝜑) | ||
| Theorem | sbcim1 3795 | Distribution of class substitution over implication. One direction of sbcimg 3790 that holds for proper classes. (Contributed by NM, 17-Aug-2018.) Avoid ax-10 2147, ax-12 2185. (Revised by SN, 26-Oct-2024.) |
| ⊢ ([𝐴 / 𝑥](𝜑 → 𝜓) → ([𝐴 / 𝑥]𝜑 → [𝐴 / 𝑥]𝜓)) | ||
| Theorem | sbcbid 3796 | Formula-building deduction for class substitution. (Contributed by NM, 29-Dec-2014.) |
| ⊢ Ⅎ𝑥𝜑 & ⊢ (𝜑 → (𝜓 ↔ 𝜒)) ⇒ ⊢ (𝜑 → ([𝐴 / 𝑥]𝜓 ↔ [𝐴 / 𝑥]𝜒)) | ||
| Theorem | sbcbidv 3797* | Formula-building deduction for class substitution. (Contributed by NM, 29-Dec-2014.) Drop ax-12 2185. (Revised by GG, 1-Dec-2023.) |
| ⊢ (𝜑 → (𝜓 ↔ 𝜒)) ⇒ ⊢ (𝜑 → ([𝐴 / 𝑥]𝜓 ↔ [𝐴 / 𝑥]𝜒)) | ||
| Theorem | sbcbii 3798 | Formula-building inference for class substitution. (Contributed by NM, 11-Nov-2005.) |
| ⊢ (𝜑 ↔ 𝜓) ⇒ ⊢ ([𝐴 / 𝑥]𝜑 ↔ [𝐴 / 𝑥]𝜓) | ||
| Theorem | sbcbi1 3799 | Distribution of class substitution over biconditional. One direction of sbcbig 3793 that holds for proper classes. (Contributed by NM, 17-Aug-2018.) |
| ⊢ ([𝐴 / 𝑥](𝜑 ↔ 𝜓) → ([𝐴 / 𝑥]𝜑 ↔ [𝐴 / 𝑥]𝜓)) | ||
| Theorem | sbcbi2 3800 | Substituting into equivalent wff's gives equivalent results. (Contributed by Giovanni Mascellani, 9-Apr-2018.) (Proof shortened by Wolf Lammen, 4-May-2023.) Avoid ax-10 2147, ax-12 2185. (Revised by Steven Nguyen, 5-May-2024.) |
| ⊢ (∀𝑥(𝜑 ↔ 𝜓) → ([𝐴 / 𝑥]𝜑 ↔ [𝐴 / 𝑥]𝜓)) | ||
| < Previous Next > |
| Copyright terms: Public domain | < Previous Next > |