MPE Home Metamath Proof Explorer < Previous   Next >
Nearby theorems
Mirrors  >  Home  >  MPE Home  >  Th. List  >  df-hof Unicode version

Definition df-hof 14024
Description: Define the Hom functor, which is a bifunctor (a functor of two arguments), contravariant in the first argument and covariant in the second, from  (oppCat `  C )  X.  C to  SetCat, whose object part is the hom-function  Hom, and with morphism part given by pre- and post-composition. (Contributed by Mario Carneiro, 11-Jan-2017.)
Assertion
Ref Expression
df-hof  |- HomF  =  ( c  e.  Cat  |->  <. (  Homf  `  c ) ,  [_ ( Base `  c )  /  b ]_ ( x  e.  ( b  X.  b ) ,  y  e.  ( b  X.  b ) 
|->  ( f  e.  ( ( 1st `  y
) (  Hom  `  c
) ( 1st `  x
) ) ,  g  e.  ( ( 2nd `  x ) (  Hom  `  c ) ( 2nd `  y ) )  |->  ( h  e.  ( (  Hom  `  c ) `  x )  |->  ( ( g ( x (comp `  c ) ( 2nd `  y ) ) h ) ( <. ( 1st `  y ) ,  ( 1st `  x
) >. (comp `  c
) ( 2nd `  y
) ) f ) ) ) ) >.
)
Distinct variable group:    b, c, f, g, h, x, y

Detailed syntax breakdown of Definition df-hof
StepHypRef Expression
1 chof 14022 . 2  class HomF
2 vc . . 3  set  c
3 ccat 13566 . . 3  class  Cat
42cv 1622 . . . . 5  class  c
5 chomf 13568 . . . . 5  class  Homf
64, 5cfv 5255 . . . 4  class  (  Homf  `  c )
7 vb . . . . 5  set  b
8 cbs 13148 . . . . . 6  class  Base
94, 8cfv 5255 . . . . 5  class  ( Base `  c )
10 vx . . . . . 6  set  x
11 vy . . . . . 6  set  y
127cv 1622 . . . . . . 7  class  b
1312, 12cxp 4687 . . . . . 6  class  ( b  X.  b )
14 vf . . . . . . 7  set  f
15 vg . . . . . . 7  set  g
1611cv 1622 . . . . . . . . 9  class  y
17 c1st 6120 . . . . . . . . 9  class  1st
1816, 17cfv 5255 . . . . . . . 8  class  ( 1st `  y )
1910cv 1622 . . . . . . . . 9  class  x
2019, 17cfv 5255 . . . . . . . 8  class  ( 1st `  x )
21 chom 13219 . . . . . . . . 9  class  Hom
224, 21cfv 5255 . . . . . . . 8  class  (  Hom  `  c )
2318, 20, 22co 5858 . . . . . . 7  class  ( ( 1st `  y ) (  Hom  `  c
) ( 1st `  x
) )
24 c2nd 6121 . . . . . . . . 9  class  2nd
2519, 24cfv 5255 . . . . . . . 8  class  ( 2nd `  x )
2616, 24cfv 5255 . . . . . . . 8  class  ( 2nd `  y )
2725, 26, 22co 5858 . . . . . . 7  class  ( ( 2nd `  x ) (  Hom  `  c
) ( 2nd `  y
) )
28 vh . . . . . . . 8  set  h
2919, 22cfv 5255 . . . . . . . 8  class  ( (  Hom  `  c ) `  x )
3015cv 1622 . . . . . . . . . 10  class  g
3128cv 1622 . . . . . . . . . 10  class  h
32 cco 13220 . . . . . . . . . . . 12  class comp
334, 32cfv 5255 . . . . . . . . . . 11  class  (comp `  c )
3419, 26, 33co 5858 . . . . . . . . . 10  class  ( x (comp `  c )
( 2nd `  y
) )
3530, 31, 34co 5858 . . . . . . . . 9  class  ( g ( x (comp `  c ) ( 2nd `  y ) ) h )
3614cv 1622 . . . . . . . . 9  class  f
3718, 20cop 3643 . . . . . . . . . 10  class  <. ( 1st `  y ) ,  ( 1st `  x
) >.
3837, 26, 33co 5858 . . . . . . . . 9  class  ( <.
( 1st `  y
) ,  ( 1st `  x ) >. (comp `  c ) ( 2nd `  y ) )
3935, 36, 38co 5858 . . . . . . . 8  class  ( ( g ( x (comp `  c ) ( 2nd `  y ) ) h ) ( <. ( 1st `  y ) ,  ( 1st `  x
) >. (comp `  c
) ( 2nd `  y
) ) f )
4028, 29, 39cmpt 4077 . . . . . . 7  class  ( h  e.  ( (  Hom  `  c ) `  x
)  |->  ( ( g ( x (comp `  c ) ( 2nd `  y ) ) h ) ( <. ( 1st `  y ) ,  ( 1st `  x
) >. (comp `  c
) ( 2nd `  y
) ) f ) )
4114, 15, 23, 27, 40cmpt2 5860 . . . . . 6  class  ( f  e.  ( ( 1st `  y ) (  Hom  `  c ) ( 1st `  x ) ) ,  g  e.  ( ( 2nd `  x ) (  Hom  `  c
) ( 2nd `  y
) )  |->  ( h  e.  ( (  Hom  `  c ) `  x
)  |->  ( ( g ( x (comp `  c ) ( 2nd `  y ) ) h ) ( <. ( 1st `  y ) ,  ( 1st `  x
) >. (comp `  c
) ( 2nd `  y
) ) f ) ) )
4210, 11, 13, 13, 41cmpt2 5860 . . . . 5  class  ( x  e.  ( b  X.  b ) ,  y  e.  ( b  X.  b )  |->  ( f  e.  ( ( 1st `  y ) (  Hom  `  c ) ( 1st `  x ) ) ,  g  e.  ( ( 2nd `  x ) (  Hom  `  c
) ( 2nd `  y
) )  |->  ( h  e.  ( (  Hom  `  c ) `  x
)  |->  ( ( g ( x (comp `  c ) ( 2nd `  y ) ) h ) ( <. ( 1st `  y ) ,  ( 1st `  x
) >. (comp `  c
) ( 2nd `  y
) ) f ) ) ) )
437, 9, 42csb 3081 . . . 4  class  [_ ( Base `  c )  / 
b ]_ ( x  e.  ( b  X.  b
) ,  y  e.  ( b  X.  b
)  |->  ( f  e.  ( ( 1st `  y
) (  Hom  `  c
) ( 1st `  x
) ) ,  g  e.  ( ( 2nd `  x ) (  Hom  `  c ) ( 2nd `  y ) )  |->  ( h  e.  ( (  Hom  `  c ) `  x )  |->  ( ( g ( x (comp `  c ) ( 2nd `  y ) ) h ) ( <. ( 1st `  y ) ,  ( 1st `  x
) >. (comp `  c
) ( 2nd `  y
) ) f ) ) ) )
446, 43cop 3643 . . 3  class  <. (  Homf  `  c ) ,  [_ ( Base `  c )  /  b ]_ (
x  e.  ( b  X.  b ) ,  y  e.  ( b  X.  b )  |->  ( f  e.  ( ( 1st `  y ) (  Hom  `  c
) ( 1st `  x
) ) ,  g  e.  ( ( 2nd `  x ) (  Hom  `  c ) ( 2nd `  y ) )  |->  ( h  e.  ( (  Hom  `  c ) `  x )  |->  ( ( g ( x (comp `  c ) ( 2nd `  y ) ) h ) ( <. ( 1st `  y ) ,  ( 1st `  x
) >. (comp `  c
) ( 2nd `  y
) ) f ) ) ) ) >.
452, 3, 44cmpt 4077 . 2  class  ( c  e.  Cat  |->  <. (  Homf  `  c ) ,  [_ ( Base `  c )  /  b ]_ (
x  e.  ( b  X.  b ) ,  y  e.  ( b  X.  b )  |->  ( f  e.  ( ( 1st `  y ) (  Hom  `  c
) ( 1st `  x
) ) ,  g  e.  ( ( 2nd `  x ) (  Hom  `  c ) ( 2nd `  y ) )  |->  ( h  e.  ( (  Hom  `  c ) `  x )  |->  ( ( g ( x (comp `  c ) ( 2nd `  y ) ) h ) ( <. ( 1st `  y ) ,  ( 1st `  x
) >. (comp `  c
) ( 2nd `  y
) ) f ) ) ) ) >.
)
461, 45wceq 1623 1  wff HomF  =  ( c  e.  Cat  |->  <. (  Homf  `  c ) ,  [_ ( Base `  c )  /  b ]_ ( x  e.  ( b  X.  b ) ,  y  e.  ( b  X.  b ) 
|->  ( f  e.  ( ( 1st `  y
) (  Hom  `  c
) ( 1st `  x
) ) ,  g  e.  ( ( 2nd `  x ) (  Hom  `  c ) ( 2nd `  y ) )  |->  ( h  e.  ( (  Hom  `  c ) `  x )  |->  ( ( g ( x (comp `  c ) ( 2nd `  y ) ) h ) ( <. ( 1st `  y ) ,  ( 1st `  x
) >. (comp `  c
) ( 2nd `  y
) ) f ) ) ) ) >.
)
Colors of variables: wff set class
This definition is referenced by:  hofval  14026
  Copyright terms: Public domain W3C validator