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

Theorem unisngl 21330
Description: Taking the union of the set of singletons recovers the initial set. (Contributed by Thierry Arnoux, 9-Jan-2020.)
Hypothesis
Ref Expression
dissnref.c  |-  C  =  { u  |  E. x  e.  X  u  =  { x } }
Assertion
Ref Expression
unisngl  |-  X  = 
U. C
Distinct variable groups:    u, C, x    u, X, x

Proof of Theorem unisngl
Dummy variable  y is distinct from all other variables.
StepHypRef Expression
1 dissnref.c . . 3  |-  C  =  { u  |  E. x  e.  X  u  =  { x } }
21unieqi 4445 . 2  |-  U. C  =  U. { u  |  E. x  e.  X  u  =  { x } }
3 simpl 473 . . . . . . . . 9  |-  ( ( y  e.  u  /\  u  =  { x } )  ->  y  e.  u )
4 simpr 477 . . . . . . . . 9  |-  ( ( y  e.  u  /\  u  =  { x } )  ->  u  =  { x } )
53, 4eleqtrd 2703 . . . . . . . 8  |-  ( ( y  e.  u  /\  u  =  { x } )  ->  y  e.  { x } )
65exlimiv 1858 . . . . . . 7  |-  ( E. u ( y  e.  u  /\  u  =  { x } )  ->  y  e.  {
x } )
7 eqid 2622 . . . . . . . 8  |-  { x }  =  { x }
8 snex 4908 . . . . . . . . 9  |-  { x }  e.  _V
9 eleq2 2690 . . . . . . . . . 10  |-  ( u  =  { x }  ->  ( y  e.  u  <->  y  e.  { x }
) )
10 eqeq1 2626 . . . . . . . . . 10  |-  ( u  =  { x }  ->  ( u  =  {
x }  <->  { x }  =  { x } ) )
119, 10anbi12d 747 . . . . . . . . 9  |-  ( u  =  { x }  ->  ( ( y  e.  u  /\  u  =  { x } )  <-> 
( y  e.  {
x }  /\  {
x }  =  {
x } ) ) )
128, 11spcev 3300 . . . . . . . 8  |-  ( ( y  e.  { x }  /\  { x }  =  { x } )  ->  E. u ( y  e.  u  /\  u  =  { x } ) )
137, 12mpan2 707 . . . . . . 7  |-  ( y  e.  { x }  ->  E. u ( y  e.  u  /\  u  =  { x } ) )
146, 13impbii 199 . . . . . 6  |-  ( E. u ( y  e.  u  /\  u  =  { x } )  <-> 
y  e.  { x } )
15 velsn 4193 . . . . . 6  |-  ( y  e.  { x }  <->  y  =  x )
16 equcom 1945 . . . . . 6  |-  ( y  =  x  <->  x  =  y )
1714, 15, 163bitri 286 . . . . 5  |-  ( E. u ( y  e.  u  /\  u  =  { x } )  <-> 
x  =  y )
1817rexbii 3041 . . . 4  |-  ( E. x  e.  X  E. u ( y  e.  u  /\  u  =  { x } )  <->  E. x  e.  X  x  =  y )
19 r19.42v 3092 . . . . . 6  |-  ( E. x  e.  X  ( y  e.  u  /\  u  =  { x } )  <->  ( y  e.  u  /\  E. x  e.  X  u  =  { x } ) )
2019exbii 1774 . . . . 5  |-  ( E. u E. x  e.  X  ( y  e.  u  /\  u  =  { x } )  <->  E. u ( y  e.  u  /\  E. x  e.  X  u  =  { x } ) )
21 rexcom4 3225 . . . . 5  |-  ( E. x  e.  X  E. u ( y  e.  u  /\  u  =  { x } )  <->  E. u E. x  e.  X  ( y  e.  u  /\  u  =  { x } ) )
22 eluniab 4447 . . . . 5  |-  ( y  e.  U. { u  |  E. x  e.  X  u  =  { x } }  <->  E. u ( y  e.  u  /\  E. x  e.  X  u  =  { x } ) )
2320, 21, 223bitr4ri 293 . . . 4  |-  ( y  e.  U. { u  |  E. x  e.  X  u  =  { x } }  <->  E. x  e.  X  E. u ( y  e.  u  /\  u  =  { x } ) )
24 risset 3062 . . . 4  |-  ( y  e.  X  <->  E. x  e.  X  x  =  y )
2518, 23, 243bitr4i 292 . . 3  |-  ( y  e.  U. { u  |  E. x  e.  X  u  =  { x } }  <->  y  e.  X
)
2625eqriv 2619 . 2  |-  U. {
u  |  E. x  e.  X  u  =  { x } }  =  X
272, 26eqtr2i 2645 1  |-  X  = 
U. C
Colors of variables: wff setvar class
Syntax hints:    /\ wa 384    = wceq 1483   E.wex 1704    e. wcel 1990   {cab 2608   E.wrex 2913   {csn 4177   U.cuni 4436
This theorem was proved from axioms:  ax-mp 5  ax-1 6  ax-2 7  ax-3 8  ax-gen 1722  ax-4 1737  ax-5 1839  ax-6 1888  ax-7 1935  ax-9 1999  ax-10 2019  ax-11 2034  ax-12 2047  ax-13 2246  ax-ext 2602  ax-sep 4781  ax-nul 4789  ax-pr 4906
This theorem depends on definitions:  df-bi 197  df-or 385  df-an 386  df-tru 1486  df-ex 1705  df-nf 1710  df-sb 1881  df-clab 2609  df-cleq 2615  df-clel 2618  df-nfc 2753  df-ral 2917  df-rex 2918  df-v 3202  df-dif 3577  df-un 3579  df-nul 3916  df-sn 4178  df-pr 4180  df-uni 4437
This theorem is referenced by:  dissnref  21331  dissnlocfin  21332
  Copyright terms: Public domain W3C validator