This is an inofficial mirror of http://metamath.tirix.org for personal testing of a visualizer extension only.
Description: Any set must be at least as large as the cofinality of its rank, because the ranks of the elements of A form a cofinal map into ( rankA ) . (Contributed by Mario Carneiro, 27-May-2013)
| Ref | Expression | ||
|---|---|---|---|
| Assertion | rankcf | |- -. A ~< ( cf ` ( rank ` A ) ) |
| Step | Hyp | Ref | Expression |
|---|---|---|---|
| 1 | rankon | |- ( rank ` A ) e. On |
|
| 2 | onzsl | |- ( ( rank ` A ) e. On <-> ( ( rank ` A ) = (/) \/ E. x e. On ( rank ` A ) = suc x \/ ( ( rank ` A ) e. _V /\ Lim ( rank ` A ) ) ) ) |
|
| 3 | 1 2 | mpbi | |- ( ( rank ` A ) = (/) \/ E. x e. On ( rank ` A ) = suc x \/ ( ( rank ` A ) e. _V /\ Lim ( rank ` A ) ) ) |
| 4 | sdom0 | |- -. A ~< (/) |
|
| 5 | fveq2 | |- ( ( rank ` A ) = (/) -> ( cf ` ( rank ` A ) ) = ( cf ` (/) ) ) |
|
| 6 | cf0 | |- ( cf ` (/) ) = (/) |
|
| 7 | 5 6 | eqtrdi | |- ( ( rank ` A ) = (/) -> ( cf ` ( rank ` A ) ) = (/) ) |
| 8 | 7 | breq2d | |- ( ( rank ` A ) = (/) -> ( A ~< ( cf ` ( rank ` A ) ) <-> A ~< (/) ) ) |
| 9 | 4 8 | mtbiri | |- ( ( rank ` A ) = (/) -> -. A ~< ( cf ` ( rank ` A ) ) ) |
| 10 | fveq2 | |- ( ( rank ` A ) = suc x -> ( cf ` ( rank ` A ) ) = ( cf ` suc x ) ) |
|
| 11 | cfsuc | |- ( x e. On -> ( cf ` suc x ) = 1o ) |
|
| 12 | 10 11 | sylan9eqr | |- ( ( x e. On /\ ( rank ` A ) = suc x ) -> ( cf ` ( rank ` A ) ) = 1o ) |
| 13 | nsuceq0 | |- suc x =/= (/) |
|
| 14 | neeq1 | |- ( ( rank ` A ) = suc x -> ( ( rank ` A ) =/= (/) <-> suc x =/= (/) ) ) |
|
| 15 | 13 14 | mpbiri | |- ( ( rank ` A ) = suc x -> ( rank ` A ) =/= (/) ) |
| 16 | fveq2 | |- ( A = (/) -> ( rank ` A ) = ( rank ` (/) ) ) |
|
| 17 | 0elon | |- (/) e. On |
|
| 18 | r1fnon | |- R1 Fn On |
|
| 19 | 18 | fndmi | |- dom R1 = On |
| 20 | 17 19 | eleqtrri | |- (/) e. dom R1 |
| 21 | rankonid | |- ( (/) e. dom R1 <-> ( rank ` (/) ) = (/) ) |
|
| 22 | 20 21 | mpbi | |- ( rank ` (/) ) = (/) |
| 23 | 16 22 | eqtrdi | |- ( A = (/) -> ( rank ` A ) = (/) ) |
| 24 | 23 | necon3i | |- ( ( rank ` A ) =/= (/) -> A =/= (/) ) |
| 25 | rankvaln | |- ( -. A e. U. ( R1 " On ) -> ( rank ` A ) = (/) ) |
|
| 26 | 25 | necon1ai | |- ( ( rank ` A ) =/= (/) -> A e. U. ( R1 " On ) ) |
| 27 | breq2 | |- ( y = A -> ( 1o ~<_ y <-> 1o ~<_ A ) ) |
|
| 28 | neeq1 | |- ( y = A -> ( y =/= (/) <-> A =/= (/) ) ) |
|
| 29 | 0sdom1dom | |- ( (/) ~< y <-> 1o ~<_ y ) |
|
| 30 | vex | |- y e. _V |
|
| 31 | 30 | 0sdom | |- ( (/) ~< y <-> y =/= (/) ) |
| 32 | 29 31 | bitr3i | |- ( 1o ~<_ y <-> y =/= (/) ) |
| 33 | 27 28 32 | vtoclbg | |- ( A e. U. ( R1 " On ) -> ( 1o ~<_ A <-> A =/= (/) ) ) |
| 34 | 26 33 | syl | |- ( ( rank ` A ) =/= (/) -> ( 1o ~<_ A <-> A =/= (/) ) ) |
| 35 | 24 34 | mpbird | |- ( ( rank ` A ) =/= (/) -> 1o ~<_ A ) |
| 36 | 15 35 | syl | |- ( ( rank ` A ) = suc x -> 1o ~<_ A ) |
| 37 | 36 | adantl | |- ( ( x e. On /\ ( rank ` A ) = suc x ) -> 1o ~<_ A ) |
| 38 | 12 37 | eqbrtrd | |- ( ( x e. On /\ ( rank ` A ) = suc x ) -> ( cf ` ( rank ` A ) ) ~<_ A ) |
| 39 | 38 | rexlimiva | |- ( E. x e. On ( rank ` A ) = suc x -> ( cf ` ( rank ` A ) ) ~<_ A ) |
| 40 | domnsym | |- ( ( cf ` ( rank ` A ) ) ~<_ A -> -. A ~< ( cf ` ( rank ` A ) ) ) |
|
| 41 | 39 40 | syl | |- ( E. x e. On ( rank ` A ) = suc x -> -. A ~< ( cf ` ( rank ` A ) ) ) |
| 42 | nlim0 | |- -. Lim (/) |
|
| 43 | limeq | |- ( ( rank ` A ) = (/) -> ( Lim ( rank ` A ) <-> Lim (/) ) ) |
|
| 44 | 42 43 | mtbiri | |- ( ( rank ` A ) = (/) -> -. Lim ( rank ` A ) ) |
| 45 | 25 44 | syl | |- ( -. A e. U. ( R1 " On ) -> -. Lim ( rank ` A ) ) |
| 46 | 45 | con4i | |- ( Lim ( rank ` A ) -> A e. U. ( R1 " On ) ) |
| 47 | r1elssi | |- ( A e. U. ( R1 " On ) -> A C_ U. ( R1 " On ) ) |
|
| 48 | 46 47 | syl | |- ( Lim ( rank ` A ) -> A C_ U. ( R1 " On ) ) |
| 49 | 48 | sselda | |- ( ( Lim ( rank ` A ) /\ x e. A ) -> x e. U. ( R1 " On ) ) |
| 50 | ranksnb | |- ( x e. U. ( R1 " On ) -> ( rank ` { x } ) = suc ( rank ` x ) ) |
|
| 51 | 49 50 | syl | |- ( ( Lim ( rank ` A ) /\ x e. A ) -> ( rank ` { x } ) = suc ( rank ` x ) ) |
| 52 | rankelb | |- ( A e. U. ( R1 " On ) -> ( x e. A -> ( rank ` x ) e. ( rank ` A ) ) ) |
|
| 53 | 46 52 | syl | |- ( Lim ( rank ` A ) -> ( x e. A -> ( rank ` x ) e. ( rank ` A ) ) ) |
| 54 | limsuc | |- ( Lim ( rank ` A ) -> ( ( rank ` x ) e. ( rank ` A ) <-> suc ( rank ` x ) e. ( rank ` A ) ) ) |
|
| 55 | 53 54 | sylibd | |- ( Lim ( rank ` A ) -> ( x e. A -> suc ( rank ` x ) e. ( rank ` A ) ) ) |
| 56 | 55 | imp | |- ( ( Lim ( rank ` A ) /\ x e. A ) -> suc ( rank ` x ) e. ( rank ` A ) ) |
| 57 | 51 56 | eqeltrd | |- ( ( Lim ( rank ` A ) /\ x e. A ) -> ( rank ` { x } ) e. ( rank ` A ) ) |
| 58 | eleq1a | |- ( ( rank ` { x } ) e. ( rank ` A ) -> ( w = ( rank ` { x } ) -> w e. ( rank ` A ) ) ) |
|
| 59 | 57 58 | syl | |- ( ( Lim ( rank ` A ) /\ x e. A ) -> ( w = ( rank ` { x } ) -> w e. ( rank ` A ) ) ) |
| 60 | 59 | rexlimdva | |- ( Lim ( rank ` A ) -> ( E. x e. A w = ( rank ` { x } ) -> w e. ( rank ` A ) ) ) |
| 61 | 60 | abssdv | |- ( Lim ( rank ` A ) -> { w | E. x e. A w = ( rank ` { x } ) } C_ ( rank ` A ) ) |
| 62 | vsnex | |- { x } e. _V |
|
| 63 | 62 | dfiun2 | |- U_ x e. A { x } = U. { y | E. x e. A y = { x } } |
| 64 | iunid | |- U_ x e. A { x } = A |
|
| 65 | 63 64 | eqtr3i | |- U. { y | E. x e. A y = { x } } = A |
| 66 | 65 | fveq2i | |- ( rank ` U. { y | E. x e. A y = { x } } ) = ( rank ` A ) |
| 67 | 47 | sselda | |- ( ( A e. U. ( R1 " On ) /\ x e. A ) -> x e. U. ( R1 " On ) ) |
| 68 | snwf | |- ( x e. U. ( R1 " On ) -> { x } e. U. ( R1 " On ) ) |
|
| 69 | eleq1a | |- ( { x } e. U. ( R1 " On ) -> ( y = { x } -> y e. U. ( R1 " On ) ) ) |
|
| 70 | 67 68 69 | 3syl | |- ( ( A e. U. ( R1 " On ) /\ x e. A ) -> ( y = { x } -> y e. U. ( R1 " On ) ) ) |
| 71 | 70 | rexlimdva | |- ( A e. U. ( R1 " On ) -> ( E. x e. A y = { x } -> y e. U. ( R1 " On ) ) ) |
| 72 | 71 | abssdv | |- ( A e. U. ( R1 " On ) -> { y | E. x e. A y = { x } } C_ U. ( R1 " On ) ) |
| 73 | abrexexg | |- ( A e. U. ( R1 " On ) -> { y | E. x e. A y = { x } } e. _V ) |
|
| 74 | eleq1 | |- ( z = { y | E. x e. A y = { x } } -> ( z e. U. ( R1 " On ) <-> { y | E. x e. A y = { x } } e. U. ( R1 " On ) ) ) |
|
| 75 | sseq1 | |- ( z = { y | E. x e. A y = { x } } -> ( z C_ U. ( R1 " On ) <-> { y | E. x e. A y = { x } } C_ U. ( R1 " On ) ) ) |
|
| 76 | vex | |- z e. _V |
|
| 77 | 76 | r1elss | |- ( z e. U. ( R1 " On ) <-> z C_ U. ( R1 " On ) ) |
| 78 | 74 75 77 | vtoclbg | |- ( { y | E. x e. A y = { x } } e. _V -> ( { y | E. x e. A y = { x } } e. U. ( R1 " On ) <-> { y | E. x e. A y = { x } } C_ U. ( R1 " On ) ) ) |
| 79 | 73 78 | syl | |- ( A e. U. ( R1 " On ) -> ( { y | E. x e. A y = { x } } e. U. ( R1 " On ) <-> { y | E. x e. A y = { x } } C_ U. ( R1 " On ) ) ) |
| 80 | 72 79 | mpbird | |- ( A e. U. ( R1 " On ) -> { y | E. x e. A y = { x } } e. U. ( R1 " On ) ) |
| 81 | rankuni2b | |- ( { y | E. x e. A y = { x } } e. U. ( R1 " On ) -> ( rank ` U. { y | E. x e. A y = { x } } ) = U_ z e. { y | E. x e. A y = { x } } ( rank ` z ) ) |
|
| 82 | 80 81 | syl | |- ( A e. U. ( R1 " On ) -> ( rank ` U. { y | E. x e. A y = { x } } ) = U_ z e. { y | E. x e. A y = { x } } ( rank ` z ) ) |
| 83 | 66 82 | eqtr3id | |- ( A e. U. ( R1 " On ) -> ( rank ` A ) = U_ z e. { y | E. x e. A y = { x } } ( rank ` z ) ) |
| 84 | fvex | |- ( rank ` z ) e. _V |
|
| 85 | 84 | dfiun2 | |- U_ z e. { y | E. x e. A y = { x } } ( rank ` z ) = U. { w | E. z e. { y | E. x e. A y = { x } } w = ( rank ` z ) } |
| 86 | fveq2 | |- ( z = { x } -> ( rank ` z ) = ( rank ` { x } ) ) |
|
| 87 | 62 86 | abrexco | |- { w | E. z e. { y | E. x e. A y = { x } } w = ( rank ` z ) } = { w | E. x e. A w = ( rank ` { x } ) } |
| 88 | 87 | unieqi | |- U. { w | E. z e. { y | E. x e. A y = { x } } w = ( rank ` z ) } = U. { w | E. x e. A w = ( rank ` { x } ) } |
| 89 | 85 88 | eqtri | |- U_ z e. { y | E. x e. A y = { x } } ( rank ` z ) = U. { w | E. x e. A w = ( rank ` { x } ) } |
| 90 | 83 89 | eqtr2di | |- ( A e. U. ( R1 " On ) -> U. { w | E. x e. A w = ( rank ` { x } ) } = ( rank ` A ) ) |
| 91 | 46 90 | syl | |- ( Lim ( rank ` A ) -> U. { w | E. x e. A w = ( rank ` { x } ) } = ( rank ` A ) ) |
| 92 | fvex | |- ( rank ` A ) e. _V |
|
| 93 | 92 | cfslb | |- ( ( Lim ( rank ` A ) /\ { w | E. x e. A w = ( rank ` { x } ) } C_ ( rank ` A ) /\ U. { w | E. x e. A w = ( rank ` { x } ) } = ( rank ` A ) ) -> ( cf ` ( rank ` A ) ) ~<_ { w | E. x e. A w = ( rank ` { x } ) } ) |
| 94 | 61 91 93 | mpd3an23 | |- ( Lim ( rank ` A ) -> ( cf ` ( rank ` A ) ) ~<_ { w | E. x e. A w = ( rank ` { x } ) } ) |
| 95 | 2fveq3 | |- ( y = A -> ( cf ` ( rank ` y ) ) = ( cf ` ( rank ` A ) ) ) |
|
| 96 | breq12 | |- ( ( y = A /\ ( cf ` ( rank ` y ) ) = ( cf ` ( rank ` A ) ) ) -> ( y ~< ( cf ` ( rank ` y ) ) <-> A ~< ( cf ` ( rank ` A ) ) ) ) |
|
| 97 | 95 96 | mpdan | |- ( y = A -> ( y ~< ( cf ` ( rank ` y ) ) <-> A ~< ( cf ` ( rank ` A ) ) ) ) |
| 98 | rexeq | |- ( y = A -> ( E. x e. y w = ( rank ` { x } ) <-> E. x e. A w = ( rank ` { x } ) ) ) |
|
| 99 | 98 | abbidv | |- ( y = A -> { w | E. x e. y w = ( rank ` { x } ) } = { w | E. x e. A w = ( rank ` { x } ) } ) |
| 100 | breq12 | |- ( ( { w | E. x e. y w = ( rank ` { x } ) } = { w | E. x e. A w = ( rank ` { x } ) } /\ y = A ) -> ( { w | E. x e. y w = ( rank ` { x } ) } ~<_ y <-> { w | E. x e. A w = ( rank ` { x } ) } ~<_ A ) ) |
|
| 101 | 99 100 | mpancom | |- ( y = A -> ( { w | E. x e. y w = ( rank ` { x } ) } ~<_ y <-> { w | E. x e. A w = ( rank ` { x } ) } ~<_ A ) ) |
| 102 | 97 101 | imbi12d | |- ( y = A -> ( ( y ~< ( cf ` ( rank ` y ) ) -> { w | E. x e. y w = ( rank ` { x } ) } ~<_ y ) <-> ( A ~< ( cf ` ( rank ` A ) ) -> { w | E. x e. A w = ( rank ` { x } ) } ~<_ A ) ) ) |
| 103 | eqid | |- ( x e. y |-> ( rank ` { x } ) ) = ( x e. y |-> ( rank ` { x } ) ) |
|
| 104 | 103 | rnmpt | |- ran ( x e. y |-> ( rank ` { x } ) ) = { w | E. x e. y w = ( rank ` { x } ) } |
| 105 | cfon | |- ( cf ` ( rank ` y ) ) e. On |
|
| 106 | sdomdom | |- ( y ~< ( cf ` ( rank ` y ) ) -> y ~<_ ( cf ` ( rank ` y ) ) ) |
|
| 107 | ondomen | |- ( ( ( cf ` ( rank ` y ) ) e. On /\ y ~<_ ( cf ` ( rank ` y ) ) ) -> y e. dom card ) |
|
| 108 | 105 106 107 | sylancr | |- ( y ~< ( cf ` ( rank ` y ) ) -> y e. dom card ) |
| 109 | fvex | |- ( rank ` { x } ) e. _V |
|
| 110 | 109 103 | fnmpti | |- ( x e. y |-> ( rank ` { x } ) ) Fn y |
| 111 | dffn4 | |- ( ( x e. y |-> ( rank ` { x } ) ) Fn y <-> ( x e. y |-> ( rank ` { x } ) ) : y -onto-> ran ( x e. y |-> ( rank ` { x } ) ) ) |
|
| 112 | 110 111 | mpbi | |- ( x e. y |-> ( rank ` { x } ) ) : y -onto-> ran ( x e. y |-> ( rank ` { x } ) ) |
| 113 | fodomnum | |- ( y e. dom card -> ( ( x e. y |-> ( rank ` { x } ) ) : y -onto-> ran ( x e. y |-> ( rank ` { x } ) ) -> ran ( x e. y |-> ( rank ` { x } ) ) ~<_ y ) ) |
|
| 114 | 108 112 113 | mpisyl | |- ( y ~< ( cf ` ( rank ` y ) ) -> ran ( x e. y |-> ( rank ` { x } ) ) ~<_ y ) |
| 115 | 104 114 | eqbrtrrid | |- ( y ~< ( cf ` ( rank ` y ) ) -> { w | E. x e. y w = ( rank ` { x } ) } ~<_ y ) |
| 116 | 102 115 | vtoclg | |- ( A e. U. ( R1 " On ) -> ( A ~< ( cf ` ( rank ` A ) ) -> { w | E. x e. A w = ( rank ` { x } ) } ~<_ A ) ) |
| 117 | 46 116 | syl | |- ( Lim ( rank ` A ) -> ( A ~< ( cf ` ( rank ` A ) ) -> { w | E. x e. A w = ( rank ` { x } ) } ~<_ A ) ) |
| 118 | domtr | |- ( ( ( cf ` ( rank ` A ) ) ~<_ { w | E. x e. A w = ( rank ` { x } ) } /\ { w | E. x e. A w = ( rank ` { x } ) } ~<_ A ) -> ( cf ` ( rank ` A ) ) ~<_ A ) |
|
| 119 | 118 40 | syl | |- ( ( ( cf ` ( rank ` A ) ) ~<_ { w | E. x e. A w = ( rank ` { x } ) } /\ { w | E. x e. A w = ( rank ` { x } ) } ~<_ A ) -> -. A ~< ( cf ` ( rank ` A ) ) ) |
| 120 | 94 117 119 | syl6an | |- ( Lim ( rank ` A ) -> ( A ~< ( cf ` ( rank ` A ) ) -> -. A ~< ( cf ` ( rank ` A ) ) ) ) |
| 121 | 120 | pm2.01d | |- ( Lim ( rank ` A ) -> -. A ~< ( cf ` ( rank ` A ) ) ) |
| 122 | 121 | adantl | |- ( ( ( rank ` A ) e. _V /\ Lim ( rank ` A ) ) -> -. A ~< ( cf ` ( rank ` A ) ) ) |
| 123 | 9 41 122 | 3jaoi | |- ( ( ( rank ` A ) = (/) \/ E. x e. On ( rank ` A ) = suc x \/ ( ( rank ` A ) e. _V /\ Lim ( rank ` A ) ) ) -> -. A ~< ( cf ` ( rank ` A ) ) ) |
| 124 | 3 123 | ax-mp | |- -. A ~< ( cf ` ( rank ` A ) ) |