Metamath Proof Explorer


Theorem iscat

Description: The predicate "is a category". (Contributed by Mario Carneiro, 2-Jan-2017)

Ref Expression
Hypotheses iscat.b B=BaseC
iscat.h H=HomC
iscat.o ·˙=compC
Assertion iscat CVCCatxBgxHxyBfyHxgyx·˙xf=ffxHyfxx·˙yg=fyBzBfxHygyHzgxy·˙zfxHzwBkzHwkyz·˙wgxy·˙wf=kxz·˙wgxy·˙zf

Proof

Step Hyp Ref Expression
1 iscat.b B=BaseC
2 iscat.h H=HomC
3 iscat.o ·˙=compC
4 fvexd c=CBasecV
5 fveq2 c=CBasec=BaseC
6 5 1 eqtr4di c=CBasec=B
7 fvexd c=Cb=BHomcV
8 simpl c=Cb=Bc=C
9 8 fveq2d c=Cb=BHomc=HomC
10 9 2 eqtr4di c=Cb=BHomc=H
11 fvexd c=Cb=Bh=HcompcV
12 simpll c=Cb=Bh=Hc=C
13 12 fveq2d c=Cb=Bh=Hcompc=compC
14 13 3 eqtr4di c=Cb=Bh=Hcompc=·˙
15 simpllr c=Cb=Bh=Ho=·˙b=B
16 simplr c=Cb=Bh=Ho=·˙h=H
17 16 oveqd c=Cb=Bh=Ho=·˙xhx=xHx
18 16 oveqd c=Cb=Bh=Ho=·˙yhx=yHx
19 simpr c=Cb=Bh=Ho=·˙o=·˙
20 19 oveqd c=Cb=Bh=Ho=·˙yxox=yx·˙x
21 20 oveqd c=Cb=Bh=Ho=·˙gyxoxf=gyx·˙xf
22 21 eqeq1d c=Cb=Bh=Ho=·˙gyxoxf=fgyx·˙xf=f
23 18 22 raleqbidv c=Cb=Bh=Ho=·˙fyhxgyxoxf=ffyHxgyx·˙xf=f
24 16 oveqd c=Cb=Bh=Ho=·˙xhy=xHy
25 19 oveqd c=Cb=Bh=Ho=·˙xxoy=xx·˙y
26 25 oveqd c=Cb=Bh=Ho=·˙fxxoyg=fxx·˙yg
27 26 eqeq1d c=Cb=Bh=Ho=·˙fxxoyg=ffxx·˙yg=f
28 24 27 raleqbidv c=Cb=Bh=Ho=·˙fxhyfxxoyg=ffxHyfxx·˙yg=f
29 23 28 anbi12d c=Cb=Bh=Ho=·˙fyhxgyxoxf=ffxhyfxxoyg=ffyHxgyx·˙xf=ffxHyfxx·˙yg=f
30 15 29 raleqbidv c=Cb=Bh=Ho=·˙ybfyhxgyxoxf=ffxhyfxxoyg=fyBfyHxgyx·˙xf=ffxHyfxx·˙yg=f
31 17 30 rexeqbidv c=Cb=Bh=Ho=·˙gxhxybfyhxgyxoxf=ffxhyfxxoyg=fgxHxyBfyHxgyx·˙xf=ffxHyfxx·˙yg=f
32 16 oveqd c=Cb=Bh=Ho=·˙yhz=yHz
33 19 oveqd c=Cb=Bh=Ho=·˙xyoz=xy·˙z
34 33 oveqd c=Cb=Bh=Ho=·˙gxyozf=gxy·˙zf
35 16 oveqd c=Cb=Bh=Ho=·˙xhz=xHz
36 34 35 eleq12d c=Cb=Bh=Ho=·˙gxyozfxhzgxy·˙zfxHz
37 16 oveqd c=Cb=Bh=Ho=·˙zhw=zHw
38 19 oveqd c=Cb=Bh=Ho=·˙xyow=xy·˙w
39 19 oveqd c=Cb=Bh=Ho=·˙yzow=yz·˙w
40 39 oveqd c=Cb=Bh=Ho=·˙kyzowg=kyz·˙wg
41 eqidd c=Cb=Bh=Ho=·˙f=f
42 38 40 41 oveq123d c=Cb=Bh=Ho=·˙kyzowgxyowf=kyz·˙wgxy·˙wf
43 19 oveqd c=Cb=Bh=Ho=·˙xzow=xz·˙w
44 eqidd c=Cb=Bh=Ho=·˙k=k
45 43 44 34 oveq123d c=Cb=Bh=Ho=·˙kxzowgxyozf=kxz·˙wgxy·˙zf
46 42 45 eqeq12d c=Cb=Bh=Ho=·˙kyzowgxyowf=kxzowgxyozfkyz·˙wgxy·˙wf=kxz·˙wgxy·˙zf
47 37 46 raleqbidv c=Cb=Bh=Ho=·˙kzhwkyzowgxyowf=kxzowgxyozfkzHwkyz·˙wgxy·˙wf=kxz·˙wgxy·˙zf
48 15 47 raleqbidv c=Cb=Bh=Ho=·˙wbkzhwkyzowgxyowf=kxzowgxyozfwBkzHwkyz·˙wgxy·˙wf=kxz·˙wgxy·˙zf
49 36 48 anbi12d c=Cb=Bh=Ho=·˙gxyozfxhzwbkzhwkyzowgxyowf=kxzowgxyozfgxy·˙zfxHzwBkzHwkyz·˙wgxy·˙wf=kxz·˙wgxy·˙zf
50 32 49 raleqbidv c=Cb=Bh=Ho=·˙gyhzgxyozfxhzwbkzhwkyzowgxyowf=kxzowgxyozfgyHzgxy·˙zfxHzwBkzHwkyz·˙wgxy·˙wf=kxz·˙wgxy·˙zf
51 24 50 raleqbidv c=Cb=Bh=Ho=·˙fxhygyhzgxyozfxhzwbkzhwkyzowgxyowf=kxzowgxyozffxHygyHzgxy·˙zfxHzwBkzHwkyz·˙wgxy·˙wf=kxz·˙wgxy·˙zf
52 15 51 raleqbidv c=Cb=Bh=Ho=·˙zbfxhygyhzgxyozfxhzwbkzhwkyzowgxyowf=kxzowgxyozfzBfxHygyHzgxy·˙zfxHzwBkzHwkyz·˙wgxy·˙wf=kxz·˙wgxy·˙zf
53 15 52 raleqbidv c=Cb=Bh=Ho=·˙ybzbfxhygyhzgxyozfxhzwbkzhwkyzowgxyowf=kxzowgxyozfyBzBfxHygyHzgxy·˙zfxHzwBkzHwkyz·˙wgxy·˙wf=kxz·˙wgxy·˙zf
54 31 53 anbi12d c=Cb=Bh=Ho=·˙gxhxybfyhxgyxoxf=ffxhyfxxoyg=fybzbfxhygyhzgxyozfxhzwbkzhwkyzowgxyowf=kxzowgxyozfgxHxyBfyHxgyx·˙xf=ffxHyfxx·˙yg=fyBzBfxHygyHzgxy·˙zfxHzwBkzHwkyz·˙wgxy·˙wf=kxz·˙wgxy·˙zf
55 15 54 raleqbidv c=Cb=Bh=Ho=·˙xbgxhxybfyhxgyxoxf=ffxhyfxxoyg=fybzbfxhygyhzgxyozfxhzwbkzhwkyzowgxyowf=kxzowgxyozfxBgxHxyBfyHxgyx·˙xf=ffxHyfxx·˙yg=fyBzBfxHygyHzgxy·˙zfxHzwBkzHwkyz·˙wgxy·˙wf=kxz·˙wgxy·˙zf
56 11 14 55 sbcied2 c=Cb=Bh=H[˙compc/o]˙xbgxhxybfyhxgyxoxf=ffxhyfxxoyg=fybzbfxhygyhzgxyozfxhzwbkzhwkyzowgxyowf=kxzowgxyozfxBgxHxyBfyHxgyx·˙xf=ffxHyfxx·˙yg=fyBzBfxHygyHzgxy·˙zfxHzwBkzHwkyz·˙wgxy·˙wf=kxz·˙wgxy·˙zf
57 7 10 56 sbcied2 c=Cb=B[˙Homc/h]˙[˙compc/o]˙xbgxhxybfyhxgyxoxf=ffxhyfxxoyg=fybzbfxhygyhzgxyozfxhzwbkzhwkyzowgxyowf=kxzowgxyozfxBgxHxyBfyHxgyx·˙xf=ffxHyfxx·˙yg=fyBzBfxHygyHzgxy·˙zfxHzwBkzHwkyz·˙wgxy·˙wf=kxz·˙wgxy·˙zf
58 4 6 57 sbcied2 c=C[˙Basec/b]˙[˙Homc/h]˙[˙compc/o]˙xbgxhxybfyhxgyxoxf=ffxhyfxxoyg=fybzbfxhygyhzgxyozfxhzwbkzhwkyzowgxyowf=kxzowgxyozfxBgxHxyBfyHxgyx·˙xf=ffxHyfxx·˙yg=fyBzBfxHygyHzgxy·˙zfxHzwBkzHwkyz·˙wgxy·˙wf=kxz·˙wgxy·˙zf
59 df-cat Cat=c|[˙Basec/b]˙[˙Homc/h]˙[˙compc/o]˙xbgxhxybfyhxgyxoxf=ffxhyfxxoyg=fybzbfxhygyhzgxyozfxhzwbkzhwkyzowgxyowf=kxzowgxyozf
60 58 59 elab2g CVCCatxBgxHxyBfyHxgyx·˙xf=ffxHyfxx·˙yg=fyBzBfxHygyHzgxy·˙zfxHzwBkzHwkyz·˙wgxy·˙wf=kxz·˙wgxy·˙zf