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

Theorem fuciso 14135
Description: A natural transformation is an isomorphism of functors iff all its components are isomorphisms. (Contributed by Mario Carneiro, 28-Jan-2017.)
Hypotheses
Ref Expression
fuciso.q  |-  Q  =  ( C FuncCat  D )
fuciso.b  |-  B  =  ( Base `  C
)
fuciso.n  |-  N  =  ( C Nat  D )
fuciso.f  |-  ( ph  ->  F  e.  ( C 
Func  D ) )
fuciso.g  |-  ( ph  ->  G  e.  ( C 
Func  D ) )
fuciso.i  |-  I  =  (  Iso  `  Q
)
fuciso.j  |-  J  =  (  Iso  `  D
)
Assertion
Ref Expression
fuciso  |-  ( ph  ->  ( A  e.  ( F I G )  <-> 
( A  e.  ( F N G )  /\  A. x  e.  B  ( A `  x )  e.  ( ( ( 1st `  F
) `  x ) J ( ( 1st `  G ) `  x
) ) ) ) )
Distinct variable groups:    x, A    x, B    x, C    x, D    x, I    x, F   
x, G    x, J    x, N    ph, x    x, Q

Proof of Theorem fuciso
Dummy variable  y is distinct from all other variables.
StepHypRef Expression
1 fuciso.q . . . . . 6  |-  Q  =  ( C FuncCat  D )
21fucbas 14120 . . . . 5  |-  ( C 
Func  D )  =  (
Base `  Q )
3 fuciso.n . . . . . 6  |-  N  =  ( C Nat  D )
41, 3fuchom 14121 . . . . 5  |-  N  =  (  Hom  `  Q
)
5 fuciso.i . . . . 5  |-  I  =  (  Iso  `  Q
)
6 fuciso.f . . . . . . . 8  |-  ( ph  ->  F  e.  ( C 
Func  D ) )
7 funcrcl 14023 . . . . . . . 8  |-  ( F  e.  ( C  Func  D )  ->  ( C  e.  Cat  /\  D  e. 
Cat ) )
86, 7syl 16 . . . . . . 7  |-  ( ph  ->  ( C  e.  Cat  /\  D  e.  Cat )
)
98simpld 446 . . . . . 6  |-  ( ph  ->  C  e.  Cat )
108simprd 450 . . . . . 6  |-  ( ph  ->  D  e.  Cat )
111, 9, 10fuccat 14130 . . . . 5  |-  ( ph  ->  Q  e.  Cat )
12 fuciso.g . . . . 5  |-  ( ph  ->  G  e.  ( C 
Func  D ) )
132, 4, 5, 11, 6, 12isohom 13960 . . . 4  |-  ( ph  ->  ( F I G )  C_  ( F N G ) )
1413sselda 3316 . . 3  |-  ( (
ph  /\  A  e.  ( F I G ) )  ->  A  e.  ( F N G ) )
15 eqid 2412 . . . . 5  |-  ( Base `  D )  =  (
Base `  D )
16 eqid 2412 . . . . 5  |-  (Inv `  D )  =  (Inv
`  D )
1710ad2antrr 707 . . . . 5  |-  ( ( ( ph  /\  A  e.  ( F I G ) )  /\  x  e.  B )  ->  D  e.  Cat )
18 fuciso.b . . . . . . . 8  |-  B  =  ( Base `  C
)
19 relfunc 14022 . . . . . . . . 9  |-  Rel  ( C  Func  D )
20 1st2ndbr 6363 . . . . . . . . 9  |-  ( ( Rel  ( C  Func  D )  /\  F  e.  ( C  Func  D
) )  ->  ( 1st `  F ) ( C  Func  D )
( 2nd `  F
) )
2119, 6, 20sylancr 645 . . . . . . . 8  |-  ( ph  ->  ( 1st `  F
) ( C  Func  D ) ( 2nd `  F
) )
2218, 15, 21funcf1 14026 . . . . . . 7  |-  ( ph  ->  ( 1st `  F
) : B --> ( Base `  D ) )
2322adantr 452 . . . . . 6  |-  ( (
ph  /\  A  e.  ( F I G ) )  ->  ( 1st `  F ) : B --> ( Base `  D )
)
2423ffvelrnda 5837 . . . . 5  |-  ( ( ( ph  /\  A  e.  ( F I G ) )  /\  x  e.  B )  ->  (
( 1st `  F
) `  x )  e.  ( Base `  D
) )
25 1st2ndbr 6363 . . . . . . . . 9  |-  ( ( Rel  ( C  Func  D )  /\  G  e.  ( C  Func  D
) )  ->  ( 1st `  G ) ( C  Func  D )
( 2nd `  G
) )
2619, 12, 25sylancr 645 . . . . . . . 8  |-  ( ph  ->  ( 1st `  G
) ( C  Func  D ) ( 2nd `  G
) )
2718, 15, 26funcf1 14026 . . . . . . 7  |-  ( ph  ->  ( 1st `  G
) : B --> ( Base `  D ) )
2827adantr 452 . . . . . 6  |-  ( (
ph  /\  A  e.  ( F I G ) )  ->  ( 1st `  G ) : B --> ( Base `  D )
)
2928ffvelrnda 5837 . . . . 5  |-  ( ( ( ph  /\  A  e.  ( F I G ) )  /\  x  e.  B )  ->  (
( 1st `  G
) `  x )  e.  ( Base `  D
) )
30 fuciso.j . . . . 5  |-  J  =  (  Iso  `  D
)
31 eqid 2412 . . . . . . . . . . . 12  |-  (Inv `  Q )  =  (Inv
`  Q )
322, 31, 11, 6, 12, 5isoval 13953 . . . . . . . . . . 11  |-  ( ph  ->  ( F I G )  =  dom  ( F (Inv `  Q ) G ) )
3332eleq2d 2479 . . . . . . . . . 10  |-  ( ph  ->  ( A  e.  ( F I G )  <-> 
A  e.  dom  ( F (Inv `  Q ) G ) ) )
342, 31, 11, 6, 12invfun 13952 . . . . . . . . . . 11  |-  ( ph  ->  Fun  ( F (Inv
`  Q ) G ) )
35 funfvbrb 5810 . . . . . . . . . . 11  |-  ( Fun  ( F (Inv `  Q ) G )  ->  ( A  e. 
dom  ( F (Inv
`  Q ) G )  <->  A ( F (Inv
`  Q ) G ) ( ( F (Inv `  Q ) G ) `  A
) ) )
3634, 35syl 16 . . . . . . . . . 10  |-  ( ph  ->  ( A  e.  dom  ( F (Inv `  Q
) G )  <->  A ( F (Inv `  Q ) G ) ( ( F (Inv `  Q
) G ) `  A ) ) )
3733, 36bitrd 245 . . . . . . . . 9  |-  ( ph  ->  ( A  e.  ( F I G )  <-> 
A ( F (Inv
`  Q ) G ) ( ( F (Inv `  Q ) G ) `  A
) ) )
3837biimpa 471 . . . . . . . 8  |-  ( (
ph  /\  A  e.  ( F I G ) )  ->  A ( F (Inv `  Q ) G ) ( ( F (Inv `  Q
) G ) `  A ) )
391, 18, 3, 6, 12, 31, 16fucinv 14133 . . . . . . . . 9  |-  ( ph  ->  ( A ( F (Inv `  Q ) G ) ( ( F (Inv `  Q
) G ) `  A )  <->  ( A  e.  ( F N G )  /\  ( ( F (Inv `  Q
) G ) `  A )  e.  ( G N F )  /\  A. x  e.  B  ( A `  x ) ( ( ( 1st `  F
) `  x )
(Inv `  D )
( ( 1st `  G
) `  x )
) ( ( ( F (Inv `  Q
) G ) `  A ) `  x
) ) ) )
4039adantr 452 . . . . . . . 8  |-  ( (
ph  /\  A  e.  ( F I G ) )  ->  ( A
( F (Inv `  Q ) G ) ( ( F (Inv
`  Q ) G ) `  A )  <-> 
( A  e.  ( F N G )  /\  ( ( F (Inv `  Q ) G ) `  A
)  e.  ( G N F )  /\  A. x  e.  B  ( A `  x ) ( ( ( 1st `  F ) `  x
) (Inv `  D
) ( ( 1st `  G ) `  x
) ) ( ( ( F (Inv `  Q ) G ) `
 A ) `  x ) ) ) )
4138, 40mpbid 202 . . . . . . 7  |-  ( (
ph  /\  A  e.  ( F I G ) )  ->  ( A  e.  ( F N G )  /\  ( ( F (Inv `  Q
) G ) `  A )  e.  ( G N F )  /\  A. x  e.  B  ( A `  x ) ( ( ( 1st `  F
) `  x )
(Inv `  D )
( ( 1st `  G
) `  x )
) ( ( ( F (Inv `  Q
) G ) `  A ) `  x
) ) )
4241simp3d 971 . . . . . 6  |-  ( (
ph  /\  A  e.  ( F I G ) )  ->  A. x  e.  B  ( A `  x ) ( ( ( 1st `  F
) `  x )
(Inv `  D )
( ( 1st `  G
) `  x )
) ( ( ( F (Inv `  Q
) G ) `  A ) `  x
) )
4342r19.21bi 2772 . . . . 5  |-  ( ( ( ph  /\  A  e.  ( F I G ) )  /\  x  e.  B )  ->  ( A `  x )
( ( ( 1st `  F ) `  x
) (Inv `  D
) ( ( 1st `  G ) `  x
) ) ( ( ( F (Inv `  Q ) G ) `
 A ) `  x ) )
4415, 16, 17, 24, 29, 30, 43inviso1 13954 . . . 4  |-  ( ( ( ph  /\  A  e.  ( F I G ) )  /\  x  e.  B )  ->  ( A `  x )  e.  ( ( ( 1st `  F ) `  x
) J ( ( 1st `  G ) `
 x ) ) )
4544ralrimiva 2757 . . 3  |-  ( (
ph  /\  A  e.  ( F I G ) )  ->  A. x  e.  B  ( A `  x )  e.  ( ( ( 1st `  F
) `  x ) J ( ( 1st `  G ) `  x
) ) )
4614, 45jca 519 . 2  |-  ( (
ph  /\  A  e.  ( F I G ) )  ->  ( A  e.  ( F N G )  /\  A. x  e.  B  ( A `  x )  e.  ( ( ( 1st `  F
) `  x ) J ( ( 1st `  G ) `  x
) ) ) )
4711adantr 452 . . 3  |-  ( (
ph  /\  ( A  e.  ( F N G )  /\  A. x  e.  B  ( A `  x )  e.  ( ( ( 1st `  F
) `  x ) J ( ( 1st `  G ) `  x
) ) ) )  ->  Q  e.  Cat )
486adantr 452 . . 3  |-  ( (
ph  /\  ( A  e.  ( F N G )  /\  A. x  e.  B  ( A `  x )  e.  ( ( ( 1st `  F
) `  x ) J ( ( 1st `  G ) `  x
) ) ) )  ->  F  e.  ( C  Func  D )
)
4912adantr 452 . . 3  |-  ( (
ph  /\  ( A  e.  ( F N G )  /\  A. x  e.  B  ( A `  x )  e.  ( ( ( 1st `  F
) `  x ) J ( ( 1st `  G ) `  x
) ) ) )  ->  G  e.  ( C  Func  D )
)
50 simprl 733 . . . 4  |-  ( (
ph  /\  ( A  e.  ( F N G )  /\  A. x  e.  B  ( A `  x )  e.  ( ( ( 1st `  F
) `  x ) J ( ( 1st `  G ) `  x
) ) ) )  ->  A  e.  ( F N G ) )
51 simprr 734 . . . . . . 7  |-  ( (
ph  /\  ( A  e.  ( F N G )  /\  A. x  e.  B  ( A `  x )  e.  ( ( ( 1st `  F
) `  x ) J ( ( 1st `  G ) `  x
) ) ) )  ->  A. x  e.  B  ( A `  x )  e.  ( ( ( 1st `  F ) `
 x ) J ( ( 1st `  G
) `  x )
) )
52 fveq2 5695 . . . . . . . . 9  |-  ( x  =  y  ->  ( A `  x )  =  ( A `  y ) )
53 fveq2 5695 . . . . . . . . . 10  |-  ( x  =  y  ->  (
( 1st `  F
) `  x )  =  ( ( 1st `  F ) `  y
) )
54 fveq2 5695 . . . . . . . . . 10  |-  ( x  =  y  ->  (
( 1st `  G
) `  x )  =  ( ( 1st `  G ) `  y
) )
5553, 54oveq12d 6066 . . . . . . . . 9  |-  ( x  =  y  ->  (
( ( 1st `  F
) `  x ) J ( ( 1st `  G ) `  x
) )  =  ( ( ( 1st `  F
) `  y ) J ( ( 1st `  G ) `  y
) ) )
5652, 55eleq12d 2480 . . . . . . . 8  |-  ( x  =  y  ->  (
( A `  x
)  e.  ( ( ( 1st `  F
) `  x ) J ( ( 1st `  G ) `  x
) )  <->  ( A `  y )  e.  ( ( ( 1st `  F
) `  y ) J ( ( 1st `  G ) `  y
) ) ) )
5756rspccva 3019 . . . . . . 7  |-  ( ( A. x  e.  B  ( A `  x )  e.  ( ( ( 1st `  F ) `
 x ) J ( ( 1st `  G
) `  x )
)  /\  y  e.  B )  ->  ( A `  y )  e.  ( ( ( 1st `  F ) `  y
) J ( ( 1st `  G ) `
 y ) ) )
5851, 57sylan 458 . . . . . 6  |-  ( ( ( ph  /\  ( A  e.  ( F N G )  /\  A. x  e.  B  ( A `  x )  e.  ( ( ( 1st `  F ) `  x
) J ( ( 1st `  G ) `
 x ) ) ) )  /\  y  e.  B )  ->  ( A `  y )  e.  ( ( ( 1st `  F ) `  y
) J ( ( 1st `  G ) `
 y ) ) )
5910ad2antrr 707 . . . . . . 7  |-  ( ( ( ph  /\  ( A  e.  ( F N G )  /\  A. x  e.  B  ( A `  x )  e.  ( ( ( 1st `  F ) `  x
) J ( ( 1st `  G ) `
 x ) ) ) )  /\  y  e.  B )  ->  D  e.  Cat )
