Home | Metamath
Proof Explorer Theorem List (p. 322 of 424) | < Previous Next > |
Bad symbols? Try the
GIF version. |
||
Mirrors > Metamath Home Page > MPE Home Page > Theorem List Contents > Recent Proofs This page: Page List |
Color key: | Metamath Proof Explorer
(1-27159) |
Hilbert Space Explorer
(27160-28684) |
Users' Mathboxes
(28685-42360) |
Type | Label | Description |
---|---|---|
Statement | ||
Theorem | bj-vtocl 32101* | Remove dependency on ax-ext 2590, df-clab 2597 and df-cleq 2603 (and df-sb 1868 and df-v 3175) from vtocl 3232. (Contributed by BJ, 6-Oct-2019.) (Proof modification is discouraged.) |
⊢ 𝐴 ∈ 𝑉 & ⊢ (𝑥 = 𝐴 → (𝜑 ↔ 𝜓)) & ⊢ 𝜑 ⇒ ⊢ 𝜓 | ||
Theorem | bj-vtoclg1f1 32102* | The FOL content of vtoclg1f 3238 (hence not using ax-ext 2590, df-cleq 2603, df-nfc 2740, df-v 3175). Note the weakened "major" hypothesis and the dv condition between 𝑥 and 𝐴 (needed since the class-form non-free predicate is not available without ax-ext 2590; as a byproduct, this dispenses with ax-11 2021 and ax-13 2234). (Contributed by BJ, 30-Apr-2019.) (Proof modification is discouraged.) |
⊢ Ⅎ𝑥𝜓 & ⊢ (𝑥 = 𝐴 → (𝜑 → 𝜓)) & ⊢ 𝜑 ⇒ ⊢ (∃𝑦 𝑦 = 𝐴 → 𝜓) | ||
Theorem | bj-vtoclg1f 32103* | Reprove vtoclg1f 3238 from bj-vtoclg1f1 32102. This removes dependency on ax-ext 2590, df-cleq 2603 and df-v 3175. Use bj-vtoclg1fv 32104 instead when sufficient (in particular when 𝑉 is substituted for V). (Contributed by BJ, 14-Sep-2019.) (Proof modification is discouraged.) |
⊢ Ⅎ𝑥𝜓 & ⊢ (𝑥 = 𝐴 → (𝜑 → 𝜓)) & ⊢ 𝜑 ⇒ ⊢ (𝐴 ∈ 𝑉 → 𝜓) | ||
Theorem | bj-vtoclg1fv 32104* | Version of bj-vtoclg1f 32103 with a dv condition on 𝑥, 𝑉. This removes dependency on df-sb 1868 and df-clab 2597. Prefer its use over bj-vtoclg1f 32103 when sufficient (in particular when 𝑉 is substituted for V). (Contributed by BJ, 14-Sep-2019.) (Proof modification is discouraged.) |
⊢ Ⅎ𝑥𝜓 & ⊢ (𝑥 = 𝐴 → (𝜑 → 𝜓)) & ⊢ 𝜑 ⇒ ⊢ (𝐴 ∈ 𝑉 → 𝜓) | ||
Theorem | bj-rabbida2 32105 | Version of rabbidva2 3162 with dv condition replaced by non-freeness hypothesis. (Contributed by BJ, 27-Apr-2019.) |
⊢ Ⅎ𝑥𝜑 & ⊢ (𝜑 → ((𝑥 ∈ 𝐴 ∧ 𝜓) ↔ (𝑥 ∈ 𝐵 ∧ 𝜒))) ⇒ ⊢ (𝜑 → {𝑥 ∈ 𝐴 ∣ 𝜓} = {𝑥 ∈ 𝐵 ∣ 𝜒}) | ||
Theorem | bj-rabbida 32106 | Version of rabbidva 3163 with dv condition replaced by non-freeness hypothesis. (Contributed by BJ, 27-Apr-2019.) |
⊢ Ⅎ𝑥𝜑 & ⊢ ((𝜑 ∧ 𝑥 ∈ 𝐴) → (𝜓 ↔ 𝜒)) ⇒ ⊢ (𝜑 → {𝑥 ∈ 𝐴 ∣ 𝜓} = {𝑥 ∈ 𝐴 ∣ 𝜒}) | ||
Theorem | bj-rabbid 32107 | Version of rabbidv 3164 with dv condition replaced by non-freeness hypothesis. (Contributed by BJ, 27-Apr-2019.) |
⊢ Ⅎ𝑥𝜑 & ⊢ (𝜑 → (𝜓 ↔ 𝜒)) ⇒ ⊢ (𝜑 → {𝑥 ∈ 𝐴 ∣ 𝜓} = {𝑥 ∈ 𝐴 ∣ 𝜒}) | ||
Theorem | bj-rabeqd 32108 | Deduction form of rabeq 3166. Note that contrary to rabeq 3166 it has no dv condition. (Contributed by BJ, 27-Apr-2019.) |
⊢ Ⅎ𝑥𝜑 & ⊢ (𝜑 → 𝐴 = 𝐵) ⇒ ⊢ (𝜑 → {𝑥 ∈ 𝐴 ∣ 𝜓} = {𝑥 ∈ 𝐵 ∣ 𝜓}) | ||
Theorem | bj-rabeqbid 32109 | Version of rabeqbidv 3168 with two dv conditions removed and the third replaced by a non-freeness hypothesis. (Contributed by BJ, 27-Apr-2019.) |
⊢ Ⅎ𝑥𝜑 & ⊢ (𝜑 → 𝐴 = 𝐵) & ⊢ (𝜑 → (𝜓 ↔ 𝜒)) ⇒ ⊢ (𝜑 → {𝑥 ∈ 𝐴 ∣ 𝜓} = {𝑥 ∈ 𝐵 ∣ 𝜒}) | ||
Theorem | bj-rabeqbida 32110 | Version of rabeqbidva 3169 with two dv conditions removed and the third replaced by a non-freeness hypothesis. (Contributed by BJ, 27-Apr-2019.) |
⊢ Ⅎ𝑥𝜑 & ⊢ (𝜑 → 𝐴 = 𝐵) & ⊢ ((𝜑 ∧ 𝑥 ∈ 𝐴) → (𝜓 ↔ 𝜒)) ⇒ ⊢ (𝜑 → {𝑥 ∈ 𝐴 ∣ 𝜓} = {𝑥 ∈ 𝐵 ∣ 𝜒}) | ||
Theorem | bj-seex 32111* | Version of seex 5001 with a dv condition replaced by a non-freeness hypothesis (for the sake of illustration). (Contributed by BJ, 27-Apr-2019.) |
⊢ Ⅎ𝑥𝐵 ⇒ ⊢ ((𝑅 Se 𝐴 ∧ 𝐵 ∈ 𝐴) → {𝑥 ∈ 𝐴 ∣ 𝑥𝑅𝐵} ∈ V) | ||
Theorem | bj-nfcf 32112* | Version of df-nfc 2740 with a dv condition replaced with a non-freeness hypothesis. (Contributed by BJ, 2-May-2019.) |
⊢ Ⅎ𝑦𝐴 ⇒ ⊢ (Ⅎ𝑥𝐴 ↔ ∀𝑦Ⅎ𝑥 𝑦 ∈ 𝐴) | ||
Theorem | bj-axsep2 32113* | Remove dependency on ax-8 1979, ax-10 2006, ax-12 2034, ax-13 2234, ax-ext 2590, df-cleq 2603 and df-clel 2606 from axsep2 4710 while shortening its proof (note that axsep2 4710 does require ax-8 1979 and ax-9 1986 since it requires df-clel 2606 and df-cleq 2603--- see bj-df-clel 32081 and bj-df-cleq 32085). Remark: the comment in zfauscl 4711 is misleading: the essential use of ax-ext 2590 is the one via eleq2 2677 and not the one via vtocl 3232, since the latter can be proved without ax-ext 2590 (see bj-vtocl 32101). (Contributed by BJ, 6-Oct-2019.) (Proof modification is discouraged.) |
⊢ ∃𝑦∀𝑥(𝑥 ∈ 𝑦 ↔ (𝑥 ∈ 𝑧 ∧ 𝜑)) | ||
A few additional theorems on class abstractions and restricted class abstractions. | ||
Theorem | bj-unrab 32114* | Generalization of unrab 3857. Equality need not hold. (Contributed by BJ, 21-Apr-2019.) |
⊢ ({𝑥 ∈ 𝐴 ∣ 𝜑} ∪ {𝑥 ∈ 𝐵 ∣ 𝜓}) ⊆ {𝑥 ∈ (𝐴 ∪ 𝐵) ∣ (𝜑 ∨ 𝜓)} | ||
Theorem | bj-inrab 32115 | Generalization of inrab 3858. (Contributed by BJ, 21-Apr-2019.) |
⊢ ({𝑥 ∈ 𝐴 ∣ 𝜑} ∩ {𝑥 ∈ 𝐵 ∣ 𝜓}) = {𝑥 ∈ (𝐴 ∩ 𝐵) ∣ (𝜑 ∧ 𝜓)} | ||
Theorem | bj-inrab2 32116 | Shorter proof of inrab 3858. (Contributed by BJ, 21-Apr-2019.) (Proof modification is discouraged.) |
⊢ ({𝑥 ∈ 𝐴 ∣ 𝜑} ∩ {𝑥 ∈ 𝐴 ∣ 𝜓}) = {𝑥 ∈ 𝐴 ∣ (𝜑 ∧ 𝜓)} | ||
Theorem | bj-inrab3 32117* | Generalization of dfrab3ss 3864, which it may shorten. (Contributed by BJ, 21-Apr-2019.) (Revised by OpenAI, 7-Jul-2020.) |
⊢ (𝐴 ∩ {𝑥 ∈ 𝐵 ∣ 𝜑}) = ({𝑥 ∈ 𝐴 ∣ 𝜑} ∩ 𝐵) | ||
Theorem | bj-rabtr 32118* | Restricted class abstraction with true formula. (Contributed by BJ, 22-Apr-2019.) |
⊢ {𝑥 ∈ 𝐴 ∣ ⊤} = 𝐴 | ||
Theorem | bj-rabtrALT 32119* | Alternate proof of bj-rabtr 32118. (Contributed by BJ, 22-Apr-2019.) (Proof modification is discouraged.) (New usage is discouraged.) |
⊢ {𝑥 ∈ 𝐴 ∣ ⊤} = 𝐴 | ||
Theorem | bj-rabtrALTALT 32120* | Alternate proof of bj-rabtr 32118. (Contributed by BJ, 22-Apr-2019.) (Proof modification is discouraged.) (New usage is discouraged.) |
⊢ {𝑥 ∈ 𝐴 ∣ ⊤} = 𝐴 | ||
Theorem | bj-rabtrAUTO 32121* | Proof of bj-rabtr 32118 found automatically by "improve all /depth 3 /3" followed by "minimize *". (Contributed by BJ, 22-Apr-2019.) (Proof modification is discouraged.) (New usage is discouraged.) |
⊢ {𝑥 ∈ 𝐴 ∣ ⊤} = 𝐴 | ||
In this subsection, we define restricted non-freeness (or relative non-freeness). | ||
Syntax | wrnf 32122 | Syntax for restricted non-freeness. |
wff Ⅎ𝑥 ∈ 𝐴𝜑 | ||
Definition | df-bj-rnf 32123 | Definition of restricted non-freeness. Informally, the proposition Ⅎ𝑥 ∈ 𝐴𝜑 means that 𝜑(𝑥) does not vary on 𝐴. (Contributed by BJ, 19-Mar-2021.) |
⊢ (Ⅎ𝑥 ∈ 𝐴𝜑 ↔ (∃𝑥 ∈ 𝐴 𝜑 → ∀𝑥 ∈ 𝐴 𝜑)) | ||
A few results around Russell's paradox. For clarity, we prove separately its FOL part (bj-ru0 32124) and then two versions (bj-ru1 32125 and bj-ru 32126). Special attention is put on minimizing axiom depencencies. | ||
Theorem | bj-ru0 32124* | The FOL part of Russell's paradox ru 3401 (see also bj-ru1 32125, bj-ru 32126). Use of elequ1 1984, bj-elequ12 31855, bj-spvv 31910 (instead of eleq1 2676, eleq12d 2682, spv 2248 as in ru 3401) permits to remove dependency on ax-10 2006, ax-11 2021, ax-12 2034, ax-13 2234, ax-ext 2590, df-sb 1868, df-clab 2597, df-cleq 2603, df-clel 2606. (Contributed by BJ, 12-Oct-2019.) (Proof modification is discouraged.) |
⊢ ¬ ∀𝑥(𝑥 ∈ 𝑦 ↔ ¬ 𝑥 ∈ 𝑥) | ||
Theorem | bj-ru1 32125* | A version of Russell's paradox ru 3401 (see also bj-ru 32126). Note the more economical use of bj-abeq2 31961 instead of abeq2 2719 to avoid dependency on ax-13 2234. (Contributed by BJ, 12-Oct-2019.) (Proof modification is discouraged.) |
⊢ ¬ ∃𝑦 𝑦 = {𝑥 ∣ ¬ 𝑥 ∈ 𝑥} | ||
Theorem | bj-ru 32126 | Remove dependency on ax-13 2234 (and df-v 3175) from Russell's paradox ru 3401 expressed with primitive symbols and with a class variable 𝑉 (note that axsep2 4710 does require ax-8 1979 and ax-9 1986 since it requires df-clel 2606 and df-cleq 2603--- see bj-df-clel 32081 and bj-df-cleq 32085). Note the more economical use of bj-elissetv 32055 instead of isset 3180 to avoid use of df-v 3175. (Contributed by BJ, 12-Oct-2019.) (Proof modification is discouraged.) |
⊢ ¬ {𝑥 ∣ ¬ 𝑥 ∈ 𝑥} ∈ 𝑉 | ||
A few utility theorems on disjointness of classes. | ||
Theorem | bj-n0i 32127* | Inference associated with n0 3890. (Minimizes three statements by a total of 29 bytes.) (Contributed by BJ, 22-Apr-2019.) |
⊢ 𝐴 ≠ ∅ ⇒ ⊢ ∃𝑥 𝑥 ∈ 𝐴 | ||
Theorem | bj-nel0 32128* | From the general negation of membership in 𝐴, infer that 𝐴 is the empty set. [Could shorten 0xp 5122?] (Contributed by BJ, 6-Oct-2018.) |
⊢ ¬ 𝑥 ∈ 𝐴 ⇒ ⊢ 𝐴 = ∅ | ||
Theorem | bj-disjcsn 32129 | A class is disjoint from its singleton. A consequence of regularity. Shorter proof than bnj521 30059. (Contributed by BJ, 4-Apr-2019.) |
⊢ (𝐴 ∩ {𝐴}) = ∅ | ||
Theorem | bj-disjsn01 32130 | Disjointness of the singletons containing 0 and 1. This is a consequence of bj-disjcsn 32129 but the present proof does not use regularity. (Contributed by BJ, 4-Apr-2019.) (Proof modification is discouraged.) |
⊢ ({∅} ∩ {1𝑜}) = ∅ | ||
Theorem | bj-1ex 32131 | 1𝑜 is a set. (Contributed by BJ, 6-Apr-2019.) |
⊢ 1𝑜 ∈ V | ||
Theorem | bj-2ex 32132 | 2𝑜 is a set. (Contributed by BJ, 6-Apr-2019.) |
⊢ 2𝑜 ∈ V | ||
Theorem | bj-0nel1 32133 | The empty set does not belong to {1𝑜}. (Contributed by BJ, 6-Apr-2019.) |
⊢ ∅ ∉ {1𝑜} | ||
Theorem | bj-1nel0 32134 | 1𝑜 does not belong to {∅}. (Contributed by BJ, 6-Apr-2019.) |
⊢ 1𝑜 ∉ {∅} | ||
A few utility theorems on direct products. | ||
Theorem | bj-xpimasn 32135 | The image of a singleton, general case. [Change and relabel xpimasn 5498 accordingly, maybe to xpima2sn.] (Contributed by BJ, 6-Apr-2019.) |
⊢ ((𝐴 × 𝐵) “ {𝑋}) = if(𝑋 ∈ 𝐴, 𝐵, ∅) | ||
Theorem | bj-xpima1sn 32136 | The image of a singleton by a direct product, empty case. [Change and relabel xpimasn 5498 accordingly, maybe to xpima2sn.] (Contributed by BJ, 6-Apr-2019.) |
⊢ (𝑋 ∉ 𝐴 → ((𝐴 × 𝐵) “ {𝑋}) = ∅) | ||
Theorem | bj-xpima1snALT 32137 | Alternate proof of bj-xpima1sn 32136. (Contributed by BJ, 6-Apr-2019.) (Proof modification is discouraged.) (New usage is discouraged.) |
⊢ (𝑋 ∉ 𝐴 → ((𝐴 × 𝐵) “ {𝑋}) = ∅) | ||
Theorem | bj-xpima2sn 32138 | The image of a singleton by a direct product, nonempty case. [To replace xpimasn 5498] (Contributed by BJ, 6-Apr-2019.) (Proof modification is discouraged.) |
⊢ (𝑋 ∈ 𝐴 → ((𝐴 × 𝐵) “ {𝑋}) = 𝐵) | ||
Theorem | bj-xpnzex 32139 | If the first factor of a product is nonempty, and the product is a set, then the second factor is a set. UPDATE: this is actually the exported form (curried form) of xpexcnv 7001 (up to commutation in the product). (Contributed by BJ, 6-Oct-2018.) (Proof modification is discouraged.) |
⊢ (𝐴 ≠ ∅ → ((𝐴 × 𝐵) ∈ 𝑉 → 𝐵 ∈ V)) | ||
Theorem | bj-xpexg2 32140 | Exported form (curried form) of xpexg 6858. (Contributed by BJ, 2-Apr-2019.) |
⊢ (𝐴 ∈ 𝑉 → (𝐵 ∈ 𝑊 → (𝐴 × 𝐵) ∈ V)) | ||
Theorem | bj-xpnzexb 32141 | If the first factor of a product is a nonempty set, then the product is a set if and only if the second factor is a set. (Contributed by BJ, 2-Apr-2019.) |
⊢ (𝐴 ∈ (𝑉 ∖ {∅}) → (𝐵 ∈ V ↔ (𝐴 × 𝐵) ∈ V)) | ||
Theorem | bj-cleq 32142* | Substitution property for certain classes. (Contributed by BJ, 2-Apr-2019.) |
⊢ (𝐴 = 𝐵 → {𝑥 ∣ {𝑥} ∈ (𝐴 “ 𝐶)} = {𝑥 ∣ {𝑥} ∈ (𝐵 “ 𝐶)}) | ||
This subsection introduces the "singletonization" and the "tagging" of a class. The singletonization of a class is the class of singletons of elements of that class. It is useful since all nonsingletons are disjoint from it, so one can easily adjoin to it disjoint elements, which is what the tagging does: it adjoins the empty set. This can be used for instance to define the one-point compactification of a topological space. It will be used in the next section to define tuples which work for proper classes. | ||
Theorem | bj-sels 32143* | If a class is a set, then it is a member of a set. (Contributed by BJ, 3-Apr-2019.) |
⊢ (𝐴 ∈ 𝑉 → ∃𝑥 𝐴 ∈ 𝑥) | ||
Theorem | bj-snsetex 32144* | The class of sets "whose singletons" belong to a set is a set. Nice application of ax-rep 4699. (Contributed by BJ, 6-Oct-2018.) |
⊢ (𝐴 ∈ 𝑉 → {𝑥 ∣ {𝑥} ∈ 𝐴} ∈ V) | ||
Theorem | bj-clex 32145* | Sethood of certain classes. (Contributed by BJ, 2-Apr-2019.) |
⊢ (𝐴 ∈ 𝑉 → {𝑥 ∣ {𝑥} ∈ (𝐴 “ 𝐵)} ∈ V) | ||
Syntax | bj-csngl 32146 | Syntax for singletonization. (Contributed by BJ, 6-Oct-2018.) |
class sngl 𝐴 | ||
Definition | df-bj-sngl 32147* | Definition of "singletonization". The class sngl 𝐴 is isomorphic to 𝐴 and since it contains only singletons, it can be adjoined disjoint elements, which can be useful in various constructions. (Contributed by BJ, 6-Oct-2018.) |
⊢ sngl 𝐴 = {𝑥 ∣ ∃𝑦 ∈ 𝐴 𝑥 = {𝑦}} | ||
Theorem | bj-sngleq 32148 | Substitution property for sngl. (Contributed by BJ, 6-Oct-2018.) |
⊢ (𝐴 = 𝐵 → sngl 𝐴 = sngl 𝐵) | ||
Theorem | bj-elsngl 32149* | Characterization of the elements of the singletonization of a class. (Contributed by BJ, 6-Oct-2018.) |
⊢ (𝐴 ∈ sngl 𝐵 ↔ ∃𝑥 ∈ 𝐵 𝐴 = {𝑥}) | ||
Theorem | bj-snglc 32150 | Characterization of the elements of 𝐴 in terms of elements of its singletonization. (Contributed by BJ, 6-Oct-2018.) |
⊢ (𝐴 ∈ 𝐵 ↔ {𝐴} ∈ sngl 𝐵) | ||
Theorem | bj-snglss 32151 | The singletonization of a class is included in its powerclass. (Contributed by BJ, 6-Oct-2018.) |
⊢ sngl 𝐴 ⊆ 𝒫 𝐴 | ||
Theorem | bj-0nelsngl 32152 | The empty set is not a member of a singletonization (neither is any nonsingleton, in particular any von Neuman ordinal except possibly df-1o 7447). (Contributed by BJ, 6-Oct-2018.) |
⊢ ∅ ∉ sngl 𝐴 | ||
Theorem | bj-snglinv 32153* | Inverse of singletonization. (Contributed by BJ, 6-Oct-2018.) |
⊢ 𝐴 = {𝑥 ∣ {𝑥} ∈ sngl 𝐴} | ||
Theorem | bj-snglex 32154 | A class is a set if and only if its singletonization is a set. (Contributed by BJ, 6-Oct-2018.) |
⊢ (𝐴 ∈ V ↔ sngl 𝐴 ∈ V) | ||
Syntax | bj-ctag 32155 | Syntax for the tagged copy of a class. (Contributed by BJ, 6-Oct-2018.) |
class tag 𝐴 | ||
Definition | df-bj-tag 32156 | Definition of the tagged copy of a class, that is, the adjunction to (an isomorph of) 𝐴 of a disjoint element (here, the empty set). Remark: this could be used for the one-point compactification of a topological space. (Contributed by BJ, 6-Oct-2018.) |
⊢ tag 𝐴 = (sngl 𝐴 ∪ {∅}) | ||
Theorem | bj-tageq 32157 | Substitution property for tag. (Contributed by BJ, 6-Oct-2018.) |
⊢ (𝐴 = 𝐵 → tag 𝐴 = tag 𝐵) | ||
Theorem | bj-eltag 32158* | Characterization of the elements of the tagging of a class. (Contributed by BJ, 6-Oct-2018.) |
⊢ (𝐴 ∈ tag 𝐵 ↔ (∃𝑥 ∈ 𝐵 𝐴 = {𝑥} ∨ 𝐴 = ∅)) | ||
Theorem | bj-0eltag 32159 | The empty set belongs to the tagging of a class. (Contributed by BJ, 6-Apr-2019.) |
⊢ ∅ ∈ tag 𝐴 | ||
Theorem | bj-tagn0 32160 | The tagging of a class is nonempty. (Contributed by BJ, 6-Apr-2019.) |
⊢ tag 𝐴 ≠ ∅ | ||
Theorem | bj-tagss 32161 | The tagging of a class is included in its powerclass. (Contributed by BJ, 6-Oct-2018.) |
⊢ tag 𝐴 ⊆ 𝒫 𝐴 | ||
Theorem | bj-snglsstag 32162 | The singletonization is included in the tagging. (Contributed by BJ, 6-Oct-2018.) |
⊢ sngl 𝐴 ⊆ tag 𝐴 | ||
Theorem | bj-sngltagi 32163 | The singletonization is included in the tagging. (Contributed by BJ, 6-Oct-2018.) |
⊢ (𝐴 ∈ sngl 𝐵 → 𝐴 ∈ tag 𝐵) | ||
Theorem | bj-sngltag 32164 | The singletonization and the tagging of a set contain the same singletons. (Contributed by BJ, 6-Oct-2018.) |
⊢ (𝐴 ∈ 𝑉 → ({𝐴} ∈ sngl 𝐵 ↔ {𝐴} ∈ tag 𝐵)) | ||
Theorem | bj-tagci 32165 | Characterization of the elements of 𝐵 in terms of elements of its tagged version. (Contributed by BJ, 6-Oct-2018.) |
⊢ (𝐴 ∈ 𝐵 → {𝐴} ∈ tag 𝐵) | ||
Theorem | bj-tagcg 32166 | Characterization of the elements of 𝐵 in terms of elements of its tagged version. (Contributed by BJ, 6-Oct-2018.) |
⊢ (𝐴 ∈ 𝑉 → (𝐴 ∈ 𝐵 ↔ {𝐴} ∈ tag 𝐵)) | ||
Theorem | bj-taginv 32167* | Inverse of tagging. (Contributed by BJ, 6-Oct-2018.) |
⊢ 𝐴 = {𝑥 ∣ {𝑥} ∈ tag 𝐴} | ||
Theorem | bj-tagex 32168 | A class is a set if and only if its tagging is a set. (Contributed by BJ, 6-Oct-2018.) |
⊢ (𝐴 ∈ V ↔ tag 𝐴 ∈ V) | ||
Theorem | bj-xtageq 32169 | The products of a given class and the tagging of either of two equal classes are equal. (Contributed by BJ, 6-Apr-2019.) |
⊢ (𝐴 = 𝐵 → (𝐶 × tag 𝐴) = (𝐶 × tag 𝐵)) | ||
Theorem | bj-xtagex 32170 | The product of a set and the tagging of a set is a set. (Contributed by BJ, 2-Apr-2019.) |
⊢ (𝐴 ∈ 𝑉 → (𝐵 ∈ 𝑊 → (𝐴 × tag 𝐵) ∈ V)) | ||
This subsection gives a definition of an ordered pair, or couple (2-tuple), which "works" for proper classes, as evidenced by Theorems bj-2uplth 32202 and bj-2uplex 32203 (but more importantly, bj-pr21val 32194 and bj-pr22val 32200). In particular, one can define well-behaved tuples of classes. Note, however, that classes in ZF(C) are only virtual, and in particular they cannot be quantified over. The projections are denoted by pr1 and pr2 and the couple with projections (or coordinates) 𝐴 and 𝐵 is denoted by ⦅𝐴, 𝐵⦆. Note that this definition uses the Kuratowksi definition (df-op 4132) as a preliminary definition, and then "redefines" a couple. It could also use the "short" version of the Kuratowski pair (see opthreg 8398) without needing the axiom of regularity; it could even bypass this definition by "inlining" it. This definition is due to Anthony Morse and is expounded (with idiosyncratic notation) in Anthony P. Morse, A Theory of Sets, Academic Press, 1965 (second edition 1986). Note that this extends in a natural way to tuples. A variation of this definition is justified in opthprc 5089, but here we use "tagged versions" of the factors (see df-bj-tag 32156) so that an m-tuple can equal an n-tuple only when m = n (and the projections are the same). A comparison of the different definitions of tuples (strangely not mentioning Morse's), is given in Dominic McCarty and Dana Scott, Reconsidering ordered pairs, Bull. Symbolic Logic, Volume 14, Issue 3 (Sept. 2008), 379--397. where a recursive definition of tuples is given that avoids the 2-step definition of tuples and that can be adapted to various set theories. Finally, another survey is Akihiro Kanamori, The empty set, the singleton, and the ordered pair, Bull. Symbolic Logic, Volume 9, Number 3 (Sept. 2003), 273--298. (available at http://math.bu.edu/people/aki/8.pdf) | ||
Syntax | bj-cproj 32171 | Syntax for the class projection. (Contributed by BJ, 6-Apr-2019.) |
class (𝐴 Proj 𝐵) | ||
Definition | df-bj-proj 32172* | Definition of the class projection corresponding to tagged tuples. The expression (𝐴 Proj 𝐵) denotes the projection on the A^th component. (Contributed by BJ, 6-Apr-2019.) (New usage is discouraged.) |
⊢ (𝐴 Proj 𝐵) = {𝑥 ∣ {𝑥} ∈ (𝐵 “ {𝐴})} | ||
Theorem | bj-projeq 32173 | Substitution property for Proj. (Contributed by BJ, 6-Apr-2019.) |
⊢ (𝐴 = 𝐶 → (𝐵 = 𝐷 → (𝐴 Proj 𝐵) = (𝐶 Proj 𝐷))) | ||
Theorem | bj-projeq2 32174 | Substitution property for Proj. (Contributed by BJ, 6-Apr-2019.) |
⊢ (𝐵 = 𝐶 → (𝐴 Proj 𝐵) = (𝐴 Proj 𝐶)) | ||
Theorem | bj-projun 32175 | The class projection on a given component preserves unions. (Contributed by BJ, 6-Apr-2019.) |
⊢ (𝐴 Proj (𝐵 ∪ 𝐶)) = ((𝐴 Proj 𝐵) ∪ (𝐴 Proj 𝐶)) | ||
Theorem | bj-projex 32176 | Sethood of the class projection. (Contributed by BJ, 6-Apr-2019.) |
⊢ (𝐵 ∈ 𝑉 → (𝐴 Proj 𝐵) ∈ V) | ||
Theorem | bj-projval 32177 | Value of the class projection (proof can be shortened by 19 bytes by using sylancl3 31738). (Contributed by BJ, 6-Apr-2019.) |
⊢ (𝐴 ∈ 𝑉 → (𝐴 Proj ({𝐵} × tag 𝐶)) = if(𝐵 = 𝐴, 𝐶, ∅)) | ||
Syntax | bj-c1upl 32178 | Syntax for Morse monuple. (Contributed by BJ, 6-Apr-2019.) |
class ⦅𝐴⦆ | ||
Definition | df-bj-1upl 32179 | Definition of the Morse monuple (1-tuple). This is not useful per se, but is used as a step towards the definition of couples (2-tuples, or ordered pairs). The reason for "tagging" the set is so that an m-tuple and an n-tuple be equal only when m = n. Note that with this definition, the 0-tuple is the empty set. New usage is discouraged because the precise definition is generally unimportant compared to the characteristic properties bj-2upleq 32193, bj-2uplth 32202, bj-2uplex 32203, and the properties of the projections (see df-bj-pr1 32182 and df-bj-pr2 32196). (Contributed by BJ, 6-Apr-2019.) (New usage is discouraged.) |
⊢ ⦅𝐴⦆ = ({∅} × tag 𝐴) | ||
Theorem | bj-1upleq 32180 | Substitution property for ⦅ − ⦆. (Contributed by BJ, 6-Apr-2019.) |
⊢ (𝐴 = 𝐵 → ⦅𝐴⦆ = ⦅𝐵⦆) | ||
Syntax | bj-cpr1 32181 | Syntax for the first class tuple projection. (Contributed by BJ, 6-Apr-2019.) |
class pr1 𝐴 | ||
Definition | df-bj-pr1 32182 | Definition of the first projection of a class tuple. New usage is discouraged because the precise definition is generally unimportant compared to the characteristic properties bj-pr1eq 32183, bj-pr11val 32186, bj-pr21val 32194, bj-pr1ex 32187. (Contributed by BJ, 6-Apr-2019.) (New usage is discouraged.) |
⊢ pr1 𝐴 = (∅ Proj 𝐴) | ||
Theorem | bj-pr1eq 32183 | Substitution property for pr1. (Contributed by BJ, 6-Apr-2019.) |
⊢ (𝐴 = 𝐵 → pr1 𝐴 = pr1 𝐵) | ||
Theorem | bj-pr1un 32184 | The first projection preserves unions. (Contributed by BJ, 6-Apr-2019.) |
⊢ pr1 (𝐴 ∪ 𝐵) = (pr1 𝐴 ∪ pr1 𝐵) | ||
Theorem | bj-pr1val 32185 | Value of the first projection. (Contributed by BJ, 6-Apr-2019.) |
⊢ pr1 ({𝐴} × tag 𝐵) = if(𝐴 = ∅, 𝐵, ∅) | ||
Theorem | bj-pr11val 32186 | Value of the first projection of a monuple. (Contributed by BJ, 6-Apr-2019.) |
⊢ pr1 ⦅𝐴⦆ = 𝐴 | ||
Theorem | bj-pr1ex 32187 | Sethood of the first projection. (Contributed by BJ, 6-Oct-2018.) |
⊢ (𝐴 ∈ 𝑉 → pr1 𝐴 ∈ V) | ||
Theorem | bj-1uplth 32188 | The characteristic property of monuples. Note that this holds without sethood hypotheses. (Contributed by BJ, 6-Apr-2019.) |
⊢ (⦅𝐴⦆ = ⦅𝐵⦆ ↔ 𝐴 = 𝐵) | ||
Theorem | bj-1uplex 32189 | A monuple is a set if and only if its coordinates are sets. (Contributed by BJ, 6-Apr-2019.) |
⊢ (⦅𝐴⦆ ∈ V ↔ 𝐴 ∈ V) | ||
Theorem | bj-1upln0 32190 | A monuple is nonempty. (Contributed by BJ, 6-Apr-2019.) |
⊢ ⦅𝐴⦆ ≠ ∅ | ||
Syntax | bj-c2uple 32191 | Syntax for Morse couple. (Contributed by BJ, 6-Oct-2018.) |
class ⦅𝐴, 𝐵⦆ | ||
Definition | df-bj-2upl 32192 | Definition of the Morse couple. See df-bj-1upl 32179. New usage is discouraged because the precise definition is generally unimportant compared to the characteristic properties bj-2upleq 32193, bj-2uplth 32202, bj-2uplex 32203, and the properties of the projections (see df-bj-pr1 32182 and df-bj-pr2 32196). (Contributed by BJ, 6-Oct-2018.) (New usage is discouraged.) |
⊢ ⦅𝐴, 𝐵⦆ = (⦅𝐴⦆ ∪ ({1𝑜} × tag 𝐵)) | ||
Theorem | bj-2upleq 32193 | Substitution property for ⦅ − , − ⦆. (Contributed by BJ, 6-Oct-2018.) |
⊢ (𝐴 = 𝐵 → (𝐶 = 𝐷 → ⦅𝐴, 𝐶⦆ = ⦅𝐵, 𝐷⦆)) | ||
Theorem | bj-pr21val 32194 | Value of the first projection of a couple. (Contributed by BJ, 6-Oct-2018.) |
⊢ pr1 ⦅𝐴, 𝐵⦆ = 𝐴 | ||
Syntax | bj-cpr2 32195 | Syntax for the second class tuple projection. (Contributed by BJ, 6-Oct-2018.) |
class pr2 𝐴 | ||
Definition | df-bj-pr2 32196 | Definition of the second projection of a class tuple. New usage is discouraged because the precise definition is generally unimportant compared to the characteristic properties bj-pr2eq 32197, bj-pr22val 32200, bj-pr2ex 32201. (Contributed by BJ, 6-Oct-2018.) (New usage is discouraged.) |
⊢ pr2 𝐴 = (1𝑜 Proj 𝐴) | ||
Theorem | bj-pr2eq 32197 | Substitution property for pr2. (Contributed by BJ, 6-Oct-2018.) |
⊢ (𝐴 = 𝐵 → pr2 𝐴 = pr2 𝐵) | ||
Theorem | bj-pr2un 32198 | The second projection preserves unions. (Contributed by BJ, 6-Apr-2019.) |
⊢ pr2 (𝐴 ∪ 𝐵) = (pr2 𝐴 ∪ pr2 𝐵) | ||
Theorem | bj-pr2val 32199 | Value of the second projection. (Contributed by BJ, 6-Apr-2019.) |
⊢ pr2 ({𝐴} × tag 𝐵) = if(𝐴 = 1𝑜, 𝐵, ∅) | ||
Theorem | bj-pr22val 32200 | Value of the second projection of a couple. (Contributed by BJ, 6-Oct-2018.) |
⊢ pr2 ⦅𝐴, 𝐵⦆ = 𝐵 |
< Previous Next > |
Copyright terms: Public domain | < Previous Next > |