Metamath Proof Explorer


Theorem catidd

Description: Deduce the identity arrow in a category. (Contributed by Mario Carneiro, 3-Jan-2017)

Ref Expression
Hypotheses catidd.b φB=BaseC
catidd.h φH=HomC
catidd.o φ·˙=compC
catidd.c φCCat
catidd.1 φxB1˙xHx
catidd.2 φxByBfyHx1˙yx·˙xf=f
catidd.3 φxByBfxHyfxx·˙y1˙=f
Assertion catidd φIdC=xB1˙

Proof

Step Hyp Ref Expression
1 catidd.b φB=BaseC
2 catidd.h φH=HomC
3 catidd.o φ·˙=compC
4 catidd.c φCCat
5 catidd.1 φxB1˙xHx
6 catidd.2 φxByBfyHx1˙yx·˙xf=f
7 catidd.3 φxByBfxHyfxx·˙y1˙=f
8 6 ex φxByBfyHx1˙yx·˙xf=f
9 1 eleq2d φxBxBaseC
10 1 eleq2d φyByBaseC
11 2 oveqd φyHx=yHomCx
12 11 eleq2d φfyHxfyHomCx
13 9 10 12 3anbi123d φxByBfyHxxBaseCyBaseCfyHomCx
14 3 oveqd φyx·˙x=yxcompCx
15 14 oveqd φ1˙yx·˙xf=1˙yxcompCxf
16 15 eqeq1d φ1˙yx·˙xf=f1˙yxcompCxf=f
17 8 13 16 3imtr3d φxBaseCyBaseCfyHomCx1˙yxcompCxf=f
18 17 3expd φxBaseCyBaseCfyHomCx1˙yxcompCxf=f
19 18 imp41 φxBaseCyBaseCfyHomCx1˙yxcompCxf=f
20 19 ralrimiva φxBaseCyBaseCfyHomCx1˙yxcompCxf=f
21 7 ex φxByBfxHyfxx·˙y1˙=f
22 2 oveqd φxHy=xHomCy
23 22 eleq2d φfxHyfxHomCy
24 9 10 23 3anbi123d φxByBfxHyxBaseCyBaseCfxHomCy
25 3 oveqd φxx·˙y=xxcompCy
26 25 oveqd φfxx·˙y1˙=fxxcompCy1˙
27 26 eqeq1d φfxx·˙y1˙=ffxxcompCy1˙=f
28 21 24 27 3imtr3d φxBaseCyBaseCfxHomCyfxxcompCy1˙=f
29 28 3expd φxBaseCyBaseCfxHomCyfxxcompCy1˙=f
30 29 imp41 φxBaseCyBaseCfxHomCyfxxcompCy1˙=f
31 30 ralrimiva φxBaseCyBaseCfxHomCyfxxcompCy1˙=f
32 20 31 jca φxBaseCyBaseCfyHomCx1˙yxcompCxf=ffxHomCyfxxcompCy1˙=f
33 32 ralrimiva φxBaseCyBaseCfyHomCx1˙yxcompCxf=ffxHomCyfxxcompCy1˙=f
34 5 ex φxB1˙xHx
35 2 oveqd φxHx=xHomCx
36 35 eleq2d φ1˙xHx1˙xHomCx
37 34 9 36 3imtr3d φxBaseC1˙xHomCx
38 37 imp φxBaseC1˙xHomCx
39 eqid BaseC=BaseC
40 eqid HomC=HomC
41 eqid compC=compC
42 4 adantr φxBaseCCCat
43 simpr φxBaseCxBaseC
44 39 40 41 42 43 catideu φxBaseC∃!gxHomCxyBaseCfyHomCxgyxcompCxf=ffxHomCyfxxcompCyg=f
45 oveq1 g=1˙gyxcompCxf=1˙yxcompCxf
46 45 eqeq1d g=1˙gyxcompCxf=f1˙yxcompCxf=f
47 46 ralbidv g=1˙fyHomCxgyxcompCxf=ffyHomCx1˙yxcompCxf=f
48 oveq2 g=1˙fxxcompCyg=fxxcompCy1˙
49 48 eqeq1d g=1˙fxxcompCyg=ffxxcompCy1˙=f
50 49 ralbidv g=1˙fxHomCyfxxcompCyg=ffxHomCyfxxcompCy1˙=f
51 47 50 anbi12d g=1˙fyHomCxgyxcompCxf=ffxHomCyfxxcompCyg=ffyHomCx1˙yxcompCxf=ffxHomCyfxxcompCy1˙=f
52 51 ralbidv g=1˙yBaseCfyHomCxgyxcompCxf=ffxHomCyfxxcompCyg=fyBaseCfyHomCx1˙yxcompCxf=ffxHomCyfxxcompCy1˙=f
53 52 riota2 1˙xHomCx∃!gxHomCxyBaseCfyHomCxgyxcompCxf=ffxHomCyfxxcompCyg=fyBaseCfyHomCx1˙yxcompCxf=ffxHomCyfxxcompCy1˙=fιgxHomCx|yBaseCfyHomCxgyxcompCxf=ffxHomCyfxxcompCyg=f=1˙
54 38 44 53 syl2anc φxBaseCyBaseCfyHomCx1˙yxcompCxf=ffxHomCyfxxcompCy1˙=fιgxHomCx|yBaseCfyHomCxgyxcompCxf=ffxHomCyfxxcompCyg=f=1˙
55 33 54 mpbid φxBaseCιgxHomCx|yBaseCfyHomCxgyxcompCxf=ffxHomCyfxxcompCyg=f=1˙
56 55 mpteq2dva φxBaseCιgxHomCx|yBaseCfyHomCxgyxcompCxf=ffxHomCyfxxcompCyg=f=xBaseC1˙
57 eqid IdC=IdC
58 39 40 41 4 57 cidfval φIdC=xBaseCιgxHomCx|yBaseCfyHomCxgyxcompCxf=ffxHomCyfxxcompCyg=f
59 1 mpteq1d φxB1˙=xBaseC1˙
60 56 58 59 3eqtr4d φIdC=xB1˙