Users' Mathboxes Mathbox for Frédéric Liné < Previous   Next >
Nearby theorems
Mirrors  >  Home  >  MPE Home  >  Th. List  >   Mathboxes  >  dualcat2 Unicode version

Theorem dualcat2 25784
Description: The dual of a category is a category. Joy of cats 3.5 (Contributed by FL, 4-Apr-2010.) (Proof shortened by Mario Carneiro, 10-Sep-2015.)
Hypotheses
Ref Expression
dualcat2.1  |-  D  =  ( dom_ `  T
)
dualcat2.2  |-  C  =  ( cod_ `  T
)
dualcat2.3  |-  J  =  ( id_ `  T
)
dualcat2.4  |-  R  =  ( o_ `  T
)
Assertion
Ref Expression
dualcat2  |-  ( T  e.  Cat OLD  ->  <. <. C ,  D >. , 
<. J , tpos  R >. >.  e.  Cat OLD  )

Proof of Theorem dualcat2
Dummy variables  a 
f  g  h are mutually distinct and distinct from all other variables.
StepHypRef Expression
1 catded 25764 . . . 4  |-  ( T  e.  Cat OLD  ->  T  e.  Ded )
2 dualcat2.1 . . . . 5  |-  D  =  ( dom_ `  T
)
3 dualcat2.2 . . . . 5  |-  C  =  ( cod_ `  T
)
4 dualcat2.3 . . . . 5  |-  J  =  ( id_ `  T
)
5 dualcat2.4 . . . . 5  |-  R  =  ( o_ `  T
)
62, 3, 4, 5dualded 25783 . . . 4  |-  ( T  e.  Ded  ->  <. <. C ,  D >. ,  <. J , tpos  R
>. >.  e.  Ded )
71, 6syl 15 . . 3  |-  ( T  e.  Cat OLD  ->  <. <. C ,  D >. , 
<. J , tpos  R >. >.  e.  Ded )
8 3anrev 945 . . . . . . 7  |-  ( ( h  e.  dom  D  /\  g  e.  dom  D  /\  f  e.  dom  D )  <->  ( f  e. 
dom  D  /\  g  e.  dom  D  /\  h  e.  dom  D ) )
9 dedalg 25743 . . . . . . . . . 10  |-  ( T  e.  Ded  ->  T  e.  Alg  )
102, 3dcsda 25733 . . . . . . . . . 10  |-  ( T  e.  Alg  ->  dom  D  =  dom  C )
111, 9, 103syl 18 . . . . . . . . 9  |-  ( T  e.  Cat OLD  ->  dom 
D  =  dom  C
)
1211eleq2d 2350 . . . . . . . 8  |-  ( T  e.  Cat OLD  ->  ( f  e.  dom  D  <->  f  e.  dom  C ) )
1311eleq2d 2350 . . . . . . . 8  |-  ( T  e.  Cat OLD  ->  ( g  e.  dom  D  <->  g  e.  dom  C ) )
1411eleq2d 2350 . . . . . . . 8  |-  ( T  e.  Cat OLD  ->  ( h  e.  dom  D  <->  h  e.  dom  C ) )
1512, 13, 143anbi123d 1252 . . . . . . 7  |-  ( T  e.  Cat OLD  ->  ( ( f  e.  dom  D  /\  g  e.  dom  D  /\  h  e.  dom  D )  <->  ( f  e. 
dom  C  /\  g  e.  dom  C  /\  h  e.  dom  C ) ) )
168, 15syl5bb 248 . . . . . 6  |-  ( T  e.  Cat OLD  ->  ( ( h  e.  dom  D  /\  g  e.  dom  D  /\  f  e.  dom  D )  <->  ( f  e. 
dom  C  /\  g  e.  dom  C  /\  h  e.  dom  C ) ) )
1716biimpar 471 . . . . 5  |-  ( ( T  e.  Cat OLD  /\  ( f  e.  dom  C  /\  g  e.  dom  C  /\  h  e.  dom  C ) )  ->  (
h  e.  dom  D  /\  g  e.  dom  D  /\  f  e.  dom  D ) )
18 eqid 2283 . . . . . . . 8  |-  dom  D  =  dom  D
1918, 2, 3, 5cmpasso 25773 . . . . . . 7  |-  ( ( T  e.  Cat OLD  /\  ( h  e.  dom  D  /\  g  e.  dom  D  /\  f  e.  dom  D ) )  ->  (
( ( D `  f )  =  ( C `  g )  /\  ( D `  g )  =  ( C `  h ) )  ->  ( f R ( g R h ) )  =  ( ( f R g ) R h ) ) )
20 eqcom 2285 . . . . . . . 8  |-  ( ( C `  g )  =  ( D `  f )  <->  ( D `  f )  =  ( C `  g ) )
21 eqcom 2285 . . . . . . . 8  |-  ( ( C `  h )  =  ( D `  g )  <->  ( D `  g )  =  ( C `  h ) )
2220, 21anbi12i 678 . . . . . . 7  |-  ( ( ( C `  g
)  =  ( D `
 f )  /\  ( C `  h )  =  ( D `  g ) )  <->  ( ( D `  f )  =  ( C `  g )  /\  ( D `  g )  =  ( C `  h ) ) )
