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

Theorem karden 8384
Description: If we allow the Axiom of Regularity, we can avoid the Axiom of Choice by defining the cardinal number of a set as the set of all sets equinumerous to it and having the least possible rank. This theorem proves the equinumerosity relationship for this definition (compare carden 8994). The hypotheses correspond to the definition of kard of [Enderton] p. 222 (which we don't define separately since currently we do not use it elsewhere). This theorem along with kardex 8383 justify the definition of kard. The restriction to the least rank prevents the proper class that would result from  { x  |  x  ~~  A }. (Contributed by NM, 18-Dec-2003.)
Hypotheses
Ref Expression
karden.1  |-  A  e. 
_V
karden.2  |-  B  e. 
_V
karden.3  |-  C  =  { x  |  ( x  ~~  A  /\  A. y ( y  ~~  A  ->  ( rank `  x
)  C_  ( rank `  y ) ) ) }
karden.4  |-  D  =  { x  |  ( x  ~~  B  /\  A. y ( y  ~~  B  ->  ( rank `  x
)  C_  ( rank `  y ) ) ) }
Assertion
Ref Expression
karden  |-  ( C  =  D  <->  A  ~~  B )
Distinct variable groups:    x, y, A    x, B, y
Allowed substitution hints:    C( x, y)    D( x, y)

Proof of Theorem karden
Dummy variables  z  w are mutually distinct and distinct from all other variables.
StepHypRef Expression
1 karden.1 . . . . . . . 8  |-  A  e. 
_V
21enref 7620 . . . . . . 7  |-  A  ~~  A
3 breq1 4398 . . . . . . . 8  |-  ( w  =  A  ->  (
w  ~~  A  <->  A  ~~  A ) )
41, 3spcev 3127 . . . . . . 7  |-  ( A 
~~  A  ->  E. w  w  ~~  A )
52, 4ax-mp 5 . . . . . 6  |-  E. w  w  ~~  A
6 abn0 3754 . . . . . 6  |-  ( { w  |  w  ~~  A }  =/=  (/)  <->  E. w  w  ~~  A )
75, 6mpbir 214 . . . . 5  |-  { w  |  w  ~~  A }  =/=  (/)
8 scott0 8375 . . . . . 6  |-  ( { w  |  w  ~~  A }  =  (/)  <->  { z  e.  { w  |  w 
~~  A }  |  A. y  e.  { w  |  w  ~~  A } 
( rank `  z )  C_  ( rank `  y
) }  =  (/) )
98necon3bii 2695 . . . . 5  |-  ( { w  |  w  ~~  A }  =/=  (/)  <->  { z  e.  { w  |  w 
~~  A }  |  A. y  e.  { w  |  w  ~~  A } 
( rank `  z )  C_  ( rank `  y
) }  =/=  (/) )
107, 9mpbi 213 . . . 4  |-  { z  e.  { w  |  w  ~~  A }  |  A. y  e.  {
w  |  w  ~~  A }  ( rank `  z )  C_  ( rank `  y ) }  =/=  (/)
11 rabn0 3755 . . . 4  |-  ( { z  e.  { w  |  w  ~~  A }  |  A. y  e.  {
w  |  w  ~~  A }  ( rank `  z )  C_  ( rank `  y ) }  =/=  (/)  <->  E. z  e.  {
w  |  w  ~~  A } A. y  e. 
{ w  |  w 
~~  A }  ( rank `  z )  C_  ( rank `  y )
)
1210, 11mpbi 213 . . 3  |-  E. z  e.  { w  |  w 
~~  A } A. y  e.  { w  |  w  ~~  A } 
( rank `  z )  C_  ( rank `  y
)
13 vex 3034 . . . . . . . 8  |-  z  e. 
_V
14 breq1 4398 . . . . . . . 8  |-  ( w  =  z  ->  (
w  ~~  A  <->  z  ~~  A ) )
1513, 14elab 3173 . . . . . . 7  |-  ( z  e.  { w  |  w  ~~  A }  <->  z 
~~  A )
16 breq1 4398 . . . . . . . 8  |-  ( w  =  y  ->  (
w  ~~  A  <->  y  ~~  A ) )
1716ralab 3187 . . . . . . 7  |-  ( A. y  e.  { w  |  w  ~~  A } 
( rank `  z )  C_  ( rank `  y
)  <->  A. y ( y 
~~  A  ->  ( rank `  z )  C_  ( rank `  y )
) )
1815, 17anbi12i 711 . . . . . 6  |-  ( ( z  e.  { w  |  w  ~~  A }  /\  A. y  e.  {
w  |  w  ~~  A }  ( rank `  z )  C_  ( rank `  y ) )  <-> 
( z  ~~  A  /\  A. y ( y 
~~  A  ->  ( rank `  z )  C_  ( rank `  y )
) ) )
19 simpl 464 . . . . . . . . 9  |-  ( ( z  ~~  A  /\  A. y ( y  ~~  A  ->  ( rank `  z
)  C_  ( rank `  y ) ) )  ->  z  ~~  A
)
2019a1i 11 . . . . . . . 8  |-  ( C  =  D  ->  (
( z  ~~  A  /\  A. y ( y 
~~  A  ->  ( rank `  z )  C_  ( rank `  y )
) )  ->  z  ~~  A ) )
21 karden.3 . . . . . . . . . . . 12  |-  C  =  { x  |  ( x  ~~  A  /\  A. y ( y  ~~  A  ->  ( rank `  x
)  C_  ( rank `  y ) ) ) }
22 karden.4 . . . . . . . . . . . 12  |-  D  =  { x  |  ( x  ~~  B  /\  A. y ( y  ~~  B  ->  ( rank `  x
)  C_  ( rank `  y ) ) ) }
2321, 22eqeq12i 2485 . . . . . . . . . . 11  |-  ( C  =  D  <->  { x  |  ( x  ~~  A  /\  A. y ( y  ~~  A  -> 
( rank `  x )  C_  ( rank `  y
) ) ) }  =  { x  |  ( x  ~~  B  /\  A. y ( y 
~~  B  ->  ( rank `  x )  C_  ( rank `  y )
) ) } )
24 abbi 2585 . . . . . . . . . . 11  |-  ( A. x ( ( x 
~~  A  /\  A. y ( y  ~~  A  ->  ( rank `  x
)  C_  ( rank `  y ) ) )  <-> 
( x  ~~  B  /\  A. y ( y 
~~  B  ->  ( rank `  x )  C_  ( rank `  y )
) ) )  <->  { x  |  ( x  ~~  A  /\  A. y ( y  ~~  A  -> 
( rank `  x )  C_  ( rank `  y
) ) ) }  =  { x  |  ( x  ~~  B  /\  A. y ( y 
~~  B  ->  ( rank `  x )  C_  ( rank `  y )
) ) } )
2523, 24bitr4i 260 . . . . . . . . . 10  |-  ( C  =  D  <->  A. x
( ( x  ~~  A  /\  A. y ( y  ~~  A  -> 
( rank `  x )  C_  ( rank `  y
) ) )  <->  ( x  ~~  B  /\  A. y
( y  ~~  B  ->  ( rank `  x
)  C_  ( rank `  y ) ) ) ) )
26 breq1 4398 . . . . . . . . . . . . 13  |-  ( x  =  z  ->  (
x  ~~  A  <->  z  ~~  A ) )
27 fveq2 5879 . . . . . . . . . . . . . . . 16  |-  ( x  =  z  ->  ( rank `  x )  =  ( rank `  z
) )
2827sseq1d 3445 . . . . . . . . . . . . . . 15  |-  ( x  =  z  ->  (
( rank `  x )  C_  ( rank `  y
)  <->  ( rank `  z
)  C_  ( rank `  y ) ) )
2928imbi2d 323 . . . . . . . . . . . . . 14  |-  ( x  =  z  ->  (
( y  ~~  A  ->  ( rank `  x
)  C_  ( rank `  y ) )  <->  ( y  ~~  A  ->  ( rank `  z )  C_  ( rank `  y ) ) ) )
3029albidv 1775 . . . . . . . . . . . . 13  |-  ( x  =  z  ->  ( A. y ( y  ~~  A  ->  ( rank `  x
)  C_  ( rank `  y ) )  <->  A. y
( y  ~~  A  ->  ( rank `  z
)  C_  ( rank `  y ) ) ) )
3126, 30anbi12d 725 . . . . . . . . . . . 12  |-  ( x  =  z  ->  (
( x  ~~  A  /\  A. y ( y 
~~  A  ->  ( rank `  x )  C_  ( rank `  y )
) )  <->  ( z  ~~  A  /\  A. y
( y  ~~  A  ->  ( rank `  z
)  C_  ( rank `  y ) ) ) ) )
32 breq1 4398 . . . . . . . . . . . . 13  |-  ( x  =  z  ->  (
x  ~~  B  <->  z  ~~  B ) )
3328imbi2d 323 . . . . . . . . . . . . . 14  |-  ( x  =  z  ->  (
( y  ~~  B  ->  ( rank `  x
)  C_  ( rank `  y ) )  <->  ( y  ~~  B  ->  ( rank `  z )  C_  ( rank `  y ) ) ) )
3433albidv 1775 . . . . . . . . . . . . 13  |-  ( x  =  z  ->  ( A. y ( y  ~~  B  ->  ( rank `  x
)  C_  ( rank `  y ) )  <->  A. y
( y  ~~  B  ->  ( rank `  z
)  C_  ( rank `  y ) ) ) )
3532, 34anbi12d 725 . . . . . . . . . . . 12  |-  ( x  =  z  ->  (
( x  ~~  B  /\  A. y ( y 
~~  B  ->  ( rank `  x )  C_  ( rank `  y )
) )  <->  ( z  ~~  B  /\  A. y
( y  ~~  B  ->  ( rank `  z
)  C_  ( rank `  y ) ) ) ) )
3631, 35bibi12d 328 . . . . . . . . . . 11  |-  ( x  =  z  ->  (
( ( x  ~~  A  /\  A. y ( y  ~~  A  -> 
( rank `  x )  C_  ( rank `  y
) ) )  <->  ( x  ~~  B  /\  A. y
( y  ~~  B  ->  ( rank `  x
)  C_  ( rank `  y ) ) ) )  <->  ( ( z 
~~  A  /\  A. y ( y  ~~  A  ->  ( rank `  z
)  C_  ( rank `  y ) ) )  <-> 
( z  ~~  B  /\  A. y ( y 
~~  B  ->  ( rank `  z )  C_  ( rank `  y )
) ) ) ) )
3736spv 2117 . . . . . . . . . 10  |-  ( A. x ( ( x 
~~  A  /\  A. y ( y  ~~  A  ->  ( rank `  x
)  C_  ( rank `  y ) ) )  <-> 
( x  ~~  B  /\  A. y ( y 
~~  B  ->  ( rank `  x )  C_  ( rank `  y )
) ) )  -> 
( ( z  ~~  A  /\  A. y ( y  ~~  A  -> 
( rank `  z )  C_  ( rank `  y
) ) )  <->  ( z  ~~  B  /\  A. y
( y  ~~  B  ->  ( rank `  z
)  C_  ( rank `  y ) ) ) ) )
3825, 37sylbi 200 . . . . . . . . 9  |-  ( C  =  D  ->  (
( z  ~~  A  /\  A. y ( y 
~~  A  ->  ( rank `  z )  C_  ( rank `  y )
) )  <->  ( z  ~~  B  /\  A. y
( y  ~~  B  ->  ( rank `  z
)  C_  ( rank `  y ) ) ) ) )
39 simpl 464 . . . . . . . . 9  |-  ( ( z  ~~  B  /\  A. y ( y  ~~  B  ->  ( rank `  z
)  C_  ( rank `  y ) ) )  ->  z  ~~  B
)
4038, 39syl6bi 236 . . . . . . . 8  |-  ( C  =  D  ->  (
( z  ~~  A  /\  A. y ( y 
~~  A  ->  ( rank `  z )  C_  ( rank `  y )
) )  ->  z  ~~  B ) )
4120, 40jcad 542 . . . . . . 7  |-  ( C  =  D  ->  (
( z  ~~  A  /\  A. y ( y 
~~  A  ->  ( rank `  z )  C_  ( rank `  y )
) )  ->  (
z  ~~  A  /\  z  ~~  B ) ) )
42 ensym 7636 . . . . . . . 8  |-  ( z 
~~  A  ->  A  ~~  z )
43 entr 7639 . . . . . . . 8  |-  ( ( A  ~~  z  /\  z  ~~  B )  ->  A  ~~  B )
4442, 43sylan 479 . . . . . . 7  |-  ( ( z  ~~  A  /\  z  ~~  B )  ->  A  ~~  B )
4541, 44syl6 33 . . . . . 6  |-  ( C  =  D  ->  (
( z  ~~  A  /\  A. y ( y 
~~  A  ->  ( rank `  z )  C_  ( rank `  y )
) )  ->  A  ~~  B ) )
4618, 45syl5bi 225 . . . . 5  |-  ( C  =  D  ->  (
( z  e.  {
w  |  w  ~~  A }  /\  A. y  e.  { w  |  w 
~~  A }  ( rank `  z )  C_  ( rank `  y )
)  ->  A  ~~  B ) )
4746expd 443 . . . 4  |-  ( C  =  D  ->  (
z  e.  { w  |  w  ~~  A }  ->  ( A. y  e. 
{ w  |  w 
~~  A }  ( rank `  z )  C_  ( rank `  y )  ->  A  ~~  B ) ) )
4847rexlimdv 2870 . . 3  |-  ( C  =  D  ->  ( E. z  e.  { w  |  w  ~~  A } A. y  e.  { w  |  w  ~~  A } 
( rank `  z )  C_  ( rank `  y
)  ->  A  ~~  B ) )
4912, 48mpi 20 . 2  |-  ( C  =  D  ->  A  ~~  B )
50 enen2 7731 . . . . 5  |-  ( A 
~~  B  ->  (
x  ~~  A  <->  x  ~~  B ) )
51 enen2 7731 . . . . . . 7  |-  ( A 
~~  B  ->  (
y  ~~  A  <->  y  ~~  B ) )
5251imbi1d 324 . . . . . 6  |-  ( A 
~~  B  ->  (
( y  ~~  A  ->  ( rank `  x
)  C_  ( rank `  y ) )  <->  ( y  ~~  B  ->  ( rank `  x )  C_  ( rank `  y ) ) ) )
5352albidv 1775 . . . . 5  |-  ( A 
~~  B  ->  ( A. y ( y  ~~  A  ->  ( rank `  x
)  C_  ( rank `  y ) )  <->  A. y
( y  ~~  B  ->  ( rank `  x
)  C_  ( rank `  y ) ) ) )
5450, 53anbi12d 725 . . . 4  |-  ( A 
~~  B  ->  (
( x  ~~  A  /\  A. y ( y 
~~  A  ->  ( rank `  x )  C_  ( rank `  y )
) )  <->  ( x  ~~  B  /\  A. y
( y  ~~  B  ->  ( rank `  x
)  C_  ( rank `  y ) ) ) ) )
5554abbidv 2589 . . 3  |-  ( A 
~~  B  ->  { x  |  ( x  ~~  A  /\  A. y ( y  ~~  A  -> 
( rank `  x )  C_  ( rank `  y
) ) ) }  =  { x  |  ( x  ~~  B  /\  A. y ( y 
~~  B  ->  ( rank `  x )  C_  ( rank `  y )
) ) } )
5655, 21, 223eqtr4g 2530 . 2  |-  ( A 
~~  B  ->  C  =  D )
5749, 56impbii 192 1  |-  ( C  =  D  <->  A  ~~  B )
Colors of variables: wff setvar class
Syntax hints:    -> wi 4    <-> wb 189    /\ wa 376   A.wal 1450    = wceq 1452   E.wex 1671    e. wcel 1904   {cab 2457    =/= wne 2641   A.wral 2756   E.wrex 2757   {crab 2760   _Vcvv 3031    C_ wss 3390   (/)c0 3722   class class class wbr 4395   ` cfv 5589    ~~ cen 7584   rankcrnk 8252
This theorem was proved from axioms:  ax-mp 5  ax-1 6  ax-2 7  ax-3 8  ax-gen 1677  ax-4 1690  ax-5 1766  ax-6 1813  ax-7 1859  ax-8 1906  ax-9 1913  ax-10 1932  ax-11 1937  ax-12 1950  ax-13 2104  ax-ext 2451  ax-sep 4518  ax-nul 4527  ax-pow 4579  ax-pr 4639  ax-un 6602
This theorem depends on definitions:  df-bi 190  df-or 377  df-an 378  df-3or 1008  df-3an 1009  df-tru 1455  df-ex 1672  df-nf 1676  df-sb 1806  df-eu 2323  df-mo 2324  df-clab 2458  df-cleq 2464  df-clel 2467  df-nfc 2601  df-ne 2643  df-ral 2761  df-rex 2762  df-reu 2763  df-rab 2765  df-v 3033  df-sbc 3256  df-csb 3350  df-dif 3393  df-un 3395  df-in 3397  df-ss 3404  df-pss 3406  df-nul 3723  df-if 3873  df-pw 3944  df-sn 3960  df-pr 3962  df-tp 3964  df-op 3966  df-uni 4191  df-int 4227  df-iun 4271  df-iin 4272  df-br 4396  df-opab 4455  df-mpt 4456  df-tr 4491  df-eprel 4750  df-id 4754  df-po 4760  df-so 4761  df-fr 4798  df-we 4800  df-xp 4845  df-rel 4846  df-cnv 4847  df-co 4848  df-dm 4849  df-rn 4850  df-res 4851  df-ima 4852  df-pred 5387  df-ord 5433  df-on 5434  df-lim 5435  df-suc 5436  df-iota 5553  df-fun 5591  df-fn 5592  df-f 5593  df-f1 5594  df-fo 5595  df-f1o 5596  df-fv 5597  df-om 6712  df-wrecs 7046  df-recs 7108  df-rdg 7146  df-er 7381  df-en 7588  df-r1 8253  df-rank 8254
This theorem is referenced by: (None)
  Copyright terms: Public domain W3C validator