This is an inofficial mirror of http://metamath.tirix.org for personal testing of a visualizer extension only.
Description: The currying of a two-argument function is continuous. (Contributed by Mario Carneiro, 23-Mar-2015)
| Ref | Expression | ||
|---|---|---|---|
| Hypotheses | cnmpt2k.j | |- ( ph -> J e. ( TopOn ` X ) ) |
|
| cnmpt2k.k | |- ( ph -> K e. ( TopOn ` Y ) ) |
||
| cnmpt2k.a | |- ( ph -> ( x e. X , y e. Y |-> A ) e. ( ( J tX K ) Cn L ) ) |
||
| Assertion | cnmpt2k | |- ( ph -> ( x e. X |-> ( y e. Y |-> A ) ) e. ( J Cn ( L ^ko K ) ) ) |
| Step | Hyp | Ref | Expression |
|---|---|---|---|
| 1 | cnmpt2k.j | |- ( ph -> J e. ( TopOn ` X ) ) |
|
| 2 | cnmpt2k.k | |- ( ph -> K e. ( TopOn ` Y ) ) |
|
| 3 | cnmpt2k.a | |- ( ph -> ( x e. X , y e. Y |-> A ) e. ( ( J tX K ) Cn L ) ) |
|
| 4 | nfcv | |- F/_ x Y |
|
| 5 | nfcv | |- F/_ x v |
|
| 6 | nfmpo2 | |- F/_ x ( y e. Y , x e. X |-> A ) |
|
| 7 | nfcv | |- F/_ x w |
|
| 8 | 5 6 7 | nfov | |- F/_ x ( v ( y e. Y , x e. X |-> A ) w ) |
| 9 | 4 8 | nfmpt | |- F/_ x ( v e. Y |-> ( v ( y e. Y , x e. X |-> A ) w ) ) |
| 10 | nfcv | |- F/_ w ( y e. Y |-> ( y ( y e. Y , x e. X |-> A ) x ) ) |
|
| 11 | nfcv | |- F/_ y v |
|
| 12 | nfmpo1 | |- F/_ y ( y e. Y , x e. X |-> A ) |
|
| 13 | nfcv | |- F/_ y w |
|
| 14 | 11 12 13 | nfov | |- F/_ y ( v ( y e. Y , x e. X |-> A ) w ) |
| 15 | nfcv | |- F/_ v ( y ( y e. Y , x e. X |-> A ) w ) |
|
| 16 | oveq1 | |- ( v = y -> ( v ( y e. Y , x e. X |-> A ) w ) = ( y ( y e. Y , x e. X |-> A ) w ) ) |
|
| 17 | 14 15 16 | cbvmpt | |- ( v e. Y |-> ( v ( y e. Y , x e. X |-> A ) w ) ) = ( y e. Y |-> ( y ( y e. Y , x e. X |-> A ) w ) ) |
| 18 | oveq2 | |- ( w = x -> ( y ( y e. Y , x e. X |-> A ) w ) = ( y ( y e. Y , x e. X |-> A ) x ) ) |
|
| 19 | 18 | mpteq2dv | |- ( w = x -> ( y e. Y |-> ( y ( y e. Y , x e. X |-> A ) w ) ) = ( y e. Y |-> ( y ( y e. Y , x e. X |-> A ) x ) ) ) |
| 20 | 17 19 | eqtrid | |- ( w = x -> ( v e. Y |-> ( v ( y e. Y , x e. X |-> A ) w ) ) = ( y e. Y |-> ( y ( y e. Y , x e. X |-> A ) x ) ) ) |
| 21 | 9 10 20 | cbvmpt | |- ( w e. X |-> ( v e. Y |-> ( v ( y e. Y , x e. X |-> A ) w ) ) ) = ( x e. X |-> ( y e. Y |-> ( y ( y e. Y , x e. X |-> A ) x ) ) ) |
| 22 | simpr | |- ( ( ( ph /\ x e. X ) /\ y e. Y ) -> y e. Y ) |
|
| 23 | simplr | |- ( ( ( ph /\ x e. X ) /\ y e. Y ) -> x e. X ) |
|
| 24 | txtopon | |- ( ( K e. ( TopOn ` Y ) /\ J e. ( TopOn ` X ) ) -> ( K tX J ) e. ( TopOn ` ( Y X. X ) ) ) |
|
| 25 | 2 1 24 | syl2anc | |- ( ph -> ( K tX J ) e. ( TopOn ` ( Y X. X ) ) ) |
| 26 | cntop2 | |- ( ( x e. X , y e. Y |-> A ) e. ( ( J tX K ) Cn L ) -> L e. Top ) |
|
| 27 | 3 26 | syl | |- ( ph -> L e. Top ) |
| 28 | toptopon2 | |- ( L e. Top <-> L e. ( TopOn ` U. L ) ) |
|
| 29 | 27 28 | sylib | |- ( ph -> L e. ( TopOn ` U. L ) ) |
| 30 | 1 2 3 | cnmptcom | |- ( ph -> ( y e. Y , x e. X |-> A ) e. ( ( K tX J ) Cn L ) ) |
| 31 | cnf2 | |- ( ( ( K tX J ) e. ( TopOn ` ( Y X. X ) ) /\ L e. ( TopOn ` U. L ) /\ ( y e. Y , x e. X |-> A ) e. ( ( K tX J ) Cn L ) ) -> ( y e. Y , x e. X |-> A ) : ( Y X. X ) --> U. L ) |
|
| 32 | 25 29 30 31 | syl3anc | |- ( ph -> ( y e. Y , x e. X |-> A ) : ( Y X. X ) --> U. L ) |
| 33 | eqid | |- ( y e. Y , x e. X |-> A ) = ( y e. Y , x e. X |-> A ) |
|
| 34 | 33 | fmpo | |- ( A. y e. Y A. x e. X A e. U. L <-> ( y e. Y , x e. X |-> A ) : ( Y X. X ) --> U. L ) |
| 35 | 32 34 | sylibr | |- ( ph -> A. y e. Y A. x e. X A e. U. L ) |
| 36 | 35 | r19.21bi | |- ( ( ph /\ y e. Y ) -> A. x e. X A e. U. L ) |
| 37 | 36 | r19.21bi | |- ( ( ( ph /\ y e. Y ) /\ x e. X ) -> A e. U. L ) |
| 38 | 37 | an32s | |- ( ( ( ph /\ x e. X ) /\ y e. Y ) -> A e. U. L ) |
| 39 | 33 | ovmpt4g | |- ( ( y e. Y /\ x e. X /\ A e. U. L ) -> ( y ( y e. Y , x e. X |-> A ) x ) = A ) |
| 40 | 22 23 38 39 | syl3anc | |- ( ( ( ph /\ x e. X ) /\ y e. Y ) -> ( y ( y e. Y , x e. X |-> A ) x ) = A ) |
| 41 | 40 | mpteq2dva | |- ( ( ph /\ x e. X ) -> ( y e. Y |-> ( y ( y e. Y , x e. X |-> A ) x ) ) = ( y e. Y |-> A ) ) |
| 42 | 41 | mpteq2dva | |- ( ph -> ( x e. X |-> ( y e. Y |-> ( y ( y e. Y , x e. X |-> A ) x ) ) ) = ( x e. X |-> ( y e. Y |-> A ) ) ) |
| 43 | 21 42 | eqtrid | |- ( ph -> ( w e. X |-> ( v e. Y |-> ( v ( y e. Y , x e. X |-> A ) w ) ) ) = ( x e. X |-> ( y e. Y |-> A ) ) ) |
| 44 | eqid | |- ( w e. X |-> ( v e. Y |-> <. v , w >. ) ) = ( w e. X |-> ( v e. Y |-> <. v , w >. ) ) |
|
| 45 | 44 | xkoinjcn | |- ( ( J e. ( TopOn ` X ) /\ K e. ( TopOn ` Y ) ) -> ( w e. X |-> ( v e. Y |-> <. v , w >. ) ) e. ( J Cn ( ( K tX J ) ^ko K ) ) ) |
| 46 | 1 2 45 | syl2anc | |- ( ph -> ( w e. X |-> ( v e. Y |-> <. v , w >. ) ) e. ( J Cn ( ( K tX J ) ^ko K ) ) ) |
| 47 | 32 | feqmptd | |- ( ph -> ( y e. Y , x e. X |-> A ) = ( z e. ( Y X. X ) |-> ( ( y e. Y , x e. X |-> A ) ` z ) ) ) |
| 48 | 47 30 | eqeltrrd | |- ( ph -> ( z e. ( Y X. X ) |-> ( ( y e. Y , x e. X |-> A ) ` z ) ) e. ( ( K tX J ) Cn L ) ) |
| 49 | fveq2 | |- ( z = <. v , w >. -> ( ( y e. Y , x e. X |-> A ) ` z ) = ( ( y e. Y , x e. X |-> A ) ` <. v , w >. ) ) |
|
| 50 | df-ov | |- ( v ( y e. Y , x e. X |-> A ) w ) = ( ( y e. Y , x e. X |-> A ) ` <. v , w >. ) |
|
| 51 | 49 50 | eqtr4di | |- ( z = <. v , w >. -> ( ( y e. Y , x e. X |-> A ) ` z ) = ( v ( y e. Y , x e. X |-> A ) w ) ) |
| 52 | 1 2 25 46 48 51 | cnmptk1 | |- ( ph -> ( w e. X |-> ( v e. Y |-> ( v ( y e. Y , x e. X |-> A ) w ) ) ) e. ( J Cn ( L ^ko K ) ) ) |
| 53 | 43 52 | eqeltrrd | |- ( ph -> ( x e. X |-> ( y e. Y |-> A ) ) e. ( J Cn ( L ^ko K ) ) ) |