HomeHome Metamath Proof Explorer
Theorem List (p. 328 of 360)
< Previous  Next >
Browser slow? Try the
Unicode version.

Mirrors  >  Metamath Home Page  >  MPE Home Page  >  Theorem List Contents  >  Recent Proofs       This page: Page List

Color key:    Metamath Proof Explorer  Metamath Proof Explorer
(1-24457)
  Hilbert Space Explorer  Hilbert Space Explorer
(24458-25982)
  Users' Mathboxes  Users' Mathboxes
(25983-35925)
 

Theorem List for Metamath Proof Explorer - 32701-32800   *Has distinct variable group(s)
TypeLabelDescription
Statement
 
Theorembj-ax9 32701* Proof of ax-9 1762 from ax-ext 2430 and df-cleq 2443 (and FOL). This shows that df-cleq 2443 is "too powerful". A possible definition is given by bj-df-cleq 32702. (Contributed by BJ, 24-Jun-2019.) (Proof modification is discouraged.)
 |-  ( x  =  y  ->  ( z  e.  x  ->  z  e.  y )
 )
 
Theorembj-df-cleq 32702* Candidate definition for df-cleq 2443 (the need for it is exposed in bj-ax9 32701). The similarity of the hypothesis and the conclusion makes it clear that this definition merely extends to class variables something that is true for setvar variables, hence is conservative. This definition should be directly referenced only by bj-dfcleq 32703, which should be used instead. The proof is irrelevant since this is a proposal for an axiom.

Another definition, which would give finer control, is actually the pair of definitions where each has one implication of the present biconditional as hypothesis and conclusion. They assert that extensionality (respectively, the left-substitution axiom for the membership predicate) extends from setvars to classes. (Contributed by BJ, 24-Jun-2019.) (Proof modification is discouraged.) (New usage is discouraged.)

 |-  (
 y  =  z  <->  A. x ( x  e.  y  <->  x  e.  z
 ) )   =>    |-  ( A  =  B  <->  A. x ( x  e.  A  <->  x  e.  B ) )
 
Theorembj-dfcleq 32703* Proof of class extensionality from the axiom of set extensionality (ax-ext 2430) and the definition of class equality (bj-df-cleq 32702). (Contributed by BJ, 24-Jun-2019.) (Proof modification is discouraged.)
 |-  ( A  =  B  <->  A. x ( x  e.  A  <->  x  e.  B ) )
 
21.29.5.5  Lemmas for class substitution

Some useful theorems for dealing with substitutions: sbbi 2100, sbcbig 3333, sbcel1g 3781, sbcel2 3783, sbcel12 3775, sbceqg 3777, csbvarg 3800.

 
Theorembj-sbeqALT 32704* Substitution in an equality (use the more genereal version bj-sbeq 32705 instead, without disjoint variable condition). (Contributed by BJ, 6-Oct-2018.) (New usage is discouraged.)
 |-  ( [ y  /  x ] A  =  B  <->  [_ y  /  x ]_ A  =  [_ y  /  x ]_ B )
 
Theorembj-sbeq 32705 Distribute proper substitution through an equality relation. (See sbceqg 3777). (Contributed by BJ, 6-Oct-2018.)
 |-  ( [ y  /  x ] A  =  B  <->  [_ y  /  x ]_ A  =  [_ y  /  x ]_ B )
 
Theorembj-sbceqgALT 32706 Distribute proper substitution through an equality relation. Alternate proof of sbceqg 3777. Proof modification is discouraged to avoid using sbceqg 3777, but "minimize */except sbceqg" is ok. (Contributed by BJ, 6-Oct-2018.) (Proof modification is discouraged.)
 |-  ( A  e.  V  ->  (
 [. A  /  x ]. B  =  C  <->  [_ A  /  x ]_ B  =  [_ A  /  x ]_ C ) )
 
Theorembj-csbsnlem 32707* Lemma for bj-csbsn 32708 (in this lemma,  x cannot occur in  A). (Contributed by BJ, 6-Oct-2018.) (New usage is discouraged.)
 |-  [_ A  /  x ]_ { x }  =  { A }
 
Theorembj-csbsn 32708 Substitution in a singleton. (Contributed by BJ, 6-Oct-2018.)
 |-  [_ A  /  x ]_ { x }  =  { A }
 
Theorembj-sbel1 32709* Version of sbcel1g 3781 when substituting a set. (Note: one could have a corresponding version of sbcel12 3775 when substituting a set, but the point here is that the antecedent of sbcel1g 3781 is not needed when substituting a set.) (Contributed by BJ, 6-Oct-2018.)
 |-  ( [ y  /  x ] A  e.  B  <->  [_ y  /  x ]_ A  e.  B )
 
Theorembj-abtru 32710 The class of sets verifying a tautology is the universal class. (Contributed by BJ, 24-Jul-2019.) (Proof modification is discouraged.)
 |-  ( A. x ph  ->  { x  |  ph }  =  _V )
 
