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

Theorem fuciso 14059
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 14044 . . . . 5  |-  ( C 
Func  D )  =  (
Base `  Q )
3 fuciso.n . . . . . 6  |-  N  =  ( C Nat  D )
41, 3fuchom 14045 . . . . 5  |-  N  =  (  Hom  `  Q
)
5 fuciso.i . . . . 5  |-  I  =  (  Iso  `  Q
)
6 fuciso.f . . . . . . . 8  |-  ( ph  ->  F  e.  ( C 
Func  D ) )
7 funcrcl 13947 . . . . . . . 8  |-  ( F  e.  ( C  Func  D )  ->  ( C  e.  Cat  /\  D  e. 
Cat ) )
86, 7syl 15 . . . . . . 7  |-  ( ph  ->  ( C  e.  Cat  /\  D  e.  Cat )
)
98simpld 445 . . . . . 6  |-  ( ph  ->  C  e.  Cat )
108simprd 449 . . . . . 6  |-  ( ph  ->  D  e.  Cat )
111, 9, 10fuccat 14054 . . . . 5  |-  ( ph  ->  Q  e.  Cat )
12 fuciso.g . . . . 5  |-  ( ph  ->  G  e.  ( C 
Func  D ) )
132, 4, 5, 11, 6, 12isohom 13884 . . . 4  |-  ( ph  ->  ( F I G )  C_  ( F N G ) )
1413sselda 3266 . . 3  |-  ( (
ph  /\  A  e.  ( F I G ) )  ->  A  e.  ( F N G ) )
15 eqid 2366 . . . . 5  |-  ( Base `  D )  =  (
Base `  D )
16 eqid 2366 . . . . 5  |-  (Inv `  D )  =  (Inv
`  D )
1710ad2antrr 706 . . . . 5  |-  ( ( ( ph  /\  A  e.  ( F I G ) )  /\  x  e.  B )  ->  D  e.  Cat )
18 fuciso.b . . . . . . . 8  |-  B  =  ( Base `  C
)
19 relfunc 13946 . . . . . . . . 9  |-  Rel  ( C  Func  D )
20 1st2ndbr 6296 . . . . . . . . 9  |-  ( ( Rel  ( C  Func  D )  /\  F  e.  ( C  Func  D
) )  ->  ( 1st `  F ) ( C  Func  D )
( 2nd `  F
) )
2119, 6, 20sylancr 644 . . . . . . . 8  |-  ( ph  ->  ( 1st `  F
) ( C  Func  D ) ( 2nd `  F
) )
2218, 15, 21funcf1 13950 . . . . . . 7  |-  ( ph  ->  ( 1st `  F
) : B --> ( Base `  D ) )
2322adantr 451 . . . . . 6  |-  ( (
ph  /\  A  e.  ( F I G ) )  ->  ( 1st `  F ) : B --> ( Base `  D )
)
2423ffvelrnda 5772 . . . . 5  |-  ( ( ( ph  /\  A  e.  ( F I G ) )  /\  x  e.  B )  ->  (
( 1st `  F
) `  x )  e.  ( Base `  D
) )
25 1st2ndbr 6296 . . . . . . . . 9  |-  ( ( Rel  ( C  Func  D )  /\  G  e.  ( C  Func  D
) )  ->  ( 1st `  G ) ( C  Func  D )
( 2nd `  G
) )
2619, 12, 25sylancr 644 . . . . . . . 8  |-  ( ph  ->  ( 1st `  G
) ( C  Func  D ) ( 2nd `  G
) )
2718, 15, 26funcf1 13950 . . . . . . 7  |-  ( ph  ->  ( 1st `  G
) : B --> ( Base `  D ) )
2827adantr 451 . . . . . 6  |-  ( (
ph  /\  A  e.  ( F I G ) )  ->  ( 1st `  G ) : B --> ( Base `  D )
)
2928ffvelrnda 5772 . . . . 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 2366 . . . . . . . . . . . 12  |-  (Inv `  Q )  =  (Inv
`  Q )
322, 31, 11, 6, 12, 5isoval 13877 . . . . . . . . . . 11  |-  ( ph  ->  ( F I G )  =  dom  ( F (Inv `  Q ) G ) )
3332eleq2d 2433 . . . . . . . . . 10  |-  ( ph  ->  ( A  e.  ( F I G )  <-> 
A  e.  dom  ( F (Inv `  Q ) G ) ) )
342, 31, 11, 6, 12invfun 13876 . . . . . . . . . . 11  |-  ( ph  ->  Fun  ( F (Inv
`  Q ) G ) )
35 funfvbrb 5745 . . . . . . . . . . 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 15 . . . . . . . . . 10  |-  ( ph  ->  ( A  e.  dom  ( F (Inv `  Q
) G )  <->  A ( F (Inv `  Q ) G ) ( ( F (Inv `  Q
) G ) `  A ) ) )
3733, 36bitrd 244 . . . . . . . . 9  |-  ( ph  ->  ( A  e.  ( F I G )  <-> 
A ( F (Inv
`  Q ) G ) ( ( F (Inv `  Q ) G ) `  A
) ) )
3837biimpa 470 . . . . . . . 8  |-  ( (
ph  /\  A  e.  ( F I G ) )  ->  A ( F (Inv `  Q ) G ) ( ( F (Inv `  Q
) G ) `  A ) )
391, 18, 3, 6, 12, 31, 16fucinv 14057 . . . . . . . . 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 451 . . . . . . . 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 201 . . . . . . 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 970 . . . . . 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 2726 . . . . 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 13878 . . . 4  |-  ( ( ( ph  /\  A  e.  ( F I G ) )  /\  x  e.  B )  ->  ( A `  x )  e.  ( ( ( 1st `  F ) `  x
) J ( ( 1st `  G ) `
 x ) ) )
4544ralrimiva 2711 . . 3  |-  ( (
ph  /\  A  e.  ( F I G ) )  ->  A. x  e.  B  ( A `  x )  e.  ( ( ( 1st `  F
) `  x ) J ( ( 1st `  G ) `  x
) ) )
4614, 45jca 518 . 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 451 . . 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 451 . . 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 451 . . 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 732 . . . 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 733 . . . . . . 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 5632 . . . . . . . . 9  |-  ( x  =  y  ->  ( A `  x )  =  ( A `  y ) )
53 fveq2 5632 . . . . . . . . . 10  |-  ( x  =  y  ->  (
( 1st `  F
) `  x )  =  ( ( 1st `  F ) `  y
) )
54 fveq2 5632 . . . . . . . . . 10  |-  ( x  =  y  ->  (
( 1st `  G
) `  x )  =  ( ( 1st `  G ) `  y
) )
5553, 54oveq12d 5999 . . . . . . . . 9  |-  ( x  =  y  ->  (
( ( 1st `  F
) `  x ) J ( ( 1st `  G ) `  x
) )  =  ( ( ( 1st `  F
) `  y ) J ( ( 1st `  G ) `  y
) ) )
5652, 55eleq12d 2434 . . . . . . . 8  |-  ( x  =  y  ->  (
( A `  x
)  e.  ( ( ( 1st `  F
) `  x ) J ( ( 1st `  G ) `  x
) )  <->  ( A `  y )  e.  ( ( ( 1st `  F
) `  y ) J ( ( 1st `  G ) `  y
) ) ) )
5756rspccva 2968 . . . . . . 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 457 . . . . . 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 706 . . . . . . 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 451 . . . . . . . 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 5772 . . . . . . 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 451 . . . . . . . 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 5772 . . . . . . 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 13877 . . . . . 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 2442 . . . . 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 13876 . . . . . 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 5745 . . . . . 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 15 . . . . 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 201 . . . 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 14058 . . 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 13878 . 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 805 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 176    /\ wa 358    /\ w3a 935    = wceq 1647    e. wcel 1715   A.wral 2628   class class class wbr 4125    e. cmpt 4179   dom cdm 4792   Rel wrel 4797   Fun wfun 5352   -->wf 5354   ` cfv 5358  (class class class)co 5981   1stc1st 6247   2ndc2nd 6248   Basecbs 13356   Catccat 13776  Invcinv 13858    Iso ciso 13859    Func cfunc 13938   Nat cnat 14025   FuncCat cfuc 14026
This theorem is referenced by:  yonffthlem  14266
This theorem was proved from axioms:  ax-1 5  ax-2 6  ax-3 7  ax-mp 8  ax-gen 1551  ax-5 1562  ax-17 1621  ax-9 1659  ax-8 1680  ax-13 1717  ax-14 1719  ax-6 1734  ax-7 1739  ax-11 1751  ax-12 1937  ax-ext 2347  ax-rep 4233  ax-sep 4243  ax-nul 4251  ax-pow 4290  ax-pr 4316  ax-un 4615  ax-cnex 8940  ax-resscn 8941  ax-1cn 8942  ax-icn 8943  ax-addcl 8944  ax-addrcl 8945  ax-mulcl 8946  ax-mulrcl 8947  ax-mulcom 8948  ax-addass 8949  ax-mulass 8950  ax-distr 8951  ax-i2m1 8952  ax-1ne0 8953  ax-1rid 8954  ax-rnegex 8955  ax-rrecex 8956  ax-cnre 8957  ax-pre-lttri 8958  ax-pre-lttrn 8959  ax-pre-ltadd 8960  ax-pre-mulgt0 8961
This theorem depends on definitions:  df-bi 177  df-or 359  df-an 360  df-3or 936  df-3an 937  df-tru 1324  df-ex 1547  df-nf 1550  df-sb 1654  df-eu 2221  df-mo 2222  df-clab 2353  df-cleq 2359  df-clel 2362  df-nfc 2491  df-ne 2531  df-nel 2532  df-ral 2633  df-rex 2634  df-reu 2635  df-rmo 2636  df-rab 2637  df-v 2875  df-sbc 3078  df-csb 3168  df-dif 3241  df-un 3243  df-in 3245  df-ss 3252  df-pss 3254  df-nul 3544  df-if 3655  df-pw 3716  df-sn 3735  df-pr 3736  df-tp 3737  df-op 3738  df-uni 3930  df-int 3965  df-iun 4009  df-br 4126  df-opab 4180  df-mpt 4181  df-tr 4216  df-eprel 4408  df-id 4412  df-po 4417  df-so 4418  df-fr 4455  df-we 4457  df-ord 4498  df-on 4499  df-lim 4500  df-suc 4501  df-om 4760  df-xp 4798  df-rel 4799  df-cnv 4800  df-co 4801  df-dm 4802  df-rn 4803  df-res 4804  df-ima 4805  df-iota 5322  df-fun 5360  df-fn 5361  df-f 5362  df-f1 5363  df-fo 5364  df-f1o 5365  df-fv 5366  df-ov 5984  df-oprab 5985  df-mpt2 5986  df-1st 6249  df-2nd 6250  df-riota 6446  df-recs 6530  df-rdg 6565  df-1o 6621  df-oadd 6625  df-er 6802  df-map 6917  df-ixp 6961  df-en 7007  df-dom 7008  df-sdom 7009  df-fin 7010  df-pnf 9016  df-mnf 9017  df-xr 9018  df-ltxr 9019  df-le 9020  df-sub 9186  df-neg 9187  df-nn 9894  df-2 9951  df-3 9952  df-4 9953  df-5 9954  df-6 9955  df-7 9956  df-8 9957  df-9 9958  df-10 9959  df-n0 10115  df-z 10176  df-dec 10276  df-uz 10382  df-fz 10936  df-struct 13358  df-ndx 13359  df-slot 13360  df-base 13361  df-hom 13440  df-cco 13441  df-cat 13780  df-cid 13781  df-sect 13860  df-inv 13861  df-iso 13862  df-func 13942  df-nat 14027  df-fuc 14028
  Copyright terms: Public domain W3C validator