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

Theorem hartogs 8449
Description: Given any set, the Hartogs number of the set is the least ordinal not dominated by that set. This theorem proves that there is always an ordinal which satisfies this. (This theorem can be proven trivially using the AC - see theorem ondomon 9385- but this proof works in ZF.) (Contributed by Jeff Hankins, 22-Oct-2009.) (Revised by Mario Carneiro, 15-May-2015.)
Assertion
Ref Expression
hartogs  |-  ( A  e.  V  ->  { x  e.  On  |  x  ~<_  A }  e.  On )
Distinct variable group:    x, A
Allowed substitution hint:    V( x)

Proof of Theorem hartogs
Dummy variables  g 
r  s  t  w  y  z are mutually distinct and distinct from all other variables.
StepHypRef Expression
1 onelon 5748 . . . . . . . . . . . 12  |-  ( ( z  e.  On  /\  y  e.  z )  ->  y  e.  On )
2 vex 3203 . . . . . . . . . . . . 13  |-  z  e. 
_V
3 onelss 5766 . . . . . . . . . . . . . 14  |-  ( z  e.  On  ->  (
y  e.  z  -> 
y  C_  z )
)
43imp 445 . . . . . . . . . . . . 13  |-  ( ( z  e.  On  /\  y  e.  z )  ->  y  C_  z )
5 ssdomg 8001 . . . . . . . . . . . . 13  |-  ( z  e.  _V  ->  (
y  C_  z  ->  y  ~<_  z ) )
62, 4, 5mpsyl 68 . . . . . . . . . . . 12  |-  ( ( z  e.  On  /\  y  e.  z )  ->  y  ~<_  z )
71, 6jca 554 . . . . . . . . . . 11  |-  ( ( z  e.  On  /\  y  e.  z )  ->  ( y  e.  On  /\  y  ~<_  z ) )
8 domtr 8009 . . . . . . . . . . . . 13  |-  ( ( y  ~<_  z  /\  z  ~<_  A )  ->  y  ~<_  A )
98anim2i 593 . . . . . . . . . . . 12  |-  ( ( y  e.  On  /\  ( y  ~<_  z  /\  z  ~<_  A ) )  ->  ( y  e.  On  /\  y  ~<_  A ) )
109anassrs 680 . . . . . . . . . . 11  |-  ( ( ( y  e.  On  /\  y  ~<_  z )  /\  z  ~<_  A )  -> 
( y  e.  On  /\  y  ~<_  A ) )
117, 10sylan 488 . . . . . . . . . 10  |-  ( ( ( z  e.  On  /\  y  e.  z )  /\  z  ~<_  A )  ->  ( y  e.  On  /\  y  ~<_  A ) )
1211exp31 630 . . . . . . . . 9  |-  ( z  e.  On  ->  (
y  e.  z  -> 
( z  ~<_  A  -> 
( y  e.  On  /\  y  ~<_  A ) ) ) )
1312com12 32 . . . . . . . 8  |-  ( y  e.  z  ->  (
z  e.  On  ->  ( z  ~<_  A  ->  (
y  e.  On  /\  y  ~<_  A ) ) ) )
1413impd 447 . . . . . . 7  |-  ( y  e.  z  ->  (
( z  e.  On  /\  z  ~<_  A )  -> 
( y  e.  On  /\  y  ~<_  A ) ) )
15 breq1 4656 . . . . . . . 8  |-  ( x  =  z  ->  (
x  ~<_  A  <->  z  ~<_  A ) )
1615elrab 3363 . . . . . . 7  |-  ( z  e.  { x  e.  On  |  x  ~<_  A }  <->  ( z  e.  On  /\  z  ~<_  A ) )
17 breq1 4656 . . . . . . . 8  |-  ( x  =  y  ->  (
x  ~<_  A  <->  y  ~<_  A ) )
1817elrab 3363 . . . . . . 7  |-  ( y  e.  { x  e.  On  |  x  ~<_  A }  <->  ( y  e.  On  /\  y  ~<_  A ) )
1914, 16, 183imtr4g 285 . . . . . 6  |-  ( y  e.  z  ->  (
z  e.  { x  e.  On  |  x  ~<_  A }  ->  y  e.  { x  e.  On  |  x  ~<_  A } ) )
2019imp 445 . . . . 5  |-  ( ( y  e.  z  /\  z  e.  { x  e.  On  |  x  ~<_  A } )  ->  y  e.  { x  e.  On  |  x  ~<_  A }
)
2120gen2 1723 . . . 4  |-  A. y A. z ( ( y  e.  z  /\  z  e.  { x  e.  On  |  x  ~<_  A }
)  ->  y  e.  { x  e.  On  |  x  ~<_  A } )
22 dftr2 4754 . . . 4  |-  ( Tr 
{ x  e.  On  |  x  ~<_  A }  <->  A. y A. z ( ( y  e.  z  /\  z  e.  {
x  e.  On  |  x  ~<_  A } )  ->  y  e.  {
x  e.  On  |  x  ~<_  A } ) )
2321, 22mpbir 221 . . 3  |-  Tr  {
x  e.  On  |  x  ~<_  A }
24 ssrab2 3687 . . 3  |-  { x  e.  On  |  x  ~<_  A }  C_  On
25 ordon 6982 . . 3  |-  Ord  On
26 trssord 5740 . . 3  |-  ( ( Tr  { x  e.  On  |  x  ~<_  A }  /\  { x  e.  On  |  x  ~<_  A }  C_  On  /\  Ord  On )  ->  Ord  { x  e.  On  |  x  ~<_  A } )
2723, 24, 25, 26mp3an 1424 . 2  |-  Ord  {
x  e.  On  |  x  ~<_  A }
28 eqid 2622 . . . 4  |-  { <. r ,  y >.  |  ( ( ( dom  r  C_  A  /\  (  _I  |`  dom  r )  C_  r  /\  r  C_  ( dom  r  X.  dom  r
) )  /\  (
r  \  _I  )  We  dom  r )  /\  y  =  dom OrdIso ( ( r  \  _I  ) ,  dom  r ) ) }  =  { <. r ,  y >.  |  ( ( ( dom  r  C_  A  /\  (  _I  |`  dom  r )  C_  r  /\  r  C_  ( dom  r  X.  dom  r
) )  /\  (
r  \  _I  )  We  dom  r )  /\  y  =  dom OrdIso ( ( r  \  _I  ) ,  dom  r ) ) }
29 eqid 2622 . . . 4  |-  { <. s ,  t >.  |  E. w  e.  y  E. z  e.  y  (
( s  =  ( g `  w )  /\  t  =  ( g `  z ) )  /\  w  _E  z ) }  =  { <. s ,  t
>.  |  E. w  e.  y  E. z  e.  y  ( (
s  =  ( g `
 w )  /\  t  =  ( g `  z ) )  /\  w  _E  z ) }
