| Metamath
Proof Explorer Theorem List (p. 376 of 507) | < 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-31281) |
(31282-32804) |
(32805-50680) |
| Type | Label | Description |
|---|---|---|
| Statement | ||
| Theorem | bj-dfsb2 37501 | Alternate (dual) definition of substitution df-sb 2096 not using dummy variables. (Contributed by BJ, 19-Mar-2021.) |
| ⊢ ([𝑦 / 𝑥]𝜑 ↔ (∀𝑥(𝑥 = 𝑦 → 𝜑) ∨ (𝑥 = 𝑦 ∧ 𝜑))) | ||
| Theorem | bj-sbf3 37502 | Substitution has no effect on a bound variable (existential quantifier case); see sbf2 2306. (Contributed by BJ, 2-May-2019.) |
| ⊢ ([𝑦 / 𝑥]∃𝑥𝜑 ↔ ∃𝑥𝜑) | ||
| Theorem | bj-sbf4 37503 | Substitution has no effect on a bound variable (nonfreeness case); see sbf2 2306. (Contributed by BJ, 2-May-2019.) |
| ⊢ ([𝑦 / 𝑥]Ⅎ𝑥𝜑 ↔ Ⅎ𝑥𝜑) | ||
| Theorem | bj-eu3f 37504* | Version of eu3v 2597 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 2597. (Contributed by NM, 8-Jul-1994.) (Proof shortened by BJ, 31-May-2019.) |
| ⊢ Ⅎ𝑦𝜑 ⇒ ⊢ (∃!𝑥𝜑 ↔ (∃𝑥𝜑 ∧ ∃𝑦∀𝑥(𝜑 → 𝑥 = 𝑦))) | ||
Miscellaneous theorems of first-order logic. | ||
| Theorem | bj-sblem1 37505* | Lemma for substitution. (Contributed by BJ, 23-Jul-2023.) |
| ⊢ (∀𝑥(𝜑 → (𝜓 → 𝜒)) → (∀𝑥(𝜑 → 𝜓) → (∃𝑥𝜑 → 𝜒))) | ||
| Theorem | bj-sblem2 37506* | Lemma for substitution. (Contributed by BJ, 23-Jul-2023.) |
| ⊢ (∀𝑥(𝜑 → (𝜒 → 𝜓)) → ((∃𝑥𝜑 → 𝜒) → ∀𝑥(𝜑 → 𝜓))) | ||
| Theorem | bj-sblem 37507* | Lemma for substitution. (Contributed by BJ, 23-Jul-2023.) |
| ⊢ (∀𝑥(𝜑 → (𝜓 ↔ 𝜒)) → (∀𝑥(𝜑 → 𝜓) ↔ (∃𝑥𝜑 → 𝜒))) | ||
| Theorem | bj-sbievw1 37508* | Lemma for substitution. (Contributed by BJ, 23-Jul-2023.) |
| ⊢ ([𝑦 / 𝑥](𝜑 → 𝜓) → ([𝑦 / 𝑥]𝜑 → 𝜓)) | ||
| Theorem | bj-sbievw2 37509* | Lemma for substitution. (Contributed by BJ, 23-Jul-2023.) |
| ⊢ ([𝑦 / 𝑥](𝜓 → 𝜑) → (𝜓 → [𝑦 / 𝑥]𝜑)) | ||
| Theorem | bj-sbievw 37510* | Lemma for substitution. Closed form of equsalvw 2033 and sbievw 2127. (Contributed by BJ, 23-Jul-2023.) |
| ⊢ ([𝑦 / 𝑥](𝜑 ↔ 𝜓) → ([𝑦 / 𝑥]𝜑 ↔ 𝜓)) | ||
| Theorem | bj-sbievv 37511 | Version of sbie 2533 with a second nonfreeness hypothesis and shorter proof. (Contributed by BJ, 18-Jul-2023.) (Proof modification is discouraged.) |
| ⊢ Ⅎ𝑥𝜓 & ⊢ Ⅎ𝑦𝜑 & ⊢ (𝑥 = 𝑦 → (𝜑 ↔ 𝜓)) ⇒ ⊢ ([𝑦 / 𝑥]𝜑 ↔ 𝜓) | ||
| Theorem | bj-moeub 37512 | Uniqueness is equivalent to existence being equivalent to unique existence. (Contributed by BJ, 14-Oct-2022.) |
| ⊢ (∃*𝑥𝜑 ↔ (∃𝑥𝜑 ↔ ∃!𝑥𝜑)) | ||
| Theorem | bj-sbidmOLD 37513 | Obsolete proof of sbidm 2541 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 37514* |
Deduction form of dvelim 2482 with disjoint variable conditions. Uncurried
(imported) form of bj-dvelimdv1 37515. 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 1943 can be replaced with nfal 2355 followed by nfn 1886. Remark: nfald 2360 uses ax-11 2191; it might be possible to inline and use ax11w 2164 instead, but there is still a use via 19.12 2359 anyway. (Contributed by BJ, 20-Oct-2021.) (Proof modification is discouraged.) |
| ⊢ (𝜑 → Ⅎ𝑥𝜒) & ⊢ (𝑧 = 𝑦 → (𝜒 ↔ 𝜓)) ⇒ ⊢ ((𝜑 ∧ ¬ ∀𝑥 𝑥 = 𝑦) → Ⅎ𝑥𝜓) | ||
| Theorem | bj-dvelimdv1 37515* | Curried (exported) form of bj-dvelimdv 37514 (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 37516* | A version of dvelim 2482 using the "nonfree" idiom. (Contributed by BJ, 20-Oct-2021.) (Proof modification is discouraged.) |
| ⊢ Ⅎ𝑥𝜓 & ⊢ (𝑧 = 𝑦 → (𝜓 ↔ 𝜑)) ⇒ ⊢ (¬ ∀𝑥 𝑥 = 𝑦 → Ⅎ𝑥𝜑) | ||
| Theorem | bj-nfeel2 37517* | Nonfreeness in a membership statement. (Contributed by BJ, 20-Oct-2021.) (Proof modification is discouraged.) |
| ⊢ (¬ ∀𝑥 𝑥 = 𝑦 → Ⅎ𝑥 𝑦 ∈ 𝑧) | ||
| Theorem | bj-axc14nf 37518 | Proof of a version of axc14 2494 using the "nonfree" idiom. (Contributed by BJ, 20-Oct-2021.) (Proof modification is discouraged.) |
| ⊢ (¬ ∀𝑧 𝑧 = 𝑥 → (¬ ∀𝑧 𝑧 = 𝑦 → Ⅎ𝑧 𝑥 ∈ 𝑦)) | ||
| Theorem | bj-axc14 37519 | Alternate proof of axc14 2494 (even when inlining the above results, this gives a shorter proof). (Contributed by BJ, 20-Oct-2021.) (Proof modification is discouraged.) |
| ⊢ (¬ ∀𝑧 𝑧 = 𝑥 → (¬ ∀𝑧 𝑧 = 𝑦 → (𝑥 ∈ 𝑦 → ∀𝑧 𝑥 ∈ 𝑦))) | ||
| Theorem | mobidvALT 37520* | Alternate proof of mobidv 2576 directly from its analogues albidv 1949 and exbidv 1950, using deduction style. Note the proof structure, similar to mobi 2574. (Contributed by Mario Carneiro, 7-Oct-2016.) Reduce axiom dependencies and shorten proof. Remove dependency on ax-12 2212 by adapting proof of mobid 2577. (Revised by BJ, 26-Sep-2022.) (Proof modification is discouraged.) (New usage is discouraged.) |
| ⊢ (𝜑 → (𝜓 ↔ 𝜒)) ⇒ ⊢ (𝜑 → (∃*𝑥𝜓 ↔ ∃*𝑥𝜒)) | ||
| Theorem | sbn1ALT 37521 | Alternate proof of sbn1 2141, 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 2734, df-clab 2741, df-cleq 2754, df-clel 2837 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 2734, df-clab 2741, df-cleq 2754, df-clel 2837 }) 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 37529, eliminable-abeqv 37530, eliminable-abeqab 37531, eliminable-velab 37528, eliminable-abelv 37532, eliminable-abelab 37533 respectively, which are all proved from {FOL, ax-ext 2734, df-clab 2741, df-cleq 2754, df-clel 2837 }. (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 2741, dfcleq 2755 (proved from {FOL, ax-ext 2734, df-cleq 2754 }), and dfclel 2838 (proved from {FOL, df-clel 2837 }). 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 37523, eliminable2b 37524 and eliminable3a 37526, 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 1568, 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 2741 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 2741, ax-ext 2734 and df-cleq 2754 are sufficient (over FOL) to eliminate class terms. To prove that { df-clab 2741, df-cleq 2754, df-clel 2837 } provides a definitional extension of {FOL, ax-ext 2734 }, 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 2741, df-cleq 2754, df-clel 2837 }. 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 2734 }. 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 2741, df-cleq 2754, df-clel 2837 }. It involves a careful case study on the structure of the proof tree. | ||
| Theorem | eliminable1 37522 | 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 37523* | 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 37524* | 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 37525* | 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 37526* | 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 37527* | 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 37528 | 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 37529* | 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 37530* | 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 37531* | 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 37532* | 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 37533* | 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 2734. One could move all theorems from cab 2740 to df-clel 2837 (except for dfcleq 2755 and cvjust 2756) 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 2754. Note that without ax-ext 2734, the $a-statements df-clab 2741, df-cleq 2754, and df-clel 2837 are no longer eliminable (see previous section) (but PROBABLY df-clab 2741 is still conservative , while df-cleq 2754 and df-clel 2837 are not). This is not a reason not to study what is provable with them but without ax-ext 2734, 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 2142, wel 2143, ax-8 2144, ax-9 2152). Remark: the weakening of eleq1 2850 / eleq2 2851 to eleq1w 2845 / eleq2w 2846 can also be done with eleq1i 2853, eqeltri 2858, eqeltrri 2859, eleq1a 2857, eleq1d 2847, eqeltrd 2862, eqeltrrd 2863, eqneltrd 2882, eqneltrrd 2883, nelneq 2886. Remark: possibility to remove dependency on ax-10 2175, ax-11 2191, ax-13 2403 from nfcri 2916 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 2936. | ||
| Theorem | bj-denoteslem 37534* |
Duplicate of issettru 2840 and bj-issettruALTV 37536.
Lemma for bj-denotesALTV 37535. (Contributed by BJ, 24-Apr-2024.) (Proof modification is discouraged.) |
| ⊢ (∃𝑥 𝑥 = 𝐴 ↔ 𝐴 ∈ {𝑦 ∣ ⊤}) | ||
| Theorem | bj-denotesALTV 37535* |
Moved to main as iseqsetv-clel 2841 and kept for the comments.
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 278 (to add an intermediate proposition ∃𝑧𝑧 = 𝐴 with a fresh 𝑧), cbvexvw 2066, and eqeq1 2766, requires the core axioms and { ax-9 2152, ax-ext 2734, df-cleq 2754 } whereas this proof requires the core axioms and { ax-8 2144, df-clab 2741, df-clel 2837 }. Theorem bj-issetwt 37538 proves that "existing" is equivalent to being a member of a class abstraction. It also requires, with the present proof, { ax-8 2144, df-clab 2741, df-clel 2837 } (whereas with the shorter proof from cbvexvw 2066 and eqeq1 2766 it would require { ax-8 2144, ax-9 2152, ax-ext 2734, df-clab 2741, df-cleq 2754, df-clel 2837 }). That every class is equal to a class abstraction is proved by abid1 2898, which requires { ax-8 2144, ax-9 2152, ax-ext 2734, df-clab 2741, df-cleq 2754, df-clel 2837 }. Note that there is no disjoint variable condition on 𝑥, 𝑦 but the theorem does not depend on ax-13 2403. Actually, the proof depends only on the logical axioms ax-1 6 through ax-7 2037 and sp 2218. 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 2734 and df-cleq 2754 (e.g., eqid 2762 and eqeq1 2766). In particular, one cannot even prove ⊢ ∃𝑥𝑥 = 𝐴 ⇒ ⊢ 𝐴 = 𝐴 without ax-ext 2734 and df-cleq 2754. (Contributed by BJ, 29-Apr-2019.) (Proof modification is discouraged.) |
| ⊢ (∃𝑥 𝑥 = 𝐴 ↔ ∃𝑦 𝑦 = 𝐴) | ||
| Theorem | bj-issettruALTV 37536* |
Moved to main as issettru 2840 and kept for the comments.
Weak version of isset 3468 without ax-ext 2734. (Contributed by BJ, 24-Apr-2024.) (Proof modification is discouraged.) |
| ⊢ (∃𝑥 𝑥 = 𝐴 ↔ 𝐴 ∈ {𝑦 ∣ ⊤}) | ||
| Theorem | bj-elabtru 37537 | This is as close as we can get to proving extensionality for "the" "universal" class without ax-ext 2734. (Contributed by BJ, 24-Apr-2024.) (Proof modification is discouraged.) |
| ⊢ (𝐴 ∈ {𝑥 ∣ ⊤} ↔ 𝐴 ∈ {𝑦 ∣ ⊤}) | ||
| Theorem | bj-issetwt 37538* | Closed form of bj-issetw 37539. (Contributed by BJ, 29-Apr-2019.) (Proof modification is discouraged.) |
| ⊢ (∀𝑥𝜑 → (𝐴 ∈ {𝑥 ∣ 𝜑} ↔ ∃𝑦 𝑦 = 𝐴)) | ||
| Theorem | bj-issetw 37539* | The closest one can get to isset 3468 without using ax-ext 2734. See also vexw 2746. Note that the only disjoint variable condition is between 𝑦 and 𝐴. From there, one can prove isset 3468 using eleq2i 2854 (which requires ax-ext 2734 and df-cleq 2754). (Contributed by BJ, 29-Apr-2019.) (Proof modification is discouraged.) |
| ⊢ 𝜑 ⇒ ⊢ (𝐴 ∈ {𝑥 ∣ 𝜑} ↔ ∃𝑦 𝑦 = 𝐴) | ||
| Theorem | bj-issetiv 37540* | Version of bj-isseti 37541 with a disjoint variable condition on 𝑥, 𝑉. The hypothesis uses 𝑉 instead of V for extra generality. This is indeed more general than isseti 3472 as long as elex 3475 is not available (and the non-dependence of bj-issetiv 37540 on special properties of the universal class V is obvious). Prefer its use over bj-isseti 37541 when sufficient (in particular when 𝑉 is substituted for V). (Contributed by BJ, 14-Sep-2019.) (Proof modification is discouraged.) |
| ⊢ 𝐴 ∈ 𝑉 ⇒ ⊢ ∃𝑥 𝑥 = 𝐴 | ||
| Theorem | bj-isseti 37541* | Version of isseti 3472 with a class variable 𝑉 in the hypothesis instead of V for extra generality. This is indeed more general than isseti 3472 as long as elex 3475 is not available (and the non-dependence of bj-isseti 37541 on special properties of the universal class V is obvious). Use bj-issetiv 37540 instead when sufficient (in particular when 𝑉 is substituted for V). (Contributed by BJ, 13-Jun-2019.) (Proof modification is discouraged.) |
| ⊢ 𝐴 ∈ 𝑉 ⇒ ⊢ ∃𝑥 𝑥 = 𝐴 | ||
| Theorem | bj-ralvw 37542 | A weak version of ralv 3480 not using ax-ext 2734 (nor df-cleq 2754, df-clel 2837, df-v 3456), and only core FOL axioms. See also bj-rexvw 37543. The analogues for reuv 3482 and rmov 3483 are not proved. (Contributed by BJ, 16-Jun-2019.) (Proof modification is discouraged.) |
| ⊢ 𝜓 ⇒ ⊢ (∀𝑥 ∈ {𝑦 ∣ 𝜓}𝜑 ↔ ∀𝑥𝜑) | ||
| Theorem | bj-rexvw 37543 | A weak version of rexv 3481 not using ax-ext 2734 (nor df-cleq 2754, df-clel 2837, df-v 3456), and only core FOL axioms. See also bj-ralvw 37542. (Contributed by BJ, 16-Jun-2019.) (Proof modification is discouraged.) |
| ⊢ 𝜓 ⇒ ⊢ (∃𝑥 ∈ {𝑦 ∣ 𝜓}𝜑 ↔ ∃𝑥𝜑) | ||
| Theorem | bj-rababw 37544 | A weak version of rabab 3484 not using df-clel 2837 nor df-v 3456 (but requiring ax-ext 2734) nor ax-12 2212. (Contributed by BJ, 16-Jun-2019.) (Proof modification is discouraged.) |
| ⊢ 𝜓 ⇒ ⊢ {𝑥 ∈ {𝑦 ∣ 𝜓} ∣ 𝜑} = {𝑥 ∣ 𝜑} | ||
| Theorem | bj-rexcom4bv 37545* | Version of rexcom4b 3485 and bj-rexcom4b 37546 with a disjoint variable condition on 𝑥, 𝑉, hence removing dependency on df-sb 2096 and df-clab 2741 (so that it depends on df-clel 2837 and df-rex 3089 only on top of first-order logic). Prefer its use over bj-rexcom4b 37546 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 37546* | Remove from rexcom4b 3485 dependency on ax-ext 2734 and ax-13 2403 (and on df-or 861, df-cleq 2754, df-nfc 2911, df-v 3456). The hypothesis uses 𝑉 instead of V (see bj-isseti 37541 for the motivation). Use bj-rexcom4bv 37545 instead when sufficient (in particular when 𝑉 is substituted for V). (Contributed by BJ, 16-Jun-2019.) (Proof modification is discouraged.) |
| ⊢ 𝐵 ∈ 𝑉 ⇒ ⊢ (∃𝑥∃𝑦 ∈ 𝐴 (𝜑 ∧ 𝑥 = 𝐵) ↔ ∃𝑦 ∈ 𝐴 𝜑) | ||
| Theorem | bj-ceqsalt0 37547 | The FOL content of ceqsalt 3487. Lemma for bj-ceqsalt 37549 and bj-ceqsaltv 37550. (Contributed by BJ, 26-Sep-2019.) (Proof modification is discouraged.) |
| ⊢ ((Ⅎ𝑥𝜓 ∧ ∀𝑥(𝜃 → (𝜑 ↔ 𝜓)) ∧ ∃𝑥𝜃) → (∀𝑥(𝜃 → 𝜑) ↔ 𝜓)) | ||
| Theorem | bj-ceqsalt1 37548 | The FOL content of ceqsalt 3487. Lemma for bj-ceqsalt 37549 and bj-ceqsaltv 37550. TODO: consider removing if it does not add anything to bj-ceqsalt0 37547. (Contributed by BJ, 26-Sep-2019.) (Proof modification is discouraged.) |
| ⊢ (𝜃 → ∃𝑥𝜒) ⇒ ⊢ ((Ⅎ𝑥𝜓 ∧ ∀𝑥(𝜒 → (𝜑 ↔ 𝜓)) ∧ 𝜃) → (∀𝑥(𝜒 → 𝜑) ↔ 𝜓)) | ||
| Theorem | bj-ceqsalt 37549* | Remove from ceqsalt 3487 dependency on ax-ext 2734 (and on df-cleq 2754 and df-v 3456). Note: this is not doable with ceqsralt 3488 (or ceqsralv 3494), which uses eleq1 2850, but the same dependence removal is possible for ceqsalg 3489, ceqsal 3491, ceqsalv 3493, cgsexg 3498, cgsex2g 3499, cgsex4g 3500, ceqsex 3501, ceqsexv 3502, ceqsex2 3504, ceqsex2v 3505, ceqsex3v 3506, ceqsex4v 3507, ceqsex6v 3508, ceqsex8v 3509, gencbvex 3510 (after changing 𝐴 = 𝑦 to 𝑦 = 𝐴), gencbvex2 3511, gencbval 3512, vtoclgft 3519 (it uses Ⅎ, whose justification nfcjust 2910 does not use ax-ext 2734) and several other vtocl* theorems (see for instance bj-vtoclg1f 37581). See also bj-ceqsaltv 37550. (Contributed by BJ, 16-Jun-2019.) (Proof modification is discouraged.) |
| ⊢ ((Ⅎ𝑥𝜓 ∧ ∀𝑥(𝑥 = 𝐴 → (𝜑 ↔ 𝜓)) ∧ 𝐴 ∈ 𝑉) → (∀𝑥(𝑥 = 𝐴 → 𝜑) ↔ 𝜓)) | ||
| Theorem | bj-ceqsaltv 37550* | Version of bj-ceqsalt 37549 with a disjoint variable condition on 𝑥, 𝑉, removing dependency on df-sb 2096 and df-clab 2741. Prefer its use over bj-ceqsalt 37549 when sufficient (in particular when 𝑉 is substituted for V). (Contributed by BJ, 16-Jun-2019.) (Proof modification is discouraged.) |
| ⊢ ((Ⅎ𝑥𝜓 ∧ ∀𝑥(𝑥 = 𝐴 → (𝜑 ↔ 𝜓)) ∧ 𝐴 ∈ 𝑉) → (∀𝑥(𝑥 = 𝐴 → 𝜑) ↔ 𝜓)) | ||
| Theorem | bj-ceqsalg0 37551 | The FOL content of ceqsalg 3489. (Contributed by BJ, 12-Oct-2019.) (Proof modification is discouraged.) |
| ⊢ Ⅎ𝑥𝜓 & ⊢ (𝜒 → (𝜑 ↔ 𝜓)) ⇒ ⊢ (∃𝑥𝜒 → (∀𝑥(𝜒 → 𝜑) ↔ 𝜓)) | ||
| Theorem | bj-ceqsalg 37552* | Remove from ceqsalg 3489 dependency on ax-ext 2734 (and on df-cleq 2754 and df-v 3456). See also bj-ceqsalgv 37554. (Contributed by BJ, 12-Oct-2019.) (Proof modification is discouraged.) |
| ⊢ Ⅎ𝑥𝜓 & ⊢ (𝑥 = 𝐴 → (𝜑 ↔ 𝜓)) ⇒ ⊢ (𝐴 ∈ 𝑉 → (∀𝑥(𝑥 = 𝐴 → 𝜑) ↔ 𝜓)) | ||
| Theorem | bj-ceqsalgALT 37553* | Alternate proof of bj-ceqsalg 37552. (Contributed by BJ, 12-Oct-2019.) (Proof modification is discouraged.) (New usage is discouraged.) |
| ⊢ Ⅎ𝑥𝜓 & ⊢ (𝑥 = 𝐴 → (𝜑 ↔ 𝜓)) ⇒ ⊢ (𝐴 ∈ 𝑉 → (∀𝑥(𝑥 = 𝐴 → 𝜑) ↔ 𝜓)) | ||
| Theorem | bj-ceqsalgv 37554* | Version of bj-ceqsalg 37552 with a disjoint variable condition on 𝑥, 𝑉, removing dependency on df-sb 2096 and df-clab 2741. Prefer its use over bj-ceqsalg 37552 when sufficient (in particular when 𝑉 is substituted for V). (Contributed by BJ, 12-Oct-2019.) (Proof modification is discouraged.) |
| ⊢ Ⅎ𝑥𝜓 & ⊢ (𝑥 = 𝐴 → (𝜑 ↔ 𝜓)) ⇒ ⊢ (𝐴 ∈ 𝑉 → (∀𝑥(𝑥 = 𝐴 → 𝜑) ↔ 𝜓)) | ||
| Theorem | bj-ceqsalgvALT 37555* | Alternate proof of bj-ceqsalgv 37554. (Contributed by BJ, 12-Oct-2019.) (Proof modification is discouraged.) (New usage is discouraged.) |
| ⊢ Ⅎ𝑥𝜓 & ⊢ (𝑥 = 𝐴 → (𝜑 ↔ 𝜓)) ⇒ ⊢ (𝐴 ∈ 𝑉 → (∀𝑥(𝑥 = 𝐴 → 𝜑) ↔ 𝜓)) | ||
| Theorem | bj-ceqsal 37556* | Remove from ceqsal 3491 dependency on ax-ext 2734 (and on df-cleq 2754, df-v 3456, df-clab 2741, df-sb 2096). (Contributed by BJ, 12-Oct-2019.) (Proof modification is discouraged.) |
| ⊢ Ⅎ𝑥𝜓 & ⊢ 𝐴 ∈ V & ⊢ (𝑥 = 𝐴 → (𝜑 ↔ 𝜓)) ⇒ ⊢ (∀𝑥(𝑥 = 𝐴 → 𝜑) ↔ 𝜓) | ||
| Theorem | bj-ceqsalv 37557* | Remove from ceqsalv 3493 dependency on ax-ext 2734 (and on df-cleq 2754, df-v 3456, df-clab 2741, df-sb 2096). (Contributed by BJ, 12-Oct-2019.) (Proof modification is discouraged.) |
| ⊢ 𝐴 ∈ V & ⊢ (𝑥 = 𝐴 → (𝜑 ↔ 𝜓)) ⇒ ⊢ (∀𝑥(𝑥 = 𝐴 → 𝜑) ↔ 𝜓) | ||
| Theorem | bj-spcimdv 37558* | Remove from spcimdv 3551 dependency on ax-9 2152, ax-10 2175, ax-11 2191, ax-13 2403, ax-ext 2734, df-cleq 2754 (and df-nfc 2911, df-v 3456, df-or 861, df-tru 1572, df-nf 1813). For an even more economical version, see bj-spcimdvv 37559. (Contributed by BJ, 30-Nov-2020.) (Proof modification is discouraged.) |
| ⊢ (𝜑 → 𝐴 ∈ 𝐵) & ⊢ ((𝜑 ∧ 𝑥 = 𝐴) → (𝜓 → 𝜒)) ⇒ ⊢ (𝜑 → (∀𝑥𝜓 → 𝜒)) | ||
| Theorem | bj-spcimdvv 37559* | Remove from spcimdv 3551 dependency on ax-7 2037, ax-8 2144, ax-10 2175, ax-11 2191, ax-12 2212 ax-13 2403, ax-ext 2734, df-cleq 2754, df-clab 2741 (and df-nfc 2911, df-v 3456, df-or 861, df-tru 1572, df-nf 1813) 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 37558. (Contributed by BJ, 3-Nov-2021.) (Proof modification is discouraged.) |
| ⊢ (𝜑 → 𝐴 ∈ 𝐵) & ⊢ ((𝜑 ∧ 𝑥 = 𝐴) → (𝜓 → 𝜒)) ⇒ ⊢ (𝜑 → (∀𝑥𝜓 → 𝜒)) | ||
| Theorem | elelb 37560 | 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 37561 | 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 37562 | The nonfreeness quantifier for classes defines a symmetric binary relation on var metavariables (irreflexivity is proved by nfnid 5345 with additional axioms; see also nfcv 2924). This could be proved from aecom 2458 and nfcvb 5346 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 2768 instead of equcomd 2048; removing dependency on ax-ext 2734 is possible: prove weak versions (i.e. replace classes with setvars) of drnfc1 2943, eleq2d 2848 (using elequ2 2157), nfcvf 2950, dvelimc 2949, dvelimdc 2948, nfcvf2 2951. (Proof modification is discouraged.) |
| ⊢ (Ⅎ𝑥𝑦 ↔ Ⅎ𝑦𝑥) | ||
Some useful theorems for dealing with substitutions: sbbi 2341, sbcbig 3794, sbcel1g 4380, sbcel2 4382, sbcel12 4375, sbceqg 4376, csbvarg 4398. | ||
| Theorem | bj-sbeqALT 37563* | Substitution in an equality (use the more general version bj-sbeq 37564 instead, without disjoint variable condition). (Contributed by BJ, 6-Oct-2018.) (New usage is discouraged.) (Proof modification is discouraged.) |
| ⊢ ([𝑦 / 𝑥]𝐴 = 𝐵 ↔ ⦋𝑦 / 𝑥⦌𝐴 = ⦋𝑦 / 𝑥⦌𝐵) | ||
| Theorem | bj-sbeq 37564 | Distribute proper substitution through an equality relation. (See sbceqg 4376). (Contributed by BJ, 6-Oct-2018.) |
| ⊢ ([𝑦 / 𝑥]𝐴 = 𝐵 ↔ ⦋𝑦 / 𝑥⦌𝐴 = ⦋𝑦 / 𝑥⦌𝐵) | ||
| Theorem | bj-sbceqgALT 37565 | Distribute proper substitution through an equality relation. Alternate proof of sbceqg 4376. (Contributed by BJ, 6-Oct-2018.) Proof modification is discouraged to avoid using sbceqg 4376, but the Metamath program "MM-PA> MINIMIZE_WITH * / EXCEPT sbceqg" command is ok. (Proof modification is discouraged.) (New usage is discouraged.) |
| ⊢ (𝐴 ∈ 𝑉 → ([𝐴 / 𝑥]𝐵 = 𝐶 ↔ ⦋𝐴 / 𝑥⦌𝐵 = ⦋𝐴 / 𝑥⦌𝐶)) | ||
| Theorem | bj-csbsnlem 37566* | Lemma for bj-csbsn 37567 (in this lemma, 𝑥 cannot occur in 𝐴). (Contributed by BJ, 6-Oct-2018.) (New usage is discouraged.) |
| ⊢ ⦋𝐴 / 𝑥⦌{𝑥} = {𝐴} | ||
| Theorem | bj-csbsn 37567 | Substitution in a singleton. (Contributed by BJ, 6-Oct-2018.) |
| ⊢ ⦋𝐴 / 𝑥⦌{𝑥} = {𝐴} | ||
| Theorem | bj-sbel1 37568* | Version of sbcel1g 4380 when substituting a set. (Note: one could have a corresponding version of sbcel12 4375 when substituting a set, but the point here is that the antecedent of sbcel1g 4380 is not needed when substituting a set.) (Contributed by BJ, 6-Oct-2018.) |
| ⊢ ([𝑦 / 𝑥]𝐴 ∈ 𝐵 ↔ ⦋𝑦 / 𝑥⦌𝐴 ∈ 𝐵) | ||
| Theorem | bj-abv 37569 | 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 37570 | Alternate version of bj-abv 37569; shorter but uses ax-8 2144. (Contributed by BJ, 24-Jul-2019.) (Proof modification is discouraged.) (New usage is discouraged.) |
| ⊢ (∀𝑥𝜑 → {𝑥 ∣ 𝜑} = V) | ||
| Theorem | bj-ab0 37571 | The class of sets verifying a falsity is the empty set (closed form of abf 4370). (Contributed by BJ, 24-Jul-2019.) (Proof modification is discouraged.) |
| ⊢ (∀𝑥 ¬ 𝜑 → {𝑥 ∣ 𝜑} = ∅) | ||
| Theorem | bj-abf 37572 | Shorter proof of abf 4370 (which should be kept as abfALT). (Contributed by BJ, 24-Jul-2019.) (Proof modification is discouraged.) |
| ⊢ ¬ 𝜑 ⇒ ⊢ {𝑥 ∣ 𝜑} = ∅ | ||
| Theorem | bj-csbprc 37573 | More direct proof of csbprc 4373 (fewer essential steps). (Contributed by BJ, 24-Jul-2019.) (Proof modification is discouraged.) |
| ⊢ (¬ 𝐴 ∈ V → ⦋𝐴 / 𝑥⦌𝐵 = ∅) | ||
| Theorem | bj-exlimvmpi 37574* | A Fol lemma (exlimiv 1959 followed by mpi 21). (Contributed by BJ, 2-Jul-2022.) (Proof modification is discouraged.) |
| ⊢ (𝜒 → (𝜑 → 𝜓)) & ⊢ 𝜑 ⇒ ⊢ (∃𝑥𝜒 → 𝜓) | ||
| Theorem | bj-exlimmpi 37575 | Lemma for bj-vtoclg1f1 37580 (an instance of this lemma is a version of bj-vtoclg1f1 37580 where 𝑥 and 𝑦 are identified). (Contributed by BJ, 30-Apr-2019.) (Proof modification is discouraged.) |
| ⊢ Ⅎ𝑥𝜓 & ⊢ (𝜒 → (𝜑 → 𝜓)) & ⊢ 𝜑 ⇒ ⊢ (∃𝑥𝜒 → 𝜓) | ||
| Theorem | bj-exlimmpbi 37576 | Lemma for theorems of the vtoclg 3521 family. (Contributed by BJ, 3-Oct-2019.) (Proof modification is discouraged.) |
| ⊢ Ⅎ𝑥𝜓 & ⊢ (𝜒 → (𝜑 ↔ 𝜓)) & ⊢ 𝜑 ⇒ ⊢ (∃𝑥𝜒 → 𝜓) | ||
| Theorem | bj-exlimmpbir 37577 | Lemma for theorems of the vtoclg 3521 family. (Contributed by BJ, 3-Oct-2019.) (Proof modification is discouraged.) |
| ⊢ Ⅎ𝑥𝜑 & ⊢ (𝜒 → (𝜑 ↔ 𝜓)) & ⊢ 𝜓 ⇒ ⊢ (∃𝑥𝜒 → 𝜑) | ||
| Theorem | bj-vtoclf 37578* | Remove dependency on ax-ext 2734, df-clab 2741 and df-cleq 2754 (and df-sb 2096 and df-v 3456) from vtoclf 3529. (Contributed by BJ, 6-Oct-2019.) (Proof modification is discouraged.) |
| ⊢ Ⅎ𝑥𝜓 & ⊢ 𝐴 ∈ 𝑉 & ⊢ (𝑥 = 𝐴 → (𝜑 ↔ 𝜓)) & ⊢ 𝜑 ⇒ ⊢ 𝜓 | ||
| Theorem | bj-vtocl 37579* | Remove dependency on ax-ext 2734, df-clab 2741 and df-cleq 2754 (and df-sb 2096 and df-v 3456) from vtocl 3524. (Contributed by BJ, 6-Oct-2019.) (Proof modification is discouraged.) |
| ⊢ 𝐴 ∈ 𝑉 & ⊢ (𝑥 = 𝐴 → (𝜑 ↔ 𝜓)) & ⊢ 𝜑 ⇒ ⊢ 𝜓 | ||
| Theorem | bj-vtoclg1f1 37580* | The FOL content of vtoclg1f 3534 (hence not using ax-ext 2734, df-cleq 2754, df-nfc 2911, df-v 3456). 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 2734; as a byproduct, this dispenses with ax-11 2191 and ax-13 2403). (Contributed by BJ, 30-Apr-2019.) (Proof modification is discouraged.) |
| ⊢ Ⅎ𝑥𝜓 & ⊢ (𝑥 = 𝐴 → (𝜑 → 𝜓)) & ⊢ 𝜑 ⇒ ⊢ (∃𝑦 𝑦 = 𝐴 → 𝜓) | ||
| Theorem | bj-vtoclg1f 37581* | Reprove vtoclg1f 3534 from bj-vtoclg1f1 37580. This removes dependency on ax-ext 2734, df-cleq 2754 and df-v 3456. Use bj-vtoclg1fv 37582 instead when sufficient (in particular when 𝑉 is substituted for V). (Contributed by BJ, 14-Sep-2019.) (Proof modification is discouraged.) |
| ⊢ Ⅎ𝑥𝜓 & ⊢ (𝑥 = 𝐴 → (𝜑 → 𝜓)) & ⊢ 𝜑 ⇒ ⊢ (𝐴 ∈ 𝑉 → 𝜓) | ||
| Theorem | bj-vtoclg1fv 37582* | Version of bj-vtoclg1f 37581 with a disjoint variable condition on 𝑥, 𝑉. This removes dependency on df-sb 2096 and df-clab 2741. Prefer its use over bj-vtoclg1f 37581 when sufficient (in particular when 𝑉 is substituted for V). (Contributed by BJ, 14-Sep-2019.) (Proof modification is discouraged.) |
| ⊢ Ⅎ𝑥𝜓 & ⊢ (𝑥 = 𝐴 → (𝜑 → 𝜓)) & ⊢ 𝜑 ⇒ ⊢ (𝐴 ∈ 𝑉 → 𝜓) | ||
| Theorem | bj-vtoclg 37583* | A version of vtoclg 3521 with an additional disjoint variable condition (which is removable if we allow use of df-clab 2741, see bj-vtoclg1f 37581), which requires fewer axioms (i.e., removes dependency on ax-6 1996, ax-7 2037, ax-9 2152, ax-12 2212, ax-ext 2734, df-clab 2741, df-cleq 2754, df-v 3456). (Contributed by BJ, 2-Jul-2022.) (Proof modification is discouraged.) |
| ⊢ (𝑥 = 𝐴 → (𝜑 → 𝜓)) & ⊢ 𝜑 ⇒ ⊢ (𝐴 ∈ 𝑉 → 𝜓) | ||
| Theorem | bj-rabeqbid 37584 | Version of rabeqbidv 3433 with two disjoint variable conditions removed and the third replaced by a nonfreeness hypothesis. (Contributed by BJ, 27-Apr-2019.) |
| ⊢ Ⅎ𝑥𝜑 & ⊢ (𝜑 → 𝐴 = 𝐵) & ⊢ (𝜑 → (𝜓 ↔ 𝜒)) ⇒ ⊢ (𝜑 → {𝑥 ∈ 𝐴 ∣ 𝜓} = {𝑥 ∈ 𝐵 ∣ 𝜒}) | ||
| Theorem | bj-seex 37585* | Version of seex 5619 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 37586* | Version of df-nfc 2911 with a disjoint variable condition replaced with a nonfreeness hypothesis. (Contributed by BJ, 2-May-2019.) |
| ⊢ Ⅎ𝑦𝐴 ⇒ ⊢ (Ⅎ𝑥𝐴 ↔ ∀𝑦Ⅎ𝑥 𝑦 ∈ 𝐴) | ||
| Theorem | bj-sepg 37587* | Version of sepg 5258 which does not require df-clab 2741, thanks to the use of bj-vtoclg 37583 (and ultimately, to the use of elissetv 2843 instead of elisset 2844). This axiom save is not very important, since this theorem uses df-cleq 2754 and df-clel 2837. This theorem is a remnant of a previous state of set.mm where the axiom saving was larger. (Contributed by BJ, 2-Jul-2022.) (Proof modification is discouraged.) |
| ⊢ (𝐴 ∈ 𝑉 → ∃𝑦∀𝑥(𝑥 ∈ 𝑦 ↔ (𝑥 ∈ 𝐴 ∧ 𝜑))) | ||
| Theorem | bj-inex1gALT 37588 | Proof of inex1g 5287 from sepg 5258 to then allow proving inex1 5285 from it. That does not reduce the combined proof size of inex1 5285 and inex1g 5287. (Contributed by BJ, 14-Jul-2026.) (Proof modification is discouraged.) (New usage is discouraged.) |
| ⊢ (𝐴 ∈ 𝑉 → (𝐴 ∩ 𝐵) ∈ V) | ||
A few additional theorems on class abstractions and restricted class abstractions. | ||
| Theorem | bj-elabd2ALT 37589* | Alternate proof of elabd2 3628 bypassing elab6g 3627 (and using sbiedvw 2129 instead of the ∀𝑥(𝑥 = 𝑦 → 𝜓) idiom). (Contributed by BJ, 16-Oct-2024.) (Proof modification is discouraged.) (New usage is discouraged.) |
| ⊢ (𝜑 → 𝐴 ∈ 𝑉) & ⊢ (𝜑 → 𝐵 = {𝑥 ∣ 𝜓}) & ⊢ ((𝜑 ∧ 𝑥 = 𝐴) → (𝜓 ↔ 𝜒)) ⇒ ⊢ (𝜑 → (𝐴 ∈ 𝐵 ↔ 𝜒)) | ||
| Theorem | bj-unrab 37590* | Generalization of unrab 4267. Equality need not hold. (Contributed by BJ, 21-Apr-2019.) |
| ⊢ ({𝑥 ∈ 𝐴 ∣ 𝜑} ∪ {𝑥 ∈ 𝐵 ∣ 𝜓}) ⊆ {𝑥 ∈ (𝐴 ∪ 𝐵) ∣ (𝜑 ∨ 𝜓)} | ||
| Theorem | bj-inrab 37591 | Generalization of inrab 4268. (Contributed by BJ, 21-Apr-2019.) |
| ⊢ ({𝑥 ∈ 𝐴 ∣ 𝜑} ∩ {𝑥 ∈ 𝐵 ∣ 𝜓}) = {𝑥 ∈ (𝐴 ∩ 𝐵) ∣ (𝜑 ∧ 𝜓)} | ||
| Theorem | bj-inrab2 37592 | Shorter proof of inrab 4268. (Contributed by BJ, 21-Apr-2019.) (Proof modification is discouraged.) |
| ⊢ ({𝑥 ∈ 𝐴 ∣ 𝜑} ∩ {𝑥 ∈ 𝐴 ∣ 𝜓}) = {𝑥 ∈ 𝐴 ∣ (𝜑 ∧ 𝜓)} | ||
| Theorem | bj-inrab3 37593* | Generalization of dfrab3ss 4275. Shortens dfrab3ss 4275. (Contributed by BJ, 21-Apr-2019.) (Revised by OpenAI, 7-Jul-2020.) |
| ⊢ (𝐴 ∩ {𝑥 ∈ 𝐵 ∣ 𝜑}) = ({𝑥 ∈ 𝐴 ∣ 𝜑} ∩ 𝐵) | ||
| Theorem | bj-rabtr 37594* | Restricted class abstraction with true formula. (Contributed by BJ, 22-Apr-2019.) |
| ⊢ {𝑥 ∈ 𝐴 ∣ ⊤} = 𝐴 | ||
| Theorem | bj-rabtrALT 37595* | Alternate proof of bj-rabtr 37594. (Contributed by BJ, 22-Apr-2019.) (Proof modification is discouraged.) (New usage is discouraged.) |
| ⊢ {𝑥 ∈ 𝐴 ∣ ⊤} = 𝐴 | ||
| Theorem | bj-rabtrAUTO 37596* | Proof of bj-rabtr 37594 found automatically by the Metamath program "MM-PA> IMPROVE ALL / DEPTH 3 / 3" command followed by "MM-PA> MINIMIZE_WITH *". (Contributed by BJ, 22-Apr-2019.) (Proof modification is discouraged.) (New usage is discouraged.) |
| ⊢ {𝑥 ∈ 𝐴 ∣ ⊤} = 𝐴 | ||
| Syntax | bj-cgab 37597 | Syntax for generalized class abstractions. |
| class {𝐴 ∣ 𝑥 ∣ 𝜑} | ||
| Definition | df-bj-gab 37598* | Definition of generalized class abstractions: typically, 𝑥 is a bound variable in 𝐴 and 𝜑 and {𝐴 ∣ 𝑥 ∣ 𝜑} denotes "the class of 𝐴(𝑥)'s such that 𝜑(𝑥)". (Contributed by BJ, 4-Oct-2024.) |
| ⊢ {𝐴 ∣ 𝑥 ∣ 𝜑} = {𝑦 ∣ ∃𝑥(𝐴 = 𝑦 ∧ 𝜑)} | ||
| Theorem | bj-gabss 37599 | Inclusion of generalized class abstractions. (Contributed by BJ, 4-Oct-2024.) |
| ⊢ (∀𝑥(𝐴 = 𝐵 ∧ (𝜑 → 𝜓)) → {𝐴 ∣ 𝑥 ∣ 𝜑} ⊆ {𝐵 ∣ 𝑥 ∣ 𝜓}) | ||
| Theorem | bj-gabssd 37600 | Inclusion of generalized class abstractions. Deduction form. (Contributed by BJ, 4-Oct-2024.) |
| ⊢ (𝜑 → ∀𝑥𝜑) & ⊢ (𝜑 → 𝐴 = 𝐵) & ⊢ (𝜑 → (𝜓 → 𝜒)) ⇒ ⊢ (𝜑 → {𝐴 ∣ 𝑥 ∣ 𝜓} ⊆ {𝐵 ∣ 𝑥 ∣ 𝜒}) | ||
| < Previous Next > |
| Copyright terms: Public domain | < Previous Next > |