MPE Home Metamath Proof Explorer < Previous   Next >
Nearby theorems
Mirrors  >  Home  >  MPE Home  >  Th. List  >  funcoppc Structured version   Unicode version

Theorem funcoppc 14781
Description: A functor on categories yields a functor on the opposite categories (in the same direction). (Contributed by Mario Carneiro, 4-Jan-2017.)
Hypotheses
Ref Expression
funcoppc.o  |-  O  =  (oppCat `  C )
funcoppc.p  |-  P  =  (oppCat `  D )
funcoppc.f  |-  ( ph  ->  F ( C  Func  D ) G )
Assertion
Ref Expression
funcoppc  |-  ( ph  ->  F ( O  Func  P )tpos  G )

Proof of Theorem funcoppc
Dummy variables  f 
g  x  y  z are mutually distinct and distinct from all other variables.
StepHypRef Expression
1 funcoppc.o . . 3  |-  O  =  (oppCat `  C )
2 eqid 2441 . . 3  |-  ( Base `  C )  =  (
Base `  C )
31, 2oppcbas 14653 . 2  |-  ( Base `  C )  =  (
Base `  O )
4 funcoppc.p . . 3  |-  P  =  (oppCat `  D )
5 eqid 2441 . . 3  |-  ( Base `  D )  =  (
Base `  D )
64, 5oppcbas 14653 . 2  |-  ( Base `  D )  =  (
Base `  P )
7 eqid 2441 . 2  |-  ( Hom  `  O )  =  ( Hom  `  O )
8 eqid 2441 . 2  |-  ( Hom  `  P )  =  ( Hom  `  P )
9 eqid 2441 . 2  |-  ( Id
`  O )  =  ( Id `  O
)
10 eqid 2441 . 2  |-  ( Id
`  P )  =  ( Id `  P
)
11 eqid 2441 . 2  |-  (comp `  O )  =  (comp `  O )
12 eqid 2441 . 2  |-  (comp `  P )  =  (comp `  P )
13 funcoppc.f . . . . . 6  |-  ( ph  ->  F ( C  Func  D ) G )
14 df-br 4290 . . . . . 6  |-  ( F ( C  Func  D
) G  <->  <. F ,  G >.  e.  ( C 
Func  D ) )
1513, 14sylib 196 . . . . 5  |-  ( ph  -> 
<. F ,  G >.  e.  ( C  Func  D
) )
16 funcrcl 14769 . . . . 5  |-  ( <. F ,  G >.  e.  ( C  Func  D
)  ->  ( C  e.  Cat  /\  D  e. 
Cat ) )
1715, 16syl 16 . . . 4  |-  ( ph  ->  ( C  e.  Cat  /\  D  e.  Cat )
)
1817simpld 456 . . 3  |-  ( ph  ->  C  e.  Cat )
191oppccat 14657 . . 3  |-  ( C  e.  Cat  ->  O  e.  Cat )
2018, 19syl 16 . 2  |-  ( ph  ->  O  e.  Cat )
2117simprd 460 . . 3  |-  ( ph  ->  D  e.  Cat )
224oppccat 14657 . . 3  |-  ( D  e.  Cat  ->  P  e.  Cat )
2321, 22syl 16 . 2  |-  ( ph  ->  P  e.  Cat )
242, 5, 13funcf1 14772 . 2  |-  ( ph  ->  F : ( Base `  C ) --> ( Base `  D ) )
252, 13funcfn2 14775 . . 3  |-  ( ph  ->  G  Fn  ( (
Base `  C )  X.  ( Base `  C
) ) )
26 tposfn 6773 . . 3  |-  ( G  Fn  ( ( Base `  C )  X.  ( Base `  C ) )  -> tpos  G  Fn  (
( Base `  C )  X.  ( Base `  C
) ) )
2725, 26syl 16 . 2  |-  ( ph  -> tpos  G  Fn  ( (
Base `  C )  X.  ( Base `  C
) ) )
28 eqid 2441 . . . 4  |-  ( Hom  `  C )  =  ( Hom  `  C )
29 eqid 2441 . . . 4  |-  ( Hom  `  D )  =  ( Hom  `  D )
3013adantr 462 . . . 4  |-  ( (
ph  /\  ( x  e.  ( Base `  C
)  /\  y  e.  ( Base `  C )
) )  ->  F
( C  Func  D
) G )
31 simprr 751 . . . 4  |-  ( (
ph  /\  ( x  e.  ( Base `  C
)  /\  y  e.  ( Base `  C )
) )  ->  y  e.  ( Base `  C
) )
32 simprl 750 . . . 4  |-  ( (
ph  /\  ( x  e.  ( Base `  C
)  /\  y  e.  ( Base `  C )
) )  ->  x  e.  ( Base `  C
) )
332, 28, 29, 30, 31, 32funcf2 14774 . . 3  |-  ( (
ph  /\  ( x  e.  ( Base `  C
)  /\  y  e.  ( Base `  C )
) )  ->  (
y G x ) : ( y ( Hom  `  C )
x ) --> ( ( F `  y ) ( Hom  `  D
) ( F `  x ) ) )
34 ovtpos 6759 . . . . 5  |-  ( xtpos 
G y )  =  ( y G x )
3534feq1i 5548 . . . 4  |-  ( ( xtpos  G y ) : ( x ( Hom  `  O )
y ) --> ( ( F `  x ) ( Hom  `  P
) ( F `  y ) )  <->  ( y G x ) : ( x ( Hom  `  O ) y ) --> ( ( F `  x ) ( Hom  `  P ) ( F `
 y ) ) )
