Home | Metamath
Proof Explorer Theorem List (p. 37 of 462) | < 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: | Metamath Proof Explorer
(1-28999) |
Hilbert Space Explorer
(29000-30522) |
Users' Mathboxes
(30523-46180) |
Type | Label | Description |
---|---|---|
Statement | ||
Theorem | elrab3t 3601* | Membership in a restricted class abstraction, using implicit substitution. (Closed theorem version of elrab3 3603.) (Contributed by Thierry Arnoux, 31-Aug-2017.) |
⊢ ((∀𝑥(𝑥 = 𝐴 → (𝜑 ↔ 𝜓)) ∧ 𝐴 ∈ 𝐵) → (𝐴 ∈ {𝑥 ∈ 𝐵 ∣ 𝜑} ↔ 𝜓)) | ||
Theorem | elrab 3602* | Membership in a restricted class abstraction, using implicit substitution. (Contributed by NM, 21-May-1999.) Remove dependency on ax-13 2371. (Revised by Steven Nguyen, 23-Nov-2022.) |
⊢ (𝑥 = 𝐴 → (𝜑 ↔ 𝜓)) ⇒ ⊢ (𝐴 ∈ {𝑥 ∈ 𝐵 ∣ 𝜑} ↔ (𝐴 ∈ 𝐵 ∧ 𝜓)) | ||
Theorem | elrab3 3603* | Membership in a restricted class abstraction, using implicit substitution. (Contributed by NM, 5-Oct-2006.) |
⊢ (𝑥 = 𝐴 → (𝜑 ↔ 𝜓)) ⇒ ⊢ (𝐴 ∈ 𝐵 → (𝐴 ∈ {𝑥 ∈ 𝐵 ∣ 𝜑} ↔ 𝜓)) | ||
Theorem | elrabd 3604* | Membership in a restricted class abstraction, using implicit substitution. Deduction version of elrab 3602. (Contributed by Glauco Siliprandi, 23-Oct-2021.) |
⊢ (𝑥 = 𝐴 → (𝜓 ↔ 𝜒)) & ⊢ (𝜑 → 𝐴 ∈ 𝐵) & ⊢ (𝜑 → 𝜒) ⇒ ⊢ (𝜑 → 𝐴 ∈ {𝑥 ∈ 𝐵 ∣ 𝜓}) | ||
Theorem | elrab2 3605* | Membership in a restricted class abstraction, using implicit substitution. (Contributed by NM, 2-Nov-2006.) |
⊢ (𝑥 = 𝐴 → (𝜑 ↔ 𝜓)) & ⊢ 𝐶 = {𝑥 ∈ 𝐵 ∣ 𝜑} ⇒ ⊢ (𝐴 ∈ 𝐶 ↔ (𝐴 ∈ 𝐵 ∧ 𝜓)) | ||
Theorem | ralab 3606* | Universal quantification over a class abstraction. (Contributed by Jeff Madsen, 10-Jun-2010.) |
⊢ (𝑦 = 𝑥 → (𝜑 ↔ 𝜓)) ⇒ ⊢ (∀𝑥 ∈ {𝑦 ∣ 𝜑}𝜒 ↔ ∀𝑥(𝜓 → 𝜒)) | ||
Theorem | ralrab 3607* | Universal quantification over a restricted class abstraction. (Contributed by Jeff Madsen, 10-Jun-2010.) |
⊢ (𝑦 = 𝑥 → (𝜑 ↔ 𝜓)) ⇒ ⊢ (∀𝑥 ∈ {𝑦 ∈ 𝐴 ∣ 𝜑}𝜒 ↔ ∀𝑥 ∈ 𝐴 (𝜓 → 𝜒)) | ||
Theorem | rexab 3608* | Existential quantification over a class abstraction. (Contributed by Mario Carneiro, 23-Jan-2014.) (Revised by Mario Carneiro, 3-Sep-2015.) |
⊢ (𝑦 = 𝑥 → (𝜑 ↔ 𝜓)) ⇒ ⊢ (∃𝑥 ∈ {𝑦 ∣ 𝜑}𝜒 ↔ ∃𝑥(𝜓 ∧ 𝜒)) | ||
Theorem | rexrab 3609* | Existential quantification over a class abstraction. (Contributed by Jeff Madsen, 17-Jun-2011.) (Revised by Mario Carneiro, 3-Sep-2015.) |
⊢ (𝑦 = 𝑥 → (𝜑 ↔ 𝜓)) ⇒ ⊢ (∃𝑥 ∈ {𝑦 ∈ 𝐴 ∣ 𝜑}𝜒 ↔ ∃𝑥 ∈ 𝐴 (𝜓 ∧ 𝜒)) | ||
Theorem | ralab2 3610* | Universal quantification over a class abstraction. (Contributed by Mario Carneiro, 3-Sep-2015.) Drop ax-8 2112. (Revised by Gino Giotto, 1-Dec-2023.) |
⊢ (𝑥 = 𝑦 → (𝜓 ↔ 𝜒)) ⇒ ⊢ (∀𝑥 ∈ {𝑦 ∣ 𝜑}𝜓 ↔ ∀𝑦(𝜑 → 𝜒)) | ||
Theorem | ralab2OLD 3611* | Obsolete version of ralab2 3610 as of 1-Dec-2023. (Contributed by Mario Carneiro, 3-Sep-2015.) (Proof modification is discouraged.) (New usage is discouraged.) |
⊢ (𝑥 = 𝑦 → (𝜓 ↔ 𝜒)) ⇒ ⊢ (∀𝑥 ∈ {𝑦 ∣ 𝜑}𝜓 ↔ ∀𝑦(𝜑 → 𝜒)) | ||
Theorem | ralrab2 3612* | Universal quantification over a restricted class abstraction. (Contributed by Mario Carneiro, 3-Sep-2015.) |
⊢ (𝑥 = 𝑦 → (𝜓 ↔ 𝜒)) ⇒ ⊢ (∀𝑥 ∈ {𝑦 ∈ 𝐴 ∣ 𝜑}𝜓 ↔ ∀𝑦 ∈ 𝐴 (𝜑 → 𝜒)) | ||
Theorem | rexab2 3613* | Existential quantification over a class abstraction. (Contributed by Mario Carneiro, 3-Sep-2015.) Drop ax-8 2112. (Revised by Gino Giotto, 1-Dec-2023.) |
⊢ (𝑥 = 𝑦 → (𝜓 ↔ 𝜒)) ⇒ ⊢ (∃𝑥 ∈ {𝑦 ∣ 𝜑}𝜓 ↔ ∃𝑦(𝜑 ∧ 𝜒)) | ||
Theorem | rexab2OLD 3614* | Obsolete version of rexab2 3613 as of 1-Dec-2023. (Contributed by Mario Carneiro, 3-Sep-2015.) (Proof modification is discouraged.) (New usage is discouraged.) |
⊢ (𝑥 = 𝑦 → (𝜓 ↔ 𝜒)) ⇒ ⊢ (∃𝑥 ∈ {𝑦 ∣ 𝜑}𝜓 ↔ ∃𝑦(𝜑 ∧ 𝜒)) | ||
Theorem | rexrab2 3615* | Existential quantification over a class abstraction. (Contributed by Mario Carneiro, 3-Sep-2015.) |
⊢ (𝑥 = 𝑦 → (𝜓 ↔ 𝜒)) ⇒ ⊢ (∃𝑥 ∈ {𝑦 ∈ 𝐴 ∣ 𝜑}𝜓 ↔ ∃𝑦 ∈ 𝐴 (𝜑 ∧ 𝜒)) | ||
Theorem | abidnf 3616* | Identity used to create closed-form versions of bound-variable hypothesis builders for class expressions. (Contributed by NM, 10-Nov-2005.) (Proof shortened by Mario Carneiro, 12-Oct-2016.) |
⊢ (Ⅎ𝑥𝐴 → {𝑧 ∣ ∀𝑥 𝑧 ∈ 𝐴} = 𝐴) | ||
Theorem | dedhb 3617* | A deduction theorem for converting the inference ⊢ Ⅎ𝑥𝐴 => ⊢ 𝜑 into a closed theorem. Use nfa1 2152 and nfab 2910 to eliminate the hypothesis of the substitution instance 𝜓 of the inference. For converting the inference form into a deduction form, abidnf 3616 is useful. (Contributed by NM, 8-Dec-2006.) |
⊢ (𝐴 = {𝑧 ∣ ∀𝑥 𝑧 ∈ 𝐴} → (𝜑 ↔ 𝜓)) & ⊢ 𝜓 ⇒ ⊢ (Ⅎ𝑥𝐴 → 𝜑) | ||
Theorem | nelrdva 3618* | Deduce negative membership from an implication. (Contributed by Thierry Arnoux, 27-Nov-2017.) |
⊢ ((𝜑 ∧ 𝑥 ∈ 𝐴) → 𝑥 ≠ 𝐵) ⇒ ⊢ (𝜑 → ¬ 𝐵 ∈ 𝐴) | ||
Theorem | eqeu 3619* | A condition which implies existential uniqueness. (Contributed by Jeff Hankins, 8-Sep-2009.) |
⊢ (𝑥 = 𝐴 → (𝜑 ↔ 𝜓)) ⇒ ⊢ ((𝐴 ∈ 𝐵 ∧ 𝜓 ∧ ∀𝑥(𝜑 → 𝑥 = 𝐴)) → ∃!𝑥𝜑) | ||
Theorem | moeq 3620* | There exists at most one set equal to a given class. (Contributed by NM, 8-Mar-1995.) Shorten combined proofs of moeq 3620 and eueq 3621. (Proof shortened by BJ, 24-Sep-2022.) |
⊢ ∃*𝑥 𝑥 = 𝐴 | ||
Theorem | eueq 3621* | A class is a set if and only if there exists a unique set equal to it. (Contributed by NM, 25-Nov-1994.) Shorten combined proofs of moeq 3620 and eueq 3621. (Proof shortened by BJ, 24-Sep-2022.) |
⊢ (𝐴 ∈ V ↔ ∃!𝑥 𝑥 = 𝐴) | ||
Theorem | eueqi 3622* | There exists a unique set equal to a given set. Inference associated with euequ 2596. See euequ 2596 in the case of a setvar. (Contributed by NM, 5-Apr-1995.) |
⊢ 𝐴 ∈ V ⇒ ⊢ ∃!𝑥 𝑥 = 𝐴 | ||
Theorem | eueq2 3623* | Equality has existential uniqueness (split into 2 cases). (Contributed by NM, 5-Apr-1995.) |
⊢ 𝐴 ∈ V & ⊢ 𝐵 ∈ V ⇒ ⊢ ∃!𝑥((𝜑 ∧ 𝑥 = 𝐴) ∨ (¬ 𝜑 ∧ 𝑥 = 𝐵)) | ||
Theorem | eueq3 3624* | Equality has existential uniqueness (split into 3 cases). (Contributed by NM, 5-Apr-1995.) (Proof shortened by Mario Carneiro, 28-Sep-2015.) |
⊢ 𝐴 ∈ V & ⊢ 𝐵 ∈ V & ⊢ 𝐶 ∈ V & ⊢ ¬ (𝜑 ∧ 𝜓) ⇒ ⊢ ∃!𝑥((𝜑 ∧ 𝑥 = 𝐴) ∨ (¬ (𝜑 ∨ 𝜓) ∧ 𝑥 = 𝐵) ∨ (𝜓 ∧ 𝑥 = 𝐶)) | ||
Theorem | moeq3 3625* | "At most one" property of equality (split into 3 cases). (The first two hypotheses could be eliminated with longer proof.) (Contributed by NM, 23-Apr-1995.) |
⊢ 𝐵 ∈ V & ⊢ 𝐶 ∈ V & ⊢ ¬ (𝜑 ∧ 𝜓) ⇒ ⊢ ∃*𝑥((𝜑 ∧ 𝑥 = 𝐴) ∨ (¬ (𝜑 ∨ 𝜓) ∧ 𝑥 = 𝐵) ∨ (𝜓 ∧ 𝑥 = 𝐶)) | ||
Theorem | mosub 3626* | "At most one" remains true after substitution. (Contributed by NM, 9-Mar-1995.) |
⊢ ∃*𝑥𝜑 ⇒ ⊢ ∃*𝑥∃𝑦(𝑦 = 𝐴 ∧ 𝜑) | ||
Theorem | mo2icl 3627* | Theorem for inferring "at most one." (Contributed by NM, 17-Oct-1996.) |
⊢ (∀𝑥(𝜑 → 𝑥 = 𝐴) → ∃*𝑥𝜑) | ||
Theorem | mob2 3628* | Consequence of "at most one." (Contributed by NM, 2-Jan-2015.) |
⊢ (𝑥 = 𝐴 → (𝜑 ↔ 𝜓)) ⇒ ⊢ ((𝐴 ∈ 𝐵 ∧ ∃*𝑥𝜑 ∧ 𝜑) → (𝑥 = 𝐴 ↔ 𝜓)) | ||
Theorem | moi2 3629* | Consequence of "at most one." (Contributed by NM, 29-Jun-2008.) |
⊢ (𝑥 = 𝐴 → (𝜑 ↔ 𝜓)) ⇒ ⊢ (((𝐴 ∈ 𝐵 ∧ ∃*𝑥𝜑) ∧ (𝜑 ∧ 𝜓)) → 𝑥 = 𝐴) | ||
Theorem | mob 3630* | Equality implied by "at most one." (Contributed by NM, 18-Feb-2006.) |
⊢ (𝑥 = 𝐴 → (𝜑 ↔ 𝜓)) & ⊢ (𝑥 = 𝐵 → (𝜑 ↔ 𝜒)) ⇒ ⊢ (((𝐴 ∈ 𝐶 ∧ 𝐵 ∈ 𝐷) ∧ ∃*𝑥𝜑 ∧ 𝜓) → (𝐴 = 𝐵 ↔ 𝜒)) | ||
Theorem | moi 3631* | Equality implied by "at most one." (Contributed by NM, 18-Feb-2006.) |
⊢ (𝑥 = 𝐴 → (𝜑 ↔ 𝜓)) & ⊢ (𝑥 = 𝐵 → (𝜑 ↔ 𝜒)) ⇒ ⊢ (((𝐴 ∈ 𝐶 ∧ 𝐵 ∈ 𝐷) ∧ ∃*𝑥𝜑 ∧ (𝜓 ∧ 𝜒)) → 𝐴 = 𝐵) | ||
Theorem | morex 3632* | Derive membership from uniqueness. (Contributed by Jeff Madsen, 2-Sep-2009.) |
⊢ 𝐵 ∈ V & ⊢ (𝑥 = 𝐵 → (𝜑 ↔ 𝜓)) ⇒ ⊢ ((∃𝑥 ∈ 𝐴 𝜑 ∧ ∃*𝑥𝜑) → (𝜓 → 𝐵 ∈ 𝐴)) | ||
Theorem | euxfr2w 3633* | Transfer existential uniqueness from a variable 𝑥 to another variable 𝑦 contained in expression 𝐴. Version of euxfr2 3635 with a disjoint variable condition, which does not require ax-13 2371. (Contributed by NM, 14-Nov-2004.) (Revised by Gino Giotto, 10-Jan-2024.) |
⊢ 𝐴 ∈ V & ⊢ ∃*𝑦 𝑥 = 𝐴 ⇒ ⊢ (∃!𝑥∃𝑦(𝑥 = 𝐴 ∧ 𝜑) ↔ ∃!𝑦𝜑) | ||
Theorem | euxfrw 3634* | Transfer existential uniqueness from a variable 𝑥 to another variable 𝑦 contained in expression 𝐴. Version of euxfr 3636 with a disjoint variable condition, which does not require ax-13 2371. (Contributed by NM, 14-Nov-2004.) (Revised by Gino Giotto, 10-Jan-2024.) |
⊢ 𝐴 ∈ V & ⊢ ∃!𝑦 𝑥 = 𝐴 & ⊢ (𝑥 = 𝐴 → (𝜑 ↔ 𝜓)) ⇒ ⊢ (∃!𝑥𝜑 ↔ ∃!𝑦𝜓) | ||
Theorem | euxfr2 3635* | Transfer existential uniqueness from a variable 𝑥 to another variable 𝑦 contained in expression 𝐴. Usage of this theorem is discouraged because it depends on ax-13 2371. Use the weaker euxfr2w 3633 when possible. (Contributed by NM, 14-Nov-2004.) (New usage is discouraged.) |
⊢ 𝐴 ∈ V & ⊢ ∃*𝑦 𝑥 = 𝐴 ⇒ ⊢ (∃!𝑥∃𝑦(𝑥 = 𝐴 ∧ 𝜑) ↔ ∃!𝑦𝜑) | ||
Theorem | euxfr 3636* | Transfer existential uniqueness from a variable 𝑥 to another variable 𝑦 contained in expression 𝐴. Usage of this theorem is discouraged because it depends on ax-13 2371. Use the weaker euxfrw 3634 when possible. (Contributed by NM, 14-Nov-2004.) (New usage is discouraged.) |
⊢ 𝐴 ∈ V & ⊢ ∃!𝑦 𝑥 = 𝐴 & ⊢ (𝑥 = 𝐴 → (𝜑 ↔ 𝜓)) ⇒ ⊢ (∃!𝑥𝜑 ↔ ∃!𝑦𝜓) | ||
Theorem | euind 3637* | Existential uniqueness via an indirect equality. (Contributed by NM, 11-Oct-2010.) |
⊢ 𝐵 ∈ V & ⊢ (𝑥 = 𝑦 → (𝜑 ↔ 𝜓)) ⇒ ⊢ ((∀𝑥∀𝑦((𝜑 ∧ 𝜓) → 𝐴 = 𝐵) ∧ ∃𝑥𝜑) → ∃!𝑧∀𝑥(𝜑 → 𝑧 = 𝐴)) | ||
Theorem | reu2 3638* | A way to express restricted uniqueness. (Contributed by NM, 22-Nov-1994.) |
⊢ (∃!𝑥 ∈ 𝐴 𝜑 ↔ (∃𝑥 ∈ 𝐴 𝜑 ∧ ∀𝑥 ∈ 𝐴 ∀𝑦 ∈ 𝐴 ((𝜑 ∧ [𝑦 / 𝑥]𝜑) → 𝑥 = 𝑦))) | ||
Theorem | reu6 3639* | A way to express restricted uniqueness. (Contributed by NM, 20-Oct-2006.) |
⊢ (∃!𝑥 ∈ 𝐴 𝜑 ↔ ∃𝑦 ∈ 𝐴 ∀𝑥 ∈ 𝐴 (𝜑 ↔ 𝑥 = 𝑦)) | ||
Theorem | reu3 3640* | A way to express restricted uniqueness. (Contributed by NM, 24-Oct-2006.) |
⊢ (∃!𝑥 ∈ 𝐴 𝜑 ↔ (∃𝑥 ∈ 𝐴 𝜑 ∧ ∃𝑦 ∈ 𝐴 ∀𝑥 ∈ 𝐴 (𝜑 → 𝑥 = 𝑦))) | ||
Theorem | reu6i 3641* | A condition which implies existential uniqueness. (Contributed by Mario Carneiro, 2-Oct-2015.) |
⊢ ((𝐵 ∈ 𝐴 ∧ ∀𝑥 ∈ 𝐴 (𝜑 ↔ 𝑥 = 𝐵)) → ∃!𝑥 ∈ 𝐴 𝜑) | ||
Theorem | eqreu 3642* | A condition which implies existential uniqueness. (Contributed by Mario Carneiro, 2-Oct-2015.) |
⊢ (𝑥 = 𝐵 → (𝜑 ↔ 𝜓)) ⇒ ⊢ ((𝐵 ∈ 𝐴 ∧ 𝜓 ∧ ∀𝑥 ∈ 𝐴 (𝜑 → 𝑥 = 𝐵)) → ∃!𝑥 ∈ 𝐴 𝜑) | ||
Theorem | rmo4 3643* | Restricted "at most one" using implicit substitution. (Contributed by NM, 24-Oct-2006.) (Revised by NM, 16-Jun-2017.) |
⊢ (𝑥 = 𝑦 → (𝜑 ↔ 𝜓)) ⇒ ⊢ (∃*𝑥 ∈ 𝐴 𝜑 ↔ ∀𝑥 ∈ 𝐴 ∀𝑦 ∈ 𝐴 ((𝜑 ∧ 𝜓) → 𝑥 = 𝑦)) | ||
Theorem | reu4 3644* | Restricted uniqueness using implicit substitution. (Contributed by NM, 23-Nov-1994.) |
⊢ (𝑥 = 𝑦 → (𝜑 ↔ 𝜓)) ⇒ ⊢ (∃!𝑥 ∈ 𝐴 𝜑 ↔ (∃𝑥 ∈ 𝐴 𝜑 ∧ ∀𝑥 ∈ 𝐴 ∀𝑦 ∈ 𝐴 ((𝜑 ∧ 𝜓) → 𝑥 = 𝑦))) | ||
Theorem | reu7 3645* | Restricted uniqueness using implicit substitution. (Contributed by NM, 24-Oct-2006.) |
⊢ (𝑥 = 𝑦 → (𝜑 ↔ 𝜓)) ⇒ ⊢ (∃!𝑥 ∈ 𝐴 𝜑 ↔ (∃𝑥 ∈ 𝐴 𝜑 ∧ ∃𝑥 ∈ 𝐴 ∀𝑦 ∈ 𝐴 (𝜓 → 𝑥 = 𝑦))) | ||
Theorem | reu8 3646* | Restricted uniqueness using implicit substitution. (Contributed by NM, 24-Oct-2006.) |
⊢ (𝑥 = 𝑦 → (𝜑 ↔ 𝜓)) ⇒ ⊢ (∃!𝑥 ∈ 𝐴 𝜑 ↔ ∃𝑥 ∈ 𝐴 (𝜑 ∧ ∀𝑦 ∈ 𝐴 (𝜓 → 𝑥 = 𝑦))) | ||
Theorem | rmo3f 3647* | Restricted "at most one" using explicit substitution. (Contributed by NM, 4-Nov-2012.) (Revised by NM, 16-Jun-2017.) (Revised by Thierry Arnoux, 8-Oct-2017.) |
⊢ Ⅎ𝑥𝐴 & ⊢ Ⅎ𝑦𝐴 & ⊢ Ⅎ𝑦𝜑 ⇒ ⊢ (∃*𝑥 ∈ 𝐴 𝜑 ↔ ∀𝑥 ∈ 𝐴 ∀𝑦 ∈ 𝐴 ((𝜑 ∧ [𝑦 / 𝑥]𝜑) → 𝑥 = 𝑦)) | ||
Theorem | rmo4f 3648* | Restricted "at most one" using implicit substitution. (Contributed by NM, 24-Oct-2006.) (Revised by Thierry Arnoux, 11-Oct-2016.) (Revised by Thierry Arnoux, 8-Mar-2017.) (Revised by Thierry Arnoux, 8-Oct-2017.) |
⊢ Ⅎ𝑥𝐴 & ⊢ Ⅎ𝑦𝐴 & ⊢ Ⅎ𝑥𝜓 & ⊢ (𝑥 = 𝑦 → (𝜑 ↔ 𝜓)) ⇒ ⊢ (∃*𝑥 ∈ 𝐴 𝜑 ↔ ∀𝑥 ∈ 𝐴 ∀𝑦 ∈ 𝐴 ((𝜑 ∧ 𝜓) → 𝑥 = 𝑦)) | ||
Theorem | reu2eqd 3649* | Deduce equality from restricted uniqueness, deduction version. (Contributed by Thierry Arnoux, 27-Nov-2019.) |
⊢ (𝑥 = 𝐵 → (𝜓 ↔ 𝜒)) & ⊢ (𝑥 = 𝐶 → (𝜓 ↔ 𝜃)) & ⊢ (𝜑 → ∃!𝑥 ∈ 𝐴 𝜓) & ⊢ (𝜑 → 𝐵 ∈ 𝐴) & ⊢ (𝜑 → 𝐶 ∈ 𝐴) & ⊢ (𝜑 → 𝜒) & ⊢ (𝜑 → 𝜃) ⇒ ⊢ (𝜑 → 𝐵 = 𝐶) | ||
Theorem | reueq 3650* | Equality has existential uniqueness. (Contributed by Mario Carneiro, 1-Sep-2015.) |
⊢ (𝐵 ∈ 𝐴 ↔ ∃!𝑥 ∈ 𝐴 𝑥 = 𝐵) | ||
Theorem | rmoeq 3651* | Equality's restricted existential "at most one" property. (Contributed by Thierry Arnoux, 30-Mar-2018.) (Revised by AV, 27-Oct-2020.) (Proof shortened by NM, 29-Oct-2020.) |
⊢ ∃*𝑥 ∈ 𝐵 𝑥 = 𝐴 | ||
Theorem | rmoan 3652 | Restricted "at most one" still holds when a conjunct is added. (Contributed by NM, 16-Jun-2017.) |
⊢ (∃*𝑥 ∈ 𝐴 𝜑 → ∃*𝑥 ∈ 𝐴 (𝜓 ∧ 𝜑)) | ||
Theorem | rmoim 3653 | Restricted "at most one" is preserved through implication (note wff reversal). (Contributed by Alexander van der Vekens, 17-Jun-2017.) |
⊢ (∀𝑥 ∈ 𝐴 (𝜑 → 𝜓) → (∃*𝑥 ∈ 𝐴 𝜓 → ∃*𝑥 ∈ 𝐴 𝜑)) | ||
Theorem | rmoimia 3654 | Restricted "at most one" is preserved through implication (note wff reversal). (Contributed by Alexander van der Vekens, 17-Jun-2017.) |
⊢ (𝑥 ∈ 𝐴 → (𝜑 → 𝜓)) ⇒ ⊢ (∃*𝑥 ∈ 𝐴 𝜓 → ∃*𝑥 ∈ 𝐴 𝜑) | ||
Theorem | rmoimi 3655 | Restricted "at most one" is preserved through implication (note wff reversal). (Contributed by Alexander van der Vekens, 17-Jun-2017.) |
⊢ (𝜑 → 𝜓) ⇒ ⊢ (∃*𝑥 ∈ 𝐴 𝜓 → ∃*𝑥 ∈ 𝐴 𝜑) | ||
Theorem | rmoimi2 3656 | Restricted "at most one" is preserved through implication (note wff reversal). (Contributed by Alexander van der Vekens, 17-Jun-2017.) |
⊢ ∀𝑥((𝑥 ∈ 𝐴 ∧ 𝜑) → (𝑥 ∈ 𝐵 ∧ 𝜓)) ⇒ ⊢ (∃*𝑥 ∈ 𝐵 𝜓 → ∃*𝑥 ∈ 𝐴 𝜑) | ||
Theorem | 2reu5a 3657 | 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 3658 | Restricted uniqueness implies restricted "at most one" through implication, analogous to euimmo 2617. (Contributed by Alexander van der Vekens, 25-Jun-2017.) |
⊢ (∀𝑥 ∈ 𝐴 (𝜑 → 𝜓) → (∃!𝑥 ∈ 𝐴 𝜓 → ∃*𝑥 ∈ 𝐴 𝜑)) | ||
Theorem | 2reuswap 3659* | A condition allowing swap of uniqueness and existential quantifiers. (Contributed by Thierry Arnoux, 7-Apr-2017.) (Revised by NM, 16-Jun-2017.) |
⊢ (∀𝑥 ∈ 𝐴 ∃*𝑦 ∈ 𝐵 𝜑 → (∃!𝑥 ∈ 𝐴 ∃𝑦 ∈ 𝐵 𝜑 → ∃!𝑦 ∈ 𝐵 ∃𝑥 ∈ 𝐴 𝜑)) | ||
Theorem | 2reuswap2 3660* | A condition allowing swap of uniqueness and existential quantifiers. (Contributed by Thierry Arnoux, 7-Apr-2017.) |
⊢ (∀𝑥 ∈ 𝐴 ∃*𝑦(𝑦 ∈ 𝐵 ∧ 𝜑) → (∃!𝑥 ∈ 𝐴 ∃𝑦 ∈ 𝐵 𝜑 → ∃!𝑦 ∈ 𝐵 ∃𝑥 ∈ 𝐴 𝜑)) | ||
Theorem | reuxfrd 3661* | 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 3662* | 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 3663* | Transfer existential uniqueness from a variable 𝑥 to another variable 𝑦 contained in expression 𝐴. Cf. reuxfr1ds 3664. (Contributed by Thierry Arnoux, 7-Apr-2017.) |
⊢ ((𝜑 ∧ 𝑦 ∈ 𝐶) → 𝐴 ∈ 𝐵) & ⊢ ((𝜑 ∧ 𝑥 ∈ 𝐵) → ∃!𝑦 ∈ 𝐶 𝑥 = 𝐴) & ⊢ ((𝜑 ∧ 𝑥 = 𝐴) → (𝜓 ↔ 𝜒)) ⇒ ⊢ (𝜑 → (∃!𝑥 ∈ 𝐵 𝜓 ↔ ∃!𝑦 ∈ 𝐶 𝜒)) | ||
Theorem | reuxfr1ds 3664* | Transfer existential uniqueness from a variable 𝑥 to another variable 𝑦 contained in expression 𝐴. Use reuhypd 5312 to eliminate the second hypothesis. (Contributed by NM, 16-Jan-2012.) |
⊢ ((𝜑 ∧ 𝑦 ∈ 𝐶) → 𝐴 ∈ 𝐵) & ⊢ ((𝜑 ∧ 𝑥 ∈ 𝐵) → ∃!𝑦 ∈ 𝐶 𝑥 = 𝐴) & ⊢ (𝑥 = 𝐴 → (𝜓 ↔ 𝜒)) ⇒ ⊢ (𝜑 → (∃!𝑥 ∈ 𝐵 𝜓 ↔ ∃!𝑦 ∈ 𝐶 𝜒)) | ||
Theorem | reuxfr1 3665* | Transfer existential uniqueness from a variable 𝑥 to another variable 𝑦 contained in expression 𝐴. Use reuhyp 5313 to eliminate the second hypothesis. (Contributed by NM, 14-Nov-2004.) |
⊢ (𝑦 ∈ 𝐶 → 𝐴 ∈ 𝐵) & ⊢ (𝑥 ∈ 𝐵 → ∃!𝑦 ∈ 𝐶 𝑥 = 𝐴) & ⊢ (𝑥 = 𝐴 → (𝜑 ↔ 𝜓)) ⇒ ⊢ (∃!𝑥 ∈ 𝐵 𝜑 ↔ ∃!𝑦 ∈ 𝐶 𝜓) | ||
Theorem | reuind 3666* | Existential uniqueness via an indirect equality. (Contributed by NM, 16-Oct-2010.) |
⊢ (𝑥 = 𝑦 → (𝜑 ↔ 𝜓)) & ⊢ (𝑥 = 𝑦 → 𝐴 = 𝐵) ⇒ ⊢ ((∀𝑥∀𝑦(((𝐴 ∈ 𝐶 ∧ 𝜑) ∧ (𝐵 ∈ 𝐶 ∧ 𝜓)) → 𝐴 = 𝐵) ∧ ∃𝑥(𝐴 ∈ 𝐶 ∧ 𝜑)) → ∃!𝑧 ∈ 𝐶 ∀𝑥((𝐴 ∈ 𝐶 ∧ 𝜑) → 𝑧 = 𝐴)) | ||
Theorem | 2rmorex 3667* | Double restricted quantification with "at most one", analogous to 2moex 2641. (Contributed by Alexander van der Vekens, 17-Jun-2017.) |
⊢ (∃*𝑥 ∈ 𝐴 ∃𝑦 ∈ 𝐵 𝜑 → ∀𝑦 ∈ 𝐵 ∃*𝑥 ∈ 𝐴 𝜑) | ||
Theorem | 2reu5lem1 3668* | Lemma for 2reu5 3671. Note that ∃!𝑥 ∈ 𝐴∃!𝑦 ∈ 𝐵𝜑 does not mean "there is exactly one 𝑥 in 𝐴 and exactly one 𝑦 in 𝐵 such that 𝜑 holds"; see comment for 2eu5 2656. (Contributed by Alexander van der Vekens, 17-Jun-2017.) |
⊢ (∃!𝑥 ∈ 𝐴 ∃!𝑦 ∈ 𝐵 𝜑 ↔ ∃!𝑥∃!𝑦(𝑥 ∈ 𝐴 ∧ 𝑦 ∈ 𝐵 ∧ 𝜑)) | ||
Theorem | 2reu5lem2 3669* | Lemma for 2reu5 3671. (Contributed by Alexander van der Vekens, 17-Jun-2017.) |
⊢ (∀𝑥 ∈ 𝐴 ∃*𝑦 ∈ 𝐵 𝜑 ↔ ∀𝑥∃*𝑦(𝑥 ∈ 𝐴 ∧ 𝑦 ∈ 𝐵 ∧ 𝜑)) | ||
Theorem | 2reu5lem3 3670* | Lemma for 2reu5 3671. 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 3799. (Contributed by Alexander van der Vekens, 17-Jun-2017.) |
⊢ ((∃!𝑥 ∈ 𝐴 ∃!𝑦 ∈ 𝐵 𝜑 ∧ ∀𝑥 ∈ 𝐴 ∃*𝑦 ∈ 𝐵 𝜑) ↔ (∃𝑥 ∈ 𝐴 ∃𝑦 ∈ 𝐵 𝜑 ∧ ∃𝑧∃𝑤∀𝑥 ∈ 𝐴 ∀𝑦 ∈ 𝐵 (𝜑 → (𝑥 = 𝑧 ∧ 𝑦 = 𝑤)))) | ||
Theorem | 2reu5 3671* | Double restricted existential uniqueness in terms of restricted existential quantification and restricted universal quantification, analogous to 2eu5 2656 and reu3 3640. (Contributed by Alexander van der Vekens, 17-Jun-2017.) |
⊢ ((∃!𝑥 ∈ 𝐴 ∃!𝑦 ∈ 𝐵 𝜑 ∧ ∀𝑥 ∈ 𝐴 ∃*𝑦 ∈ 𝐵 𝜑) ↔ (∃𝑥 ∈ 𝐴 ∃𝑦 ∈ 𝐵 𝜑 ∧ ∃𝑧 ∈ 𝐴 ∃𝑤 ∈ 𝐵 ∀𝑥 ∈ 𝐴 ∀𝑦 ∈ 𝐵 (𝜑 → (𝑥 = 𝑧 ∧ 𝑦 = 𝑤)))) | ||
Theorem | 2reurmo 3672 | 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 3673* | Double restricted quantification with existential uniqueness, analogous to 2euex 2642. (Contributed by Alexander van der Vekens, 24-Jun-2017.) |
⊢ (∃!𝑥 ∈ 𝐴 ∃𝑦 ∈ 𝐵 𝜑 → ∃𝑦 ∈ 𝐵 ∃!𝑥 ∈ 𝐴 𝜑) | ||
Theorem | 2rmoswap 3674* | 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 3675* | 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 us 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 3680 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 3685 and cdeqab 3683. | ||
Syntax | wcdeq 3676 | 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 3677 | 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 3678 | Deduce conditional equality. (Contributed by Mario Carneiro, 11-Aug-2016.) |
⊢ (𝑥 = 𝑦 → 𝜑) ⇒ ⊢ CondEq(𝑥 = 𝑦 → 𝜑) | ||
Theorem | cdeqri 3679 | Property of conditional equality. (Contributed by Mario Carneiro, 11-Aug-2016.) |
⊢ CondEq(𝑥 = 𝑦 → 𝜑) ⇒ ⊢ (𝑥 = 𝑦 → 𝜑) | ||
Theorem | cdeqth 3680 | Deduce conditional equality from a theorem. (Contributed by Mario Carneiro, 11-Aug-2016.) |
⊢ 𝜑 ⇒ ⊢ CondEq(𝑥 = 𝑦 → 𝜑) | ||
Theorem | cdeqnot 3681 | Distribute conditional equality over negation. (Contributed by Mario Carneiro, 11-Aug-2016.) |
⊢ CondEq(𝑥 = 𝑦 → (𝜑 ↔ 𝜓)) ⇒ ⊢ CondEq(𝑥 = 𝑦 → (¬ 𝜑 ↔ ¬ 𝜓)) | ||
Theorem | cdeqal 3682* | Distribute conditional equality over quantification. (Contributed by Mario Carneiro, 11-Aug-2016.) |
⊢ CondEq(𝑥 = 𝑦 → (𝜑 ↔ 𝜓)) ⇒ ⊢ CondEq(𝑥 = 𝑦 → (∀𝑧𝜑 ↔ ∀𝑧𝜓)) | ||
Theorem | cdeqab 3683* | Distribute conditional equality over abstraction. (Contributed by Mario Carneiro, 11-Aug-2016.) |
⊢ CondEq(𝑥 = 𝑦 → (𝜑 ↔ 𝜓)) ⇒ ⊢ CondEq(𝑥 = 𝑦 → {𝑧 ∣ 𝜑} = {𝑧 ∣ 𝜓}) | ||
Theorem | cdeqal1 3684* | Distribute conditional equality over quantification. Usage of this theorem is discouraged because it depends on ax-13 2371. (Contributed by Mario Carneiro, 11-Aug-2016.) (New usage is discouraged.) |
⊢ CondEq(𝑥 = 𝑦 → (𝜑 ↔ 𝜓)) ⇒ ⊢ CondEq(𝑥 = 𝑦 → (∀𝑥𝜑 ↔ ∀𝑦𝜓)) | ||
Theorem | cdeqab1 3685* | Distribute conditional equality over abstraction. Usage of this theorem is discouraged because it depends on ax-13 2371. (Contributed by Mario Carneiro, 11-Aug-2016.) (New usage is discouraged.) |
⊢ CondEq(𝑥 = 𝑦 → (𝜑 ↔ 𝜓)) ⇒ ⊢ CondEq(𝑥 = 𝑦 → {𝑥 ∣ 𝜑} = {𝑦 ∣ 𝜓}) | ||
Theorem | cdeqim 3686 | Distribute conditional equality over implication. (Contributed by Mario Carneiro, 11-Aug-2016.) |
⊢ CondEq(𝑥 = 𝑦 → (𝜑 ↔ 𝜓)) & ⊢ CondEq(𝑥 = 𝑦 → (𝜒 ↔ 𝜃)) ⇒ ⊢ CondEq(𝑥 = 𝑦 → ((𝜑 → 𝜒) ↔ (𝜓 → 𝜃))) | ||
Theorem | cdeqcv 3687 | Conditional equality for set-to-class promotion. (Contributed by Mario Carneiro, 11-Aug-2016.) |
⊢ CondEq(𝑥 = 𝑦 → 𝑥 = 𝑦) | ||
Theorem | cdeqeq 3688 | Distribute conditional equality over equality. (Contributed by Mario Carneiro, 11-Aug-2016.) |
⊢ CondEq(𝑥 = 𝑦 → 𝐴 = 𝐵) & ⊢ CondEq(𝑥 = 𝑦 → 𝐶 = 𝐷) ⇒ ⊢ CondEq(𝑥 = 𝑦 → (𝐴 = 𝐶 ↔ 𝐵 = 𝐷)) | ||
Theorem | cdeqel 3689 | Distribute conditional equality over elementhood. (Contributed by Mario Carneiro, 11-Aug-2016.) |
⊢ CondEq(𝑥 = 𝑦 → 𝐴 = 𝐵) & ⊢ CondEq(𝑥 = 𝑦 → 𝐶 = 𝐷) ⇒ ⊢ CondEq(𝑥 = 𝑦 → (𝐴 ∈ 𝐶 ↔ 𝐵 ∈ 𝐷)) | ||
Theorem | nfcdeq 3690* | 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 2371. (Contributed by Mario Carneiro, 11-Aug-2016.) (New usage is discouraged.) |
⊢ Ⅎ𝑥𝜑 & ⊢ CondEq(𝑥 = 𝑦 → (𝜑 ↔ 𝜓)) ⇒ ⊢ (𝜑 ↔ 𝜓) | ||
Theorem | nfccdeq 3691* | Variation of nfcdeq 3690 for classes. Usage of this theorem is discouraged because it depends on ax-13 2371. (Contributed by Mario Carneiro, 11-Aug-2016.) Avoid ax-11 2158. (Revised by Gino Giotto, 19-May-2023.) (New usage is discouraged.) |
⊢ Ⅎ𝑥𝐴 & ⊢ CondEq(𝑥 = 𝑦 → 𝐴 = 𝐵) ⇒ ⊢ 𝐴 = 𝐵 | ||
Theorem | rru 3692* |
Relative version of Russell's paradox ru 3693 (which corresponds to the
case 𝐴 = V).
Originally a subproof in pwnss 5241. (Contributed by Stefan O'Rear, 22-Feb-2015.) Avoid df-nel 3047. (Revised by Steven Nguyen, 23-Nov-2022.) Reduce axiom usage. (Revised by Gino Giotto, 30-Aug-2024.) |
⊢ ¬ {𝑥 ∈ 𝐴 ∣ ¬ 𝑥 ∈ 𝑥} ∈ 𝐴 | ||
Theorem | ru 3693 |
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 5214 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 5200, Pairing prex 5325, Union uniex 7529, Power Set pwex 5273, and Infinity omex 9258 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 6467 (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 10089 and Cantor's theorem canth 7167 are provably false. (See ncanth 7168 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 5192 replaces ax-rep 5179) with ax-sep 5192 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 9212 (derived from the Axiom of Regularity), so for us the Russell class equals the universe V (Theorem ruv 9218). See ruALT 9219 for an alternate proof of ru 3693 derived from that fact. (Contributed by NM, 7-Aug-1994.) Remove use of ax-13 2371. (Revised by BJ, 12-Oct-2019.) (Proof modification is discouraged.) |
⊢ {𝑥 ∣ 𝑥 ∉ 𝑥} ∉ V | ||
Syntax | wsbc 3694 | 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 3695 |
Define the proper substitution of a class for a set.
When 𝐴 is a proper class, our definition evaluates to false (see sbcex 3704). This is somewhat arbitrary: we could have, instead, chosen the conclusion of sbc6 3726 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 3696 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 3696, which holds for both our definition and Quine's, and from which we can derive a weaker version of df-sbc 3695 in the form of sbc8g 3702. 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 3695 and assert that [𝐴 / 𝑥]𝜑 is always false when 𝐴 is a proper class. Theorem sbc2or 3703 shows the apparently "strongest" statement we can make regarding behavior at proper classes if we start from dfsbcq 3696. The related definition df-csb 3812 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 3696 |
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 3695 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 3697 instead of df-sbc 3695. (dfsbcq2 3697 is needed because unlike Quine we do not overload the df-sb 2071 syntax.) As a consequence of these theorems, we can derive sbc8g 3702, which is a weaker version of df-sbc 3695 that leaves substitution undefined when 𝐴 is a proper class. However, it is often a nuisance to have to prove the sethood hypothesis of sbc8g 3702, so we will allow direct use of df-sbc 3695 after Theorem sbc2or 3703 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 3697 | 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 2071 and substitution for class variables df-sbc 3695. Unlike Quine, we use a different syntax for each in order to avoid overloading it. See remarks in dfsbcq 3696. (Contributed by NM, 31-Dec-2016.) |
⊢ (𝑦 = 𝐴 → ([𝑦 / 𝑥]𝜑 ↔ [𝐴 / 𝑥]𝜑)) | ||
Theorem | sbsbc 3698 | Show that df-sb 2071 and df-sbc 3695 are equivalent when the class term 𝐴 in df-sbc 3695 is a setvar variable. This theorem lets us reuse theorems based on df-sb 2071 for proofs involving df-sbc 3695. (Contributed by NM, 31-Dec-2016.) (Proof modification is discouraged.) |
⊢ ([𝑦 / 𝑥]𝜑 ↔ [𝑦 / 𝑥]𝜑) | ||
Theorem | sbceq1d 3699 | Equality theorem for class substitution. (Contributed by Mario Carneiro, 9-Feb-2017.) (Revised by NM, 30-Jun-2018.) |
⊢ (𝜑 → 𝐴 = 𝐵) ⇒ ⊢ (𝜑 → ([𝐴 / 𝑥]𝜓 ↔ [𝐵 / 𝑥]𝜓)) | ||
Theorem | sbceq1dd 3700 | Equality theorem for class substitution. (Contributed by Mario Carneiro, 9-Feb-2017.) (Revised by NM, 30-Jun-2018.) |
⊢ (𝜑 → 𝐴 = 𝐵) & ⊢ (𝜑 → [𝐴 / 𝑥]𝜓) ⇒ ⊢ (𝜑 → [𝐵 / 𝑥]𝜓) |
< Previous Next > |
Copyright terms: Public domain | < Previous Next > |