6022adantr 452 . . . . . . . 8  |-  ( (
ph  /\  ( A  e.  ( F N G )  /\  A. x  e.  B  ( A `  x )  e.  ( ( ( 1st `  F
) `  x ) J ( ( 1st `  G ) `  x
) ) ) )  ->  ( 1st `  F
) : B --> ( Base `  D ) )
6160ffvelrnda 5837 . . . . . . 7  |-  ( ( ( ph  /\  ( A  e.  ( F N G )  /\  A. x  e.  B  ( A `  x )  e.  ( ( ( 1st `  F ) `  x
) J ( ( 1st `  G ) `
 x ) ) ) )  /\  y  e.  B )  ->  (
( 1st `  F
) `  y )  e.  ( Base `  D
) )
6227adantr 452 . . . . . . . 8  |-  ( (
ph  /\  ( A  e.  ( F N G )  /\  A. x  e.  B  ( A `  x )  e.  ( ( ( 1st `  F
) `  x ) J ( ( 1st `  G ) `  x
) ) ) )  ->  ( 1st `  G
) : B --> ( Base `  D ) )
6362ffvelrnda 5837 . . . . . . 7  |-  ( ( ( ph  /\  ( A  e.  ( F N G )  /\  A. x  e.  B  ( A `  x )  e.  ( ( ( 1st `  F ) `  x
) J ( ( 1st `  G ) `
 x ) ) ) )  /\  y  e.  B )  ->  (
( 1st `  G
) `  y )  e.  ( Base `  D
) )
6415, 16, 59, 61, 63, 30isoval 13953 . . . . . 6  |-  ( ( ( ph  /\  ( A  e.  ( F N G )  /\  A. x  e.  B  ( A `  x )  e.  ( ( ( 1st `  F ) `  x
) J ( ( 1st `  G ) `
 x ) ) ) )  /\  y  e.  B )  ->  (
( ( 1st `  F
) `  y ) J ( ( 1st `  G ) `  y
) )  =  dom  ( ( ( 1st `  F ) `  y
) (Inv `  D
) ( ( 1st `  G ) `  y
) ) )
6558, 64eleqtrd 2488 . . . . 5  |-  ( ( ( ph  /\  ( A  e.  ( F N G )  /\  A. x  e.  B  ( A `  x )  e.  ( ( ( 1st `  F ) `  x
) J ( ( 1st `  G ) `
 x ) ) ) )  /\  y  e.  B )  ->  ( A `  y )  e.  dom  ( ( ( 1st `  F ) `
 y ) (Inv
`  D ) ( ( 1st `  G
) `  y )
) )
6615, 16, 59, 61, 63invfun 13952 . . . . . 6  |-  ( ( ( ph  /\  ( A  e.  ( F N G )  /\  A. x  e.  B  ( A `  x )  e.  ( ( ( 1st `  F ) `  x
) J ( ( 1st `  G ) `
 x ) ) ) )  /\  y  e.  B )  ->  Fun  ( ( ( 1st `  F ) `  y
) (Inv `  D
) ( ( 1st `  G ) `  y
) ) )
67 funfvbrb 5810 . . . . . 6  |-  ( Fun  ( ( ( 1st `  F ) `  y
) (Inv `  D
) ( ( 1st `  G ) `  y
) )  ->  (
( A `  y
)  e.  dom  (
( ( 1st `  F
) `  y )
(Inv `  D )
( ( 1st `  G
) `  y )
)  <->  ( A `  y ) ( ( ( 1st `  F
) `  y )
(Inv `  D )
( ( 1st `  G
) `  y )
) ( ( ( ( 1st `  F
) `  y )
(Inv `  D )
( ( 1st `  G
) `  y )
) `  ( A `  y ) ) ) )
6866, 67syl 16 . . . . 5  |-  ( ( ( ph  /\  ( A  e.  ( F N G )  /\  A. x  e.  B  ( A `  x )  e.  ( ( ( 1st `  F ) `  x
) J ( ( 1st `  G ) `
 x ) ) ) )  /\  y  e.  B )  ->  (
( A `  y
)  e.  dom  (
( ( 1st `  F
) `  y )
(Inv `  D )
( ( 1st `  G
) `  y )
)  <->  ( A `  y ) ( ( ( 1st `  F
) `  y )
(Inv `  D )
( ( 1st `  G
) `  y )
) ( ( ( ( 1st `  F
) `  y )
(Inv `  D )
( ( 1st `  G
) `  y )
) `  ( A `  y ) ) ) )
6965, 68mpbid 202 . . . 4  |-  ( ( ( ph  /\  ( A  e.  ( F N G )  /\  A. x  e.  B  ( A `  x )  e.  ( ( ( 1st `  F ) `  x
) J ( ( 1st `  G ) `
 x ) ) ) )  /\  y  e.  B )  ->  ( A `  y )
( ( ( 1st `  F ) `  y
) (Inv `  D
) ( ( 1st `  G ) `  y
) ) ( ( ( ( 1st `  F
) `  y )
(Inv `  D )
( ( 1st `  G
) `  y )
) `  ( A `  y ) ) )
701, 18, 3, 48, 49, 31, 16, 50, 69invfuc 14134 . . 3  |-  ( (
ph  /\  ( A  e.  ( F N G )  /\  A. x  e.  B  ( A `  x )  e.  ( ( ( 1st `  F
) `  x ) J ( ( 1st `  G ) `  x
) ) ) )  ->  A ( F (Inv `  Q ) G ) ( y  e.  B  |->  ( ( ( ( 1st `  F
) `  y )
(Inv `  D )
( ( 1st `  G
) `  y )
) `  ( A `  y ) ) ) )
712, 31, 47, 48, 49, 5, 70inviso1 13954 . 2  |-  ( (
ph  /\  ( A  e.  ( F N G )  /\  A. x  e.  B  ( A `  x )  e.  ( ( ( 1st `  F
) `  x ) J ( ( 1st `  G ) `  x
) ) ) )  ->  A  e.  ( F I G ) )
7246, 71impbida 806 1  |-  ( ph  ->  ( A  e.  ( F I G )  <-> 
( A  e.  ( F N G )  /\  A. x  e.  B  ( A `  x )  e.  ( ( ( 1st `  F
) `  x ) J ( ( 1st `  G ) `  x
) ) ) ) )
Colors of variables: wff set class
Syntax hints:    -> wi 4    <-> wb 177    /\ wa 359    /\ w3a 936    = wceq 1649    e. wcel 1721   A.wral 2674   class class class wbr 4180    e. cmpt 4234   dom cdm 4845   Rel wrel 4850   Fun wfun 5415   -->wf 5417   ` cfv 5421  (class class class)co 6048   1stc1st 6314   2ndc2nd 6315   Basecbs 13432   Catccat 13852  Invcinv 13934    Iso ciso 13935    Func cfunc 14014   Nat cnat 14101   FuncCat cfuc 14102
This theorem is referenced by:  yonffthlem  14342
This theorem was proved from axioms:  ax-1 5  ax-2 6  ax-3 7  ax-mp 8  ax-gen 1552  ax-5 1563  ax-17 1623  ax-9 1662  ax-8 1683  ax-13 1723  ax-14 1725  ax-6 1740  ax-7 1745  ax-11 1757  ax-12 1946  ax-ext 2393  ax-rep 4288  ax-sep 4298  ax-nul 4306  ax-pow 4345  ax-pr 4371  ax-un 4668  ax-cnex 9010  ax-resscn 9011  ax-1cn 9012  ax-icn 9013  ax-addcl 9014  ax-addrcl 9015  ax-mulcl 9016  ax-mulrcl 9017  ax-mulcom 9018  ax-addass 9019  ax-mulass 9020  ax-distr 9021  ax-i2m1 9022  ax-1ne0 9023  ax-1rid 9024  ax-rnegex 9025  ax-rrecex 9026  ax-cnre 9027  ax-pre-lttri 9028  ax-pre-lttrn 9029  ax-pre-ltadd 9030  ax-pre-mulgt0 9031
This theorem depends on definitions:  df-bi 178  df-or 360  df-an 361  df-3or 937  df-3an 938  df-tru 1325  df-ex 1548  df-nf 1551  df-sb 1656  df-eu 2266  df-mo 2267  df-clab 2399  df-cleq 2405  df-clel 2408  df-nfc 2537  df-ne 2577  df-nel 2578  df-ral 2679  df-rex 2680  df-reu 2681  df-rmo 2682  df-rab 2683  df-v 2926  df-sbc 3130  df-csb 3220  df-dif 3291  df-un 3293  df-in 3295  df-ss 3302  df-pss 3304  df-nul 3597  df-if 3708  df-pw 3769  df-sn 3788  df-pr 3789  df-tp 3790  df-op 3791  df-uni 3984  df-int 4019  df-iun 4063  df-br 4181  df-opab 4235  df-mpt 4236  df-tr 4271  df-eprel 4462  df-id 4466  df-po 4471  df-so 4472  df-fr 4509  df-we 4511  df-ord 4552  df-on 4553  df-lim 4554  df-suc 4555  df-om 4813  df-xp 4851  df-rel 4852  df-cnv 4853  df-co 4854  df-dm 4855  df-rn 4856  df-res 4857  df-ima 4858  df-iota 5385  df-fun 5423  df-fn 5424  df-f 5425  df-f1 5426  df-fo 5427  df-f1o 5428  df-fv 5429  df-ov 6051  df-oprab 6052  df-mpt2 6053  df-1st 6316  df-2nd 6317  df-riota 6516  df-recs 6600  df-rdg 6635  df-1o 6691  df-oadd 6695  df-er 6872  df-map 6987  df-ixp 7031  df-en 7077  df-dom 7078  df-sdom 7079  df-fin 7080  df-pnf 9086  df-mnf 9087  df-xr 9088  df-ltxr 9089  df-le 9090  df-sub 9257  df-neg 9258  df-nn 9965  df-2 10022  df-3 10023  df-4 10024  df-5 10025  df-6 10026  df-7 10027  df-8 10028  df-9 10029  df-10 10030  df-n0 10186  df-z 10247  df-dec 10347  df-uz 10453  df-fz 11008  df-struct 13434  df-ndx 13435  df-slot 13436  df-base 13437  df-hom 13516  df-cco 13517  df-cat 13856  df-cid 13857  df-sect 13936  df-inv 13937  df-iso 13938  df-func 14018  df-nat 14103  df-fuc 14104
  Copyright terms: Public domain W3C validator