Theorembj-abfal 32711 The class of sets verifying a falsity is the empty set (closed form of abf 3771). (Contributed by BJ, 24-Jul-2019.) (Proof modification is discouraged.)
 |-  ( A. x  -.  ph  ->  { x  |  ph }  =  (/) )
 
Theorembj-abf 32712 Shorter proof of abf 3771 (which should be kept as abfALT). (Contributed by BJ, 24-Jul-2019.)
 |-  -.  ph   =>    |-  { x  |  ph }  =  (/)
 
Theorembj-csbprc 32713 More direct proof of csbprc 3773 (fewer essential steps). (Contributed by BJ, 24-Jul-2019.)
 |-  ( -.  A  e.  _V  ->  [_ A  /  x ]_ B  =  (/) )
 
21.29.5.6  Removing some dv conditions
 
Theorembj-exlimmpi 32714 Lemma for bj-vtoclg1f1 32719 (an instance of this lemma is a version of bj-vtoclg1f1 32719 where  x and  y are identified). (Contributed by BJ, 30-Apr-2019.) (Proof modification is discouraged.)
 |-  F/ x ps   &    |-  ( ch  ->  (
 ph  ->  ps ) )   &    |-  ph   =>    |-  ( E. x ch  ->  ps )
 
Theorembj-exlimmpbi 32715 Lemma for theorems of the vtoclg 3128 family. (Contributed by BJ, 3-Oct-2019.) (Proof modification is discouraged.)
 |-  F/ x ps   &    |-  ( ch  ->  (
 ph 
 <->  ps ) )   &    |-  ph   =>    |-  ( E. x ch  ->  ps )
 
Theorembj-exlimmpbir 32716 Lemma for theorems of the vtoclg 3128 family. (Contributed by BJ, 3-Oct-2019.) (Proof modification is discouraged.)
 |-  F/ x ph   &    |-  ( ch  ->  (
 ph 
 <->  ps ) )   &    |-  ps   =>    |-  ( E. x ch  ->  ph )
 
Theorembj-vtoclf 32717* Remove dependency on ax-ext 2430, df-clab 2437 and df-cleq 2443 (and df-sb 1703 and df-v 3072) from vtoclf 3121. (Contributed by BJ, 6-Oct-2019.) (Proof modification is discouraged.)
 |-  F/ x ps   &    |-  A  e.  V   &    |-  ( x  =  A  ->  (
 ph 
 <->  ps ) )   &    |-  ph   =>    |- 
 ps
 
Theorembj-vtocl 32718* Remove dependency on ax-ext 2430, df-clab 2437 and df-cleq 2443 (and df-sb 1703 and df-v 3072) from vtocl 3122. (Contributed by BJ, 6-Oct-2019.) (Proof modification is discouraged.)
 |-  A  e.  V   &    |-  ( x  =  A  ->  ( ph  <->  ps ) )   &    |-  ph   =>    |- 
 ps
 
Theorembj-vtoclg1f1 32719* The FOL content of vtoclg1f 3127 (hence not using ax-ext 2430, df-cleq 2443, df-nfc 2601, df-v 3072). Note the weakened "major" hypothesis and the dv condition between  x and  A (needed since the class-form non-free predicate is not available without ax-ext 2430; as a byproduct, this dispenses with ax-11 1782 and ax-13 1952). (Contributed by BJ, 30-Apr-2019.) (Proof modification is discouraged.)
 |-  F/ x ps   &    |-  ( x  =  A  ->  ( ph  ->  ps ) )   &    |-  ph   =>    |-  ( E. y  y  =  A  ->  ps )
 
Theorembj-vtoclg1f 32720* Reprove vtoclg1f 3127 from bj-vtoclg1f1 32719. This removes dependency on ax-ext 2430, df-cleq 2443 and df-v 3072. Use bj-vtoclg1fv 32721 instead when sufficient (in particular when  V is substituted for  _V). (Contributed by BJ, 14-Sep-2019.) (Proof modification is discouraged.)
 |-  F/ x ps   &    |-  ( x  =  A  ->  ( ph  ->  ps ) )   &    |-  ph   =>    |-  ( A  e.  V  ->  ps )
 
Theorembj-vtoclg1fv 32721* Version of bj-vtoclg1f 32720 with a dv condition on  x ,  V. This removes dependency on df-sb 1703 and df-clab 2437. Prefer its use over bj-vtoclg1f 32720 when sufficient (in particular when  V is substituted for  _V). (Contributed by BJ, 14-Sep-2019.) (Proof modification is discouraged.)
 |-  F/ x ps   &    |-  ( x  =  A  ->  ( ph  ->  ps ) )   &    |-  ph   =>    |-  ( A  e.  V  ->  ps )
 
