Step |
Hyp |
Ref |
Expression |
1 |
|
psrbag.d |
|- D = { f e. ( NN0 ^m I ) | ( `' f " NN ) e. Fin } |
2 |
|
df-rab |
|- { y e. D | y oR <_ F } = { y | ( y e. D /\ y oR <_ F ) } |
3 |
1
|
psrbagf |
|- ( y e. D -> y : I --> NN0 ) |
4 |
3
|
a1i |
|- ( F e. D -> ( y e. D -> y : I --> NN0 ) ) |
5 |
4
|
adantrd |
|- ( F e. D -> ( ( y e. D /\ y oR <_ F ) -> y : I --> NN0 ) ) |
6 |
|
ss2ixp |
|- ( A. x e. I ( 0 ... ( F ` x ) ) C_ NN0 -> X_ x e. I ( 0 ... ( F ` x ) ) C_ X_ x e. I NN0 ) |
7 |
|
fz0ssnn0 |
|- ( 0 ... ( F ` x ) ) C_ NN0 |
8 |
7
|
a1i |
|- ( x e. I -> ( 0 ... ( F ` x ) ) C_ NN0 ) |
9 |
6 8
|
mprg |
|- X_ x e. I ( 0 ... ( F ` x ) ) C_ X_ x e. I NN0 |
10 |
9
|
sseli |
|- ( y e. X_ x e. I ( 0 ... ( F ` x ) ) -> y e. X_ x e. I NN0 ) |
11 |
|
vex |
|- y e. _V |
12 |
11
|
elixpconst |
|- ( y e. X_ x e. I NN0 <-> y : I --> NN0 ) |
13 |
10 12
|
sylib |
|- ( y e. X_ x e. I ( 0 ... ( F ` x ) ) -> y : I --> NN0 ) |
14 |
13
|
a1i |
|- ( F e. D -> ( y e. X_ x e. I ( 0 ... ( F ` x ) ) -> y : I --> NN0 ) ) |
15 |
|
ffn |
|- ( y : I --> NN0 -> y Fn I ) |
16 |
15
|
adantl |
|- ( ( F e. D /\ y : I --> NN0 ) -> y Fn I ) |
17 |
11
|
elixp |
|- ( y e. X_ x e. I ( 0 ... ( F ` x ) ) <-> ( y Fn I /\ A. x e. I ( y ` x ) e. ( 0 ... ( F ` x ) ) ) ) |
18 |
17
|
baib |
|- ( y Fn I -> ( y e. X_ x e. I ( 0 ... ( F ` x ) ) <-> A. x e. I ( y ` x ) e. ( 0 ... ( F ` x ) ) ) ) |
19 |
16 18
|
syl |
|- ( ( F e. D /\ y : I --> NN0 ) -> ( y e. X_ x e. I ( 0 ... ( F ` x ) ) <-> A. x e. I ( y ` x ) e. ( 0 ... ( F ` x ) ) ) ) |
20 |
|
ffvelrn |
|- ( ( y : I --> NN0 /\ x e. I ) -> ( y ` x ) e. NN0 ) |
21 |
20
|
adantll |
|- ( ( ( F e. D /\ y : I --> NN0 ) /\ x e. I ) -> ( y ` x ) e. NN0 ) |
22 |
|
nn0uz |
|- NN0 = ( ZZ>= ` 0 ) |
23 |
21 22
|
eleqtrdi |
|- ( ( ( F e. D /\ y : I --> NN0 ) /\ x e. I ) -> ( y ` x ) e. ( ZZ>= ` 0 ) ) |
24 |
1
|
psrbagf |
|- ( F e. D -> F : I --> NN0 ) |
25 |
24
|
adantr |
|- ( ( F e. D /\ y : I --> NN0 ) -> F : I --> NN0 ) |
26 |
25
|
ffvelrnda |
|- ( ( ( F e. D /\ y : I --> NN0 ) /\ x e. I ) -> ( F ` x ) e. NN0 ) |
27 |
26
|
nn0zd |
|- ( ( ( F e. D /\ y : I --> NN0 ) /\ x e. I ) -> ( F ` x ) e. ZZ ) |
28 |
|
elfz5 |
|- ( ( ( y ` x ) e. ( ZZ>= ` 0 ) /\ ( F ` x ) e. ZZ ) -> ( ( y ` x ) e. ( 0 ... ( F ` x ) ) <-> ( y ` x ) <_ ( F ` x ) ) ) |
29 |
23 27 28
|
syl2anc |
|- ( ( ( F e. D /\ y : I --> NN0 ) /\ x e. I ) -> ( ( y ` x ) e. ( 0 ... ( F ` x ) ) <-> ( y ` x ) <_ ( F ` x ) ) ) |
30 |
29
|
ralbidva |
|- ( ( F e. D /\ y : I --> NN0 ) -> ( A. x e. I ( y ` x ) e. ( 0 ... ( F ` x ) ) <-> A. x e. I ( y ` x ) <_ ( F ` x ) ) ) |
31 |
24
|
ffnd |
|- ( F e. D -> F Fn I ) |
32 |
31
|
adantr |
|- ( ( F e. D /\ y : I --> NN0 ) -> F Fn I ) |
33 |
11
|
a1i |
|- ( ( F e. D /\ y : I --> NN0 ) -> y e. _V ) |
34 |
|
simpl |
|- ( ( F e. D /\ y : I --> NN0 ) -> F e. D ) |
35 |
|
inidm |
|- ( I i^i I ) = I |
36 |
|
eqidd |
|- ( ( ( F e. D /\ y : I --> NN0 ) /\ x e. I ) -> ( y ` x ) = ( y ` x ) ) |
37 |
|
eqidd |
|- ( ( ( F e. D /\ y : I --> NN0 ) /\ x e. I ) -> ( F ` x ) = ( F ` x ) ) |
38 |
16 32 33 34 35 36 37
|
ofrfvalg |
|- ( ( F e. D /\ y : I --> NN0 ) -> ( y oR <_ F <-> A. x e. I ( y ` x ) <_ ( F ` x ) ) ) |
39 |
30 38
|
bitr4d |
|- ( ( F e. D /\ y : I --> NN0 ) -> ( A. x e. I ( y ` x ) e. ( 0 ... ( F ` x ) ) <-> y oR <_ F ) ) |
40 |
1
|
psrbaglecl |
|- ( ( F e. D /\ y : I --> NN0 /\ y oR <_ F ) -> y e. D ) |
41 |
40
|
3expia |
|- ( ( F e. D /\ y : I --> NN0 ) -> ( y oR <_ F -> y e. D ) ) |
42 |
41
|
pm4.71rd |
|- ( ( F e. D /\ y : I --> NN0 ) -> ( y oR <_ F <-> ( y e. D /\ y oR <_ F ) ) ) |
43 |
19 39 42
|
3bitrrd |
|- ( ( F e. D /\ y : I --> NN0 ) -> ( ( y e. D /\ y oR <_ F ) <-> y e. X_ x e. I ( 0 ... ( F ` x ) ) ) ) |
44 |
43
|
ex |
|- ( F e. D -> ( y : I --> NN0 -> ( ( y e. D /\ y oR <_ F ) <-> y e. X_ x e. I ( 0 ... ( F ` x ) ) ) ) ) |
45 |
5 14 44
|
pm5.21ndd |
|- ( F e. D -> ( ( y e. D /\ y oR <_ F ) <-> y e. X_ x e. I ( 0 ... ( F ` x ) ) ) ) |
46 |
45
|
abbi1dv |
|- ( F e. D -> { y | ( y e. D /\ y oR <_ F ) } = X_ x e. I ( 0 ... ( F ` x ) ) ) |
47 |
2 46
|
eqtrid |
|- ( F e. D -> { y e. D | y oR <_ F } = X_ x e. I ( 0 ... ( F ` x ) ) ) |
48 |
|
cnveq |
|- ( f = F -> `' f = `' F ) |
49 |
48
|
imaeq1d |
|- ( f = F -> ( `' f " NN ) = ( `' F " NN ) ) |
50 |
49
|
eleq1d |
|- ( f = F -> ( ( `' f " NN ) e. Fin <-> ( `' F " NN ) e. Fin ) ) |
51 |
50 1
|
elrab2 |
|- ( F e. D <-> ( F e. ( NN0 ^m I ) /\ ( `' F " NN ) e. Fin ) ) |
52 |
51
|
simprbi |
|- ( F e. D -> ( `' F " NN ) e. Fin ) |
53 |
|
fzfid |
|- ( ( F e. D /\ x e. I ) -> ( 0 ... ( F ` x ) ) e. Fin ) |
54 |
|
frnnn0suppg |
|- ( ( F e. D /\ F : I --> NN0 ) -> ( F supp 0 ) = ( `' F " NN ) ) |
55 |
24 54
|
mpdan |
|- ( F e. D -> ( F supp 0 ) = ( `' F " NN ) ) |
56 |
|
eqimss |
|- ( ( F supp 0 ) = ( `' F " NN ) -> ( F supp 0 ) C_ ( `' F " NN ) ) |
57 |
55 56
|
syl |
|- ( F e. D -> ( F supp 0 ) C_ ( `' F " NN ) ) |
58 |
|
id |
|- ( F e. D -> F e. D ) |
59 |
|
c0ex |
|- 0 e. _V |
60 |
59
|
a1i |
|- ( F e. D -> 0 e. _V ) |
61 |
24 57 58 60
|
suppssrg |
|- ( ( F e. D /\ x e. ( I \ ( `' F " NN ) ) ) -> ( F ` x ) = 0 ) |
62 |
61
|
oveq2d |
|- ( ( F e. D /\ x e. ( I \ ( `' F " NN ) ) ) -> ( 0 ... ( F ` x ) ) = ( 0 ... 0 ) ) |
63 |
|
fz0sn |
|- ( 0 ... 0 ) = { 0 } |
64 |
62 63
|
eqtrdi |
|- ( ( F e. D /\ x e. ( I \ ( `' F " NN ) ) ) -> ( 0 ... ( F ` x ) ) = { 0 } ) |
65 |
|
eqimss |
|- ( ( 0 ... ( F ` x ) ) = { 0 } -> ( 0 ... ( F ` x ) ) C_ { 0 } ) |
66 |
64 65
|
syl |
|- ( ( F e. D /\ x e. ( I \ ( `' F " NN ) ) ) -> ( 0 ... ( F ` x ) ) C_ { 0 } ) |
67 |
52 53 66
|
ixpfi2 |
|- ( F e. D -> X_ x e. I ( 0 ... ( F ` x ) ) e. Fin ) |
68 |
47 67
|
eqeltrd |
|- ( F e. D -> { y e. D | y oR <_ F } e. Fin ) |