Metamath Proof Explorer


Theorem euendfunc

Description: If there exists a unique endofunctor (a functor from a category to itself) for a non-empty category, then the category is terminal. This partially explains why two categories are sufficient in termc2 . (Contributed by Zhi Wang, 20-Oct-2025)

Ref Expression
Hypotheses euendfunc.f φ ∃! f f C Func C
euendfunc.b B = Base C
euendfunc.0 φ B
Assertion euendfunc Could not format assertion : No typesetting found for |- ( ph -> C e. TermCat ) with typecode |-

Proof

Step Hyp Ref Expression
1 euendfunc.f φ ∃! f f C Func C
2 euendfunc.b B = Base C
3 euendfunc.0 φ B
4 n0 B x x B
5 3 4 sylib φ x x B
6 eqid id func C = id func C
7 eqid C Δ func C = C Δ func C
8 1 adantr φ x B ∃! f f C Func C
9 euex ∃! f f C Func C f f C Func C
10 8 9 syl φ x B f f C Func C
11 funcrcl f C Func C C Cat C Cat
12 11 simpld f C Func C C Cat
13 12 exlimiv f f C Func C C Cat
14 10 13 syl φ x B C Cat
15 simpr φ x B x B
16 eqid 1 st C Δ func C x = 1 st C Δ func C x
17 6 idfucl C Cat id func C C Func C
18 14 17 syl φ x B id func C C Func C
19 7 14 14 2 15 16 diag1cl φ x B 1 st C Δ func C x C Func C
20 eumo ∃! f f C Func C * f f C Func C
21 8 20 syl φ x B * f f C Func C
22 eleq1w f = g f C Func C g C Func C
23 22 mo4 * f f C Func C f g f C Func C g C Func C f = g
24 21 23 sylib φ x B f g f C Func C g C Func C f = g
25 fvex id func C V
26 fvex 1 st C Δ func C x V
27 simpl f = id func C g = 1 st C Δ func C x f = id func C
28 27 eleq1d f = id func C g = 1 st C Δ func C x f C Func C id func C C Func C
29 simpr f = id func C g = 1 st C Δ func C x g = 1 st C Δ func C x
30 29 eleq1d f = id func C g = 1 st C Δ func C x g C Func C 1 st C Δ func C x C Func C
31 28 30 anbi12d f = id func C g = 1 st C Δ func C x f C Func C g C Func C id func C C Func C 1 st C Δ func C x C Func C
32 eqeq12 f = id func C g = 1 st C Δ func C x f = g id func C = 1 st C Δ func C x
33 31 32 imbi12d f = id func C g = 1 st C Δ func C x f C Func C g C Func C f = g id func C C Func C 1 st C Δ func C x C Func C id func C = 1 st C Δ func C x
34 33 spc2gv id func C V 1 st C Δ func C x V f g f C Func C g C Func C f = g id func C C Func C 1 st C Δ func C x C Func C id func C = 1 st C Δ func C x
35 25 26 34 mp2an f g f C Func C g C Func C f = g id func C C Func C 1 st C Δ func C x C Func C id func C = 1 st C Δ func C x
36 24 35 syl φ x B id func C C Func C 1 st C Δ func C x C Func C id func C = 1 st C Δ func C x
37 18 19 36 mp2and φ x B id func C = 1 st C Δ func C x
38 6 7 14 2 15 16 37 idfudiag1 Could not format ( ( ph /\ x e. B ) -> C e. TermCat ) : No typesetting found for |- ( ( ph /\ x e. B ) -> C e. TermCat ) with typecode |-
39 5 38 exlimddv Could not format ( ph -> C e. TermCat ) : No typesetting found for |- ( ph -> C e. TermCat ) with typecode |-