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

Theorem rankf 8212
Description: The domain and range of the  rank function. (Contributed by Mario Carneiro, 28-May-2013.) (Revised by Mario Carneiro, 12-Sep-2013.)
Assertion
Ref Expression
rankf  |-  rank : U. ( R1 " On ) --> On

Proof of Theorem rankf
Dummy variables  x  y  z are mutually distinct and distinct from all other variables.
StepHypRef Expression
1 df-rank 8183 . . . 4  |-  rank  =  ( x  e.  _V  |->  |^|
{ y  e.  On  |  x  e.  ( R1 `  suc  y ) } )
21funmpt2 5576 . . 3  |-  Fun  rank
3 mptv 4455 . . . . . 6  |-  ( x  e.  _V  |->  |^| { y  e.  On  |  x  e.  ( R1 `  suc  y ) } )  =  { <. x ,  z >.  |  z  =  |^| { y  e.  On  |  x  e.  ( R1 `  suc  y ) } }
41, 3eqtri 2445 . . . . 5  |-  rank  =  { <. x ,  z
>.  |  z  =  |^| { y  e.  On  |  x  e.  ( R1 `  suc  y ) } }
54dmeqi 4993 . . . 4  |-  dom  rank  =  dom  { <. x ,  z >.  |  z  =  |^| { y  e.  On  |  x  e.  ( R1 `  suc  y ) } }
6 dmopab 5002 . . . . 5  |-  dom  { <. x ,  z >.  |  z  =  |^| { y  e.  On  |  x  e.  ( R1 ` 
suc  y ) } }  =  { x  |  E. z  z  = 
|^| { y  e.  On  |  x  e.  ( R1 `  suc  y ) } }
7 abeq1 2533 . . . . . 6  |-  ( { x  |  E. z 
z  =  |^| { y  e.  On  |  x  e.  ( R1 `  suc  y ) } }  =  U. ( R1 " On )  <->  A. x ( E. z  z  =  |^| { y  e.  On  |  x  e.  ( R1 ` 
suc  y ) }  <-> 
x  e.  U. ( R1 " On ) ) )
8 rankwflemb 8211 . . . . . . 7  |-  ( x  e.  U. ( R1
" On )  <->  E. y  e.  On  x  e.  ( R1 `  suc  y
) )
9 intexrab 4521 . . . . . . 7  |-  ( E. y  e.  On  x  e.  ( R1 `  suc  y )  <->  |^| { y  e.  On  |  x  e.  ( R1 `  suc  y ) }  e.  _V )
10 isset 3021 . . . . . . 7  |-  ( |^| { y  e.  On  |  x  e.  ( R1 ` 
suc  y ) }  e.  _V  <->  E. z 
z  =  |^| { y  e.  On  |  x  e.  ( R1 `  suc  y ) } )
118, 9, 103bitrri 275 . . . . . 6  |-  ( E. z  z  =  |^| { y  e.  On  |  x  e.  ( R1 ` 
suc  y ) }  <-> 
x  e.  U. ( R1 " On ) )
127, 11mpgbir 1667 . . . . 5  |-  { x  |  E. z  z  = 
|^| { y  e.  On  |  x  e.  ( R1 `  suc  y ) } }  =  U. ( R1 " On )
136, 12eqtri 2445 . . . 4  |-  dom  { <. x ,  z >.  |  z  =  |^| { y  e.  On  |  x  e.  ( R1 ` 
suc  y ) } }  =  U. ( R1 " On )
145, 13eqtri 2445 . . 3  |-  dom  rank  = 
U. ( R1 " On )
15 df-fn 5542 . . 3  |-  ( rank 
Fn  U. ( R1 " On )  <->  ( Fun  rank  /\ 
dom  rank  =  U. ( R1 " On ) ) )
162, 14, 15mpbir2an 928 . 2  |-  rank  Fn  U. ( R1 " On )
17 rabn0 3720 . . . . 5  |-  ( { y  e.  On  |  x  e.  ( R1 ` 
suc  y ) }  =/=  (/)  <->  E. y  e.  On  x  e.  ( R1 ` 
suc  y ) )
188, 17bitr4i 255 . . . 4  |-  ( x  e.  U. ( R1
" On )  <->  { y  e.  On  |  x  e.  ( R1 `  suc  y ) }  =/=  (/) )
19 intex 4518 . . . . . 6  |-  ( { y  e.  On  |  x  e.  ( R1 ` 
suc  y ) }  =/=  (/)  <->  |^| { y  e.  On  |  x  e.  ( R1 `  suc  y ) }  e.  _V )
20 vex 3020 . . . . . . 7  |-  x  e. 
_V
211fvmpt2 5912 . . . . . . 7  |-  ( ( x  e.  _V  /\  |^|
{ y  e.  On  |  x  e.  ( R1 `  suc  y ) }  e.  _V )  ->  ( rank `  x
)  =  |^| { y  e.  On  |  x  e.  ( R1 `  suc  y ) } )
2220, 21mpan 674 . . . . . 6  |-  ( |^| { y  e.  On  |  x  e.  ( R1 ` 
suc  y ) }  e.  _V  ->  ( rank `  x )  = 
|^| { y  e.  On  |  x  e.  ( R1 `  suc  y ) } )
2319, 22sylbi 198 . . . . 5  |-  ( { y  e.  On  |  x  e.  ( R1 ` 
suc  y ) }  =/=  (/)  ->  ( rank `  x )  =  |^| { y  e.  On  |  x  e.  ( R1 ` 
suc  y ) } )
24 ssrab2 3484 . . . . . 6  |-  { y  e.  On  |  x  e.  ( R1 `  suc  y ) }  C_  On
25 oninton 6580 . . . . . 6  |-  ( ( { y  e.  On  |  x  e.  ( R1 `  suc  y ) }  C_  On  /\  {
y  e.  On  |  x  e.  ( R1 ` 
suc  y ) }  =/=  (/) )  ->  |^| { y  e.  On  |  x  e.  ( R1 `  suc  y ) }  e.  On )
2624, 25mpan 674 . . . . 5  |-  ( { y  e.  On  |  x  e.  ( R1 ` 
suc  y ) }  =/=  (/)  ->  |^| { y  e.  On  |  x  e.  ( R1 `  suc  y ) }  e.  On )
2723, 26eqeltrd 2501 . . . 4  |-  ( { y  e.  On  |  x  e.  ( R1 ` 
suc  y ) }  =/=  (/)  ->  ( rank `  x )  e.  On )
2818, 27sylbi 198 . . 3  |-  ( x  e.  U. ( R1
" On )  -> 
( rank `  x )  e.  On )
2928rgen 2719 . 2  |-  A. x  e.  U. ( R1 " On ) ( rank `  x
)  e.  On
30 ffnfv 6003 . 2  |-  ( rank
: U. ( R1
" On ) --> On  <->  (
rank  Fn  U. ( R1 " On )  /\  A. x  e.  U. ( R1 " On ) (
rank `  x )  e.  On ) )
3116, 29, 30mpbir2an 928 1  |-  rank : U. ( R1 " On ) --> On
Colors of variables: wff setvar class
Syntax hints:    <-> wb 187    = wceq 1437   E.wex 1657    e. wcel 1872   {cab 2409    =/= wne 2594   A.wral 2709   E.wrex 2710   {crab 2713   _Vcvv 3017    C_ wss 3374   (/)c0 3699   U.cuni 4157   |^|cint 4193   {copab 4419    |-> cmpt 4420   dom cdm 4791   "cima 4794   Oncon0 5380   suc csuc 5382   Fun wfun 5533    Fn wfn 5534   -->wf 5535   ` cfv 5539   R1cr1 8180   rankcrnk 8181
This theorem was proved from axioms:  ax-mp 5  ax-1 6  ax-2 7  ax-3 8  ax-gen 1663  ax-4 1676  ax-5 1752  ax-6 1798  ax-7 1843  ax-8 1874  ax-9 1876  ax-10 1891  ax-11 1896  ax-12 1909  ax-13 2058  ax-ext 2403  ax-sep 4484  ax-nul 4493  ax-pow 4540  ax-pr 4598  ax-un 6536
This theorem depends on definitions:  df-bi 188  df-or 371  df-an 372  df-3or 983  df-3an 984  df-tru 1440  df-ex 1658  df-nf 1662  df-sb 1791  df-eu 2275  df-mo 2276  df-clab 2410  df-cleq 2416  df-clel 2419  df-nfc 2553  df-ne 2596  df-ral 2714  df-rex 2715  df-reu 2716  df-rab 2718  df-v 3019  df-sbc 3238  df-csb 3334  df-dif 3377  df-un 3379  df-in 3381  df-ss 3388  df-pss 3390  df-nul 3700  df-if 3850  df-pw 3921  df-sn 3937  df-pr 3939  df-tp 3941  df-op 3943  df-uni 4158  df-int 4194  df-iun 4239  df-br 4362  df-opab 4421  df-mpt 4422  df-tr 4457  df-eprel 4702  df-id 4706  df-po 4712  df-so 4713  df-fr 4750  df-we 4752  df-xp 4797  df-rel 4798  df-cnv 4799  df-co 4800  df-dm 4801  df-rn 4802  df-res 4803  df-ima 4804  df-pred 5337  df-ord 5383  df-on 5384  df-lim 5385  df-suc 5386  df-iota 5503  df-fun 5541  df-fn 5542  df-f 5543  df-f1 5544  df-fo 5545  df-f1o 5546  df-fv 5547  df-om 6646  df-wrecs 6978  df-recs 7040  df-rdg 7078  df-r1 8182  df-rank 8183
This theorem is referenced by:  rankon  8213  rankvaln  8217  tcrank  8302  hsmexlem4  8805  hsmexlem5  8806  grur1  9191  aomclem4  35828
  Copyright terms: Public domain W3C validator