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

Theorem fuciso 14883
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 14868 . . . . 5  |-  ( C 
Func  D )  =  (
Base `  Q )
3 fuciso.n . . . . . 6  |-  N  =  ( C Nat  D )
41, 3fuchom 14869 . . . . 5  |-  N  =  ( Hom  `  Q
)
5 fuciso.i . . . . 5  |-  I  =  (  Iso  `  Q
)
6 fuciso.f . . . . . . . 8  |-  ( ph  ->  F  e.  ( C 
Func  D ) )
7 funcrcl 14771 . . . . . . . 8  |-  ( F  e.  ( C  Func  D )  ->  ( C  e.  Cat  /\  D  e. 
Cat ) )
86, 7syl 16 . . . . . . 7  |-  ( ph  ->  ( C  e.  Cat  /\  D  e.  Cat )
)
98simpld 459 . . . . . 6  |-  ( ph  ->  C  e.  Cat )
108simprd 463 . . . . . 6  |-  ( ph  ->  D  e.  Cat )
111, 9, 10fuccat 14878 . . . . 5  |-  ( ph  ->  Q  e.  Cat )
12 fuciso.g . . . . 5  |-  ( ph  ->  G  e.  ( C 
Func  D ) )
132, 4, 5, 11, 6, 12isohom 14708 . . . 4  |-  ( ph  ->  ( F I G )  C_  ( F N G ) )
1413sselda 3354 . . 3  |-  ( (
ph  /\  A  e.  ( F I G ) )  ->  A  e.  ( F N G ) )
15 eqid 2441 . . . . 5  |-  ( Base `  D )  =  (
Base `  D )
16 eqid 2441 . . . . 5  |-  (Inv `  D )  =  (Inv
`  D )
1710ad2antrr 725 . . . . 5  |-  ( ( ( ph  /\  A  e.  ( F I G ) )  /\  x  e.  B )  ->  D  e.  Cat )
18 fuciso.b . . . . . . . 8  |-  B  =  ( Base `  C
)
19 relfunc 14770 . . . . . . . . 9  |-  Rel  ( C  Func  D )
20 1st2ndbr 6621 . . . . . . . . 9  |-  ( ( Rel  ( C  Func  D )  /\  F  e.  ( C  Func  D
) )  ->  ( 1st `  F ) ( C  Func  D )
( 2nd `  F
) )
2119, 6, 20sylancr 663 . . . . . . . 8  |-  ( ph  ->  ( 1st `  F
) ( C  Func  D ) ( 2nd `  F
) )
2218, 15, 21funcf1 14774 . . . . . . 7  |-  ( ph  ->  ( 1st `  F
) : B --> ( Base `  D ) )
2322adantr 465 . . . . . 6  |-  ( (
ph  /\  A  e.  ( F I G ) )  ->  ( 1st `  F ) : B --> ( Base `  D )
)
2423ffvelrnda 5841 . . . . 5  |-  ( ( ( ph  /\  A  e.  ( F I G ) )  /\  x  e.  B )  ->  (
( 1st `  F
) `  x )  e.  ( Base `  D
) )
25 1st2ndbr 6621 . . . . . . . . 9  |-  ( ( Rel  ( C  Func  D )  /\  G  e.  ( C  Func  D
) )  ->  ( 1st `  G ) ( C  Func  D )
( 2nd `  G
) )
2619, 12, 25sylancr 663 . . . . . . . 8  |-  ( ph  ->  ( 1st `  G
) ( C  Func  D ) ( 2nd `  G
) )
2718, 15, 26funcf1 14774 . . . . . . 7  |-  ( ph  ->  ( 1st `  G
) : B --> ( Base `  D ) )
2827adantr 465 . . . . . 6  |-  ( (
ph  /\  A  e.  ( F I G ) )  ->  ( 1st `  G ) : B --> ( Base `  D )
)
2928ffvelrnda 5841 . . . . 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 2441 . . . . . . . . . . . 12  |-  (Inv `  Q )  =  (Inv
`  Q )
322, 31, 11, 6, 12, 5isoval 14701 . . . . . . . . . . 11  |-  ( ph  ->  ( F I G )  =  dom  ( F (Inv `  Q ) G ) )
3332eleq2d 2508 . . . . . . . . . 10  |-  ( ph  ->  ( A  e.  ( F I G )  <-> 
A  e.  dom  ( F (Inv `  Q ) G ) ) )
342, 31, 11, 6, 12invfun 14700 . . . . . . . . . . 11  |-  ( ph  ->  Fun  ( F (Inv
`  Q ) G ) )
35 funfvbrb 5814 . . . . . . . . . . 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 253 . . . . . . . . 9  |-  ( ph  ->  ( A  e.  ( F I G )  <-> 
A ( F (Inv
`  Q ) G ) ( ( F (Inv `  Q ) G ) `  A
) ) )
3837biimpa 484 . . . . . . . 8  |-  ( (
ph  /\  A  e.  ( F I G ) )  ->  A ( F (Inv `  Q ) G ) ( ( F (Inv `  Q
) G ) `  A ) )
391, 18, 3, 6, 12, 31, 16fucinv 14881 . . . . . . . . 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 465 . . . . . . . 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 210 . . . . . . 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 1002 . . . . . 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 2812 . . . . 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 14702 . . . 4  |-  ( ( ( ph  /\  A  e.  ( F I G ) )  /\  x  e.  B )  ->  ( A `  x )  e.  ( ( ( 1st `  F ) `  x
) J ( ( 1st `  G ) `
 x ) ) )
4544ralrimiva 2797 . . 3  |-  ( (
ph  /\  A  e.  ( F I G ) )  ->  A. x  e.  B  ( A `  x )  e.  ( ( ( 1st `  F
) `  x ) J ( ( 1st `  G ) `  x
) ) )
4614, 45jca 532 . 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 465 . . 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 465 . . 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 465 . . 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 755 . . . 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 756 . . . . . . 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 5689 . . . . . . . . 9  |-  ( x  =  y  ->  ( A `  x )  =  ( A `  y ) )
53 fveq2 5689 . . . . . . . . . 10  |-  ( x  =  y  ->  (
( 1st `  F
) `  x )  =  ( ( 1st `  F ) `  y
) )
54 fveq2 5689 . . . . . . . . . 10  |-  ( x  =  y  ->  (
( 1st `  G
) `  x )  =  ( ( 1st `  G ) `  y
) )
5553, 54oveq12d 6107 . . . . . . . . 9  |-  ( x  =  y  ->  (
( ( 1st `  F
) `  x ) J ( ( 1st `  G ) `  x
) )  =  ( ( ( 1st `  F
) `  y ) J ( ( 1st `  G ) `  y
) ) )
5652, 55eleq12d 2509 . . . . . . . 8  |-  ( x  =  y  ->  (
( A `  x
)  e.  ( ( ( 1st `  F
) `  x ) J ( ( 1st `  G ) `  x
) )  <->  ( A `  y )  e.  ( ( ( 1st `  F
) `  y ) J ( ( 1st `  G ) `  y
) ) ) )
5756rspccva 3070 . . . . . . 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 471 . . . . . 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 725 . . . . . . 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 465 . . . . . . . 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 5841 . . . . . . 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 465 . . . . . . . 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 5841 . . . . . . 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 14701 . . . . . 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 2517 . . . . 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 14700 . . . . . 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 5814 . . . . . 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 210 . . . 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 14882 . . 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 14702 . 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 828 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 setvar class
Syntax hints:    -> wi 4    <-> wb 184    /\ wa 369    /\ w3a 965    = wceq 1369    e. wcel 1756   A.wral 2713   class class class wbr 4290    e. cmpt 4348   dom cdm 4838   Rel wrel 4843   Fun wfun 5410   -->wf 5412   ` cfv 5416  (class class class)co 6089   1stc1st 6573   2ndc2nd 6574   Basecbs 14172   Catccat 14600  Invcinv 14682    Iso ciso 14683    Func cfunc 14762   Nat cnat 14849   FuncCat cfuc 14850
This theorem was proved from axioms:  ax-mp 5  ax-1 6  ax-2 7  ax-3 8  ax-gen 1591  ax-4 1602  ax-5 1670  ax-6 1708  ax-7 1728  ax-8 1758  ax-9 1760  ax-10 1775  ax-11 1780  ax-12 1792  ax-13 1943  ax-ext 2422  ax-rep 4401  ax-sep 4411  ax-nul 4419  ax-pow 4468  ax-pr 4529  ax-un 6370  ax-cnex 9336  ax-resscn 9337  ax-1cn 9338  ax-icn 9339  ax-addcl 9340  ax-addrcl 9341  ax-mulcl 9342  ax-mulrcl 9343  ax-mulcom 9344  ax-addass 9345  ax-mulass 9346  ax-distr 9347  ax-i2m1 9348  ax-1ne0 9349  ax-1rid 9350  ax-rnegex 9351  ax-rrecex 9352  ax-cnre 9353  ax-pre-lttri 9354  ax-pre-lttrn 9355  ax-pre-ltadd 9356  ax-pre-mulgt0 9357
This theorem depends on definitions:  df-bi 185  df-or 370  df-an 371  df-3or 966  df-3an 967  df-tru 1372  df-fal 1375  df-ex 1587  df-nf 1590  df-sb 1701  df-eu 2257  df-mo 2258  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 3185  df-csb 3287  df-dif 3329  df-un 3331  df-in 3333  df-ss 3340  df-pss 3342  df-nul 3636  df-if 3790  df-pw 3860  df-sn 3876  df-pr 3878  df-tp 3880  df-op 3882  df-uni 4090  df-int 4127  df-iun 4171  df-br 4291  df-opab 4349  df-mpt 4350  df-tr 4384  df-eprel 4630  df-id 4634  df-po 4639  df-so 4640  df-fr 4677  df-we 4679  df-ord 4720  df-on 4721  df-lim 4722  df-suc 4723  df-xp 4844  df-rel 4845  df-cnv 4846  df-co 4847  df-dm 4848  df-rn 4849  df-res 4850  df-ima 4851  df-iota 5379  df-fun 5418  df-fn 5419  df-f 5420  df-f1 5421  df-fo 5422  df-f1o 5423  df-fv 5424  df-riota 6050  df-ov 6092  df-oprab 6093  df-mpt2 6094  df-om 6475  df-1st 6575  df-2nd 6576  df-recs 6830  df-rdg 6864  df-1o 6918  df-oadd 6922  df-er 7099  df-map 7214  df-ixp 7262  df-en 7309  df-dom 7310  df-sdom 7311  df-fin 7312  df-pnf 9418  df-mnf 9419  df-xr 9420  df-ltxr 9421  df-le 9422  df-sub 9595  df-neg 9596  df-nn 10321  df-2 10378  df-3 10379  df-4 10380  df-5 10381  df-6 10382  df-7 10383  df-8 10384  df-9 10385  df-10 10386  df-n0 10578  df-z 10645  df-dec 10754  df-uz 10860  df-fz 11436  df-struct 14174  df-ndx 14175  df-slot 14176  df-base 14177  df-hom 14260  df-cco 14261  df-cat 14604  df-cid 14605  df-sect 14684  df-inv 14685  df-iso 14686  df-func 14766  df-nat 14851  df-fuc 14852
This theorem is referenced by:  yonffthlem  15090
  Copyright terms: Public domain W3C validator