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

Theorem funcoppc 15780
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 2451 . . 3  |-  ( Base `  C )  =  (
Base `  C )
31, 2oppcbas 15623 . 2  |-  ( Base `  C )  =  (
Base `  O )
4 funcoppc.p . . 3  |-  P  =  (oppCat `  D )
5 eqid 2451 . . 3  |-  ( Base `  D )  =  (
Base `  D )
64, 5oppcbas 15623 . 2  |-  ( Base `  D )  =  (
Base `  P )
7 eqid 2451 . 2  |-  ( Hom  `  O )  =  ( Hom  `  O )
8 eqid 2451 . 2  |-  ( Hom  `  P )  =  ( Hom  `  P )
9 eqid 2451 . 2  |-  ( Id
`  O )  =  ( Id `  O
)
10 eqid 2451 . 2  |-  ( Id
`  P )  =  ( Id `  P
)
11 eqid 2451 . 2  |-  (comp `  O )  =  (comp `  O )
12 eqid 2451 . 2  |-  (comp `  P )  =  (comp `  P )
13 funcoppc.f . . . . . 6  |-  ( ph  ->  F ( C  Func  D ) G )
14 df-br 4403 . . . . . 6  |-  ( F ( C  Func  D
) G  <->  <. F ,  G >.  e.  ( C 
Func  D ) )
1513, 14sylib 200 . . . . 5  |-  ( ph  -> 
<. F ,  G >.  e.  ( C  Func  D
) )
16 funcrcl 15768 . . . . 5  |-  ( <. F ,  G >.  e.  ( C  Func  D
)  ->  ( C  e.  Cat  /\  D  e. 
Cat ) )
1715, 16syl 17 . . . 4  |-  ( ph  ->  ( C  e.  Cat  /\  D  e.  Cat )
)
1817simpld 461 . . 3  |-  ( ph  ->  C  e.  Cat )
191oppccat 15627 . . 3  |-  ( C  e.  Cat  ->  O  e.  Cat )
2018, 19syl 17 . 2  |-  ( ph  ->  O  e.  Cat )
2117simprd 465 . . 3  |-  ( ph  ->  D  e.  Cat )
224oppccat 15627 . . 3  |-  ( D  e.  Cat  ->  P  e.  Cat )
2321, 22syl 17 . 2  |-  ( ph  ->  P  e.  Cat )
242, 5, 13funcf1 15771 . 2  |-  ( ph  ->  F : ( Base `  C ) --> ( Base `  D ) )
252, 13funcfn2 15774 . . 3  |-  ( ph  ->  G  Fn  ( (
Base `  C )  X.  ( Base `  C
) ) )
26 tposfn 7002 . . 3  |-  ( G  Fn  ( ( Base `  C )  X.  ( Base `  C ) )  -> tpos  G  Fn  (
( Base `  C )  X.  ( Base `  C
) ) )
2725, 26syl 17 . 2  |-  ( ph  -> tpos  G  Fn  ( (
Base `  C )  X.  ( Base `  C
) ) )
28 eqid 2451 . . . 4  |-  ( Hom  `  C )  =  ( Hom  `  C )
29 eqid 2451 . . . 4  |-  ( Hom  `  D )  =  ( Hom  `  D )
3013adantr 467 . . . 4  |-  ( (
ph  /\  ( x  e.  ( Base `  C
)  /\  y  e.  ( Base `  C )
) )  ->  F
( C  Func  D
) G )
31 simprr 766 . . . 4  |-  ( (
ph  /\  ( x  e.  ( Base `  C
)  /\  y  e.  ( Base `  C )
) )  ->  y  e.  ( Base `  C
) )
32 simprl 764 . . . 4  |-  ( (
ph  /\  ( x  e.  ( Base `  C
)  /\  y  e.  ( Base `  C )
) )  ->  x  e.  ( Base `  C
) )
332, 28, 29, 30, 31, 32funcf2 15773 . . 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 6988 . . . . 5  |-  ( xtpos 
G y )  =  ( y G x )
3534feq1i 5720 . . . 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 15620 . . . . 5  |-  ( x ( Hom  `  O
) y )  =  ( y ( Hom  `  C ) x )
3729, 4oppchom 15620 . . . . 5  |-  ( ( F `  x ) ( Hom  `  P
) ( F `  y ) )  =  ( ( F `  y ) ( Hom  `  D ) ( F `
 x ) )
3836, 37feq23i 5722 . . . 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 253 . . 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 216 . 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 2451 . . . 4  |-  ( Id
`  C )  =  ( Id `  C
)
42 eqid 2451 . . . 4  |-  ( Id
`  D )  =  ( Id `  D
)
4313adantr 467 . . . 4  |-  ( (
ph  /\  x  e.  ( Base `  C )
)  ->  F ( C  Func  D ) G )
44 simpr 463 . . . 4  |-  ( (
ph  /\  x  e.  ( Base `  C )
)  ->  x  e.  ( Base `  C )
)
452, 41, 42, 43, 44funcid 15775 . . 3  |-  ( (
ph  /\  x  e.  ( Base `  C )
)  ->  ( (
x G x ) `
 ( ( Id
`  C ) `  x ) )  =  ( ( Id `  D ) `  ( F `  x )
) )
46 ovtpos 6988 . . . . 5  |-  ( xtpos 
G x )  =  ( x G x )
4746a1i 11 . . . 4  |-  ( (
ph  /\  x  e.  ( Base `  C )
)  ->  ( xtpos  G x )  =  ( x G x ) )
481, 41oppcid 15626 . . . . . . 7  |-  ( C  e.  Cat  ->  ( Id `  O )  =  ( Id `  C
) )
4918, 48syl 17 . . . . . 6  |-  ( ph  ->  ( Id `  O
)  =  ( Id
`  C ) )
5049adantr 467 . . . . 5  |-  ( (
ph  /\  x  e.  ( Base `  C )
)  ->  ( Id `  O )  =  ( Id `  C ) )
5150fveq1d 5867 . . . 4  |-  ( (
ph  /\  x  e.  ( Base `  C )
)  ->  ( ( Id `  O ) `  x )  =  ( ( Id `  C
) `  x )
)
5247, 51fveq12d 5871 . . 3  |-  ( (
ph  /\  x  e.  ( Base `  C )
)  ->  ( (
xtpos  G x ) `
 ( ( Id
`  O ) `  x ) )  =  ( ( x G x ) `  (
( Id `  C
) `  x )
) )
534, 42oppcid 15626 . . . . . 6  |-  ( D  e.  Cat  ->  ( Id `  P )  =  ( Id `  D
) )
5421, 53syl 17 . . . . 5  |-  ( ph  ->  ( Id `  P
)  =  ( Id
`  D ) )
5554adantr 467 . . . 4  |-  ( (
ph  /\  x  e.  ( Base `  C )
)  ->  ( Id `  P )  =  ( Id `  D ) )
5655fveq1d 5867 . . 3  |-  ( (
ph  /\  x  e.  ( Base `  C )
)  ->  ( ( Id `  P ) `  ( F `  x ) )  =  ( ( Id `  D ) `
 ( F `  x ) ) )
5745, 52, 563eqtr4d 2495 . 2  |-  ( (
ph  /\  x  e.  ( Base `  C )
)  ->  ( (
xtpos  G x ) `
 ( ( Id
`  O ) `  x ) )  =  ( ( Id `  P ) `  ( F `  x )
) )
58 eqid 2451 . . . . 5  |-  (comp `  C )  =  (comp `  C )
59 eqid 2451 . . . . 5  |-  (comp `  D )  =  (comp `  D )
60133ad2ant1 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 ) ) )  ->  F ( C  Func  D ) G )
61 simp23 1043 . . . . 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 1042 . . . . 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 1041 . . . . 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 1037 . . . . . 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 15620 . . . . . 6  |-  ( y ( Hom  `  O
) z )  =  ( z ( Hom  `  C ) y )
6664, 65syl6eleq 2539 . . . . 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 1036 . . . . . 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 2539 . . . . 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 15776 . . . 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 15622 . . . . 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 5869 . . . 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 1029 . . . . . 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 6023 . . . . 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 6023 . . . . 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 6023 . . . . 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 15622 . . . 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 2495 . . 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 6988 . . . 4  |-  ( xtpos 
G z )  =  ( z G x )
7978fveq1i 5866 . . 3  |-  ( ( xtpos  G z ) `
 ( g (
<. x ,  y >.
(comp `  O )
z ) f ) )  =  ( ( z G x ) `
 ( g (
<. x ,  y >.
(comp `  O )
z ) f ) )
80 ovtpos 6988 . . . . 5  |-  ( ytpos 
G z )  =  ( z G y )
8180fveq1i 5866 . . . 4  |-  ( ( ytpos  G z ) `
 g )  =  ( ( z G y ) `  g
)
8234fveq1i 5866 . . . 4  |-  ( ( xtpos  G y ) `
 f )  =  ( ( y G x ) `  f
)
8381, 82oveq12i 6302 . . 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 2510 . 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 15770 1  |-  ( ph  ->  F ( O  Func  P )tpos  G )
Colors of variables: wff setvar class
Syntax hints:    -> wi 4    /\ wa 371    /\ w3a 985    = wceq 1444    e. wcel 1887   <.cop 3974   class class class wbr 4402    X. cxp 4832    Fn wfn 5577   -->wf 5578   ` cfv 5582  (class class class)co 6290  tpos ctpos 6972   Basecbs 15121   Hom chom 15201  compcco 15202   Catccat 15570   Idccid 15571  oppCatcoppc 15616    Func cfunc 15759
This theorem was proved from axioms:  ax-mp 5  ax-1 6  ax-2 7  ax-3 8  ax-gen 1669  ax-4 1682  ax-5 1758  ax-6 1805  ax-7 1851  ax-8 1889  ax-9 1896  ax-10 1915  ax-11 1920  ax-12 1933  ax-13 2091  ax-ext 2431  ax-rep 4515  ax-sep 4525  ax-nul 4534  ax-pow 4581  ax-pr 4639  ax-un 6583  ax-cnex 9595  ax-resscn 9596  ax-1cn 9597  ax-icn 9598  ax-addcl 9599  ax-addrcl 9600  ax-mulcl 9601  ax-mulrcl 9602  ax-mulcom 9603  ax-addass 9604  ax-mulass 9605  ax-distr 9606  ax-i2m1 9607  ax-1ne0 9608  ax-1rid 9609  ax-rnegex 9610  ax-rrecex 9611  ax-cnre 9612  ax-pre-lttri 9613  ax-pre-lttrn 9614  ax-pre-ltadd 9615  ax-pre-mulgt0 9616
This theorem depends on definitions:  df-bi 189  df-or 372  df-an 373  df-3or 986  df-3an 987  df-tru 1447  df-ex 1664  df-nf 1668  df-sb 1798  df-eu 2303  df-mo 2304  df-clab 2438  df-cleq 2444  df-clel 2447  df-nfc 2581  df-ne 2624  df-nel 2625  df-ral 2742  df-rex 2743  df-reu 2744  df-rmo 2745  df-rab 2746  df-v 3047  df-sbc 3268  df-csb 3364  df-dif 3407  df-un 3409  df-in 3411  df-ss 3418  df-pss 3420  df-nul 3732  df-if 3882  df-pw 3953  df-sn 3969  df-pr 3971  df-tp 3973  df-op 3975  df-uni 4199  df-iun 4280  df-br 4403  df-opab 4462  df-mpt 4463  df-tr 4498  df-eprel 4745  df-id 4749  df-po 4755  df-so 4756  df-fr 4793  df-we 4795  df-xp 4840  df-rel 4841  df-cnv 4842  df-co 4843  df-dm 4844  df-rn 4845  df-res 4846  df-ima 4847  df-pred 5380  df-ord 5426  df-on 5427  df-lim 5428  df-suc 5429  df-iota 5546  df-fun 5584  df-fn 5585  df-f 5586  df-f1 5587  df-fo 5588  df-f1o 5589  df-fv 5590  df-riota 6252  df-ov 6293  df-oprab 6294  df-mpt2 6295  df-om 6693  df-1st 6793  df-2nd 6794  df-tpos 6973  df-wrecs 7028  df-recs 7090  df-rdg 7128  df-er 7363  df-map 7474  df-ixp 7523  df-en 7570  df-dom 7571  df-sdom 7572  df-pnf 9677  df-mnf 9678  df-xr 9679  df-ltxr 9680  df-le 9681  df-sub 9862  df-neg 9863  df-nn 10610  df-2 10668  df-3 10669  df-4 10670  df-5 10671  df-6 10672  df-7 10673  df-8 10674  df-9 10675  df-10 10676  df-n0 10870  df-z 10938  df-dec 11052  df-ndx 15124  df-slot 15125  df-base 15126  df-sets 15127  df-hom 15214  df-cco 15215  df-cat 15574  df-cid 15575  df-oppc 15617  df-func 15763
This theorem is referenced by:  fulloppc  15827  fthoppc  15828  yonedalem1  16157  yonedalem21  16158  yonedalem22  16163
  Copyright terms: Public domain W3C validator