Theorembj-rabbida2 32722 Version of rabbidva2 3060 with dv condition replaced by non-freeness hypothesis. (Contributed by BJ, 27-Apr-2019.)
 |-  F/ x ph   &    |-  ( ph  ->  ( ( x  e.  A  /\  ps )  <->  ( x  e.  B  /\  ch )
 ) )   =>    |-  ( ph  ->  { x  e.  A  |  ps }  =  { x  e.  B  |  ch } )
 
Theorembj-rabbida 32723 Version of rabbidva 3061 with dv condition replaced by non-freeness hypothesis. (Contributed by BJ, 27-Apr-2019.)
 |-  F/ x ph   &    |-  ( ( ph  /\  x  e.  A ) 
 ->  ( ps  <->  ch ) )   =>    |-  ( ph  ->  { x  e.  A  |  ps }  =  { x  e.  A  |  ch }
 )
 
Theorembj-rabbid 32724 Version of rabbidv 3062 with dv condition replaced by non-freeness hypothesis. (Contributed by BJ, 27-Apr-2019.)
 |-  F/ x ph   &    |-  ( ph  ->  ( ps  <->  ch ) )   =>    |-  ( ph  ->  { x  e.  A  |  ps }  =  { x  e.  A  |  ch }
 )
 
Theorembj-rabeqd 32725 Deduction form of rabeq 3064. Note that contrary to rabeq 3064 it has no dv condition. (Contributed by BJ, 27-Apr-2019.)
 |-  F/ x ph   &    |-  ( ph  ->  A  =  B )   =>    |-  ( ph  ->  { x  e.  A  |  ps }  =  { x  e.  B  |  ps }
 )
 
Theorembj-rabeqbid 32726 Version of rabeqbidv 3065 with two dv conditions removed and the third replaced by a non-freeness hypothesis. (Contributed by BJ, 27-Apr-2019.)
 |-  F/ x ph   &    |-  ( ph  ->  A  =  B )   &    |-  ( ph  ->  ( ps  <->  ch ) )   =>    |-  ( ph  ->  { x  e.  A  |  ps }  =  { x  e.  B  |  ch }
 )
 
Theorembj-rabeqbida 32727 Version of rabeqbidva 3066 with two dv conditions removed and the third replaced by a non-freeness hypothesis. (Contributed by BJ, 27-Apr-2019.)
 |-  F/ x ph   &    |-  ( ph  ->  A  =  B )   &    |-  (
 ( ph  /\  x  e.  A )  ->  ( ps 
 <->  ch ) )   =>    |-  ( ph  ->  { x  e.  A  |  ps }  =  { x  e.  B  |  ch }
 )
 
Theorembj-seex 32728* Version of seex 4783 with a dv condition replaced by a non-freeness hypothesis (for the sake of illustration). (Contributed by BJ, 27-Apr-2019.)
 |-  F/_ x B   =>    |-  ( ( R Se  A  /\  B  e.  A ) 
 ->  { x  e.  A  |  x R B }  e.  _V )
 
Theorembj-nfcf 32729* Version of df-nfc 2601 with a dv condition replaced with a non-freeness hypothesis. (Contributed by BJ, 2-May-2019.)
 |-  F/_ y A   =>    |-  ( F/_ x A  <->  A. y F/ x  y  e.  A )
 
Theorembj-axsep2 32730* Remove dependency on ax-13 1952, ax-ext 2430, df-cleq 2443 and df-clel 2446 from axsep2 4514 while shortening its proof. Remark: the comment in zfauscl 4515 is misleading: the essential use of ax-ext 2430 is the one via eleq2 2524 and not the one via vtocl 3122, since the latter can be proved without ax-ext 2430 (see bj-vtocl 32718). (Contributed by BJ, 6-Oct-2019.) (Proof modification is discouraged.)
 |-  E. y A. x ( x  e.  y  <->  ( x  e.  z  /\  ph )
 )
 
21.29.5.7  Class abstractions

A few additional theorems on class abstractions and restricted class abstractions.

 
Theorembj-unrab 32731* Generalization of unrab 3721. Equality need not hold. (Contributed by BJ, 21-Apr-2019.)
 |-  ( { x  e.  A  |  ph }  u.  { x  e.  B  |  ps } )  C_  { x  e.  ( A  u.  B )  |  ( ph  \/  ps ) }
 
Theorembj-inrab 32732 Generalization of inrab 3722. (Contributed by BJ, 21-Apr-2019.)
 |-  ( { x  e.  A  |  ph }  i^i  { x  e.  B  |  ps } )  =  { x  e.  ( A  i^i  B )  |  (
 ph  /\  ps ) }
 
Theorembj-inrab2 32733 Shorter proof of inrab 3722. (Contributed by BJ, 21-Apr-2019.) (Proof modification is discouraged.)
 |-  ( { x  e.  A  |  ph }  i^i  { x  e.  A  |  ps } )  =  { x  e.  A  |  ( ph  /\  ps ) }
 