23 ovtpos 6249 . . . . . . . . . 10  |-  ( htpos 
R g )  =  ( g R h )
2423oveq1i 5868 . . . . . . . . 9  |-  ( ( htpos  R g )tpos 
R f )  =  ( ( g R h )tpos  R f )
25 ovtpos 6249 . . . . . . . . 9  |-  ( ( g R h )tpos 
R f )  =  ( f R ( g R h ) )
2624, 25eqtri 2303 . . . . . . . 8  |-  ( ( htpos  R g )tpos 
R f )  =  ( f R ( g R h ) )
27 ovtpos 6249 . . . . . . . . . 10  |-  ( gtpos 
R f )  =  ( f R g )
2827oveq2i 5869 . . . . . . . . 9  |-  ( htpos 
R ( gtpos  R
f ) )  =  ( htpos  R ( f R g ) )
29 ovtpos 6249 . . . . . . . . 9  |-  ( htpos 
R ( f R g ) )  =  ( ( f R g ) R h )
3028, 29eqtri 2303 . . . . . . . 8  |-  ( htpos 
R ( gtpos  R
f ) )  =  ( ( f R g ) R h )
3126, 30eqeq12i 2296 . . . . . . 7  |-  ( ( ( htpos  R g )tpos  R f )  =  ( htpos  R
( gtpos  R f ) )  <->  ( f R ( g R h ) )  =  ( ( f R g ) R h ) )
3219, 22, 313imtr4g 261 . . . . . 6  |-  ( ( T  e.  Cat OLD  /\  ( h  e.  dom  D  /\  g  e.  dom  D  /\  f  e.  dom  D ) )  ->  (
( ( C `  g )  =  ( D `  f )  /\  ( C `  h )  =  ( D `  g ) )  ->  ( (
htpos  R g )tpos 
R f )  =  ( htpos  R ( gtpos  R f ) ) ) )
33 ancom 437 . . . . . 6  |-  ( ( ( C `  h
)  =  ( D `
 g )  /\  ( C `  g )  =  ( D `  f ) )  <->  ( ( C `  g )  =  ( D `  f )  /\  ( C `  h )  =  ( D `  g ) ) )
