Home | Metamath
Proof Explorer Theorem List (p. 34 of 424) | < 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-27159) |
Hilbert Space Explorer
(27160-28684) |
Users' Mathboxes
(28685-42360) |
Type | Label | Description |
---|---|---|
Statement | ||
Theorem | eqvincf 3301 | A variable introduction law for class equality, using bound-variable hypotheses instead of distinct variable conditions. (Contributed by NM, 14-Sep-2003.) |
⊢ Ⅎ𝑥𝐴 & ⊢ Ⅎ𝑥𝐵 & ⊢ 𝐴 ∈ V ⇒ ⊢ (𝐴 = 𝐵 ↔ ∃𝑥(𝑥 = 𝐴 ∧ 𝑥 = 𝐵)) | ||
Theorem | alexeqg 3302* | Two ways to express substitution of 𝐴 for 𝑥 in 𝜑. This is the analogue for classes of sb56 2136. (Contributed by NM, 2-Mar-1995.) (Revised by BJ, 27-Apr-2019.) |
⊢ (𝐴 ∈ 𝑉 → (∀𝑥(𝑥 = 𝐴 → 𝜑) ↔ ∃𝑥(𝑥 = 𝐴 ∧ 𝜑))) | ||
Theorem | ceqex 3303* | Equality implies equivalence with substitution. (Contributed by NM, 2-Mar-1995.) (Proof shortened by BJ, 1-May-2019.) |
⊢ (𝑥 = 𝐴 → (𝜑 ↔ ∃𝑥(𝑥 = 𝐴 ∧ 𝜑))) | ||
Theorem | ceqsexg 3304* | A representation of explicit substitution of a class for a variable, inferred from an implicit substitution hypothesis. (Contributed by NM, 11-Oct-2004.) |
⊢ Ⅎ𝑥𝜓 & ⊢ (𝑥 = 𝐴 → (𝜑 ↔ 𝜓)) ⇒ ⊢ (𝐴 ∈ 𝑉 → (∃𝑥(𝑥 = 𝐴 ∧ 𝜑) ↔ 𝜓)) | ||
Theorem | ceqsexgv 3305* | Elimination of an existential quantifier, using implicit substitution. (Contributed by NM, 29-Dec-1996.) |
⊢ (𝑥 = 𝐴 → (𝜑 ↔ 𝜓)) ⇒ ⊢ (𝐴 ∈ 𝑉 → (∃𝑥(𝑥 = 𝐴 ∧ 𝜑) ↔ 𝜓)) | ||
Theorem | ceqsrexv 3306* | Elimination of a restricted existential quantifier, using implicit substitution. (Contributed by NM, 30-Apr-2004.) |
⊢ (𝑥 = 𝐴 → (𝜑 ↔ 𝜓)) ⇒ ⊢ (𝐴 ∈ 𝐵 → (∃𝑥 ∈ 𝐵 (𝑥 = 𝐴 ∧ 𝜑) ↔ 𝜓)) | ||
Theorem | ceqsrexbv 3307* | Elimination of a restricted existential quantifier, using implicit substitution. (Contributed by Mario Carneiro, 14-Mar-2014.) |
⊢ (𝑥 = 𝐴 → (𝜑 ↔ 𝜓)) ⇒ ⊢ (∃𝑥 ∈ 𝐵 (𝑥 = 𝐴 ∧ 𝜑) ↔ (𝐴 ∈ 𝐵 ∧ 𝜓)) | ||
Theorem | ceqsrex2v 3308* | Elimination of a restricted existential quantifier, using implicit substitution. (Contributed by NM, 29-Oct-2005.) |
⊢ (𝑥 = 𝐴 → (𝜑 ↔ 𝜓)) & ⊢ (𝑦 = 𝐵 → (𝜓 ↔ 𝜒)) ⇒ ⊢ ((𝐴 ∈ 𝐶 ∧ 𝐵 ∈ 𝐷) → (∃𝑥 ∈ 𝐶 ∃𝑦 ∈ 𝐷 ((𝑥 = 𝐴 ∧ 𝑦 = 𝐵) ∧ 𝜑) ↔ 𝜒)) | ||
Theorem | clel2 3309* | An alternate definition of class membership when the class is a set. (Contributed by NM, 18-Aug-1993.) |
⊢ 𝐴 ∈ V ⇒ ⊢ (𝐴 ∈ 𝐵 ↔ ∀𝑥(𝑥 = 𝐴 → 𝑥 ∈ 𝐵)) | ||
Theorem | clel3g 3310* | An alternate definition of class membership when the class is a set. (Contributed by NM, 13-Aug-2005.) |
⊢ (𝐵 ∈ 𝑉 → (𝐴 ∈ 𝐵 ↔ ∃𝑥(𝑥 = 𝐵 ∧ 𝐴 ∈ 𝑥))) | ||
Theorem | clel3 3311* | An alternate definition of class membership when the class is a set. (Contributed by NM, 18-Aug-1993.) |
⊢ 𝐵 ∈ V ⇒ ⊢ (𝐴 ∈ 𝐵 ↔ ∃𝑥(𝑥 = 𝐵 ∧ 𝐴 ∈ 𝑥)) | ||
Theorem | clel4 3312* | An alternate definition of class membership when the class is a set. (Contributed by NM, 18-Aug-1993.) |
⊢ 𝐵 ∈ V ⇒ ⊢ (𝐴 ∈ 𝐵 ↔ ∀𝑥(𝑥 = 𝐵 → 𝐴 ∈ 𝑥)) | ||
Theorem | pm13.183 3313* | Compare theorem *13.183 in [WhiteheadRussell] p. 178. Only 𝐴 is required to be a set. (Contributed by Andrew Salmon, 3-Jun-2011.) |
⊢ (𝐴 ∈ 𝑉 → (𝐴 = 𝐵 ↔ ∀𝑧(𝑧 = 𝐴 ↔ 𝑧 = 𝐵))) | ||
Theorem | rr19.3v 3314* | Restricted quantifier version of Theorem 19.3 of [Margaris] p. 89. We don't need the nonempty class condition of r19.3rzv 4016 when there is an outer quantifier. (Contributed by NM, 25-Oct-2012.) |
⊢ (∀𝑥 ∈ 𝐴 ∀𝑦 ∈ 𝐴 𝜑 ↔ ∀𝑥 ∈ 𝐴 𝜑) | ||
Theorem | rr19.28v 3315* | Restricted quantifier version of Theorem 19.28 of [Margaris] p. 90. We don't need the nonempty class condition of r19.28zv 4018 when there is an outer quantifier. (Contributed by NM, 29-Oct-2012.) |
⊢ (∀𝑥 ∈ 𝐴 ∀𝑦 ∈ 𝐴 (𝜑 ∧ 𝜓) ↔ ∀𝑥 ∈ 𝐴 (𝜑 ∧ ∀𝑦 ∈ 𝐴 𝜓)) | ||
Theorem | elabgt 3316* | Membership in a class abstraction, using implicit substitution. (Closed theorem version of elabg 3320.) (Contributed by NM, 7-Nov-2005.) (Proof shortened by Andrew Salmon, 8-Jun-2011.) |
⊢ ((𝐴 ∈ 𝐵 ∧ ∀𝑥(𝑥 = 𝐴 → (𝜑 ↔ 𝜓))) → (𝐴 ∈ {𝑥 ∣ 𝜑} ↔ 𝜓)) | ||
Theorem | elabgf 3317 | Membership in a class abstraction, using implicit substitution. Compare Theorem 6.13 of [Quine] p. 44. This version has bound-variable hypotheses in place of distinct variable restrictions. (Contributed by NM, 21-Sep-2003.) (Revised by Mario Carneiro, 12-Oct-2016.) |
⊢ Ⅎ𝑥𝐴 & ⊢ Ⅎ𝑥𝜓 & ⊢ (𝑥 = 𝐴 → (𝜑 ↔ 𝜓)) ⇒ ⊢ (𝐴 ∈ 𝐵 → (𝐴 ∈ {𝑥 ∣ 𝜑} ↔ 𝜓)) | ||
Theorem | elabf 3318* | Membership in a class abstraction, using implicit substitution. (Contributed by NM, 1-Aug-1994.) (Revised by Mario Carneiro, 12-Oct-2016.) |
⊢ Ⅎ𝑥𝜓 & ⊢ 𝐴 ∈ V & ⊢ (𝑥 = 𝐴 → (𝜑 ↔ 𝜓)) ⇒ ⊢ (𝐴 ∈ {𝑥 ∣ 𝜑} ↔ 𝜓) | ||
Theorem | elab 3319* | Membership in a class abstraction, using implicit substitution. Compare Theorem 6.13 of [Quine] p. 44. (Contributed by NM, 1-Aug-1994.) |
⊢ 𝐴 ∈ V & ⊢ (𝑥 = 𝐴 → (𝜑 ↔ 𝜓)) ⇒ ⊢ (𝐴 ∈ {𝑥 ∣ 𝜑} ↔ 𝜓) | ||
Theorem | elabg 3320* | Membership in a class abstraction, using implicit substitution. Compare Theorem 6.13 of [Quine] p. 44. (Contributed by NM, 14-Apr-1995.) |
⊢ (𝑥 = 𝐴 → (𝜑 ↔ 𝜓)) ⇒ ⊢ (𝐴 ∈ 𝑉 → (𝐴 ∈ {𝑥 ∣ 𝜑} ↔ 𝜓)) | ||
Theorem | elabd 3321* | Explicit demonstration the class {𝑥 ∣ 𝜓} is not empty by the example 𝑋. (Contributed by RP, 12-Aug-2020.) |
⊢ (𝜑 → 𝑋 ∈ V) & ⊢ (𝜑 → 𝜒) & ⊢ (𝑥 = 𝑋 → (𝜓 ↔ 𝜒)) ⇒ ⊢ (𝜑 → ∃𝑥𝜓) | ||
Theorem | elab2g 3322* | Membership in a class abstraction, using implicit substitution. (Contributed by NM, 13-Sep-1995.) |
⊢ (𝑥 = 𝐴 → (𝜑 ↔ 𝜓)) & ⊢ 𝐵 = {𝑥 ∣ 𝜑} ⇒ ⊢ (𝐴 ∈ 𝑉 → (𝐴 ∈ 𝐵 ↔ 𝜓)) | ||
Theorem | elab2 3323* | Membership in a class abstraction, using implicit substitution. (Contributed by NM, 13-Sep-1995.) |
⊢ 𝐴 ∈ V & ⊢ (𝑥 = 𝐴 → (𝜑 ↔ 𝜓)) & ⊢ 𝐵 = {𝑥 ∣ 𝜑} ⇒ ⊢ (𝐴 ∈ 𝐵 ↔ 𝜓) | ||
Theorem | elab4g 3324* | Membership in a class abstraction, using implicit substitution. (Contributed by NM, 17-Oct-2012.) |
⊢ (𝑥 = 𝐴 → (𝜑 ↔ 𝜓)) & ⊢ 𝐵 = {𝑥 ∣ 𝜑} ⇒ ⊢ (𝐴 ∈ 𝐵 ↔ (𝐴 ∈ V ∧ 𝜓)) | ||
Theorem | elab3gf 3325 | Membership in a class abstraction, with a weaker antecedent than elabgf 3317. (Contributed by NM, 6-Sep-2011.) |
⊢ Ⅎ𝑥𝐴 & ⊢ Ⅎ𝑥𝜓 & ⊢ (𝑥 = 𝐴 → (𝜑 ↔ 𝜓)) ⇒ ⊢ ((𝜓 → 𝐴 ∈ 𝐵) → (𝐴 ∈ {𝑥 ∣ 𝜑} ↔ 𝜓)) | ||
Theorem | elab3g 3326* | Membership in a class abstraction, with a weaker antecedent than elabg 3320. (Contributed by NM, 29-Aug-2006.) |
⊢ (𝑥 = 𝐴 → (𝜑 ↔ 𝜓)) ⇒ ⊢ ((𝜓 → 𝐴 ∈ 𝐵) → (𝐴 ∈ {𝑥 ∣ 𝜑} ↔ 𝜓)) | ||
Theorem | elab3 3327* | Membership in a class abstraction using implicit substitution. (Contributed by NM, 10-Nov-2000.) |
⊢ (𝜓 → 𝐴 ∈ V) & ⊢ (𝑥 = 𝐴 → (𝜑 ↔ 𝜓)) ⇒ ⊢ (𝐴 ∈ {𝑥 ∣ 𝜑} ↔ 𝜓) | ||
Theorem | elrabi 3328* | Implication for the membership in a restricted class abstraction. (Contributed by Alexander van der Vekens, 31-Dec-2017.) |
⊢ (𝐴 ∈ {𝑥 ∈ 𝑉 ∣ 𝜑} → 𝐴 ∈ 𝑉) | ||
Theorem | elrabf 3329 | Membership in a restricted class abstraction, using implicit substitution. This version has bound-variable hypotheses in place of distinct variable restrictions. (Contributed by NM, 21-Sep-2003.) |
⊢ Ⅎ𝑥𝐴 & ⊢ Ⅎ𝑥𝐵 & ⊢ Ⅎ𝑥𝜓 & ⊢ (𝑥 = 𝐴 → (𝜑 ↔ 𝜓)) ⇒ ⊢ (𝐴 ∈ {𝑥 ∈ 𝐵 ∣ 𝜑} ↔ (𝐴 ∈ 𝐵 ∧ 𝜓)) | ||
Theorem | elrab3t 3330* | Membership in a restricted class abstraction, using implicit substitution. (Closed theorem version of elrab3 3332.) (Contributed by Thierry Arnoux, 31-Aug-2017.) |
⊢ ((∀𝑥(𝑥 = 𝐴 → (𝜑 ↔ 𝜓)) ∧ 𝐴 ∈ 𝐵) → (𝐴 ∈ {𝑥 ∈ 𝐵 ∣ 𝜑} ↔ 𝜓)) | ||
Theorem | elrab 3331* | Membership in a restricted class abstraction, using implicit substitution. (Contributed by NM, 21-May-1999.) |
⊢ (𝑥 = 𝐴 → (𝜑 ↔ 𝜓)) ⇒ ⊢ (𝐴 ∈ {𝑥 ∈ 𝐵 ∣ 𝜑} ↔ (𝐴 ∈ 𝐵 ∧ 𝜓)) | ||
Theorem | elrab3 3332* | Membership in a restricted class abstraction, using implicit substitution. (Contributed by NM, 5-Oct-2006.) |
⊢ (𝑥 = 𝐴 → (𝜑 ↔ 𝜓)) ⇒ ⊢ (𝐴 ∈ 𝐵 → (𝐴 ∈ {𝑥 ∈ 𝐵 ∣ 𝜑} ↔ 𝜓)) | ||
Theorem | elrab2 3333* | Membership in a class abstraction, using implicit substitution. (Contributed by NM, 2-Nov-2006.) |
⊢ (𝑥 = 𝐴 → (𝜑 ↔ 𝜓)) & ⊢ 𝐶 = {𝑥 ∈ 𝐵 ∣ 𝜑} ⇒ ⊢ (𝐴 ∈ 𝐶 ↔ (𝐴 ∈ 𝐵 ∧ 𝜓)) | ||
Theorem | ralab 3334* | Universal quantification over a class abstraction. (Contributed by Jeff Madsen, 10-Jun-2010.) |
⊢ (𝑦 = 𝑥 → (𝜑 ↔ 𝜓)) ⇒ ⊢ (∀𝑥 ∈ {𝑦 ∣ 𝜑}𝜒 ↔ ∀𝑥(𝜓 → 𝜒)) | ||
Theorem | ralrab 3335* | Universal quantification over a restricted class abstraction. (Contributed by Jeff Madsen, 10-Jun-2010.) |
⊢ (𝑦 = 𝑥 → (𝜑 ↔ 𝜓)) ⇒ ⊢ (∀𝑥 ∈ {𝑦 ∈ 𝐴 ∣ 𝜑}𝜒 ↔ ∀𝑥 ∈ 𝐴 (𝜓 → 𝜒)) | ||
Theorem | rexab 3336* | Existential quantification over a class abstraction. (Contributed by Mario Carneiro, 23-Jan-2014.) (Revised by Mario Carneiro, 3-Sep-2015.) |
⊢ (𝑦 = 𝑥 → (𝜑 ↔ 𝜓)) ⇒ ⊢ (∃𝑥 ∈ {𝑦 ∣ 𝜑}𝜒 ↔ ∃𝑥(𝜓 ∧ 𝜒)) | ||
Theorem | rexrab 3337* | Existential quantification over a class abstraction. (Contributed by Jeff Madsen, 17-Jun-2011.) (Revised by Mario Carneiro, 3-Sep-2015.) |
⊢ (𝑦 = 𝑥 → (𝜑 ↔ 𝜓)) ⇒ ⊢ (∃𝑥 ∈ {𝑦 ∈ 𝐴 ∣ 𝜑}𝜒 ↔ ∃𝑥 ∈ 𝐴 (𝜓 ∧ 𝜒)) | ||
Theorem | ralab2 3338* | Universal quantification over a class abstraction. (Contributed by Mario Carneiro, 3-Sep-2015.) |
⊢ (𝑥 = 𝑦 → (𝜓 ↔ 𝜒)) ⇒ ⊢ (∀𝑥 ∈ {𝑦 ∣ 𝜑}𝜓 ↔ ∀𝑦(𝜑 → 𝜒)) | ||
Theorem | ralrab2 3339* | Universal quantification over a restricted class abstraction. (Contributed by Mario Carneiro, 3-Sep-2015.) |
⊢ (𝑥 = 𝑦 → (𝜓 ↔ 𝜒)) ⇒ ⊢ (∀𝑥 ∈ {𝑦 ∈ 𝐴 ∣ 𝜑}𝜓 ↔ ∀𝑦 ∈ 𝐴 (𝜑 → 𝜒)) | ||
Theorem | rexab2 3340* | Existential quantification over a class abstraction. (Contributed by Mario Carneiro, 3-Sep-2015.) |
⊢ (𝑥 = 𝑦 → (𝜓 ↔ 𝜒)) ⇒ ⊢ (∃𝑥 ∈ {𝑦 ∣ 𝜑}𝜓 ↔ ∃𝑦(𝜑 ∧ 𝜒)) | ||
Theorem | rexrab2 3341* | Existential quantification over a class abstraction. (Contributed by Mario Carneiro, 3-Sep-2015.) |
⊢ (𝑥 = 𝑦 → (𝜓 ↔ 𝜒)) ⇒ ⊢ (∃𝑥 ∈ {𝑦 ∈ 𝐴 ∣ 𝜑}𝜓 ↔ ∃𝑦 ∈ 𝐴 (𝜑 ∧ 𝜒)) | ||
Theorem | abidnf 3342* | 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 3343* | A deduction theorem for converting the inference ⊢ Ⅎ𝑥𝐴 => ⊢ 𝜑 into a closed theorem. Use nfa1 2015 and nfab 2755 to eliminate the hypothesis of the substitution instance 𝜓 of the inference. For converting the inference form into a deduction form, abidnf 3342 is useful. (Contributed by NM, 8-Dec-2006.) |
⊢ (𝐴 = {𝑧 ∣ ∀𝑥 𝑧 ∈ 𝐴} → (𝜑 ↔ 𝜓)) & ⊢ 𝜓 ⇒ ⊢ (Ⅎ𝑥𝐴 → 𝜑) | ||
Theorem | eqeu 3344* | A condition which implies existential uniqueness. (Contributed by Jeff Hankins, 8-Sep-2009.) |
⊢ (𝑥 = 𝐴 → (𝜑 ↔ 𝜓)) ⇒ ⊢ ((𝐴 ∈ 𝐵 ∧ 𝜓 ∧ ∀𝑥(𝜑 → 𝑥 = 𝐴)) → ∃!𝑥𝜑) | ||
Theorem | eueq 3345* | Equality has existential uniqueness. (Contributed by NM, 25-Nov-1994.) |
⊢ (𝐴 ∈ V ↔ ∃!𝑥 𝑥 = 𝐴) | ||
Theorem | eueq1 3346* | Equality has existential uniqueness. (Contributed by NM, 5-Apr-1995.) |
⊢ 𝐴 ∈ V ⇒ ⊢ ∃!𝑥 𝑥 = 𝐴 | ||
Theorem | eueq2 3347* | Equality has existential uniqueness (split into 2 cases). (Contributed by NM, 5-Apr-1995.) |
⊢ 𝐴 ∈ V & ⊢ 𝐵 ∈ V ⇒ ⊢ ∃!𝑥((𝜑 ∧ 𝑥 = 𝐴) ∨ (¬ 𝜑 ∧ 𝑥 = 𝐵)) | ||
Theorem | eueq3 3348* | 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 | moeq 3349* | There is at most one set equal to a class. (Contributed by NM, 8-Mar-1995.) |
⊢ ∃*𝑥 𝑥 = 𝐴 | ||
Theorem | moeq3 3350* | "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 3351* | "At most one" remains true after substitution. (Contributed by NM, 9-Mar-1995.) |
⊢ ∃*𝑥𝜑 ⇒ ⊢ ∃*𝑥∃𝑦(𝑦 = 𝐴 ∧ 𝜑) | ||
Theorem | mo2icl 3352* | Theorem for inferring "at most one." (Contributed by NM, 17-Oct-1996.) |
⊢ (∀𝑥(𝜑 → 𝑥 = 𝐴) → ∃*𝑥𝜑) | ||
Theorem | mob2 3353* | Consequence of "at most one." (Contributed by NM, 2-Jan-2015.) |
⊢ (𝑥 = 𝐴 → (𝜑 ↔ 𝜓)) ⇒ ⊢ ((𝐴 ∈ 𝐵 ∧ ∃*𝑥𝜑 ∧ 𝜑) → (𝑥 = 𝐴 ↔ 𝜓)) | ||
Theorem | moi2 3354* | Consequence of "at most one." (Contributed by NM, 29-Jun-2008.) |
⊢ (𝑥 = 𝐴 → (𝜑 ↔ 𝜓)) ⇒ ⊢ (((𝐴 ∈ 𝐵 ∧ ∃*𝑥𝜑) ∧ (𝜑 ∧ 𝜓)) → 𝑥 = 𝐴) | ||
Theorem | mob 3355* | Equality implied by "at most one." (Contributed by NM, 18-Feb-2006.) |
⊢ (𝑥 = 𝐴 → (𝜑 ↔ 𝜓)) & ⊢ (𝑥 = 𝐵 → (𝜑 ↔ 𝜒)) ⇒ ⊢ (((𝐴 ∈ 𝐶 ∧ 𝐵 ∈ 𝐷) ∧ ∃*𝑥𝜑 ∧ 𝜓) → (𝐴 = 𝐵 ↔ 𝜒)) | ||
Theorem | moi 3356* | Equality implied by "at most one." (Contributed by NM, 18-Feb-2006.) |
⊢ (𝑥 = 𝐴 → (𝜑 ↔ 𝜓)) & ⊢ (𝑥 = 𝐵 → (𝜑 ↔ 𝜒)) ⇒ ⊢ (((𝐴 ∈ 𝐶 ∧ 𝐵 ∈ 𝐷) ∧ ∃*𝑥𝜑 ∧ (𝜓 ∧ 𝜒)) → 𝐴 = 𝐵) | ||
Theorem | morex 3357* | Derive membership from uniqueness. (Contributed by Jeff Madsen, 2-Sep-2009.) |
⊢ 𝐵 ∈ V & ⊢ (𝑥 = 𝐵 → (𝜑 ↔ 𝜓)) ⇒ ⊢ ((∃𝑥 ∈ 𝐴 𝜑 ∧ ∃*𝑥𝜑) → (𝜓 → 𝐵 ∈ 𝐴)) | ||
Theorem | euxfr2 3358* | Transfer existential uniqueness from a variable 𝑥 to another variable 𝑦 contained in expression 𝐴. (Contributed by NM, 14-Nov-2004.) |
⊢ 𝐴 ∈ V & ⊢ ∃*𝑦 𝑥 = 𝐴 ⇒ ⊢ (∃!𝑥∃𝑦(𝑥 = 𝐴 ∧ 𝜑) ↔ ∃!𝑦𝜑) | ||
Theorem | euxfr 3359* | Transfer existential uniqueness from a variable 𝑥 to another variable 𝑦 contained in expression 𝐴. (Contributed by NM, 14-Nov-2004.) |
⊢ 𝐴 ∈ V & ⊢ ∃!𝑦 𝑥 = 𝐴 & ⊢ (𝑥 = 𝐴 → (𝜑 ↔ 𝜓)) ⇒ ⊢ (∃!𝑥𝜑 ↔ ∃!𝑦𝜓) | ||
Theorem | euind 3360* | Existential uniqueness via an indirect equality. (Contributed by NM, 11-Oct-2010.) |
⊢ 𝐵 ∈ V & ⊢ (𝑥 = 𝑦 → (𝜑 ↔ 𝜓)) & ⊢ (𝑥 = 𝑦 → 𝐴 = 𝐵) ⇒ ⊢ ((∀𝑥∀𝑦((𝜑 ∧ 𝜓) → 𝐴 = 𝐵) ∧ ∃𝑥𝜑) → ∃!𝑧∀𝑥(𝜑 → 𝑧 = 𝐴)) | ||
Theorem | reu2 3361* | A way to express restricted uniqueness. (Contributed by NM, 22-Nov-1994.) |
⊢ (∃!𝑥 ∈ 𝐴 𝜑 ↔ (∃𝑥 ∈ 𝐴 𝜑 ∧ ∀𝑥 ∈ 𝐴 ∀𝑦 ∈ 𝐴 ((𝜑 ∧ [𝑦 / 𝑥]𝜑) → 𝑥 = 𝑦))) | ||
Theorem | reu6 3362* | A way to express restricted uniqueness. (Contributed by NM, 20-Oct-2006.) |
⊢ (∃!𝑥 ∈ 𝐴 𝜑 ↔ ∃𝑦 ∈ 𝐴 ∀𝑥 ∈ 𝐴 (𝜑 ↔ 𝑥 = 𝑦)) | ||
Theorem | reu3 3363* | A way to express restricted uniqueness. (Contributed by NM, 24-Oct-2006.) |
⊢ (∃!𝑥 ∈ 𝐴 𝜑 ↔ (∃𝑥 ∈ 𝐴 𝜑 ∧ ∃𝑦 ∈ 𝐴 ∀𝑥 ∈ 𝐴 (𝜑 → 𝑥 = 𝑦))) | ||
Theorem | reu6i 3364* | A condition which implies existential uniqueness. (Contributed by Mario Carneiro, 2-Oct-2015.) |
⊢ ((𝐵 ∈ 𝐴 ∧ ∀𝑥 ∈ 𝐴 (𝜑 ↔ 𝑥 = 𝐵)) → ∃!𝑥 ∈ 𝐴 𝜑) | ||
Theorem | eqreu 3365* | A condition which implies existential uniqueness. (Contributed by Mario Carneiro, 2-Oct-2015.) |
⊢ (𝑥 = 𝐵 → (𝜑 ↔ 𝜓)) ⇒ ⊢ ((𝐵 ∈ 𝐴 ∧ 𝜓 ∧ ∀𝑥 ∈ 𝐴 (𝜑 → 𝑥 = 𝐵)) → ∃!𝑥 ∈ 𝐴 𝜑) | ||
Theorem | rmo4 3366* | Restricted "at most one" using implicit substitution. (Contributed by NM, 24-Oct-2006.) (Revised by NM, 16-Jun-2017.) |
⊢ (𝑥 = 𝑦 → (𝜑 ↔ 𝜓)) ⇒ ⊢ (∃*𝑥 ∈ 𝐴 𝜑 ↔ ∀𝑥 ∈ 𝐴 ∀𝑦 ∈ 𝐴 ((𝜑 ∧ 𝜓) → 𝑥 = 𝑦)) | ||
Theorem | reu4 3367* | Restricted uniqueness using implicit substitution. (Contributed by NM, 23-Nov-1994.) |
⊢ (𝑥 = 𝑦 → (𝜑 ↔ 𝜓)) ⇒ ⊢ (∃!𝑥 ∈ 𝐴 𝜑 ↔ (∃𝑥 ∈ 𝐴 𝜑 ∧ ∀𝑥 ∈ 𝐴 ∀𝑦 ∈ 𝐴 ((𝜑 ∧ 𝜓) → 𝑥 = 𝑦))) | ||
Theorem | reu7 3368* | Restricted uniqueness using implicit substitution. (Contributed by NM, 24-Oct-2006.) |
⊢ (𝑥 = 𝑦 → (𝜑 ↔ 𝜓)) ⇒ ⊢ (∃!𝑥 ∈ 𝐴 𝜑 ↔ (∃𝑥 ∈ 𝐴 𝜑 ∧ ∃𝑥 ∈ 𝐴 ∀𝑦 ∈ 𝐴 (𝜓 → 𝑥 = 𝑦))) | ||
Theorem | reu8 3369* | Restricted uniqueness using implicit substitution. (Contributed by NM, 24-Oct-2006.) |
⊢ (𝑥 = 𝑦 → (𝜑 ↔ 𝜓)) ⇒ ⊢ (∃!𝑥 ∈ 𝐴 𝜑 ↔ ∃𝑥 ∈ 𝐴 (𝜑 ∧ ∀𝑦 ∈ 𝐴 (𝜓 → 𝑥 = 𝑦))) | ||
Theorem | reu2eqd 3370* | Deduce equality from restricted uniqueness, deduction version. (Contributed by Thierry Arnoux, 27-Nov-2019.) |
⊢ (𝑥 = 𝐵 → (𝜓 ↔ 𝜒)) & ⊢ (𝑥 = 𝐶 → (𝜓 ↔ 𝜃)) & ⊢ (𝜑 → ∃!𝑥 ∈ 𝐴 𝜓) & ⊢ (𝜑 → 𝐵 ∈ 𝐴) & ⊢ (𝜑 → 𝐶 ∈ 𝐴) & ⊢ (𝜑 → 𝜒) & ⊢ (𝜑 → 𝜃) ⇒ ⊢ (𝜑 → 𝐵 = 𝐶) | ||
Theorem | reueq 3371* | Equality has existential uniqueness. (Contributed by Mario Carneiro, 1-Sep-2015.) |
⊢ (𝐵 ∈ 𝐴 ↔ ∃!𝑥 ∈ 𝐴 𝑥 = 𝐵) | ||
Theorem | rmoeq 3372* | 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 3373 | Restricted "at most one" still holds when a conjunct is added. (Contributed by NM, 16-Jun-2017.) |
⊢ (∃*𝑥 ∈ 𝐴 𝜑 → ∃*𝑥 ∈ 𝐴 (𝜓 ∧ 𝜑)) | ||
Theorem | rmoim 3374 | Restricted "at most one" is preserved through implication (note wff reversal). (Contributed by Alexander van der Vekens, 17-Jun-2017.) |
⊢ (∀𝑥 ∈ 𝐴 (𝜑 → 𝜓) → (∃*𝑥 ∈ 𝐴 𝜓 → ∃*𝑥 ∈ 𝐴 𝜑)) | ||
Theorem | rmoimia 3375 | Restricted "at most one" is preserved through implication (note wff reversal). (Contributed by Alexander van der Vekens, 17-Jun-2017.) |
⊢ (𝑥 ∈ 𝐴 → (𝜑 → 𝜓)) ⇒ ⊢ (∃*𝑥 ∈ 𝐴 𝜓 → ∃*𝑥 ∈ 𝐴 𝜑) | ||
Theorem | rmoimi2 3376 | Restricted "at most one" is preserved through implication (note wff reversal). (Contributed by Alexander van der Vekens, 17-Jun-2017.) |
⊢ ∀𝑥((𝑥 ∈ 𝐴 ∧ 𝜑) → (𝑥 ∈ 𝐵 ∧ 𝜓)) ⇒ ⊢ (∃*𝑥 ∈ 𝐵 𝜓 → ∃*𝑥 ∈ 𝐴 𝜑) | ||
Theorem | 2reuswap 3377* | A condition allowing swap of uniqueness and existential quantifiers. (Contributed by Thierry Arnoux, 7-Apr-2017.) (Revised by NM, 16-Jun-2017.) |
⊢ (∀𝑥 ∈ 𝐴 ∃*𝑦 ∈ 𝐵 𝜑 → (∃!𝑥 ∈ 𝐴 ∃𝑦 ∈ 𝐵 𝜑 → ∃!𝑦 ∈ 𝐵 ∃𝑥 ∈ 𝐴 𝜑)) | ||
Theorem | reuind 3378* | Existential uniqueness via an indirect equality. (Contributed by NM, 16-Oct-2010.) |
⊢ (𝑥 = 𝑦 → (𝜑 ↔ 𝜓)) & ⊢ (𝑥 = 𝑦 → 𝐴 = 𝐵) ⇒ ⊢ ((∀𝑥∀𝑦(((𝐴 ∈ 𝐶 ∧ 𝜑) ∧ (𝐵 ∈ 𝐶 ∧ 𝜓)) → 𝐴 = 𝐵) ∧ ∃𝑥(𝐴 ∈ 𝐶 ∧ 𝜑)) → ∃!𝑧 ∈ 𝐶 ∀𝑥((𝐴 ∈ 𝐶 ∧ 𝜑) → 𝑧 = 𝐴)) | ||
Theorem | 2rmorex 3379* | Double restricted quantification with "at most one," analogous to 2moex 2531. (Contributed by Alexander van der Vekens, 17-Jun-2017.) |
⊢ (∃*𝑥 ∈ 𝐴 ∃𝑦 ∈ 𝐵 𝜑 → ∀𝑦 ∈ 𝐵 ∃*𝑥 ∈ 𝐴 𝜑) | ||
Theorem | 2reu5lem1 3380* | Lemma for 2reu5 3383. Note that ∃!𝑥 ∈ 𝐴∃!𝑦 ∈ 𝐵𝜑 does not mean "there is exactly one 𝑥 in 𝐴 and exactly one 𝑦 in 𝐵 such that 𝜑 holds;" see comment for 2eu5 2545. (Contributed by Alexander van der Vekens, 17-Jun-2017.) |
⊢ (∃!𝑥 ∈ 𝐴 ∃!𝑦 ∈ 𝐵 𝜑 ↔ ∃!𝑥∃!𝑦(𝑥 ∈ 𝐴 ∧ 𝑦 ∈ 𝐵 ∧ 𝜑)) | ||
Theorem | 2reu5lem2 3381* | Lemma for 2reu5 3383. (Contributed by Alexander van der Vekens, 17-Jun-2017.) |
⊢ (∀𝑥 ∈ 𝐴 ∃*𝑦 ∈ 𝐵 𝜑 ↔ ∀𝑥∃*𝑦(𝑥 ∈ 𝐴 ∧ 𝑦 ∈ 𝐵 ∧ 𝜑)) | ||
Theorem | 2reu5lem3 3382* | Lemma for 2reu5 3383. 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 3492. (Contributed by Alexander van der Vekens, 17-Jun-2017.) |
⊢ ((∃!𝑥 ∈ 𝐴 ∃!𝑦 ∈ 𝐵 𝜑 ∧ ∀𝑥 ∈ 𝐴 ∃*𝑦 ∈ 𝐵 𝜑) ↔ (∃𝑥 ∈ 𝐴 ∃𝑦 ∈ 𝐵 𝜑 ∧ ∃𝑧∃𝑤∀𝑥 ∈ 𝐴 ∀𝑦 ∈ 𝐵 (𝜑 → (𝑥 = 𝑧 ∧ 𝑦 = 𝑤)))) | ||
Theorem | 2reu5 3383* | Double restricted existential uniqueness in terms of restricted existential quantification and restricted universal quantification, analogous to 2eu5 2545 and reu3 3363. (Contributed by Alexander van der Vekens, 17-Jun-2017.) |
⊢ ((∃!𝑥 ∈ 𝐴 ∃!𝑦 ∈ 𝐵 𝜑 ∧ ∀𝑥 ∈ 𝐴 ∃*𝑦 ∈ 𝐵 𝜑) ↔ (∃𝑥 ∈ 𝐴 ∃𝑦 ∈ 𝐵 𝜑 ∧ ∃𝑧 ∈ 𝐴 ∃𝑤 ∈ 𝐵 ∀𝑥 ∈ 𝐴 ∀𝑦 ∈ 𝐵 (𝜑 → (𝑥 = 𝑧 ∧ 𝑦 = 𝑤)))) | ||
Theorem | nelrdva 3384* | Deduce negative membership from an implication. (Contributed by Thierry Arnoux, 27-Nov-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 3-ary 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 3389 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 forall 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 dv conditions of cdeqab1 3394 and cdeqab 3392. | ||
Syntax | wcdeq 3385 | 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 3386 | 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 3387 | Deduce conditional equality. (Contributed by Mario Carneiro, 11-Aug-2016.) |
⊢ (𝑥 = 𝑦 → 𝜑) ⇒ ⊢ CondEq(𝑥 = 𝑦 → 𝜑) | ||
Theorem | cdeqri 3388 | Property of conditional equality. (Contributed by Mario Carneiro, 11-Aug-2016.) |
⊢ CondEq(𝑥 = 𝑦 → 𝜑) ⇒ ⊢ (𝑥 = 𝑦 → 𝜑) | ||
Theorem | cdeqth 3389 | Deduce conditional equality from a theorem. (Contributed by Mario Carneiro, 11-Aug-2016.) |
⊢ 𝜑 ⇒ ⊢ CondEq(𝑥 = 𝑦 → 𝜑) | ||
Theorem | cdeqnot 3390 | Distribute conditional equality over negation. (Contributed by Mario Carneiro, 11-Aug-2016.) |
⊢ CondEq(𝑥 = 𝑦 → (𝜑 ↔ 𝜓)) ⇒ ⊢ CondEq(𝑥 = 𝑦 → (¬ 𝜑 ↔ ¬ 𝜓)) | ||
Theorem | cdeqal 3391* | Distribute conditional equality over quantification. (Contributed by Mario Carneiro, 11-Aug-2016.) |
⊢ CondEq(𝑥 = 𝑦 → (𝜑 ↔ 𝜓)) ⇒ ⊢ CondEq(𝑥 = 𝑦 → (∀𝑧𝜑 ↔ ∀𝑧𝜓)) | ||
Theorem | cdeqab 3392* | Distribute conditional equality over abstraction. (Contributed by Mario Carneiro, 11-Aug-2016.) |
⊢ CondEq(𝑥 = 𝑦 → (𝜑 ↔ 𝜓)) ⇒ ⊢ CondEq(𝑥 = 𝑦 → {𝑧 ∣ 𝜑} = {𝑧 ∣ 𝜓}) | ||
Theorem | cdeqal1 3393* | Distribute conditional equality over quantification. (Contributed by Mario Carneiro, 11-Aug-2016.) |
⊢ CondEq(𝑥 = 𝑦 → (𝜑 ↔ 𝜓)) ⇒ ⊢ CondEq(𝑥 = 𝑦 → (∀𝑥𝜑 ↔ ∀𝑦𝜓)) | ||
Theorem | cdeqab1 3394* | Distribute conditional equality over abstraction. (Contributed by Mario Carneiro, 11-Aug-2016.) |
⊢ CondEq(𝑥 = 𝑦 → (𝜑 ↔ 𝜓)) ⇒ ⊢ CondEq(𝑥 = 𝑦 → {𝑥 ∣ 𝜑} = {𝑦 ∣ 𝜓}) | ||
Theorem | cdeqim 3395 | Distribute conditional equality over implication. (Contributed by Mario Carneiro, 11-Aug-2016.) |
⊢ CondEq(𝑥 = 𝑦 → (𝜑 ↔ 𝜓)) & ⊢ CondEq(𝑥 = 𝑦 → (𝜒 ↔ 𝜃)) ⇒ ⊢ CondEq(𝑥 = 𝑦 → ((𝜑 → 𝜒) ↔ (𝜓 → 𝜃))) | ||
Theorem | cdeqcv 3396 | Conditional equality for set-to-class promotion. (Contributed by Mario Carneiro, 11-Aug-2016.) |
⊢ CondEq(𝑥 = 𝑦 → 𝑥 = 𝑦) | ||
Theorem | cdeqeq 3397 | Distribute conditional equality over equality. (Contributed by Mario Carneiro, 11-Aug-2016.) |
⊢ CondEq(𝑥 = 𝑦 → 𝐴 = 𝐵) & ⊢ CondEq(𝑥 = 𝑦 → 𝐶 = 𝐷) ⇒ ⊢ CondEq(𝑥 = 𝑦 → (𝐴 = 𝐶 ↔ 𝐵 = 𝐷)) | ||
Theorem | cdeqel 3398 | Distribute conditional equality over elementhood. (Contributed by Mario Carneiro, 11-Aug-2016.) |
⊢ CondEq(𝑥 = 𝑦 → 𝐴 = 𝐵) & ⊢ CondEq(𝑥 = 𝑦 → 𝐶 = 𝐷) ⇒ ⊢ CondEq(𝑥 = 𝑦 → (𝐴 ∈ 𝐶 ↔ 𝐵 ∈ 𝐷)) | ||
Theorem | nfcdeq 3399* | 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. (Contributed by Mario Carneiro, 11-Aug-2016.) |
⊢ Ⅎ𝑥𝜑 & ⊢ CondEq(𝑥 = 𝑦 → (𝜑 ↔ 𝜓)) ⇒ ⊢ (𝜑 ↔ 𝜓) | ||
Theorem | nfccdeq 3400* | Variation of nfcdeq 3399 for classes. (Contributed by Mario Carneiro, 11-Aug-2016.) |
⊢ Ⅎ𝑥𝐴 & ⊢ CondEq(𝑥 = 𝑦 → 𝐴 = 𝐵) ⇒ ⊢ 𝐴 = 𝐵 |
< Previous Next > |
Copyright terms: Public domain | < Previous Next > |