:: CAT_5 semantic presentation
theorem Th1: :: CAT_5:1
for
b1,
b2 being
CatStr st
CatStr(# the
Objects of
b1,the
Morphisms of
b1,the
Dom of
b1,the
Cod of
b1,the
Comp of
b1,the
Id of
b1 #)
= CatStr(# the
Objects of
b2,the
Morphisms of
b2,the
Dom of
b2,the
Cod of
b2,the
Comp of
b2,the
Id of
b2 #) &
b1 is
Category-like holds
b2 is
Category-like
:: deftheorem Def1 defines with_triple-like_morphisms CAT_5:def 1 :
theorem Th2: :: CAT_5:2
scheme :: CAT_5:sch 1
s1{
F1()
-> non
empty set ,
F2()
-> non
empty set ,
P1[
set ,
set ,
set ],
F3(
set ,
set )
-> set } :
ex
b1 being
strict with_triple-like_morphisms Category st
( the
Objects of
b1 = F1() & ( for
b2,
b3 being
Element of
F1()
for
b4 being
Element of
F2() st
P1[
b2,
b3,
b4] holds
[[b2,b3],b4] is
Morphism of
b1 ) & ( for
b2 being
Morphism of
b1 ex
b3,
b4 being
Element of
F1()ex
b5 being
Element of
F2() st
(
b2 = [[b3,b4],b5] &
P1[
b3,
b4,
b5] ) ) & ( for
b2,
b3 being
Morphism of
b1 for
b4,
b5,
b6 being
Element of
F1()
for
b7,
b8 being
Element of
F2() st
b2 = [[b4,b5],b7] &
b3 = [[b5,b6],b8] holds
b3 * b2 = [[b4,b6],F3(b8,b7)] ) )
provided
E4:
for
b1,
b2,
b3 being
Element of
F1()
for
b4,
b5 being
Element of
F2() st
P1[
b1,
b2,
b4] &
P1[
b2,
b3,
b5] holds
(
F3(
b5,
b4)
in F2() &
P1[
b1,
b3,
F3(
b5,
b4)] )
and E5:
for
b1 being
Element of
F1() ex
b2 being
Element of
F2() st
(
P1[
b1,
b1,
b2] & ( for
b3 being
Element of
F1()
for
b4 being
Element of
F2() holds
( (
P1[
b1,
b3,
b4] implies
F3(
b4,
b2)
= b4 ) & (
P1[
b3,
b1,
b4] implies
F3(
b2,
b4)
= b4 ) ) ) )
and E6:
for
b1,
b2,
b3,
b4 being
Element of
F1()
for
b5,
b6,
b7 being
Element of
F2() st
P1[
b1,
b2,
b5] &
P1[
b2,
b3,
b6] &
P1[
b3,
b4,
b7] holds
F3(
b7,
F3(
b6,
b5))
= F3(
F3(
b7,
b6),
b5)
scheme :: CAT_5:sch 2
s2{
F1()
-> non
empty set ,
F2()
-> non
empty set ,
P1[
set ,
set ,
set ],
F3(
set ,
set )
-> set } :
for
b1,
b2 being
strict with_triple-like_morphisms Category st the
Objects of
b1 = F1() & ( for
b3,
b4 being
Element of
F1()
for
b5 being
Element of
F2() st
P1[
b3,
b4,
b5] holds
[[b3,b4],b5] is
Morphism of
b1 ) & ( for
b3 being
Morphism of
b1 ex
b4,
b5 being
Element of
F1()ex
b6 being
Element of
F2() st
(
b3 = [[b4,b5],b6] &
P1[
b4,
b5,
b6] ) ) & ( for
b3,
b4 being
Morphism of
b1 for
b5,
b6,
b7 being
Element of
F1()
for
b8,
b9 being
Element of
F2() st
b3 = [[b5,b6],b8] &
b4 = [[b6,b7],b9] holds
b4 * b3 = [[b5,b7],F3(b9,b8)] ) & the
Objects of
b2 = F1() & ( for
b3,
b4 being
Element of
F1()
for
b5 being
Element of
F2() st
P1[
b3,
b4,
b5] holds
[[b3,b4],b5] is
Morphism of
b2 ) & ( for
b3 being
Morphism of
b2 ex
b4,
b5 being
Element of
F1()ex
b6 being
Element of
F2() st
(
b3 = [[b4,b5],b6] &
P1[
b4,
b5,
b6] ) ) & ( for
b3,
b4 being
Morphism of
b2 for
b5,
b6,
b7 being
Element of
F1()
for
b8,
b9 being
Element of
F2() st
b3 = [[b5,b6],b8] &
b4 = [[b6,b7],b9] holds
b4 * b3 = [[b5,b7],F3(b9,b8)] ) holds
b1 = b2
provided
E4:
for
b1 being
Element of
F1() ex
b2 being
Element of
F2() st
(
P1[
b1,
b1,
b2] & ( for
b3 being
Element of
F1()
for
b4 being
Element of
F2() holds
( (
P1[
b1,
b3,
b4] implies
F3(
b4,
b2)
= b4 ) & (
P1[
b3,
b1,
b4] implies
F3(
b2,
b4)
= b4 ) ) ) )
theorem Th3: :: CAT_5:3
for
b1 being
Category for
b2 being
Subcategory of
b1 st
b1 is
Subcategory of
b2 holds
CatStr(# the
Objects of
b1,the
Morphisms of
b1,the
Dom of
b1,the
Cod of
b1,the
Comp of
b1,the
Id of
b1 #)
= CatStr(# the
Objects of
b2,the
Morphisms of
b2,the
Dom of
b2,the
Cod of
b2,the
Comp of
b2,the
Id of
b2 #)
theorem Th4: :: CAT_5:4
:: deftheorem Def2 defines /\ CAT_5:def 2 :
theorem Th5: :: CAT_5:5
theorem Th6: :: CAT_5:6
:: deftheorem Def3 defines Image CAT_5:def 3 :
theorem Th7: :: CAT_5:7
theorem Th8: :: CAT_5:8
theorem Th9: :: CAT_5:9
:: deftheorem Def4 defines categorial CAT_5:def 4 :
:: deftheorem Def5 defines categorial CAT_5:def 5 :
definition
let c1 be
Category;
attr a1 is
Categorial means :
Def6:
:: CAT_5:def 6
( the
Objects of
a1 is
categorial & ( for
b1 being
Object of
a1 for
b2 being
Category st
b1 = b2 holds
id b1 = [[b2,b2],(id b2)] ) & ( for
b1 being
Morphism of
a1 for
b2,
b3 being
Category st
b2 = dom b1 &
b3 = cod b1 holds
ex
b4 being
Functor of
b2,
b3 st
b1 = [[b2,b3],b4] ) & ( for
b1,
b2 being
Morphism of
a1 for
b3,
b4,
b5 being
Category for
b6 being
Functor of
b3,
b4 for
b7 being
Functor of
b4,
b5 st
b1 = [[b3,b4],b6] &
b2 = [[b4,b5],b7] holds
b2 * b1 = [[b3,b5],(b7 * b6)] ) );
end;
:: deftheorem Def6 defines Categorial CAT_5:def 6 :
for
b1 being
Category holds
(
b1 is
Categorial iff ( the
Objects of
b1 is
categorial & ( for
b2 being
Object of
b1 for
b3 being
Category st
b2 = b3 holds
id b2 = [[b3,b3],(id b3)] ) & ( for
b2 being
Morphism of
b1 for
b3,
b4 being
Category st
b3 = dom b2 &
b4 = cod b2 holds
ex
b5 being
Functor of
b3,
b4 st
b2 = [[b3,b4],b5] ) & ( for
b2,
b3 being
Morphism of
b1 for
b4,
b5,
b6 being
Category for
b7 being
Functor of
b4,
b5 for
b8 being
Functor of
b5,
b6 st
b2 = [[b4,b5],b7] &
b3 = [[b5,b6],b8] holds
b3 * b2 = [[b4,b6],(b8 * b7)] ) ) );
theorem Th10: :: CAT_5:10
for
b1,
b2 being
Category st
CatStr(# the
Objects of
b1,the
Morphisms of
b1,the
Dom of
b1,the
Cod of
b1,the
Comp of
b1,the
Id of
b1 #)
= CatStr(# the
Objects of
b2,the
Morphisms of
b2,the
Dom of
b2,the
Cod of
b2,the
Comp of
b2,the
Id of
b2 #) &
b1 is
Categorial holds
b2 is
Categorial
theorem Th11: :: CAT_5:11
theorem Th12: :: CAT_5:12
theorem Th13: :: CAT_5:13
theorem Th14: :: CAT_5:14
for
b1,
b2 being
Categorial Category st the
Objects of
b1 = the
Objects of
b2 & the
Morphisms of
b1 = the
Morphisms of
b2 holds
CatStr(# the
Objects of
b1,the
Morphisms of
b1,the
Dom of
b1,the
Cod of
b1,the
Comp of
b1,the
Id of
b1 #)
= CatStr(# the
Objects of
b2,the
Morphisms of
b2,the
Dom of
b2,the
Cod of
b2,the
Comp of
b2,the
Id of
b2 #)
theorem Th15: :: CAT_5:15
:: deftheorem Def7 defines cat CAT_5:def 7 :
theorem Th16: :: CAT_5:16
theorem Th17: :: CAT_5:17
theorem Th18: :: CAT_5:18
:: deftheorem Def8 defines full CAT_5:def 8 :
theorem Th19: :: CAT_5:19
for
b1,
b2 being
Categorial full Category st the
Objects of
b1 = the
Objects of
b2 holds
CatStr(# the
Objects of
b1,the
Morphisms of
b1,the
Dom of
b1,the
Cod of
b1,the
Comp of
b1,the
Id of
b1 #)
= CatStr(# the
Objects of
b2,the
Morphisms of
b2,the
Dom of
b2,the
Cod of
b2,the
Comp of
b2,the
Id of
b2 #)
theorem Th20: :: CAT_5:20
theorem Th21: :: CAT_5:21
theorem Th22: :: CAT_5:22
:: deftheorem Def9 defines Hom CAT_5:def 9 :
:: deftheorem Def10 defines Hom CAT_5:def 10 :
theorem Th23: :: CAT_5:23
theorem Th24: :: CAT_5:24
theorem Th25: :: CAT_5:25
theorem Th26: :: CAT_5:26
theorem Th27: :: CAT_5:27
theorem Th28: :: CAT_5:28
definition
let c1 be
Category;
let c2 be
Object of
c1;
set c3 =
Hom c2;
set c4 = the
Morphisms of
c1;
defpred S1[
Element of
Hom c2,
Element of
Hom c2,
Element of the
Morphisms of
c1]
means (
dom a2 = cod a3 &
a1 = a2 * a3 );
deffunc H1(
Morphism of
c1,
Morphism of
c1)
-> Element of the
Morphisms of
c1 =
a1 * a2;
E32:
for
b1,
b2,
b3 being
Element of
Hom c2 for
b4,
b5 being
Element of the
Morphisms of
c1 st
S1[
b1,
b2,
b4] &
S1[
b2,
b3,
b5] holds
(
H1(
b5,
b4)
in the
Morphisms of
c1 &
S1[
b1,
b3,
H1(
b5,
b4)] )
E33:
for
b1 being
Element of
Hom c2 ex
b2 being
Element of the
Morphisms of
c1 st
(
S1[
b1,
b1,
b2] & ( for
b3 being
Element of
Hom c2 for
b4 being
Element of the
Morphisms of
c1 holds
( (
S1[
b1,
b3,
b4] implies
H1(
b4,
b2)
= b4 ) & (
S1[
b3,
b1,
b4] implies
H1(
b2,
b4)
= b4 ) ) ) )
E34:
for
b1,
b2,
b3,
b4 being
Element of
Hom c2 for
b5,
b6,
b7 being
Element of the
Morphisms of
c1 st
S1[
b1,
b2,
b5] &
S1[
b2,
b3,
b6] &
S1[
b3,
b4,
b7] holds
H1(
b7,
H1(
b6,
b5))
= H1(
H1(
b7,
b6),
b5)
func c1 -SliceCat c2 -> strict with_triple-like_morphisms Category means :
Def11:
:: CAT_5:def 11
( the
Objects of
a3 = Hom a2 & ( for
b1,
b2 being
Element of
Hom a2 for
b3 being
Morphism of
a1 st
dom b2 = cod b3 &
b1 = b2 * b3 holds
[[b1,b2],b3] is
Morphism of
a3 ) & ( for
b1 being
Morphism of
a3 ex
b2,
b3 being
Element of
Hom a2ex
b4 being
Morphism of
a1 st
(
b1 = [[b2,b3],b4] &
dom b3 = cod b4 &
b2 = b3 * b4 ) ) & ( for
b1,
b2 being
Morphism of
a3 for
b3,
b4,
b5 being
Element of
Hom a2 for
b6,
b7 being
Morphism of
a1 st
b1 = [[b3,b4],b6] &
b2 = [[b4,b5],b7] holds
b2 * b1 = [[b3,b5],(b7 * b6)] ) );
existence
ex b1 being strict with_triple-like_morphisms Category st
( the Objects of b1 = Hom c2 & ( for b2, b3 being Element of Hom c2
for b4 being Morphism of c1 st dom b3 = cod b4 & b2 = b3 * b4 holds
[[b2,b3],b4] is Morphism of b1 ) & ( for b2 being Morphism of b1 ex b3, b4 being Element of Hom c2ex b5 being Morphism of c1 st
( b2 = [[b3,b4],b5] & dom b4 = cod b5 & b3 = b4 * b5 ) ) & ( for b2, b3 being Morphism of b1
for b4, b5, b6 being Element of Hom c2
for b7, b8 being Morphism of c1 st b2 = [[b4,b5],b7] & b3 = [[b5,b6],b8] holds
b3 * b2 = [[b4,b6],(b8 * b7)] ) )
uniqueness
for b1, b2 being strict with_triple-like_morphisms Category st the Objects of b1 = Hom c2 & ( for b3, b4 being Element of Hom c2
for b5 being Morphism of c1 st dom b4 = cod b5 & b3 = b4 * b5 holds
[[b3,b4],b5] is Morphism of b1 ) & ( for b3 being Morphism of b1 ex b4, b5 being Element of Hom c2ex b6 being Morphism of c1 st
( b3 = [[b4,b5],b6] & dom b5 = cod b6 & b4 = b5 * b6 ) ) & ( for b3, b4 being Morphism of b1
for b5, b6, b7 being Element of Hom c2
for b8, b9 being Morphism of c1 st b3 = [[b5,b6],b8] & b4 = [[b6,b7],b9] holds
b4 * b3 = [[b5,b7],(b9 * b8)] ) & the Objects of b2 = Hom c2 & ( for b3, b4 being Element of Hom c2
for b5 being Morphism of c1 st dom b4 = cod b5 & b3 = b4 * b5 holds
[[b3,b4],b5] is Morphism of b2 ) & ( for b3 being Morphism of b2 ex b4, b5 being Element of Hom c2ex b6 being Morphism of c1 st
( b3 = [[b4,b5],b6] & dom b5 = cod b6 & b4 = b5 * b6 ) ) & ( for b3, b4 being Morphism of b2
for b5, b6, b7 being Element of Hom c2
for b8, b9 being Morphism of c1 st b3 = [[b5,b6],b8] & b4 = [[b6,b7],b9] holds
b4 * b3 = [[b5,b7],(b9 * b8)] ) holds
b1 = b2
set c5 =
c2 Hom ;
defpred S2[
Element of
c2 Hom ,
Element of
c2 Hom ,
Element of the
Morphisms of
c1]
means (
dom a3 = cod a1 &
a2 = a3 * a1 );
E35:
for
b1,
b2,
b3 being
Element of
c2 Hom for
b4,
b5 being
Element of the
Morphisms of
c1 st
S2[
b1,
b2,
b4] &
S2[
b2,
b3,
b5] holds
(
H1(
b5,
b4)
in the
Morphisms of
c1 &
S2[
b1,
b3,
H1(
b5,
b4)] )
E36:
for
b1 being
Element of
c2 Hom ex
b2 being
Element of the
Morphisms of
c1 st
(
S2[
b1,
b1,
b2] & ( for
b3 being
Element of
c2 Hom for
b4 being
Element of the
Morphisms of
c1 holds
( (
S2[
b1,
b3,
b4] implies
H1(
b4,
b2)
= b4 ) & (
S2[
b3,
b1,
b4] implies
H1(
b2,
b4)
= b4 ) ) ) )
E37:
for
b1,
b2,
b3,
b4 being
Element of
c2 Hom for
b5,
b6,
b7 being
Element of the
Morphisms of
c1 st
S2[
b1,
b2,
b5] &
S2[
b2,
b3,
b6] &
S2[
b3,
b4,
b7] holds
H1(
b7,
H1(
b6,
b5))
= H1(
H1(
b7,
b6),
b5)
func c2 -SliceCat c1 -> strict with_triple-like_morphisms Category means :
Def12:
:: CAT_5:def 12
( the
Objects of
a3 = a2 Hom & ( for
b1,
b2 being
Element of
a2 Hom for
b3 being
Morphism of
a1 st
dom b3 = cod b1 &
b3 * b1 = b2 holds
[[b1,b2],b3] is
Morphism of
a3 ) & ( for
b1 being
Morphism of
a3 ex
b2,
b3 being
Element of
a2 Hom ex
b4 being
Morphism of
a1 st
(
b1 = [[b2,b3],b4] &
dom b4 = cod b2 &
b4 * b2 = b3 ) ) & ( for
b1,
b2 being
Morphism of
a3 for
b3,
b4,
b5 being
Element of
a2 Hom for
b6,
b7 being
Morphism of
a1 st
b1 = [[b3,b4],b6] &
b2 = [[b4,b5],b7] holds
b2 * b1 = [[b3,b5],(b7 * b6)] ) );
existence
ex b1 being strict with_triple-like_morphisms Category st
( the Objects of b1 = c2 Hom & ( for b2, b3 being Element of c2 Hom
for b4 being Morphism of c1 st dom b4 = cod b2 & b4 * b2 = b3 holds
[[b2,b3],b4] is Morphism of b1 ) & ( for b2 being Morphism of b1 ex b3, b4 being Element of c2 Hom ex b5 being Morphism of c1 st
( b2 = [[b3,b4],b5] & dom b5 = cod b3 & b5 * b3 = b4 ) ) & ( for b2, b3 being Morphism of b1
for b4, b5, b6 being Element of c2 Hom
for b7, b8 being Morphism of c1 st b2 = [[b4,b5],b7] & b3 = [[b5,b6],b8] holds
b3 * b2 = [[b4,b6],(b8 * b7)] ) )
uniqueness
for b1, b2 being strict with_triple-like_morphisms Category st the Objects of b1 = c2 Hom & ( for b3, b4 being Element of c2 Hom
for b5 being Morphism of c1 st dom b5 = cod b3 & b5 * b3 = b4 holds
[[b3,b4],b5] is Morphism of b1 ) & ( for b3 being Morphism of b1 ex b4, b5 being Element of c2 Hom ex b6 being Morphism of c1 st
( b3 = [[b4,b5],b6] & dom b6 = cod b4 & b6 * b4 = b5 ) ) & ( for b3, b4 being Morphism of b1
for b5, b6, b7 being Element of c2 Hom
for b8, b9 being Morphism of c1 st b3 = [[b5,b6],b8] & b4 = [[b6,b7],b9] holds
b4 * b3 = [[b5,b7],(b9 * b8)] ) & the Objects of b2 = c2 Hom & ( for b3, b4 being Element of c2 Hom
for b5 being Morphism of c1 st dom b5 = cod b3 & b5 * b3 = b4 holds
[[b3,b4],b5] is Morphism of b2 ) & ( for b3 being Morphism of b2 ex b4, b5 being Element of c2 Hom ex b6 being Morphism of c1 st
( b3 = [[b4,b5],b6] & dom b6 = cod b4 & b6 * b4 = b5 ) ) & ( for b3, b4 being Morphism of b2
for b5, b6, b7 being Element of c2 Hom
for b8, b9 being Morphism of c1 st b3 = [[b5,b6],b8] & b4 = [[b6,b7],b9] holds
b4 * b3 = [[b5,b7],(b9 * b8)] ) holds
b1 = b2
end;
:: deftheorem Def11 defines -SliceCat CAT_5:def 11 :
for
b1 being
Category for
b2 being
Object of
b1 for
b3 being
strict with_triple-like_morphisms Category holds
(
b3 = b1 -SliceCat b2 iff ( the
Objects of
b3 = Hom b2 & ( for
b4,
b5 being
Element of
Hom b2 for
b6 being
Morphism of
b1 st
dom b5 = cod b6 &
b4 = b5 * b6 holds
[[b4,b5],b6] is
Morphism of
b3 ) & ( for
b4 being
Morphism of
b3 ex
b5,
b6 being
Element of
Hom b2ex
b7 being
Morphism of
b1 st
(
b4 = [[b5,b6],b7] &
dom b6 = cod b7 &
b5 = b6 * b7 ) ) & ( for
b4,
b5 being
Morphism of
b3 for
b6,
b7,
b8 being
Element of
Hom b2 for
b9,
b10 being
Morphism of
b1 st
b4 = [[b6,b7],b9] &
b5 = [[b7,b8],b10] holds
b5 * b4 = [[b6,b8],(b10 * b9)] ) ) );
:: deftheorem Def12 defines -SliceCat CAT_5:def 12 :
for
b1 being
Category for
b2 being
Object of
b1 for
b3 being
strict with_triple-like_morphisms Category holds
(
b3 = b2 -SliceCat b1 iff ( the
Objects of
b3 = b2 Hom & ( for
b4,
b5 being
Element of
b2 Hom for
b6 being
Morphism of
b1 st
dom b6 = cod b4 &
b6 * b4 = b5 holds
[[b4,b5],b6] is
Morphism of
b3 ) & ( for
b4 being
Morphism of
b3 ex
b5,
b6 being
Element of
b2 Hom ex
b7 being
Morphism of
b1 st
(
b4 = [[b5,b6],b7] &
dom b7 = cod b5 &
b7 * b5 = b6 ) ) & ( for
b4,
b5 being
Morphism of
b3 for
b6,
b7,
b8 being
Element of
b2 Hom for
b9,
b10 being
Morphism of
b1 st
b4 = [[b6,b7],b9] &
b5 = [[b7,b8],b10] holds
b5 * b4 = [[b6,b8],(b10 * b9)] ) ) );
theorem Th29: :: CAT_5:29
theorem Th30: :: CAT_5:30
theorem Th31: :: CAT_5:31
theorem Th32: :: CAT_5:32
definition
let c1 be
Category;
let c2 be
Morphism of
c1;
func SliceFunctor c2 -> Functor of
a1 -SliceCat (dom a2),
a1 -SliceCat (cod a2) means :
Def13:
:: CAT_5:def 13
for
b1 being
Morphism of
(a1 -SliceCat (dom a2)) holds
a3 . b1 = [[(a2 * (b1 `11 )),(a2 * (b1 `12 ))],(b1 `2 )];
existence
ex b1 being Functor of c1 -SliceCat (dom c2),c1 -SliceCat (cod c2) st
for b2 being Morphism of (c1 -SliceCat (dom c2)) holds b1 . b2 = [[(c2 * (b2 `11 )),(c2 * (b2 `12 ))],(b2 `2 )]
uniqueness
for b1, b2 being Functor of c1 -SliceCat (dom c2),c1 -SliceCat (cod c2) st ( for b3 being Morphism of (c1 -SliceCat (dom c2)) holds b1 . b3 = [[(c2 * (b3 `11 )),(c2 * (b3 `12 ))],(b3 `2 )] ) & ( for b3 being Morphism of (c1 -SliceCat (dom c2)) holds b2 . b3 = [[(c2 * (b3 `11 )),(c2 * (b3 `12 ))],(b3 `2 )] ) holds
b1 = b2
func SliceContraFunctor c2 -> Functor of
(cod a2) -SliceCat a1,
(dom a2) -SliceCat a1 means :
Def14:
:: CAT_5:def 14
for
b1 being
Morphism of
((cod a2) -SliceCat a1) holds
a3 . b1 = [[((b1 `11 ) * a2),((b1 `12 ) * a2)],(b1 `2 )];
existence
ex b1 being Functor of (cod c2) -SliceCat c1,(dom c2) -SliceCat c1 st
for b2 being Morphism of ((cod c2) -SliceCat c1) holds b1 . b2 = [[((b2 `11 ) * c2),((b2 `12 ) * c2)],(b2 `2 )]
uniqueness
for b1, b2 being Functor of (cod c2) -SliceCat c1,(dom c2) -SliceCat c1 st ( for b3 being Morphism of ((cod c2) -SliceCat c1) holds b1 . b3 = [[((b3 `11 ) * c2),((b3 `12 ) * c2)],(b3 `2 )] ) & ( for b3 being Morphism of ((cod c2) -SliceCat c1) holds b2 . b3 = [[((b3 `11 ) * c2),((b3 `12 ) * c2)],(b3 `2 )] ) holds
b1 = b2
end;
:: deftheorem Def13 defines SliceFunctor CAT_5:def 13 :
:: deftheorem Def14 defines SliceContraFunctor CAT_5:def 14 :
theorem Th33: :: CAT_5:33
theorem Th34: :: CAT_5:34