MPE Home Metamath Proof Explorer < Previous   Next >
Nearby theorems
Mirrors  >  Home  >  MPE Home  >  Th. List  >  opthprc Structured version   Unicode version

Theorem opthprc 5036
Description: Justification theorem for an ordered pair definition that works for any classes, including proper classes. This is a possible definition implied by the footnote in [Jech] p. 78, which says, "The sophisticated reader will not object to our use of a pair of classes." (Contributed by NM, 28-Sep-2003.)
Assertion
Ref Expression
opthprc  |-  ( ( ( A  X.  { (/)
} )  u.  ( B  X.  { { (/) } } ) )  =  ( ( C  X.  { (/) } )  u.  ( D  X.  { { (/) } } ) )  <->  ( A  =  C  /\  B  =  D ) )

Proof of Theorem opthprc
Dummy variable  x is distinct from all other variables.
StepHypRef Expression
1 eleq2 2527 . . . . 5  |-  ( ( ( A  X.  { (/)
} )  u.  ( B  X.  { { (/) } } ) )  =  ( ( C  X.  { (/) } )  u.  ( D  X.  { { (/) } } ) )  ->  ( <. x ,  (/) >.  e.  (
( A  X.  { (/)
} )  u.  ( B  X.  { { (/) } } ) )  <->  <. x ,  (/) >.  e.  ( ( C  X.  { (/) } )  u.  ( D  X.  { { (/) } } ) ) ) )
2 0ex 4569 . . . . . . . . 9  |-  (/)  e.  _V
32snid 4044 . . . . . . . 8  |-  (/)  e.  { (/)
}
4 opelxp 5018 . . . . . . . 8  |-  ( <.
x ,  (/) >.  e.  ( A  X.  { (/) } )  <->  ( x  e.  A  /\  (/)  e.  { (/)
} ) )
53, 4mpbiran2 917 . . . . . . 7  |-  ( <.
x ,  (/) >.  e.  ( A  X.  { (/) } )  <->  x  e.  A
)
6 opelxp 5018 . . . . . . . 8  |-  ( <.
x ,  (/) >.  e.  ( B  X.  { { (/)
} } )  <->  ( x  e.  B  /\  (/)  e.  { { (/) } } ) )
7 0nep0 4608 . . . . . . . . . 10  |-  (/)  =/=  { (/)
}
82elsnc 4040 . . . . . . . . . 10  |-  ( (/)  e.  { { (/) } }  <->  (/)  =  { (/) } )
97, 8nemtbir 2782 . . . . . . . . 9  |-  -.  (/)  e.  { { (/) } }
109bianfi 923 . . . . . . . 8  |-  ( (/)  e.  { { (/) } }  <->  ( x  e.  B  /\  (/) 
e.  { { (/) } } ) )
116, 10bitr4i 252 . . . . . . 7  |-  ( <.
x ,  (/) >.  e.  ( B  X.  { { (/)
} } )  <->  (/)  e.  { { (/) } } )
125, 11orbi12i 519 . . . . . 6  |-  ( (
<. x ,  (/) >.  e.  ( A  X.  { (/) } )  \/  <. x ,  (/) >.  e.  ( B  X.  { { (/) } } ) )  <->  ( x  e.  A  \/  (/)  e.  { { (/) } } ) )
13 elun 3631 . . . . . 6  |-  ( <.
x ,  (/) >.  e.  ( ( A  X.  { (/)
} )  u.  ( B  X.  { { (/) } } ) )  <->  ( <. x ,  (/) >.  e.  ( A  X.  { (/) } )  \/  <. x ,  (/) >.  e.  ( B  X.  { { (/) } } ) ) )
149biorfi 405 . . . . . 6  |-  ( x  e.  A  <->  ( x  e.  A  \/  (/)  e.  { { (/) } } ) )
1512, 13, 143bitr4ri 278 . . . . 5  |-  ( x  e.  A  <->  <. x ,  (/) >.  e.  ( ( A  X.  { (/) } )  u.  ( B  X.  { { (/) } } ) ) )
16 opelxp 5018 . . . . . . . 8  |-  ( <.
x ,  (/) >.  e.  ( C  X.  { (/) } )  <->  ( x  e.  C  /\  (/)  e.  { (/)
} ) )
173, 16mpbiran2 917 . . . . . . 7  |-  ( <.
x ,  (/) >.  e.  ( C  X.  { (/) } )  <->  x  e.  C
)
18 opelxp 5018 . . . . . . . 8  |-  ( <.
x ,  (/) >.  e.  ( D  X.  { { (/)
} } )  <->  ( x  e.  D  /\  (/)  e.  { { (/) } } ) )
199bianfi 923 . . . . . . . 8  |-  ( (/)  e.  { { (/) } }  <->  ( x  e.  D  /\  (/) 
e.  { { (/) } } ) )
2018, 19bitr4i 252 . . . . . . 7  |-  ( <.
x ,  (/) >.  e.  ( D  X.  { { (/)
} } )  <->  (/)  e.  { { (/) } } )
2117, 20orbi12i 519 . . . . . 6  |-  ( (
<. x ,  (/) >.  e.  ( C  X.  { (/) } )  \/  <. x ,  (/) >.  e.  ( D  X.  { { (/) } } ) )  <->  ( x  e.  C  \/  (/)  e.  { { (/) } } ) )
22 elun 3631 . . . . . 6  |-  ( <.
x ,  (/) >.  e.  ( ( C  X.  { (/)
} )  u.  ( D  X.  { { (/) } } ) )  <->  ( <. x ,  (/) >.  e.  ( C  X.  { (/) } )  \/  <. x ,  (/) >.  e.  ( D  X.  { { (/) } } ) ) )
239biorfi 405 . . . . . 6  |-  ( x  e.  C  <->  ( x  e.  C  \/  (/)  e.  { { (/) } } ) )
2421, 22, 233bitr4ri 278 . . . . 5  |-  ( x  e.  C  <->  <. x ,  (/) >.  e.  ( ( C  X.  { (/) } )  u.  ( D  X.  { { (/) } } ) ) )
251, 15, 243bitr4g 288 . . . 4  |-  ( ( ( A  X.  { (/)
} )  u.  ( B  X.  { { (/) } } ) )  =  ( ( C  X.  { (/) } )  u.  ( D  X.  { { (/) } } ) )  ->  ( x  e.  A  <->  x  e.  C
) )
2625eqrdv 2451 . . 3  |-  ( ( ( A  X.  { (/)
} )  u.  ( B  X.  { { (/) } } ) )  =  ( ( C  X.  { (/) } )  u.  ( D  X.  { { (/) } } ) )  ->  A  =  C )
27 eleq2 2527 . . . . 5  |-  ( ( ( A  X.  { (/)
} )  u.  ( B  X.  { { (/) } } ) )  =  ( ( C  X.  { (/) } )  u.  ( D  X.  { { (/) } } ) )  ->  ( <. x ,  { (/) } >.  e.  ( ( A  X.  { (/) } )  u.  ( B  X.  { { (/) } } ) )  <->  <. x ,  { (/)
} >.  e.  ( ( C  X.  { (/) } )  u.  ( D  X.  { { (/) } } ) ) ) )
28 opelxp 5018 . . . . . . . 8  |-  ( <.
x ,  { (/) }
>.  e.  ( A  X.  { (/) } )  <->  ( x  e.  A  /\  { (/) }  e.  { (/) } ) )
29 p0ex 4624 . . . . . . . . . . . 12  |-  { (/) }  e.  _V
3029elsnc 4040 . . . . . . . . . . 11  |-  ( {
(/) }  e.  { (/) }  <->  { (/) }  =  (/) )
31 eqcom 2463 . . . . . . . . . . 11  |-  ( {
(/) }  =  (/)  <->  (/)  =  { (/)
} )
3230, 31bitri 249 . . . . . . . . . 10  |-  ( {
(/) }  e.  { (/) }  <->  (/)  =  { (/) } )
337, 32nemtbir 2782 . . . . . . . . 9  |-  -.  { (/)
}  e.  { (/) }
3433bianfi 923 . . . . . . . 8  |-  ( {
(/) }  e.  { (/) }  <-> 
( x  e.  A  /\  { (/) }  e.  { (/)
} ) )
3528, 34bitr4i 252 . . . . . . 7  |-  ( <.
x ,  { (/) }
>.  e.  ( A  X.  { (/) } )  <->  { (/) }  e.  {
(/) } )
3629snid 4044 . . . . . . . 8  |-  { (/) }  e.  { { (/) } }
37 opelxp 5018 . . . . . . . 8  |-  ( <.
x ,  { (/) }
>.  e.  ( B  X.  { { (/) } } )  <-> 
( x  e.  B  /\  { (/) }  e.  { { (/) } } ) )
3836, 37mpbiran2 917 . . . . . . 7  |-  ( <.
x ,  { (/) }
>.  e.  ( B  X.  { { (/) } } )  <-> 
x  e.  B )
3935, 38orbi12i 519 . . . . . 6  |-  ( (
<. x ,  { (/) }
>.  e.  ( A  X.  { (/) } )  \/ 
<. x ,  { (/) }
>.  e.  ( B  X.  { { (/) } } ) )  <->  ( { (/) }  e.  { (/) }  \/  x  e.  B )
)
40 elun 3631 . . . . . 6  |-  ( <.
x ,  { (/) }
>.  e.  ( ( A  X.  { (/) } )  u.  ( B  X.  { { (/) } } ) )  <->  ( <. x ,  { (/) } >.  e.  ( A  X.  { (/) } )  \/  <. x ,  { (/) } >.  e.  ( B  X.  { { (/)
} } ) ) )
41 biorf 403 . . . . . . 7  |-  ( -. 
{ (/) }  e.  { (/)
}  ->  ( x  e.  B  <->  ( { (/) }  e.  { (/) }  \/  x  e.  B )
) )
4233, 41ax-mp 5 . . . . . 6  |-  ( x  e.  B  <->  ( { (/)
}  e.  { (/) }  \/  x  e.  B
) )
4339, 40, 423bitr4ri 278 . . . . 5  |-  ( x  e.  B  <->  <. x ,  { (/) } >.  e.  ( ( A  X.  { (/)
} )  u.  ( B  X.  { { (/) } } ) ) )
44 opelxp 5018 . . . . . . . 8  |-  ( <.
x ,  { (/) }
>.  e.  ( C  X.  { (/) } )  <->  ( x  e.  C  /\  { (/) }  e.  { (/) } ) )
4533bianfi 923 . . . . . . . 8  |-  ( {
(/) }  e.  { (/) }  <-> 
( x  e.  C  /\  { (/) }  e.  { (/)
} ) )
4644, 45bitr4i 252 . . . . . . 7  |-  ( <.
x ,  { (/) }
>.  e.  ( C  X.  { (/) } )  <->  { (/) }  e.  {
(/) } )
47 opelxp 5018 . . . . . . . 8  |-  ( <.
x ,  { (/) }
>.  e.  ( D  X.  { { (/) } } )  <-> 
( x  e.  D  /\  { (/) }  e.  { { (/) } } ) )
4836, 47mpbiran2 917 . . . . . . 7  |-  ( <.
x ,  { (/) }
>.  e.  ( D  X.  { { (/) } } )  <-> 
x  e.  D )
4946, 48orbi12i 519 . . . . . 6  |-  ( (
<. x ,  { (/) }
>.  e.  ( C  X.  { (/) } )  \/ 
<. x ,  { (/) }
>.  e.  ( D  X.  { { (/) } } ) )  <->  ( { (/) }  e.  { (/) }  \/  x  e.  D )
)
50 elun 3631 . . . . . 6  |-  ( <.
x ,  { (/) }
>.  e.  ( ( C  X.  { (/) } )  u.  ( D  X.  { { (/) } } ) )  <->  ( <. x ,  { (/) } >.  e.  ( C  X.  { (/) } )  \/  <. x ,  { (/) } >.  e.  ( D  X.  { { (/)
} } ) ) )
51 biorf 403 . . . . . . 7  |-  ( -. 
{ (/) }  e.  { (/)
}  ->  ( x  e.  D  <->  ( { (/) }  e.  { (/) }  \/  x  e.  D )
) )
5233, 51ax-mp 5 . . . . . 6  |-  ( x  e.  D  <->  ( { (/)
}  e.  { (/) }  \/  x  e.  D
) )
5349, 50, 523bitr4ri 278 . . . . 5  |-  ( x  e.  D  <->  <. x ,  { (/) } >.  e.  ( ( C  X.  { (/)
} )  u.  ( D  X.  { { (/) } } ) ) )
5427, 43, 533bitr4g 288 . . . 4  |-  ( ( ( A  X.  { (/)
} )  u.  ( B  X.  { { (/) } } ) )  =  ( ( C  X.  { (/) } )  u.  ( D  X.  { { (/) } } ) )  ->  ( x  e.  B  <->  x  e.  D
) )
5554eqrdv 2451 . . 3  |-  ( ( ( A  X.  { (/)
} )  u.  ( B  X.  { { (/) } } ) )  =  ( ( C  X.  { (/) } )  u.  ( D  X.  { { (/) } } ) )  ->  B  =  D )
5626, 55jca 530 . 2  |-  ( ( ( A  X.  { (/)
} )  u.  ( B  X.  { { (/) } } ) )  =  ( ( C  X.  { (/) } )  u.  ( D  X.  { { (/) } } ) )  ->  ( A  =  C  /\  B  =  D ) )
57 xpeq1 5002 . . 3  |-  ( A  =  C  ->  ( A  X.  { (/) } )  =  ( C  X.  { (/) } ) )
58 xpeq1 5002 . . 3  |-  ( B  =  D  ->  ( B  X.  { { (/) } } )  =  ( D  X.  { { (/)
} } ) )
59 uneq12 3639 . . 3  |-  ( ( ( A  X.  { (/)
} )  =  ( C  X.  { (/) } )  /\  ( B  X.  { { (/) } } )  =  ( D  X.  { { (/)
} } ) )  ->  ( ( A  X.  { (/) } )  u.  ( B  X.  { { (/) } } ) )  =  ( ( C  X.  { (/) } )  u.  ( D  X.  { { (/) } } ) ) )
6057, 58, 59syl2an 475 . 2  |-  ( ( A  =  C  /\  B  =  D )  ->  ( ( A  X.  { (/) } )  u.  ( B  X.  { { (/) } } ) )  =  ( ( C  X.  { (/) } )  u.  ( D  X.  { { (/) } } ) ) )
6156, 60impbii 188 1  |-  ( ( ( A  X.  { (/)
} )  u.  ( B  X.  { { (/) } } ) )  =  ( ( C  X.  { (/) } )  u.  ( D  X.  { { (/) } } ) )  <->  ( A  =  C  /\  B  =  D ) )
Colors of variables: wff setvar class
Syntax hints:   -. wn 3    <-> wb 184    \/ wo 366    /\ wa 367    = wceq 1398    e. wcel 1823    u. cun 3459   (/)c0 3783   {csn 4016   <.cop 4022    X. cxp 4986
This theorem was proved from axioms:  ax-mp 5  ax-1 6  ax-2 7  ax-3 8  ax-gen 1623  ax-4 1636  ax-5 1709  ax-6 1752  ax-7 1795  ax-9 1827  ax-10 1842  ax-11 1847  ax-12 1859  ax-13 2004  ax-ext 2432  ax-sep 4560  ax-nul 4568  ax-pow 4615  ax-pr 4676
This theorem depends on definitions:  df-bi 185  df-or 368  df-an 369  df-3an 973  df-tru 1401  df-ex 1618  df-nf 1622  df-sb 1745  df-clab 2440  df-cleq 2446  df-clel 2449  df-nfc 2604  df-ne 2651  df-ral 2809  df-rex 2810  df-rab 2813  df-v 3108  df-dif 3464  df-un 3466  df-in 3468  df-ss 3475  df-nul 3784  df-if 3930  df-pw 4001  df-sn 4017  df-pr 4019  df-op 4023  df-opab 4498  df-xp 4994
This theorem is referenced by: (None)
  Copyright terms: Public domain W3C validator