| Step | Hyp | Ref | Expression | 
						
							| 1 |  | rngcbasALTV.c |  |-  C = ( RngCatALTV ` U ) | 
						
							| 2 |  | rngcbasALTV.b |  |-  B = ( Base ` C ) | 
						
							| 3 |  | rngcbasALTV.u |  |-  ( ph -> U e. V ) | 
						
							| 4 |  | rngccofvalALTV.o |  |-  .x. = ( comp ` C ) | 
						
							| 5 |  | rngccoALTV.x |  |-  ( ph -> X e. B ) | 
						
							| 6 |  | rngccoALTV.y |  |-  ( ph -> Y e. B ) | 
						
							| 7 |  | rngccoALTV.z |  |-  ( ph -> Z e. B ) | 
						
							| 8 |  | rngccoALTV.f |  |-  ( ph -> F e. ( X RngHom Y ) ) | 
						
							| 9 |  | rngccoALTV.g |  |-  ( ph -> G e. ( Y RngHom Z ) ) | 
						
							| 10 | 1 2 3 4 | rngccofvalALTV |  |-  ( ph -> .x. = ( v e. ( B X. B ) , z e. B |-> ( g e. ( ( 2nd ` v ) RngHom z ) , f e. ( ( 1st ` v ) RngHom ( 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 ) RngHom z ) = ( Y RngHom 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 ) RngHom ( 2nd ` v ) ) = ( X RngHom 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 ) RngHom z ) , f e. ( ( 1st ` v ) RngHom ( 2nd ` v ) ) |-> ( g o. f ) ) = ( g e. ( Y RngHom Z ) , f e. ( X RngHom 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 RngHom Z ) e. _V | 
						
							| 30 |  | ovex |  |-  ( X RngHom Y ) e. _V | 
						
							| 31 | 29 30 | mpoex |  |-  ( g e. ( Y RngHom Z ) , f e. ( X RngHom Y ) |-> ( g o. f ) ) e. _V | 
						
							| 32 | 31 | a1i |  |-  ( ph -> ( g e. ( Y RngHom Z ) , f e. ( X RngHom Y ) |-> ( g o. f ) ) e. _V ) | 
						
							| 33 | 10 26 28 7 32 | ovmpod |  |-  ( ph -> ( <. X , Y >. .x. Z ) = ( g e. ( Y RngHom Z ) , f e. ( X RngHom 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 RngHom Z ) /\ F e. ( X RngHom 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 ) ) |