34 eqcom 2285 . . . . . 6  |-  ( ( htpos  R ( gtpos 
R f ) )  =  ( ( htpos 
R g )tpos  R
f )  <->  ( (
htpos  R g )tpos 
R f )  =  ( htpos  R ( gtpos  R f ) ) )
3532, 33, 343imtr4g 261 . . . . 5  |-  ( ( T  e.  Cat OLD  /\  ( h  e.  dom  D  /\  g  e.  dom  D  /\  f  e.  dom  D ) )  ->  (
( ( C `  h )  =  ( D `  g )  /\  ( C `  g )  =  ( D `  f ) )  ->  ( htpos  R ( gtpos  R f ) )  =  ( ( htpos  R g )tpos  R f ) ) )
3617, 35syldan 456 . . . 4  |-  ( ( T  e.  Cat OLD  /\  ( f  e.  dom  C  /\  g  e.  dom  C  /\  h  e.  dom  C ) )  ->  (
( ( C `  h )  =  ( D `  g )  /\  ( C `  g )  =  ( D `  f ) )  ->  ( htpos  R ( gtpos  R f ) )  =  ( ( htpos  R g )tpos  R f ) ) )
3736ralrimivvva 2636 . . 3  |-  ( T  e.  Cat OLD  ->  A. f  e.  dom  C A. g  e.  dom  C A. h  e.  dom  C ( ( ( C `
 h )  =  ( D `  g
)  /\  ( C `  g )  =  ( D `  f ) )  ->  ( htpos  R ( gtpos  R f ) )  =  ( ( htpos  R g )tpos  R f ) ) )
387, 37jca 518 . 2  |-  ( T  e.  Cat OLD  ->  (
<. <. C ,  D >. ,  <. J , tpos  R >. >.  e.  Ded  /\  A. f  e.  dom  C A. g  e.  dom  C A. h  e.  dom  C ( ( ( C `
 h )  =  ( D `  g
)  /\  ( C `  g )  =  ( D `  f ) )  ->  ( htpos  R ( gtpos  R f ) )  =  ( ( htpos  R g )tpos  R f ) ) ) )
3912anbi2d 684 . . . . 5  |-  ( T  e.  Cat OLD  ->  ( ( a  e.  dom  J  /\  f  e.  dom  D )  <->  ( a  e. 
dom  J  /\  f  e.  dom  C ) ) )
40 eqid 2283 . . . . . . . 8  |-  dom  J  =  dom  J
4118, 2, 40, 4, 5cmpidb 25775 . . . . . . 7  |-  ( ( T  e.  Cat OLD  /\  a  e.  dom  J  /\  f  e.  dom  D )  ->  ( ( D `  f )  =  a  ->  ( f R ( J `  a ) )  =  f ) )
42 ovtpos 6249 . . . . . . . 8  |-  ( ( J `  a )tpos 
R f )  =  ( f R ( J `  a ) )
4342eqeq1i 2290 . . . . . . 7  |-  ( ( ( J `  a
)tpos  R f )  =  f  <->  ( f R ( J `  a ) )  =  f )
4441, 43syl6ibr 218 . . . . . 6  |-  ( ( T  e.  Cat OLD  /\  a  e.  dom  J  /\  f  e.  dom  D )  ->  ( ( D `  f )  =  a  ->  ( ( J `  a )tpos 
R f )  =  f ) )
45443expib 1154 . . . . 5  |-  ( T  e.  Cat OLD  ->  ( ( a  e.  dom  J  /\  f  e.  dom  D )  ->  ( ( D `  f )  =  a  ->  ( ( J `  a )tpos 
R f )  =  f ) ) )
4639, 45sylbird 226 . . . 4  |-  ( T  e.  Cat OLD  ->  ( ( a  e.  dom  J  /\  f  e.  dom  C )  ->  ( ( D `  f )  =  a  ->  ( ( J `  a )tpos 
R f )  =  f ) ) )
4746ralrimivv 2634 . . 3  |-  ( T  e.  Cat OLD  ->  A. a  e.  dom  J A. f  e.  dom  C ( ( D `  f )  =  a  ->  ( ( J `
 a )tpos  R
f )  =  f ) )
4818, 2, 40, 4, 5, 3cmpida 25774 . . . . . . 7  |-  ( ( T  e.  Cat OLD  /\  a  e.  dom  J  /\  f  e.  dom  D )  ->  ( ( C `  f )  =  a  ->  ( ( J `  a ) R f )  =  f ) )
49 ovtpos 6249 . . . . . . . 8  |-  ( ftpos 
R ( J `  a ) )  =  ( ( J `  a ) R f )
5049eqeq1i 2290 . . . . . . 7  |-  ( ( ftpos  R ( J `
 a ) )  =  f  <->  ( ( J `  a ) R f )  =  f )
