Step |
Hyp |
Ref |
Expression |
1 |
|
ismon.b |
|- B = ( Base ` C ) |
2 |
|
ismon.h |
|- H = ( Hom ` C ) |
3 |
|
ismon.o |
|- .x. = ( comp ` C ) |
4 |
|
ismon.s |
|- M = ( Mono ` C ) |
5 |
|
ismon.c |
|- ( ph -> C e. Cat ) |
6 |
|
ismon.x |
|- ( ph -> X e. B ) |
7 |
|
ismon.y |
|- ( ph -> Y e. B ) |
8 |
1 2 3 4 5
|
monfval |
|- ( ph -> M = ( x e. B , y e. B |-> { f e. ( x H y ) | A. z e. B Fun `' ( g e. ( z H x ) |-> ( f ( <. z , x >. .x. y ) g ) ) } ) ) |
9 |
|
simprl |
|- ( ( ph /\ ( x = X /\ y = Y ) ) -> x = X ) |
10 |
|
simprr |
|- ( ( ph /\ ( x = X /\ y = Y ) ) -> y = Y ) |
11 |
9 10
|
oveq12d |
|- ( ( ph /\ ( x = X /\ y = Y ) ) -> ( x H y ) = ( X H Y ) ) |
12 |
9
|
oveq2d |
|- ( ( ph /\ ( x = X /\ y = Y ) ) -> ( z H x ) = ( z H X ) ) |
13 |
9
|
opeq2d |
|- ( ( ph /\ ( x = X /\ y = Y ) ) -> <. z , x >. = <. z , X >. ) |
14 |
13 10
|
oveq12d |
|- ( ( ph /\ ( x = X /\ y = Y ) ) -> ( <. z , x >. .x. y ) = ( <. z , X >. .x. Y ) ) |
15 |
14
|
oveqd |
|- ( ( ph /\ ( x = X /\ y = Y ) ) -> ( f ( <. z , x >. .x. y ) g ) = ( f ( <. z , X >. .x. Y ) g ) ) |
16 |
12 15
|
mpteq12dv |
|- ( ( ph /\ ( x = X /\ y = Y ) ) -> ( g e. ( z H x ) |-> ( f ( <. z , x >. .x. y ) g ) ) = ( g e. ( z H X ) |-> ( f ( <. z , X >. .x. Y ) g ) ) ) |
17 |
16
|
cnveqd |
|- ( ( ph /\ ( x = X /\ y = Y ) ) -> `' ( g e. ( z H x ) |-> ( f ( <. z , x >. .x. y ) g ) ) = `' ( g e. ( z H X ) |-> ( f ( <. z , X >. .x. Y ) g ) ) ) |
18 |
17
|
funeqd |
|- ( ( ph /\ ( x = X /\ y = Y ) ) -> ( Fun `' ( g e. ( z H x ) |-> ( f ( <. z , x >. .x. y ) g ) ) <-> Fun `' ( g e. ( z H X ) |-> ( f ( <. z , X >. .x. Y ) g ) ) ) ) |
19 |
18
|
ralbidv |
|- ( ( ph /\ ( x = X /\ y = Y ) ) -> ( A. z e. B Fun `' ( g e. ( z H x ) |-> ( f ( <. z , x >. .x. y ) g ) ) <-> A. z e. B Fun `' ( g e. ( z H X ) |-> ( f ( <. z , X >. .x. Y ) g ) ) ) ) |
20 |
11 19
|
rabeqbidv |
|- ( ( ph /\ ( x = X /\ y = Y ) ) -> { f e. ( x H y ) | A. z e. B Fun `' ( g e. ( z H x ) |-> ( f ( <. z , x >. .x. y ) g ) ) } = { f e. ( X H Y ) | A. z e. B Fun `' ( g e. ( z H X ) |-> ( f ( <. z , X >. .x. Y ) g ) ) } ) |
21 |
|
ovex |
|- ( X H Y ) e. _V |
22 |
21
|
rabex |
|- { f e. ( X H Y ) | A. z e. B Fun `' ( g e. ( z H X ) |-> ( f ( <. z , X >. .x. Y ) g ) ) } e. _V |
23 |
22
|
a1i |
|- ( ph -> { f e. ( X H Y ) | A. z e. B Fun `' ( g e. ( z H X ) |-> ( f ( <. z , X >. .x. Y ) g ) ) } e. _V ) |
24 |
8 20 6 7 23
|
ovmpod |
|- ( ph -> ( X M Y ) = { f e. ( X H Y ) | A. z e. B Fun `' ( g e. ( z H X ) |-> ( f ( <. z , X >. .x. Y ) g ) ) } ) |
25 |
24
|
eleq2d |
|- ( ph -> ( F e. ( X M Y ) <-> F e. { f e. ( X H Y ) | A. z e. B Fun `' ( g e. ( z H X ) |-> ( f ( <. z , X >. .x. Y ) g ) ) } ) ) |
26 |
|
oveq1 |
|- ( f = F -> ( f ( <. z , X >. .x. Y ) g ) = ( F ( <. z , X >. .x. Y ) g ) ) |
27 |
26
|
mpteq2dv |
|- ( f = F -> ( g e. ( z H X ) |-> ( f ( <. z , X >. .x. Y ) g ) ) = ( g e. ( z H X ) |-> ( F ( <. z , X >. .x. Y ) g ) ) ) |
28 |
27
|
cnveqd |
|- ( f = F -> `' ( g e. ( z H X ) |-> ( f ( <. z , X >. .x. Y ) g ) ) = `' ( g e. ( z H X ) |-> ( F ( <. z , X >. .x. Y ) g ) ) ) |
29 |
28
|
funeqd |
|- ( f = F -> ( Fun `' ( g e. ( z H X ) |-> ( f ( <. z , X >. .x. Y ) g ) ) <-> Fun `' ( g e. ( z H X ) |-> ( F ( <. z , X >. .x. Y ) g ) ) ) ) |
30 |
29
|
ralbidv |
|- ( f = F -> ( A. z e. B Fun `' ( g e. ( z H X ) |-> ( f ( <. z , X >. .x. Y ) g ) ) <-> A. z e. B Fun `' ( g e. ( z H X ) |-> ( F ( <. z , X >. .x. Y ) g ) ) ) ) |
31 |
30
|
elrab |
|- ( F e. { f e. ( X H Y ) | A. z e. B Fun `' ( g e. ( z H X ) |-> ( f ( <. z , X >. .x. Y ) g ) ) } <-> ( F e. ( X H Y ) /\ A. z e. B Fun `' ( g e. ( z H X ) |-> ( F ( <. z , X >. .x. Y ) g ) ) ) ) |
32 |
25 31
|
bitrdi |
|- ( ph -> ( F e. ( X M Y ) <-> ( F e. ( X H Y ) /\ A. z e. B Fun `' ( g e. ( z H X ) |-> ( F ( <. z , X >. .x. Y ) g ) ) ) ) ) |