![]() |
Metamath
Proof Explorer Theorem List (p. 363 of 481) | < 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-30640) |
![]() (30641-32163) |
![]() (32164-48040) |
Type | Label | Description |
---|---|---|
Statement | ||
Theorem | ax6er 36201 | Commuted form of ax6e 2374. (Could be placed right after ax6e 2374). (Contributed by BJ, 15-Sep-2018.) |
⊢ ∃𝑥 𝑦 = 𝑥 | ||
Theorem | exlimiieq1 36202 | Inferring a theorem when it is implied by an equality which may be true. (Contributed by BJ, 30-Sep-2018.) |
⊢ Ⅎ𝑥𝜑 & ⊢ (𝑥 = 𝑦 → 𝜑) ⇒ ⊢ 𝜑 | ||
Theorem | exlimiieq2 36203 | Inferring a theorem when it is implied by an equality which may be true. (Contributed by BJ, 15-Sep-2018.) (Revised by BJ, 30-Sep-2018.) |
⊢ Ⅎ𝑦𝜑 & ⊢ (𝑥 = 𝑦 → 𝜑) ⇒ ⊢ 𝜑 | ||
Theorem | ax11-pm2 36204* | Proof of ax-11 2146 from the standard axioms of predicate calculus, similar to PM's proof of alcom 2148 (PM*11.2). This proof requires that 𝑥 and 𝑦 be distinct. Axiom ax-11 2146 is used in the proof only through nfal 2308, nfsb 2514, sbal 2151, sb8 2508. See also ax11-pm 36200. (Contributed by BJ, 15-Sep-2018.) (Proof modification is discouraged.) |
⊢ (∀𝑥∀𝑦𝜑 → ∀𝑦∀𝑥𝜑) | ||
Theorem | bj-sbsb 36205 | Biconditional showing two possible (dual) definitions of substitution df-sb 2060 not using dummy variables. (Contributed by BJ, 19-Mar-2021.) |
⊢ (((𝑥 = 𝑦 → 𝜑) ∧ ∃𝑥(𝑥 = 𝑦 ∧ 𝜑)) ↔ (∀𝑥(𝑥 = 𝑦 → 𝜑) ∨ (𝑥 = 𝑦 ∧ 𝜑))) | ||
Theorem | bj-dfsb2 36206 | Alternate (dual) definition of substitution df-sb 2060 not using dummy variables. (Contributed by BJ, 19-Mar-2021.) |
⊢ ([𝑦 / 𝑥]𝜑 ↔ (∀𝑥(𝑥 = 𝑦 → 𝜑) ∨ (𝑥 = 𝑦 ∧ 𝜑))) | ||
Theorem | bj-sbf3 36207 | Substitution has no effect on a bound variable (existential quantifier case); see sbf2 2255. (Contributed by BJ, 2-May-2019.) |
⊢ ([𝑦 / 𝑥]∃𝑥𝜑 ↔ ∃𝑥𝜑) | ||
Theorem | bj-sbf4 36208 | Substitution has no effect on a bound variable (nonfreeness case); see sbf2 2255. (Contributed by BJ, 2-May-2019.) |
⊢ ([𝑦 / 𝑥]Ⅎ𝑥𝜑 ↔ Ⅎ𝑥𝜑) | ||
Theorem | bj-sbnf 36209* | Move nonfree predicate in and out of substitution; see sbal 2151 and sbex 2269. (Contributed by BJ, 2-May-2019.) |
⊢ ([𝑧 / 𝑦]Ⅎ𝑥𝜑 ↔ Ⅎ𝑥[𝑧 / 𝑦]𝜑) | ||
Theorem | bj-eu3f 36210* | Version of eu3v 2556 where the disjoint variable condition is replaced with a nonfreeness hypothesis. This is a "backup" of a theorem that used to be in the main part with label "eu3" and was deprecated in favor of eu3v 2556. (Contributed by NM, 8-Jul-1994.) (Proof shortened by BJ, 31-May-2019.) |
⊢ Ⅎ𝑦𝜑 ⇒ ⊢ (∃!𝑥𝜑 ↔ (∃𝑥𝜑 ∧ ∃𝑦∀𝑥(𝜑 → 𝑥 = 𝑦))) | ||
Miscellaneous theorems of first-order logic. | ||
Theorem | bj-sblem1 36211* | Lemma for substitution. (Contributed by BJ, 23-Jul-2023.) |
⊢ (∀𝑥(𝜑 → (𝜓 → 𝜒)) → (∀𝑥(𝜑 → 𝜓) → (∃𝑥𝜑 → 𝜒))) | ||
Theorem | bj-sblem2 36212* | Lemma for substitution. (Contributed by BJ, 23-Jul-2023.) |
⊢ (∀𝑥(𝜑 → (𝜒 → 𝜓)) → ((∃𝑥𝜑 → 𝜒) → ∀𝑥(𝜑 → 𝜓))) | ||
Theorem | bj-sblem 36213* | Lemma for substitution. (Contributed by BJ, 23-Jul-2023.) |
⊢ (∀𝑥(𝜑 → (𝜓 ↔ 𝜒)) → (∀𝑥(𝜑 → 𝜓) ↔ (∃𝑥𝜑 → 𝜒))) | ||
Theorem | bj-sbievw1 36214* | Lemma for substitution. (Contributed by BJ, 23-Jul-2023.) |
⊢ ([𝑦 / 𝑥](𝜑 → 𝜓) → ([𝑦 / 𝑥]𝜑 → 𝜓)) | ||
Theorem | bj-sbievw2 36215* | Lemma for substitution. (Contributed by BJ, 23-Jul-2023.) |
⊢ ([𝑦 / 𝑥](𝜓 → 𝜑) → (𝜓 → [𝑦 / 𝑥]𝜑)) | ||
Theorem | bj-sbievw 36216* | Lemma for substitution. Closed form of equsalvw 1999 and sbievw 2087. (Contributed by BJ, 23-Jul-2023.) |
⊢ ([𝑦 / 𝑥](𝜑 ↔ 𝜓) → ([𝑦 / 𝑥]𝜑 ↔ 𝜓)) | ||
Theorem | bj-sbievv 36217 | Version of sbie 2493 with a second nonfreeness hypothesis and shorter proof. (Contributed by BJ, 18-Jul-2023.) (Proof modification is discouraged.) |
⊢ Ⅎ𝑥𝜓 & ⊢ Ⅎ𝑦𝜑 & ⊢ (𝑥 = 𝑦 → (𝜑 ↔ 𝜓)) ⇒ ⊢ ([𝑦 / 𝑥]𝜑 ↔ 𝜓) | ||
Theorem | bj-moeub 36218 | Uniqueness is equivalent to existence being equivalent to unique existence. (Contributed by BJ, 14-Oct-2022.) |
⊢ (∃*𝑥𝜑 ↔ (∃𝑥𝜑 ↔ ∃!𝑥𝜑)) | ||
Theorem | bj-sbidmOLD 36219 | Obsolete proof of sbidm 2501 temporarily kept here to check it gives no additional insight. (Contributed by NM, 8-Mar-1995.) (Proof modification is discouraged.) (New usage is discouraged.) |
⊢ ([𝑦 / 𝑥][𝑦 / 𝑥]𝜑 ↔ [𝑦 / 𝑥]𝜑) | ||
Theorem | bj-dvelimdv 36220* |
Deduction form of dvelim 2442 with disjoint variable conditions. Uncurried
(imported) form of bj-dvelimdv1 36221. Typically, 𝑧 is a fresh
variable used for the implicit substitution hypothesis that results in
𝜒 (namely, 𝜓 can be thought as 𝜓(𝑥, 𝑦) and 𝜒 as
𝜓(𝑥, 𝑧)). So the theorem says that if x is
effectively free
in 𝜓(𝑥, 𝑧), then if x and y are not the same
variable, then
𝑥 is also effectively free in 𝜓(𝑥, 𝑦), in a context
𝜑.
One can weaken the implicit substitution hypothesis by adding the antecedent 𝜑 but this typically does not make the theorem much more useful. Similarly, one could use nonfreeness hypotheses instead of disjoint variable conditions but since this result is typically used when 𝑧 is a dummy variable, this would not be of much benefit. One could also remove DV (𝑥, 𝑧) since in the proof nfv 1909 can be replaced with nfal 2308 followed by nfn 1852. Remark: nfald 2313 uses ax-11 2146; it might be possible to inline and use ax11w 2118 instead, but there is still a use via 19.12 2312 anyway. (Contributed by BJ, 20-Oct-2021.) (Proof modification is discouraged.) |
⊢ (𝜑 → Ⅎ𝑥𝜒) & ⊢ (𝑧 = 𝑦 → (𝜒 ↔ 𝜓)) ⇒ ⊢ ((𝜑 ∧ ¬ ∀𝑥 𝑥 = 𝑦) → Ⅎ𝑥𝜓) | ||
Theorem | bj-dvelimdv1 36221* | Curried (exported) form of bj-dvelimdv 36220 (of course, one is directly provable from the other, but we keep this proof for illustration purposes). (Contributed by BJ, 20-Oct-2021.) (Proof modification is discouraged.) |
⊢ (𝜑 → Ⅎ𝑥𝜒) & ⊢ (𝑧 = 𝑦 → (𝜒 ↔ 𝜓)) ⇒ ⊢ (𝜑 → (¬ ∀𝑥 𝑥 = 𝑦 → Ⅎ𝑥𝜓)) | ||
Theorem | bj-dvelimv 36222* | A version of dvelim 2442 using the "nonfree" idiom. (Contributed by BJ, 20-Oct-2021.) (Proof modification is discouraged.) |
⊢ Ⅎ𝑥𝜓 & ⊢ (𝑧 = 𝑦 → (𝜓 ↔ 𝜑)) ⇒ ⊢ (¬ ∀𝑥 𝑥 = 𝑦 → Ⅎ𝑥𝜑) | ||
Theorem | bj-nfeel2 36223* | Nonfreeness in a membership statement. (Contributed by BJ, 20-Oct-2021.) (Proof modification is discouraged.) |
⊢ (¬ ∀𝑥 𝑥 = 𝑦 → Ⅎ𝑥 𝑦 ∈ 𝑧) | ||
Theorem | bj-axc14nf 36224 | Proof of a version of axc14 2454 using the "nonfree" idiom. (Contributed by BJ, 20-Oct-2021.) (Proof modification is discouraged.) |
⊢ (¬ ∀𝑧 𝑧 = 𝑥 → (¬ ∀𝑧 𝑧 = 𝑦 → Ⅎ𝑧 𝑥 ∈ 𝑦)) | ||
Theorem | bj-axc14 36225 | Alternate proof of axc14 2454 (even when inlining the above results, this gives a shorter proof). (Contributed by BJ, 20-Oct-2021.) (Proof modification is discouraged.) |
⊢ (¬ ∀𝑧 𝑧 = 𝑥 → (¬ ∀𝑧 𝑧 = 𝑦 → (𝑥 ∈ 𝑦 → ∀𝑧 𝑥 ∈ 𝑦))) | ||
Theorem | mobidvALT 36226* | Alternate proof of mobidv 2535 directly from its analogues albidv 1915 and exbidv 1916, using deduction style. Note the proof structure, similar to mobi 2533. (Contributed by Mario Carneiro, 7-Oct-2016.) Reduce axiom dependencies and shorten proof. Remove dependency on ax-6 1963, ax-7 2003, ax-12 2163 by adapting proof of mobid 2536. (Revised by BJ, 26-Sep-2022.) (Proof modification is discouraged.) (New usage is discouraged.) |
⊢ (𝜑 → (𝜓 ↔ 𝜒)) ⇒ ⊢ (𝜑 → (∃*𝑥𝜓 ↔ ∃*𝑥𝜒)) | ||
Theorem | sbn1ALT 36227 | Alternate proof of sbn1 2097, not using the false constant. (Contributed by BJ, 18-Sep-2024.) (Proof modification is discouraged.) (New usage is discouraged.) |
⊢ ([𝑡 / 𝑥] ¬ 𝜑 → ¬ [𝑡 / 𝑥]𝜑) | ||
In this section, we give a sketch of the proof of the Eliminability Theorem for class terms in an extensional set theory where quantification occurs only over set variables. Eliminability of class variables using the $a-statements ax-ext 2695, df-clab 2702, df-cleq 2716, df-clel 2802 is an easy result, proved for instance in Appendix X of Azriel Levy, Basic Set Theory, Dover Publications, 2002. Note that viewed from the set.mm axiomatization, it is a metatheorem not formalizable in set.mm. It states: every formula in the language of FOL + ∈ + class terms, but without class variables, is provably equivalent (over {FOL, ax-ext 2695, df-clab 2702, df-cleq 2716, df-clel 2802 }) to a formula in the language of FOL + ∈ (that is, without class terms). The proof goes by induction on the complexity of the formula (see op. cit. for details). The base case is that of atomic formulas. The atomic formulas containing class terms are of one of the six following forms: for equality, 𝑥 = {𝑦 ∣ 𝜑}, {𝑥 ∣ 𝜑} = 𝑦, {𝑥 ∣ 𝜑} = {𝑦 ∣ 𝜓}, and for membership, 𝑦 ∈ {𝑥 ∣ 𝜑}, {𝑥 ∣ 𝜑} ∈ 𝑦, {𝑥 ∣ 𝜑} ∈ {𝑦 ∣ 𝜓}. These cases are dealt with by eliminable-veqab 36235, eliminable-abeqv 36236, eliminable-abeqab 36237, eliminable-velab 36234, eliminable-abelv 36238, eliminable-abelab 36239 respectively, which are all proved from {FOL, ax-ext 2695, df-clab 2702, df-cleq 2716, df-clel 2802 }. (Details on the proof of the above six theorems. To understand how they were systematically proved, look at the theorems "eliminablei" below, which are special instances of df-clab 2702, dfcleq 2717 (proved from {FOL, ax-ext 2695, df-cleq 2716 }), and dfclel 2803 (proved from {FOL, df-clel 2802 }). Indeed, denote by (i) the formula proved by "eliminablei". One sees that the RHS of (1) has no class terms, the RHS's of (2x) have only class terms of the form dealt with by (1), and the RHS's of (3x) have only class terms of the forms dealt with by (1) and (2a). Note that in order to prove eliminable2a 36229, eliminable2b 36230 and eliminable3a 36232, we need to substitute a class variable for a setvar variable. This is possible because setvars are class terms: this is the content of the syntactic theorem cv 1532, which is used in these proofs (this does not appear in the html pages but it is in the set.mm file and you can check it using the Metamath program).) The induction step relies on the fact that any formula is a FOL-combination of atomic formulas, so if one found equivalents for all atomic formulas constituting the formula, then the same FOL-combination of these equivalents will be equivalent to the original formula. Note that one has a slightly more precise result: if the original formula has only class terms appearing in atomic formulas of the form 𝑦 ∈ {𝑥 ∣ 𝜑}, then df-clab 2702 is sufficient (over FOL) to eliminate class terms, and if the original formula has only class terms appearing in atomic formulas of the form 𝑦 ∈ {𝑥 ∣ 𝜑} and equalities, then df-clab 2702, ax-ext 2695 and df-cleq 2716 are sufficient (over FOL) to eliminate class terms. To prove that { df-clab 2702, df-cleq 2716, df-clel 2802 } provides a definitional extension of {FOL, ax-ext 2695 }, one needs to prove both the above Eliminability Theorem, which compares the expressive powers of the languages with and without class terms, and the Conservativity Theorem, which compares the deductive powers when one adds { df-clab 2702, df-cleq 2716, df-clel 2802 }. It states that a formula without class terms is provable in one axiom system if and only if it is provable in the other, and that this remains true when one adds further definitions to {FOL, ax-ext 2695 }. It is also proved in op. cit. The proof is more difficult, since one has to construct for each proof of a statement without class terms, an associated proof not using { df-clab 2702, df-cleq 2716, df-clel 2802 }. It involves a careful case study on the structure of the proof tree. | ||
Theorem | eliminable1 36228 | A theorem used to prove the base case of the Eliminability Theorem (see section comment). (Contributed by BJ, 19-Oct-2019.) (Proof modification is discouraged.) (New usage is discouraged.) |
⊢ (𝑦 ∈ {𝑥 ∣ 𝜑} ↔ [𝑦 / 𝑥]𝜑) | ||
Theorem | eliminable2a 36229* | A theorem used to prove the base case of the Eliminability Theorem (see section comment). (Contributed by BJ, 19-Oct-2019.) (Proof modification is discouraged.) (New usage is discouraged.) |
⊢ (𝑥 = {𝑦 ∣ 𝜑} ↔ ∀𝑧(𝑧 ∈ 𝑥 ↔ 𝑧 ∈ {𝑦 ∣ 𝜑})) | ||
Theorem | eliminable2b 36230* | A theorem used to prove the base case of the Eliminability Theorem (see section comment). (Contributed by BJ, 19-Oct-2019.) (Proof modification is discouraged.) (New usage is discouraged.) |
⊢ ({𝑥 ∣ 𝜑} = 𝑦 ↔ ∀𝑧(𝑧 ∈ {𝑥 ∣ 𝜑} ↔ 𝑧 ∈ 𝑦)) | ||
Theorem | eliminable2c 36231* | A theorem used to prove the base case of the Eliminability Theorem (see section comment). (Contributed by BJ, 19-Oct-2019.) (Proof modification is discouraged.) (New usage is discouraged.) |
⊢ ({𝑥 ∣ 𝜑} = {𝑦 ∣ 𝜓} ↔ ∀𝑧(𝑧 ∈ {𝑥 ∣ 𝜑} ↔ 𝑧 ∈ {𝑦 ∣ 𝜓})) | ||
Theorem | eliminable3a 36232* | A theorem used to prove the base case of the Eliminability Theorem (see section comment). (Contributed by BJ, 19-Oct-2019.) (Proof modification is discouraged.) (New usage is discouraged.) |
⊢ ({𝑥 ∣ 𝜑} ∈ 𝑦 ↔ ∃𝑧(𝑧 = {𝑥 ∣ 𝜑} ∧ 𝑧 ∈ 𝑦)) | ||
Theorem | eliminable3b 36233* | A theorem used to prove the base case of the Eliminability Theorem (see section comment). (Contributed by BJ, 19-Oct-2019.) (Proof modification is discouraged.) (New usage is discouraged.) |
⊢ ({𝑥 ∣ 𝜑} ∈ {𝑦 ∣ 𝜓} ↔ ∃𝑧(𝑧 = {𝑥 ∣ 𝜑} ∧ 𝑧 ∈ {𝑦 ∣ 𝜓})) | ||
Theorem | eliminable-velab 36234 | A theorem used to prove the base case of the Eliminability Theorem (see section comment): variable belongs to abstraction. (Contributed by BJ, 30-Apr-2024.) (Proof modification is discouraged.) (New usage is discouraged.) |
⊢ (𝑦 ∈ {𝑥 ∣ 𝜑} ↔ [𝑦 / 𝑥]𝜑) | ||
Theorem | eliminable-veqab 36235* | A theorem used to prove the base case of the Eliminability Theorem (see section comment): variable equals abstraction. (Contributed by BJ, 30-Apr-2024.) (Proof modification is discouraged.) (New usage is discouraged.) |
⊢ (𝑥 = {𝑦 ∣ 𝜑} ↔ ∀𝑧(𝑧 ∈ 𝑥 ↔ [𝑧 / 𝑦]𝜑)) | ||
Theorem | eliminable-abeqv 36236* | A theorem used to prove the base case of the Eliminability Theorem (see section comment): abstraction equals variable. (Contributed by BJ, 30-Apr-2024.) Beware not to use symmetry of class equality. (Proof modification is discouraged.) (New usage is discouraged.) |
⊢ ({𝑥 ∣ 𝜑} = 𝑦 ↔ ∀𝑧([𝑧 / 𝑥]𝜑 ↔ 𝑧 ∈ 𝑦)) | ||
Theorem | eliminable-abeqab 36237* | A theorem used to prove the base case of the Eliminability Theorem (see section comment): abstraction equals abstraction. (Contributed by BJ, 30-Apr-2024.) (Proof modification is discouraged.) (New usage is discouraged.) |
⊢ ({𝑥 ∣ 𝜑} = {𝑦 ∣ 𝜓} ↔ ∀𝑧([𝑧 / 𝑥]𝜑 ↔ [𝑧 / 𝑦]𝜓)) | ||
Theorem | eliminable-abelv 36238* | A theorem used to prove the base case of the Eliminability Theorem (see section comment): abstraction belongs to variable. (Contributed by BJ, 30-Apr-2024.) (Proof modification is discouraged.) (New usage is discouraged.) |
⊢ ({𝑥 ∣ 𝜑} ∈ 𝑦 ↔ ∃𝑧(∀𝑡(𝑡 ∈ 𝑧 ↔ [𝑡 / 𝑥]𝜑) ∧ 𝑧 ∈ 𝑦)) | ||
Theorem | eliminable-abelab 36239* | A theorem used to prove the base case of the Eliminability Theorem (see section comment): abstraction belongs to abstraction. (Contributed by BJ, 30-Apr-2024.) (Proof modification is discouraged.) (New usage is discouraged.) |
⊢ ({𝑥 ∣ 𝜑} ∈ {𝑦 ∣ 𝜓} ↔ ∃𝑧(∀𝑡(𝑡 ∈ 𝑧 ↔ [𝑡 / 𝑥]𝜑) ∧ [𝑧 / 𝑦]𝜓)) | ||
A few results about classes can be proved without using ax-ext 2695. One could move all theorems from cab 2701 to df-clel 2802 (except for dfcleq 2717 and cvjust 2718) in a subsection "Classes" before the subsection on the axiom of extensionality, together with the theorems below. In that subsection, the last statement should be df-cleq 2716. Note that without ax-ext 2695, the $a-statements df-clab 2702, df-cleq 2716, and df-clel 2802 are no longer eliminable (see previous section) (but PROBABLY df-clab 2702 is still conservative , while df-cleq 2716 and df-clel 2802 are not). This is not a reason not to study what is provable with them but without ax-ext 2695, in order to gauge their strengths more precisely. Before that subsection, a subsection "The membership predicate" could group the statements with ∈ that are currently in the FOL part (including wcel 2098, wel 2099, ax-8 2100, ax-9 2108). Remark: the weakening of eleq1 2813 / eleq2 2814 to eleq1w 2808 / eleq2w 2809 can also be done with eleq1i 2816, eqeltri 2821, eqeltrri 2822, eleq1a 2820, eleq1d 2810, eqeltrd 2825, eqeltrrd 2826, eqneltrd 2845, eqneltrrd 2846, nelneq 2849. Remark: possibility to remove dependency on ax-10 2129, ax-11 2146, ax-13 2363 from nfcri 2882 and theorems using it if one adds a disjoint variable condition (that theorem is typically used with dummy variables, so the disjoint variable condition addition is not very restrictive), and then shorten nfnfc 2907. | ||
Theorem | bj-denoteslem 36240* | Lemma for bj-denotes 36241. (Contributed by BJ, 24-Apr-2024.) (Proof modification is discouraged.) |
⊢ (∃𝑥 𝑥 = 𝐴 ↔ 𝐴 ∈ {𝑦 ∣ ⊤}) | ||
Theorem | bj-denotes 36241* |
This would be the justification theorem for the definition of the unary
predicate "E!" by ⊢ ( E! 𝐴 ↔ ∃𝑥𝑥 = 𝐴) which could be
interpreted as "𝐴 exists" (as a set) or
"𝐴 denotes" (in the
sense of free logic).
A shorter proof using bitri 275 (to add an intermediate proposition ∃𝑧𝑧 = 𝐴 with a fresh 𝑧), cbvexvw 2032, and eqeq1 2728, requires the core axioms and { ax-9 2108, ax-ext 2695, df-cleq 2716 } whereas this proof requires the core axioms and { ax-8 2100, df-clab 2702, df-clel 2802 }. Theorem bj-issetwt 36244 proves that "existing" is equivalent to being a member of a class abstraction. It also requires, with the present proof, { ax-8 2100, df-clab 2702, df-clel 2802 } (whereas with the shorter proof from cbvexvw 2032 and eqeq1 2728 it would require { ax-8 2100, ax-9 2108, ax-ext 2695, df-clab 2702, df-cleq 2716, df-clel 2802 }). That every class is equal to a class abstraction is proved by abid1 2862, which requires { ax-8 2100, ax-9 2108, ax-ext 2695, df-clab 2702, df-cleq 2716, df-clel 2802 }. Note that there is no disjoint variable condition on 𝑥, 𝑦 but the theorem does not depend on ax-13 2363. Actually, the proof depends only on the logical axioms ax-1 6 through ax-7 2003 and sp 2168. The symbol "E!" was chosen to be reminiscent of the analogous predicate in (inclusive or non-inclusive) free logic, which deals with the possibility of nonexistent objects. This analogy should not be taken too far, since here there are no equality axioms for classes: these are derived from ax-ext 2695 and df-cleq 2716 (e.g., eqid 2724 and eqeq1 2728). In particular, one cannot even prove ⊢ ∃𝑥𝑥 = 𝐴 ⇒ ⊢ 𝐴 = 𝐴 without ax-ext 2695 and df-cleq 2716. (Contributed by BJ, 29-Apr-2019.) (Proof modification is discouraged.) |
⊢ (∃𝑥 𝑥 = 𝐴 ↔ ∃𝑦 𝑦 = 𝐴) | ||
Theorem | bj-issettru 36242* | Weak version of isset 3479 without ax-ext 2695. (Contributed by BJ, 24-Apr-2024.) (Proof modification is discouraged.) |
⊢ (∃𝑥 𝑥 = 𝐴 ↔ 𝐴 ∈ {𝑦 ∣ ⊤}) | ||
Theorem | bj-elabtru 36243 | This is as close as we can get to proving extensionality for "the" "universal" class without ax-ext 2695. (Contributed by BJ, 24-Apr-2024.) (Proof modification is discouraged.) |
⊢ (𝐴 ∈ {𝑥 ∣ ⊤} ↔ 𝐴 ∈ {𝑦 ∣ ⊤}) | ||
Theorem | bj-issetwt 36244* | Closed form of bj-issetw 36245. (Contributed by BJ, 29-Apr-2019.) (Proof modification is discouraged.) |
⊢ (∀𝑥𝜑 → (𝐴 ∈ {𝑥 ∣ 𝜑} ↔ ∃𝑦 𝑦 = 𝐴)) | ||
Theorem | bj-issetw 36245* | The closest one can get to isset 3479 without using ax-ext 2695. See also vexw 2707. Note that the only disjoint variable condition is between 𝑦 and 𝐴. From there, one can prove isset 3479 using eleq2i 2817 (which requires ax-ext 2695 and df-cleq 2716). (Contributed by BJ, 29-Apr-2019.) (Proof modification is discouraged.) |
⊢ 𝜑 ⇒ ⊢ (𝐴 ∈ {𝑥 ∣ 𝜑} ↔ ∃𝑦 𝑦 = 𝐴) | ||
Theorem | bj-elissetALT 36246* | Alternate proof of elisset 2807. This is essentially the same proof as seen by inlining bj-denotes 36241 and bj-denoteslem 36240. Use elissetv 2806 instead when sufficient (in particular when 𝑉 is substituted for V). (Contributed by BJ, 29-Apr-2019.) (Proof modification is discouraged.) (New usage is discouraged.) |
⊢ (𝐴 ∈ 𝑉 → ∃𝑥 𝑥 = 𝐴) | ||
Theorem | bj-issetiv 36247* | Version of bj-isseti 36248 with a disjoint variable condition on 𝑥, 𝑉. The hypothesis uses 𝑉 instead of V for extra generality. This is indeed more general than isseti 3482 as long as elex 3485 is not available (and the non-dependence of bj-issetiv 36247 on special properties of the universal class V is obvious). Prefer its use over bj-isseti 36248 when sufficient (in particular when 𝑉 is substituted for V). (Contributed by BJ, 14-Sep-2019.) (Proof modification is discouraged.) |
⊢ 𝐴 ∈ 𝑉 ⇒ ⊢ ∃𝑥 𝑥 = 𝐴 | ||
Theorem | bj-isseti 36248* | Version of isseti 3482 with a class variable 𝑉 in the hypothesis instead of V for extra generality. This is indeed more general than isseti 3482 as long as elex 3485 is not available (and the non-dependence of bj-isseti 36248 on special properties of the universal class V is obvious). Use bj-issetiv 36247 instead when sufficient (in particular when 𝑉 is substituted for V). (Contributed by BJ, 13-Jun-2019.) (Proof modification is discouraged.) |
⊢ 𝐴 ∈ 𝑉 ⇒ ⊢ ∃𝑥 𝑥 = 𝐴 | ||
Theorem | bj-ralvw 36249 | A weak version of ralv 3491 not using ax-ext 2695 (nor df-cleq 2716, df-clel 2802, df-v 3468), and only core FOL axioms. See also bj-rexvw 36250. The analogues for reuv 3493 and rmov 3494 are not proved. (Contributed by BJ, 16-Jun-2019.) (Proof modification is discouraged.) |
⊢ 𝜓 ⇒ ⊢ (∀𝑥 ∈ {𝑦 ∣ 𝜓}𝜑 ↔ ∀𝑥𝜑) | ||
Theorem | bj-rexvw 36250 | A weak version of rexv 3492 not using ax-ext 2695 (nor df-cleq 2716, df-clel 2802, df-v 3468), and only core FOL axioms. See also bj-ralvw 36249. (Contributed by BJ, 16-Jun-2019.) (Proof modification is discouraged.) |
⊢ 𝜓 ⇒ ⊢ (∃𝑥 ∈ {𝑦 ∣ 𝜓}𝜑 ↔ ∃𝑥𝜑) | ||
Theorem | bj-rababw 36251 | A weak version of rabab 3495 not using df-clel 2802 nor df-v 3468 (but requiring ax-ext 2695) nor ax-12 2163. (Contributed by BJ, 16-Jun-2019.) (Proof modification is discouraged.) |
⊢ 𝜓 ⇒ ⊢ {𝑥 ∈ {𝑦 ∣ 𝜓} ∣ 𝜑} = {𝑥 ∣ 𝜑} | ||
Theorem | bj-rexcom4bv 36252* | Version of rexcom4b 3496 and bj-rexcom4b 36253 with a disjoint variable condition on 𝑥, 𝑉, hence removing dependency on df-sb 2060 and df-clab 2702 (so that it depends on df-clel 2802 and df-rex 3063 only on top of first-order logic). Prefer its use over bj-rexcom4b 36253 when sufficient (in particular when 𝑉 is substituted for V). Note the 𝑉 in the hypothesis instead of V. (Contributed by BJ, 14-Sep-2019.) (Proof modification is discouraged.) |
⊢ 𝐵 ∈ 𝑉 ⇒ ⊢ (∃𝑥∃𝑦 ∈ 𝐴 (𝜑 ∧ 𝑥 = 𝐵) ↔ ∃𝑦 ∈ 𝐴 𝜑) | ||
Theorem | bj-rexcom4b 36253* | Remove from rexcom4b 3496 dependency on ax-ext 2695 and ax-13 2363 (and on df-or 845, df-cleq 2716, df-nfc 2877, df-v 3468). The hypothesis uses 𝑉 instead of V (see bj-isseti 36248 for the motivation). Use bj-rexcom4bv 36252 instead when sufficient (in particular when 𝑉 is substituted for V). (Contributed by BJ, 16-Jun-2019.) (Proof modification is discouraged.) |
⊢ 𝐵 ∈ 𝑉 ⇒ ⊢ (∃𝑥∃𝑦 ∈ 𝐴 (𝜑 ∧ 𝑥 = 𝐵) ↔ ∃𝑦 ∈ 𝐴 𝜑) | ||
Theorem | bj-ceqsalt0 36254 | The FOL content of ceqsalt 3498. Lemma for bj-ceqsalt 36256 and bj-ceqsaltv 36257. (Contributed by BJ, 26-Sep-2019.) (Proof modification is discouraged.) |
⊢ ((Ⅎ𝑥𝜓 ∧ ∀𝑥(𝜃 → (𝜑 ↔ 𝜓)) ∧ ∃𝑥𝜃) → (∀𝑥(𝜃 → 𝜑) ↔ 𝜓)) | ||
Theorem | bj-ceqsalt1 36255 | The FOL content of ceqsalt 3498. Lemma for bj-ceqsalt 36256 and bj-ceqsaltv 36257. TODO: consider removing if it does not add anything to bj-ceqsalt0 36254. (Contributed by BJ, 26-Sep-2019.) (Proof modification is discouraged.) |
⊢ (𝜃 → ∃𝑥𝜒) ⇒ ⊢ ((Ⅎ𝑥𝜓 ∧ ∀𝑥(𝜒 → (𝜑 ↔ 𝜓)) ∧ 𝜃) → (∀𝑥(𝜒 → 𝜑) ↔ 𝜓)) | ||
Theorem | bj-ceqsalt 36256* | Remove from ceqsalt 3498 dependency on ax-ext 2695 (and on df-cleq 2716 and df-v 3468). Note: this is not doable with ceqsralt 3499 (or ceqsralv 3506), which uses eleq1 2813, but the same dependence removal is possible for ceqsalg 3500, ceqsal 3502, ceqsalv 3504, cgsexg 3511, cgsex2g 3512, cgsex4g 3513, ceqsex 3516, ceqsexv 3518, ceqsex2 3522, ceqsex2v 3523, ceqsex3v 3524, ceqsex4v 3525, ceqsex6v 3526, ceqsex8v 3527, gencbvex 3528 (after changing 𝐴 = 𝑦 to 𝑦 = 𝐴), gencbvex2 3529, gencbval 3530, vtoclgft 3533 (it uses Ⅎ, whose justification nfcjust 2876 does not use ax-ext 2695) and several other vtocl* theorems (see for instance bj-vtoclg1f 36288). See also bj-ceqsaltv 36257. (Contributed by BJ, 16-Jun-2019.) (Proof modification is discouraged.) |
⊢ ((Ⅎ𝑥𝜓 ∧ ∀𝑥(𝑥 = 𝐴 → (𝜑 ↔ 𝜓)) ∧ 𝐴 ∈ 𝑉) → (∀𝑥(𝑥 = 𝐴 → 𝜑) ↔ 𝜓)) | ||
Theorem | bj-ceqsaltv 36257* | Version of bj-ceqsalt 36256 with a disjoint variable condition on 𝑥, 𝑉, removing dependency on df-sb 2060 and df-clab 2702. Prefer its use over bj-ceqsalt 36256 when sufficient (in particular when 𝑉 is substituted for V). (Contributed by BJ, 16-Jun-2019.) (Proof modification is discouraged.) |
⊢ ((Ⅎ𝑥𝜓 ∧ ∀𝑥(𝑥 = 𝐴 → (𝜑 ↔ 𝜓)) ∧ 𝐴 ∈ 𝑉) → (∀𝑥(𝑥 = 𝐴 → 𝜑) ↔ 𝜓)) | ||
Theorem | bj-ceqsalg0 36258 | The FOL content of ceqsalg 3500. (Contributed by BJ, 12-Oct-2019.) (Proof modification is discouraged.) |
⊢ Ⅎ𝑥𝜓 & ⊢ (𝜒 → (𝜑 ↔ 𝜓)) ⇒ ⊢ (∃𝑥𝜒 → (∀𝑥(𝜒 → 𝜑) ↔ 𝜓)) | ||
Theorem | bj-ceqsalg 36259* | Remove from ceqsalg 3500 dependency on ax-ext 2695 (and on df-cleq 2716 and df-v 3468). See also bj-ceqsalgv 36261. (Contributed by BJ, 12-Oct-2019.) (Proof modification is discouraged.) |
⊢ Ⅎ𝑥𝜓 & ⊢ (𝑥 = 𝐴 → (𝜑 ↔ 𝜓)) ⇒ ⊢ (𝐴 ∈ 𝑉 → (∀𝑥(𝑥 = 𝐴 → 𝜑) ↔ 𝜓)) | ||
Theorem | bj-ceqsalgALT 36260* | Alternate proof of bj-ceqsalg 36259. (Contributed by BJ, 12-Oct-2019.) (Proof modification is discouraged.) (New usage is discouraged.) |
⊢ Ⅎ𝑥𝜓 & ⊢ (𝑥 = 𝐴 → (𝜑 ↔ 𝜓)) ⇒ ⊢ (𝐴 ∈ 𝑉 → (∀𝑥(𝑥 = 𝐴 → 𝜑) ↔ 𝜓)) | ||
Theorem | bj-ceqsalgv 36261* | Version of bj-ceqsalg 36259 with a disjoint variable condition on 𝑥, 𝑉, removing dependency on df-sb 2060 and df-clab 2702. Prefer its use over bj-ceqsalg 36259 when sufficient (in particular when 𝑉 is substituted for V). (Contributed by BJ, 12-Oct-2019.) (Proof modification is discouraged.) |
⊢ Ⅎ𝑥𝜓 & ⊢ (𝑥 = 𝐴 → (𝜑 ↔ 𝜓)) ⇒ ⊢ (𝐴 ∈ 𝑉 → (∀𝑥(𝑥 = 𝐴 → 𝜑) ↔ 𝜓)) | ||
Theorem | bj-ceqsalgvALT 36262* | Alternate proof of bj-ceqsalgv 36261. (Contributed by BJ, 12-Oct-2019.) (Proof modification is discouraged.) (New usage is discouraged.) |
⊢ Ⅎ𝑥𝜓 & ⊢ (𝑥 = 𝐴 → (𝜑 ↔ 𝜓)) ⇒ ⊢ (𝐴 ∈ 𝑉 → (∀𝑥(𝑥 = 𝐴 → 𝜑) ↔ 𝜓)) | ||
Theorem | bj-ceqsal 36263* | Remove from ceqsal 3502 dependency on ax-ext 2695 (and on df-cleq 2716, df-v 3468, df-clab 2702, df-sb 2060). (Contributed by BJ, 12-Oct-2019.) (Proof modification is discouraged.) |
⊢ Ⅎ𝑥𝜓 & ⊢ 𝐴 ∈ V & ⊢ (𝑥 = 𝐴 → (𝜑 ↔ 𝜓)) ⇒ ⊢ (∀𝑥(𝑥 = 𝐴 → 𝜑) ↔ 𝜓) | ||
Theorem | bj-ceqsalv 36264* | Remove from ceqsalv 3504 dependency on ax-ext 2695 (and on df-cleq 2716, df-v 3468, df-clab 2702, df-sb 2060). (Contributed by BJ, 12-Oct-2019.) (Proof modification is discouraged.) |
⊢ 𝐴 ∈ V & ⊢ (𝑥 = 𝐴 → (𝜑 ↔ 𝜓)) ⇒ ⊢ (∀𝑥(𝑥 = 𝐴 → 𝜑) ↔ 𝜓) | ||
Theorem | bj-spcimdv 36265* | Remove from spcimdv 3575 dependency on ax-9 2108, ax-10 2129, ax-11 2146, ax-13 2363, ax-ext 2695, df-cleq 2716 (and df-nfc 2877, df-v 3468, df-or 845, df-tru 1536, df-nf 1778). For an even more economical version, see bj-spcimdvv 36266. (Contributed by BJ, 30-Nov-2020.) (Proof modification is discouraged.) |
⊢ (𝜑 → 𝐴 ∈ 𝐵) & ⊢ ((𝜑 ∧ 𝑥 = 𝐴) → (𝜓 → 𝜒)) ⇒ ⊢ (𝜑 → (∀𝑥𝜓 → 𝜒)) | ||
Theorem | bj-spcimdvv 36266* | Remove from spcimdv 3575 dependency on ax-7 2003, ax-8 2100, ax-10 2129, ax-11 2146, ax-12 2163 ax-13 2363, ax-ext 2695, df-cleq 2716, df-clab 2702 (and df-nfc 2877, df-v 3468, df-or 845, df-tru 1536, df-nf 1778) at the price of adding a disjoint variable condition on 𝑥, 𝐵 (but in usages, 𝑥 is typically a dummy, hence fresh, variable). For the version without this disjoint variable condition, see bj-spcimdv 36265. (Contributed by BJ, 3-Nov-2021.) (Proof modification is discouraged.) |
⊢ (𝜑 → 𝐴 ∈ 𝐵) & ⊢ ((𝜑 ∧ 𝑥 = 𝐴) → (𝜓 → 𝜒)) ⇒ ⊢ (𝜑 → (∀𝑥𝜓 → 𝜒)) | ||
Theorem | elelb 36267 | Equivalence between two common ways to characterize elements of a class 𝐵: the LHS says that sets are elements of 𝐵 if and only if they satisfy 𝜑 while the RHS says that classes are elements of 𝐵 if and only if they are sets and satisfy 𝜑. Therefore, the LHS is a characterization among sets while the RHS is a characterization among classes. Note that the LHS is often formulated using a class variable instead of the universe V while this is not possible for the RHS (apart from using 𝐵 itself, which would not be very useful). (Contributed by BJ, 26-Feb-2023.) |
⊢ ((𝐴 ∈ V → (𝐴 ∈ 𝐵 ↔ 𝜑)) ↔ (𝐴 ∈ 𝐵 ↔ (𝐴 ∈ V ∧ 𝜑))) | ||
Theorem | bj-pwvrelb 36268 | Characterization of the elements of the powerclass of the cartesian square of the universal class: they are exactly the sets which are binary relations. (Contributed by BJ, 16-Dec-2023.) |
⊢ (𝐴 ∈ 𝒫 (V × V) ↔ (𝐴 ∈ V ∧ Rel 𝐴)) | ||
In this section, we prove the symmetry of the nonfreeness quantifier for classes. | ||
Theorem | bj-nfcsym 36269 | The nonfreeness quantifier for classes defines a symmetric binary relation on var metavariables (irreflexivity is proved by nfnid 5363 with additional axioms; see also nfcv 2895). This could be proved from aecom 2418 and nfcvb 5364 but the latter requires a domain with at least two objects (hence uses extra axioms). (Contributed by BJ, 30-Sep-2018.) Proof modification is discouraged to avoid use of eqcomd 2730 instead of equcomd 2014; removing dependency on ax-ext 2695 is possible: prove weak versions (i.e. replace classes with setvars) of drnfc1 2914, eleq2d 2811 (using elequ2 2113), nfcvf 2924, dvelimc 2923, dvelimdc 2922, nfcvf2 2925. (Proof modification is discouraged.) |
⊢ (Ⅎ𝑥𝑦 ↔ Ⅎ𝑦𝑥) | ||
Some useful theorems for dealing with substitutions: sbbi 2296, sbcbig 3823, sbcel1g 4405, sbcel2 4407, sbcel12 4400, sbceqg 4401, csbvarg 4423. | ||
Theorem | bj-sbeqALT 36270* | Substitution in an equality (use the more general version bj-sbeq 36271 instead, without disjoint variable condition). (Contributed by BJ, 6-Oct-2018.) (New usage is discouraged.) (Proof modification is discouraged.) |
⊢ ([𝑦 / 𝑥]𝐴 = 𝐵 ↔ ⦋𝑦 / 𝑥⦌𝐴 = ⦋𝑦 / 𝑥⦌𝐵) | ||
Theorem | bj-sbeq 36271 | Distribute proper substitution through an equality relation. (See sbceqg 4401). (Contributed by BJ, 6-Oct-2018.) |
⊢ ([𝑦 / 𝑥]𝐴 = 𝐵 ↔ ⦋𝑦 / 𝑥⦌𝐴 = ⦋𝑦 / 𝑥⦌𝐵) | ||
Theorem | bj-sbceqgALT 36272 | Distribute proper substitution through an equality relation. Alternate proof of sbceqg 4401. (Contributed by BJ, 6-Oct-2018.) Proof modification is discouraged to avoid using sbceqg 4401, but the Metamath program "MM-PA> MINIMIZE_WITH * / EXCEPT sbceqg" command is ok. (Proof modification is discouraged.) (New usage is discouraged.) |
⊢ (𝐴 ∈ 𝑉 → ([𝐴 / 𝑥]𝐵 = 𝐶 ↔ ⦋𝐴 / 𝑥⦌𝐵 = ⦋𝐴 / 𝑥⦌𝐶)) | ||
Theorem | bj-csbsnlem 36273* | Lemma for bj-csbsn 36274 (in this lemma, 𝑥 cannot occur in 𝐴). (Contributed by BJ, 6-Oct-2018.) (New usage is discouraged.) |
⊢ ⦋𝐴 / 𝑥⦌{𝑥} = {𝐴} | ||
Theorem | bj-csbsn 36274 | Substitution in a singleton. (Contributed by BJ, 6-Oct-2018.) |
⊢ ⦋𝐴 / 𝑥⦌{𝑥} = {𝐴} | ||
Theorem | bj-sbel1 36275* | Version of sbcel1g 4405 when substituting a set. (Note: one could have a corresponding version of sbcel12 4400 when substituting a set, but the point here is that the antecedent of sbcel1g 4405 is not needed when substituting a set.) (Contributed by BJ, 6-Oct-2018.) |
⊢ ([𝑦 / 𝑥]𝐴 ∈ 𝐵 ↔ ⦋𝑦 / 𝑥⦌𝐴 ∈ 𝐵) | ||
Theorem | bj-abv 36276 | The class of sets verifying a tautology is the universal class. (Contributed by BJ, 24-Jul-2019.) (Proof modification is discouraged.) |
⊢ (∀𝑥𝜑 → {𝑥 ∣ 𝜑} = V) | ||
Theorem | bj-abvALT 36277 | Alternate version of bj-abv 36276; shorter but uses ax-8 2100. (Contributed by BJ, 24-Jul-2019.) (Proof modification is discouraged.) (New usage is discouraged.) |
⊢ (∀𝑥𝜑 → {𝑥 ∣ 𝜑} = V) | ||
Theorem | bj-ab0 36278 | The class of sets verifying a falsity is the empty set (closed form of abf 4394). (Contributed by BJ, 24-Jul-2019.) (Proof modification is discouraged.) |
⊢ (∀𝑥 ¬ 𝜑 → {𝑥 ∣ 𝜑} = ∅) | ||
Theorem | bj-abf 36279 | Shorter proof of abf 4394 (which should be kept as abfALT). (Contributed by BJ, 24-Jul-2019.) (Proof modification is discouraged.) |
⊢ ¬ 𝜑 ⇒ ⊢ {𝑥 ∣ 𝜑} = ∅ | ||
Theorem | bj-csbprc 36280 | More direct proof of csbprc 4398 (fewer essential steps). (Contributed by BJ, 24-Jul-2019.) (Proof modification is discouraged.) |
⊢ (¬ 𝐴 ∈ V → ⦋𝐴 / 𝑥⦌𝐵 = ∅) | ||
Theorem | bj-exlimvmpi 36281* | A Fol lemma (exlimiv 1925 followed by mpi 20). (Contributed by BJ, 2-Jul-2022.) (Proof modification is discouraged.) |
⊢ (𝜒 → (𝜑 → 𝜓)) & ⊢ 𝜑 ⇒ ⊢ (∃𝑥𝜒 → 𝜓) | ||
Theorem | bj-exlimmpi 36282 | Lemma for bj-vtoclg1f1 36287 (an instance of this lemma is a version of bj-vtoclg1f1 36287 where 𝑥 and 𝑦 are identified). (Contributed by BJ, 30-Apr-2019.) (Proof modification is discouraged.) |
⊢ Ⅎ𝑥𝜓 & ⊢ (𝜒 → (𝜑 → 𝜓)) & ⊢ 𝜑 ⇒ ⊢ (∃𝑥𝜒 → 𝜓) | ||
Theorem | bj-exlimmpbi 36283 | Lemma for theorems of the vtoclg 3535 family. (Contributed by BJ, 3-Oct-2019.) (Proof modification is discouraged.) |
⊢ Ⅎ𝑥𝜓 & ⊢ (𝜒 → (𝜑 ↔ 𝜓)) & ⊢ 𝜑 ⇒ ⊢ (∃𝑥𝜒 → 𝜓) | ||
Theorem | bj-exlimmpbir 36284 | Lemma for theorems of the vtoclg 3535 family. (Contributed by BJ, 3-Oct-2019.) (Proof modification is discouraged.) |
⊢ Ⅎ𝑥𝜑 & ⊢ (𝜒 → (𝜑 ↔ 𝜓)) & ⊢ 𝜓 ⇒ ⊢ (∃𝑥𝜒 → 𝜑) | ||
Theorem | bj-vtoclf 36285* | Remove dependency on ax-ext 2695, df-clab 2702 and df-cleq 2716 (and df-sb 2060 and df-v 3468) from vtoclf 3544. (Contributed by BJ, 6-Oct-2019.) (Proof modification is discouraged.) |
⊢ Ⅎ𝑥𝜓 & ⊢ 𝐴 ∈ 𝑉 & ⊢ (𝑥 = 𝐴 → (𝜑 ↔ 𝜓)) & ⊢ 𝜑 ⇒ ⊢ 𝜓 | ||
Theorem | bj-vtocl 36286* | Remove dependency on ax-ext 2695, df-clab 2702 and df-cleq 2716 (and df-sb 2060 and df-v 3468) from vtocl 3538. (Contributed by BJ, 6-Oct-2019.) (Proof modification is discouraged.) |
⊢ 𝐴 ∈ 𝑉 & ⊢ (𝑥 = 𝐴 → (𝜑 ↔ 𝜓)) & ⊢ 𝜑 ⇒ ⊢ 𝜓 | ||
Theorem | bj-vtoclg1f1 36287* | The FOL content of vtoclg1f 3551 (hence not using ax-ext 2695, df-cleq 2716, df-nfc 2877, df-v 3468). Note the weakened "major" hypothesis and the disjoint variable condition between 𝑥 and 𝐴 (needed since the nonfreeness quantifier for classes is not available without ax-ext 2695; as a byproduct, this dispenses with ax-11 2146 and ax-13 2363). (Contributed by BJ, 30-Apr-2019.) (Proof modification is discouraged.) |
⊢ Ⅎ𝑥𝜓 & ⊢ (𝑥 = 𝐴 → (𝜑 → 𝜓)) & ⊢ 𝜑 ⇒ ⊢ (∃𝑦 𝑦 = 𝐴 → 𝜓) | ||
Theorem | bj-vtoclg1f 36288* | Reprove vtoclg1f 3551 from bj-vtoclg1f1 36287. This removes dependency on ax-ext 2695, df-cleq 2716 and df-v 3468. Use bj-vtoclg1fv 36289 instead when sufficient (in particular when 𝑉 is substituted for V). (Contributed by BJ, 14-Sep-2019.) (Proof modification is discouraged.) |
⊢ Ⅎ𝑥𝜓 & ⊢ (𝑥 = 𝐴 → (𝜑 → 𝜓)) & ⊢ 𝜑 ⇒ ⊢ (𝐴 ∈ 𝑉 → 𝜓) | ||
Theorem | bj-vtoclg1fv 36289* | Version of bj-vtoclg1f 36288 with a disjoint variable condition on 𝑥, 𝑉. This removes dependency on df-sb 2060 and df-clab 2702. Prefer its use over bj-vtoclg1f 36288 when sufficient (in particular when 𝑉 is substituted for V). (Contributed by BJ, 14-Sep-2019.) (Proof modification is discouraged.) |
⊢ Ⅎ𝑥𝜓 & ⊢ (𝑥 = 𝐴 → (𝜑 → 𝜓)) & ⊢ 𝜑 ⇒ ⊢ (𝐴 ∈ 𝑉 → 𝜓) | ||
Theorem | bj-vtoclg 36290* | A version of vtoclg 3535 with an additional disjoint variable condition (which is removable if we allow use of df-clab 2702, see bj-vtoclg1f 36288), which requires fewer axioms (i.e., removes dependency on ax-6 1963, ax-7 2003, ax-9 2108, ax-12 2163, ax-ext 2695, df-clab 2702, df-cleq 2716, df-v 3468). (Contributed by BJ, 2-Jul-2022.) (Proof modification is discouraged.) |
⊢ (𝑥 = 𝐴 → (𝜑 → 𝜓)) & ⊢ 𝜑 ⇒ ⊢ (𝐴 ∈ 𝑉 → 𝜓) | ||
Theorem | bj-rabeqbid 36291 | Version of rabeqbidv 3441 with two disjoint variable conditions removed and the third replaced by a nonfreeness hypothesis. (Contributed by BJ, 27-Apr-2019.) |
⊢ Ⅎ𝑥𝜑 & ⊢ (𝜑 → 𝐴 = 𝐵) & ⊢ (𝜑 → (𝜓 ↔ 𝜒)) ⇒ ⊢ (𝜑 → {𝑥 ∈ 𝐴 ∣ 𝜓} = {𝑥 ∈ 𝐵 ∣ 𝜒}) | ||
Theorem | bj-seex 36292* | Version of seex 5628 with a disjoint variable condition replaced by a nonfreeness hypothesis (for the sake of illustration). (Contributed by BJ, 27-Apr-2019.) |
⊢ Ⅎ𝑥𝐵 ⇒ ⊢ ((𝑅 Se 𝐴 ∧ 𝐵 ∈ 𝐴) → {𝑥 ∈ 𝐴 ∣ 𝑥𝑅𝐵} ∈ V) | ||
Theorem | bj-nfcf 36293* | Version of df-nfc 2877 with a disjoint variable condition replaced with a nonfreeness hypothesis. (Contributed by BJ, 2-May-2019.) |
⊢ Ⅎ𝑦𝐴 ⇒ ⊢ (Ⅎ𝑥𝐴 ↔ ∀𝑦Ⅎ𝑥 𝑦 ∈ 𝐴) | ||
Theorem | bj-zfauscl 36294* |
General version of zfauscl 5291.
Remark: the comment in zfauscl 5291 is misleading: the essential use of ax-ext 2695 is the one via eleq2 2814 and not the one via vtocl 3538, since the latter can be proved without ax-ext 2695 (see bj-vtoclg 36290). (Contributed by BJ, 2-Jul-2022.) (Proof modification is discouraged.) |
⊢ (𝐴 ∈ 𝑉 → ∃𝑦∀𝑥(𝑥 ∈ 𝑦 ↔ (𝑥 ∈ 𝐴 ∧ 𝜑))) | ||
A few additional theorems on class abstractions and restricted class abstractions. | ||
Theorem | bj-elabd2ALT 36295* | Alternate proof of elabd2 3652 bypassing elab6g 3651 (and using sbiedvw 2088 instead of the ∀𝑥(𝑥 = 𝑦 → 𝜓) idiom). (Contributed by BJ, 16-Oct-2024.) (Proof modification is discouraged.) (New usage is discouraged.) |
⊢ (𝜑 → 𝐴 ∈ 𝑉) & ⊢ (𝜑 → 𝐵 = {𝑥 ∣ 𝜓}) & ⊢ ((𝜑 ∧ 𝑥 = 𝐴) → (𝜓 ↔ 𝜒)) ⇒ ⊢ (𝜑 → (𝐴 ∈ 𝐵 ↔ 𝜒)) | ||
Theorem | bj-unrab 36296* | Generalization of unrab 4297. Equality need not hold. (Contributed by BJ, 21-Apr-2019.) |
⊢ ({𝑥 ∈ 𝐴 ∣ 𝜑} ∪ {𝑥 ∈ 𝐵 ∣ 𝜓}) ⊆ {𝑥 ∈ (𝐴 ∪ 𝐵) ∣ (𝜑 ∨ 𝜓)} | ||
Theorem | bj-inrab 36297 | Generalization of inrab 4298. (Contributed by BJ, 21-Apr-2019.) |
⊢ ({𝑥 ∈ 𝐴 ∣ 𝜑} ∩ {𝑥 ∈ 𝐵 ∣ 𝜓}) = {𝑥 ∈ (𝐴 ∩ 𝐵) ∣ (𝜑 ∧ 𝜓)} | ||
Theorem | bj-inrab2 36298 | Shorter proof of inrab 4298. (Contributed by BJ, 21-Apr-2019.) (Proof modification is discouraged.) |
⊢ ({𝑥 ∈ 𝐴 ∣ 𝜑} ∩ {𝑥 ∈ 𝐴 ∣ 𝜓}) = {𝑥 ∈ 𝐴 ∣ (𝜑 ∧ 𝜓)} | ||
Theorem | bj-inrab3 36299* | Generalization of dfrab3ss 4304, which it may shorten. (Contributed by BJ, 21-Apr-2019.) (Revised by OpenAI, 7-Jul-2020.) |
⊢ (𝐴 ∩ {𝑥 ∈ 𝐵 ∣ 𝜑}) = ({𝑥 ∈ 𝐴 ∣ 𝜑} ∩ 𝐵) | ||
Theorem | bj-rabtr 36300* | Restricted class abstraction with true formula. (Contributed by BJ, 22-Apr-2019.) |
⊢ {𝑥 ∈ 𝐴 ∣ ⊤} = 𝐴 |
< Previous Next > |
Copyright terms: Public domain | < Previous Next > |