3028, 29hartogslem2 8448 . . 3  |-  ( A  e.  V  ->  { x  e.  On  |  x  ~<_  A }  e.  _V )
31 elong 5731 . . 3  |-  ( { x  e.  On  |  x  ~<_  A }  e.  _V  ->  ( { x  e.  On  |  x  ~<_  A }  e.  On  <->  Ord  { x  e.  On  |  x  ~<_  A } ) )
3230, 31syl 17 . 2  |-  ( A  e.  V  ->  ( { x  e.  On  |  x  ~<_  A }  e.  On  <->  Ord  { x  e.  On  |  x  ~<_  A } ) )
3327, 32mpbiri 248 1  |-  ( A  e.  V  ->  { x  e.  On  |  x  ~<_  A }  e.  On )
Colors of variables: wff setvar class
Syntax hints:    -> wi 4    <-> wb 196    /\ wa 384    /\ w3a 1037   A.wal 1481    = wceq 1483    e. wcel 1990   E.wrex 2913   {crab 2916   _Vcvv 3200    \ cdif 3571    C_ wss 3574   class class class wbr 4653   {copab 4712   Tr wtr 4752    _I cid 5023    _E cep 5028    We wwe 5072    X. cxp 5112   dom cdm 5114    |` cres 5116   Ord word 5722   Oncon0 5723   ` cfv 5888    ~<_ cdom 7953  OrdIsocoi 8414
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-8 1992  ax-9 1999  ax-10 2019  ax-11 2034  ax-12 2047  ax-13 2246  ax-ext 2602  ax-rep 4771  ax-sep 4781  ax-nul 4789  ax-pow 4843  ax-pr 4906  ax-un 6949
This theorem depends on definitions:  df-bi 197  df-or 385  df-an 386  df-3or 1038  df-3an 1039  df-tru 1486  df-ex 1705  df-nf 1710  df-sb 1881  df-eu 2474  df-mo 2475  df-clab 2609  df-cleq 2615  df-clel 2618  df-nfc 2753  df-ne 2795  df-ral 2917  df-rex 2918  df-reu 2919  df-rmo 2920  df-rab 2921  df-v 3202  df-sbc 3436  df-csb 3534  df-dif 3577  df-un 3579  df-in 3581  df-ss 3588  df-pss 3590  df-nul 3916  df-if 4087  df-pw 4160  df-sn 4178  df-pr 4180  df-tp 4182  df-op 4184  df-uni 4437  df-iun 4522  df-br 4654  df-opab 4713  df-mpt 4730  df-tr 4753  df-id 5024  df-eprel 5029  df-po 5035  df-so 5036  df-fr 5073  df-se 5074  df-we 5075  df-xp 5120  df-rel 5121  df-cnv 5122  df-co 5123  df-dm 5124  df-rn 5125  df-res 5126  df-ima 5127  df-pred 5680  df-ord 5726  df-on 5727  df-lim 5728  df-suc 5729  df-iota 5851  df-fun 5890  df-fn 5891  df-f 5892  df-f1 5893  df-fo 5894  df-f1o 5895  df-fv 5896  df-isom 5897  df-riota 6611  df-wrecs 7407  df-recs 7468  df-en 7956  df-dom 7957  df-oi 8415
This theorem is referenced by:  card2on  8459  harf  8465  harval  8467
  Copyright terms: Public domain W3C validator