| Metamath
Proof Explorer Theorem List (p. 370 of 500) | < 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-30900) |
(30901-32423) |
(32424-49930) |
| Type | Label | Description |
|---|---|---|
| Statement | ||
| Theorem | ax11-pm2 36901* | Proof of ax-11 2162 from the standard axioms of predicate calculus, similar to PM's proof of alcom 2164 (PM*11.2). This proof requires that 𝑥 and 𝑦 be distinct. Axiom ax-11 2162 is used in the proof only through nfal 2326, nfsb 2525, sbal 2174, sb8 2519. See also ax11-pm 36897. (Contributed by BJ, 15-Sep-2018.) (Proof modification is discouraged.) |
| ⊢ (∀𝑥∀𝑦𝜑 → ∀𝑦∀𝑥𝜑) | ||
| Theorem | bj-sbsb 36902 | Biconditional showing two possible (dual) definitions of substitution df-sb 2068 not using dummy variables. (Contributed by BJ, 19-Mar-2021.) |
| ⊢ (((𝑥 = 𝑦 → 𝜑) ∧ ∃𝑥(𝑥 = 𝑦 ∧ 𝜑)) ↔ (∀𝑥(𝑥 = 𝑦 → 𝜑) ∨ (𝑥 = 𝑦 ∧ 𝜑))) | ||
| Theorem | bj-dfsb2 36903 | Alternate (dual) definition of substitution df-sb 2068 not using dummy variables. (Contributed by BJ, 19-Mar-2021.) |
| ⊢ ([𝑦 / 𝑥]𝜑 ↔ (∀𝑥(𝑥 = 𝑦 → 𝜑) ∨ (𝑥 = 𝑦 ∧ 𝜑))) | ||
| Theorem | bj-sbf3 36904 | Substitution has no effect on a bound variable (existential quantifier case); see sbf2 2276. (Contributed by BJ, 2-May-2019.) |
| ⊢ ([𝑦 / 𝑥]∃𝑥𝜑 ↔ ∃𝑥𝜑) | ||
| Theorem | bj-sbf4 36905 | Substitution has no effect on a bound variable (nonfreeness case); see sbf2 2276. (Contributed by BJ, 2-May-2019.) |
| ⊢ ([𝑦 / 𝑥]Ⅎ𝑥𝜑 ↔ Ⅎ𝑥𝜑) | ||
| Theorem | bj-eu3f 36906* | Version of eu3v 2567 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 2567. (Contributed by NM, 8-Jul-1994.) (Proof shortened by BJ, 31-May-2019.) |
| ⊢ Ⅎ𝑦𝜑 ⇒ ⊢ (∃!𝑥𝜑 ↔ (∃𝑥𝜑 ∧ ∃𝑦∀𝑥(𝜑 → 𝑥 = 𝑦))) | ||
Miscellaneous theorems of first-order logic. | ||
| Theorem | bj-sblem1 36907* | Lemma for substitution. (Contributed by BJ, 23-Jul-2023.) |
| ⊢ (∀𝑥(𝜑 → (𝜓 → 𝜒)) → (∀𝑥(𝜑 → 𝜓) → (∃𝑥𝜑 → 𝜒))) | ||
| Theorem | bj-sblem2 36908* | Lemma for substitution. (Contributed by BJ, 23-Jul-2023.) |
| ⊢ (∀𝑥(𝜑 → (𝜒 → 𝜓)) → ((∃𝑥𝜑 → 𝜒) → ∀𝑥(𝜑 → 𝜓))) | ||
| Theorem | bj-sblem 36909* | Lemma for substitution. (Contributed by BJ, 23-Jul-2023.) |
| ⊢ (∀𝑥(𝜑 → (𝜓 ↔ 𝜒)) → (∀𝑥(𝜑 → 𝜓) ↔ (∃𝑥𝜑 → 𝜒))) | ||
| Theorem | bj-sbievw1 36910* | Lemma for substitution. (Contributed by BJ, 23-Jul-2023.) |
| ⊢ ([𝑦 / 𝑥](𝜑 → 𝜓) → ([𝑦 / 𝑥]𝜑 → 𝜓)) | ||
| Theorem | bj-sbievw2 36911* | Lemma for substitution. (Contributed by BJ, 23-Jul-2023.) |
| ⊢ ([𝑦 / 𝑥](𝜓 → 𝜑) → (𝜓 → [𝑦 / 𝑥]𝜑)) | ||
| Theorem | bj-sbievw 36912* | Lemma for substitution. Closed form of equsalvw 2005 and sbievw 2098. (Contributed by BJ, 23-Jul-2023.) |
| ⊢ ([𝑦 / 𝑥](𝜑 ↔ 𝜓) → ([𝑦 / 𝑥]𝜑 ↔ 𝜓)) | ||
| Theorem | bj-sbievv 36913 | Version of sbie 2504 with a second nonfreeness hypothesis and shorter proof. (Contributed by BJ, 18-Jul-2023.) (Proof modification is discouraged.) |
| ⊢ Ⅎ𝑥𝜓 & ⊢ Ⅎ𝑦𝜑 & ⊢ (𝑥 = 𝑦 → (𝜑 ↔ 𝜓)) ⇒ ⊢ ([𝑦 / 𝑥]𝜑 ↔ 𝜓) | ||
| Theorem | bj-moeub 36914 | Uniqueness is equivalent to existence being equivalent to unique existence. (Contributed by BJ, 14-Oct-2022.) |
| ⊢ (∃*𝑥𝜑 ↔ (∃𝑥𝜑 ↔ ∃!𝑥𝜑)) | ||
| Theorem | bj-sbidmOLD 36915 | Obsolete proof of sbidm 2512 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 36916* |
Deduction form of dvelim 2453 with disjoint variable conditions. Uncurried
(imported) form of bj-dvelimdv1 36917. 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 1915 can be replaced with nfal 2326 followed by nfn 1858. Remark: nfald 2331 uses ax-11 2162; it might be possible to inline and use ax11w 2135 instead, but there is still a use via 19.12 2330 anyway. (Contributed by BJ, 20-Oct-2021.) (Proof modification is discouraged.) |
| ⊢ (𝜑 → Ⅎ𝑥𝜒) & ⊢ (𝑧 = 𝑦 → (𝜒 ↔ 𝜓)) ⇒ ⊢ ((𝜑 ∧ ¬ ∀𝑥 𝑥 = 𝑦) → Ⅎ𝑥𝜓) | ||
| Theorem | bj-dvelimdv1 36917* | Curried (exported) form of bj-dvelimdv 36916 (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 36918* | A version of dvelim 2453 using the "nonfree" idiom. (Contributed by BJ, 20-Oct-2021.) (Proof modification is discouraged.) |
| ⊢ Ⅎ𝑥𝜓 & ⊢ (𝑧 = 𝑦 → (𝜓 ↔ 𝜑)) ⇒ ⊢ (¬ ∀𝑥 𝑥 = 𝑦 → Ⅎ𝑥𝜑) | ||
| Theorem | bj-nfeel2 36919* | Nonfreeness in a membership statement. (Contributed by BJ, 20-Oct-2021.) (Proof modification is discouraged.) |
| ⊢ (¬ ∀𝑥 𝑥 = 𝑦 → Ⅎ𝑥 𝑦 ∈ 𝑧) | ||
| Theorem | bj-axc14nf 36920 | Proof of a version of axc14 2465 using the "nonfree" idiom. (Contributed by BJ, 20-Oct-2021.) (Proof modification is discouraged.) |
| ⊢ (¬ ∀𝑧 𝑧 = 𝑥 → (¬ ∀𝑧 𝑧 = 𝑦 → Ⅎ𝑧 𝑥 ∈ 𝑦)) | ||
| Theorem | bj-axc14 36921 | Alternate proof of axc14 2465 (even when inlining the above results, this gives a shorter proof). (Contributed by BJ, 20-Oct-2021.) (Proof modification is discouraged.) |
| ⊢ (¬ ∀𝑧 𝑧 = 𝑥 → (¬ ∀𝑧 𝑧 = 𝑦 → (𝑥 ∈ 𝑦 → ∀𝑧 𝑥 ∈ 𝑦))) | ||
| Theorem | mobidvALT 36922* | Alternate proof of mobidv 2546 directly from its analogues albidv 1921 and exbidv 1922, using deduction style. Note the proof structure, similar to mobi 2544. (Contributed by Mario Carneiro, 7-Oct-2016.) Reduce axiom dependencies and shorten proof. Remove dependency on ax-6 1968, ax-7 2009, ax-12 2182 by adapting proof of mobid 2547. (Revised by BJ, 26-Sep-2022.) (Proof modification is discouraged.) (New usage is discouraged.) |
| ⊢ (𝜑 → (𝜓 ↔ 𝜒)) ⇒ ⊢ (𝜑 → (∃*𝑥𝜓 ↔ ∃*𝑥𝜒)) | ||
| Theorem | sbn1ALT 36923 | Alternate proof of sbn1 2112, 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 2705, df-clab 2712, df-cleq 2725, df-clel 2808 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 2705, df-clab 2712, df-cleq 2725, df-clel 2808 }) 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 36931, eliminable-abeqv 36932, eliminable-abeqab 36933, eliminable-velab 36930, eliminable-abelv 36934, eliminable-abelab 36935 respectively, which are all proved from {FOL, ax-ext 2705, df-clab 2712, df-cleq 2725, df-clel 2808 }. (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 2712, dfcleq 2726 (proved from {FOL, ax-ext 2705, df-cleq 2725 }), and dfclel 2809 (proved from {FOL, df-clel 2808 }). 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 36925, eliminable2b 36926 and eliminable3a 36928, 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 1540, 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 2712 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 2712, ax-ext 2705 and df-cleq 2725 are sufficient (over FOL) to eliminate class terms. To prove that { df-clab 2712, df-cleq 2725, df-clel 2808 } provides a definitional extension of {FOL, ax-ext 2705 }, 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 2712, df-cleq 2725, df-clel 2808 }. 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 2705 }. 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 2712, df-cleq 2725, df-clel 2808 }. It involves a careful case study on the structure of the proof tree. | ||
| Theorem | eliminable1 36924 | 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 36925* | 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 36926* | 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 36927* | 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 36928* | 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 36929* | 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 36930 | 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 36931* | 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 36932* | 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 36933* | 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 36934* | 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 36935* | 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 2705. One could move all theorems from cab 2711 to df-clel 2808 (except for dfcleq 2726 and cvjust 2727) 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 2725. Note that without ax-ext 2705, the $a-statements df-clab 2712, df-cleq 2725, and df-clel 2808 are no longer eliminable (see previous section) (but PROBABLY df-clab 2712 is still conservative , while df-cleq 2725 and df-clel 2808 are not). This is not a reason not to study what is provable with them but without ax-ext 2705, 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 2113, wel 2114, ax-8 2115, ax-9 2123). Remark: the weakening of eleq1 2821 / eleq2 2822 to eleq1w 2816 / eleq2w 2817 can also be done with eleq1i 2824, eqeltri 2829, eqeltrri 2830, eleq1a 2828, eleq1d 2818, eqeltrd 2833, eqeltrrd 2834, eqneltrd 2853, eqneltrrd 2854, nelneq 2857. Remark: possibility to remove dependency on ax-10 2146, ax-11 2162, ax-13 2374 from nfcri 2887 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 2908. | ||
| Theorem | bj-denoteslem 36936* |
Duplicate of issettru 2811 and bj-issettruALTV 36938.
Lemma for bj-denotesALTV 36937. (Contributed by BJ, 24-Apr-2024.) (Proof modification is discouraged.) |
| ⊢ (∃𝑥 𝑥 = 𝐴 ↔ 𝐴 ∈ {𝑦 ∣ ⊤}) | ||
| Theorem | bj-denotesALTV 36937* |
Moved to main as iseqsetv-clel 2812 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 2038, and eqeq1 2737, requires the core axioms and { ax-9 2123, ax-ext 2705, df-cleq 2725 } whereas this proof requires the core axioms and { ax-8 2115, df-clab 2712, df-clel 2808 }. Theorem bj-issetwt 36940 proves that "existing" is equivalent to being a member of a class abstraction. It also requires, with the present proof, { ax-8 2115, df-clab 2712, df-clel 2808 } (whereas with the shorter proof from cbvexvw 2038 and eqeq1 2737 it would require { ax-8 2115, ax-9 2123, ax-ext 2705, df-clab 2712, df-cleq 2725, df-clel 2808 }). That every class is equal to a class abstraction is proved by abid1 2869, which requires { ax-8 2115, ax-9 2123, ax-ext 2705, df-clab 2712, df-cleq 2725, df-clel 2808 }. Note that there is no disjoint variable condition on 𝑥, 𝑦 but the theorem does not depend on ax-13 2374. Actually, the proof depends only on the logical axioms ax-1 6 through ax-7 2009 and sp 2188. 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 2705 and df-cleq 2725 (e.g., eqid 2733 and eqeq1 2737). In particular, one cannot even prove ⊢ ∃𝑥𝑥 = 𝐴 ⇒ ⊢ 𝐴 = 𝐴 without ax-ext 2705 and df-cleq 2725. (Contributed by BJ, 29-Apr-2019.) (Proof modification is discouraged.) |
| ⊢ (∃𝑥 𝑥 = 𝐴 ↔ ∃𝑦 𝑦 = 𝐴) | ||
| Theorem | bj-issettruALTV 36938* |
Moved to main as issettru 2811 and kept for the comments.
Weak version of isset 3451 without ax-ext 2705. (Contributed by BJ, 24-Apr-2024.) (Proof modification is discouraged.) |
| ⊢ (∃𝑥 𝑥 = 𝐴 ↔ 𝐴 ∈ {𝑦 ∣ ⊤}) | ||
| Theorem | bj-elabtru 36939 | This is as close as we can get to proving extensionality for "the" "universal" class without ax-ext 2705. (Contributed by BJ, 24-Apr-2024.) (Proof modification is discouraged.) |
| ⊢ (𝐴 ∈ {𝑥 ∣ ⊤} ↔ 𝐴 ∈ {𝑦 ∣ ⊤}) | ||
| Theorem | bj-issetwt 36940* | Closed form of bj-issetw 36941. (Contributed by BJ, 29-Apr-2019.) (Proof modification is discouraged.) |
| ⊢ (∀𝑥𝜑 → (𝐴 ∈ {𝑥 ∣ 𝜑} ↔ ∃𝑦 𝑦 = 𝐴)) | ||
| Theorem | bj-issetw 36941* | The closest one can get to isset 3451 without using ax-ext 2705. See also vexw 2717. Note that the only disjoint variable condition is between 𝑦 and 𝐴. From there, one can prove isset 3451 using eleq2i 2825 (which requires ax-ext 2705 and df-cleq 2725). (Contributed by BJ, 29-Apr-2019.) (Proof modification is discouraged.) |
| ⊢ 𝜑 ⇒ ⊢ (𝐴 ∈ {𝑥 ∣ 𝜑} ↔ ∃𝑦 𝑦 = 𝐴) | ||
| Theorem | bj-issetiv 36942* | Version of bj-isseti 36943 with a disjoint variable condition on 𝑥, 𝑉. The hypothesis uses 𝑉 instead of V for extra generality. This is indeed more general than isseti 3455 as long as elex 3458 is not available (and the non-dependence of bj-issetiv 36942 on special properties of the universal class V is obvious). Prefer its use over bj-isseti 36943 when sufficient (in particular when 𝑉 is substituted for V). (Contributed by BJ, 14-Sep-2019.) (Proof modification is discouraged.) |
| ⊢ 𝐴 ∈ 𝑉 ⇒ ⊢ ∃𝑥 𝑥 = 𝐴 | ||
| Theorem | bj-isseti 36943* | Version of isseti 3455 with a class variable 𝑉 in the hypothesis instead of V for extra generality. This is indeed more general than isseti 3455 as long as elex 3458 is not available (and the non-dependence of bj-isseti 36943 on special properties of the universal class V is obvious). Use bj-issetiv 36942 instead when sufficient (in particular when 𝑉 is substituted for V). (Contributed by BJ, 13-Jun-2019.) (Proof modification is discouraged.) |
| ⊢ 𝐴 ∈ 𝑉 ⇒ ⊢ ∃𝑥 𝑥 = 𝐴 | ||
| Theorem | bj-ralvw 36944 | A weak version of ralv 3464 not using ax-ext 2705 (nor df-cleq 2725, df-clel 2808, df-v 3439), and only core FOL axioms. See also bj-rexvw 36945. The analogues for reuv 3466 and rmov 3467 are not proved. (Contributed by BJ, 16-Jun-2019.) (Proof modification is discouraged.) |
| ⊢ 𝜓 ⇒ ⊢ (∀𝑥 ∈ {𝑦 ∣ 𝜓}𝜑 ↔ ∀𝑥𝜑) | ||
| Theorem | bj-rexvw 36945 | A weak version of rexv 3465 not using ax-ext 2705 (nor df-cleq 2725, df-clel 2808, df-v 3439), and only core FOL axioms. See also bj-ralvw 36944. (Contributed by BJ, 16-Jun-2019.) (Proof modification is discouraged.) |
| ⊢ 𝜓 ⇒ ⊢ (∃𝑥 ∈ {𝑦 ∣ 𝜓}𝜑 ↔ ∃𝑥𝜑) | ||
| Theorem | bj-rababw 36946 | A weak version of rabab 3468 not using df-clel 2808 nor df-v 3439 (but requiring ax-ext 2705) nor ax-12 2182. (Contributed by BJ, 16-Jun-2019.) (Proof modification is discouraged.) |
| ⊢ 𝜓 ⇒ ⊢ {𝑥 ∈ {𝑦 ∣ 𝜓} ∣ 𝜑} = {𝑥 ∣ 𝜑} | ||
| Theorem | bj-rexcom4bv 36947* | Version of rexcom4b 3469 and bj-rexcom4b 36948 with a disjoint variable condition on 𝑥, 𝑉, hence removing dependency on df-sb 2068 and df-clab 2712 (so that it depends on df-clel 2808 and df-rex 3058 only on top of first-order logic). Prefer its use over bj-rexcom4b 36948 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 36948* | Remove from rexcom4b 3469 dependency on ax-ext 2705 and ax-13 2374 (and on df-or 848, df-cleq 2725, df-nfc 2882, df-v 3439). The hypothesis uses 𝑉 instead of V (see bj-isseti 36943 for the motivation). Use bj-rexcom4bv 36947 instead when sufficient (in particular when 𝑉 is substituted for V). (Contributed by BJ, 16-Jun-2019.) (Proof modification is discouraged.) |
| ⊢ 𝐵 ∈ 𝑉 ⇒ ⊢ (∃𝑥∃𝑦 ∈ 𝐴 (𝜑 ∧ 𝑥 = 𝐵) ↔ ∃𝑦 ∈ 𝐴 𝜑) | ||
| Theorem | bj-ceqsalt0 36949 | The FOL content of ceqsalt 3471. Lemma for bj-ceqsalt 36951 and bj-ceqsaltv 36952. (Contributed by BJ, 26-Sep-2019.) (Proof modification is discouraged.) |
| ⊢ ((Ⅎ𝑥𝜓 ∧ ∀𝑥(𝜃 → (𝜑 ↔ 𝜓)) ∧ ∃𝑥𝜃) → (∀𝑥(𝜃 → 𝜑) ↔ 𝜓)) | ||
| Theorem | bj-ceqsalt1 36950 | The FOL content of ceqsalt 3471. Lemma for bj-ceqsalt 36951 and bj-ceqsaltv 36952. TODO: consider removing if it does not add anything to bj-ceqsalt0 36949. (Contributed by BJ, 26-Sep-2019.) (Proof modification is discouraged.) |
| ⊢ (𝜃 → ∃𝑥𝜒) ⇒ ⊢ ((Ⅎ𝑥𝜓 ∧ ∀𝑥(𝜒 → (𝜑 ↔ 𝜓)) ∧ 𝜃) → (∀𝑥(𝜒 → 𝜑) ↔ 𝜓)) | ||
| Theorem | bj-ceqsalt 36951* | Remove from ceqsalt 3471 dependency on ax-ext 2705 (and on df-cleq 2725 and df-v 3439). Note: this is not doable with ceqsralt 3472 (or ceqsralv 3478), which uses eleq1 2821, but the same dependence removal is possible for ceqsalg 3473, ceqsal 3475, ceqsalv 3477, cgsexg 3482, cgsex2g 3483, cgsex4g 3484, ceqsex 3486, ceqsexv 3487, ceqsex2 3490, ceqsex2v 3491, ceqsex3v 3492, ceqsex4v 3493, ceqsex6v 3494, ceqsex8v 3495, gencbvex 3496 (after changing 𝐴 = 𝑦 to 𝑦 = 𝐴), gencbvex2 3497, gencbval 3498, vtoclgft 3506 (it uses Ⅎ, whose justification nfcjust 2881 does not use ax-ext 2705) and several other vtocl* theorems (see for instance bj-vtoclg1f 36983). See also bj-ceqsaltv 36952. (Contributed by BJ, 16-Jun-2019.) (Proof modification is discouraged.) |
| ⊢ ((Ⅎ𝑥𝜓 ∧ ∀𝑥(𝑥 = 𝐴 → (𝜑 ↔ 𝜓)) ∧ 𝐴 ∈ 𝑉) → (∀𝑥(𝑥 = 𝐴 → 𝜑) ↔ 𝜓)) | ||
| Theorem | bj-ceqsaltv 36952* | Version of bj-ceqsalt 36951 with a disjoint variable condition on 𝑥, 𝑉, removing dependency on df-sb 2068 and df-clab 2712. Prefer its use over bj-ceqsalt 36951 when sufficient (in particular when 𝑉 is substituted for V). (Contributed by BJ, 16-Jun-2019.) (Proof modification is discouraged.) |
| ⊢ ((Ⅎ𝑥𝜓 ∧ ∀𝑥(𝑥 = 𝐴 → (𝜑 ↔ 𝜓)) ∧ 𝐴 ∈ 𝑉) → (∀𝑥(𝑥 = 𝐴 → 𝜑) ↔ 𝜓)) | ||
| Theorem | bj-ceqsalg0 36953 | The FOL content of ceqsalg 3473. (Contributed by BJ, 12-Oct-2019.) (Proof modification is discouraged.) |
| ⊢ Ⅎ𝑥𝜓 & ⊢ (𝜒 → (𝜑 ↔ 𝜓)) ⇒ ⊢ (∃𝑥𝜒 → (∀𝑥(𝜒 → 𝜑) ↔ 𝜓)) | ||
| Theorem | bj-ceqsalg 36954* | Remove from ceqsalg 3473 dependency on ax-ext 2705 (and on df-cleq 2725 and df-v 3439). See also bj-ceqsalgv 36956. (Contributed by BJ, 12-Oct-2019.) (Proof modification is discouraged.) |
| ⊢ Ⅎ𝑥𝜓 & ⊢ (𝑥 = 𝐴 → (𝜑 ↔ 𝜓)) ⇒ ⊢ (𝐴 ∈ 𝑉 → (∀𝑥(𝑥 = 𝐴 → 𝜑) ↔ 𝜓)) | ||
| Theorem | bj-ceqsalgALT 36955* | Alternate proof of bj-ceqsalg 36954. (Contributed by BJ, 12-Oct-2019.) (Proof modification is discouraged.) (New usage is discouraged.) |
| ⊢ Ⅎ𝑥𝜓 & ⊢ (𝑥 = 𝐴 → (𝜑 ↔ 𝜓)) ⇒ ⊢ (𝐴 ∈ 𝑉 → (∀𝑥(𝑥 = 𝐴 → 𝜑) ↔ 𝜓)) | ||
| Theorem | bj-ceqsalgv 36956* | Version of bj-ceqsalg 36954 with a disjoint variable condition on 𝑥, 𝑉, removing dependency on df-sb 2068 and df-clab 2712. Prefer its use over bj-ceqsalg 36954 when sufficient (in particular when 𝑉 is substituted for V). (Contributed by BJ, 12-Oct-2019.) (Proof modification is discouraged.) |
| ⊢ Ⅎ𝑥𝜓 & ⊢ (𝑥 = 𝐴 → (𝜑 ↔ 𝜓)) ⇒ ⊢ (𝐴 ∈ 𝑉 → (∀𝑥(𝑥 = 𝐴 → 𝜑) ↔ 𝜓)) | ||
| Theorem | bj-ceqsalgvALT 36957* | Alternate proof of bj-ceqsalgv 36956. (Contributed by BJ, 12-Oct-2019.) (Proof modification is discouraged.) (New usage is discouraged.) |
| ⊢ Ⅎ𝑥𝜓 & ⊢ (𝑥 = 𝐴 → (𝜑 ↔ 𝜓)) ⇒ ⊢ (𝐴 ∈ 𝑉 → (∀𝑥(𝑥 = 𝐴 → 𝜑) ↔ 𝜓)) | ||
| Theorem | bj-ceqsal 36958* | Remove from ceqsal 3475 dependency on ax-ext 2705 (and on df-cleq 2725, df-v 3439, df-clab 2712, df-sb 2068). (Contributed by BJ, 12-Oct-2019.) (Proof modification is discouraged.) |
| ⊢ Ⅎ𝑥𝜓 & ⊢ 𝐴 ∈ V & ⊢ (𝑥 = 𝐴 → (𝜑 ↔ 𝜓)) ⇒ ⊢ (∀𝑥(𝑥 = 𝐴 → 𝜑) ↔ 𝜓) | ||
| Theorem | bj-ceqsalv 36959* | Remove from ceqsalv 3477 dependency on ax-ext 2705 (and on df-cleq 2725, df-v 3439, df-clab 2712, df-sb 2068). (Contributed by BJ, 12-Oct-2019.) (Proof modification is discouraged.) |
| ⊢ 𝐴 ∈ V & ⊢ (𝑥 = 𝐴 → (𝜑 ↔ 𝜓)) ⇒ ⊢ (∀𝑥(𝑥 = 𝐴 → 𝜑) ↔ 𝜓) | ||
| Theorem | bj-spcimdv 36960* | Remove from spcimdv 3544 dependency on ax-9 2123, ax-10 2146, ax-11 2162, ax-13 2374, ax-ext 2705, df-cleq 2725 (and df-nfc 2882, df-v 3439, df-or 848, df-tru 1544, df-nf 1785). For an even more economical version, see bj-spcimdvv 36961. (Contributed by BJ, 30-Nov-2020.) (Proof modification is discouraged.) |
| ⊢ (𝜑 → 𝐴 ∈ 𝐵) & ⊢ ((𝜑 ∧ 𝑥 = 𝐴) → (𝜓 → 𝜒)) ⇒ ⊢ (𝜑 → (∀𝑥𝜓 → 𝜒)) | ||
| Theorem | bj-spcimdvv 36961* | Remove from spcimdv 3544 dependency on ax-7 2009, ax-8 2115, ax-10 2146, ax-11 2162, ax-12 2182 ax-13 2374, ax-ext 2705, df-cleq 2725, df-clab 2712 (and df-nfc 2882, df-v 3439, df-or 848, df-tru 1544, df-nf 1785) 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 36960. (Contributed by BJ, 3-Nov-2021.) (Proof modification is discouraged.) |
| ⊢ (𝜑 → 𝐴 ∈ 𝐵) & ⊢ ((𝜑 ∧ 𝑥 = 𝐴) → (𝜓 → 𝜒)) ⇒ ⊢ (𝜑 → (∀𝑥𝜓 → 𝜒)) | ||
| Theorem | elelb 36962 | 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 36963 | 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 36964 | The nonfreeness quantifier for classes defines a symmetric binary relation on var metavariables (irreflexivity is proved by nfnid 5315 with additional axioms; see also nfcv 2895). This could be proved from aecom 2429 and nfcvb 5316 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 2739 instead of equcomd 2020; removing dependency on ax-ext 2705 is possible: prove weak versions (i.e. replace classes with setvars) of drnfc1 2915, eleq2d 2819 (using elequ2 2128), nfcvf 2922, dvelimc 2921, dvelimdc 2920, nfcvf2 2923. (Proof modification is discouraged.) |
| ⊢ (Ⅎ𝑥𝑦 ↔ Ⅎ𝑦𝑥) | ||
Some useful theorems for dealing with substitutions: sbbi 2311, sbcbig 3789, sbcel1g 4365, sbcel2 4367, sbcel12 4360, sbceqg 4361, csbvarg 4383. | ||
| Theorem | bj-sbeqALT 36965* | Substitution in an equality (use the more general version bj-sbeq 36966 instead, without disjoint variable condition). (Contributed by BJ, 6-Oct-2018.) (New usage is discouraged.) (Proof modification is discouraged.) |
| ⊢ ([𝑦 / 𝑥]𝐴 = 𝐵 ↔ ⦋𝑦 / 𝑥⦌𝐴 = ⦋𝑦 / 𝑥⦌𝐵) | ||
| Theorem | bj-sbeq 36966 | Distribute proper substitution through an equality relation. (See sbceqg 4361). (Contributed by BJ, 6-Oct-2018.) |
| ⊢ ([𝑦 / 𝑥]𝐴 = 𝐵 ↔ ⦋𝑦 / 𝑥⦌𝐴 = ⦋𝑦 / 𝑥⦌𝐵) | ||
| Theorem | bj-sbceqgALT 36967 | Distribute proper substitution through an equality relation. Alternate proof of sbceqg 4361. (Contributed by BJ, 6-Oct-2018.) Proof modification is discouraged to avoid using sbceqg 4361, but the Metamath program "MM-PA> MINIMIZE_WITH * / EXCEPT sbceqg" command is ok. (Proof modification is discouraged.) (New usage is discouraged.) |
| ⊢ (𝐴 ∈ 𝑉 → ([𝐴 / 𝑥]𝐵 = 𝐶 ↔ ⦋𝐴 / 𝑥⦌𝐵 = ⦋𝐴 / 𝑥⦌𝐶)) | ||
| Theorem | bj-csbsnlem 36968* | Lemma for bj-csbsn 36969 (in this lemma, 𝑥 cannot occur in 𝐴). (Contributed by BJ, 6-Oct-2018.) (New usage is discouraged.) |
| ⊢ ⦋𝐴 / 𝑥⦌{𝑥} = {𝐴} | ||
| Theorem | bj-csbsn 36969 | Substitution in a singleton. (Contributed by BJ, 6-Oct-2018.) |
| ⊢ ⦋𝐴 / 𝑥⦌{𝑥} = {𝐴} | ||
| Theorem | bj-sbel1 36970* | Version of sbcel1g 4365 when substituting a set. (Note: one could have a corresponding version of sbcel12 4360 when substituting a set, but the point here is that the antecedent of sbcel1g 4365 is not needed when substituting a set.) (Contributed by BJ, 6-Oct-2018.) |
| ⊢ ([𝑦 / 𝑥]𝐴 ∈ 𝐵 ↔ ⦋𝑦 / 𝑥⦌𝐴 ∈ 𝐵) | ||
| Theorem | bj-abv 36971 | 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 36972 | Alternate version of bj-abv 36971; shorter but uses ax-8 2115. (Contributed by BJ, 24-Jul-2019.) (Proof modification is discouraged.) (New usage is discouraged.) |
| ⊢ (∀𝑥𝜑 → {𝑥 ∣ 𝜑} = V) | ||
| Theorem | bj-ab0 36973 | The class of sets verifying a falsity is the empty set (closed form of abf 4355). (Contributed by BJ, 24-Jul-2019.) (Proof modification is discouraged.) |
| ⊢ (∀𝑥 ¬ 𝜑 → {𝑥 ∣ 𝜑} = ∅) | ||
| Theorem | bj-abf 36974 | Shorter proof of abf 4355 (which should be kept as abfALT). (Contributed by BJ, 24-Jul-2019.) (Proof modification is discouraged.) |
| ⊢ ¬ 𝜑 ⇒ ⊢ {𝑥 ∣ 𝜑} = ∅ | ||
| Theorem | bj-csbprc 36975 | More direct proof of csbprc 4358 (fewer essential steps). (Contributed by BJ, 24-Jul-2019.) (Proof modification is discouraged.) |
| ⊢ (¬ 𝐴 ∈ V → ⦋𝐴 / 𝑥⦌𝐵 = ∅) | ||
| Theorem | bj-exlimvmpi 36976* | A Fol lemma (exlimiv 1931 followed by mpi 20). (Contributed by BJ, 2-Jul-2022.) (Proof modification is discouraged.) |
| ⊢ (𝜒 → (𝜑 → 𝜓)) & ⊢ 𝜑 ⇒ ⊢ (∃𝑥𝜒 → 𝜓) | ||
| Theorem | bj-exlimmpi 36977 | Lemma for bj-vtoclg1f1 36982 (an instance of this lemma is a version of bj-vtoclg1f1 36982 where 𝑥 and 𝑦 are identified). (Contributed by BJ, 30-Apr-2019.) (Proof modification is discouraged.) |
| ⊢ Ⅎ𝑥𝜓 & ⊢ (𝜒 → (𝜑 → 𝜓)) & ⊢ 𝜑 ⇒ ⊢ (∃𝑥𝜒 → 𝜓) | ||
| Theorem | bj-exlimmpbi 36978 | Lemma for theorems of the vtoclg 3508 family. (Contributed by BJ, 3-Oct-2019.) (Proof modification is discouraged.) |
| ⊢ Ⅎ𝑥𝜓 & ⊢ (𝜒 → (𝜑 ↔ 𝜓)) & ⊢ 𝜑 ⇒ ⊢ (∃𝑥𝜒 → 𝜓) | ||
| Theorem | bj-exlimmpbir 36979 | Lemma for theorems of the vtoclg 3508 family. (Contributed by BJ, 3-Oct-2019.) (Proof modification is discouraged.) |
| ⊢ Ⅎ𝑥𝜑 & ⊢ (𝜒 → (𝜑 ↔ 𝜓)) & ⊢ 𝜓 ⇒ ⊢ (∃𝑥𝜒 → 𝜑) | ||
| Theorem | bj-vtoclf 36980* | Remove dependency on ax-ext 2705, df-clab 2712 and df-cleq 2725 (and df-sb 2068 and df-v 3439) from vtoclf 3518. (Contributed by BJ, 6-Oct-2019.) (Proof modification is discouraged.) |
| ⊢ Ⅎ𝑥𝜓 & ⊢ 𝐴 ∈ 𝑉 & ⊢ (𝑥 = 𝐴 → (𝜑 ↔ 𝜓)) & ⊢ 𝜑 ⇒ ⊢ 𝜓 | ||
| Theorem | bj-vtocl 36981* | Remove dependency on ax-ext 2705, df-clab 2712 and df-cleq 2725 (and df-sb 2068 and df-v 3439) from vtocl 3512. (Contributed by BJ, 6-Oct-2019.) (Proof modification is discouraged.) |
| ⊢ 𝐴 ∈ 𝑉 & ⊢ (𝑥 = 𝐴 → (𝜑 ↔ 𝜓)) & ⊢ 𝜑 ⇒ ⊢ 𝜓 | ||
| Theorem | bj-vtoclg1f1 36982* | The FOL content of vtoclg1f 3523 (hence not using ax-ext 2705, df-cleq 2725, df-nfc 2882, df-v 3439). 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 2705; as a byproduct, this dispenses with ax-11 2162 and ax-13 2374). (Contributed by BJ, 30-Apr-2019.) (Proof modification is discouraged.) |
| ⊢ Ⅎ𝑥𝜓 & ⊢ (𝑥 = 𝐴 → (𝜑 → 𝜓)) & ⊢ 𝜑 ⇒ ⊢ (∃𝑦 𝑦 = 𝐴 → 𝜓) | ||
| Theorem | bj-vtoclg1f 36983* | Reprove vtoclg1f 3523 from bj-vtoclg1f1 36982. This removes dependency on ax-ext 2705, df-cleq 2725 and df-v 3439. Use bj-vtoclg1fv 36984 instead when sufficient (in particular when 𝑉 is substituted for V). (Contributed by BJ, 14-Sep-2019.) (Proof modification is discouraged.) |
| ⊢ Ⅎ𝑥𝜓 & ⊢ (𝑥 = 𝐴 → (𝜑 → 𝜓)) & ⊢ 𝜑 ⇒ ⊢ (𝐴 ∈ 𝑉 → 𝜓) | ||
| Theorem | bj-vtoclg1fv 36984* | Version of bj-vtoclg1f 36983 with a disjoint variable condition on 𝑥, 𝑉. This removes dependency on df-sb 2068 and df-clab 2712. Prefer its use over bj-vtoclg1f 36983 when sufficient (in particular when 𝑉 is substituted for V). (Contributed by BJ, 14-Sep-2019.) (Proof modification is discouraged.) |
| ⊢ Ⅎ𝑥𝜓 & ⊢ (𝑥 = 𝐴 → (𝜑 → 𝜓)) & ⊢ 𝜑 ⇒ ⊢ (𝐴 ∈ 𝑉 → 𝜓) | ||
| Theorem | bj-vtoclg 36985* | A version of vtoclg 3508 with an additional disjoint variable condition (which is removable if we allow use of df-clab 2712, see bj-vtoclg1f 36983), which requires fewer axioms (i.e., removes dependency on ax-6 1968, ax-7 2009, ax-9 2123, ax-12 2182, ax-ext 2705, df-clab 2712, df-cleq 2725, df-v 3439). (Contributed by BJ, 2-Jul-2022.) (Proof modification is discouraged.) |
| ⊢ (𝑥 = 𝐴 → (𝜑 → 𝜓)) & ⊢ 𝜑 ⇒ ⊢ (𝐴 ∈ 𝑉 → 𝜓) | ||
| Theorem | bj-rabeqbid 36986 | Version of rabeqbidv 3414 with two disjoint variable conditions removed and the third replaced by a nonfreeness hypothesis. (Contributed by BJ, 27-Apr-2019.) |
| ⊢ Ⅎ𝑥𝜑 & ⊢ (𝜑 → 𝐴 = 𝐵) & ⊢ (𝜑 → (𝜓 ↔ 𝜒)) ⇒ ⊢ (𝜑 → {𝑥 ∈ 𝐴 ∣ 𝜓} = {𝑥 ∈ 𝐵 ∣ 𝜒}) | ||
| Theorem | bj-seex 36987* | Version of seex 5578 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 36988* | Version of df-nfc 2882 with a disjoint variable condition replaced with a nonfreeness hypothesis. (Contributed by BJ, 2-May-2019.) |
| ⊢ Ⅎ𝑦𝐴 ⇒ ⊢ (Ⅎ𝑥𝐴 ↔ ∀𝑦Ⅎ𝑥 𝑦 ∈ 𝐴) | ||
| Theorem | bj-zfauscl 36989* |
General version of zfauscl 5238.
Remark: the comment in zfauscl 5238 is misleading: the essential use of ax-ext 2705 is the one via eleq2 2822 and not the one via vtocl 3512, since the latter can be proved without ax-ext 2705 (see bj-vtoclg 36985). (Contributed by BJ, 2-Jul-2022.) (Proof modification is discouraged.) |
| ⊢ (𝐴 ∈ 𝑉 → ∃𝑦∀𝑥(𝑥 ∈ 𝑦 ↔ (𝑥 ∈ 𝐴 ∧ 𝜑))) | ||
A few additional theorems on class abstractions and restricted class abstractions. | ||
| Theorem | bj-elabd2ALT 36990* | Alternate proof of elabd2 3621 bypassing elab6g 3620 (and using sbiedvw 2100 instead of the ∀𝑥(𝑥 = 𝑦 → 𝜓) idiom). (Contributed by BJ, 16-Oct-2024.) (Proof modification is discouraged.) (New usage is discouraged.) |
| ⊢ (𝜑 → 𝐴 ∈ 𝑉) & ⊢ (𝜑 → 𝐵 = {𝑥 ∣ 𝜓}) & ⊢ ((𝜑 ∧ 𝑥 = 𝐴) → (𝜓 ↔ 𝜒)) ⇒ ⊢ (𝜑 → (𝐴 ∈ 𝐵 ↔ 𝜒)) | ||
| Theorem | bj-unrab 36991* | Generalization of unrab 4264. Equality need not hold. (Contributed by BJ, 21-Apr-2019.) |
| ⊢ ({𝑥 ∈ 𝐴 ∣ 𝜑} ∪ {𝑥 ∈ 𝐵 ∣ 𝜓}) ⊆ {𝑥 ∈ (𝐴 ∪ 𝐵) ∣ (𝜑 ∨ 𝜓)} | ||
| Theorem | bj-inrab 36992 | Generalization of inrab 4265. (Contributed by BJ, 21-Apr-2019.) |
| ⊢ ({𝑥 ∈ 𝐴 ∣ 𝜑} ∩ {𝑥 ∈ 𝐵 ∣ 𝜓}) = {𝑥 ∈ (𝐴 ∩ 𝐵) ∣ (𝜑 ∧ 𝜓)} | ||
| Theorem | bj-inrab2 36993 | Shorter proof of inrab 4265. (Contributed by BJ, 21-Apr-2019.) (Proof modification is discouraged.) |
| ⊢ ({𝑥 ∈ 𝐴 ∣ 𝜑} ∩ {𝑥 ∈ 𝐴 ∣ 𝜓}) = {𝑥 ∈ 𝐴 ∣ (𝜑 ∧ 𝜓)} | ||
| Theorem | bj-inrab3 36994* | Generalization of dfrab3ss 4272, which it may shorten. (Contributed by BJ, 21-Apr-2019.) (Revised by OpenAI, 7-Jul-2020.) |
| ⊢ (𝐴 ∩ {𝑥 ∈ 𝐵 ∣ 𝜑}) = ({𝑥 ∈ 𝐴 ∣ 𝜑} ∩ 𝐵) | ||
| Theorem | bj-rabtr 36995* | Restricted class abstraction with true formula. (Contributed by BJ, 22-Apr-2019.) |
| ⊢ {𝑥 ∈ 𝐴 ∣ ⊤} = 𝐴 | ||
| Theorem | bj-rabtrALT 36996* | Alternate proof of bj-rabtr 36995. (Contributed by BJ, 22-Apr-2019.) (Proof modification is discouraged.) (New usage is discouraged.) |
| ⊢ {𝑥 ∈ 𝐴 ∣ ⊤} = 𝐴 | ||
| Theorem | bj-rabtrAUTO 36997* | Proof of bj-rabtr 36995 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 36998 | Syntax for generalized class abstractions. |
| class {𝐴 ∣ 𝑥 ∣ 𝜑} | ||
| Definition | df-bj-gab 36999* | 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 37000 | Inclusion of generalized class abstractions. (Contributed by BJ, 4-Oct-2024.) |
| ⊢ (∀𝑥(𝐴 = 𝐵 ∧ (𝜑 → 𝜓)) → {𝐴 ∣ 𝑥 ∣ 𝜑} ⊆ {𝐵 ∣ 𝑥 ∣ 𝜓}) | ||
| < Previous Next > |
| Copyright terms: Public domain | < Previous Next > |