3628, 1oppchom 14650 . . . . 5  |-  ( x ( Hom  `  O
) y )  =  ( y ( Hom  `  C ) x )
3729, 4oppchom 14650 . . . . 5  |-  ( ( F `  x ) ( Hom  `  P
) ( F `  y ) )  =  ( ( F `  y ) ( Hom  `  D ) ( F `
 x ) )
3836, 37feq23i 5550 . . . 4  |-  ( ( y G x ) : ( x ( Hom  `  O )
y ) --> ( ( F `  x ) ( Hom  `  P
) ( F `  y ) )  <->  ( y G x ) : ( y ( Hom  `  C ) x ) --> ( ( F `  y ) ( Hom  `  D ) ( F `
 x ) ) )
3935, 38bitri 249 . . 3  |-  ( ( xtpos  G y ) : ( x ( Hom  `  O )
y ) --> ( ( F `  x ) ( Hom  `  P
) ( F `  y ) )  <->  ( y G x ) : ( y ( Hom  `  C ) x ) --> ( ( F `  y ) ( Hom  `  D ) ( F `
 x ) ) )
4033, 39sylibr 212 . 2  |-  ( (
ph  /\  ( x  e.  ( Base `  C
)  /\  y  e.  ( Base `  C )
) )  ->  (
xtpos  G y ) : ( x ( Hom  `  O )
y ) --> ( ( F `  x ) ( Hom  `  P
) ( F `  y ) ) )
41 eqid 2441 . . . 4  |-  ( Id
`  C )  =  ( Id `  C
)
42 eqid 2441 . . . 4  |-  ( Id
`  D )  =  ( Id `  D
)
4313adantr 462 . . . 4  |-  ( (
ph  /\  x  e.  ( Base `  C )
)  ->  F ( C  Func  D ) G )
44 simpr 458 . . . 4  |-  ( (
ph  /\  x  e.  ( Base `  C )
)  ->  x  e.  ( Base `  C )
)
452, 41, 42, 43, 44funcid 14776 . . 3  |-  ( (
ph  /\  x  e.  ( Base `  C )
)  ->  ( (
x G x ) `
 ( ( Id
`  C ) `  x ) )  =  ( ( Id `  D ) `  ( F `  x )
) )
46 ovtpos 6759 . . . . 5  |-  ( xtpos 
G x )  =  ( x G x )
4746a1i 11 . . . 4  |-  ( (
ph  /\  x  e.  ( Base `  C )
)  ->  ( xtpos  G x )  =  ( x G x ) )
481, 41oppcid 14656 . . . . . . 7  |-  ( C  e.  Cat  ->  ( Id `  O )  =  ( Id `  C
) )
4918, 48syl 16 . . . . . 6  |-  ( ph  ->  ( Id `  O
)  =  ( Id
`  C ) )
5049adantr 462 . . . . 5  |-  ( (
ph  /\  x  e.  ( Base `  C )
)  ->  ( Id `  O )  =  ( Id `  C ) )
5150fveq1d 5690 . . . 4  |-  ( (
ph  /\  x  e.  ( Base `  C )
)  ->  ( ( Id `  O ) `  x )  =  ( ( Id `  C
) `  x )
)
5247, 51fveq12d 5694 . . 3  |-  ( (
ph  /\  x  e.  ( Base `  C )
)  ->  ( (
xtpos  G x ) `
 ( ( Id
`  O ) `  x ) )  =  ( ( x G x ) `  (
( Id `  C
) `  x )
) )
534, 42oppcid 14656 . . . . . 6  |-  ( D  e.  Cat  ->  ( Id `  P )  =  ( Id `  D
) )
5421, 53syl 16 . . . . 5  |-  ( ph  ->  ( Id `  P
)  =  ( Id
`  D ) )
5554adantr 462 . . . 4  |-  ( (
ph  /\  x  e.  ( Base `  C )
)  ->  ( Id `  P )  =  ( Id `  D ) )
5655fveq1d 5690 . . 3  |-  ( (
ph  /\  x  e.  ( Base `  C )
)  ->  ( ( Id `  P ) `  ( F `  x ) )  =  ( ( Id `  D ) `
 ( F `  x ) ) )
