Metamath Proof Explorer


Theorem sectfval

Description: Value of the section relation. (Contributed by Mario Carneiro, 2-Jan-2017)

Ref Expression
Hypotheses issect.b
|- B = ( Base ` C )
issect.h
|- H = ( Hom ` C )
issect.o
|- .x. = ( comp ` C )
issect.i
|- .1. = ( Id ` C )
issect.s
|- S = ( Sect ` C )
issect.c
|- ( ph -> C e. Cat )
issect.x
|- ( ph -> X e. B )
issect.y
|- ( ph -> Y e. B )
Assertion sectfval
|- ( ph -> ( X S Y ) = { <. f , g >. | ( ( f e. ( X H Y ) /\ g e. ( Y H X ) ) /\ ( g ( <. X , Y >. .x. X ) f ) = ( .1. ` X ) ) } )

Proof

Step Hyp Ref Expression
1 issect.b
 |-  B = ( Base ` C )
2 issect.h
 |-  H = ( Hom ` C )
3 issect.o
 |-  .x. = ( comp ` C )
4 issect.i
 |-  .1. = ( Id ` C )
5 issect.s
 |-  S = ( Sect ` C )
6 issect.c
 |-  ( ph -> C e. Cat )
7 issect.x
 |-  ( ph -> X e. B )
8 issect.y
 |-  ( ph -> Y e. B )
9 1 2 3 4 5 6 7 7 sectffval
 |-  ( ph -> S = ( x e. B , y e. B |-> { <. f , g >. | ( ( f e. ( x H y ) /\ g e. ( y H x ) ) /\ ( g ( <. x , y >. .x. x ) f ) = ( .1. ` x ) ) } ) )
10 simprl
 |-  ( ( ph /\ ( x = X /\ y = Y ) ) -> x = X )
11 simprr
 |-  ( ( ph /\ ( x = X /\ y = Y ) ) -> y = Y )
12 10 11 oveq12d
 |-  ( ( ph /\ ( x = X /\ y = Y ) ) -> ( x H y ) = ( X H Y ) )
13 12 eleq2d
 |-  ( ( ph /\ ( x = X /\ y = Y ) ) -> ( f e. ( x H y ) <-> f e. ( X H Y ) ) )
14 11 10 oveq12d
 |-  ( ( ph /\ ( x = X /\ y = Y ) ) -> ( y H x ) = ( Y H X ) )
15 14 eleq2d
 |-  ( ( ph /\ ( x = X /\ y = Y ) ) -> ( g e. ( y H x ) <-> g e. ( Y H X ) ) )
16 13 15 anbi12d
 |-  ( ( ph /\ ( x = X /\ y = Y ) ) -> ( ( f e. ( x H y ) /\ g e. ( y H x ) ) <-> ( f e. ( X H Y ) /\ g e. ( Y H X ) ) ) )
17 10 11 opeq12d
 |-  ( ( ph /\ ( x = X /\ y = Y ) ) -> <. x , y >. = <. X , Y >. )
18 17 10 oveq12d
 |-  ( ( ph /\ ( x = X /\ y = Y ) ) -> ( <. x , y >. .x. x ) = ( <. X , Y >. .x. X ) )
19 18 oveqd
 |-  ( ( ph /\ ( x = X /\ y = Y ) ) -> ( g ( <. x , y >. .x. x ) f ) = ( g ( <. X , Y >. .x. X ) f ) )
20 10 fveq2d
 |-  ( ( ph /\ ( x = X /\ y = Y ) ) -> ( .1. ` x ) = ( .1. ` X ) )
21 19 20 eqeq12d
 |-  ( ( ph /\ ( x = X /\ y = Y ) ) -> ( ( g ( <. x , y >. .x. x ) f ) = ( .1. ` x ) <-> ( g ( <. X , Y >. .x. X ) f ) = ( .1. ` X ) ) )
22 16 21 anbi12d
 |-  ( ( ph /\ ( x = X /\ y = Y ) ) -> ( ( ( f e. ( x H y ) /\ g e. ( y H x ) ) /\ ( g ( <. x , y >. .x. x ) f ) = ( .1. ` x ) ) <-> ( ( f e. ( X H Y ) /\ g e. ( Y H X ) ) /\ ( g ( <. X , Y >. .x. X ) f ) = ( .1. ` X ) ) ) )
23 22 opabbidv
 |-  ( ( ph /\ ( x = X /\ y = Y ) ) -> { <. f , g >. | ( ( f e. ( x H y ) /\ g e. ( y H x ) ) /\ ( g ( <. x , y >. .x. x ) f ) = ( .1. ` x ) ) } = { <. f , g >. | ( ( f e. ( X H Y ) /\ g e. ( Y H X ) ) /\ ( g ( <. X , Y >. .x. X ) f ) = ( .1. ` X ) ) } )
24 ovex
 |-  ( X H Y ) e. _V
25 ovex
 |-  ( Y H X ) e. _V
26 24 25 xpex
 |-  ( ( X H Y ) X. ( Y H X ) ) e. _V
27 opabssxp
 |-  { <. f , g >. | ( ( f e. ( X H Y ) /\ g e. ( Y H X ) ) /\ ( g ( <. X , Y >. .x. X ) f ) = ( .1. ` X ) ) } C_ ( ( X H Y ) X. ( Y H X ) )
28 26 27 ssexi
 |-  { <. f , g >. | ( ( f e. ( X H Y ) /\ g e. ( Y H X ) ) /\ ( g ( <. X , Y >. .x. X ) f ) = ( .1. ` X ) ) } e. _V
29 28 a1i
 |-  ( ph -> { <. f , g >. | ( ( f e. ( X H Y ) /\ g e. ( Y H X ) ) /\ ( g ( <. X , Y >. .x. X ) f ) = ( .1. ` X ) ) } e. _V )
30 9 23 7 8 29 ovmpod
 |-  ( ph -> ( X S Y ) = { <. f , g >. | ( ( f e. ( X H Y ) /\ g e. ( Y H X ) ) /\ ( g ( <. X , Y >. .x. X ) f ) = ( .1. ` X ) ) } )