Metamath Proof Explorer


Theorem cmdlan

Description: To each colimit of a diagram there is a corresponding left Kan extention of the diagram along a functor to a terminal category. The morphism parts coincide, while the object parts are one-to-one correspondent ( diag1f1o ). (Contributed by Zhi Wang, 26-Nov-2025)

Ref Expression
Hypotheses lmdran.1 No typesetting found for |- ( ph -> .1. e. TermCat ) with typecode |-
lmdran.g φ G D Func 1 ˙
lmdran.l L = C Δ func 1 ˙
lmdran.y φ Y = 1 st L X
Assertion cmdlan Could not format assertion : No typesetting found for |- ( ph -> ( X ( ( C Colimit D ) ` F ) M <-> Y ( G ( <. D , .1. >. Lan C ) F ) M ) ) with typecode |-

Proof

Step Hyp Ref Expression
1 lmdran.1 Could not format ( ph -> .1. e. TermCat ) : No typesetting found for |- ( ph -> .1. e. TermCat ) with typecode |-
2 lmdran.g φ G D Func 1 ˙
3 lmdran.l L = C Δ func 1 ˙
4 lmdran.y φ Y = 1 st L X
5 cmdfval2 Could not format ( ( C Colimit D ) ` F ) = ( ( C DiagFunc D ) ( C UP ( D FuncCat C ) ) F ) : No typesetting found for |- ( ( C Colimit D ) ` F ) = ( ( C DiagFunc D ) ( C UP ( D FuncCat C ) ) F ) with typecode |-
6 5 breqi Could not format ( X ( ( C Colimit D ) ` F ) M <-> X ( ( C DiagFunc D ) ( C UP ( D FuncCat C ) ) F ) M ) : No typesetting found for |- ( X ( ( C Colimit D ) ` F ) M <-> X ( ( C DiagFunc D ) ( C UP ( D FuncCat C ) ) F ) M ) with typecode |-
7 simpr Could not format ( ( ph /\ X ( ( C DiagFunc D ) ( C UP ( D FuncCat C ) ) F ) M ) -> X ( ( C DiagFunc D ) ( C UP ( D FuncCat C ) ) F ) M ) : No typesetting found for |- ( ( ph /\ X ( ( C DiagFunc D ) ( C UP ( D FuncCat C ) ) F ) M ) -> X ( ( C DiagFunc D ) ( C UP ( D FuncCat C ) ) F ) M ) with typecode |-
8 7 up1st2nd Could not format ( ( ph /\ X ( ( C DiagFunc D ) ( C UP ( D FuncCat C ) ) F ) M ) -> X ( <. ( 1st ` ( C DiagFunc D ) ) , ( 2nd ` ( C DiagFunc D ) ) >. ( C UP ( D FuncCat C ) ) F ) M ) : No typesetting found for |- ( ( ph /\ X ( ( C DiagFunc D ) ( C UP ( D FuncCat C ) ) F ) M ) -> X ( <. ( 1st ` ( C DiagFunc D ) ) , ( 2nd ` ( C DiagFunc D ) ) >. ( C UP ( D FuncCat C ) ) F ) M ) with typecode |-
9 eqid D FuncCat C = D FuncCat C
10 9 fucbas D Func C = Base D FuncCat C
11 8 10 uprcl3 Could not format ( ( ph /\ X ( ( C DiagFunc D ) ( C UP ( D FuncCat C ) ) F ) M ) -> F e. ( D Func C ) ) : No typesetting found for |- ( ( ph /\ X ( ( C DiagFunc D ) ( C UP ( D FuncCat C ) ) F ) M ) -> F e. ( D Func C ) ) with typecode |-
12 eqid Base C = Base C
13 8 12 uprcl4 Could not format ( ( ph /\ X ( ( C DiagFunc D ) ( C UP ( D FuncCat C ) ) F ) M ) -> X e. ( Base ` C ) ) : No typesetting found for |- ( ( ph /\ X ( ( C DiagFunc D ) ( C UP ( D FuncCat C ) ) F ) M ) -> X e. ( Base ` C ) ) with typecode |-
14 11 13 jca Could not format ( ( ph /\ X ( ( C DiagFunc D ) ( C UP ( D FuncCat C ) ) F ) M ) -> ( F e. ( D Func C ) /\ X e. ( Base ` C ) ) ) : No typesetting found for |- ( ( ph /\ X ( ( C DiagFunc D ) ( C UP ( D FuncCat C ) ) F ) M ) -> ( F e. ( D Func C ) /\ X e. ( Base ` C ) ) ) with typecode |-
15 simpr Could not format ( ( ph /\ Y ( ( <. .1. , C >. -o.F G ) ( ( .1. FuncCat C ) UP ( D FuncCat C ) ) F ) M ) -> Y ( ( <. .1. , C >. -o.F G ) ( ( .1. FuncCat C ) UP ( D FuncCat C ) ) F ) M ) : No typesetting found for |- ( ( ph /\ Y ( ( <. .1. , C >. -o.F G ) ( ( .1. FuncCat C ) UP ( D FuncCat C ) ) F ) M ) -> Y ( ( <. .1. , C >. -o.F G ) ( ( .1. FuncCat C ) UP ( D FuncCat C ) ) F ) M ) with typecode |-
16 15 up1st2nd Could not format ( ( ph /\ Y ( ( <. .1. , C >. -o.F G ) ( ( .1. FuncCat C ) UP ( D FuncCat C ) ) F ) M ) -> Y ( <. ( 1st ` ( <. .1. , C >. -o.F G ) ) , ( 2nd ` ( <. .1. , C >. -o.F G ) ) >. ( ( .1. FuncCat C ) UP ( D FuncCat C ) ) F ) M ) : No typesetting found for |- ( ( ph /\ Y ( ( <. .1. , C >. -o.F G ) ( ( .1. FuncCat C ) UP ( D FuncCat C ) ) F ) M ) -> Y ( <. ( 1st ` ( <. .1. , C >. -o.F G ) ) , ( 2nd ` ( <. .1. , C >. -o.F G ) ) >. ( ( .1. FuncCat C ) UP ( D FuncCat C ) ) F ) M ) with typecode |-
17 16 10 uprcl3 Could not format ( ( ph /\ Y ( ( <. .1. , C >. -o.F G ) ( ( .1. FuncCat C ) UP ( D FuncCat C ) ) F ) M ) -> F e. ( D Func C ) ) : No typesetting found for |- ( ( ph /\ Y ( ( <. .1. , C >. -o.F G ) ( ( .1. FuncCat C ) UP ( D FuncCat C ) ) F ) M ) -> F e. ( D Func C ) ) with typecode |-
18 4 adantr Could not format ( ( ph /\ Y ( ( <. .1. , C >. -o.F G ) ( ( .1. FuncCat C ) UP ( D FuncCat C ) ) F ) M ) -> Y = ( ( 1st ` L ) ` X ) ) : No typesetting found for |- ( ( ph /\ Y ( ( <. .1. , C >. -o.F G ) ( ( .1. FuncCat C ) UP ( D FuncCat C ) ) F ) M ) -> Y = ( ( 1st ` L ) ` X ) ) with typecode |-
19 eqid 1 ˙ FuncCat C = 1 ˙ FuncCat C
20 19 fucbas 1 ˙ Func C = Base 1 ˙ FuncCat C
21 16 20 uprcl4 Could not format ( ( ph /\ Y ( ( <. .1. , C >. -o.F G ) ( ( .1. FuncCat C ) UP ( D FuncCat C ) ) F ) M ) -> Y e. ( .1. Func C ) ) : No typesetting found for |- ( ( ph /\ Y ( ( <. .1. , C >. -o.F G ) ( ( .1. FuncCat C ) UP ( D FuncCat C ) ) F ) M ) -> Y e. ( .1. Func C ) ) with typecode |-
22 relfunc Rel 1 ˙ Func C
23 21 22 oppfrcllem Could not format ( ( ph /\ Y ( ( <. .1. , C >. -o.F G ) ( ( .1. FuncCat C ) UP ( D FuncCat C ) ) F ) M ) -> Y =/= (/) ) : No typesetting found for |- ( ( ph /\ Y ( ( <. .1. , C >. -o.F G ) ( ( .1. FuncCat C ) UP ( D FuncCat C ) ) F ) M ) -> Y =/= (/) ) with typecode |-
24 18 23 eqnetrrd Could not format ( ( ph /\ Y ( ( <. .1. , C >. -o.F G ) ( ( .1. FuncCat C ) UP ( D FuncCat C ) ) F ) M ) -> ( ( 1st ` L ) ` X ) =/= (/) ) : No typesetting found for |- ( ( ph /\ Y ( ( <. .1. , C >. -o.F G ) ( ( .1. FuncCat C ) UP ( D FuncCat C ) ) F ) M ) -> ( ( 1st ` L ) ` X ) =/= (/) ) with typecode |-
25 fvfundmfvn0 1 st L X X dom 1 st L Fun 1 st L X
26 25 simpld 1 st L X X dom 1 st L
27 24 26 syl Could not format ( ( ph /\ Y ( ( <. .1. , C >. -o.F G ) ( ( .1. FuncCat C ) UP ( D FuncCat C ) ) F ) M ) -> X e. dom ( 1st ` L ) ) : No typesetting found for |- ( ( ph /\ Y ( ( <. .1. , C >. -o.F G ) ( ( .1. FuncCat C ) UP ( D FuncCat C ) ) F ) M ) -> X e. dom ( 1st ` L ) ) with typecode |-
28 1 adantr Could not format ( ( ph /\ F e. ( D Func C ) ) -> .1. e. TermCat ) : No typesetting found for |- ( ( ph /\ F e. ( D Func C ) ) -> .1. e. TermCat ) with typecode |-
29 simpr φ F D Func C F D Func C
30 29 func1st2nd φ F D Func C 1 st F D Func C 2 nd F
31 30 funcrcl3 φ F D Func C C Cat
32 12 28 31 3 diag1f1o φ F D Func C 1 st L : Base C 1-1 onto 1 ˙ Func C
33 f1of 1 st L : Base C 1-1 onto 1 ˙ Func C 1 st L : Base C 1 ˙ Func C
34 32 33 syl φ F D Func C 1 st L : Base C 1 ˙ Func C
35 34 fdmd φ F D Func C dom 1 st L = Base C
36 17 35 syldan Could not format ( ( ph /\ Y ( ( <. .1. , C >. -o.F G ) ( ( .1. FuncCat C ) UP ( D FuncCat C ) ) F ) M ) -> dom ( 1st ` L ) = ( Base ` C ) ) : No typesetting found for |- ( ( ph /\ Y ( ( <. .1. , C >. -o.F G ) ( ( .1. FuncCat C ) UP ( D FuncCat C ) ) F ) M ) -> dom ( 1st ` L ) = ( Base ` C ) ) with typecode |-
37 27 36 eleqtrd Could not format ( ( ph /\ Y ( ( <. .1. , C >. -o.F G ) ( ( .1. FuncCat C ) UP ( D FuncCat C ) ) F ) M ) -> X e. ( Base ` C ) ) : No typesetting found for |- ( ( ph /\ Y ( ( <. .1. , C >. -o.F G ) ( ( .1. FuncCat C ) UP ( D FuncCat C ) ) F ) M ) -> X e. ( Base ` C ) ) with typecode |-
38 17 37 jca Could not format ( ( ph /\ Y ( ( <. .1. , C >. -o.F G ) ( ( .1. FuncCat C ) UP ( D FuncCat C ) ) F ) M ) -> ( F e. ( D Func C ) /\ X e. ( Base ` C ) ) ) : No typesetting found for |- ( ( ph /\ Y ( ( <. .1. , C >. -o.F G ) ( ( .1. FuncCat C ) UP ( D FuncCat C ) ) F ) M ) -> ( F e. ( D Func C ) /\ X e. ( Base ` C ) ) ) with typecode |-
39 4 adantr φ F D Func C X Base C Y = 1 st L X
40 eqid C Δ func D = C Δ func D
41 2 adantr φ F D Func C X Base C G D Func 1 ˙
42 31 adantrr φ F D Func C X Base C C Cat
43 eqidd Could not format ( ( ph /\ ( F e. ( D Func C ) /\ X e. ( Base ` C ) ) ) -> ( <. .1. , C >. -o.F G ) = ( <. .1. , C >. -o.F G ) ) : No typesetting found for |- ( ( ph /\ ( F e. ( D Func C ) /\ X e. ( Base ` C ) ) ) -> ( <. .1. , C >. -o.F G ) = ( <. .1. , C >. -o.F G ) ) with typecode |-
44 3 40 41 42 43 prcofdiag Could not format ( ( ph /\ ( F e. ( D Func C ) /\ X e. ( Base ` C ) ) ) -> ( ( <. .1. , C >. -o.F G ) o.func L ) = ( C DiagFunc D ) ) : No typesetting found for |- ( ( ph /\ ( F e. ( D Func C ) /\ X e. ( Base ` C ) ) ) -> ( ( <. .1. , C >. -o.F G ) o.func L ) = ( C DiagFunc D ) ) with typecode |-
45 simprr φ F D Func C X Base C X Base C
46 19 42 9 41 prcoffunca Could not format ( ( ph /\ ( F e. ( D Func C ) /\ X e. ( Base ` C ) ) ) -> ( <. .1. , C >. -o.F G ) e. ( ( .1. FuncCat C ) Func ( D FuncCat C ) ) ) : No typesetting found for |- ( ( ph /\ ( F e. ( D Func C ) /\ X e. ( Base ` C ) ) ) -> ( <. .1. , C >. -o.F G ) e. ( ( .1. FuncCat C ) Func ( D FuncCat C ) ) ) with typecode |-
47 31 28 19 3 diagffth φ F D Func C L C Full 1 ˙ FuncCat C C Faith 1 ˙ FuncCat C
48 47 adantrr φ F D Func C X Base C L C Full 1 ˙ FuncCat C C Faith 1 ˙ FuncCat C
49 f1ofo 1 st L : Base C 1-1 onto 1 ˙ Func C 1 st L : Base C onto 1 ˙ Func C
50 32 49 syl φ F D Func C 1 st L : Base C onto 1 ˙ Func C
51 50 adantrr φ F D Func C X Base C 1 st L : Base C onto 1 ˙ Func C
52 12 20 39 44 45 46 48 51 uptr2a Could not format ( ( ph /\ ( F e. ( D Func C ) /\ X e. ( Base ` C ) ) ) -> ( X ( ( C DiagFunc D ) ( C UP ( D FuncCat C ) ) F ) M <-> Y ( ( <. .1. , C >. -o.F G ) ( ( .1. FuncCat C ) UP ( D FuncCat C ) ) F ) M ) ) : No typesetting found for |- ( ( ph /\ ( F e. ( D Func C ) /\ X e. ( Base ` C ) ) ) -> ( X ( ( C DiagFunc D ) ( C UP ( D FuncCat C ) ) F ) M <-> Y ( ( <. .1. , C >. -o.F G ) ( ( .1. FuncCat C ) UP ( D FuncCat C ) ) F ) M ) ) with typecode |-
53 14 38 52 bibiad Could not format ( ph -> ( X ( ( C DiagFunc D ) ( C UP ( D FuncCat C ) ) F ) M <-> Y ( ( <. .1. , C >. -o.F G ) ( ( .1. FuncCat C ) UP ( D FuncCat C ) ) F ) M ) ) : No typesetting found for |- ( ph -> ( X ( ( C DiagFunc D ) ( C UP ( D FuncCat C ) ) F ) M <-> Y ( ( <. .1. , C >. -o.F G ) ( ( .1. FuncCat C ) UP ( D FuncCat C ) ) F ) M ) ) with typecode |-
54 eqid Could not format ( <. .1. , C >. -o.F G ) = ( <. .1. , C >. -o.F G ) : No typesetting found for |- ( <. .1. , C >. -o.F G ) = ( <. .1. , C >. -o.F G ) with typecode |-
55 19 9 54 lanval2 Could not format ( G e. ( D Func .1. ) -> ( G ( <. D , .1. >. Lan C ) F ) = ( ( <. .1. , C >. -o.F G ) ( ( .1. FuncCat C ) UP ( D FuncCat C ) ) F ) ) : No typesetting found for |- ( G e. ( D Func .1. ) -> ( G ( <. D , .1. >. Lan C ) F ) = ( ( <. .1. , C >. -o.F G ) ( ( .1. FuncCat C ) UP ( D FuncCat C ) ) F ) ) with typecode |-
56 2 55 syl Could not format ( ph -> ( G ( <. D , .1. >. Lan C ) F ) = ( ( <. .1. , C >. -o.F G ) ( ( .1. FuncCat C ) UP ( D FuncCat C ) ) F ) ) : No typesetting found for |- ( ph -> ( G ( <. D , .1. >. Lan C ) F ) = ( ( <. .1. , C >. -o.F G ) ( ( .1. FuncCat C ) UP ( D FuncCat C ) ) F ) ) with typecode |-
57 56 breqd Could not format ( ph -> ( Y ( G ( <. D , .1. >. Lan C ) F ) M <-> Y ( ( <. .1. , C >. -o.F G ) ( ( .1. FuncCat C ) UP ( D FuncCat C ) ) F ) M ) ) : No typesetting found for |- ( ph -> ( Y ( G ( <. D , .1. >. Lan C ) F ) M <-> Y ( ( <. .1. , C >. -o.F G ) ( ( .1. FuncCat C ) UP ( D FuncCat C ) ) F ) M ) ) with typecode |-
58 53 57 bitr4d Could not format ( ph -> ( X ( ( C DiagFunc D ) ( C UP ( D FuncCat C ) ) F ) M <-> Y ( G ( <. D , .1. >. Lan C ) F ) M ) ) : No typesetting found for |- ( ph -> ( X ( ( C DiagFunc D ) ( C UP ( D FuncCat C ) ) F ) M <-> Y ( G ( <. D , .1. >. Lan C ) F ) M ) ) with typecode |-
59 6 58 bitrid Could not format ( ph -> ( X ( ( C Colimit D ) ` F ) M <-> Y ( G ( <. D , .1. >. Lan C ) F ) M ) ) : No typesetting found for |- ( ph -> ( X ( ( C Colimit D ) ` F ) M <-> Y ( G ( <. D , .1. >. Lan C ) F ) M ) ) with typecode |-