5745, 52, 563eqtr4d 2483 . 2  |-  ( (
ph  /\  x  e.  ( Base `  C )
)  ->  ( (
xtpos  G x ) `
 ( ( Id
`  O ) `  x ) )  =  ( ( Id `  P ) `  ( F `  x )
) )
58 eqid 2441 . . . . 5  |-  (comp `  C )  =  (comp `  C )
59 eqid 2441 . . . . 5  |-  (comp `  D )  =  (comp `  D )
60133ad2ant1 1004 . . . . 5  |-  ( (
ph  /\  ( x  e.  ( Base `  C
)  /\  y  e.  ( Base `  C )  /\  z  e.  ( Base `  C ) )  /\  ( f  e.  ( x ( Hom  `  O ) y )  /\  g  e.  ( y ( Hom  `  O
) z ) ) )  ->  F ( C  Func  D ) G )
61 simp23 1018 . . . . 5  |-  ( (
ph  /\  ( x  e.  ( Base `  C
)  /\  y  e.  ( Base `  C )  /\  z  e.  ( Base `  C ) )  /\  ( f  e.  ( x ( Hom  `  O ) y )  /\  g  e.  ( y ( Hom  `  O
) z ) ) )  ->  z  e.  ( Base `  C )
)
62 simp22 1017 . . . . 5  |-  ( (
ph  /\  ( x  e.  ( Base `  C
)  /\  y  e.  ( Base `  C )  /\  z  e.  ( Base `  C ) )  /\  ( f  e.  ( x ( Hom  `  O ) y )  /\  g  e.  ( y ( Hom  `  O
) z ) ) )  ->  y  e.  ( Base `  C )
)
63 simp21 1016 . . . . 5  |-  ( (
ph  /\  ( x  e.  ( Base `  C
)  /\  y  e.  ( Base `  C )  /\  z  e.  ( Base `  C ) )  /\  ( f  e.  ( x ( Hom  `  O ) y )  /\  g  e.  ( y ( Hom  `  O
) z ) ) )  ->  x  e.  ( Base `  C )
)
64 simp3r 1012 . . . . . 6  |-  ( (
ph  /\  ( x  e.  ( Base `  C
)  /\  y  e.  ( Base `  C )  /\  z  e.  ( Base `  C ) )  /\  ( f  e.  ( x ( Hom  `  O ) y )  /\  g  e.  ( y ( Hom  `  O
) z ) ) )  ->  g  e.  ( y ( Hom  `  O ) z ) )
6528, 1oppchom 14650 . . . . . 6  |-  ( y ( Hom  `  O
) z )  =  ( z ( Hom  `  C ) y )
6664, 65syl6eleq 2531 . . . . 5  |-  ( (
ph  /\  ( x  e.  ( Base `  C
)  /\  y  e.  ( Base `  C )  /\  z  e.  ( Base `  C ) )  /\  ( f  e.  ( x ( Hom  `  O ) y )  /\  g  e.  ( y ( Hom  `  O
) z ) ) )  ->  g  e.  ( z ( Hom  `  C ) y ) )
67 simp3l 1011 . . . . . 6  |-  ( (
ph  /\  ( x  e.  ( Base `  C
)  /\  y  e.  ( Base `  C )  /\  z  e.  ( Base `  C ) )  /\  ( f  e.  ( x ( Hom  `  O ) y )  /\  g  e.  ( y ( Hom  `  O
) z ) ) )  ->  f  e.  ( x ( Hom  `  O ) y ) )
6867, 36syl6eleq 2531 . . . . 5  |-  ( (
ph  /\  ( x  e.  ( Base `  C
)  /\  y  e.  ( Base `  C )  /\  z  e.  ( Base `  C ) )  /\  ( f  e.  ( x ( Hom  `  O ) y )  /\  g  e.  ( y ( Hom  `  O
) z ) ) )  ->  f  e.  ( y ( Hom  `  C ) x ) )
692, 28, 58, 59, 60, 61, 62, 63, 66, 68funcco 14777 . . . 4  |-  ( (
ph  /\  ( x  e.  ( Base `  C
)  /\  y  e.  ( Base `  C )  /\  z  e.  ( Base `  C ) )  /\  ( f  e.  ( x ( Hom  `  O ) y )  /\  g  e.  ( y ( Hom  `  O
) z ) ) )  ->  ( (
z G x ) `
 ( f (
<. z ,  y >.
(comp `  C )
x ) g ) )  =  ( ( ( y G x ) `  f ) ( <. ( F `  z ) ,  ( F `  y )
>. (comp `  D )
( F `  x
) ) ( ( z G y ) `
 g ) ) )
702, 58, 1, 63, 62, 61oppcco 14652 . . . . 5  |-  ( (
ph  /\  ( x  e.  ( Base `  C
)  /\  y  e.  ( Base `  C )  /\  z  e.  ( Base `  C ) )  /\  ( f  e.  ( x ( Hom  `  O ) y )  /\  g  e.  ( y ( Hom  `  O
) z ) ) )  ->  ( g
( <. x ,  y
>. (comp `  O )
z ) f )  =  ( f (
<. z ,  y >.
(comp `  C )
x ) g ) )
7170fveq2d 5692 . . . 4  |-  ( (
ph  /\  ( x  e.  ( Base `  C
)  /\  y  e.  ( Base `  C )  /\  z  e.  ( Base `  C ) )  /\  ( f  e.  ( x ( Hom  `  O ) y )  /\  g  e.  ( y ( Hom  `  O
) z ) ) )  ->  ( (
z G x ) `
 ( g (
<. x ,  y >.
(comp `  O )
z ) f ) )  =  ( ( z G x ) `
 ( f (
<. z ,  y >.
(comp `  C )
x ) g ) ) )
72243ad2ant1 1004 . . . . . 6  |-  ( (
ph  /\  ( x  e.  ( Base `  C
)  /\  y  e.  ( Base `  C )  /\  z  e.  ( Base `  C ) )  /\  ( f  e.  ( x ( Hom  `  O ) y )  /\  g  e.  ( y ( Hom  `  O
) z ) ) )  ->  F :
( Base `  C ) --> ( Base `  D )
)
7372, 63ffvelrnd 5841 . . . . 5  |-  ( (
ph  /\  ( x  e.  ( Base `  C
)  /\  y  e.  ( Base `  C )  /\  z  e.  ( Base `  C ) )  /\  ( f  e.  ( x ( Hom  `  O ) y )  /\  g  e.  ( y ( Hom  `  O
) z ) ) )  ->  ( F `  x )  e.  (
Base `  D )
)
7472, 62ffvelrnd 5841 . . . . 5  |-  ( (
ph  /\  ( x  e.  ( Base `  C
)  /\  y  e.  ( Base `  C )  /\  z  e.  ( Base `  C ) )  /\  ( f  e.  ( x ( Hom  `  O ) y )  /\  g  e.  ( y ( Hom  `  O
) z ) ) )  ->  ( F `  y )  e.  (
Base `  D )
)
7572, 61ffvelrnd 5841 . . . . 5  |-  ( (
ph  /\  ( x  e.  ( Base `  C
)  /\  y  e.  ( Base `  C )  /\  z  e.  ( Base `  C ) )  /\  ( f  e.  ( x ( Hom  `  O ) y )  /\  g  e.  ( y ( Hom  `  O
) z ) ) )  ->  ( F `  z )  e.  (
Base `  D )
)
765, 59, 4, 73, 74, 75oppcco 14652 . . . 4  |-  ( (
ph  /\  ( x  e.  ( Base `  C
)  /\  y  e.  ( Base `  C )  /\  z  e.  ( Base `  C ) )  /\  ( f  e.  ( x ( Hom  `  O ) y )  /\  g  e.  ( y ( Hom  `  O
) z ) ) )  ->  ( (
( z G y ) `  g ) ( <. ( F `  x ) ,  ( F `  y )
>. (comp `  P )
( F `  z
) ) ( ( y G x ) `
 f ) )  =  ( ( ( y G x ) `
 f ) (
<. ( F `  z
) ,  ( F `
 y ) >.
(comp `  D )
( F `  x
) ) ( ( z G y ) `
 g ) ) )
7769, 71, 763eqtr4d 2483 . . 3  |-  ( (
ph  /\  ( x  e.  ( Base `  C
)  /\  y  e.  ( Base `  C )  /\  z  e.  ( Base `  C ) )  /\  ( f  e.  ( x ( Hom  `  O ) y )  /\  g  e.  ( y ( Hom  `  O
) z ) ) )  ->  ( (
z G x ) `
 ( g (
<. x ,  y >.
(comp `  O )
z ) f ) )  =  ( ( ( z G y ) `  g ) ( <. ( F `  x ) ,  ( F `  y )
>. (comp `  P )
( F `  z
) ) ( ( y G x ) `
 f ) ) )
78 ovtpos 6759 . . . 4  |-  ( xtpos 
G z )  =  ( z G x )
7978fveq1i 5689 . . 3  |-  ( ( xtpos  G z ) `
 ( g (
<. x ,  y >.
(comp `  O )
z ) f ) )  =  ( ( z G x ) `
 ( g (
<. x ,  y >.
(comp `  O )
z ) f ) )
80 ovtpos 6759 . . . . 5  |-  ( ytpos 
G z )  =  ( z G y )
8180fveq1i 5689 . . . 4  |-  ( ( ytpos  G z ) `
 g )  =  ( ( z G y ) `  g
)
8234fveq1i 5689 . . . 4  |-  ( ( xtpos  G y ) `
 f )  =  ( ( y G x ) `  f
)
8381, 82oveq12i 6102 . . 3  |-  ( ( ( ytpos  G z ) `  g ) ( <. ( F `  x ) ,  ( F `  y )
>. (comp `  P )
( F `  z
) ) ( ( xtpos  G y ) `
 f ) )  =  ( ( ( z G y ) `
 g ) (
<. ( F `  x
) ,  ( F `
 y ) >.
(comp `  P )
( F `  z
) ) ( ( y G x ) `
 f ) )
8477, 79, 833eqtr4g 2498 . 2  |-  ( (
ph  /\  ( x  e.  ( Base `  C
)  /\  y  e.  ( Base `  C )  /\  z  e.  ( Base `  C ) )  /\  ( f  e.  ( x ( Hom  `  O ) y )  /\  g  e.  ( y ( Hom  `  O
) z ) ) )  ->  ( (
xtpos  G z ) `
 ( g (
<. x ,  y >.
(comp `  O )
z ) f ) )  =  ( ( ( ytpos  G z ) `  g ) ( <. ( F `  x ) ,  ( F `  y )
>. (comp `  P )
( F `  z
) ) ( ( xtpos  G y ) `
 f ) ) )
853, 6, 7, 8, 9, 10, 11, 12, 20, 23, 24, 27, 40, 57, 84isfuncd 14771 1  |-  ( ph  ->  F ( O  Func  P )tpos  G )
Colors of variables: wff setvar class
Syntax hints:    -> wi 4    /\ wa 369    /\ w3a 960    = wceq 1364    e. wcel 1761   <.cop 3880   class class class wbr 4289    X. cxp 4834    Fn wfn 5410   -->wf 5411   ` cfv 5415  (class class class)co 6090  tpos ctpos 6743   Basecbs 14170   Hom chom 14245  compcco 14246   Catccat 14598   Idccid 14599  oppCatcoppc 14646    Func cfunc 14760
This theorem was proved from axioms:  ax-mp 5  ax-1 6  ax-2 7  ax-3 8  ax-gen 1596  ax-4 1607  ax-5 1675  ax-6 1713  ax-7 1733  ax-8 1763  ax-9 1765  ax-10 1780  ax-11 1785  ax-12 1797  ax-13 1948  ax-ext 2422  ax-rep 4400  ax-sep 4410  ax-nul 4418  ax-pow 4467  ax-pr 4528  ax-un 6371  ax-cnex 9334  ax-resscn 9335  ax-1cn 9336  ax-icn 9337  ax-addcl 9338  ax-addrcl 9339  ax-mulcl 9340  ax-mulrcl 9341  ax-mulcom 9342  ax-addass 9343  ax-mulass 9344  ax-distr 9345  ax-i2m1 9346  ax-1ne0 9347  ax-1rid 9348  ax-rnegex 9349  ax-rrecex 9350  ax-cnre 9351  ax-pre-lttri 9352  ax-pre-lttrn 9353  ax-pre-ltadd 9354  ax-pre-mulgt0 9355
This theorem depends on definitions:  df-bi 185  df-or 370  df-an 371  df-3or 961  df-3an 962  df-tru 1367  df-ex 1592  df-nf 1595  df-sb 1706  df-eu 2261  df-mo 2262  df-clab 2428  df-cleq 2434  df-clel 2437  df-nfc 2566  df-ne 2606  df-nel 2607  df-ral 2718  df-rex 2719  df-reu 2720  df-rmo 2721  df-rab 2722  df-v 2972  df-sbc 3184  df-csb 3286  df-dif 3328  df-un 3330  df-in 3332  df-ss 3339  df-pss 3341  df-nul 3635  df-if 3789  df-pw 3859  df-sn 3875  df-pr 3877  df-tp 3879  df-op 3881  df-uni 4089  df-iun 4170  df-br 4290  df-opab 4348  df-mpt 4349  df-tr 4383  df-eprel 4628  df-id 4632  df-po 4637  df-so 4638  df-fr 4675  df-we 4677  df-ord 4718  df-on 4719  df-lim 4720  df-suc 4721  df-xp 4842  df-rel 4843  df-cnv 4844  df-co 4845  df-dm 4846  df-rn 4847  df-res 4848  df-ima 4849  df-iota 5378  df-fun 5417  df-fn 5418  df-f 5419  df-f1 5420  df-fo 5421  df-f1o 5422  df-fv 5423  df-riota 6049  df-ov 6093  df-oprab 6094  df-mpt2 6095  df-om 6476  df-1st 6576  df-2nd 6577  df-tpos 6744  df-recs 6828  df-rdg 6862  df-er 7097  df-map 7212  df-ixp 7260  df-en 7307  df-dom 7308  df-sdom 7309  df-pnf 9416  df-mnf 9417  df-xr 9418  df-ltxr 9419  df-le 9420  df-sub 9593  df-neg 9594  df-nn 10319  df-2 10376  df-3 10377  df-4 10378  df-5 10379  df-6 10380  df-7 10381  df-8 10382  df-9 10383  df-10 10384  df-n0 10576  df-z 10643  df-dec 10752  df-ndx 14173  df-slot 14174  df-base 14175  df-sets 14176  df-hom 14258  df-cco 14259  df-cat 14602  df-cid 14603  df-oppc 14647  df-func 14764
This theorem is referenced by:  fulloppc  14828  fthoppc  14829  yonedalem1  15078  yonedalem21  15079  yonedalem22  15084
  Copyright terms: Public domain W3C validator