Step |
Hyp |
Ref |
Expression |
1 |
|
hashgval.1 |
|- G = ( rec ( ( x e. _V |-> ( x + 1 ) ) , 0 ) |` _om ) |
2 |
|
hashkf.2 |
|- K = ( G o. card ) |
3 |
|
frfnom |
|- ( rec ( ( x e. _V |-> ( x + 1 ) ) , 0 ) |` _om ) Fn _om |
4 |
1
|
fneq1i |
|- ( G Fn _om <-> ( rec ( ( x e. _V |-> ( x + 1 ) ) , 0 ) |` _om ) Fn _om ) |
5 |
3 4
|
mpbir |
|- G Fn _om |
6 |
|
fnfun |
|- ( G Fn _om -> Fun G ) |
7 |
5 6
|
ax-mp |
|- Fun G |
8 |
|
cardf2 |
|- card : { y | E. x e. On x ~~ y } --> On |
9 |
|
ffun |
|- ( card : { y | E. x e. On x ~~ y } --> On -> Fun card ) |
10 |
8 9
|
ax-mp |
|- Fun card |
11 |
|
funco |
|- ( ( Fun G /\ Fun card ) -> Fun ( G o. card ) ) |
12 |
7 10 11
|
mp2an |
|- Fun ( G o. card ) |
13 |
|
dmco |
|- dom ( G o. card ) = ( `' card " dom G ) |
14 |
5
|
fndmi |
|- dom G = _om |
15 |
14
|
imaeq2i |
|- ( `' card " dom G ) = ( `' card " _om ) |
16 |
|
funfn |
|- ( Fun card <-> card Fn dom card ) |
17 |
10 16
|
mpbi |
|- card Fn dom card |
18 |
|
elpreima |
|- ( card Fn dom card -> ( y e. ( `' card " _om ) <-> ( y e. dom card /\ ( card ` y ) e. _om ) ) ) |
19 |
17 18
|
ax-mp |
|- ( y e. ( `' card " _om ) <-> ( y e. dom card /\ ( card ` y ) e. _om ) ) |
20 |
|
id |
|- ( ( card ` y ) e. _om -> ( card ` y ) e. _om ) |
21 |
|
cardid2 |
|- ( y e. dom card -> ( card ` y ) ~~ y ) |
22 |
21
|
ensymd |
|- ( y e. dom card -> y ~~ ( card ` y ) ) |
23 |
|
breq2 |
|- ( x = ( card ` y ) -> ( y ~~ x <-> y ~~ ( card ` y ) ) ) |
24 |
23
|
rspcev |
|- ( ( ( card ` y ) e. _om /\ y ~~ ( card ` y ) ) -> E. x e. _om y ~~ x ) |
25 |
20 22 24
|
syl2anr |
|- ( ( y e. dom card /\ ( card ` y ) e. _om ) -> E. x e. _om y ~~ x ) |
26 |
|
isfi |
|- ( y e. Fin <-> E. x e. _om y ~~ x ) |
27 |
25 26
|
sylibr |
|- ( ( y e. dom card /\ ( card ` y ) e. _om ) -> y e. Fin ) |
28 |
|
finnum |
|- ( y e. Fin -> y e. dom card ) |
29 |
|
ficardom |
|- ( y e. Fin -> ( card ` y ) e. _om ) |
30 |
28 29
|
jca |
|- ( y e. Fin -> ( y e. dom card /\ ( card ` y ) e. _om ) ) |
31 |
27 30
|
impbii |
|- ( ( y e. dom card /\ ( card ` y ) e. _om ) <-> y e. Fin ) |
32 |
19 31
|
bitri |
|- ( y e. ( `' card " _om ) <-> y e. Fin ) |
33 |
32
|
eqriv |
|- ( `' card " _om ) = Fin |
34 |
13 15 33
|
3eqtri |
|- dom ( G o. card ) = Fin |
35 |
|
df-fn |
|- ( ( G o. card ) Fn Fin <-> ( Fun ( G o. card ) /\ dom ( G o. card ) = Fin ) ) |
36 |
12 34 35
|
mpbir2an |
|- ( G o. card ) Fn Fin |
37 |
2
|
fneq1i |
|- ( K Fn Fin <-> ( G o. card ) Fn Fin ) |
38 |
36 37
|
mpbir |
|- K Fn Fin |
39 |
2
|
fveq1i |
|- ( K ` y ) = ( ( G o. card ) ` y ) |
40 |
|
fvco |
|- ( ( Fun card /\ y e. dom card ) -> ( ( G o. card ) ` y ) = ( G ` ( card ` y ) ) ) |
41 |
10 28 40
|
sylancr |
|- ( y e. Fin -> ( ( G o. card ) ` y ) = ( G ` ( card ` y ) ) ) |
42 |
39 41
|
eqtrid |
|- ( y e. Fin -> ( K ` y ) = ( G ` ( card ` y ) ) ) |
43 |
1
|
hashgf1o |
|- G : _om -1-1-onto-> NN0 |
44 |
|
f1of |
|- ( G : _om -1-1-onto-> NN0 -> G : _om --> NN0 ) |
45 |
43 44
|
ax-mp |
|- G : _om --> NN0 |
46 |
45
|
ffvelrni |
|- ( ( card ` y ) e. _om -> ( G ` ( card ` y ) ) e. NN0 ) |
47 |
29 46
|
syl |
|- ( y e. Fin -> ( G ` ( card ` y ) ) e. NN0 ) |
48 |
42 47
|
eqeltrd |
|- ( y e. Fin -> ( K ` y ) e. NN0 ) |
49 |
48
|
rgen |
|- A. y e. Fin ( K ` y ) e. NN0 |
50 |
|
ffnfv |
|- ( K : Fin --> NN0 <-> ( K Fn Fin /\ A. y e. Fin ( K ` y ) e. NN0 ) ) |
51 |
38 49 50
|
mpbir2an |
|- K : Fin --> NN0 |