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

Theorem tcrank 8087
Description: This theorem expresses two different facts from the two subset implications in this equality. In the forward direction, it says that the transitive closure has members of every rank below  A. Stated another way, to construct a set at a given rank, you have to climb the entire hierarchy of ordinals below  ( rank `  A ), constructing at least one set at each level in order to move up the ranks. In the reverse direction, it says that every member of  ( TC `  A ) has a rank below the rank of  A, since intuitively it contains only the members of  A and the members of those and so on, but nothing "bigger" than  A. (Contributed by Mario Carneiro, 23-Jun-2013.)
Assertion
Ref Expression
tcrank  |-  ( A  e.  U. ( R1
" On )  -> 
( rank `  A )  =  ( rank " ( TC `  A ) ) )

Proof of Theorem tcrank
Dummy variables  x  y  z  w  u are mutually distinct and distinct from all other variables.
StepHypRef Expression
1 rankwflemb 7996 . . 3  |-  ( A  e.  U. ( R1
" On )  <->  E. y  e.  On  A  e.  ( R1 `  suc  y
) )
2 suceloni 6423 . . . . 5  |-  ( y  e.  On  ->  suc  y  e.  On )
3 fveq2 5688 . . . . . . . 8  |-  ( x  =  y  ->  ( R1 `  x )  =  ( R1 `  y
) )
43raleqdv 2921 . . . . . . 7  |-  ( x  =  y  ->  ( A. z  e.  ( R1 `  x ) (
rank `  z )  C_  ( rank " ( TC `  z ) )  <->  A. z  e.  ( R1 `  y ) (
rank `  z )  C_  ( rank " ( TC `  z ) ) ) )
5 fveq2 5688 . . . . . . . . 9  |-  ( z  =  u  ->  ( rank `  z )  =  ( rank `  u
) )
6 fveq2 5688 . . . . . . . . . 10  |-  ( z  =  u  ->  ( TC `  z )  =  ( TC `  u
) )
76imaeq2d 5166 . . . . . . . . 9  |-  ( z  =  u  ->  ( rank " ( TC `  z ) )  =  ( rank " ( TC `  u ) ) )
85, 7sseq12d 3382 . . . . . . . 8  |-  ( z  =  u  ->  (
( rank `  z )  C_  ( rank " ( TC `  z ) )  <-> 
( rank `  u )  C_  ( rank " ( TC `  u ) ) ) )
98cbvralv 2945 . . . . . . 7  |-  ( A. z  e.  ( R1 `  y ) ( rank `  z )  C_  ( rank " ( TC `  z ) )  <->  A. u  e.  ( R1 `  y
) ( rank `  u
)  C_  ( rank " ( TC `  u
) ) )
104, 9syl6bb 261 . . . . . 6  |-  ( x  =  y  ->  ( A. z  e.  ( R1 `  x ) (
rank `  z )  C_  ( rank " ( TC `  z ) )  <->  A. u  e.  ( R1 `  y ) (
rank `  u )  C_  ( rank " ( TC `  u ) ) ) )
11 fveq2 5688 . . . . . . 7  |-  ( x  =  suc  y  -> 
( R1 `  x
)  =  ( R1
`  suc  y )
)
1211raleqdv 2921 . . . . . 6  |-  ( x  =  suc  y  -> 
( A. z  e.  ( R1 `  x
) ( rank `  z
)  C_  ( rank " ( TC `  z
) )  <->  A. z  e.  ( R1 `  suc  y ) ( rank `  z )  C_  ( rank " ( TC `  z ) ) ) )
13 simpr 458 . . . . . . . . . . . 12  |-  ( ( ( x  e.  On  /\ 
A. y  e.  x  A. u  e.  ( R1 `  y ) (
rank `  u )  C_  ( rank " ( TC `  u ) ) )  /\  ( z  e.  ( R1 `  x )  /\  w  e.  ( rank `  z
) ) )  -> 
( z  e.  ( R1 `  x )  /\  w  e.  (
rank `  z )
) )
14 simprl 750 . . . . . . . . . . . . . 14  |-  ( ( ( x  e.  On  /\ 
A. y  e.  x  A. u  e.  ( R1 `  y ) (
rank `  u )  C_  ( rank " ( TC `  u ) ) )  /\  ( z  e.  ( R1 `  x )  /\  w  e.  ( rank `  z
) ) )  -> 
z  e.  ( R1
`  x ) )
15 simplr 749 . . . . . . . . . . . . . 14  |-  ( ( ( x  e.  On  /\ 
A. y  e.  x  A. u  e.  ( R1 `  y ) (
rank `  u )  C_  ( rank " ( TC `  u ) ) )  /\  ( z  e.  ( R1 `  x )  /\  w  e.  ( rank `  z
) ) )  ->  A. y  e.  x  A. u  e.  ( R1 `  y ) (
rank `  u )  C_  ( rank " ( TC `  u ) ) )
16 rankr1ai 8001 . . . . . . . . . . . . . . . 16  |-  ( z  e.  ( R1 `  x )  ->  ( rank `  z )  e.  x )
17 fveq2 5688 . . . . . . . . . . . . . . . . . 18  |-  ( y  =  ( rank `  z
)  ->  ( R1 `  y )  =  ( R1 `  ( rank `  z ) ) )
1817raleqdv 2921 . . . . . . . . . . . . . . . . 17  |-  ( y  =  ( rank `  z
)  ->  ( A. u  e.  ( R1 `  y ) ( rank `  u )  C_  ( rank " ( TC `  u ) )  <->  A. u  e.  ( R1 `  ( rank `  z ) ) ( rank `  u
)  C_  ( rank " ( TC `  u
) ) ) )
1918rspcv 3066 . . . . . . . . . . . . . . . 16  |-  ( (
rank `  z )  e.  x  ->  ( A. y  e.  x  A. u  e.  ( R1 `  y ) ( rank `  u )  C_  ( rank " ( TC `  u ) )  ->  A. u  e.  ( R1 `  ( rank `  z
) ) ( rank `  u )  C_  ( rank " ( TC `  u ) ) ) )
2016, 19syl 16 . . . . . . . . . . . . . . 15  |-  ( z  e.  ( R1 `  x )  ->  ( A. y  e.  x  A. u  e.  ( R1 `  y ) (
rank `  u )  C_  ( rank " ( TC `  u ) )  ->  A. u  e.  ( R1 `  ( rank `  z ) ) (
rank `  u )  C_  ( rank " ( TC `  u ) ) ) )
21 r1elwf 7999 . . . . . . . . . . . . . . . 16  |-  ( z  e.  ( R1 `  x )  ->  z  e.  U. ( R1 " On ) )
22 r1rankidb 8007 . . . . . . . . . . . . . . . 16  |-  ( z  e.  U. ( R1
" On )  -> 
z  C_  ( R1 `  ( rank `  z
) ) )
23 ssralv 3413 . . . . . . . . . . . . . . . 16  |-  ( z 
C_  ( R1 `  ( rank `  z )
)  ->  ( A. u  e.  ( R1 `  ( rank `  z
) ) ( rank `  u )  C_  ( rank " ( TC `  u ) )  ->  A. u  e.  z 
( rank `  u )  C_  ( rank " ( TC `  u ) ) ) )
2421, 22, 233syl 20 . . . . . . . . . . . . . . 15  |-  ( z  e.  ( R1 `  x )  ->  ( A. u  e.  ( R1 `  ( rank `  z
) ) ( rank `  u )  C_  ( rank " ( TC `  u ) )  ->  A. u  e.  z 
( rank `  u )  C_  ( rank " ( TC `  u ) ) ) )
2520, 24syld 44 . . . . . . . . . . . . . 14  |-  ( z  e.  ( R1 `  x )  ->  ( A. y  e.  x  A. u  e.  ( R1 `  y ) (
rank `  u )  C_  ( rank " ( TC `  u ) )  ->  A. u  e.  z  ( rank `  u
)  C_  ( rank " ( TC `  u
) ) ) )
2614, 15, 25sylc 60 . . . . . . . . . . . . 13  |-  ( ( ( x  e.  On  /\ 
A. y  e.  x  A. u  e.  ( R1 `  y ) (
rank `  u )  C_  ( rank " ( TC `  u ) ) )  /\  ( z  e.  ( R1 `  x )  /\  w  e.  ( rank `  z
) ) )  ->  A. u  e.  z 
( rank `  u )  C_  ( rank " ( TC `  u ) ) )
27 rankval3b 8029 . . . . . . . . . . . . . . . . . . . 20  |-  ( z  e.  U. ( R1
" On )  -> 
( rank `  z )  =  |^| { x  e.  On  |  A. u  e.  z  ( rank `  u )  e.  x } )
2827eleq2d 2508 . . . . . . . . . . . . . . . . . . 19  |-  ( z  e.  U. ( R1
" On )  -> 
( w  e.  (
rank `  z )  <->  w  e.  |^| { x  e.  On  |  A. u  e.  z  ( rank `  u )  e.  x } ) )
2928biimpd 207 . . . . . . . . . . . . . . . . . 18  |-  ( z  e.  U. ( R1
" On )  -> 
( w  e.  (
rank `  z )  ->  w  e.  |^| { x  e.  On  |  A. u  e.  z  ( rank `  u )  e.  x } ) )
30 rankon 7998 . . . . . . . . . . . . . . . . . . . 20  |-  ( rank `  z )  e.  On
3130oneli 4822 . . . . . . . . . . . . . . . . . . 19  |-  ( w  e.  ( rank `  z
)  ->  w  e.  On )
32 eleq2 2502 . . . . . . . . . . . . . . . . . . . . 21  |-  ( x  =  w  ->  (
( rank `  u )  e.  x  <->  ( rank `  u
)  e.  w ) )
3332ralbidv 2733 . . . . . . . . . . . . . . . . . . . 20  |-  ( x  =  w  ->  ( A. u  e.  z 
( rank `  u )  e.  x  <->  A. u  e.  z  ( rank `  u
)  e.  w ) )
3433onnminsb 6414 . . . . . . . . . . . . . . . . . . 19  |-  ( w  e.  On  ->  (
w  e.  |^| { x  e.  On  |  A. u  e.  z  ( rank `  u )  e.  x }  ->  -.  A. u  e.  z  ( rank `  u )  e.  w
) )
3531, 34syl 16 . . . . . . . . . . . . . . . . . 18  |-  ( w  e.  ( rank `  z
)  ->  ( w  e.  |^| { x  e.  On  |  A. u  e.  z  ( rank `  u )  e.  x }  ->  -.  A. u  e.  z  ( rank `  u )  e.  w
) )
3629, 35sylcom 29 . . . . . . . . . . . . . . . . 17  |-  ( z  e.  U. ( R1
" On )  -> 
( w  e.  (
rank `  z )  ->  -.  A. u  e.  z  ( rank `  u
)  e.  w ) )
3721, 36syl 16 . . . . . . . . . . . . . . . 16  |-  ( z  e.  ( R1 `  x )  ->  (
w  e.  ( rank `  z )  ->  -.  A. u  e.  z  (
rank `  u )  e.  w ) )
3837imp 429 . . . . . . . . . . . . . . 15  |-  ( ( z  e.  ( R1
`  x )  /\  w  e.  ( rank `  z ) )  ->  -.  A. u  e.  z  ( rank `  u
)  e.  w )
39 rexnal 2724 . . . . . . . . . . . . . . 15  |-  ( E. u  e.  z  -.  ( rank `  u
)  e.  w  <->  -.  A. u  e.  z  ( rank `  u )  e.  w
)
4038, 39sylibr 212 . . . . . . . . . . . . . 14  |-  ( ( z  e.  ( R1
`  x )  /\  w  e.  ( rank `  z ) )  ->  E. u  e.  z  -.  ( rank `  u
)  e.  w )
4140adantl 463 . . . . . . . . . . . . 13  |-  ( ( ( x  e.  On  /\ 
A. y  e.  x  A. u  e.  ( R1 `  y ) (
rank `  u )  C_  ( rank " ( TC `  u ) ) )  /\  ( z  e.  ( R1 `  x )  /\  w  e.  ( rank `  z
) ) )  ->  E. u  e.  z  -.  ( rank `  u
)  e.  w )
42 r19.29 2855 . . . . . . . . . . . . 13  |-  ( ( A. u  e.  z  ( rank `  u
)  C_  ( rank " ( TC `  u
) )  /\  E. u  e.  z  -.  ( rank `  u )  e.  w )  ->  E. u  e.  z  ( ( rank `  u )  C_  ( rank " ( TC
`  u ) )  /\  -.  ( rank `  u )  e.  w
) )
4326, 41, 42syl2anc 656 . . . . . . . . . . . 12  |-  ( ( ( x  e.  On  /\ 
A. y  e.  x  A. u  e.  ( R1 `  y ) (
rank `  u )  C_  ( rank " ( TC `  u ) ) )  /\  ( z  e.  ( R1 `  x )  /\  w  e.  ( rank `  z
) ) )  ->  E. u  e.  z 
( ( rank `  u
)  C_  ( rank " ( TC `  u
) )  /\  -.  ( rank `  u )  e.  w ) )
44 simp2 984 . . . . . . . . . . . . . . 15  |-  ( ( ( z  e.  ( R1 `  x )  /\  w  e.  (
rank `  z )
)  /\  u  e.  z  /\  ( ( rank `  u )  C_  ( rank " ( TC `  u ) )  /\  -.  ( rank `  u
)  e.  w ) )  ->  u  e.  z )
45 vex 2973 . . . . . . . . . . . . . . . . 17  |-  z  e. 
_V
46 tcid 7955 . . . . . . . . . . . . . . . . 17  |-  ( z  e.  _V  ->  z  C_  ( TC `  z
) )
4745, 46ax-mp 5 . . . . . . . . . . . . . . . 16  |-  z  C_  ( TC `  z )
4847sseli 3349 . . . . . . . . . . . . . . 15  |-  ( u  e.  z  ->  u  e.  ( TC `  z
) )
49 fveq2 5688 . . . . . . . . . . . . . . . . . 18  |-  ( x  =  u  ->  ( rank `  x )  =  ( rank `  u
) )
5049eqeq1d 2449 . . . . . . . . . . . . . . . . 17  |-  ( x  =  u  ->  (
( rank `  x )  =  w  <->  ( rank `  u
)  =  w ) )
5150rspcev 3070 . . . . . . . . . . . . . . . 16  |-  ( ( u  e.  ( TC
`  z )  /\  ( rank `  u )  =  w )  ->  E. x  e.  ( TC `  z
) ( rank `  x
)  =  w )
5251ex 434 . . . . . . . . . . . . . . 15  |-  ( u  e.  ( TC `  z )  ->  (
( rank `  u )  =  w  ->  E. x  e.  ( TC `  z
) ( rank `  x
)  =  w ) )
5344, 48, 523syl 20 . . . . . . . . . . . . . 14  |-  ( ( ( z  e.  ( R1 `  x )  /\  w  e.  (
rank `  z )
)  /\  u  e.  z  /\  ( ( rank `  u )  C_  ( rank " ( TC `  u ) )  /\  -.  ( rank `  u
)  e.  w ) )  ->  ( ( rank `  u )  =  w  ->  E. x  e.  ( TC `  z
) ( rank `  x
)  =  w ) )
54 simp3l 1011 . . . . . . . . . . . . . . . 16  |-  ( ( ( z  e.  ( R1 `  x )  /\  w  e.  (
rank `  z )
)  /\  u  e.  z  /\  ( ( rank `  u )  C_  ( rank " ( TC `  u ) )  /\  -.  ( rank `  u
)  e.  w ) )  ->  ( rank `  u )  C_  ( rank " ( TC `  u ) ) )
5554sseld 3352 . . . . . . . . . . . . . . 15  |-  ( ( ( z  e.  ( R1 `  x )  /\  w  e.  (
rank `  z )
)  /\  u  e.  z  /\  ( ( rank `  u )  C_  ( rank " ( TC `  u ) )  /\  -.  ( rank `  u
)  e.  w ) )  ->  ( w  e.  ( rank `  u
)  ->  w  e.  ( rank " ( TC
`  u ) ) ) )
56 simp1l 1007 . . . . . . . . . . . . . . . 16  |-  ( ( ( z  e.  ( R1 `  x )  /\  w  e.  (
rank `  z )
)  /\  u  e.  z  /\  ( ( rank `  u )  C_  ( rank " ( TC `  u ) )  /\  -.  ( rank `  u
)  e.  w ) )  ->  z  e.  ( R1 `  x ) )
57 rankf 7997 . . . . . . . . . . . . . . . . . . 19  |-  rank : U. ( R1 " On ) --> On
58 ffn 5556 . . . . . . . . . . . . . . . . . . 19  |-  ( rank
: U. ( R1
" On ) --> On 
->  rank  Fn  U. ( R1 " On ) )
5957, 58ax-mp 5 . . . . . . . . . . . . . . . . . 18  |-  rank  Fn  U. ( R1 " On )
60 r1tr 7979 . . . . . . . . . . . . . . . . . . . 20  |-  Tr  ( R1 `  x )
61 trel 4389 . . . . . . . . . . . . . . . . . . . 20  |-  ( Tr  ( R1 `  x
)  ->  ( (
u  e.  z  /\  z  e.  ( R1 `  x ) )  ->  u  e.  ( R1 `  x ) ) )
6260, 61ax-mp 5 . . . . . . . . . . . . . . . . . . 19  |-  ( ( u  e.  z  /\  z  e.  ( R1 `  x ) )  ->  u  e.  ( R1 `  x ) )
63 r1elwf 7999 . . . . . . . . . . . . . . . . . . 19  |-  ( u  e.  ( R1 `  x )  ->  u  e.  U. ( R1 " On ) )
64 tcwf 8086 . . . . . . . . . . . . . . . . . . . 20  |-  ( u  e.  U. ( R1
" On )  -> 
( TC `  u
)  e.  U. ( R1 " On ) )
65 fvex 5698 . . . . . . . . . . . . . . . . . . . . 21  |-  ( TC
`  u )  e. 
_V
6665r1elss 8009 . . . . . . . . . . . . . . . . . . . 20  |-  ( ( TC `  u )  e.  U. ( R1
" On )  <->  ( TC `  u )  C_  U. ( R1 " On ) )
6764, 66sylib 196 . . . . . . . . . . . . . . . . . . 19  |-  ( u  e.  U. ( R1
" On )  -> 
( TC `  u
)  C_  U. ( R1 " On ) )
6862, 63, 673syl 20 . . . . . . . . . . . . . . . . . 18  |-  ( ( u  e.  z  /\  z  e.  ( R1 `  x ) )  -> 
( TC `  u
)  C_  U. ( R1 " On ) )
69 fvelimab 5744 . . . . . . . . . . . . . . . . . 18  |-  ( (
rank  Fn  U. ( R1 " On )  /\  ( TC `  u ) 
C_  U. ( R1 " On ) )  ->  (
w  e.  ( rank " ( TC `  u ) )  <->  E. x  e.  ( TC `  u
) ( rank `  x
)  =  w ) )
7059, 68, 69sylancr 658 . . . . . . . . . . . . . . . . 17  |-  ( ( u  e.  z  /\  z  e.  ( R1 `  x ) )  -> 
( w  e.  (
rank " ( TC `  u ) )  <->  E. x  e.  ( TC `  u
) ( rank `  x
)  =  w ) )
7145tcel 7961 . . . . . . . . . . . . . . . . . . 19  |-  ( u  e.  z  ->  ( TC `  u )  C_  ( TC `  z ) )
72 ssrexv 3414 . . . . . . . . . . . . . . . . . . 19  |-  ( ( TC `  u ) 
C_  ( TC `  z )  ->  ( E. x  e.  ( TC `  u ) (
rank `  x )  =  w  ->  E. x  e.  ( TC `  z
) ( rank `  x
)  =  w ) )
7371, 72syl 16 . . . . . . . . . . . . . . . . . 18  |-  ( u  e.  z  ->  ( E. x  e.  ( TC `  u ) (
rank `  x )  =  w  ->  E. x  e.  ( TC `  z
) ( rank `  x
)  =  w ) )
7473adantr 462 . . . . . . . . . . . . . . . . 17  |-  ( ( u  e.  z  /\  z  e.  ( R1 `  x ) )  -> 
( E. x  e.  ( TC `  u
) ( rank `  x
)  =  w  ->  E. x  e.  ( TC `  z ) (
rank `  x )  =  w ) )
7570, 74sylbid 215 . . . . . . . . . . . . . . . 16  |-  ( ( u  e.  z  /\  z  e.  ( R1 `  x ) )  -> 
( w  e.  (
rank " ( TC `  u ) )  ->  E. x  e.  ( TC `  z ) (
rank `  x )  =  w ) )
7644, 56, 75syl2anc 656 . . . . . . . . . . . . . . 15  |-  ( ( ( z  e.  ( R1 `  x )  /\  w  e.  (
rank `  z )
)  /\  u  e.  z  /\  ( ( rank `  u )  C_  ( rank " ( TC `  u ) )  /\  -.  ( rank `  u
)  e.  w ) )  ->  ( w  e.  ( rank " ( TC `  u ) )  ->  E. x  e.  ( TC `  z ) ( rank `  x
)  =  w ) )
7755, 76syld 44 . . . . . . . . . . . . . 14  |-  ( ( ( z  e.  ( R1 `  x )  /\  w  e.  (
rank `  z )
)  /\  u  e.  z  /\  ( ( rank `  u )  C_  ( rank " ( TC `  u ) )  /\  -.  ( rank `  u
)  e.  w ) )  ->  ( w  e.  ( rank `  u
)  ->  E. x  e.  ( TC `  z
) ( rank `  x
)  =  w ) )
78 rankon 7998 . . . . . . . . . . . . . . . . . . 19  |-  ( rank `  u )  e.  On
79 eloni 4725 . . . . . . . . . . . . . . . . . . . 20  |-  ( (
rank `  u )  e.  On  ->  Ord  ( rank `  u ) )
80 eloni 4725 . . . . . . . . . . . . . . . . . . . 20  |-  ( w  e.  On  ->  Ord  w )
81 ordtri3or 4747 . . . . . . . . . . . . . . . . . . . 20  |-  ( ( Ord  ( rank `  u
)  /\  Ord  w )  ->  ( ( rank `  u )  e.  w  \/  ( rank `  u
)  =  w  \/  w  e.  ( rank `  u ) ) )
8279, 80, 81syl2an 474 . . . . . . . . . . . . . . . . . . 19  |-  ( ( ( rank `  u
)  e.  On  /\  w  e.  On )  ->  ( ( rank `  u
)  e.  w  \/  ( rank `  u
)  =  w  \/  w  e.  ( rank `  u ) ) )
8378, 31, 82sylancr 658 . . . . . . . . . . . . . . . . . 18  |-  ( w  e.  ( rank `  z
)  ->  ( ( rank `  u )  e.  w  \/  ( rank `  u )  =  w  \/  w  e.  (
rank `  u )
) )
84 3orass 963 . . . . . . . . . . . . . . . . . 18  |-  ( ( ( rank `  u
)  e.  w  \/  ( rank `  u
)  =  w  \/  w  e.  ( rank `  u ) )  <->  ( ( rank `  u )  e.  w  \/  ( (
rank `  u )  =  w  \/  w  e.  ( rank `  u
) ) ) )
8583, 84sylib 196 . . . . . . . . . . . . . . . . 17  |-  ( w  e.  ( rank `  z
)  ->  ( ( rank `  u )  e.  w  \/  ( (
rank `  u )  =  w  \/  w  e.  ( rank `  u
) ) ) )
8685orcanai 899 . . . . . . . . . . . . . . . 16  |-  ( ( w  e.  ( rank `  z )  /\  -.  ( rank `  u )  e.  w )  ->  (
( rank `  u )  =  w  \/  w  e.  ( rank `  u
) ) )
8786ad2ant2l 740 . . . . . . . . . . . . . . 15  |-  ( ( ( z  e.  ( R1 `  x )  /\  w  e.  (
rank `  z )
)  /\  ( ( rank `  u )  C_  ( rank " ( TC
`  u ) )  /\  -.  ( rank `  u )  e.  w
) )  ->  (
( rank `  u )  =  w  \/  w  e.  ( rank `  u
) ) )
88873adant2 1002 . . . . . . . . . . . . . 14  |-  ( ( ( z  e.  ( R1 `  x )  /\  w  e.  (
rank `  z )
)  /\  u  e.  z  /\  ( ( rank `  u )  C_  ( rank " ( TC `  u ) )  /\  -.  ( rank `  u
)  e.  w ) )  ->  ( ( rank `  u )  =  w  \/  w  e.  ( rank `  u
) ) )
8953, 77, 88mpjaod 381 . . . . . . . . . . . . 13  |-  ( ( ( z  e.  ( R1 `  x )  /\  w  e.  (
rank `  z )
)  /\  u  e.  z  /\  ( ( rank `  u )  C_  ( rank " ( TC `  u ) )  /\  -.  ( rank `  u
)  e.  w ) )  ->  E. x  e.  ( TC `  z
) ( rank `  x
)  =  w )
9089rexlimdv3a 2841 . . . . . . . . . . . 12  |-  ( ( z  e.  ( R1
`  x )  /\  w  e.  ( rank `  z ) )  -> 
( E. u  e.  z  ( ( rank `  u )  C_  ( rank " ( TC `  u ) )  /\  -.  ( rank `  u
)  e.  w )  ->  E. x  e.  ( TC `  z ) ( rank `  x
)  =  w ) )
9113, 43, 90sylc 60 . . . . . . . . . . 11  |-  ( ( ( x  e.  On  /\ 
A. y  e.  x  A. u  e.  ( R1 `  y ) (
rank `  u )  C_  ( rank " ( TC `  u ) ) )  /\  ( z  e.  ( R1 `  x )  /\  w  e.  ( rank `  z
) ) )  ->  E. x  e.  ( TC `  z ) (
rank `  x )  =  w )
9291expr 612 . . . . . . . . . 10  |-  ( ( ( x  e.  On  /\ 
A. y  e.  x  A. u  e.  ( R1 `  y ) (
rank `  u )  C_  ( rank " ( TC `  u ) ) )  /\  z  e.  ( R1 `  x
) )  ->  (
w  e.  ( rank `  z )  ->  E. x  e.  ( TC `  z
) ( rank `  x
)  =  w ) )
93 tcwf 8086 . . . . . . . . . . . . 13  |-  ( z  e.  U. ( R1
" On )  -> 
( TC `  z
)  e.  U. ( R1 " On ) )
94 r1elssi 8008 . . . . . . . . . . . . . 14  |-  ( ( TC `  z )  e.  U. ( R1
" On )  -> 
( TC `  z
)  C_  U. ( R1 " On ) )
95 fvelimab 5744 . . . . . . . . . . . . . 14  |-  ( (
rank  Fn  U. ( R1 " On )  /\  ( TC `  z ) 
C_  U. ( R1 " On ) )  ->  (
w  e.  ( rank " ( TC `  z ) )  <->  E. x  e.  ( TC `  z
) ( rank `  x
)  =  w ) )
9694, 95sylan2 471 . . . . . . . . . . . . 13  |-  ( (
rank  Fn  U. ( R1 " On )  /\  ( TC `  z )  e.  U. ( R1
" On ) )  ->  ( w  e.  ( rank " ( TC `  z ) )  <->  E. x  e.  ( TC `  z ) (
rank `  x )  =  w ) )
9759, 93, 96sylancr 658 . . . . . . . . . . . 12  |-  ( z  e.  U. ( R1
" On )  -> 
( w  e.  (
rank " ( TC `  z ) )  <->  E. x  e.  ( TC `  z
) ( rank `  x
)  =  w ) )
9821, 97syl 16 . . . . . . . . . . 11  |-  ( z  e.  ( R1 `  x )  ->  (
w  e.  ( rank " ( TC `  z ) )  <->  E. x  e.  ( TC `  z
) ( rank `  x
)  =  w ) )
9998adantl 463 . . . . . . . . . 10  |-  ( ( ( x  e.  On  /\ 
A. y  e.  x  A. u  e.  ( R1 `  y ) (
rank `  u )  C_  ( rank " ( TC `  u ) ) )  /\  z  e.  ( R1 `  x
) )  ->  (
w  e.  ( rank " ( TC `  z ) )  <->  E. x  e.  ( TC `  z
) ( rank `  x
)  =  w ) )
10092, 99sylibrd 234 . . . . . . . . 9  |-  ( ( ( x  e.  On  /\ 
A. y  e.  x  A. u  e.  ( R1 `  y ) (
rank `  u )  C_  ( rank " ( TC `  u ) ) )  /\  z  e.  ( R1 `  x
) )  ->  (
w  e.  ( rank `  z )  ->  w  e.  ( rank " ( TC `  z ) ) ) )
101100ssrdv 3359 . . . . . . . 8  |-  ( ( ( x  e.  On  /\ 
A. y  e.  x  A. u  e.  ( R1 `  y ) (
rank `  u )  C_  ( rank " ( TC `  u ) ) )  /\  z  e.  ( R1 `  x
) )  ->  ( rank `  z )  C_  ( rank " ( TC
`  z ) ) )
102101ralrimiva 2797 . . . . . . 7  |-  ( ( x  e.  On  /\  A. y  e.  x  A. u  e.  ( R1 `  y ) ( rank `  u )  C_  ( rank " ( TC `  u ) ) )  ->  A. z  e.  ( R1 `  x ) ( rank `  z
)  C_  ( rank " ( TC `  z
) ) )
103102ex 434 . . . . . 6  |-  ( x  e.  On  ->  ( A. y  e.  x  A. u  e.  ( R1 `  y ) (
rank `  u )  C_  ( rank " ( TC `  u ) )  ->  A. z  e.  ( R1 `  x ) ( rank `  z
)  C_  ( rank " ( TC `  z
) ) ) )
10410, 12, 103tfis3 6467 . . . . 5  |-  ( suc  y  e.  On  ->  A. z  e.  ( R1
`  suc  y )
( rank `  z )  C_  ( rank " ( TC `  z ) ) )
105 fveq2 5688 . . . . . . 7  |-  ( z  =  A  ->  ( rank `  z )  =  ( rank `  A
) )
106 fveq2 5688 . . . . . . . 8  |-  ( z  =  A  ->  ( TC `  z )  =  ( TC `  A
) )
107106imaeq2d 5166 . . . . . . 7  |-  ( z  =  A  ->  ( rank " ( TC `  z ) )  =  ( rank " ( TC `  A ) ) )
108105, 107sseq12d 3382 . . . . . 6  |-  ( z  =  A  ->  (
( rank `  z )  C_  ( rank " ( TC `  z ) )  <-> 
( rank `  A )  C_  ( rank " ( TC `  A ) ) ) )
109108rspccv 3067 . . . . 5  |-  ( A. z  e.  ( R1 ` 
suc  y ) (
rank `  z )  C_  ( rank " ( TC `  z ) )  ->  ( A  e.  ( R1 `  suc  y )  ->  ( rank `  A )  C_  ( rank " ( TC
`  A ) ) ) )
1102, 104, 1093syl 20 . . . 4  |-  ( y  e.  On  ->  ( A  e.  ( R1 ` 
suc  y )  -> 
( rank `  A )  C_  ( rank " ( TC `  A ) ) ) )
111110rexlimiv 2833 . . 3  |-  ( E. y  e.  On  A  e.  ( R1 `  suc  y )  ->  ( rank `  A )  C_  ( rank " ( TC
`  A ) ) )
1121, 111sylbi 195 . 2  |-  ( A  e.  U. ( R1
" On )  -> 
( rank `  A )  C_  ( rank " ( TC `  A ) ) )
113 tcvalg 7954 . . . 4  |-  ( A  e.  U. ( R1
" On )  -> 
( TC `  A
)  =  |^| { x  |  ( A  C_  x  /\  Tr  x ) } )
114 r1rankidb 8007 . . . . 5  |-  ( A  e.  U. ( R1
" On )  ->  A  C_  ( R1 `  ( rank `  A )
) )
115 r1tr 7979 . . . . 5  |-  Tr  ( R1 `  ( rank `  A
) )
116 fvex 5698 . . . . . . 7  |-  ( R1
`  ( rank `  A
) )  e.  _V
117 sseq2 3375 . . . . . . . 8  |-  ( x  =  ( R1 `  ( rank `  A )
)  ->  ( A  C_  x  <->  A  C_  ( R1
`  ( rank `  A
) ) ) )
118 treq 4388 . . . . . . . 8  |-  ( x  =  ( R1 `  ( rank `  A )
)  ->  ( Tr  x 
<->  Tr  ( R1 `  ( rank `  A )
) ) )
119117, 118anbi12d 705 . . . . . . 7  |-  ( x  =  ( R1 `  ( rank `  A )
)  ->  ( ( A  C_  x  /\  Tr  x )  <->  ( A  C_  ( R1 `  ( rank `  A ) )  /\  Tr  ( R1
`  ( rank `  A
) ) ) ) )
120116, 119elab 3103 . . . . . 6  |-  ( ( R1 `  ( rank `  A ) )  e. 
{ x  |  ( A  C_  x  /\  Tr  x ) }  <->  ( A  C_  ( R1 `  ( rank `  A ) )  /\  Tr  ( R1
`  ( rank `  A
) ) ) )
121 intss1 4140 . . . . . 6  |-  ( ( R1 `  ( rank `  A ) )  e. 
{ x  |  ( A  C_  x  /\  Tr  x ) }  ->  |^|
{ x  |  ( A  C_  x  /\  Tr  x ) }  C_  ( R1 `  ( rank `  A ) ) )
122120, 121sylbir 213 . . . . 5  |-  ( ( A  C_  ( R1 `  ( rank `  A
) )  /\  Tr  ( R1 `  ( rank `  A ) ) )  ->  |^| { x  |  ( A  C_  x  /\  Tr  x ) } 
C_  ( R1 `  ( rank `  A )
) )
123114, 115, 122sylancl 657 . . . 4  |-  ( A  e.  U. ( R1
" On )  ->  |^| { x  |  ( A  C_  x  /\  Tr  x ) }  C_  ( R1 `  ( rank `  A ) ) )
124113, 123eqsstrd 3387 . . 3  |-  ( A  e.  U. ( R1
" On )  -> 
( TC `  A
)  C_  ( R1 `  ( rank `  A
) ) )
125 imass2 5201 . . . 4  |-  ( ( TC `  A ) 
C_  ( R1 `  ( rank `  A )
)  ->  ( rank " ( TC `  A
) )  C_  ( rank " ( R1 `  ( rank `  A )
) ) )
126 ffun 5558 . . . . . . . 8  |-  ( rank
: U. ( R1
" On ) --> On 
->  Fun  rank )
12757, 126ax-mp 5 . . . . . . 7  |-  Fun  rank
128 fvelima 5740 . . . . . . 7  |-  ( ( Fun  rank  /\  x  e.  ( rank " ( R1 `  ( rank `  A
) ) ) )  ->  E. y  e.  ( R1 `  ( rank `  A ) ) (
rank `  y )  =  x )
129127, 128mpan 665 . . . . . 6  |-  ( x  e.  ( rank " ( R1 `  ( rank `  A
) ) )  ->  E. y  e.  ( R1 `  ( rank `  A
) ) ( rank `  y )  =  x )
130 rankr1ai 8001 . . . . . . . 8  |-  ( y  e.  ( R1 `  ( rank `  A )
)  ->  ( rank `  y )  e.  (
rank `  A )
)
131 eleq1 2501 . . . . . . . 8  |-  ( (
rank `  y )  =  x  ->  ( (
rank `  y )  e.  ( rank `  A
)  <->  x  e.  ( rank `  A ) ) )
132130, 131syl5ibcom 220 . . . . . . 7  |-  ( y  e.  ( R1 `  ( rank `  A )
)  ->  ( ( rank `  y )  =  x  ->  x  e.  ( rank `  A )
) )
133132rexlimiv 2833 . . . . . 6  |-  ( E. y  e.  ( R1
`  ( rank `  A
) ) ( rank `  y )  =  x  ->  x  e.  (
rank `  A )
)
134129, 133syl 16 . . . . 5  |-  ( x  e.  ( rank " ( R1 `  ( rank `  A
) ) )  ->  x  e.  ( rank `  A ) )
135134ssriv 3357 . . . 4  |-  ( rank " ( R1 `  ( rank `  A )
) )  C_  ( rank `  A )
136125, 135syl6ss 3365 . . 3  |-  ( ( TC `  A ) 
C_  ( R1 `  ( rank `  A )
)  ->  ( rank " ( TC `  A
) )  C_  ( rank `  A ) )
137124, 136syl 16 . 2  |-  ( A  e.  U. ( R1
" On )  -> 
( rank " ( TC
`  A ) ) 
C_  ( rank `  A
) )
138112, 137eqssd 3370 1  |-  ( A  e.  U. ( R1
" On )  -> 
( rank `  A )  =  ( rank " ( TC `  A ) ) )
Colors of variables: wff setvar class
Syntax hints:   -. wn 3    -> wi 4    <-> wb 184    \/ wo 368    /\ wa 369    \/ w3o 959    /\ w3a 960    = wceq 1364    e. wcel 1761   {cab 2427   A.wral 2713   E.wrex 2714   {crab 2717   _Vcvv 2970    C_ wss 3325   U.cuni 4088   |^|cint 4125   Tr wtr 4382   Ord word 4714   Oncon0 4715   suc csuc 4717   "cima 4839   Fun wfun 5409    Fn wfn 5410   -->wf 5411   ` cfv 5415   TCctc 7952   R1cr1 7965   rankcrnk 7966
This theorem was proved from axioms:  ax-mp 5  ax-1 6  ax-2 7  ax-3 8  ax-gen 1596  ax-4 1607  ax-5 1675  ax-6 1713  ax-7 1733  ax-8 1763  ax-9 1765  ax-10 1780  ax-11 1785  ax-12 1797  ax-13 1948  ax-ext 2422  ax-rep 4400  ax-sep 4410  ax-nul 4418  ax-pow 4467  ax-pr 4528  ax-un 6371  ax-inf2 7843
This theorem depends on definitions:  df-bi 185  df-or 370  df-an 371  df-3or 961  df-3an 962  df-tru 1367  df-ex 1592  df-nf 1595  df-sb 1706  df-eu 2263  df-mo 2264  df-clab 2428  df-cleq 2434  df-clel 2437  df-nfc 2566  df-ne 2606  df-ral 2718  df-rex 2719  df-reu 2720  df-rab 2722  df-v 2972  df-sbc 3184  df-csb 3286  df-dif 3328  df-un 3330  df-in 3332  df-ss 3339  df-pss 3341  df-nul 3635  df-if 3789  df-pw 3859  df-sn 3875  df-pr 3877  df-tp 3879  df-op 3881  df-uni 4089  df-int 4126  df-iun 4170  df-br 4290  df-opab 4348  df-mpt 4349  df-tr 4383  df-eprel 4628  df-id 4632  df-po 4637  df-so 4638  df-fr 4675  df-we 4677  df-ord 4718  df-on 4719  df-lim 4720  df-suc 4721  df-xp 4842  df-rel 4843  df-cnv 4844  df-co 4845  df-dm 4846  df-rn 4847  df-res 4848  df-ima 4849  df-iota 5378  df-fun 5417  df-fn 5418  df-f 5419  df-f1 5420  df-fo 5421  df-f1o 5422  df-fv 5423  df-om 6476  df-recs 6828  df-rdg 6862  df-tc 7953  df-r1 7967  df-rank 7968
This theorem is referenced by:  hsmexlem5  8595  grur1  8983
  Copyright terms: Public domain W3C validator