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

Theorem catideu 15167
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 15166 . 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 6277 . . . . . . . 8  |-  ( y  =  X  ->  (
y H X )  =  ( X H X ) )
8 opeq1 4203 . . . . . . . . . . 11  |-  ( y  =  X  ->  <. y ,  X >.  =  <. X ,  X >. )
98oveq1d 6285 . . . . . . . . . 10  |-  ( y  =  X  ->  ( <. y ,  X >.  .x. 
X )  =  (
<. X ,  X >.  .x. 
X ) )
109oveqd 6287 . . . . . . . . 9  |-  ( y  =  X  ->  (
g ( <. y ,  X >.  .x.  X ) f )  =  ( g ( <. X ,  X >.  .x.  X )
f ) )
1110eqeq1d 2456 . . . . . . . 8  |-  ( y  =  X  ->  (
( g ( <.
y ,  X >.  .x. 
X ) f )  =  f  <->  ( g
( <. X ,  X >.  .x.  X ) f )  =  f ) )
127, 11raleqbidv 3065 . . . . . . 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 6278 . . . . . . . 8  |-  ( y  =  X  ->  ( X H y )  =  ( X H X ) )
14 oveq2 6278 . . . . . . . . . 10  |-  ( y  =  X  ->  ( <. X ,  X >.  .x.  y )  =  (
<. X ,  X >.  .x. 
X ) )
1514oveqd 6287 . . . . . . . . 9  |-  ( y  =  X  ->  (
f ( <. X ,  X >.  .x.  y )
g )  =  ( f ( <. X ,  X >.  .x.  X )
g ) )
1615eqeq1d 2456 . . . . . . . 8  |-  ( y  =  X  ->  (
( f ( <. X ,  X >.  .x.  y ) g )  =  f  <->  ( f
( <. X ,  X >.  .x.  X ) g )  =  f ) )
1713, 16raleqbidv 3065 . . . . . . 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 708 . . . . . 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 3203 . . . . 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 16 . . . 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 2869 . . 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 746 . . . . . . 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 6278 . . . . . . . . . 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 2476 . . . . . . . . 9  |-  ( f  =  h  ->  (
( g ( <. X ,  X >.  .x. 
X ) f )  =  f  <->  ( g
( <. X ,  X >.  .x.  X ) h )  =  h ) )
2726rspcv 3203 . . . . . . . 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 6277 . . . . . . . . . 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 2476 . . . . . . . . 9  |-  ( f  =  g  ->  (
( f ( <. X ,  X >.  .x. 
X ) h )  =  f  <->  ( g
( <. X ,  X >.  .x.  X ) h )  =  g ) )
3130rspcv 3203 . . . . . . . 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 834 . . . . . . 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 2481 . . . . . . . 8  |-  ( ( ( g ( <. X ,  X >.  .x. 
X ) h )  =  h  /\  (
g ( <. X ,  X >.  .x.  X )
h )  =  g )  ->  h  =  g )
3433eqcomd 2462 . . . . . . 7  |-  ( ( ( g ( <. X ,  X >.  .x. 
X ) h )  =  h  /\  (
g ( <. X ,  X >.  .x.  X )
h )  =  g )  ->  g  =  h )
3523, 32, 34syl56 34 . . . . . 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 2881 . . . . 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 6277 . . . . . . . 8  |-  ( g  =  h  ->  (
g ( <. X ,  X >.  .x.  X )
f )  =  ( h ( <. X ,  X >.  .x.  X )
f ) )
3938eqeq1d 2456 . . . . . . 7  |-  ( g  =  h  ->  (
( g ( <. X ,  X >.  .x. 
X ) f )  =  f  <->  ( h
( <. X ,  X >.  .x.  X ) f )  =  f ) )
4039ralbidv 2893 . . . . . 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 6278 . . . . . . . 8  |-  ( g  =  h  ->  (
f ( <. X ,  X >.  .x.  X )
g )  =  ( f ( <. X ,  X >.  .x.  X )
h ) )
4241eqeq1d 2456 . . . . . . 7  |-  ( g  =  h  ->  (
( f ( <. X ,  X >.  .x. 
X ) g )  =  f  <->  ( f
( <. X ,  X >.  .x.  X ) h )  =  f ) )
4342ralbidv 2893 . . . . . 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 708 . . . . 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 3289 . . . 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 212 . . 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 3296 . . 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 60 . 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 3070 . 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 662 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 367    = wceq 1398    e. wcel 1823   A.wral 2804   E.wrex 2805   E!wreu 2806   E*wrmo 2807   <.cop 4022   ` cfv 5570  (class class class)co 6270   Basecbs 14719   Hom chom 14798  compcco 14799   Catccat 15156
This theorem was proved from axioms:  ax-mp 5  ax-1 6  ax-2 7  ax-3 8  ax-gen 1623  ax-4 1636  ax-5 1709  ax-6 1752  ax-7 1795  ax-10 1842  ax-11 1847  ax-12 1859  ax-13 2004  ax-ext 2432  ax-nul 4568
This theorem depends on definitions:  df-bi 185  df-or 368  df-an 369  df-3an 973  df-tru 1401  df-ex 1618  df-nf 1622  df-sb 1745  df-eu 2288  df-mo 2289  df-clab 2440  df-cleq 2446  df-clel 2449  df-nfc 2604  df-ne 2651  df-ral 2809  df-rex 2810  df-reu 2811  df-rmo 2812  df-rab 2813  df-v 3108  df-sbc 3325  df-dif 3464  df-un 3466  df-in 3468  df-ss 3475  df-nul 3784  df-if 3930  df-sn 4017  df-pr 4019  df-op 4023  df-uni 4236  df-br 4440  df-iota 5534  df-fv 5578  df-ov 6273  df-cat 15160
This theorem is referenced by:  catidd  15172  catidcl  15174  catlid  15175  catrid  15176
  Copyright terms: Public domain W3C validator