This is an inofficial mirror of http://metamath.tirix.org for personal testing of a visualizer extension only.
Description: The mapping of a restriction of the 2nd function to a converse constant function. (Contributed by NM, 27-Mar-2008) (Proof shortened by Peter Mazsa, 2-Oct-2022)
| Ref | Expression | ||
|---|---|---|---|
| Assertion | 2ndconst | |- ( A e. V -> ( 2nd |` ( { A } X. B ) ) : ( { A } X. B ) -1-1-onto-> B ) |
| 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 ) |