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

Theorem funcoppc 15363
Description: A functor on categories yields a functor on the opposite categories (in the same direction), see definition 3.41 of [Adamek] p. 39. (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 2454 . . 3  |-  ( Base `  C )  =  (
Base `  C )
31, 2oppcbas 15206 . 2  |-  ( Base `  C )  =  (
Base `  O )
4 funcoppc.p . . 3  |-  P  =  (oppCat `  D )
5 eqid 2454 . . 3  |-  ( Base `  D )  =  (
Base `  D )
64, 5oppcbas 15206 . 2  |-  ( Base `  D )  =  (
Base `  P )
7 eqid 2454 . 2  |-  ( Hom  `  O )  =  ( Hom  `  O )
8 eqid 2454 . 2  |-  ( Hom  `  P )  =  ( Hom  `  P )
9 eqid 2454 . 2  |-  ( Id
`  O )  =  ( Id `  O
)
10 eqid 2454 . 2  |-  ( Id
`  P )  =  ( Id `  P
)
11 eqid 2454 . 2  |-  (comp `  O )  =  (comp `  O )
12 eqid 2454 . 2  |-  (comp `  P )  =  (comp `  P )
13 funcoppc.f . . . . . 6  |-  ( ph  ->  F ( C  Func  D ) G )
14 df-br 4440 . . . . . 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 15351 . . . . 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 457 . . 3  |-  ( ph  ->  C  e.  Cat )
191oppccat 15210 . . 3  |-  ( C  e.  Cat  ->  O  e.  Cat )
2018, 19syl 16 . 2  |-  ( ph  ->  O  e.  Cat )
2117simprd 461 . . 3  |-  ( ph  ->  D  e.  Cat )
224oppccat 15210 . . 3  |-  ( D  e.  Cat  ->  P  e.  Cat )
2321, 22syl 16 . 2  |-  ( ph  ->  P  e.  Cat )
242, 5, 13funcf1 15354 . 2  |-  ( ph  ->  F : ( Base `  C ) --> ( Base `  D ) )
252, 13funcfn2 15357 . . 3  |-  ( ph  ->  G  Fn  ( (
Base `  C )  X.  ( Base `  C
) ) )
26 tposfn 6976 . . 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 2454 . . . 4  |-  ( Hom  `  C )  =  ( Hom  `  C )
29 eqid 2454 . . . 4  |-  ( Hom  `  D )  =  ( Hom  `  D )
3013adantr 463 . . . 4  |-  ( (
ph  /\  ( x  e.  ( Base `  C
)  /\  y  e.  ( Base `  C )
) )  ->  F
( C  Func  D
) G )
31 simprr 755 . . . 4  |-  ( (
ph  /\  ( x  e.  ( Base `  C
)  /\  y  e.  ( Base `  C )
) )  ->  y  e.  ( Base `  C
) )
32 simprl 754 . . . 4  |-  ( (
ph  /\  ( x  e.  ( Base `  C
)  /\  y  e.  ( Base `  C )
) )  ->  x  e.  ( Base `  C
) )
332, 28, 29, 30, 31, 32funcf2 15356 . . 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 6962 . . . . 5  |-  ( xtpos 
G y )  =  ( y G x )
3534feq1i 5705 . . . 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 15203 . . . . 5  |-  ( x ( Hom  `  O
) y )  =  ( y ( Hom  `  C ) x )
3729, 4oppchom 15203 . . . . 5  |-  ( ( F `  x ) ( Hom  `  P
) ( F `  y ) )  =  ( ( F `  y ) ( Hom  `  D ) ( F `
 x ) )
3836, 37feq23i 5707 . . . 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 2454 . . . 4  |-  ( Id
`  C )  =  ( Id `  C
)
42 eqid 2454 . . . 4  |-  ( Id
`  D )  =  ( Id `  D
)
4313adantr 463 . . . 4  |-  ( (
ph  /\  x  e.  ( Base `  C )
)  ->  F ( C  Func  D ) G )
44 simpr 459 . . . 4  |-  ( (
ph  /\  x  e.  ( Base `  C )
)  ->  x  e.  ( Base `  C )
)
452, 41, 42, 43, 44funcid 15358 . . 3  |-  ( (
ph  /\  x  e.  ( Base `  C )
)  ->  ( (
x G x ) `
 ( ( Id
`  C ) `  x ) )  =  ( ( Id `  D ) `  ( F `  x )
) )
46 ovtpos 6962 . . . . 5  |-  ( xtpos 
G x )  =  ( x G x )
4746a1i 11 . . . 4  |-  ( (
ph  /\  x  e.  ( Base `  C )
)  ->  ( xtpos  G x )  =  ( x G x ) )
481, 41oppcid 15209 . . . . . . 7  |-  ( C  e.  Cat  ->  ( Id `  O )  =  ( Id `  C
) )
4918, 48syl 16 . . . . . 6  |-  ( ph  ->  ( Id `  O
)  =  ( Id
`  C ) )
5049adantr 463 . . . . 5  |-  ( (
ph  /\  x  e.  ( Base `  C )
)  ->  ( Id `  O )  =  ( Id `  C ) )
5150fveq1d 5850 . . . 4  |-  ( (
ph  /\  x  e.  ( Base `  C )
)  ->  ( ( Id `  O ) `  x )  =  ( ( Id `  C
) `  x )
)
5247, 51fveq12d 5854 . . 3  |-  ( (
ph  /\  x  e.  ( Base `  C )
)  ->  ( (
xtpos  G x ) `
 ( ( Id
`  O ) `  x ) )  =  ( ( x G x ) `  (
( Id `  C
) `  x )
) )
534, 42oppcid 15209 . . . . . 6  |-  ( D  e.  Cat  ->  ( Id `  P )  =  ( Id `  D
) )
5421, 53syl 16 . . . . 5  |-  ( ph  ->  ( Id `  P
)  =  ( Id
`  D ) )
5554adantr 463 . . . 4  |-  ( (
ph  /\  x  e.  ( Base `  C )
)  ->  ( Id `  P )  =  ( Id `  D ) )
5655fveq1d 5850 . . 3  |-  ( (
ph  /\  x  e.  ( Base `  C )
)  ->  ( ( Id `  P ) `  ( F `  x ) )  =  ( ( Id `  D ) `
 ( F `  x ) ) )
5745, 52, 563eqtr4d 2505 . 2  |-  ( (
ph  /\  x  e.  ( Base `  C )
)  ->  ( (
xtpos  G x ) `
 ( ( Id
`  O ) `  x ) )  =  ( ( Id `  P ) `  ( F `  x )
) )
58 eqid 2454 . . . . 5  |-  (comp `  C )  =  (comp `  C )
59 eqid 2454 . . . . 5  |-  (comp `  D )  =  (comp `  D )
60133ad2ant1 1015 . . . . 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 1029 . . . . 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 1028 . . . . 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 1027 . . . . 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 1023 . . . . . 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 15203 . . . . . 6  |-  ( y ( Hom  `  O
) z )  =  ( z ( Hom  `  C ) y )
6664, 65syl6eleq 2552 . . . . 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 1022 . . . . . 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 2552 . . . . 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 15359 . . . 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 15205 . . . . 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 5852 . . . 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 1015 . . . . . 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 6008 . . . . 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 6008 . . . . 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 6008 . . . . 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 15205 . . . 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 2505 . . 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 6962 . . . 4  |-  ( xtpos 
G z )  =  ( z G x )
7978fveq1i 5849 . . 3  |-  ( ( xtpos  G z ) `
 ( g (
<. x ,  y >.
(comp `  O )
z ) f ) )  =  ( ( z G x ) `
 ( g (
<. x ,  y >.
(comp `  O )
z ) f ) )
80 ovtpos 6962 . . . . 5  |-  ( ytpos 
G z )  =  ( z G y )
8180fveq1i 5849 . . . 4  |-  ( ( ytpos  G z ) `
 g )  =  ( ( z G y ) `  g
)
8234fveq1i 5849 . . . 4  |-  ( ( xtpos  G y ) `
 f )  =  ( ( y G x ) `  f
)
8381, 82oveq12i 6282 . . 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 2520 . 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 15353 1  |-  ( ph  ->  F ( O  Func  P )tpos  G )
Colors of variables: wff setvar class
Syntax hints:    -> wi 4    /\ wa 367    /\ w3a 971    = wceq 1398    e. wcel 1823   <.cop 4022   class class class wbr 4439    X. cxp 4986    Fn wfn 5565   -->wf 5566   ` cfv 5570  (class class class)co 6270  tpos ctpos 6946   Basecbs 14716   Hom chom 14795  compcco 14796   Catccat 15153   Idccid 15154  oppCatcoppc 15199    Func cfunc 15342
This theorem was proved from axioms:  ax-mp 5  ax-1 6  ax-2 7  ax-3 8  ax-gen 1623  ax-4 1636  ax-5 1709  ax-6 1752  ax-7 1795  ax-8 1825  ax-9 1827  ax-10 1842  ax-11 1847  ax-12 1859  ax-13 2004  ax-ext 2432  ax-rep 4550  ax-sep 4560  ax-nul 4568  ax-pow 4615  ax-pr 4676  ax-un 6565  ax-cnex 9537  ax-resscn 9538  ax-1cn 9539  ax-icn 9540  ax-addcl 9541  ax-addrcl 9542  ax-mulcl 9543  ax-mulrcl 9544  ax-mulcom 9545  ax-addass 9546  ax-mulass 9547  ax-distr 9548  ax-i2m1 9549  ax-1ne0 9550  ax-1rid 9551  ax-rnegex 9552  ax-rrecex 9553  ax-cnre 9554  ax-pre-lttri 9555  ax-pre-lttrn 9556  ax-pre-ltadd 9557  ax-pre-mulgt0 9558
This theorem depends on definitions:  df-bi 185  df-or 368  df-an 369  df-3or 972  df-3an 973  df-tru 1401  df-ex 1618  df-nf 1622  df-sb 1745  df-eu 2288  df-mo 2289  df-clab 2440  df-cleq 2446  df-clel 2449  df-nfc 2604  df-ne 2651  df-nel 2652  df-ral 2809  df-rex 2810  df-reu 2811  df-rmo 2812  df-rab 2813  df-v 3108  df-sbc 3325  df-csb 3421  df-dif 3464  df-un 3466  df-in 3468  df-ss 3475  df-pss 3477  df-nul 3784  df-if 3930  df-pw 4001  df-sn 4017  df-pr 4019  df-tp 4021  df-op 4023  df-uni 4236  df-iun 4317  df-br 4440  df-opab 4498  df-mpt 4499  df-tr 4533  df-eprel 4780  df-id 4784  df-po 4789  df-so 4790  df-fr 4827  df-we 4829  df-ord 4870  df-on 4871  df-lim 4872  df-suc 4873  df-xp 4994  df-rel 4995  df-cnv 4996  df-co 4997  df-dm 4998  df-rn 4999  df-res 5000  df-ima 5001  df-iota 5534  df-fun 5572  df-fn 5573  df-f 5574  df-f1 5575  df-fo 5576  df-f1o 5577  df-fv 5578  df-riota 6232  df-ov 6273  df-oprab 6274  df-mpt2 6275  df-om 6674  df-1st 6773  df-2nd 6774  df-tpos 6947  df-recs 7034  df-rdg 7068  df-er 7303  df-map 7414  df-ixp 7463  df-en 7510  df-dom 7511  df-sdom 7512  df-pnf 9619  df-mnf 9620  df-xr 9621  df-ltxr 9622  df-le 9623  df-sub 9798  df-neg 9799  df-nn 10532  df-2 10590  df-3 10591  df-4 10592  df-5 10593  df-6 10594  df-7 10595  df-8 10596  df-9 10597  df-10 10598  df-n0 10792  df-z 10861  df-dec 10977  df-ndx 14719  df-slot 14720  df-base 14721  df-sets 14722  df-hom 14808  df-cco 14809  df-cat 15157  df-cid 15158  df-oppc 15200  df-func 15346
This theorem is referenced by:  fulloppc  15410  fthoppc  15411  yonedalem1  15740  yonedalem21  15741  yonedalem22  15746
  Copyright terms: Public domain W3C validator