This is an inofficial mirror of http://metamath.tirix.org for personal testing of a visualizer extension only.
Description: There exists a unique functor to a terminal category. (Contributed by Zhi Wang, 17-Oct-2025)
| Ref | Expression | ||
|---|---|---|---|
| Hypotheses | functermceu.c | |- ( ph -> C e. Cat ) |
|
| functermceu.d | |- ( ph -> D e. TermCat ) |
||
| Assertion | functermceu | |- ( ph -> E! f f e. ( C Func D ) ) |
| Step | Hyp | Ref | Expression |
|---|---|---|---|
| 1 | functermceu.c | |- ( ph -> C e. Cat ) |
|
| 2 | functermceu.d | |- ( ph -> D e. TermCat ) |
|
| 3 | opex | |- <. ( ( Base ` C ) X. ( Base ` D ) ) , ( x e. ( Base ` C ) , y e. ( Base ` C ) |-> ( ( x ( Hom ` C ) y ) X. ( ( ( ( Base ` C ) X. ( Base ` D ) ) ` x ) ( Hom ` D ) ( ( ( Base ` C ) X. ( Base ` D ) ) ` y ) ) ) ) >. e. _V |
|
| 4 | 3 | a1i | |- ( ph -> <. ( ( Base ` C ) X. ( Base ` D ) ) , ( x e. ( Base ` C ) , y e. ( Base ` C ) |-> ( ( x ( Hom ` C ) y ) X. ( ( ( ( Base ` C ) X. ( Base ` D ) ) ` x ) ( Hom ` D ) ( ( ( Base ` C ) X. ( Base ` D ) ) ` y ) ) ) ) >. e. _V ) |
| 5 | eqid | |- ( Base ` C ) = ( Base ` C ) |
|
| 6 | eqid | |- ( Base ` D ) = ( Base ` D ) |
|
| 7 | eqid | |- ( Hom ` C ) = ( Hom ` C ) |
|
| 8 | eqid | |- ( Hom ` D ) = ( Hom ` D ) |
|
| 9 | eqid | |- ( ( Base ` C ) X. ( Base ` D ) ) = ( ( Base ` C ) X. ( Base ` D ) ) |
|
| 10 | eqid | |- ( x e. ( Base ` C ) , y e. ( Base ` C ) |-> ( ( x ( Hom ` C ) y ) X. ( ( ( ( Base ` C ) X. ( Base ` D ) ) ` x ) ( Hom ` D ) ( ( ( Base ` C ) X. ( Base ` D ) ) ` y ) ) ) ) = ( x e. ( Base ` C ) , y e. ( Base ` C ) |-> ( ( x ( Hom ` C ) y ) X. ( ( ( ( Base ` C ) X. ( Base ` D ) ) ` x ) ( Hom ` D ) ( ( ( Base ` C ) X. ( Base ` D ) ) ` y ) ) ) ) |
|
| 11 | 1 2 5 6 7 8 9 10 | functermc2 | |- ( ph -> ( C Func D ) = { <. ( ( Base ` C ) X. ( Base ` D ) ) , ( x e. ( Base ` C ) , y e. ( Base ` C ) |-> ( ( x ( Hom ` C ) y ) X. ( ( ( ( Base ` C ) X. ( Base ` D ) ) ` x ) ( Hom ` D ) ( ( ( Base ` C ) X. ( Base ` D ) ) ` y ) ) ) ) >. } ) |
| 12 | sneq | |- ( f = <. ( ( Base ` C ) X. ( Base ` D ) ) , ( x e. ( Base ` C ) , y e. ( Base ` C ) |-> ( ( x ( Hom ` C ) y ) X. ( ( ( ( Base ` C ) X. ( Base ` D ) ) ` x ) ( Hom ` D ) ( ( ( Base ` C ) X. ( Base ` D ) ) ` y ) ) ) ) >. -> { f } = { <. ( ( Base ` C ) X. ( Base ` D ) ) , ( x e. ( Base ` C ) , y e. ( Base ` C ) |-> ( ( x ( Hom ` C ) y ) X. ( ( ( ( Base ` C ) X. ( Base ` D ) ) ` x ) ( Hom ` D ) ( ( ( Base ` C ) X. ( Base ` D ) ) ` y ) ) ) ) >. } ) |
|
| 13 | 12 | eqeq2d | |- ( f = <. ( ( Base ` C ) X. ( Base ` D ) ) , ( x e. ( Base ` C ) , y e. ( Base ` C ) |-> ( ( x ( Hom ` C ) y ) X. ( ( ( ( Base ` C ) X. ( Base ` D ) ) ` x ) ( Hom ` D ) ( ( ( Base ` C ) X. ( Base ` D ) ) ` y ) ) ) ) >. -> ( ( C Func D ) = { f } <-> ( C Func D ) = { <. ( ( Base ` C ) X. ( Base ` D ) ) , ( x e. ( Base ` C ) , y e. ( Base ` C ) |-> ( ( x ( Hom ` C ) y ) X. ( ( ( ( Base ` C ) X. ( Base ` D ) ) ` x ) ( Hom ` D ) ( ( ( Base ` C ) X. ( Base ` D ) ) ` y ) ) ) ) >. } ) ) |
| 14 | 4 11 13 | spcedv | |- ( ph -> E. f ( C Func D ) = { f } ) |
| 15 | eusn | |- ( E! f f e. ( C Func D ) <-> E. f ( C Func D ) = { f } ) |
|
| 16 | 14 15 | sylibr | |- ( ph -> E! f f e. ( C Func D ) ) |