| Metamath
Proof Explorer Theorem List (p. 369 of 497) | < 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-30845) |
(30846-32368) |
(32369-49617) |
| Type | Label | Description |
|---|---|---|
| Statement | ||
| Theorem | bj-sbsb 36801 | Biconditional showing two possible (dual) definitions of substitution df-sb 2065 not using dummy variables. (Contributed by BJ, 19-Mar-2021.) |
| ⊢ (((𝑥 = 𝑦 → 𝜑) ∧ ∃𝑥(𝑥 = 𝑦 ∧ 𝜑)) ↔ (∀𝑥(𝑥 = 𝑦 → 𝜑) ∨ (𝑥 = 𝑦 ∧ 𝜑))) | ||
| Theorem | bj-dfsb2 36802 | Alternate (dual) definition of substitution df-sb 2065 not using dummy variables. (Contributed by BJ, 19-Mar-2021.) |
| ⊢ ([𝑦 / 𝑥]𝜑 ↔ (∀𝑥(𝑥 = 𝑦 → 𝜑) ∨ (𝑥 = 𝑦 ∧ 𝜑))) | ||
| Theorem | bj-sbf3 36803 | Substitution has no effect on a bound variable (existential quantifier case); see sbf2 2272. (Contributed by BJ, 2-May-2019.) |
| ⊢ ([𝑦 / 𝑥]∃𝑥𝜑 ↔ ∃𝑥𝜑) | ||
| Theorem | bj-sbf4 36804 | Substitution has no effect on a bound variable (nonfreeness case); see sbf2 2272. (Contributed by BJ, 2-May-2019.) |
| ⊢ ([𝑦 / 𝑥]Ⅎ𝑥𝜑 ↔ Ⅎ𝑥𝜑) | ||
| Theorem | bj-eu3f 36805* | Version of eu3v 2569 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 2569. (Contributed by NM, 8-Jul-1994.) (Proof shortened by BJ, 31-May-2019.) |
| ⊢ Ⅎ𝑦𝜑 ⇒ ⊢ (∃!𝑥𝜑 ↔ (∃𝑥𝜑 ∧ ∃𝑦∀𝑥(𝜑 → 𝑥 = 𝑦))) | ||
Miscellaneous theorems of first-order logic. | ||
| Theorem | bj-sblem1 36806* | Lemma for substitution. (Contributed by BJ, 23-Jul-2023.) |
| ⊢ (∀𝑥(𝜑 → (𝜓 → 𝜒)) → (∀𝑥(𝜑 → 𝜓) → (∃𝑥𝜑 → 𝜒))) | ||
| Theorem | bj-sblem2 36807* | Lemma for substitution. (Contributed by BJ, 23-Jul-2023.) |
| ⊢ (∀𝑥(𝜑 → (𝜒 → 𝜓)) → ((∃𝑥𝜑 → 𝜒) → ∀𝑥(𝜑 → 𝜓))) | ||
| Theorem | bj-sblem 36808* | Lemma for substitution. (Contributed by BJ, 23-Jul-2023.) |
| ⊢ (∀𝑥(𝜑 → (𝜓 ↔ 𝜒)) → (∀𝑥(𝜑 → 𝜓) ↔ (∃𝑥𝜑 → 𝜒))) | ||
| Theorem | bj-sbievw1 36809* | Lemma for substitution. (Contributed by BJ, 23-Jul-2023.) |
| ⊢ ([𝑦 / 𝑥](𝜑 → 𝜓) → ([𝑦 / 𝑥]𝜑 → 𝜓)) | ||
| Theorem | bj-sbievw2 36810* | Lemma for substitution. (Contributed by BJ, 23-Jul-2023.) |
| ⊢ ([𝑦 / 𝑥](𝜓 → 𝜑) → (𝜓 → [𝑦 / 𝑥]𝜑)) | ||
| Theorem | bj-sbievw 36811* | Lemma for substitution. Closed form of equsalvw 2003 and sbievw 2093. (Contributed by BJ, 23-Jul-2023.) |
| ⊢ ([𝑦 / 𝑥](𝜑 ↔ 𝜓) → ([𝑦 / 𝑥]𝜑 ↔ 𝜓)) | ||
| Theorem | bj-sbievv 36812 | Version of sbie 2506 with a second nonfreeness hypothesis and shorter proof. (Contributed by BJ, 18-Jul-2023.) (Proof modification is discouraged.) |
| ⊢ Ⅎ𝑥𝜓 & ⊢ Ⅎ𝑦𝜑 & ⊢ (𝑥 = 𝑦 → (𝜑 ↔ 𝜓)) ⇒ ⊢ ([𝑦 / 𝑥]𝜑 ↔ 𝜓) | ||
| Theorem | bj-moeub 36813 | Uniqueness is equivalent to existence being equivalent to unique existence. (Contributed by BJ, 14-Oct-2022.) |
| ⊢ (∃*𝑥𝜑 ↔ (∃𝑥𝜑 ↔ ∃!𝑥𝜑)) | ||
| Theorem | bj-sbidmOLD 36814 | Obsolete proof of sbidm 2514 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 36815* |
Deduction form of dvelim 2455 with disjoint variable conditions. Uncurried
(imported) form of bj-dvelimdv1 36816. 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 1914 can be replaced with nfal 2323 followed by nfn 1857. Remark: nfald 2328 uses ax-11 2157; it might be possible to inline and use ax11w 2130 instead, but there is still a use via 19.12 2327 anyway. (Contributed by BJ, 20-Oct-2021.) (Proof modification is discouraged.) |
| ⊢ (𝜑 → Ⅎ𝑥𝜒) & ⊢ (𝑧 = 𝑦 → (𝜒 ↔ 𝜓)) ⇒ ⊢ ((𝜑 ∧ ¬ ∀𝑥 𝑥 = 𝑦) → Ⅎ𝑥𝜓) | ||
| Theorem | bj-dvelimdv1 36816* | Curried (exported) form of bj-dvelimdv 36815 (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 36817* | A version of dvelim 2455 using the "nonfree" idiom. (Contributed by BJ, 20-Oct-2021.) (Proof modification is discouraged.) |
| ⊢ Ⅎ𝑥𝜓 & ⊢ (𝑧 = 𝑦 → (𝜓 ↔ 𝜑)) ⇒ ⊢ (¬ ∀𝑥 𝑥 = 𝑦 → Ⅎ𝑥𝜑) | ||
| Theorem | bj-nfeel2 36818* | Nonfreeness in a membership statement. (Contributed by BJ, 20-Oct-2021.) (Proof modification is discouraged.) |
| ⊢ (¬ ∀𝑥 𝑥 = 𝑦 → Ⅎ𝑥 𝑦 ∈ 𝑧) | ||
| Theorem | bj-axc14nf 36819 | Proof of a version of axc14 2467 using the "nonfree" idiom. (Contributed by BJ, 20-Oct-2021.) (Proof modification is discouraged.) |
| ⊢ (¬ ∀𝑧 𝑧 = 𝑥 → (¬ ∀𝑧 𝑧 = 𝑦 → Ⅎ𝑧 𝑥 ∈ 𝑦)) | ||
| Theorem | bj-axc14 36820 | Alternate proof of axc14 2467 (even when inlining the above results, this gives a shorter proof). (Contributed by BJ, 20-Oct-2021.) (Proof modification is discouraged.) |
| ⊢ (¬ ∀𝑧 𝑧 = 𝑥 → (¬ ∀𝑧 𝑧 = 𝑦 → (𝑥 ∈ 𝑦 → ∀𝑧 𝑥 ∈ 𝑦))) | ||
| Theorem | mobidvALT 36821* | Alternate proof of mobidv 2548 directly from its analogues albidv 1920 and exbidv 1921, using deduction style. Note the proof structure, similar to mobi 2546. (Contributed by Mario Carneiro, 7-Oct-2016.) Reduce axiom dependencies and shorten proof. Remove dependency on ax-6 1967, ax-7 2007, ax-12 2177 by adapting proof of mobid 2549. (Revised by BJ, 26-Sep-2022.) (Proof modification is discouraged.) (New usage is discouraged.) |
| ⊢ (𝜑 → (𝜓 ↔ 𝜒)) ⇒ ⊢ (𝜑 → (∃*𝑥𝜓 ↔ ∃*𝑥𝜒)) | ||
| Theorem | sbn1ALT 36822 | Alternate proof of sbn1 2107, 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 2707, df-clab 2714, df-cleq 2727, df-clel 2809 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 2707, df-clab 2714, df-cleq 2727, df-clel 2809 }) 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 36830, eliminable-abeqv 36831, eliminable-abeqab 36832, eliminable-velab 36829, eliminable-abelv 36833, eliminable-abelab 36834 respectively, which are all proved from {FOL, ax-ext 2707, df-clab 2714, df-cleq 2727, df-clel 2809 }. (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 2714, dfcleq 2728 (proved from {FOL, ax-ext 2707, df-cleq 2727 }), and dfclel 2810 (proved from {FOL, df-clel 2809 }). 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 36824, eliminable2b 36825 and eliminable3a 36827, 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 1539, 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 2714 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 2714, ax-ext 2707 and df-cleq 2727 are sufficient (over FOL) to eliminate class terms. To prove that { df-clab 2714, df-cleq 2727, df-clel 2809 } provides a definitional extension of {FOL, ax-ext 2707 }, 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 2714, df-cleq 2727, df-clel 2809 }. 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 2707 }. 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 2714, df-cleq 2727, df-clel 2809 }. It involves a careful case study on the structure of the proof tree. | ||
| Theorem | eliminable1 36823 | 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 36824* | 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 36825* | 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 36826* | 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 36827* | 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 36828* | 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 36829 | 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 36830* | 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 36831* | 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 36832* | 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 36833* | 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 36834* | 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 2707. One could move all theorems from cab 2713 to df-clel 2809 (except for dfcleq 2728 and cvjust 2729) 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 2727. Note that without ax-ext 2707, the $a-statements df-clab 2714, df-cleq 2727, and df-clel 2809 are no longer eliminable (see previous section) (but PROBABLY df-clab 2714 is still conservative , while df-cleq 2727 and df-clel 2809 are not). This is not a reason not to study what is provable with them but without ax-ext 2707, 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 2108, wel 2109, ax-8 2110, ax-9 2118). Remark: the weakening of eleq1 2822 / eleq2 2823 to eleq1w 2817 / eleq2w 2818 can also be done with eleq1i 2825, eqeltri 2830, eqeltrri 2831, eleq1a 2829, eleq1d 2819, eqeltrd 2834, eqeltrrd 2835, eqneltrd 2854, eqneltrrd 2855, nelneq 2858. Remark: possibility to remove dependency on ax-10 2141, ax-11 2157, ax-13 2376 from nfcri 2890 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 2911. | ||
| Theorem | bj-denoteslem 36835* |
Duplicate of issettru 2812 and bj-issettruALTV 36837.
Lemma for bj-denotesALTV 36836. (Contributed by BJ, 24-Apr-2024.) (Proof modification is discouraged.) |
| ⊢ (∃𝑥 𝑥 = 𝐴 ↔ 𝐴 ∈ {𝑦 ∣ ⊤}) | ||
| Theorem | bj-denotesALTV 36836* |
Moved to main as iseqsetv-clel 2813 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 275 (to add an intermediate proposition ∃𝑧𝑧 = 𝐴 with a fresh 𝑧), cbvexvw 2036, and eqeq1 2739, requires the core axioms and { ax-9 2118, ax-ext 2707, df-cleq 2727 } whereas this proof requires the core axioms and { ax-8 2110, df-clab 2714, df-clel 2809 }. Theorem bj-issetwt 36839 proves that "existing" is equivalent to being a member of a class abstraction. It also requires, with the present proof, { ax-8 2110, df-clab 2714, df-clel 2809 } (whereas with the shorter proof from cbvexvw 2036 and eqeq1 2739 it would require { ax-8 2110, ax-9 2118, ax-ext 2707, df-clab 2714, df-cleq 2727, df-clel 2809 }). That every class is equal to a class abstraction is proved by abid1 2871, which requires { ax-8 2110, ax-9 2118, ax-ext 2707, df-clab 2714, df-cleq 2727, df-clel 2809 }. Note that there is no disjoint variable condition on 𝑥, 𝑦 but the theorem does not depend on ax-13 2376. Actually, the proof depends only on the logical axioms ax-1 6 through ax-7 2007 and sp 2183. 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 2707 and df-cleq 2727 (e.g., eqid 2735 and eqeq1 2739). In particular, one cannot even prove ⊢ ∃𝑥𝑥 = 𝐴 ⇒ ⊢ 𝐴 = 𝐴 without ax-ext 2707 and df-cleq 2727. (Contributed by BJ, 29-Apr-2019.) (Proof modification is discouraged.) |
| ⊢ (∃𝑥 𝑥 = 𝐴 ↔ ∃𝑦 𝑦 = 𝐴) | ||
| Theorem | bj-issettruALTV 36837* |
Moved to main as issettru 2812 and kept for the comments.
Weak version of isset 3473 without ax-ext 2707. (Contributed by BJ, 24-Apr-2024.) (Proof modification is discouraged.) |
| ⊢ (∃𝑥 𝑥 = 𝐴 ↔ 𝐴 ∈ {𝑦 ∣ ⊤}) | ||
| Theorem | bj-elabtru 36838 | This is as close as we can get to proving extensionality for "the" "universal" class without ax-ext 2707. (Contributed by BJ, 24-Apr-2024.) (Proof modification is discouraged.) |
| ⊢ (𝐴 ∈ {𝑥 ∣ ⊤} ↔ 𝐴 ∈ {𝑦 ∣ ⊤}) | ||
| Theorem | bj-issetwt 36839* | Closed form of bj-issetw 36840. (Contributed by BJ, 29-Apr-2019.) (Proof modification is discouraged.) |
| ⊢ (∀𝑥𝜑 → (𝐴 ∈ {𝑥 ∣ 𝜑} ↔ ∃𝑦 𝑦 = 𝐴)) | ||
| Theorem | bj-issetw 36840* | The closest one can get to isset 3473 without using ax-ext 2707. See also vexw 2719. Note that the only disjoint variable condition is between 𝑦 and 𝐴. From there, one can prove isset 3473 using eleq2i 2826 (which requires ax-ext 2707 and df-cleq 2727). (Contributed by BJ, 29-Apr-2019.) (Proof modification is discouraged.) |
| ⊢ 𝜑 ⇒ ⊢ (𝐴 ∈ {𝑥 ∣ 𝜑} ↔ ∃𝑦 𝑦 = 𝐴) | ||
| Theorem | bj-issetiv 36841* | Version of bj-isseti 36842 with a disjoint variable condition on 𝑥, 𝑉. The hypothesis uses 𝑉 instead of V for extra generality. This is indeed more general than isseti 3477 as long as elex 3480 is not available (and the non-dependence of bj-issetiv 36841 on special properties of the universal class V is obvious). Prefer its use over bj-isseti 36842 when sufficient (in particular when 𝑉 is substituted for V). (Contributed by BJ, 14-Sep-2019.) (Proof modification is discouraged.) |
| ⊢ 𝐴 ∈ 𝑉 ⇒ ⊢ ∃𝑥 𝑥 = 𝐴 | ||
| Theorem | bj-isseti 36842* | Version of isseti 3477 with a class variable 𝑉 in the hypothesis instead of V for extra generality. This is indeed more general than isseti 3477 as long as elex 3480 is not available (and the non-dependence of bj-isseti 36842 on special properties of the universal class V is obvious). Use bj-issetiv 36841 instead when sufficient (in particular when 𝑉 is substituted for V). (Contributed by BJ, 13-Jun-2019.) (Proof modification is discouraged.) |
| ⊢ 𝐴 ∈ 𝑉 ⇒ ⊢ ∃𝑥 𝑥 = 𝐴 | ||
| Theorem | bj-ralvw 36843 | A weak version of ralv 3487 not using ax-ext 2707 (nor df-cleq 2727, df-clel 2809, df-v 3461), and only core FOL axioms. See also bj-rexvw 36844. The analogues for reuv 3489 and rmov 3490 are not proved. (Contributed by BJ, 16-Jun-2019.) (Proof modification is discouraged.) |
| ⊢ 𝜓 ⇒ ⊢ (∀𝑥 ∈ {𝑦 ∣ 𝜓}𝜑 ↔ ∀𝑥𝜑) | ||
| Theorem | bj-rexvw 36844 | A weak version of rexv 3488 not using ax-ext 2707 (nor df-cleq 2727, df-clel 2809, df-v 3461), and only core FOL axioms. See also bj-ralvw 36843. (Contributed by BJ, 16-Jun-2019.) (Proof modification is discouraged.) |
| ⊢ 𝜓 ⇒ ⊢ (∃𝑥 ∈ {𝑦 ∣ 𝜓}𝜑 ↔ ∃𝑥𝜑) | ||
| Theorem | bj-rababw 36845 | A weak version of rabab 3491 not using df-clel 2809 nor df-v 3461 (but requiring ax-ext 2707) nor ax-12 2177. (Contributed by BJ, 16-Jun-2019.) (Proof modification is discouraged.) |
| ⊢ 𝜓 ⇒ ⊢ {𝑥 ∈ {𝑦 ∣ 𝜓} ∣ 𝜑} = {𝑥 ∣ 𝜑} | ||
| Theorem | bj-rexcom4bv 36846* | Version of rexcom4b 3492 and bj-rexcom4b 36847 with a disjoint variable condition on 𝑥, 𝑉, hence removing dependency on df-sb 2065 and df-clab 2714 (so that it depends on df-clel 2809 and df-rex 3061 only on top of first-order logic). Prefer its use over bj-rexcom4b 36847 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 36847* | Remove from rexcom4b 3492 dependency on ax-ext 2707 and ax-13 2376 (and on df-or 848, df-cleq 2727, df-nfc 2885, df-v 3461). The hypothesis uses 𝑉 instead of V (see bj-isseti 36842 for the motivation). Use bj-rexcom4bv 36846 instead when sufficient (in particular when 𝑉 is substituted for V). (Contributed by BJ, 16-Jun-2019.) (Proof modification is discouraged.) |
| ⊢ 𝐵 ∈ 𝑉 ⇒ ⊢ (∃𝑥∃𝑦 ∈ 𝐴 (𝜑 ∧ 𝑥 = 𝐵) ↔ ∃𝑦 ∈ 𝐴 𝜑) | ||
| Theorem | bj-ceqsalt0 36848 | The FOL content of ceqsalt 3494. Lemma for bj-ceqsalt 36850 and bj-ceqsaltv 36851. (Contributed by BJ, 26-Sep-2019.) (Proof modification is discouraged.) |
| ⊢ ((Ⅎ𝑥𝜓 ∧ ∀𝑥(𝜃 → (𝜑 ↔ 𝜓)) ∧ ∃𝑥𝜃) → (∀𝑥(𝜃 → 𝜑) ↔ 𝜓)) | ||
| Theorem | bj-ceqsalt1 36849 | The FOL content of ceqsalt 3494. Lemma for bj-ceqsalt 36850 and bj-ceqsaltv 36851. TODO: consider removing if it does not add anything to bj-ceqsalt0 36848. (Contributed by BJ, 26-Sep-2019.) (Proof modification is discouraged.) |
| ⊢ (𝜃 → ∃𝑥𝜒) ⇒ ⊢ ((Ⅎ𝑥𝜓 ∧ ∀𝑥(𝜒 → (𝜑 ↔ 𝜓)) ∧ 𝜃) → (∀𝑥(𝜒 → 𝜑) ↔ 𝜓)) | ||
| Theorem | bj-ceqsalt 36850* | Remove from ceqsalt 3494 dependency on ax-ext 2707 (and on df-cleq 2727 and df-v 3461). Note: this is not doable with ceqsralt 3495 (or ceqsralv 3501), which uses eleq1 2822, but the same dependence removal is possible for ceqsalg 3496, ceqsal 3498, ceqsalv 3500, cgsexg 3505, cgsex2g 3506, cgsex4g 3507, ceqsex 3509, ceqsexv 3511, ceqsex2 3514, ceqsex2v 3515, ceqsex3v 3516, ceqsex4v 3517, ceqsex6v 3518, ceqsex8v 3519, gencbvex 3520 (after changing 𝐴 = 𝑦 to 𝑦 = 𝐴), gencbvex2 3521, gencbval 3522, vtoclgft 3531 (it uses Ⅎ, whose justification nfcjust 2884 does not use ax-ext 2707) and several other vtocl* theorems (see for instance bj-vtoclg1f 36882). See also bj-ceqsaltv 36851. (Contributed by BJ, 16-Jun-2019.) (Proof modification is discouraged.) |
| ⊢ ((Ⅎ𝑥𝜓 ∧ ∀𝑥(𝑥 = 𝐴 → (𝜑 ↔ 𝜓)) ∧ 𝐴 ∈ 𝑉) → (∀𝑥(𝑥 = 𝐴 → 𝜑) ↔ 𝜓)) | ||
| Theorem | bj-ceqsaltv 36851* | Version of bj-ceqsalt 36850 with a disjoint variable condition on 𝑥, 𝑉, removing dependency on df-sb 2065 and df-clab 2714. Prefer its use over bj-ceqsalt 36850 when sufficient (in particular when 𝑉 is substituted for V). (Contributed by BJ, 16-Jun-2019.) (Proof modification is discouraged.) |
| ⊢ ((Ⅎ𝑥𝜓 ∧ ∀𝑥(𝑥 = 𝐴 → (𝜑 ↔ 𝜓)) ∧ 𝐴 ∈ 𝑉) → (∀𝑥(𝑥 = 𝐴 → 𝜑) ↔ 𝜓)) | ||
| Theorem | bj-ceqsalg0 36852 | The FOL content of ceqsalg 3496. (Contributed by BJ, 12-Oct-2019.) (Proof modification is discouraged.) |
| ⊢ Ⅎ𝑥𝜓 & ⊢ (𝜒 → (𝜑 ↔ 𝜓)) ⇒ ⊢ (∃𝑥𝜒 → (∀𝑥(𝜒 → 𝜑) ↔ 𝜓)) | ||
| Theorem | bj-ceqsalg 36853* | Remove from ceqsalg 3496 dependency on ax-ext 2707 (and on df-cleq 2727 and df-v 3461). See also bj-ceqsalgv 36855. (Contributed by BJ, 12-Oct-2019.) (Proof modification is discouraged.) |
| ⊢ Ⅎ𝑥𝜓 & ⊢ (𝑥 = 𝐴 → (𝜑 ↔ 𝜓)) ⇒ ⊢ (𝐴 ∈ 𝑉 → (∀𝑥(𝑥 = 𝐴 → 𝜑) ↔ 𝜓)) | ||
| Theorem | bj-ceqsalgALT 36854* | Alternate proof of bj-ceqsalg 36853. (Contributed by BJ, 12-Oct-2019.) (Proof modification is discouraged.) (New usage is discouraged.) |
| ⊢ Ⅎ𝑥𝜓 & ⊢ (𝑥 = 𝐴 → (𝜑 ↔ 𝜓)) ⇒ ⊢ (𝐴 ∈ 𝑉 → (∀𝑥(𝑥 = 𝐴 → 𝜑) ↔ 𝜓)) | ||
| Theorem | bj-ceqsalgv 36855* | Version of bj-ceqsalg 36853 with a disjoint variable condition on 𝑥, 𝑉, removing dependency on df-sb 2065 and df-clab 2714. Prefer its use over bj-ceqsalg 36853 when sufficient (in particular when 𝑉 is substituted for V). (Contributed by BJ, 12-Oct-2019.) (Proof modification is discouraged.) |
| ⊢ Ⅎ𝑥𝜓 & ⊢ (𝑥 = 𝐴 → (𝜑 ↔ 𝜓)) ⇒ ⊢ (𝐴 ∈ 𝑉 → (∀𝑥(𝑥 = 𝐴 → 𝜑) ↔ 𝜓)) | ||
| Theorem | bj-ceqsalgvALT 36856* | Alternate proof of bj-ceqsalgv 36855. (Contributed by BJ, 12-Oct-2019.) (Proof modification is discouraged.) (New usage is discouraged.) |
| ⊢ Ⅎ𝑥𝜓 & ⊢ (𝑥 = 𝐴 → (𝜑 ↔ 𝜓)) ⇒ ⊢ (𝐴 ∈ 𝑉 → (∀𝑥(𝑥 = 𝐴 → 𝜑) ↔ 𝜓)) | ||
| Theorem | bj-ceqsal 36857* | Remove from ceqsal 3498 dependency on ax-ext 2707 (and on df-cleq 2727, df-v 3461, df-clab 2714, df-sb 2065). (Contributed by BJ, 12-Oct-2019.) (Proof modification is discouraged.) |
| ⊢ Ⅎ𝑥𝜓 & ⊢ 𝐴 ∈ V & ⊢ (𝑥 = 𝐴 → (𝜑 ↔ 𝜓)) ⇒ ⊢ (∀𝑥(𝑥 = 𝐴 → 𝜑) ↔ 𝜓) | ||
| Theorem | bj-ceqsalv 36858* | Remove from ceqsalv 3500 dependency on ax-ext 2707 (and on df-cleq 2727, df-v 3461, df-clab 2714, df-sb 2065). (Contributed by BJ, 12-Oct-2019.) (Proof modification is discouraged.) |
| ⊢ 𝐴 ∈ V & ⊢ (𝑥 = 𝐴 → (𝜑 ↔ 𝜓)) ⇒ ⊢ (∀𝑥(𝑥 = 𝐴 → 𝜑) ↔ 𝜓) | ||
| Theorem | bj-spcimdv 36859* | Remove from spcimdv 3572 dependency on ax-9 2118, ax-10 2141, ax-11 2157, ax-13 2376, ax-ext 2707, df-cleq 2727 (and df-nfc 2885, df-v 3461, df-or 848, df-tru 1543, df-nf 1784). For an even more economical version, see bj-spcimdvv 36860. (Contributed by BJ, 30-Nov-2020.) (Proof modification is discouraged.) |
| ⊢ (𝜑 → 𝐴 ∈ 𝐵) & ⊢ ((𝜑 ∧ 𝑥 = 𝐴) → (𝜓 → 𝜒)) ⇒ ⊢ (𝜑 → (∀𝑥𝜓 → 𝜒)) | ||
| Theorem | bj-spcimdvv 36860* | Remove from spcimdv 3572 dependency on ax-7 2007, ax-8 2110, ax-10 2141, ax-11 2157, ax-12 2177 ax-13 2376, ax-ext 2707, df-cleq 2727, df-clab 2714 (and df-nfc 2885, df-v 3461, df-or 848, df-tru 1543, df-nf 1784) 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 36859. (Contributed by BJ, 3-Nov-2021.) (Proof modification is discouraged.) |
| ⊢ (𝜑 → 𝐴 ∈ 𝐵) & ⊢ ((𝜑 ∧ 𝑥 = 𝐴) → (𝜓 → 𝜒)) ⇒ ⊢ (𝜑 → (∀𝑥𝜓 → 𝜒)) | ||
| Theorem | elelb 36861 | 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 36862 | 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 36863 | 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 2898). This could be proved from aecom 2431 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 2741 instead of equcomd 2018; removing dependency on ax-ext 2707 is possible: prove weak versions (i.e. replace classes with setvars) of drnfc1 2918, eleq2d 2820 (using elequ2 2123), nfcvf 2925, dvelimc 2924, dvelimdc 2923, nfcvf2 2926. (Proof modification is discouraged.) |
| ⊢ (Ⅎ𝑥𝑦 ↔ Ⅎ𝑦𝑥) | ||
Some useful theorems for dealing with substitutions: sbbi 2308, sbcbig 3817, sbcel1g 4391, sbcel2 4393, sbcel12 4386, sbceqg 4387, csbvarg 4409. | ||
| Theorem | bj-sbeqALT 36864* | Substitution in an equality (use the more general version bj-sbeq 36865 instead, without disjoint variable condition). (Contributed by BJ, 6-Oct-2018.) (New usage is discouraged.) (Proof modification is discouraged.) |
| ⊢ ([𝑦 / 𝑥]𝐴 = 𝐵 ↔ ⦋𝑦 / 𝑥⦌𝐴 = ⦋𝑦 / 𝑥⦌𝐵) | ||
| Theorem | bj-sbeq 36865 | Distribute proper substitution through an equality relation. (See sbceqg 4387). (Contributed by BJ, 6-Oct-2018.) |
| ⊢ ([𝑦 / 𝑥]𝐴 = 𝐵 ↔ ⦋𝑦 / 𝑥⦌𝐴 = ⦋𝑦 / 𝑥⦌𝐵) | ||
| Theorem | bj-sbceqgALT 36866 | Distribute proper substitution through an equality relation. Alternate proof of sbceqg 4387. (Contributed by BJ, 6-Oct-2018.) Proof modification is discouraged to avoid using sbceqg 4387, but the Metamath program "MM-PA> MINIMIZE_WITH * / EXCEPT sbceqg" command is ok. (Proof modification is discouraged.) (New usage is discouraged.) |
| ⊢ (𝐴 ∈ 𝑉 → ([𝐴 / 𝑥]𝐵 = 𝐶 ↔ ⦋𝐴 / 𝑥⦌𝐵 = ⦋𝐴 / 𝑥⦌𝐶)) | ||
| Theorem | bj-csbsnlem 36867* | Lemma for bj-csbsn 36868 (in this lemma, 𝑥 cannot occur in 𝐴). (Contributed by BJ, 6-Oct-2018.) (New usage is discouraged.) |
| ⊢ ⦋𝐴 / 𝑥⦌{𝑥} = {𝐴} | ||
| Theorem | bj-csbsn 36868 | Substitution in a singleton. (Contributed by BJ, 6-Oct-2018.) |
| ⊢ ⦋𝐴 / 𝑥⦌{𝑥} = {𝐴} | ||
| Theorem | bj-sbel1 36869* | Version of sbcel1g 4391 when substituting a set. (Note: one could have a corresponding version of sbcel12 4386 when substituting a set, but the point here is that the antecedent of sbcel1g 4391 is not needed when substituting a set.) (Contributed by BJ, 6-Oct-2018.) |
| ⊢ ([𝑦 / 𝑥]𝐴 ∈ 𝐵 ↔ ⦋𝑦 / 𝑥⦌𝐴 ∈ 𝐵) | ||
| Theorem | bj-abv 36870 | 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 36871 | Alternate version of bj-abv 36870; shorter but uses ax-8 2110. (Contributed by BJ, 24-Jul-2019.) (Proof modification is discouraged.) (New usage is discouraged.) |
| ⊢ (∀𝑥𝜑 → {𝑥 ∣ 𝜑} = V) | ||
| Theorem | bj-ab0 36872 | The class of sets verifying a falsity is the empty set (closed form of abf 4381). (Contributed by BJ, 24-Jul-2019.) (Proof modification is discouraged.) |
| ⊢ (∀𝑥 ¬ 𝜑 → {𝑥 ∣ 𝜑} = ∅) | ||
| Theorem | bj-abf 36873 | Shorter proof of abf 4381 (which should be kept as abfALT). (Contributed by BJ, 24-Jul-2019.) (Proof modification is discouraged.) |
| ⊢ ¬ 𝜑 ⇒ ⊢ {𝑥 ∣ 𝜑} = ∅ | ||
| Theorem | bj-csbprc 36874 | More direct proof of csbprc 4384 (fewer essential steps). (Contributed by BJ, 24-Jul-2019.) (Proof modification is discouraged.) |
| ⊢ (¬ 𝐴 ∈ V → ⦋𝐴 / 𝑥⦌𝐵 = ∅) | ||
| Theorem | bj-exlimvmpi 36875* | A Fol lemma (exlimiv 1930 followed by mpi 20). (Contributed by BJ, 2-Jul-2022.) (Proof modification is discouraged.) |
| ⊢ (𝜒 → (𝜑 → 𝜓)) & ⊢ 𝜑 ⇒ ⊢ (∃𝑥𝜒 → 𝜓) | ||
| Theorem | bj-exlimmpi 36876 | Lemma for bj-vtoclg1f1 36881 (an instance of this lemma is a version of bj-vtoclg1f1 36881 where 𝑥 and 𝑦 are identified). (Contributed by BJ, 30-Apr-2019.) (Proof modification is discouraged.) |
| ⊢ Ⅎ𝑥𝜓 & ⊢ (𝜒 → (𝜑 → 𝜓)) & ⊢ 𝜑 ⇒ ⊢ (∃𝑥𝜒 → 𝜓) | ||
| Theorem | bj-exlimmpbi 36877 | Lemma for theorems of the vtoclg 3533 family. (Contributed by BJ, 3-Oct-2019.) (Proof modification is discouraged.) |
| ⊢ Ⅎ𝑥𝜓 & ⊢ (𝜒 → (𝜑 ↔ 𝜓)) & ⊢ 𝜑 ⇒ ⊢ (∃𝑥𝜒 → 𝜓) | ||
| Theorem | bj-exlimmpbir 36878 | Lemma for theorems of the vtoclg 3533 family. (Contributed by BJ, 3-Oct-2019.) (Proof modification is discouraged.) |
| ⊢ Ⅎ𝑥𝜑 & ⊢ (𝜒 → (𝜑 ↔ 𝜓)) & ⊢ 𝜓 ⇒ ⊢ (∃𝑥𝜒 → 𝜑) | ||
| Theorem | bj-vtoclf 36879* | Remove dependency on ax-ext 2707, df-clab 2714 and df-cleq 2727 (and df-sb 2065 and df-v 3461) from vtoclf 3543. (Contributed by BJ, 6-Oct-2019.) (Proof modification is discouraged.) |
| ⊢ Ⅎ𝑥𝜓 & ⊢ 𝐴 ∈ 𝑉 & ⊢ (𝑥 = 𝐴 → (𝜑 ↔ 𝜓)) & ⊢ 𝜑 ⇒ ⊢ 𝜓 | ||
| Theorem | bj-vtocl 36880* | Remove dependency on ax-ext 2707, df-clab 2714 and df-cleq 2727 (and df-sb 2065 and df-v 3461) from vtocl 3537. (Contributed by BJ, 6-Oct-2019.) (Proof modification is discouraged.) |
| ⊢ 𝐴 ∈ 𝑉 & ⊢ (𝑥 = 𝐴 → (𝜑 ↔ 𝜓)) & ⊢ 𝜑 ⇒ ⊢ 𝜓 | ||
| Theorem | bj-vtoclg1f1 36881* | The FOL content of vtoclg1f 3549 (hence not using ax-ext 2707, df-cleq 2727, df-nfc 2885, df-v 3461). 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 2707; as a byproduct, this dispenses with ax-11 2157 and ax-13 2376). (Contributed by BJ, 30-Apr-2019.) (Proof modification is discouraged.) |
| ⊢ Ⅎ𝑥𝜓 & ⊢ (𝑥 = 𝐴 → (𝜑 → 𝜓)) & ⊢ 𝜑 ⇒ ⊢ (∃𝑦 𝑦 = 𝐴 → 𝜓) | ||
| Theorem | bj-vtoclg1f 36882* | Reprove vtoclg1f 3549 from bj-vtoclg1f1 36881. This removes dependency on ax-ext 2707, df-cleq 2727 and df-v 3461. Use bj-vtoclg1fv 36883 instead when sufficient (in particular when 𝑉 is substituted for V). (Contributed by BJ, 14-Sep-2019.) (Proof modification is discouraged.) |
| ⊢ Ⅎ𝑥𝜓 & ⊢ (𝑥 = 𝐴 → (𝜑 → 𝜓)) & ⊢ 𝜑 ⇒ ⊢ (𝐴 ∈ 𝑉 → 𝜓) | ||
| Theorem | bj-vtoclg1fv 36883* | Version of bj-vtoclg1f 36882 with a disjoint variable condition on 𝑥, 𝑉. This removes dependency on df-sb 2065 and df-clab 2714. Prefer its use over bj-vtoclg1f 36882 when sufficient (in particular when 𝑉 is substituted for V). (Contributed by BJ, 14-Sep-2019.) (Proof modification is discouraged.) |
| ⊢ Ⅎ𝑥𝜓 & ⊢ (𝑥 = 𝐴 → (𝜑 → 𝜓)) & ⊢ 𝜑 ⇒ ⊢ (𝐴 ∈ 𝑉 → 𝜓) | ||
| Theorem | bj-vtoclg 36884* | A version of vtoclg 3533 with an additional disjoint variable condition (which is removable if we allow use of df-clab 2714, see bj-vtoclg1f 36882), which requires fewer axioms (i.e., removes dependency on ax-6 1967, ax-7 2007, ax-9 2118, ax-12 2177, ax-ext 2707, df-clab 2714, df-cleq 2727, df-v 3461). (Contributed by BJ, 2-Jul-2022.) (Proof modification is discouraged.) |
| ⊢ (𝑥 = 𝐴 → (𝜑 → 𝜓)) & ⊢ 𝜑 ⇒ ⊢ (𝐴 ∈ 𝑉 → 𝜓) | ||
| Theorem | bj-rabeqbid 36885 | Version of rabeqbidv 3434 with two disjoint variable conditions removed and the third replaced by a nonfreeness hypothesis. (Contributed by BJ, 27-Apr-2019.) |
| ⊢ Ⅎ𝑥𝜑 & ⊢ (𝜑 → 𝐴 = 𝐵) & ⊢ (𝜑 → (𝜓 ↔ 𝜒)) ⇒ ⊢ (𝜑 → {𝑥 ∈ 𝐴 ∣ 𝜓} = {𝑥 ∈ 𝐵 ∣ 𝜒}) | ||
| Theorem | bj-seex 36886* | Version of seex 5613 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 36887* | Version of df-nfc 2885 with a disjoint variable condition replaced with a nonfreeness hypothesis. (Contributed by BJ, 2-May-2019.) |
| ⊢ Ⅎ𝑦𝐴 ⇒ ⊢ (Ⅎ𝑥𝐴 ↔ ∀𝑦Ⅎ𝑥 𝑦 ∈ 𝐴) | ||
| Theorem | bj-zfauscl 36888* |
General version of zfauscl 5268.
Remark: the comment in zfauscl 5268 is misleading: the essential use of ax-ext 2707 is the one via eleq2 2823 and not the one via vtocl 3537, since the latter can be proved without ax-ext 2707 (see bj-vtoclg 36884). (Contributed by BJ, 2-Jul-2022.) (Proof modification is discouraged.) |
| ⊢ (𝐴 ∈ 𝑉 → ∃𝑦∀𝑥(𝑥 ∈ 𝑦 ↔ (𝑥 ∈ 𝐴 ∧ 𝜑))) | ||
A few additional theorems on class abstractions and restricted class abstractions. | ||
| Theorem | bj-elabd2ALT 36889* | Alternate proof of elabd2 3649 bypassing elab6g 3648 (and using sbiedvw 2095 instead of the ∀𝑥(𝑥 = 𝑦 → 𝜓) idiom). (Contributed by BJ, 16-Oct-2024.) (Proof modification is discouraged.) (New usage is discouraged.) |
| ⊢ (𝜑 → 𝐴 ∈ 𝑉) & ⊢ (𝜑 → 𝐵 = {𝑥 ∣ 𝜓}) & ⊢ ((𝜑 ∧ 𝑥 = 𝐴) → (𝜓 ↔ 𝜒)) ⇒ ⊢ (𝜑 → (𝐴 ∈ 𝐵 ↔ 𝜒)) | ||
| Theorem | bj-unrab 36890* | Generalization of unrab 4290. Equality need not hold. (Contributed by BJ, 21-Apr-2019.) |
| ⊢ ({𝑥 ∈ 𝐴 ∣ 𝜑} ∪ {𝑥 ∈ 𝐵 ∣ 𝜓}) ⊆ {𝑥 ∈ (𝐴 ∪ 𝐵) ∣ (𝜑 ∨ 𝜓)} | ||
| Theorem | bj-inrab 36891 | Generalization of inrab 4291. (Contributed by BJ, 21-Apr-2019.) |
| ⊢ ({𝑥 ∈ 𝐴 ∣ 𝜑} ∩ {𝑥 ∈ 𝐵 ∣ 𝜓}) = {𝑥 ∈ (𝐴 ∩ 𝐵) ∣ (𝜑 ∧ 𝜓)} | ||
| Theorem | bj-inrab2 36892 | Shorter proof of inrab 4291. (Contributed by BJ, 21-Apr-2019.) (Proof modification is discouraged.) |
| ⊢ ({𝑥 ∈ 𝐴 ∣ 𝜑} ∩ {𝑥 ∈ 𝐴 ∣ 𝜓}) = {𝑥 ∈ 𝐴 ∣ (𝜑 ∧ 𝜓)} | ||
| Theorem | bj-inrab3 36893* | Generalization of dfrab3ss 4298, which it may shorten. (Contributed by BJ, 21-Apr-2019.) (Revised by OpenAI, 7-Jul-2020.) |
| ⊢ (𝐴 ∩ {𝑥 ∈ 𝐵 ∣ 𝜑}) = ({𝑥 ∈ 𝐴 ∣ 𝜑} ∩ 𝐵) | ||
| Theorem | bj-rabtr 36894* | Restricted class abstraction with true formula. (Contributed by BJ, 22-Apr-2019.) |
| ⊢ {𝑥 ∈ 𝐴 ∣ ⊤} = 𝐴 | ||
| Theorem | bj-rabtrALT 36895* | Alternate proof of bj-rabtr 36894. (Contributed by BJ, 22-Apr-2019.) (Proof modification is discouraged.) (New usage is discouraged.) |
| ⊢ {𝑥 ∈ 𝐴 ∣ ⊤} = 𝐴 | ||
| Theorem | bj-rabtrAUTO 36896* | Proof of bj-rabtr 36894 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 36897 | Syntax for generalized class abstractions. |
| class {𝐴 ∣ 𝑥 ∣ 𝜑} | ||
| Definition | df-bj-gab 36898* | 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 36899 | Inclusion of generalized class abstractions. (Contributed by BJ, 4-Oct-2024.) |
| ⊢ (∀𝑥(𝐴 = 𝐵 ∧ (𝜑 → 𝜓)) → {𝐴 ∣ 𝑥 ∣ 𝜑} ⊆ {𝐵 ∣ 𝑥 ∣ 𝜓}) | ||
| Theorem | bj-gabssd 36900 | Inclusion of generalized class abstractions. Deduction form. (Contributed by BJ, 4-Oct-2024.) |
| ⊢ (𝜑 → ∀𝑥𝜑) & ⊢ (𝜑 → 𝐴 = 𝐵) & ⊢ (𝜑 → (𝜓 → 𝜒)) ⇒ ⊢ (𝜑 → {𝐴 ∣ 𝑥 ∣ 𝜓} ⊆ {𝐵 ∣ 𝑥 ∣ 𝜒}) | ||
| < Previous Next > |
| Copyright terms: Public domain | < Previous Next > |