This is an inofficial mirror of http://metamath.tirix.org for personal testing of a visualizer extension only.
Description: The inverse of a ring isomorphism is a ring isomorphism. (Contributed by Jeff Madsen, 16-Jun-2011)
| Ref | Expression | ||
|---|---|---|---|
| Assertion | rngoisocnv | |- ( ( R e. RingOps /\ S e. RingOps /\ F e. ( R RingOpsIso S ) ) -> `' F e. ( S RingOpsIso R ) ) |
| Step | Hyp | Ref | Expression |
|---|---|---|---|
| 1 | f1ocnv | |- ( F : ran ( 1st ` R ) -1-1-onto-> ran ( 1st ` S ) -> `' F : ran ( 1st ` S ) -1-1-onto-> ran ( 1st ` R ) ) |
|
| 2 | f1of | |- ( `' F : ran ( 1st ` S ) -1-1-onto-> ran ( 1st ` R ) -> `' F : ran ( 1st ` S ) --> ran ( 1st ` R ) ) |
|
| 3 | 1 2 | syl | |- ( F : ran ( 1st ` R ) -1-1-onto-> ran ( 1st ` S ) -> `' F : ran ( 1st ` S ) --> ran ( 1st ` R ) ) |
| 4 | 3 | ad2antll | |- ( ( ( R e. RingOps /\ S e. RingOps ) /\ ( F e. ( R RingOpsHom S ) /\ F : ran ( 1st ` R ) -1-1-onto-> ran ( 1st ` S ) ) ) -> `' F : ran ( 1st ` S ) --> ran ( 1st ` R ) ) |
| 5 | eqid | |- ( 2nd ` R ) = ( 2nd ` R ) |
|
| 6 | eqid | |- ( GId ` ( 2nd ` R ) ) = ( GId ` ( 2nd ` R ) ) |
|
| 7 | eqid | |- ( 2nd ` S ) = ( 2nd ` S ) |
|
| 8 | eqid | |- ( GId ` ( 2nd ` S ) ) = ( GId ` ( 2nd ` S ) ) |
|
| 9 | 5 6 7 8 | rngohom1 | |- ( ( R e. RingOps /\ S e. RingOps /\ F e. ( R RingOpsHom S ) ) -> ( F ` ( GId ` ( 2nd ` R ) ) ) = ( GId ` ( 2nd ` S ) ) ) |
| 10 | 9 | 3expa | |- ( ( ( R e. RingOps /\ S e. RingOps ) /\ F e. ( R RingOpsHom S ) ) -> ( F ` ( GId ` ( 2nd ` R ) ) ) = ( GId ` ( 2nd ` S ) ) ) |
| 11 | 10 | adantrr | |- ( ( ( R e. RingOps /\ S e. RingOps ) /\ ( F e. ( R RingOpsHom S ) /\ F : ran ( 1st ` R ) -1-1-onto-> ran ( 1st ` S ) ) ) -> ( F ` ( GId ` ( 2nd ` R ) ) ) = ( GId ` ( 2nd ` S ) ) ) |
| 12 | eqid | |- ran ( 1st ` R ) = ran ( 1st ` R ) |
|
| 13 | 12 5 6 | rngo1cl | |- ( R e. RingOps -> ( GId ` ( 2nd ` R ) ) e. ran ( 1st ` R ) ) |
| 14 | f1ocnvfv | |- ( ( F : ran ( 1st ` R ) -1-1-onto-> ran ( 1st ` S ) /\ ( GId ` ( 2nd ` R ) ) e. ran ( 1st ` R ) ) -> ( ( F ` ( GId ` ( 2nd ` R ) ) ) = ( GId ` ( 2nd ` S ) ) -> ( `' F ` ( GId ` ( 2nd ` S ) ) ) = ( GId ` ( 2nd ` R ) ) ) ) |
|
| 15 | 13 14 | sylan2 | |- ( ( F : ran ( 1st ` R ) -1-1-onto-> ran ( 1st ` S ) /\ R e. RingOps ) -> ( ( F ` ( GId ` ( 2nd ` R ) ) ) = ( GId ` ( 2nd ` S ) ) -> ( `' F ` ( GId ` ( 2nd ` S ) ) ) = ( GId ` ( 2nd ` R ) ) ) ) |
| 16 | 15 | ancoms | |- ( ( R e. RingOps /\ F : ran ( 1st ` R ) -1-1-onto-> ran ( 1st ` S ) ) -> ( ( F ` ( GId ` ( 2nd ` R ) ) ) = ( GId ` ( 2nd ` S ) ) -> ( `' F ` ( GId ` ( 2nd ` S ) ) ) = ( GId ` ( 2nd ` R ) ) ) ) |
| 17 | 16 | ad2ant2rl | |- ( ( ( R e. RingOps /\ S e. RingOps ) /\ ( F e. ( R RingOpsHom S ) /\ F : ran ( 1st ` R ) -1-1-onto-> ran ( 1st ` S ) ) ) -> ( ( F ` ( GId ` ( 2nd ` R ) ) ) = ( GId ` ( 2nd ` S ) ) -> ( `' F ` ( GId ` ( 2nd ` S ) ) ) = ( GId ` ( 2nd ` R ) ) ) ) |
| 18 | 11 17 | mpd | |- ( ( ( R e. RingOps /\ S e. RingOps ) /\ ( F e. ( R RingOpsHom S ) /\ F : ran ( 1st ` R ) -1-1-onto-> ran ( 1st ` S ) ) ) -> ( `' F ` ( GId ` ( 2nd ` S ) ) ) = ( GId ` ( 2nd ` R ) ) ) |
| 19 | f1ocnvfv2 | |- ( ( F : ran ( 1st ` R ) -1-1-onto-> ran ( 1st ` S ) /\ x e. ran ( 1st ` S ) ) -> ( F ` ( `' F ` x ) ) = x ) |
|
| 20 | f1ocnvfv2 | |- ( ( F : ran ( 1st ` R ) -1-1-onto-> ran ( 1st ` S ) /\ y e. ran ( 1st ` S ) ) -> ( F ` ( `' F ` y ) ) = y ) |
|
| 21 | 19 20 | anim12dan | |- ( ( F : ran ( 1st ` R ) -1-1-onto-> ran ( 1st ` S ) /\ ( x e. ran ( 1st ` S ) /\ y e. ran ( 1st ` S ) ) ) -> ( ( F ` ( `' F ` x ) ) = x /\ ( F ` ( `' F ` y ) ) = y ) ) |
| 22 | oveq12 | |- ( ( ( F ` ( `' F ` x ) ) = x /\ ( F ` ( `' F ` y ) ) = y ) -> ( ( F ` ( `' F ` x ) ) ( 1st ` S ) ( F ` ( `' F ` y ) ) ) = ( x ( 1st ` S ) y ) ) |
|
| 23 | 21 22 | syl | |- ( ( F : ran ( 1st ` R ) -1-1-onto-> ran ( 1st ` S ) /\ ( x e. ran ( 1st ` S ) /\ y e. ran ( 1st ` S ) ) ) -> ( ( F ` ( `' F ` x ) ) ( 1st ` S ) ( F ` ( `' F ` y ) ) ) = ( x ( 1st ` S ) y ) ) |
| 24 | 23 | adantll | |- ( ( ( F e. ( R RingOpsHom S ) /\ F : ran ( 1st ` R ) -1-1-onto-> ran ( 1st ` S ) ) /\ ( x e. ran ( 1st ` S ) /\ y e. ran ( 1st ` S ) ) ) -> ( ( F ` ( `' F ` x ) ) ( 1st ` S ) ( F ` ( `' F ` y ) ) ) = ( x ( 1st ` S ) y ) ) |
| 25 | 24 | adantll | |- ( ( ( ( R e. RingOps /\ S e. RingOps ) /\ ( F e. ( R RingOpsHom S ) /\ F : ran ( 1st ` R ) -1-1-onto-> ran ( 1st ` S ) ) ) /\ ( x e. ran ( 1st ` S ) /\ y e. ran ( 1st ` S ) ) ) -> ( ( F ` ( `' F ` x ) ) ( 1st ` S ) ( F ` ( `' F ` y ) ) ) = ( x ( 1st ` S ) y ) ) |
| 26 | f1ocnvdm | |- ( ( F : ran ( 1st ` R ) -1-1-onto-> ran ( 1st ` S ) /\ x e. ran ( 1st ` S ) ) -> ( `' F ` x ) e. ran ( 1st ` R ) ) |
|
| 27 | f1ocnvdm | |- ( ( F : ran ( 1st ` R ) -1-1-onto-> ran ( 1st ` S ) /\ y e. ran ( 1st ` S ) ) -> ( `' F ` y ) e. ran ( 1st ` R ) ) |
|
| 28 | 26 27 | anim12dan | |- ( ( F : ran ( 1st ` R ) -1-1-onto-> ran ( 1st ` S ) /\ ( x e. ran ( 1st ` S ) /\ y e. ran ( 1st ` S ) ) ) -> ( ( `' F ` x ) e. ran ( 1st ` R ) /\ ( `' F ` y ) e. ran ( 1st ` R ) ) ) |
| 29 | eqid | |- ( 1st ` R ) = ( 1st ` R ) |
|
| 30 | eqid | |- ( 1st ` S ) = ( 1st ` S ) |
|
| 31 | 29 12 30 | rngohomadd | |- ( ( ( R e. RingOps /\ S e. RingOps /\ F e. ( R RingOpsHom S ) ) /\ ( ( `' F ` x ) e. ran ( 1st ` R ) /\ ( `' F ` y ) e. ran ( 1st ` R ) ) ) -> ( F ` ( ( `' F ` x ) ( 1st ` R ) ( `' F ` y ) ) ) = ( ( F ` ( `' F ` x ) ) ( 1st ` S ) ( F ` ( `' F ` y ) ) ) ) |
| 32 | 28 31 | sylan2 | |- ( ( ( R e. RingOps /\ S e. RingOps /\ F e. ( R RingOpsHom S ) ) /\ ( F : ran ( 1st ` R ) -1-1-onto-> ran ( 1st ` S ) /\ ( x e. ran ( 1st ` S ) /\ y e. ran ( 1st ` S ) ) ) ) -> ( F ` ( ( `' F ` x ) ( 1st ` R ) ( `' F ` y ) ) ) = ( ( F ` ( `' F ` x ) ) ( 1st ` S ) ( F ` ( `' F ` y ) ) ) ) |
| 33 | 32 | exp32 | |- ( ( R e. RingOps /\ S e. RingOps /\ F e. ( R RingOpsHom S ) ) -> ( F : ran ( 1st ` R ) -1-1-onto-> ran ( 1st ` S ) -> ( ( x e. ran ( 1st ` S ) /\ y e. ran ( 1st ` S ) ) -> ( F ` ( ( `' F ` x ) ( 1st ` R ) ( `' F ` y ) ) ) = ( ( F ` ( `' F ` x ) ) ( 1st ` S ) ( F ` ( `' F ` y ) ) ) ) ) ) |
| 34 | 33 | 3expa | |- ( ( ( R e. RingOps /\ S e. RingOps ) /\ F e. ( R RingOpsHom S ) ) -> ( F : ran ( 1st ` R ) -1-1-onto-> ran ( 1st ` S ) -> ( ( x e. ran ( 1st ` S ) /\ y e. ran ( 1st ` S ) ) -> ( F ` ( ( `' F ` x ) ( 1st ` R ) ( `' F ` y ) ) ) = ( ( F ` ( `' F ` x ) ) ( 1st ` S ) ( F ` ( `' F ` y ) ) ) ) ) ) |
| 35 | 34 | impr | |- ( ( ( R e. RingOps /\ S e. RingOps ) /\ ( F e. ( R RingOpsHom S ) /\ F : ran ( 1st ` R ) -1-1-onto-> ran ( 1st ` S ) ) ) -> ( ( x e. ran ( 1st ` S ) /\ y e. ran ( 1st ` S ) ) -> ( F ` ( ( `' F ` x ) ( 1st ` R ) ( `' F ` y ) ) ) = ( ( F ` ( `' F ` x ) ) ( 1st ` S ) ( F ` ( `' F ` y ) ) ) ) ) |
| 36 | 35 | imp | |- ( ( ( ( R e. RingOps /\ S e. RingOps ) /\ ( F e. ( R RingOpsHom S ) /\ F : ran ( 1st ` R ) -1-1-onto-> ran ( 1st ` S ) ) ) /\ ( x e. ran ( 1st ` S ) /\ y e. ran ( 1st ` S ) ) ) -> ( F ` ( ( `' F ` x ) ( 1st ` R ) ( `' F ` y ) ) ) = ( ( F ` ( `' F ` x ) ) ( 1st ` S ) ( F ` ( `' F ` y ) ) ) ) |
| 37 | eqid | |- ran ( 1st ` S ) = ran ( 1st ` S ) |
|
| 38 | 30 37 | rngogcl | |- ( ( S e. RingOps /\ x e. ran ( 1st ` S ) /\ y e. ran ( 1st ` S ) ) -> ( x ( 1st ` S ) y ) e. ran ( 1st ` S ) ) |
| 39 | 38 | 3expb | |- ( ( S e. RingOps /\ ( x e. ran ( 1st ` S ) /\ y e. ran ( 1st ` S ) ) ) -> ( x ( 1st ` S ) y ) e. ran ( 1st ` S ) ) |
| 40 | f1ocnvfv2 | |- ( ( F : ran ( 1st ` R ) -1-1-onto-> ran ( 1st ` S ) /\ ( x ( 1st ` S ) y ) e. ran ( 1st ` S ) ) -> ( F ` ( `' F ` ( x ( 1st ` S ) y ) ) ) = ( x ( 1st ` S ) y ) ) |
|
| 41 | 40 | ancoms | |- ( ( ( x ( 1st ` S ) y ) e. ran ( 1st ` S ) /\ F : ran ( 1st ` R ) -1-1-onto-> ran ( 1st ` S ) ) -> ( F ` ( `' F ` ( x ( 1st ` S ) y ) ) ) = ( x ( 1st ` S ) y ) ) |
| 42 | 39 41 | sylan | |- ( ( ( S e. RingOps /\ ( x e. ran ( 1st ` S ) /\ y e. ran ( 1st ` S ) ) ) /\ F : ran ( 1st ` R ) -1-1-onto-> ran ( 1st ` S ) ) -> ( F ` ( `' F ` ( x ( 1st ` S ) y ) ) ) = ( x ( 1st ` S ) y ) ) |
| 43 | 42 | an32s | |- ( ( ( S e. RingOps /\ F : ran ( 1st ` R ) -1-1-onto-> ran ( 1st ` S ) ) /\ ( x e. ran ( 1st ` S ) /\ y e. ran ( 1st ` S ) ) ) -> ( F ` ( `' F ` ( x ( 1st ` S ) y ) ) ) = ( x ( 1st ` S ) y ) ) |
| 44 | 43 | adantlll | |- ( ( ( ( R e. RingOps /\ S e. RingOps ) /\ F : ran ( 1st ` R ) -1-1-onto-> ran ( 1st ` S ) ) /\ ( x e. ran ( 1st ` S ) /\ y e. ran ( 1st ` S ) ) ) -> ( F ` ( `' F ` ( x ( 1st ` S ) y ) ) ) = ( x ( 1st ` S ) y ) ) |
| 45 | 44 | adantlrl | |- ( ( ( ( R e. RingOps /\ S e. RingOps ) /\ ( F e. ( R RingOpsHom S ) /\ F : ran ( 1st ` R ) -1-1-onto-> ran ( 1st ` S ) ) ) /\ ( x e. ran ( 1st ` S ) /\ y e. ran ( 1st ` S ) ) ) -> ( F ` ( `' F ` ( x ( 1st ` S ) y ) ) ) = ( x ( 1st ` S ) y ) ) |
| 46 | 25 36 45 | 3eqtr4rd | |- ( ( ( ( R e. RingOps /\ S e. RingOps ) /\ ( F e. ( R RingOpsHom S ) /\ F : ran ( 1st ` R ) -1-1-onto-> ran ( 1st ` S ) ) ) /\ ( x e. ran ( 1st ` S ) /\ y e. ran ( 1st ` S ) ) ) -> ( F ` ( `' F ` ( x ( 1st ` S ) y ) ) ) = ( F ` ( ( `' F ` x ) ( 1st ` R ) ( `' F ` y ) ) ) ) |
| 47 | f1of1 | |- ( F : ran ( 1st ` R ) -1-1-onto-> ran ( 1st ` S ) -> F : ran ( 1st ` R ) -1-1-> ran ( 1st ` S ) ) |
|
| 48 | 47 | ad2antlr | |- ( ( ( ( R e. RingOps /\ S e. RingOps ) /\ F : ran ( 1st ` R ) -1-1-onto-> ran ( 1st ` S ) ) /\ ( x e. ran ( 1st ` S ) /\ y e. ran ( 1st ` S ) ) ) -> F : ran ( 1st ` R ) -1-1-> ran ( 1st ` S ) ) |
| 49 | f1ocnvdm | |- ( ( F : ran ( 1st ` R ) -1-1-onto-> ran ( 1st ` S ) /\ ( x ( 1st ` S ) y ) e. ran ( 1st ` S ) ) -> ( `' F ` ( x ( 1st ` S ) y ) ) e. ran ( 1st ` R ) ) |
|
| 50 | 49 | ancoms | |- ( ( ( x ( 1st ` S ) y ) e. ran ( 1st ` S ) /\ F : ran ( 1st ` R ) -1-1-onto-> ran ( 1st ` S ) ) -> ( `' F ` ( x ( 1st ` S ) y ) ) e. ran ( 1st ` R ) ) |
| 51 | 39 50 | sylan | |- ( ( ( S e. RingOps /\ ( x e. ran ( 1st ` S ) /\ y e. ran ( 1st ` S ) ) ) /\ F : ran ( 1st ` R ) -1-1-onto-> ran ( 1st ` S ) ) -> ( `' F ` ( x ( 1st ` S ) y ) ) e. ran ( 1st ` R ) ) |
| 52 | 51 | an32s | |- ( ( ( S e. RingOps /\ F : ran ( 1st ` R ) -1-1-onto-> ran ( 1st ` S ) ) /\ ( x e. ran ( 1st ` S ) /\ y e. ran ( 1st ` S ) ) ) -> ( `' F ` ( x ( 1st ` S ) y ) ) e. ran ( 1st ` R ) ) |
| 53 | 52 | adantlll | |- ( ( ( ( R e. RingOps /\ S e. RingOps ) /\ F : ran ( 1st ` R ) -1-1-onto-> ran ( 1st ` S ) ) /\ ( x e. ran ( 1st ` S ) /\ y e. ran ( 1st ` S ) ) ) -> ( `' F ` ( x ( 1st ` S ) y ) ) e. ran ( 1st ` R ) ) |
| 54 | 29 12 | rngogcl | |- ( ( R e. RingOps /\ ( `' F ` x ) e. ran ( 1st ` R ) /\ ( `' F ` y ) e. ran ( 1st ` R ) ) -> ( ( `' F ` x ) ( 1st ` R ) ( `' F ` y ) ) e. ran ( 1st ` R ) ) |
| 55 | 54 | 3expb | |- ( ( R e. RingOps /\ ( ( `' F ` x ) e. ran ( 1st ` R ) /\ ( `' F ` y ) e. ran ( 1st ` R ) ) ) -> ( ( `' F ` x ) ( 1st ` R ) ( `' F ` y ) ) e. ran ( 1st ` R ) ) |
| 56 | 28 55 | sylan2 | |- ( ( R e. RingOps /\ ( F : ran ( 1st ` R ) -1-1-onto-> ran ( 1st ` S ) /\ ( x e. ran ( 1st ` S ) /\ y e. ran ( 1st ` S ) ) ) ) -> ( ( `' F ` x ) ( 1st ` R ) ( `' F ` y ) ) e. ran ( 1st ` R ) ) |
| 57 | 56 | anassrs | |- ( ( ( R e. RingOps /\ F : ran ( 1st ` R ) -1-1-onto-> ran ( 1st ` S ) ) /\ ( x e. ran ( 1st ` S ) /\ y e. ran ( 1st ` S ) ) ) -> ( ( `' F ` x ) ( 1st ` R ) ( `' F ` y ) ) e. ran ( 1st ` R ) ) |
| 58 | 57 | adantllr | |- ( ( ( ( R e. RingOps /\ S e. RingOps ) /\ F : ran ( 1st ` R ) -1-1-onto-> ran ( 1st ` S ) ) /\ ( x e. ran ( 1st ` S ) /\ y e. ran ( 1st ` S ) ) ) -> ( ( `' F ` x ) ( 1st ` R ) ( `' F ` y ) ) e. ran ( 1st ` R ) ) |
| 59 | f1fveq | |- ( ( F : ran ( 1st ` R ) -1-1-> ran ( 1st ` S ) /\ ( ( `' F ` ( x ( 1st ` S ) y ) ) e. ran ( 1st ` R ) /\ ( ( `' F ` x ) ( 1st ` R ) ( `' F ` y ) ) e. ran ( 1st ` R ) ) ) -> ( ( F ` ( `' F ` ( x ( 1st ` S ) y ) ) ) = ( F ` ( ( `' F ` x ) ( 1st ` R ) ( `' F ` y ) ) ) <-> ( `' F ` ( x ( 1st ` S ) y ) ) = ( ( `' F ` x ) ( 1st ` R ) ( `' F ` y ) ) ) ) |
|
| 60 | 48 53 58 59 | syl12anc | |- ( ( ( ( R e. RingOps /\ S e. RingOps ) /\ F : ran ( 1st ` R ) -1-1-onto-> ran ( 1st ` S ) ) /\ ( x e. ran ( 1st ` S ) /\ y e. ran ( 1st ` S ) ) ) -> ( ( F ` ( `' F ` ( x ( 1st ` S ) y ) ) ) = ( F ` ( ( `' F ` x ) ( 1st ` R ) ( `' F ` y ) ) ) <-> ( `' F ` ( x ( 1st ` S ) y ) ) = ( ( `' F ` x ) ( 1st ` R ) ( `' F ` y ) ) ) ) |
| 61 | 60 | adantlrl | |- ( ( ( ( R e. RingOps /\ S e. RingOps ) /\ ( F e. ( R RingOpsHom S ) /\ F : ran ( 1st ` R ) -1-1-onto-> ran ( 1st ` S ) ) ) /\ ( x e. ran ( 1st ` S ) /\ y e. ran ( 1st ` S ) ) ) -> ( ( F ` ( `' F ` ( x ( 1st ` S ) y ) ) ) = ( F ` ( ( `' F ` x ) ( 1st ` R ) ( `' F ` y ) ) ) <-> ( `' F ` ( x ( 1st ` S ) y ) ) = ( ( `' F ` x ) ( 1st ` R ) ( `' F ` y ) ) ) ) |
| 62 | 46 61 | mpbid | |- ( ( ( ( R e. RingOps /\ S e. RingOps ) /\ ( F e. ( R RingOpsHom S ) /\ F : ran ( 1st ` R ) -1-1-onto-> ran ( 1st ` S ) ) ) /\ ( x e. ran ( 1st ` S ) /\ y e. ran ( 1st ` S ) ) ) -> ( `' F ` ( x ( 1st ` S ) y ) ) = ( ( `' F ` x ) ( 1st ` R ) ( `' F ` y ) ) ) |
| 63 | oveq12 | |- ( ( ( F ` ( `' F ` x ) ) = x /\ ( F ` ( `' F ` y ) ) = y ) -> ( ( F ` ( `' F ` x ) ) ( 2nd ` S ) ( F ` ( `' F ` y ) ) ) = ( x ( 2nd ` S ) y ) ) |
|
| 64 | 21 63 | syl | |- ( ( F : ran ( 1st ` R ) -1-1-onto-> ran ( 1st ` S ) /\ ( x e. ran ( 1st ` S ) /\ y e. ran ( 1st ` S ) ) ) -> ( ( F ` ( `' F ` x ) ) ( 2nd ` S ) ( F ` ( `' F ` y ) ) ) = ( x ( 2nd ` S ) y ) ) |
| 65 | 64 | adantll | |- ( ( ( F e. ( R RingOpsHom S ) /\ F : ran ( 1st ` R ) -1-1-onto-> ran ( 1st ` S ) ) /\ ( x e. ran ( 1st ` S ) /\ y e. ran ( 1st ` S ) ) ) -> ( ( F ` ( `' F ` x ) ) ( 2nd ` S ) ( F ` ( `' F ` y ) ) ) = ( x ( 2nd ` S ) y ) ) |
| 66 | 65 | adantll | |- ( ( ( ( R e. RingOps /\ S e. RingOps ) /\ ( F e. ( R RingOpsHom S ) /\ F : ran ( 1st ` R ) -1-1-onto-> ran ( 1st ` S ) ) ) /\ ( x e. ran ( 1st ` S ) /\ y e. ran ( 1st ` S ) ) ) -> ( ( F ` ( `' F ` x ) ) ( 2nd ` S ) ( F ` ( `' F ` y ) ) ) = ( x ( 2nd ` S ) y ) ) |
| 67 | 29 12 5 7 | rngohommul | |- ( ( ( R e. RingOps /\ S e. RingOps /\ F e. ( R RingOpsHom S ) ) /\ ( ( `' F ` x ) e. ran ( 1st ` R ) /\ ( `' F ` y ) e. ran ( 1st ` R ) ) ) -> ( F ` ( ( `' F ` x ) ( 2nd ` R ) ( `' F ` y ) ) ) = ( ( F ` ( `' F ` x ) ) ( 2nd ` S ) ( F ` ( `' F ` y ) ) ) ) |
| 68 | 28 67 | sylan2 | |- ( ( ( R e. RingOps /\ S e. RingOps /\ F e. ( R RingOpsHom S ) ) /\ ( F : ran ( 1st ` R ) -1-1-onto-> ran ( 1st ` S ) /\ ( x e. ran ( 1st ` S ) /\ y e. ran ( 1st ` S ) ) ) ) -> ( F ` ( ( `' F ` x ) ( 2nd ` R ) ( `' F ` y ) ) ) = ( ( F ` ( `' F ` x ) ) ( 2nd ` S ) ( F ` ( `' F ` y ) ) ) ) |
| 69 | 68 | exp32 | |- ( ( R e. RingOps /\ S e. RingOps /\ F e. ( R RingOpsHom S ) ) -> ( F : ran ( 1st ` R ) -1-1-onto-> ran ( 1st ` S ) -> ( ( x e. ran ( 1st ` S ) /\ y e. ran ( 1st ` S ) ) -> ( F ` ( ( `' F ` x ) ( 2nd ` R ) ( `' F ` y ) ) ) = ( ( F ` ( `' F ` x ) ) ( 2nd ` S ) ( F ` ( `' F ` y ) ) ) ) ) ) |
| 70 | 69 | 3expa | |- ( ( ( R e. RingOps /\ S e. RingOps ) /\ F e. ( R RingOpsHom S ) ) -> ( F : ran ( 1st ` R ) -1-1-onto-> ran ( 1st ` S ) -> ( ( x e. ran ( 1st ` S ) /\ y e. ran ( 1st ` S ) ) -> ( F ` ( ( `' F ` x ) ( 2nd ` R ) ( `' F ` y ) ) ) = ( ( F ` ( `' F ` x ) ) ( 2nd ` S ) ( F ` ( `' F ` y ) ) ) ) ) ) |
| 71 | 70 | impr | |- ( ( ( R e. RingOps /\ S e. RingOps ) /\ ( F e. ( R RingOpsHom S ) /\ F : ran ( 1st ` R ) -1-1-onto-> ran ( 1st ` S ) ) ) -> ( ( x e. ran ( 1st ` S ) /\ y e. ran ( 1st ` S ) ) -> ( F ` ( ( `' F ` x ) ( 2nd ` R ) ( `' F ` y ) ) ) = ( ( F ` ( `' F ` x ) ) ( 2nd ` S ) ( F ` ( `' F ` y ) ) ) ) ) |
| 72 | 71 | imp | |- ( ( ( ( R e. RingOps /\ S e. RingOps ) /\ ( F e. ( R RingOpsHom S ) /\ F : ran ( 1st ` R ) -1-1-onto-> ran ( 1st ` S ) ) ) /\ ( x e. ran ( 1st ` S ) /\ y e. ran ( 1st ` S ) ) ) -> ( F ` ( ( `' F ` x ) ( 2nd ` R ) ( `' F ` y ) ) ) = ( ( F ` ( `' F ` x ) ) ( 2nd ` S ) ( F ` ( `' F ` y ) ) ) ) |
| 73 | 30 7 37 | rngocl | |- ( ( S e. RingOps /\ x e. ran ( 1st ` S ) /\ y e. ran ( 1st ` S ) ) -> ( x ( 2nd ` S ) y ) e. ran ( 1st ` S ) ) |
| 74 | 73 | 3expb | |- ( ( S e. RingOps /\ ( x e. ran ( 1st ` S ) /\ y e. ran ( 1st ` S ) ) ) -> ( x ( 2nd ` S ) y ) e. ran ( 1st ` S ) ) |
| 75 | f1ocnvfv2 | |- ( ( F : ran ( 1st ` R ) -1-1-onto-> ran ( 1st ` S ) /\ ( x ( 2nd ` S ) y ) e. ran ( 1st ` S ) ) -> ( F ` ( `' F ` ( x ( 2nd ` S ) y ) ) ) = ( x ( 2nd ` S ) y ) ) |
|
| 76 | 75 | ancoms | |- ( ( ( x ( 2nd ` S ) y ) e. ran ( 1st ` S ) /\ F : ran ( 1st ` R ) -1-1-onto-> ran ( 1st ` S ) ) -> ( F ` ( `' F ` ( x ( 2nd ` S ) y ) ) ) = ( x ( 2nd ` S ) y ) ) |
| 77 | 74 76 | sylan | |- ( ( ( S e. RingOps /\ ( x e. ran ( 1st ` S ) /\ y e. ran ( 1st ` S ) ) ) /\ F : ran ( 1st ` R ) -1-1-onto-> ran ( 1st ` S ) ) -> ( F ` ( `' F ` ( x ( 2nd ` S ) y ) ) ) = ( x ( 2nd ` S ) y ) ) |
| 78 | 77 | an32s | |- ( ( ( S e. RingOps /\ F : ran ( 1st ` R ) -1-1-onto-> ran ( 1st ` S ) ) /\ ( x e. ran ( 1st ` S ) /\ y e. ran ( 1st ` S ) ) ) -> ( F ` ( `' F ` ( x ( 2nd ` S ) y ) ) ) = ( x ( 2nd ` S ) y ) ) |
| 79 | 78 | adantlll | |- ( ( ( ( R e. RingOps /\ S e. RingOps ) /\ F : ran ( 1st ` R ) -1-1-onto-> ran ( 1st ` S ) ) /\ ( x e. ran ( 1st ` S ) /\ y e. ran ( 1st ` S ) ) ) -> ( F ` ( `' F ` ( x ( 2nd ` S ) y ) ) ) = ( x ( 2nd ` S ) y ) ) |
| 80 | 79 | adantlrl | |- ( ( ( ( R e. RingOps /\ S e. RingOps ) /\ ( F e. ( R RingOpsHom S ) /\ F : ran ( 1st ` R ) -1-1-onto-> ran ( 1st ` S ) ) ) /\ ( x e. ran ( 1st ` S ) /\ y e. ran ( 1st ` S ) ) ) -> ( F ` ( `' F ` ( x ( 2nd ` S ) y ) ) ) = ( x ( 2nd ` S ) y ) ) |
| 81 | 66 72 80 | 3eqtr4rd | |- ( ( ( ( R e. RingOps /\ S e. RingOps ) /\ ( F e. ( R RingOpsHom S ) /\ F : ran ( 1st ` R ) -1-1-onto-> ran ( 1st ` S ) ) ) /\ ( x e. ran ( 1st ` S ) /\ y e. ran ( 1st ` S ) ) ) -> ( F ` ( `' F ` ( x ( 2nd ` S ) y ) ) ) = ( F ` ( ( `' F ` x ) ( 2nd ` R ) ( `' F ` y ) ) ) ) |
| 82 | f1ocnvdm | |- ( ( F : ran ( 1st ` R ) -1-1-onto-> ran ( 1st ` S ) /\ ( x ( 2nd ` S ) y ) e. ran ( 1st ` S ) ) -> ( `' F ` ( x ( 2nd ` S ) y ) ) e. ran ( 1st ` R ) ) |
|
| 83 | 82 | ancoms | |- ( ( ( x ( 2nd ` S ) y ) e. ran ( 1st ` S ) /\ F : ran ( 1st ` R ) -1-1-onto-> ran ( 1st ` S ) ) -> ( `' F ` ( x ( 2nd ` S ) y ) ) e. ran ( 1st ` R ) ) |
| 84 | 74 83 | sylan | |- ( ( ( S e. RingOps /\ ( x e. ran ( 1st ` S ) /\ y e. ran ( 1st ` S ) ) ) /\ F : ran ( 1st ` R ) -1-1-onto-> ran ( 1st ` S ) ) -> ( `' F ` ( x ( 2nd ` S ) y ) ) e. ran ( 1st ` R ) ) |
| 85 | 84 | an32s | |- ( ( ( S e. RingOps /\ F : ran ( 1st ` R ) -1-1-onto-> ran ( 1st ` S ) ) /\ ( x e. ran ( 1st ` S ) /\ y e. ran ( 1st ` S ) ) ) -> ( `' F ` ( x ( 2nd ` S ) y ) ) e. ran ( 1st ` R ) ) |
| 86 | 85 | adantlll | |- ( ( ( ( R e. RingOps /\ S e. RingOps ) /\ F : ran ( 1st ` R ) -1-1-onto-> ran ( 1st ` S ) ) /\ ( x e. ran ( 1st ` S ) /\ y e. ran ( 1st ` S ) ) ) -> ( `' F ` ( x ( 2nd ` S ) y ) ) e. ran ( 1st ` R ) ) |
| 87 | 29 5 12 | rngocl | |- ( ( R e. RingOps /\ ( `' F ` x ) e. ran ( 1st ` R ) /\ ( `' F ` y ) e. ran ( 1st ` R ) ) -> ( ( `' F ` x ) ( 2nd ` R ) ( `' F ` y ) ) e. ran ( 1st ` R ) ) |
| 88 | 87 | 3expb | |- ( ( R e. RingOps /\ ( ( `' F ` x ) e. ran ( 1st ` R ) /\ ( `' F ` y ) e. ran ( 1st ` R ) ) ) -> ( ( `' F ` x ) ( 2nd ` R ) ( `' F ` y ) ) e. ran ( 1st ` R ) ) |
| 89 | 28 88 | sylan2 | |- ( ( R e. RingOps /\ ( F : ran ( 1st ` R ) -1-1-onto-> ran ( 1st ` S ) /\ ( x e. ran ( 1st ` S ) /\ y e. ran ( 1st ` S ) ) ) ) -> ( ( `' F ` x ) ( 2nd ` R ) ( `' F ` y ) ) e. ran ( 1st ` R ) ) |
| 90 | 89 | anassrs | |- ( ( ( R e. RingOps /\ F : ran ( 1st ` R ) -1-1-onto-> ran ( 1st ` S ) ) /\ ( x e. ran ( 1st ` S ) /\ y e. ran ( 1st ` S ) ) ) -> ( ( `' F ` x ) ( 2nd ` R ) ( `' F ` y ) ) e. ran ( 1st ` R ) ) |
| 91 | 90 | adantllr | |- ( ( ( ( R e. RingOps /\ S e. RingOps ) /\ F : ran ( 1st ` R ) -1-1-onto-> ran ( 1st ` S ) ) /\ ( x e. ran ( 1st ` S ) /\ y e. ran ( 1st ` S ) ) ) -> ( ( `' F ` x ) ( 2nd ` R ) ( `' F ` y ) ) e. ran ( 1st ` R ) ) |
| 92 | f1fveq | |- ( ( F : ran ( 1st ` R ) -1-1-> ran ( 1st ` S ) /\ ( ( `' F ` ( x ( 2nd ` S ) y ) ) e. ran ( 1st ` R ) /\ ( ( `' F ` x ) ( 2nd ` R ) ( `' F ` y ) ) e. ran ( 1st ` R ) ) ) -> ( ( F ` ( `' F ` ( x ( 2nd ` S ) y ) ) ) = ( F ` ( ( `' F ` x ) ( 2nd ` R ) ( `' F ` y ) ) ) <-> ( `' F ` ( x ( 2nd ` S ) y ) ) = ( ( `' F ` x ) ( 2nd ` R ) ( `' F ` y ) ) ) ) |
|
| 93 | 48 86 91 92 | syl12anc | |- ( ( ( ( R e. RingOps /\ S e. RingOps ) /\ F : ran ( 1st ` R ) -1-1-onto-> ran ( 1st ` S ) ) /\ ( x e. ran ( 1st ` S ) /\ y e. ran ( 1st ` S ) ) ) -> ( ( F ` ( `' F ` ( x ( 2nd ` S ) y ) ) ) = ( F ` ( ( `' F ` x ) ( 2nd ` R ) ( `' F ` y ) ) ) <-> ( `' F ` ( x ( 2nd ` S ) y ) ) = ( ( `' F ` x ) ( 2nd ` R ) ( `' F ` y ) ) ) ) |
| 94 | 93 | adantlrl | |- ( ( ( ( R e. RingOps /\ S e. RingOps ) /\ ( F e. ( R RingOpsHom S ) /\ F : ran ( 1st ` R ) -1-1-onto-> ran ( 1st ` S ) ) ) /\ ( x e. ran ( 1st ` S ) /\ y e. ran ( 1st ` S ) ) ) -> ( ( F ` ( `' F ` ( x ( 2nd ` S ) y ) ) ) = ( F ` ( ( `' F ` x ) ( 2nd ` R ) ( `' F ` y ) ) ) <-> ( `' F ` ( x ( 2nd ` S ) y ) ) = ( ( `' F ` x ) ( 2nd ` R ) ( `' F ` y ) ) ) ) |
| 95 | 81 94 | mpbid | |- ( ( ( ( R e. RingOps /\ S e. RingOps ) /\ ( F e. ( R RingOpsHom S ) /\ F : ran ( 1st ` R ) -1-1-onto-> ran ( 1st ` S ) ) ) /\ ( x e. ran ( 1st ` S ) /\ y e. ran ( 1st ` S ) ) ) -> ( `' F ` ( x ( 2nd ` S ) y ) ) = ( ( `' F ` x ) ( 2nd ` R ) ( `' F ` y ) ) ) |
| 96 | 62 95 | jca | |- ( ( ( ( R e. RingOps /\ S e. RingOps ) /\ ( F e. ( R RingOpsHom S ) /\ F : ran ( 1st ` R ) -1-1-onto-> ran ( 1st ` S ) ) ) /\ ( x e. ran ( 1st ` S ) /\ y e. ran ( 1st ` S ) ) ) -> ( ( `' F ` ( x ( 1st ` S ) y ) ) = ( ( `' F ` x ) ( 1st ` R ) ( `' F ` y ) ) /\ ( `' F ` ( x ( 2nd ` S ) y ) ) = ( ( `' F ` x ) ( 2nd ` R ) ( `' F ` y ) ) ) ) |
| 97 | 96 | ralrimivva | |- ( ( ( R e. RingOps /\ S e. RingOps ) /\ ( F e. ( R RingOpsHom S ) /\ F : ran ( 1st ` R ) -1-1-onto-> ran ( 1st ` S ) ) ) -> A. x e. ran ( 1st ` S ) A. y e. ran ( 1st ` S ) ( ( `' F ` ( x ( 1st ` S ) y ) ) = ( ( `' F ` x ) ( 1st ` R ) ( `' F ` y ) ) /\ ( `' F ` ( x ( 2nd ` S ) y ) ) = ( ( `' F ` x ) ( 2nd ` R ) ( `' F ` y ) ) ) ) |
| 98 | 30 7 37 8 29 5 12 6 | isrngohom | |- ( ( S e. RingOps /\ R e. RingOps ) -> ( `' F e. ( S RingOpsHom R ) <-> ( `' F : ran ( 1st ` S ) --> ran ( 1st ` R ) /\ ( `' F ` ( GId ` ( 2nd ` S ) ) ) = ( GId ` ( 2nd ` R ) ) /\ A. x e. ran ( 1st ` S ) A. y e. ran ( 1st ` S ) ( ( `' F ` ( x ( 1st ` S ) y ) ) = ( ( `' F ` x ) ( 1st ` R ) ( `' F ` y ) ) /\ ( `' F ` ( x ( 2nd ` S ) y ) ) = ( ( `' F ` x ) ( 2nd ` R ) ( `' F ` y ) ) ) ) ) ) |
| 99 | 98 | ancoms | |- ( ( R e. RingOps /\ S e. RingOps ) -> ( `' F e. ( S RingOpsHom R ) <-> ( `' F : ran ( 1st ` S ) --> ran ( 1st ` R ) /\ ( `' F ` ( GId ` ( 2nd ` S ) ) ) = ( GId ` ( 2nd ` R ) ) /\ A. x e. ran ( 1st ` S ) A. y e. ran ( 1st ` S ) ( ( `' F ` ( x ( 1st ` S ) y ) ) = ( ( `' F ` x ) ( 1st ` R ) ( `' F ` y ) ) /\ ( `' F ` ( x ( 2nd ` S ) y ) ) = ( ( `' F ` x ) ( 2nd ` R ) ( `' F ` y ) ) ) ) ) ) |
| 100 | 99 | adantr | |- ( ( ( R e. RingOps /\ S e. RingOps ) /\ ( F e. ( R RingOpsHom S ) /\ F : ran ( 1st ` R ) -1-1-onto-> ran ( 1st ` S ) ) ) -> ( `' F e. ( S RingOpsHom R ) <-> ( `' F : ran ( 1st ` S ) --> ran ( 1st ` R ) /\ ( `' F ` ( GId ` ( 2nd ` S ) ) ) = ( GId ` ( 2nd ` R ) ) /\ A. x e. ran ( 1st ` S ) A. y e. ran ( 1st ` S ) ( ( `' F ` ( x ( 1st ` S ) y ) ) = ( ( `' F ` x ) ( 1st ` R ) ( `' F ` y ) ) /\ ( `' F ` ( x ( 2nd ` S ) y ) ) = ( ( `' F ` x ) ( 2nd ` R ) ( `' F ` y ) ) ) ) ) ) |
| 101 | 4 18 97 100 | mpbir3and | |- ( ( ( R e. RingOps /\ S e. RingOps ) /\ ( F e. ( R RingOpsHom S ) /\ F : ran ( 1st ` R ) -1-1-onto-> ran ( 1st ` S ) ) ) -> `' F e. ( S RingOpsHom R ) ) |
| 102 | 1 | ad2antll | |- ( ( ( R e. RingOps /\ S e. RingOps ) /\ ( F e. ( R RingOpsHom S ) /\ F : ran ( 1st ` R ) -1-1-onto-> ran ( 1st ` S ) ) ) -> `' F : ran ( 1st ` S ) -1-1-onto-> ran ( 1st ` R ) ) |
| 103 | 101 102 | jca | |- ( ( ( R e. RingOps /\ S e. RingOps ) /\ ( F e. ( R RingOpsHom S ) /\ F : ran ( 1st ` R ) -1-1-onto-> ran ( 1st ` S ) ) ) -> ( `' F e. ( S RingOpsHom R ) /\ `' F : ran ( 1st ` S ) -1-1-onto-> ran ( 1st ` R ) ) ) |
| 104 | 103 | ex | |- ( ( R e. RingOps /\ S e. RingOps ) -> ( ( F e. ( R RingOpsHom S ) /\ F : ran ( 1st ` R ) -1-1-onto-> ran ( 1st ` S ) ) -> ( `' F e. ( S RingOpsHom R ) /\ `' F : ran ( 1st ` S ) -1-1-onto-> ran ( 1st ` R ) ) ) ) |
| 105 | 29 12 30 37 | isrngoiso | |- ( ( R e. RingOps /\ S e. RingOps ) -> ( F e. ( R RingOpsIso S ) <-> ( F e. ( R RingOpsHom S ) /\ F : ran ( 1st ` R ) -1-1-onto-> ran ( 1st ` S ) ) ) ) |
| 106 | 30 37 29 12 | isrngoiso | |- ( ( S e. RingOps /\ R e. RingOps ) -> ( `' F e. ( S RingOpsIso R ) <-> ( `' F e. ( S RingOpsHom R ) /\ `' F : ran ( 1st ` S ) -1-1-onto-> ran ( 1st ` R ) ) ) ) |
| 107 | 106 | ancoms | |- ( ( R e. RingOps /\ S e. RingOps ) -> ( `' F e. ( S RingOpsIso R ) <-> ( `' F e. ( S RingOpsHom R ) /\ `' F : ran ( 1st ` S ) -1-1-onto-> ran ( 1st ` R ) ) ) ) |
| 108 | 104 105 107 | 3imtr4d | |- ( ( R e. RingOps /\ S e. RingOps ) -> ( F e. ( R RingOpsIso S ) -> `' F e. ( S RingOpsIso R ) ) ) |
| 109 | 108 | 3impia | |- ( ( R e. RingOps /\ S e. RingOps /\ F e. ( R RingOpsIso S ) ) -> `' F e. ( S RingOpsIso R ) ) |