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

Theorem karden 7565
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 least possible rank. This theorem proves the equinumerosity relationship for this definition (compare carden 8173). 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 7564 justify the definition of kard. The restriction to 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 6894 . . . . . . 7  |-  A  ~~  A
3 breq1 4026 . . . . . . . 8  |-  ( w  =  A  ->  (
w  ~~  A  <->  A  ~~  A ) )
41, 3spcev 2875 . . . . . . 7  |-  ( A 
~~  A  ->  E. w  w  ~~  A )
52, 4ax-mp 8 . . . . . 6  |-  E. w  w  ~~  A
6 abn0 3473 . . . . . 6  |-  ( { w  |  w  ~~  A }  =/=  (/)  <->  E. w  w  ~~  A )
75, 6mpbir 200 . . . . 5  |-  { w  |  w  ~~  A }  =/=  (/)
8 scott0 7556 . . . . . 6  |-  ( { w  |  w  ~~  A }  =  (/)  <->  { z  e.  { w  |  w 
~~  A }  |  A. y  e.  { w  |  w  ~~  A } 
( rank `  z )  C_  ( rank `  y
) }  =  (/) )
98necon3bii 2478 . . . . 5  |-  ( { w  |  w  ~~  A }  =/=  (/)  <->  { z  e.  { w  |  w 
~~  A }  |  A. y  e.  { w  |  w  ~~  A } 
( rank `  z )  C_  ( rank `  y
) }  =/=  (/) )
107, 9mpbi 199 . . . 4  |-  { z  e.  { w  |  w  ~~  A }  |  A. y  e.  {
w  |  w  ~~  A }  ( rank `  z )  C_  ( rank `  y ) }  =/=  (/)
11 rabn0 3474 . . . 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 199 . . 3  |-  E. z  e.  { w  |  w 
~~  A } A. y  e.  { w  |  w  ~~  A } 
( rank `  z )  C_  ( rank `  y
)
13 vex 2791 . . . . . . . 8  |-  z  e. 
_V
14 breq1 4026 . . . . . . . 8  |-  ( w  =  z  ->  (
w  ~~  A  <->  z  ~~  A ) )
1513, 14elab 2914 . . . . . . 7  |-  ( z  e.  { w  |  w  ~~  A }  <->  z 
~~  A )
16 breq1 4026 . . . . . . . 8  |-  ( w  =  y  ->  (
w  ~~  A  <->  y  ~~  A ) )
1716ralab 2926 . . . . . . 7  |-  ( A. y  e.  { w  |  w  ~~  A } 
( rank `  z )  C_  ( rank `  y
)  <->  A. y ( y 
~~  A  ->  ( rank `  z )  C_  ( rank `  y )
) )
1815, 17anbi12i 678 . . . . . 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 443 . . . . . . . . 9  |-  ( ( z  ~~  A  /\  A. y ( y  ~~  A  ->  ( rank `  z
)  C_  ( rank `  y ) ) )  ->  z  ~~  A
)
2019a1i 10 . . . . . . . 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 2296 . . . . . . . . . . 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 2393 . . . . . . . . . . 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 243 . . . . . . . . . 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 4026 . . . . . . . . . . . . 13  |-  ( x  =  z  ->  (
x  ~~  A  <->  z  ~~  A ) )
27 fveq2 5525 . . . . . . . . . . . . . . . 16  |-  ( x  =  z  ->  ( rank `  x )  =  ( rank `  z
) )
2827sseq1d 3205 . . . . . . . . . . . . . . 15  |-  ( x  =  z  ->  (
( rank `  x )  C_  ( rank `  y
)  <->  ( rank `  z
)  C_  ( rank `  y ) ) )
2928imbi2d 307 . . . . . . . . . . . . . 14  |-  ( x  =  z  ->  (
( y  ~~  A  ->  ( rank `  x
)  C_  ( rank `  y ) )  <->  ( y  ~~  A  ->  ( rank `  z )  C_  ( rank `  y ) ) ) )
3029albidv 1611 . . . . . . . . . . . . 13  |-  ( x  =  z  ->  ( A. y ( y  ~~  A  ->  ( rank `  x
)  C_  ( rank `  y ) )  <->  A. y
( y  ~~  A  ->  ( rank `  z
)  C_  ( rank `  y ) ) ) )
3126, 30anbi12d 691 . . . . . . . . . . . 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 4026 . . . . . . . . . . . . 13  |-  ( x  =  z  ->  (
x  ~~  B  <->  z  ~~  B ) )
3328imbi2d 307 . . . . . . . . . . . . . 14  |-  ( x  =  z  ->  (
( y  ~~  B  ->  ( rank `  x
)  C_  ( rank `  y ) )  <->  ( y  ~~  B  ->  ( rank `  z )  C_  ( rank `  y ) ) ) )
3433albidv 1611 . . . . . . . . . . . . 13  |-  ( x  =  z  ->  ( A. y ( y  ~~  B  ->  ( rank `  x
)  C_  ( rank `  y ) )  <->  A. y
( y  ~~  B  ->  ( rank `  z
)  C_  ( rank `  y ) ) ) )
3532, 34anbi12d 691 . . . . . . . . . . . 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 312 . . . . . . . . . . 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 1938 . . . . . . . . . 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 187 . . . . . . . . 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 443 . . . . . . . . 9  |-  ( ( z  ~~  B  /\  A. y ( y  ~~  B  ->  ( rank `  z
)  C_  ( rank `  y ) ) )  ->  z  ~~  B
)
4038, 39syl6bi 219 . . . . . . . 8  |-  ( C  =  D  ->  (
( z  ~~  A  /\  A. y ( y 
~~  A  ->  ( rank `  z )  C_  ( rank `  y )
) )  ->  z  ~~  B ) )
4120, 40jcad 519 . . . . . . 7  |-  ( C  =  D  ->  (
( z  ~~  A  /\  A. y ( y 
~~  A  ->  ( rank `  z )  C_  ( rank `  y )
) )  ->  (
z  ~~  A  /\  z  ~~  B ) ) )
42 ensym 6910 . . . . . . . 8  |-  ( z 
~~  A  ->  A  ~~  z )
43 entr 6913 . . . . . . . 8  |-  ( ( A  ~~  z  /\  z  ~~  B )  ->  A  ~~  B )
4442, 43sylan 457 . . . . . . 7  |-  ( ( z  ~~  A  /\  z  ~~  B )  ->  A  ~~  B )
4541, 44syl6 29 . . . . . 6  |-  ( C  =  D  ->  (
( z  ~~  A  /\  A. y ( y 
~~  A  ->  ( rank `  z )  C_  ( rank `  y )
) )  ->  A  ~~  B ) )
4618, 45syl5bi 208 . . . . 5  |-  ( C  =  D  ->  (
( z  e.  {
w  |  w  ~~  A }  /\  A. y  e.  { w  |  w 
~~  A }  ( rank `  z )  C_  ( rank `  y )
)  ->  A  ~~  B ) )
4746exp3a 425 . . . 4  |-  ( C  =  D  ->  (
z  e.  { w  |  w  ~~  A }  ->  ( A. y  e. 
{ w  |  w 
~~  A }  ( rank `  z )  C_  ( rank `  y )  ->  A  ~~  B ) ) )
4847rexlimdv 2666 . . 3  |-  ( C  =  D  ->  ( E. z  e.  { w  |  w  ~~  A } A. y  e.  { w  |  w  ~~  A } 
( rank `  z )  C_  ( rank `  y
)  ->  A  ~~  B ) )
4912, 48mpi 16 . 2  |-  ( C  =  D  ->  A  ~~  B )
50 enen2 7002 . . . . 5  |-  ( A 
~~  B  ->  (
x  ~~  A  <->  x  ~~  B ) )
51 enen2 7002 . . . . . . 7  |-  ( A 
~~  B  ->  (
y  ~~  A  <->  y  ~~  B ) )
5251imbi1d 308 . . . . . 6  |-  ( A 
~~  B  ->  (
( y  ~~  A  ->  ( rank `  x
)  C_  ( rank `  y ) )  <->  ( y  ~~  B  ->  ( rank `  x )  C_  ( rank `  y ) ) ) )
5352albidv 1611 . . . . 5  |-  ( A 
~~  B  ->  ( A. y ( y  ~~  A  ->  ( rank `  x
)  C_  ( rank `  y ) )  <->  A. y
( y  ~~  B  ->  ( rank `  x
)  C_  ( rank `  y ) ) ) )
5450, 53anbi12d 691 . . . 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 2397 . . 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 2340 . 2  |-  ( A 
~~  B  ->  C  =  D )
5749, 56impbii 180 1  |-  ( C  =  D  <->  A  ~~  B )
Colors of variables: wff set class
Syntax hints:    -> wi 4    <-> wb 176    /\ wa 358   A.wal 1527   E.wex 1528    = wceq 1623    e. wcel 1684   {cab 2269    =/= wne 2446   A.wral 2543   E.wrex 2544   {crab 2547   _Vcvv 2788    C_ wss 3152   (/)c0 3455   class class class wbr 4023   ` cfv 5255    ~~ cen 6860   rankcrnk 7435
This theorem was proved from axioms:  ax-1 5  ax-2 6  ax-3 7  ax-mp 8  ax-gen 1533  ax-5 1544  ax-17 1603  ax-9 1635  ax-8 1643  ax-13 1686  ax-14 1688  ax-6 1703  ax-7 1708  ax-11 1715  ax-12 1866  ax-ext 2264  ax-sep 4141  ax-nul 4149  ax-pow 4188  ax-pr 4214  ax-un 4512
This theorem depends on definitions:  df-bi 177  df-or 359  df-an 360  df-3or 935  df-3an 936  df-tru 1310  df-ex 1529  df-nf 1532  df-sb 1630  df-eu 2147  df-mo 2148  df-clab 2270  df-cleq 2276  df-clel 2279  df-nfc 2408  df-ne 2448  df-ral 2548  df-rex 2549  df-reu 2550  df-rab 2552  df-v 2790  df-sbc 2992  df-csb 3082  df-dif 3155  df-un 3157  df-in 3159  df-ss 3166  df-pss 3168  df-nul 3456  df-if 3566  df-pw 3627  df-sn 3646  df-pr 3647  df-tp 3648  df-op 3649  df-uni 3828  df-int 3863  df-iun 3907  df-iin 3908  df-br 4024  df-opab 4078  df-mpt 4079  df-tr 4114  df-eprel 4305  df-id 4309  df-po 4314  df-so 4315  df-fr 4352  df-we 4354  df-ord 4395  df-on 4396  df-lim 4397  df-suc 4398  df-om 4657  df-xp 4695  df-rel 4696  df-cnv 4697  df-co 4698  df-dm 4699  df-rn 4700  df-res 4701  df-ima 4702  df-iota 5219  df-fun 5257  df-fn 5258  df-f 5259  df-f1 5260  df-fo 5261  df-f1o 5262  df-fv 5263  df-recs 6388  df-rdg 6423  df-er 6660  df-en 6864  df-r1 7436  df-rank 7437
  Copyright terms: Public domain W3C validator