Theorembj-rabtr 32734* Restricted class abstraction with true formula. (Contributed by BJ, 22-Apr-2019.)
 |-  { x  e.  A  | T.  }  =  A
 
Theorembj-rabtrALT 32735* Alternate proof of bj-rabtr 32734. (Contributed by BJ, 22-Apr-2019.) (Proof modification is discouraged.) (New usage is discouraged.)
 |-  { x  e.  A  | T.  }  =  A
 
Theorembj-rabtrAUTO 32736* Proof of bj-rabtr 32734 found automatically by "improve all /depth 3 /3" followed by "minimize *" (which at some point used dummylink 1). (Contributed by BJ, 22-Apr-2019.) (Proof modification is discouraged.) (New usage is discouraged.)
 |-  { x  e.  A  | T.  }  =  A
 
21.29.5.8  Russell's paradox

A few results around Russell's paradox. For clarity, we prove separately its FOL part (bj-ru0 32737) and then two versions (bj-ru1 32738 and bj-ru 32739). Special attention is put on minimizing axiom depencencies.

 
Theorembj-ru0 32737* The FOL part of Russell's paradox ru 3285 (see also bj-ru1 32738, bj-ru 32739). Use of elequ1 1761, bj-elequ12 32477, bj-spvv 32522 (instead of eleq1 2523, eleq12d 2533, spv 1964 as in ru 3285) permits to remove dependency on ax-13 1952, ax-ext 2430, df-cleq 2443, df-clel 2446. (Contributed by BJ, 12-Oct-2019.) (Proof modification is discouraged.)
 |-  -.  A. x ( x  e.  y  <->  -.  x  e.  x )
 
Theorembj-ru1 32738* A version of Russell's paradox ru 3285 (see also bj-ru 32739). Note the more economical use of bj-abeq2 32596 instead of abeq2 2575 to avoid dependency on ax-13 1952. (Contributed by BJ, 12-Oct-2019.) (Proof modification is discouraged.)
 |-  -.  E. y  y  =  { x  |  -.  x  e.  x }
 
Theorembj-ru 32739 Remove dependency on ax-13 1952 (and df-v 3072) from Russell's paradox ru 3285 expressed with primitive symbols and with a class variable  V. Note the more economical use of bj-elissetv 32674 instead of isset 3074. (Contributed by BJ, 12-Oct-2019.) (Proof modification is discouraged.)
 |-  -.  { x  |  -.  x  e.  x }  e.  V
 
21.29.5.9  Some disjointness results

A few utility theorems on disjointness of classes.

 
Theorembj-n0i 32740* Inference associated with n0 3746. (Minimizes three statements by a total of 29 bytes.) (Contributed by BJ, 22-Apr-2019.)
 |-  A  =/= 
 (/)   =>    |- 
 E. x  x  e.  A
 
Theorembj-nel0 32741* From the general negation of membership in  A, infer that  A is the empty set. [Could shorten 0xp 5017?] (Contributed by BJ, 6-Oct-2018.)
 |-  -.  x  e.  A   =>    |-  A  =  (/)
 
Theorembj-disjcsn 32742 A class is disjoint from its singleton. A consequence of regularity. Shorter proof than bnj521 32030. (Contributed by BJ, 4-Apr-2019.)
 |-  ( A  i^i  { A }
 )  =  (/)
 
Theorembj-disjsn01 32743 Disjointness of the singletons containing 0 and 1. This is a consequence of bj-disjcsn 32742 but the present proof does not use regularity. (Contributed by BJ, 4-Apr-2019.) (Proof modification is discouraged.)
 |-  ( { (/) }  i^i  { 1o } )  =  (/)
 
Theorembj-1ex 32744  1o is a set. (Contributed by BJ, 6-Apr-2019.)
 |-  1o  e.  _V
 
Theorembj-2ex 32745  2o is a set. (Contributed by BJ, 6-Apr-2019.)
 |-  2o  e.  _V
 
Theorembj-0nel1 32746 The empty set does not belong to 
{ 1o }. (Contributed by BJ, 6-Apr-2019.)
 |-  (/)  e/  { 1o }
 
Theorembj-1nel0 32747  1o does not belong to  { (/) }. (Contributed by BJ, 6-Apr-2019.)
 |-  1o  e/ 
 { (/) }
 
Theorembj-disjdif 32748 The difference of a class and a class disjoint from it is the original class. (Contributed by BJ, 21-Apr-2019.)
 |-  (
 ( A  i^i  B )  =  (/)  ->  ( A  \  B )  =  A )
 
21.29.5.10  Complements on direct products

A few utility theorems on direct products.

 
Theorembj-xpimasn 32749 The image of a singleton, general case. [Change and relabel xpimasn 5383 accordingly, maybe to xpima2sn.] (Contributed by BJ, 6-Apr-2019.)
 |-  (
 ( A  X.  B ) " { X }
 )  =  if ( X  e.  A ,  B ,  (/) )
 