5148, 50syl6ibr 218 . . . . . 6  |-  ( ( T  e.  Cat OLD  /\  a  e.  dom  J  /\  f  e.  dom  D )  ->  ( ( C `  f )  =  a  ->  ( ftpos 
R ( J `  a ) )  =  f ) )
52513expib 1154 . . . . 5  |-  ( T  e.  Cat OLD  ->  ( ( a  e.  dom  J  /\  f  e.  dom  D )  ->  ( ( C `  f )  =  a  ->  ( ftpos 
R ( J `  a ) )  =  f ) ) )
5339, 52sylbird 226 . . . 4  |-  ( T  e.  Cat OLD  ->  ( ( a  e.  dom  J  /\  f  e.  dom  C )  ->  ( ( C `  f )  =  a  ->  ( ftpos 
R ( J `  a ) )  =  f ) ) )
5453ralrimivv 2634 . . 3  |-  ( T  e.  Cat OLD  ->  A. a  e.  dom  J A. f  e.  dom  C ( ( C `  f )  =  a  ->  ( ftpos  R
( J `  a
) )  =  f ) )
5547, 54jca 518 . 2  |-  ( T  e.  Cat OLD  ->  ( A. a  e.  dom  J A. f  e.  dom  C ( ( D `  f )  =  a  ->  ( ( J `
 a )tpos  R
f )  =  f )  /\  A. a  e.  dom  J A. f  e.  dom  C ( ( C `  f )  =  a  ->  (
ftpos  R ( J `
 a ) )  =  f ) ) )
56 fvex 5539 . . . 4  |-  ( cod_ `  T )  e.  _V
573, 56eqeltri 2353 . . 3  |-  C  e. 
_V
58 fvex 5539 . . . 4  |-  ( dom_ `  T )  e.  _V
592, 58eqeltri 2353 . . 3  |-  D  e. 
_V
60 fvex 5539 . . . 4  |-  ( id_ `  T )  e.  _V
614, 60eqeltri 2353 . . 3  |-  J  e. 
_V
62 fvex 5539 . . . . . 6  |-  ( o_
`  T )  e. 
_V
635, 62eqeltri 2353 . . . . 5  |-  R  e. 
_V
6463tposex 6268 . . . 4  |- tpos  R  e. 
_V
65 eqid 2283 . . . . 5  |-  dom  C  =  dom  C
6665, 40iscatOLD 25754 . . . 4  |-  ( ( ( C  e.  _V  /\  D  e.  _V  /\  J  e.  _V )  /\ tpos  R  e.  _V )  ->  ( <. <. C ,  D >. ,  <. J , tpos  R >. >.  e.  Cat OLD  <->  (
( <. <. C ,  D >. ,  <. J , tpos  R >. >.  e.  Ded  /\  A. f  e.  dom  C A. g  e.  dom  C A. h  e.  dom  C ( ( ( C `
 h )  =  ( D `  g
)  /\  ( C `  g )  =  ( D `  f ) )  ->  ( htpos  R ( gtpos  R f ) )  =  ( ( htpos  R g )tpos  R f ) ) )  /\  ( A. a  e.  dom  J A. f  e.  dom  C ( ( D `  f )  =  a  ->  ( ( J `
 a )tpos  R
f )  =  f )  /\  A. a  e.  dom  J A. f  e.  dom  C ( ( C `  f )  =  a  ->  (
ftpos  R ( J `
 a ) )  =  f ) ) ) ) )
