Step |
Hyp |
Ref |
Expression |
1 |
|
snnzg |
|- ( A e. V -> { A } =/= (/) ) |
2 |
|
fo2ndres |
|- ( { A } =/= (/) -> ( 2nd |` ( { A } X. B ) ) : ( { A } X. B ) -onto-> B ) |
3 |
1 2
|
syl |
|- ( A e. V -> ( 2nd |` ( { A } X. B ) ) : ( { A } X. B ) -onto-> B ) |
4 |
|
moeq |
|- E* x x = <. A , y >. |
5 |
4
|
moani |
|- E* x ( y e. B /\ x = <. A , y >. ) |
6 |
|
vex |
|- y e. _V |
7 |
6
|
brresi |
|- ( x ( 2nd |` ( { A } X. B ) ) y <-> ( x e. ( { A } X. B ) /\ x 2nd y ) ) |
8 |
|
fo2nd |
|- 2nd : _V -onto-> _V |
9 |
|
fofn |
|- ( 2nd : _V -onto-> _V -> 2nd Fn _V ) |
10 |
8 9
|
ax-mp |
|- 2nd Fn _V |
11 |
|
vex |
|- x e. _V |
12 |
|
fnbrfvb |
|- ( ( 2nd Fn _V /\ x e. _V ) -> ( ( 2nd ` x ) = y <-> x 2nd y ) ) |
13 |
10 11 12
|
mp2an |
|- ( ( 2nd ` x ) = y <-> x 2nd y ) |
14 |
13
|
anbi2i |
|- ( ( x e. ( { A } X. B ) /\ ( 2nd ` x ) = y ) <-> ( x e. ( { A } X. B ) /\ x 2nd y ) ) |
15 |
|
elxp7 |
|- ( x e. ( { A } X. B ) <-> ( x e. ( _V X. _V ) /\ ( ( 1st ` x ) e. { A } /\ ( 2nd ` x ) e. B ) ) ) |
16 |
|
eleq1 |
|- ( ( 2nd ` x ) = y -> ( ( 2nd ` x ) e. B <-> y e. B ) ) |
17 |
16
|
biimpac |
|- ( ( ( 2nd ` x ) e. B /\ ( 2nd ` x ) = y ) -> y e. B ) |
18 |
17
|
adantll |
|- ( ( ( ( 1st ` x ) e. { A } /\ ( 2nd ` x ) e. B ) /\ ( 2nd ` x ) = y ) -> y e. B ) |
19 |
18
|
adantll |
|- ( ( ( x e. ( _V X. _V ) /\ ( ( 1st ` x ) e. { A } /\ ( 2nd ` x ) e. B ) ) /\ ( 2nd ` x ) = y ) -> y e. B ) |
20 |
|
elsni |
|- ( ( 1st ` x ) e. { A } -> ( 1st ` x ) = A ) |
21 |
|
eqopi |
|- ( ( x e. ( _V X. _V ) /\ ( ( 1st ` x ) = A /\ ( 2nd ` x ) = y ) ) -> x = <. A , y >. ) |
22 |
21
|
anassrs |
|- ( ( ( x e. ( _V X. _V ) /\ ( 1st ` x ) = A ) /\ ( 2nd ` x ) = y ) -> x = <. A , y >. ) |
23 |
20 22
|
sylanl2 |
|- ( ( ( x e. ( _V X. _V ) /\ ( 1st ` x ) e. { A } ) /\ ( 2nd ` x ) = y ) -> x = <. A , y >. ) |
24 |
23
|
adantlrr |
|- ( ( ( x e. ( _V X. _V ) /\ ( ( 1st ` x ) e. { A } /\ ( 2nd ` x ) e. B ) ) /\ ( 2nd ` x ) = y ) -> x = <. A , y >. ) |
25 |
19 24
|
jca |
|- ( ( ( x e. ( _V X. _V ) /\ ( ( 1st ` x ) e. { A } /\ ( 2nd ` x ) e. B ) ) /\ ( 2nd ` x ) = y ) -> ( y e. B /\ x = <. A , y >. ) ) |
26 |
15 25
|
sylanb |
|- ( ( x e. ( { A } X. B ) /\ ( 2nd ` x ) = y ) -> ( y e. B /\ x = <. A , y >. ) ) |
27 |
26
|
adantl |
|- ( ( A e. V /\ ( x e. ( { A } X. B ) /\ ( 2nd ` x ) = y ) ) -> ( y e. B /\ x = <. A , y >. ) ) |
28 |
|
simprr |
|- ( ( A e. V /\ ( y e. B /\ x = <. A , y >. ) ) -> x = <. A , y >. ) |
29 |
|
snidg |
|- ( A e. V -> A e. { A } ) |
30 |
29
|
adantr |
|- ( ( A e. V /\ ( y e. B /\ x = <. A , y >. ) ) -> A e. { A } ) |
31 |
|
simprl |
|- ( ( A e. V /\ ( y e. B /\ x = <. A , y >. ) ) -> y e. B ) |
32 |
30 31
|
opelxpd |
|- ( ( A e. V /\ ( y e. B /\ x = <. A , y >. ) ) -> <. A , y >. e. ( { A } X. B ) ) |
33 |
28 32
|
eqeltrd |
|- ( ( A e. V /\ ( y e. B /\ x = <. A , y >. ) ) -> x e. ( { A } X. B ) ) |
34 |
|
fveq2 |
|- ( x = <. A , y >. -> ( 2nd ` x ) = ( 2nd ` <. A , y >. ) ) |
35 |
|
op2ndg |
|- ( ( A e. V /\ y e. _V ) -> ( 2nd ` <. A , y >. ) = y ) |
36 |
35
|
elvd |
|- ( A e. V -> ( 2nd ` <. A , y >. ) = y ) |
37 |
34 36
|
sylan9eqr |
|- ( ( A e. V /\ x = <. A , y >. ) -> ( 2nd ` x ) = y ) |
38 |
37
|
adantrl |
|- ( ( A e. V /\ ( y e. B /\ x = <. A , y >. ) ) -> ( 2nd ` x ) = y ) |
39 |
33 38
|
jca |
|- ( ( A e. V /\ ( y e. B /\ x = <. A , y >. ) ) -> ( x e. ( { A } X. B ) /\ ( 2nd ` x ) = y ) ) |
40 |
27 39
|
impbida |
|- ( A e. V -> ( ( x e. ( { A } X. B ) /\ ( 2nd ` x ) = y ) <-> ( y e. B /\ x = <. A , y >. ) ) ) |
41 |
14 40
|
bitr3id |
|- ( A e. V -> ( ( x e. ( { A } X. B ) /\ x 2nd y ) <-> ( y e. B /\ x = <. A , y >. ) ) ) |
42 |
7 41
|
bitrid |
|- ( A e. V -> ( x ( 2nd |` ( { A } X. B ) ) y <-> ( y e. B /\ x = <. A , y >. ) ) ) |
43 |
42
|
mobidv |
|- ( A e. V -> ( E* x x ( 2nd |` ( { A } X. B ) ) y <-> E* x ( y e. B /\ x = <. A , y >. ) ) ) |
44 |
5 43
|
mpbiri |
|- ( A e. V -> E* x x ( 2nd |` ( { A } X. B ) ) y ) |
45 |
44
|
alrimiv |
|- ( A e. V -> A. y E* x x ( 2nd |` ( { A } X. B ) ) y ) |
46 |
|
funcnv2 |
|- ( Fun `' ( 2nd |` ( { A } X. B ) ) <-> A. y E* x x ( 2nd |` ( { A } X. B ) ) y ) |
47 |
45 46
|
sylibr |
|- ( A e. V -> Fun `' ( 2nd |` ( { A } X. B ) ) ) |
48 |
|
dff1o3 |
|- ( ( 2nd |` ( { A } X. B ) ) : ( { A } X. B ) -1-1-onto-> B <-> ( ( 2nd |` ( { A } X. B ) ) : ( { A } X. B ) -onto-> B /\ Fun `' ( 2nd |` ( { A } X. B ) ) ) ) |
49 |
3 47 48
|
sylanbrc |
|- ( A e. V -> ( 2nd |` ( { A } X. B ) ) : ( { A } X. B ) -1-1-onto-> B ) |