Theorembj-xpima1sn 32750 The image of a singleton by a direct product, empty case. [Change and relabel xpimasn 5383 accordingly, maybe to xpima2sn.] (Contributed by BJ, 6-Apr-2019.)
 |-  ( X  e/  A  ->  (
 ( A  X.  B ) " { X }
 )  =  (/) )
 
Theorembj-xpima1snALT 32751 Alternate proof of bj-xpima1sn 32750. (Contributed by BJ, 6-Apr-2019.) (Proof modification is discouraged.) (New usage is discouraged.)
 |-  ( X  e/  A  ->  (
 ( A  X.  B ) " { X }
 )  =  (/) )
 
Theorembj-xpima2sn 32752 The image of a singleton by a direct product, nonempty case. [To replace xpimasn 5383] (Contributed by BJ, 6-Apr-2019.) (Proof modification is discouraged.)
 |-  ( X  e.  A  ->  ( ( A  X.  B ) " { X }
 )  =  B )
 
Theorembj-xpnzex 32753 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 6622 (up to commutation in the product). (Contributed by BJ, 6-Oct-2018.) (Proof modification is discouraged.)
 |-  ( A  =/=  (/)  ->  ( ( A  X.  B )  e.  V  ->  B  e.  _V ) )
 
Theorembj-xpexg2 32754 Exported form (curried form) of xpexg 6609. (Contributed by BJ, 2-Apr-2019.)
 |-  ( A  e.  V  ->  ( B  e.  W  ->  ( A  X.  B )  e.  _V ) )
 
Theorembj-xpnzexb 32755 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.)
 |-  ( A  e.  ( V  \  { (/) } )  ->  ( B  e.  _V  <->  ( A  X.  B )  e. 
 _V ) )
 
Theorembj-cleq 32756* Substitution property for certain classes. (Contributed by BJ, 2-Apr-2019.)
 |-  ( A  =  B  ->  { x  |  { x }  e.  ( A " C ) }  =  { x  |  { x }  e.  ( B " C ) } )
 
21.29.5.11  "Singletonization" and tagging

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.

 
Theorembj-sels 32757* If a class is a set, then it is a member of a set. (Contributed by BJ, 3-Apr-2019.)
 |-  ( A  e.  V  ->  E. x  A  e.  x )
 
Theorembj-snsetex 32758* The class of sets "whose singletons" belong to a set is a set. Nice application of ax-rep 4503. (Contributed by BJ, 6-Oct-2018.)
 |-  ( A  e.  V  ->  { x  |  { x }  e.  A }  e.  _V )
 