6764, 66mpan2 652 . . 3  |-  ( ( C  e.  _V  /\  D  e.  _V  /\  J  e.  _V )  ->  ( <. <. C ,  D >. ,  <. J , tpos  R >. >.  e.  Cat OLD  <->  (
( <. <. C ,  D >. ,  <. J , tpos  R >. >.  e.  Ded  /\  A. f  e.  dom  C A. g  e.  dom  C A. h  e.  dom  C ( ( ( C `
 h )  =  ( D `  g
)  /\  ( C `  g )  =  ( D `  f ) )  ->  ( htpos  R ( gtpos  R f ) )  =  ( ( htpos  R g )tpos  R f ) ) )  /\  ( A. a  e.  dom  J A. f  e.  dom  C ( ( D `  f )  =  a  ->  ( ( J `
 a )tpos  R
f )  =  f )  /\  A. a  e.  dom  J A. f  e.  dom  C ( ( C `  f )  =  a  ->  (
ftpos  R ( J `
 a ) )  =  f ) ) ) ) )
6857, 59, 61, 67mp3an 1277 . 2  |-  ( <. <. C ,  D >. , 
<. J , tpos  R >. >.  e.  Cat OLD  <->  ( ( <. <. C ,  D >. ,  <. J , tpos  R >. >.  e.  Ded  /\  A. f  e.  dom  C A. g  e.  dom  C A. h  e.  dom  C ( ( ( C `
 h )  =  ( D `  g
)  /\  ( C `  g )  =  ( D `  f ) )  ->  ( htpos  R ( gtpos  R f ) )  =  ( ( htpos  R g )tpos  R f ) ) )  /\  ( A. a  e.  dom  J A. f  e.  dom  C ( ( D `  f )  =  a  ->  ( ( J `
 a )tpos  R
f )  =  f )  /\  A. a  e.  dom  J A. f  e.  dom  C ( ( C `  f )  =  a  ->  (
ftpos  R ( J `
 a ) )  =  f ) ) ) )
6938, 55, 68sylanbrc 645 1  |-  ( T  e.  Cat OLD  ->  <. <. C ,  D >. , 
<. J , tpos  R >. >.  e.  Cat OLD  )
Colors of variables: wff set class
Syntax hints:    -> wi 4    <-> wb 176    /\ wa 358    /\ w3a 934    = wceq 1623    e. wcel 1684   A.wral 2543   _Vcvv 2788   <.cop 3643   dom cdm 4689   ` cfv 5255  (class class class)co 5858  tpos ctpos 6233    Alg calg 25711   dom_cdom_ 25712   cod_ccod_ 25713   id_cid_ 25714   o_co_ 25715   Dedcded 25734    Cat
OLD ccatOLD 25752
This theorem was proved from axioms:  ax-1 5  ax-2 6  ax-3 7  ax-mp 8  ax-gen 1533  ax-5 1544  ax-17 1603  ax-9 1635  ax-8 1643  ax-13 1686  ax-14 1688  ax-6 1703  ax-7 1708  ax-11 1715  ax-12 1866  ax-ext 2264  ax-sep 4141  ax-nul 4149  ax-pow 4188  ax-pr 4214  ax-un 4512
This theorem depends on definitions:  df-bi 177  df-or 359  df-an 360  df-3an 936  df-tru 1310  df-ex 1529  df-nf 1532  df-sb 1630  df-eu 2147  df-mo 2148  df-clab 2270  df-cleq 2276  df-clel 2279  df-nfc 2408  df-ne 2448  df-ral 2548  df-rex 2549  df-rab 2552  df-v 2790  df-sbc 2992  df-dif 3155  df-un 3157  df-in 3159  df-ss 3166  df-nul 3456  df-if 3566  df-pw 3627  df-sn 3646  df-pr 3647  df-op 3649  df-uni 3828  df-int 3863  df-br 4024  df-opab 4078  df-mpt 4079  df-id 4309  df-xp 4695  df-rel 4696  df-cnv 4697  df-co 4698  df-dm 4699  df-rn 4700  df-res 4701  df-ima 4702  df-iota 5219  df-fun 5257  df-fn 5258  df-f 5259  df-fo 5261  df-fv 5263  df-ov 5861  df-1st 6122  df-2nd 6123  df-tpos 6234  df-alg 25716  df-dom_ 25717  df-cod_ 25718  df-id_ 25719  df-cmpa 25720  df-ded 25735  df-catOLD 25753
  Copyright terms: Public domain W3C validator