Step |
Hyp |
Ref |
Expression |
1 |
|
cfsetsnfsetfv.f |
|- F = { f | ( f : A --> B /\ E. b e. B A. z e. A ( f ` z ) = b ) } |
2 |
|
cfsetsnfsetfv.g |
|- G = { x | x : { Y } --> B } |
3 |
|
cfsetsnfsetfv.h |
|- H = ( g e. G |-> ( a e. A |-> ( g ` Y ) ) ) |
4 |
|
simpl |
|- ( ( A e. V /\ Y e. A ) -> A e. V ) |
5 |
4
|
adantr |
|- ( ( ( A e. V /\ Y e. A ) /\ g e. G ) -> A e. V ) |
6 |
5
|
mptexd |
|- ( ( ( A e. V /\ Y e. A ) /\ g e. G ) -> ( a e. A |-> ( g ` Y ) ) e. _V ) |
7 |
|
vex |
|- g e. _V |
8 |
|
feq1 |
|- ( x = g -> ( x : { Y } --> B <-> g : { Y } --> B ) ) |
9 |
7 8 2
|
elab2 |
|- ( g e. G <-> g : { Y } --> B ) |
10 |
9
|
biimpi |
|- ( g e. G -> g : { Y } --> B ) |
11 |
10
|
adantl |
|- ( ( ( A e. V /\ Y e. A ) /\ g e. G ) -> g : { Y } --> B ) |
12 |
|
snidg |
|- ( Y e. A -> Y e. { Y } ) |
13 |
12
|
adantl |
|- ( ( A e. V /\ Y e. A ) -> Y e. { Y } ) |
14 |
13
|
adantr |
|- ( ( ( A e. V /\ Y e. A ) /\ g e. G ) -> Y e. { Y } ) |
15 |
11 14
|
ffvelrnd |
|- ( ( ( A e. V /\ Y e. A ) /\ g e. G ) -> ( g ` Y ) e. B ) |
16 |
15
|
adantr |
|- ( ( ( ( A e. V /\ Y e. A ) /\ g e. G ) /\ a e. A ) -> ( g ` Y ) e. B ) |
17 |
16
|
fmpttd |
|- ( ( ( A e. V /\ Y e. A ) /\ g e. G ) -> ( a e. A |-> ( g ` Y ) ) : A --> B ) |
18 |
|
eqeq2 |
|- ( b = ( g ` Y ) -> ( ( g ` Y ) = b <-> ( g ` Y ) = ( g ` Y ) ) ) |
19 |
18
|
ralbidv |
|- ( b = ( g ` Y ) -> ( A. z e. A ( g ` Y ) = b <-> A. z e. A ( g ` Y ) = ( g ` Y ) ) ) |
20 |
19
|
adantl |
|- ( ( ( ( A e. V /\ Y e. A ) /\ g e. G ) /\ b = ( g ` Y ) ) -> ( A. z e. A ( g ` Y ) = b <-> A. z e. A ( g ` Y ) = ( g ` Y ) ) ) |
21 |
|
eqidd |
|- ( ( ( ( A e. V /\ Y e. A ) /\ g e. G ) /\ z e. A ) -> ( g ` Y ) = ( g ` Y ) ) |
22 |
21
|
ralrimiva |
|- ( ( ( A e. V /\ Y e. A ) /\ g e. G ) -> A. z e. A ( g ` Y ) = ( g ` Y ) ) |
23 |
15 20 22
|
rspcedvd |
|- ( ( ( A e. V /\ Y e. A ) /\ g e. G ) -> E. b e. B A. z e. A ( g ` Y ) = b ) |
24 |
17 23
|
jca |
|- ( ( ( A e. V /\ Y e. A ) /\ g e. G ) -> ( ( a e. A |-> ( g ` Y ) ) : A --> B /\ E. b e. B A. z e. A ( g ` Y ) = b ) ) |
25 |
|
feq1 |
|- ( f = ( a e. A |-> ( g ` Y ) ) -> ( f : A --> B <-> ( a e. A |-> ( g ` Y ) ) : A --> B ) ) |
26 |
|
simpl |
|- ( ( f = ( a e. A |-> ( g ` Y ) ) /\ z e. A ) -> f = ( a e. A |-> ( g ` Y ) ) ) |
27 |
|
eqidd |
|- ( ( ( f = ( a e. A |-> ( g ` Y ) ) /\ z e. A ) /\ a = z ) -> ( g ` Y ) = ( g ` Y ) ) |
28 |
|
simpr |
|- ( ( f = ( a e. A |-> ( g ` Y ) ) /\ z e. A ) -> z e. A ) |
29 |
|
fvexd |
|- ( ( f = ( a e. A |-> ( g ` Y ) ) /\ z e. A ) -> ( g ` Y ) e. _V ) |
30 |
|
nfcv |
|- F/_ a f |
31 |
|
nfmpt1 |
|- F/_ a ( a e. A |-> ( g ` Y ) ) |
32 |
30 31
|
nfeq |
|- F/ a f = ( a e. A |-> ( g ` Y ) ) |
33 |
|
nfv |
|- F/ a z e. A |
34 |
32 33
|
nfan |
|- F/ a ( f = ( a e. A |-> ( g ` Y ) ) /\ z e. A ) |
35 |
|
nfcv |
|- F/_ a z |
36 |
|
nfcv |
|- F/_ a ( g ` Y ) |
37 |
26 27 28 29 34 35 36
|
fvmptdf |
|- ( ( f = ( a e. A |-> ( g ` Y ) ) /\ z e. A ) -> ( f ` z ) = ( g ` Y ) ) |
38 |
37
|
eqeq1d |
|- ( ( f = ( a e. A |-> ( g ` Y ) ) /\ z e. A ) -> ( ( f ` z ) = b <-> ( g ` Y ) = b ) ) |
39 |
38
|
ralbidva |
|- ( f = ( a e. A |-> ( g ` Y ) ) -> ( A. z e. A ( f ` z ) = b <-> A. z e. A ( g ` Y ) = b ) ) |
40 |
39
|
rexbidv |
|- ( f = ( a e. A |-> ( g ` Y ) ) -> ( E. b e. B A. z e. A ( f ` z ) = b <-> E. b e. B A. z e. A ( g ` Y ) = b ) ) |
41 |
25 40
|
anbi12d |
|- ( f = ( a e. A |-> ( g ` Y ) ) -> ( ( f : A --> B /\ E. b e. B A. z e. A ( f ` z ) = b ) <-> ( ( a e. A |-> ( g ` Y ) ) : A --> B /\ E. b e. B A. z e. A ( g ` Y ) = b ) ) ) |
42 |
6 24 41
|
elabd |
|- ( ( ( A e. V /\ Y e. A ) /\ g e. G ) -> ( a e. A |-> ( g ` Y ) ) e. { f | ( f : A --> B /\ E. b e. B A. z e. A ( f ` z ) = b ) } ) |
43 |
42 1
|
eleqtrrdi |
|- ( ( ( A e. V /\ Y e. A ) /\ g e. G ) -> ( a e. A |-> ( g ` Y ) ) e. F ) |
44 |
43 3
|
fmptd |
|- ( ( A e. V /\ Y e. A ) -> H : G --> F ) |