Theorembj-clex 32759* Sethood of certain classes. (Contributed by BJ, 2-Apr-2019.)
 |-  ( A  e.  V  ->  { x  |  { x }  e.  ( A " B ) }  e.  _V )
 
Syntaxbj-csngl 32760 Syntax for singletonization. (Contributed by BJ, 6-Oct-2018.)
 class sngl  A
 
Definitiondf-bj-sngl 32761* Definition of "singletonization". The class sngl  A is isomorphic to  A 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  A  =  { x  |  E. y  e.  A  x  =  {
 y } }
 
Theorembj-sngleq 32762 Substitution property for sngl. (Contributed by BJ, 6-Oct-2018.)
 |-  ( A  =  B  -> sngl  A  = sngl  B )
 
Theorembj-elsngl 32763* Characterization of the elements of the singletonization of a class. (Contributed by BJ, 6-Oct-2018.)
 |-  ( A  e. sngl  B  <->  E. x  e.  B  A  =  { x } )
 
Theorembj-snglc 32764 Characterization of the elements of 
A in terms of elements of its singletonization. (Contributed by BJ, 6-Oct-2018.)
 |-  ( A  e.  B  <->  { A }  e. sngl  B )
 
Theorembj-snglss 32765 The singletonization of a class is included in its powerclass. (Contributed by BJ, 6-Oct-2018.)
 |- sngl  A  C_  ~P A
 
Theorembj-0nelsngl 32766 The empty set is not a member of a singletonization (neither is any nonsingleton, in particular any von Neuman ordinal except possibly df-1o 7022). (Contributed by BJ, 6-Oct-2018.)
 |-  (/)  e/ sngl  A
 
Theorembj-snglinv 32767* Inverse of singletonization. (Contributed by BJ, 6-Oct-2018.)
 |-  A  =  { x  |  { x }  e. sngl  A }
 
Theorembj-snglex 32768 A class is a set if and only if its singletonization is a set. (Contributed by BJ, 6-Oct-2018.)
 |-  ( A  e.  _V  <-> sngl  A  e.  _V )
 
Syntaxbj-ctag 32769 Syntax for the tagged copy of a class. (Contributed by BJ, 6-Oct-2018.)
 class tag  A
 
Definitiondf-bj-tag 32770 Definition of the tagged copy of a class, that is, the adjunction to (an isomorph of)  A 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  A  =  (sngl  A  u.  { (/) } )
 
Theorembj-tageq 32771 Substitution property for tag. (Contributed by BJ, 6-Oct-2018.)
 |-  ( A  =  B  -> tag  A  = tag  B )
 
Theorembj-eltag 32772* Characterization of the elements of the tagging of a class. (Contributed by BJ, 6-Oct-2018.)
 |-  ( A  e. tag  B  <->  ( E. x  e.  B  A  =  { x }  \/  A  =  (/) ) )
 
Theorembj-0eltag 32773 The empty set belongs to the tagging of a class. (Contributed by BJ, 6-Apr-2019.)
 |-  (/)  e. tag  A
 
Theorembj-tagn0 32774 The tagging of a class is nonempty. (Contributed by BJ, 6-Apr-2019.)
 |- tag  A  =/=  (/)
 
Theorembj-tagss 32775 The tagging of a class is included in its powerclass. (Contributed by BJ, 6-Oct-2018.)
 |- tag  A  C_  ~P A
 
Theorembj-snglsstag 32776 The singletonization is included in the tagging. (Contributed by BJ, 6-Oct-2018.)
 |- sngl  A  C_ tag  A
 
Theorembj-sngltagi 32777 The singletonization is included in the tagging. (Contributed by BJ, 6-Oct-2018.)
 |-  ( A  e. sngl  B  ->  A  e. tag  B )
 
Theorembj-sngltag 32778 The singletonization and the tagging of a set contain the same singletons. (Contributed by BJ, 6-Oct-2018.)
 |-  ( A  e.  V  ->  ( { A }  e. sngl  B  <->  { A }  e. tag  B ) )
 
Theorembj-tagci 32779 Characterization of the elements of 
B in terms of elements of its tagged version. (Contributed by BJ, 6-Oct-2018.)
 |-  ( A  e.  B  ->  { A }  e. tag  B )
 
Theorembj-tagcg 32780 Characterization of the elements of 
B in terms of elements of its tagged version. (Contributed by BJ, 6-Oct-2018.)
 |-  ( A  e.  V  ->  ( A  e.  B  <->  { A }  e. tag  B ) )
 
Theorembj-taginv 32781* Inverse of tagging. (Contributed by BJ, 6-Oct-2018.)
 |-  A  =  { x  |  { x }  e. tag  A }
 
Theorembj-tagex 32782 A class is a set if and only if its tagging is a set. (Contributed by BJ, 6-Oct-2018.)
 |-  ( A  e.  _V  <-> tag  A  e.  _V )
 
Theorembj-xtageq 32783 The products of a given class and the tagging of either of two equal classes are equal. (Contributed by BJ, 6-Apr-2019.)
 |-  ( A  =  B  ->  ( C  X. tag  A )  =  ( C  X. tag  B ) )
 
Theorembj-xtagex 32784 The product of a set and the tagging of a set is a set. (Contributed by BJ, 2-Apr-2019.)
 |-  ( A  e.  V  ->  ( B  e.  W  ->  ( A  X. tag  B )  e.  _V ) )
 
21.29.5.12  Tuples of classes

This subsection gives a definition of an ordered pair, or couple (2-tuple), which "works" for proper classes, as evidenced by Theorems bj-2uplth 32816 and bj-2uplex 32817 (but more importantly, bj-pr21val 32808 and bj-pr22val 32814). 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)  A and  B is denoted by (| A,  B|).

Note that this definition uses the Kuratowksi definition (df-op 3984) as a preliminary definition, and then "redefines" a couple. It could also use the "short" version of the Kuratowski pair (see opthreg 7927) 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 4986, but here we use "tagged versions" of the factors (see df-bj-tag 32770) 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)

 
Syntaxbj-cproj 32785 Syntax for the class projection. (Contributed by BJ, 6-Apr-2019.)
 class  ( A Proj 
 B )
 
Definitiondf-bj-proj 32786* Definition of the class projection corresponding to tagged tuples. The expression  ( A Proj  B
) denotes the projection on the A^th component. (Contributed by BJ, 6-Apr-2019.) (New usage is discouraged.)
 |-  ( A Proj  B )  =  { x  |  { x }  e.  ( B " { A } ) }
 
Theorembj-projeq 32787 Substitution property for Proj. (Contributed by BJ, 6-Apr-2019.)
 |-  ( A  =  C  ->  ( B  =  D  ->  ( A Proj  B )  =  ( C Proj  D ) ) )
 
Theorembj-projeq2 32788 Substitution property for Proj. (Contributed by BJ, 6-Apr-2019.)
 |-  ( B  =  C  ->  ( A Proj  B )  =  ( A Proj  C ) )
 
Theorembj-projun 32789 The class projection on a given component preserves unions. (Contributed by BJ, 6-Apr-2019.)
 |-  ( A Proj  ( B  u.  C ) )  =  (
 ( A Proj  B )  u.  ( A Proj  C ) )
 
Theorembj-projex 32790 Sethood of the class projection. (Contributed by BJ, 6-Apr-2019.)
 |-  ( B  e.  V  ->  ( A Proj  B )  e. 
 _V )
 
Theorembj-projval 32791 Value of the class projection (proof can be shortened by 19 bytes by using sylancl3 32408). (Contributed by BJ, 6-Apr-2019.)
 |-  ( A  e.  V  ->  ( A Proj  ( { B }  X. tag  C ) )  =  if ( B  =  A ,  C ,  (/) ) )
 
Syntaxbj-c1upl 32792 Syntax for Morse monuple. (Contributed by BJ, 6-Apr-2019.)
 class (| A|)
 
Definitiondf-bj-1upl 32793 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 32807, bj-2uplth 32816, bj-2uplex 32817, and the properties of the projections (see df-bj-pr1 32796 and df-bj-pr2 32810). (Contributed by BJ, 6-Apr-2019.) (New usage is discouraged.)
 |- (| A|)  =  ( { (/) }  X. tag  A )
 
Theorembj-1upleq 32794 Substitution property for (|  - |). (Contributed by BJ, 6-Apr-2019.)
 |-  ( A  =  B  -> (| A|)  = (| B|) )
 
Syntaxbj-cpr1 32795 Syntax for the first class tuple projection. (Contributed by BJ, 6-Apr-2019.)
 class pr1  A
 
Definitiondf-bj-pr1 32796 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 32797, bj-pr11val 32800, bj-pr21val 32808, bj-pr1ex 32801. (Contributed by BJ, 6-Apr-2019.) (New usage is discouraged.)
 |- pr1  A  =  ( (/) Proj  A )
 
Theorembj-pr1eq 32797 Substitution property for pr1. (Contributed by BJ, 6-Apr-2019.)
 |-  ( A  =  B  -> pr1  A  = pr1  B )
 
Theorembj-pr1un 32798 The first projection preserves unions. (Contributed by BJ, 6-Apr-2019.)
 |- pr1  ( A  u.  B )  =  (pr1  A  u. pr1  B )
 
Theorembj-pr1val 32799 Value of the first projection. (Contributed by BJ, 6-Apr-2019.)
 |- pr1  ( { A }  X. tag  B )  =  if ( A  =  (/) ,  B ,  (/) )
 
Theorembj-pr11val 32800 Value of the first projection of a monuple. (Contributed by BJ, 6-Apr-2019.)
 |- pr1 (| A|)  =  A
    < Previous  Next >

Page List
Jump to page: Contents  1 1-100 2 101-200 3 201-300 4 301-400 5 401-500 6 501-600 7 601-700 8 701-800 9 801-900 10 901-1000 11 1001-1100 12 1101-1200 13 1201-1300 14 1301-1400 15 1401-1500 16 1501-1600 17 1601-1700 18 1701-1800 19 1801-1900 20 1901-2000 21 2001-2100 22 2101-2200 23 2201-2300 24 2301-2400 25 2401-2500 26 2501-2600 27 2601-2700 28 2701-2800 29 2801-2900 30 2901-3000 31 3001-3100 32 3101-3200 33 3201-3300 34 3301-3400 35 3401-3500 36 3501-3600 37 3601-3700 38 3701-3800 39 3801-3900 40 3901-4000 41 4001-4100 42 4101-4200 43 4201-4300 44 4301-4400 45 4401-4500 46 4501-4600 47 4601-4700 48 4701-4800 49 4801-4900 50 4901-5000 51 5001-5100 52 5101-5200 53 5201-5300 54 5301-5400 55 5401-5500 56 5501-5600 57 5601-5700 58 5701-5800 59 5801-5900 60 5901-6000 61 6001-6100 62 6101-6200 63 6201-6300 64 6301-6400 65 6401-6500 66 6501-6600 67 6601-6700 68 6701-6800 69 6801-6900 70 6901-7000 71 7001-7100 72 7101-7200 73 7201-7300 74 7301-7400 75 7401-7500 76 7501-7600 77 7601-7700 78 7701-7800 79 7801-7900 80 7901-8000 81 8001-8100 82 8101-8200 83 8201-8300 84 8301-8400 85 8401-8500 86 8501-8600 87 8601-8700 88 8701-8800 89 8801-8900 90 8901-9000 91 9001-9100 92 9101-9200 93 9201-9300 94 9301-9400 95 9401-9500 96 9501-9600 97 9601-9700 98 9701-9800 99 9801-9900 100 9901-10000 101 10001-10100 102 10101-10200 103 10201-10300 104 10301-10400 105 10401-10500 106 10501-10600 107 10601-10700 108 10701-10800 109 10801-10900 110 10901-11000 111 11001-11100 112 11101-11200 113 11201-11300 114 11301-11400 115 11401-11500 116 11501-11600 117 11601-11700 118 11701-11800 119 11801-11900 120 11901-12000 121 12001-12100 122 12101-12200 123 12201-12300 124 12301-12400 125 12401-12500 126 12501-12600 127 12601-12700 128 12701-12800 129 12801-12900 130 12901-13000 131 13001-13100 132 13101-13200 133 13201-13300 134 13301-13400 135 13401-13500 136 13501-13600 137 13601-13700 138 13701-13800 139 13801-13900 140 13901-14000 141 14001-14100 142 14101-14200 143 14201-14300 144 14301-14400 145 14401-14500 146 14501-14600 147 14601-14700 148 14701-14800 149 14801-14900 150 14901-15000 151 15001-15100 152 15101-15200 153 15201-15300 154 15301-15400 155 15401-15500 156 15501-15600 157 15601-15700 158 15701-15800 159 15801-15900 160 15901-16000 161 16001-16100 162 16101-16200 163 16201-16300 164 16301-16400 165 16401-16500 166 16501-16600 167 16601-16700 168 16701-16800 169 16801-16900 170 16901-17000 171 17001-17100 172 17101-17200 173 17201-17300 174 17301-17400 175 17401-17500 176 17501-17600 177 17601-17700 178 17701-17800 179 17801-17900 180 17901-18000 181 18001-18100 182 18101-18200 183 18201-18300 184 18301-18400 185 18401-18500 186 18501-18600 187 18601-18700 188 18701-18800 189 18801-18900 190 18901-19000 191 19001-19100 192 19101-19200 193 19201-19300 194 19301-19400 195 19401-19500 196 19501-19600 197 19601-19700 198 19701-19800 199 19801-19900 200 19901-20000 201 20001-20100 202 20101-20200 203 20201-20300 204 20301-20400 205 20401-20500 206 20501-20600 207 20601-20700 208 20701-20800 209 20801-20900 210 20901-21000 211 21001-21100 212 21101-21200 213 21201-21300 214 21301-21400 215 21401-21500 216 21501-21600 217 21601-21700 218 21701-21800 219 21801-21900 220 21901-22000 221 22001-22100 222 22101-22200 223 22201-22300 224 22301-22400 225 22401-22500 226 22501-22600 227 22601-22700 228 22701-22800 229 22801-22900 230 22901-23000 231 23001-23100 232 23101-23200 233 23201-23300 234 23301-23400 235 23401-23500 236 23501-23600 237 23601-23700 238 23701-23800 239 23801-23900 240 23901-24000 241 24001-24100 242 24101-24200 243 24201-24300 244 24301-24400 245 24401-24500 246 24501-24600 247 24601-24700 248 24701-24800 249 24801-24900 250 24901-25000 251 25001-25100 252 25101-25200 253 25201-25300 254 25301-25400 255 25401-25500 256 25501-25600 257 25601-25700 258 25701-25800 259 25801-25900 260 25901-26000 261 26001-26100 262 26101-26200 263 26201-26300 264 26301-26400 265 26401-26500 266 26501-26600 267 26601-26700 268 26701-26800 269 26801-26900 270 26901-27000 271 27001-27100 272 27101-27200 273 27201-27300 274 27301-27400 275 27401-27500 276 27501-27600 277 27601-27700 278 27701-27800 279 27801-27900 280 27901-28000 281 28001-28100 282 28101-28200 283 28201-28300 284 28301-28400 285 28401-28500 286 28501-28600 287 28601-28700 288 28701-28800 289 28801-28900 290 28901-29000 291 29001-29100 292 29101-29200 293 29201-29300 294 29301-29400 295 29401-29500 296 29501-29600 297 29601-29700 298 29701-29800 299 29801-29900 300 29901-30000 301 30001-30100 302 30101-30200 303 30201-30300 304 30301-30400 305 30401-30500 306 30501-30600 307 30601-30700 308 30701-30800 309 30801-30900 310 30901-31000 311 31001-31100 312 31101-31200 313 31201-31300 314 31301-31400 315 31401-31500 316 31501-31600 317 31601-31700 318 31701-31800 319 31801-31900 320 31901-32000 321 32001-32100 322 32101-32200 323 32201-32300 324 32301-32400 325 32401-32500 326 32501-32600 327 32601-32700 328 32701-32800 329 32801-32900 330 32901-33000 331 33001-33100 332 33101-33200 333 33201-33300 334 33301-33400 335 33401-33500 336 33501-33600 337 33601-33700 338 33701-33800 339 33801-33900 340 33901-34000 341 34001-34100 342 34101-34200 343 34201-34300 344 34301-34400 345 34401-34500 346 34501-34600 347 34601-34700 348 34701-34800 349 34801-34900 350 34901-35000 351 35001-35100 352 35101-35200 353 35201-35300 354 35301-35400 355 35401-35500 356 35501-35600 357 35601-35700 358 35701-35800 359 35801-35900 360 35901-35925
  Copyright terms: Public domain < Previous  Next >