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

Theorem xpnz 5432
Description: The Cartesian product of nonempty classes is nonempty. (Variation of a theorem contributed by Raph Levien, 30-Jun-2006.) (Contributed by NM, 30-Jun-2006.)
Assertion
Ref Expression
xpnz  |-  ( ( A  =/=  (/)  /\  B  =/=  (/) )  <->  ( A  X.  B )  =/=  (/) )

Proof of Theorem xpnz
Dummy variables  x  y  z are mutually distinct and distinct from all other variables.
StepHypRef Expression
1 n0 3799 . . . . 5  |-  ( A  =/=  (/)  <->  E. x  x  e.  A )
2 n0 3799 . . . . 5  |-  ( B  =/=  (/)  <->  E. y  y  e.  B )
31, 2anbi12i 697 . . . 4  |-  ( ( A  =/=  (/)  /\  B  =/=  (/) )  <->  ( E. x  x  e.  A  /\  E. y  y  e.  B ) )
4 eeanv 1957 . . . 4  |-  ( E. x E. y ( x  e.  A  /\  y  e.  B )  <->  ( E. x  x  e.  A  /\  E. y 
y  e.  B ) )
53, 4bitr4i 252 . . 3  |-  ( ( A  =/=  (/)  /\  B  =/=  (/) )  <->  E. x E. y ( x  e.  A  /\  y  e.  B ) )
6 opex 4717 . . . . . 6  |-  <. x ,  y >.  e.  _V
7 eleq1 2539 . . . . . . 7  |-  ( z  =  <. x ,  y
>.  ->  ( z  e.  ( A  X.  B
)  <->  <. x ,  y
>.  e.  ( A  X.  B ) ) )
8 opelxp 5035 . . . . . . 7  |-  ( <.
x ,  y >.  e.  ( A  X.  B
)  <->  ( x  e.  A  /\  y  e.  B ) )
97, 8syl6bb 261 . . . . . 6  |-  ( z  =  <. x ,  y
>.  ->  ( z  e.  ( A  X.  B
)  <->  ( x  e.  A  /\  y  e.  B ) ) )
106, 9spcev 3210 . . . . 5  |-  ( ( x  e.  A  /\  y  e.  B )  ->  E. z  z  e.  ( A  X.  B
) )
11 n0 3799 . . . . 5  |-  ( ( A  X.  B )  =/=  (/)  <->  E. z  z  e.  ( A  X.  B
) )
1210, 11sylibr 212 . . . 4  |-  ( ( x  e.  A  /\  y  e.  B )  ->  ( A  X.  B
)  =/=  (/) )
1312exlimivv 1699 . . 3  |-  ( E. x E. y ( x  e.  A  /\  y  e.  B )  ->  ( A  X.  B
)  =/=  (/) )
145, 13sylbi 195 . 2  |-  ( ( A  =/=  (/)  /\  B  =/=  (/) )  ->  ( A  X.  B )  =/=  (/) )
15 xpeq1 5019 . . . . 5  |-  ( A  =  (/)  ->  ( A  X.  B )  =  ( (/)  X.  B
) )
16 0xp 5086 . . . . 5  |-  ( (/)  X.  B )  =  (/)
1715, 16syl6eq 2524 . . . 4  |-  ( A  =  (/)  ->  ( A  X.  B )  =  (/) )
1817necon3i 2707 . . 3  |-  ( ( A  X.  B )  =/=  (/)  ->  A  =/=  (/) )
19 xpeq2 5020 . . . . 5  |-  ( B  =  (/)  ->  ( A  X.  B )  =  ( A  X.  (/) ) )
20 xp0 5431 . . . . 5  |-  ( A  X.  (/) )  =  (/)
2119, 20syl6eq 2524 . . . 4  |-  ( B  =  (/)  ->  ( A  X.  B )  =  (/) )
2221necon3i 2707 . . 3  |-  ( ( A  X.  B )  =/=  (/)  ->  B  =/=  (/) )
2318, 22jca 532 . 2  |-  ( ( A  X.  B )  =/=  (/)  ->  ( A  =/=  (/)  /\  B  =/=  (/) ) )
2414, 23impbii 188 1  |-  ( ( A  =/=  (/)  /\  B  =/=  (/) )  <->  ( A  X.  B )  =/=  (/) )
Colors of variables: wff setvar class
Syntax hints:    <-> wb 184    /\ wa 369    = wceq 1379   E.wex 1596    e. wcel 1767    =/= wne 2662   (/)c0 3790   <.cop 4039    X. cxp 5003
This theorem was proved from axioms:  ax-mp 5  ax-1 6  ax-2 7  ax-3 8  ax-gen 1601  ax-4 1612  ax-5 1680  ax-6 1719  ax-7 1739  ax-9 1771  ax-10 1786  ax-11 1791  ax-12 1803  ax-13 1968  ax-ext 2445  ax-sep 4574  ax-nul 4582  ax-pr 4692
This theorem depends on definitions:  df-bi 185  df-or 370  df-an 371  df-3an 975  df-tru 1382  df-ex 1597  df-nf 1600  df-sb 1712  df-eu 2279  df-mo 2280  df-clab 2453  df-cleq 2459  df-clel 2462  df-nfc 2617  df-ne 2664  df-ral 2822  df-rex 2823  df-rab 2826  df-v 3120  df-dif 3484  df-un 3486  df-in 3488  df-ss 3495  df-nul 3791  df-if 3946  df-sn 4034  df-pr 4036  df-op 4040  df-br 4454  df-opab 4512  df-xp 5011  df-rel 5012  df-cnv 5013
This theorem is referenced by:  xpeq0  5433  ssxpb  5447  xp11  5448  unixpid  5548  xpexr2  6736  frxp  6905  xpfir  7754  axcc2lem  8828  axdc4lem  8847  mamufacex  18760  txindis  20003  bj-xpnzex  33998  bj-1upln0  34049  bj-2upln1upl  34064  dibn0  36351
  Copyright terms: Public domain W3C validator