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

Theorem catideu 15519
Description: Each object in a category has a unique identity arrow. (Contributed by Mario Carneiro, 2-Jan-2017.)
Hypotheses
Ref Expression
catidex.b  |-  B  =  ( Base `  C
)
catidex.h  |-  H  =  ( Hom  `  C
)
catidex.o  |-  .x.  =  (comp `  C )
catidex.c  |-  ( ph  ->  C  e.  Cat )
catidex.x  |-  ( ph  ->  X  e.  B )
Assertion
Ref Expression
catideu  |-  ( ph  ->  E! g  e.  ( X H X ) A. y  e.  B  ( A. f  e.  ( y H X ) ( g ( <.
y ,  X >.  .x. 
X ) f )  =  f  /\  A. f  e.  ( X H y ) ( f ( <. X ,  X >.  .x.  y )
g )  =  f ) )
Distinct variable groups:    f, g,
y, B    C, f,
g, y    ph, g    f, X, g, y    f, H, g, y    .x. , f,
g, y
Allowed substitution hints:    ph( y, f)

Proof of Theorem catideu
Dummy variable  h is distinct from all other variables.
StepHypRef Expression
1 catidex.b . . 3  |-  B  =  ( Base `  C
)
2 catidex.h . . 3  |-  H  =  ( Hom  `  C
)
3 catidex.o . . 3  |-  .x.  =  (comp `  C )
4 catidex.c . . 3  |-  ( ph  ->  C  e.  Cat )
5 catidex.x . . 3  |-  ( ph  ->  X  e.  B )
61, 2, 3, 4, 5catidex 15518 . 2  |-  ( ph  ->  E. g  e.  ( X H X ) A. y  e.  B  ( A. f  e.  ( y H X ) ( g ( <.
y ,  X >.  .x. 
X ) f )  =  f  /\  A. f  e.  ( X H y ) ( f ( <. X ,  X >.  .x.  y )
g )  =  f ) )
7 oveq1 6251 . . . . . . . 8  |-  ( y  =  X  ->  (
y H X )  =  ( X H X ) )
8 opeq1 4125 . . . . . . . . . . 11  |-  ( y  =  X  ->  <. y ,  X >.  =  <. X ,  X >. )
98oveq1d 6259 . . . . . . . . . 10  |-  ( y  =  X  ->  ( <. y ,  X >.  .x. 
X )  =  (
<. X ,  X >.  .x. 
X ) )
109oveqd 6261 . . . . . . . . 9  |-  ( y  =  X  ->  (
g ( <. y ,  X >.  .x.  X ) f )  =  ( g ( <. X ,  X >.  .x.  X )
f ) )
1110eqeq1d 2425 . . . . . . . 8  |-  ( y  =  X  ->  (
( g ( <.
y ,  X >.  .x. 
X ) f )  =  f  <->  ( g
( <. X ,  X >.  .x.  X ) f )  =  f ) )
127, 11raleqbidv 2973 . . . . . . 7  |-  ( y  =  X  ->  ( A. f  e.  (
y H X ) ( g ( <.
y ,  X >.  .x. 
X ) f )  =  f  <->  A. f  e.  ( X H X ) ( g (
<. X ,  X >.  .x. 
X ) f )  =  f ) )
13 oveq2 6252 . . . . . . . 8  |-  ( y  =  X  ->  ( X H y )  =  ( X H X ) )
14 oveq2 6252 . . . . . . . . . 10  |-  ( y  =  X  ->  ( <. X ,  X >.  .x.  y )  =  (
<. X ,  X >.  .x. 
X ) )
1514oveqd 6261 . . . . . . . . 9  |-  ( y  =  X  ->  (
f ( <. X ,  X >.  .x.  y )
g )  =  ( f ( <. X ,  X >.  .x.  X )
g ) )
1615eqeq1d 2425 . . . . . . . 8  |-  ( y  =  X  ->  (
( f ( <. X ,  X >.  .x.  y ) g )  =  f  <->  ( f
( <. X ,  X >.  .x.  X ) g )  =  f ) )
1713, 16raleqbidv 2973 . . . . . . 7  |-  ( y  =  X  ->  ( A. f  e.  ( X H y ) ( f ( <. X ,  X >.  .x.  y )
g )  =  f  <->  A. f  e.  ( X H X ) ( f ( <. X ,  X >.  .x.  X )
g )  =  f ) )
1812, 17anbi12d 715 . . . . . 6  |-  ( y  =  X  ->  (
( A. f  e.  ( y H X ) ( g (
<. y ,  X >.  .x. 
X ) f )  =  f  /\  A. f  e.  ( X H y ) ( f ( <. X ,  X >.  .x.  y )
g )  =  f )  <->  ( A. f  e.  ( X H X ) ( g (
<. X ,  X >.  .x. 
X ) f )  =  f  /\  A. f  e.  ( X H X ) ( f ( <. X ,  X >.  .x.  X ) g )  =  f ) ) )
1918rspcv 3116 . . . . 5  |-  ( X  e.  B  ->  ( A. y  e.  B  ( A. f  e.  ( y H X ) ( g ( <.
y ,  X >.  .x. 
X ) f )  =  f  /\  A. f  e.  ( X H y ) ( f ( <. X ,  X >.  .x.  y )
g )  =  f )  ->  ( A. f  e.  ( X H X ) ( g ( <. X ,  X >.  .x.  X ) f )  =  f  /\  A. f  e.  ( X H X ) ( f ( <. X ,  X >.  .x.  X )
g )  =  f ) ) )
205, 19syl 17 . . . 4  |-  ( ph  ->  ( A. y  e.  B  ( A. f  e.  ( y H X ) ( g (
<. y ,  X >.  .x. 
X ) f )  =  f  /\  A. f  e.  ( X H y ) ( f ( <. X ,  X >.  .x.  y )
g )  =  f )  ->  ( A. f  e.  ( X H X ) ( g ( <. X ,  X >.  .x.  X ) f )  =  f  /\  A. f  e.  ( X H X ) ( f ( <. X ,  X >.  .x.  X )
g )  =  f ) ) )
2120ralrimivw 2775 . . 3  |-  ( ph  ->  A. g  e.  ( X H X ) ( A. y  e.  B  ( A. f  e.  ( y H X ) ( g (
<. y ,  X >.  .x. 
X ) f )  =  f  /\  A. f  e.  ( X H y ) ( f ( <. X ,  X >.  .x.  y )
g )  =  f )  ->  ( A. f  e.  ( X H X ) ( g ( <. X ,  X >.  .x.  X ) f )  =  f  /\  A. f  e.  ( X H X ) ( f ( <. X ,  X >.  .x.  X )
g )  =  f ) ) )
22 id 22 . . . . . . . 8  |-  ( ( A. f  e.  ( X H X ) ( g ( <. X ,  X >.  .x. 
X ) f )  =  f  /\  A. f  e.  ( X H X ) ( f ( <. X ,  X >.  .x.  X ) h )  =  f )  ->  ( A. f  e.  ( X H X ) ( g (
<. X ,  X >.  .x. 
X ) f )  =  f  /\  A. f  e.  ( X H X ) ( f ( <. X ,  X >.  .x.  X ) h )  =  f ) )
2322ad2ant2rl 753 . . . . . . 7  |-  ( ( ( A. f  e.  ( X H X ) ( g (
<. X ,  X >.  .x. 
X ) f )  =  f  /\  A. f  e.  ( X H X ) ( f ( <. X ,  X >.  .x.  X ) g )  =  f )  /\  ( A. f  e.  ( X H X ) ( h (
<. X ,  X >.  .x. 
X ) f )  =  f  /\  A. f  e.  ( X H X ) ( f ( <. X ,  X >.  .x.  X ) h )  =  f ) )  ->  ( A. f  e.  ( X H X ) ( g ( <. X ,  X >.  .x.  X ) f )  =  f  /\  A. f  e.  ( X H X ) ( f ( <. X ,  X >.  .x.  X )
h )  =  f ) )
24 oveq2 6252 . . . . . . . . . 10  |-  ( f  =  h  ->  (
g ( <. X ,  X >.  .x.  X )
f )  =  ( g ( <. X ,  X >.  .x.  X )
h ) )
25 id 22 . . . . . . . . . 10  |-  ( f  =  h  ->  f  =  h )
2624, 25eqeq12d 2438 . . . . . . . . 9  |-  ( f  =  h  ->  (
( g ( <. X ,  X >.  .x. 
X ) f )  =  f  <->  ( g
( <. X ,  X >.  .x.  X ) h )  =  h ) )
2726rspcv 3116 . . . . . . . 8  |-  ( h  e.  ( X H X )  ->  ( A. f  e.  ( X H X ) ( g ( <. X ,  X >.  .x.  X )
f )  =  f  ->  ( g (
<. X ,  X >.  .x. 
X ) h )  =  h ) )
28 oveq1 6251 . . . . . . . . . 10  |-  ( f  =  g  ->  (
f ( <. X ,  X >.  .x.  X )
h )  =  ( g ( <. X ,  X >.  .x.  X )
h ) )
29 id 22 . . . . . . . . . 10  |-  ( f  =  g  ->  f  =  g )
3028, 29eqeq12d 2438 . . . . . . . . 9  |-  ( f  =  g  ->  (
( f ( <. X ,  X >.  .x. 
X ) h )  =  f  <->  ( g
( <. X ,  X >.  .x.  X ) h )  =  g ) )
3130rspcv 3116 . . . . . . . 8  |-  ( g  e.  ( X H X )  ->  ( A. f  e.  ( X H X ) ( f ( <. X ,  X >.  .x.  X )
h )  =  f  ->  ( g (
<. X ,  X >.  .x. 
X ) h )  =  g ) )
3227, 31im2anan9r 844 . . . . . . 7  |-  ( ( g  e.  ( X H X )  /\  h  e.  ( X H X ) )  -> 
( ( A. f  e.  ( X H X ) ( g (
<. X ,  X >.  .x. 
X ) f )  =  f  /\  A. f  e.  ( X H X ) ( f ( <. X ,  X >.  .x.  X ) h )  =  f )  ->  ( ( g ( <. X ,  X >.  .x.  X ) h )  =  h  /\  ( g ( <. X ,  X >.  .x. 
X ) h )  =  g ) ) )
33 eqtr2 2443 . . . . . . . 8  |-  ( ( ( g ( <. X ,  X >.  .x. 
X ) h )  =  h  /\  (
g ( <. X ,  X >.  .x.  X )
h )  =  g )  ->  h  =  g )
3433eqcomd 2429 . . . . . . 7  |-  ( ( ( g ( <. X ,  X >.  .x. 
X ) h )  =  h  /\  (
g ( <. X ,  X >.  .x.  X )
h )  =  g )  ->  g  =  h )
3523, 32, 34syl56 35 . . . . . 6  |-  ( ( g  e.  ( X H X )  /\  h  e.  ( X H X ) )  -> 
( ( ( A. f  e.  ( X H X ) ( g ( <. X ,  X >.  .x.  X ) f )  =  f  /\  A. f  e.  ( X H X ) ( f ( <. X ,  X >.  .x.  X )
g )  =  f )  /\  ( A. f  e.  ( X H X ) ( h ( <. X ,  X >.  .x.  X ) f )  =  f  /\  A. f  e.  ( X H X ) ( f ( <. X ,  X >.  .x.  X )
h )  =  f ) )  ->  g  =  h ) )
3635rgen2a 2787 . . . . 5  |-  A. g  e.  ( X H X ) A. h  e.  ( X H X ) ( ( ( A. f  e.  ( X H X ) ( g ( <. X ,  X >.  .x. 
X ) f )  =  f  /\  A. f  e.  ( X H X ) ( f ( <. X ,  X >.  .x.  X ) g )  =  f )  /\  ( A. f  e.  ( X H X ) ( h (
<. X ,  X >.  .x. 
X ) f )  =  f  /\  A. f  e.  ( X H X ) ( f ( <. X ,  X >.  .x.  X ) h )  =  f ) )  ->  g  =  h )
3736a1i 11 . . . 4  |-  ( ph  ->  A. g  e.  ( X H X ) A. h  e.  ( X H X ) ( ( ( A. f  e.  ( X H X ) ( g ( <. X ,  X >.  .x.  X ) f )  =  f  /\  A. f  e.  ( X H X ) ( f ( <. X ,  X >.  .x.  X )
g )  =  f )  /\  ( A. f  e.  ( X H X ) ( h ( <. X ,  X >.  .x.  X ) f )  =  f  /\  A. f  e.  ( X H X ) ( f ( <. X ,  X >.  .x.  X )
h )  =  f ) )  ->  g  =  h ) )
38 oveq1 6251 . . . . . . . 8  |-  ( g  =  h  ->  (
g ( <. X ,  X >.  .x.  X )
f )  =  ( h ( <. X ,  X >.  .x.  X )
f ) )
3938eqeq1d 2425 . . . . . . 7  |-  ( g  =  h  ->  (
( g ( <. X ,  X >.  .x. 
X ) f )  =  f  <->  ( h
( <. X ,  X >.  .x.  X ) f )  =  f ) )
4039ralbidv 2799 . . . . . 6  |-  ( g  =  h  ->  ( A. f  e.  ( X H X ) ( g ( <. X ,  X >.  .x.  X )
f )  =  f  <->  A. f  e.  ( X H X ) ( h ( <. X ,  X >.  .x.  X )
f )  =  f ) )
41 oveq2 6252 . . . . . . . 8  |-  ( g  =  h  ->  (
f ( <. X ,  X >.  .x.  X )
g )  =  ( f ( <. X ,  X >.  .x.  X )
h ) )
4241eqeq1d 2425 . . . . . . 7  |-  ( g  =  h  ->  (
( f ( <. X ,  X >.  .x. 
X ) g )  =  f  <->  ( f
( <. X ,  X >.  .x.  X ) h )  =  f ) )
4342ralbidv 2799 . . . . . 6  |-  ( g  =  h  ->  ( A. f  e.  ( X H X ) ( f ( <. X ,  X >.  .x.  X )
g )  =  f  <->  A. f  e.  ( X H X ) ( f ( <. X ,  X >.  .x.  X )
h )  =  f ) )
4440, 43anbi12d 715 . . . . 5  |-  ( g  =  h  ->  (
( A. f  e.  ( X H X ) ( g (
<. X ,  X >.  .x. 
X ) f )  =  f  /\  A. f  e.  ( X H X ) ( f ( <. X ,  X >.  .x.  X ) g )  =  f )  <-> 
( A. f  e.  ( X H X ) ( h (
<. X ,  X >.  .x. 
X ) f )  =  f  /\  A. f  e.  ( X H X ) ( f ( <. X ,  X >.  .x.  X ) h )  =  f ) ) )
4544rmo4 3201 . . . 4  |-  ( E* g  e.  ( X H X ) ( A. f  e.  ( X H X ) ( g ( <. X ,  X >.  .x. 
X ) f )  =  f  /\  A. f  e.  ( X H X ) ( f ( <. X ,  X >.  .x.  X ) g )  =  f )  <->  A. g  e.  ( X H X ) A. h  e.  ( X H X ) ( ( ( A. f  e.  ( X H X ) ( g (
<. X ,  X >.  .x. 
X ) f )  =  f  /\  A. f  e.  ( X H X ) ( f ( <. X ,  X >.  .x.  X ) g )  =  f )  /\  ( A. f  e.  ( X H X ) ( h (
<. X ,  X >.  .x. 
X ) f )  =  f  /\  A. f  e.  ( X H X ) ( f ( <. X ,  X >.  .x.  X ) h )  =  f ) )  ->  g  =  h ) )
4637, 45sylibr 215 . . 3  |-  ( ph  ->  E* g  e.  ( X H X ) ( A. f  e.  ( X H X ) ( g (
<. X ,  X >.  .x. 
X ) f )  =  f  /\  A. f  e.  ( X H X ) ( f ( <. X ,  X >.  .x.  X ) g )  =  f ) )
47 rmoim 3209 . . 3  |-  ( A. g  e.  ( X H X ) ( A. y  e.  B  ( A. f  e.  (
y H X ) ( g ( <.
y ,  X >.  .x. 
X ) f )  =  f  /\  A. f  e.  ( X H y ) ( f ( <. X ,  X >.  .x.  y )
g )  =  f )  ->  ( A. f  e.  ( X H X ) ( g ( <. X ,  X >.  .x.  X ) f )  =  f  /\  A. f  e.  ( X H X ) ( f ( <. X ,  X >.  .x.  X )
g )  =  f ) )  ->  ( E* g  e.  ( X H X ) ( A. f  e.  ( X H X ) ( g ( <. X ,  X >.  .x. 
X ) f )  =  f  /\  A. f  e.  ( X H X ) ( f ( <. X ,  X >.  .x.  X ) g )  =  f )  ->  E* g  e.  ( X H X ) A. y  e.  B  ( A. f  e.  ( y H X ) ( g (
<. y ,  X >.  .x. 
X ) f )  =  f  /\  A. f  e.  ( X H y ) ( f ( <. X ,  X >.  .x.  y )
g )  =  f ) ) )
4821, 46, 47sylc 62 . 2  |-  ( ph  ->  E* g  e.  ( X H X ) A. y  e.  B  ( A. f  e.  ( y H X ) ( g ( <.
y ,  X >.  .x. 
X ) f )  =  f  /\  A. f  e.  ( X H y ) ( f ( <. X ,  X >.  .x.  y )
g )  =  f ) )
49 reu5 2980 . 2  |-  ( E! g  e.  ( X H X ) A. y  e.  B  ( A. f  e.  (
y H X ) ( g ( <.
y ,  X >.  .x. 
X ) f )  =  f  /\  A. f  e.  ( X H y ) ( f ( <. X ,  X >.  .x.  y )
g )  =  f )  <->  ( E. g  e.  ( X H X ) A. y  e.  B  ( A. f  e.  ( y H X ) ( g (
<. y ,  X >.  .x. 
X ) f )  =  f  /\  A. f  e.  ( X H y ) ( f ( <. X ,  X >.  .x.  y )
g )  =  f )  /\  E* g  e.  ( X H X ) A. y  e.  B  ( A. f  e.  ( y H X ) ( g (
<. y ,  X >.  .x. 
X ) f )  =  f  /\  A. f  e.  ( X H y ) ( f ( <. X ,  X >.  .x.  y )
g )  =  f ) ) )
506, 48, 49sylanbrc 668 1  |-  ( ph  ->  E! g  e.  ( X H X ) A. y  e.  B  ( A. f  e.  ( y H X ) ( g ( <.
y ,  X >.  .x. 
X ) f )  =  f  /\  A. f  e.  ( X H y ) ( f ( <. X ,  X >.  .x.  y )
g )  =  f ) )
Colors of variables: wff setvar class
Syntax hints:    -> wi 4    /\ wa 370    = wceq 1437    e. wcel 1872   A.wral 2709   E.wrex 2710   E!wreu 2711   E*wrmo 2712   <.cop 3942   ` cfv 5539  (class class class)co 6244   Basecbs 15059   Hom chom 15139  compcco 15140   Catccat 15508
This theorem was proved from axioms:  ax-mp 5  ax-1 6  ax-2 7  ax-3 8  ax-gen 1663  ax-4 1676  ax-5 1752  ax-6 1798  ax-7 1843  ax-10 1891  ax-11 1896  ax-12 1909  ax-13 2058  ax-ext 2403  ax-nul 4493
This theorem depends on definitions:  df-bi 188  df-or 371  df-an 372  df-3an 984  df-tru 1440  df-ex 1658  df-nf 1662  df-sb 1791  df-eu 2275  df-mo 2276  df-clab 2410  df-cleq 2416  df-clel 2419  df-nfc 2553  df-ne 2596  df-ral 2714  df-rex 2715  df-reu 2716  df-rmo 2717  df-rab 2718  df-v 3019  df-sbc 3238  df-dif 3377  df-un 3379  df-in 3381  df-ss 3388  df-nul 3700  df-if 3850  df-sn 3937  df-pr 3939  df-op 3943  df-uni 4158  df-br 4362  df-iota 5503  df-fv 5547  df-ov 6247  df-cat 15512
This theorem is referenced by:  catidd  15524  catidcl  15526  catlid  15527  catrid  15528
  Copyright terms: Public domain W3C validator