Metamath Proof Explorer


Theorem termfucterm

Description: All functors between two terminal categories are isomorphisms. (Contributed by Zhi Wang, 17-Nov-2025)

Ref Expression
Hypotheses termfucterm.c ⊢ C = CatCat ⁡ U
termfucterm.b ⊢ B = Base C
termfucterm.i ⊢ I = Iso ⁡ C
termfucterm.x ⊢ φ → X ∈ B
termfucterm.xt No typesetting found for |- ( ph -> X e. TermCat ) with typecode |-
termfucterm.y ⊢ φ → Y ∈ B
termfucterm.yt No typesetting found for |- ( ph -> Y e. TermCat ) with typecode |-
Assertion termfucterm ⊢ φ → X Func Y = X I Y

Proof

Step Hyp Ref Expression
1 termfucterm.c ⊢ C = CatCat ⁡ U
2 termfucterm.b ⊢ B = Base C
3 termfucterm.i ⊢ I = Iso ⁡ C
4 termfucterm.x ⊢ φ → X ∈ B
5 termfucterm.xt Could not format ( ph -> X e. TermCat ) : No typesetting found for |- ( ph -> X e. TermCat ) with typecode |-
6 termfucterm.y ⊢ φ → Y ∈ B
7 termfucterm.yt Could not format ( ph -> Y e. TermCat ) : No typesetting found for |- ( ph -> Y e. TermCat ) with typecode |-
8 1 2 4 6 5 termcciso Could not format ( ph -> ( Y e. TermCat <-> X ( ~=c ` C ) Y ) ) : No typesetting found for |- ( ph -> ( Y e. TermCat <-> X ( ~=c ` C ) Y ) ) with typecode |-
9 7 8 mpbid ⊢ φ → X ≃ 𝑐 ⁡ C Y
10 cicrcl2 ⊢ X ≃ 𝑐 ⁡ C Y → C ∈ Cat
11 9 10 syl ⊢ φ → C ∈ Cat
12 3 2 11 4 6 cic ⊢ φ → X ≃ 𝑐 ⁡ C Y ↔ ∃ g g ∈ X I Y
13 9 12 mpbid ⊢ φ → ∃ g g ∈ X I Y
14 13 adantr ⊢ φ ∧ f ∈ X Func Y → ∃ g g ∈ X I Y
15 eqid ⊢ X FuncCat Y = X FuncCat Y
16 5 termccatd ⊢ φ → X ∈ Cat
17 15 16 7 fucterm Could not format ( ph -> ( X FuncCat Y ) e. TermCat ) : No typesetting found for |- ( ph -> ( X FuncCat Y ) e. TermCat ) with typecode |-
18 17 ad2antrr Could not format ( ( ( ph /\ f e. ( X Func Y ) ) /\ g e. ( X I Y ) ) -> ( X FuncCat Y ) e. TermCat ) : No typesetting found for |- ( ( ( ph /\ f e. ( X Func Y ) ) /\ g e. ( X I Y ) ) -> ( X FuncCat Y ) e. TermCat ) with typecode |-
19 15 fucbas ⊢ X Func Y = Base X FuncCat Y
20 simplr ⊢ φ ∧ f ∈ X Func Y ∧ g ∈ X I Y → f ∈ X Func Y
21 fullfunc ⊢ X Full Y ⊆ X Func Y
22 eqid ⊢ Base X = Base X
23 eqid ⊢ Base Y = Base Y
24 simpr ⊢ φ ∧ f ∈ X Func Y ∧ g ∈ X I Y → g ∈ X I Y
25 1 22 23 3 24 catcisoi ⊢ φ ∧ f ∈ X Func Y ∧ g ∈ X I Y → g ∈ X Full Y ∩ X Faith Y ∧ 1 st ⁡ g : Base X ⟶ 1-1 onto Base Y
26 25 simpld ⊢ φ ∧ f ∈ X Func Y ∧ g ∈ X I Y → g ∈ X Full Y ∩ X Faith Y
27 26 elin1d ⊢ φ ∧ f ∈ X Func Y ∧ g ∈ X I Y → g ∈ X Full Y
28 21 27 sselid ⊢ φ ∧ f ∈ X Func Y ∧ g ∈ X I Y → g ∈ X Func Y
29 18 19 20 28 termcbasmo ⊢ φ ∧ f ∈ X Func Y ∧ g ∈ X I Y → f = g
30 29 24 eqeltrd ⊢ φ ∧ f ∈ X Func Y ∧ g ∈ X I Y → f ∈ X I Y
31 14 30 exlimddv ⊢ φ ∧ f ∈ X Func Y → f ∈ X I Y
32 simpr ⊢ φ ∧ f ∈ X I Y → f ∈ X I Y
33 1 22 23 3 32 catcisoi ⊢ φ ∧ f ∈ X I Y → f ∈ X Full Y ∩ X Faith Y ∧ 1 st ⁡ f : Base X ⟶ 1-1 onto Base Y
34 33 simpld ⊢ φ ∧ f ∈ X I Y → f ∈ X Full Y ∩ X Faith Y
35 34 elin1d ⊢ φ ∧ f ∈ X I Y → f ∈ X Full Y
36 21 35 sselid ⊢ φ ∧ f ∈ X I Y → f ∈ X Func Y
37 31 36 impbida ⊢ φ → f ∈ X Func Y ↔ f ∈ X I Y
38 37 eqrdv ⊢ φ → X Func Y = X I Y