Step |
Hyp |
Ref |
Expression |
1 |
|
ringcbasALTV.c |
|- C = ( RingCatALTV ` U ) |
2 |
|
ringcbasALTV.b |
|- B = ( Base ` C ) |
3 |
|
ringcbasALTV.u |
|- ( ph -> U e. V ) |
4 |
|
ringccoALTV.o |
|- .x. = ( comp ` C ) |
5 |
|
ringccoALTV.x |
|- ( ph -> X e. B ) |
6 |
|
ringccoALTV.y |
|- ( ph -> Y e. B ) |
7 |
|
ringccoALTV.z |
|- ( ph -> Z e. B ) |
8 |
|
ringccoALTV.f |
|- ( ph -> F e. ( X RingHom Y ) ) |
9 |
|
ringccoALTV.g |
|- ( ph -> G e. ( Y RingHom Z ) ) |
10 |
1 2 3 4
|
ringccofvalALTV |
|- ( ph -> .x. = ( v e. ( B X. B ) , z e. B |-> ( g e. ( ( 2nd ` v ) RingHom z ) , f e. ( ( 1st ` v ) RingHom ( 2nd ` v ) ) |-> ( g o. f ) ) ) ) |
11 |
|
simprl |
|- ( ( ph /\ ( v = <. X , Y >. /\ z = Z ) ) -> v = <. X , Y >. ) |
12 |
11
|
fveq2d |
|- ( ( ph /\ ( v = <. X , Y >. /\ z = Z ) ) -> ( 2nd ` v ) = ( 2nd ` <. X , Y >. ) ) |
13 |
|
op2ndg |
|- ( ( X e. B /\ Y e. B ) -> ( 2nd ` <. X , Y >. ) = Y ) |
14 |
5 6 13
|
syl2anc |
|- ( ph -> ( 2nd ` <. X , Y >. ) = Y ) |
15 |
14
|
adantr |
|- ( ( ph /\ ( v = <. X , Y >. /\ z = Z ) ) -> ( 2nd ` <. X , Y >. ) = Y ) |
16 |
12 15
|
eqtrd |
|- ( ( ph /\ ( v = <. X , Y >. /\ z = Z ) ) -> ( 2nd ` v ) = Y ) |
17 |
|
simprr |
|- ( ( ph /\ ( v = <. X , Y >. /\ z = Z ) ) -> z = Z ) |
18 |
16 17
|
oveq12d |
|- ( ( ph /\ ( v = <. X , Y >. /\ z = Z ) ) -> ( ( 2nd ` v ) RingHom z ) = ( Y RingHom Z ) ) |
19 |
11
|
fveq2d |
|- ( ( ph /\ ( v = <. X , Y >. /\ z = Z ) ) -> ( 1st ` v ) = ( 1st ` <. X , Y >. ) ) |
20 |
|
op1stg |
|- ( ( X e. B /\ Y e. B ) -> ( 1st ` <. X , Y >. ) = X ) |
21 |
5 6 20
|
syl2anc |
|- ( ph -> ( 1st ` <. X , Y >. ) = X ) |
22 |
21
|
adantr |
|- ( ( ph /\ ( v = <. X , Y >. /\ z = Z ) ) -> ( 1st ` <. X , Y >. ) = X ) |
23 |
19 22
|
eqtrd |
|- ( ( ph /\ ( v = <. X , Y >. /\ z = Z ) ) -> ( 1st ` v ) = X ) |
24 |
23 16
|
oveq12d |
|- ( ( ph /\ ( v = <. X , Y >. /\ z = Z ) ) -> ( ( 1st ` v ) RingHom ( 2nd ` v ) ) = ( X RingHom Y ) ) |
25 |
|
eqidd |
|- ( ( ph /\ ( v = <. X , Y >. /\ z = Z ) ) -> ( g o. f ) = ( g o. f ) ) |
26 |
18 24 25
|
mpoeq123dv |
|- ( ( ph /\ ( v = <. X , Y >. /\ z = Z ) ) -> ( g e. ( ( 2nd ` v ) RingHom z ) , f e. ( ( 1st ` v ) RingHom ( 2nd ` v ) ) |-> ( g o. f ) ) = ( g e. ( Y RingHom Z ) , f e. ( X RingHom Y ) |-> ( g o. f ) ) ) |
27 |
|
opelxpi |
|- ( ( X e. B /\ Y e. B ) -> <. X , Y >. e. ( B X. B ) ) |
28 |
5 6 27
|
syl2anc |
|- ( ph -> <. X , Y >. e. ( B X. B ) ) |
29 |
|
ovex |
|- ( Y RingHom Z ) e. _V |
30 |
|
ovex |
|- ( X RingHom Y ) e. _V |
31 |
29 30
|
mpoex |
|- ( g e. ( Y RingHom Z ) , f e. ( X RingHom Y ) |-> ( g o. f ) ) e. _V |
32 |
31
|
a1i |
|- ( ph -> ( g e. ( Y RingHom Z ) , f e. ( X RingHom Y ) |-> ( g o. f ) ) e. _V ) |
33 |
10 26 28 7 32
|
ovmpod |
|- ( ph -> ( <. X , Y >. .x. Z ) = ( g e. ( Y RingHom Z ) , f e. ( X RingHom Y ) |-> ( g o. f ) ) ) |
34 |
|
simprl |
|- ( ( ph /\ ( g = G /\ f = F ) ) -> g = G ) |
35 |
|
simprr |
|- ( ( ph /\ ( g = G /\ f = F ) ) -> f = F ) |
36 |
34 35
|
coeq12d |
|- ( ( ph /\ ( g = G /\ f = F ) ) -> ( g o. f ) = ( G o. F ) ) |
37 |
|
coexg |
|- ( ( G e. ( Y RingHom Z ) /\ F e. ( X RingHom Y ) ) -> ( G o. F ) e. _V ) |
38 |
9 8 37
|
syl2anc |
|- ( ph -> ( G o. F ) e. _V ) |
39 |
33 36 9 8 38
|
ovmpod |
|- ( ph -> ( G ( <. X , Y >. .x. Z ) F ) = ( G o. F ) ) |