:: ALTCAT_2 semantic presentation
theorem Th1: :: ALTCAT_2:1
theorem Th2: :: ALTCAT_2:2
theorem Th3: :: ALTCAT_2:3
theorem Th4: :: ALTCAT_2:4
theorem Th5: :: ALTCAT_2:5
theorem Th6: :: ALTCAT_2:6
:: deftheorem Def1 defines cc= ALTCAT_2:def 1 :
:: deftheorem Def2 defines cc= ALTCAT_2:def 2 :
theorem Th7: :: ALTCAT_2:7
canceled;
theorem Th8: :: ALTCAT_2:8
theorem Th9: :: ALTCAT_2:9
theorem Th10: :: ALTCAT_2:10
theorem Th11: :: ALTCAT_2:11
theorem Th12: :: ALTCAT_2:12
definition
let c1 be
CatStr ;
func the_hom_sets_of c1 -> ManySortedSet of
[:the Objects of a1,the Objects of a1:] means :
Def3:
:: ALTCAT_2:def 3
for
b1,
b2 being
Object of
a1 holds
a2 . b1,
b2 = Hom b1,
b2;
existence
ex b1 being ManySortedSet of [:the Objects of c1,the Objects of c1:] st
for b2, b3 being Object of c1 holds b1 . b2,b3 = Hom b2,b3
uniqueness
for b1, b2 being ManySortedSet of [:the Objects of c1,the Objects of c1:] st ( for b3, b4 being Object of c1 holds b1 . b3,b4 = Hom b3,b4 ) & ( for b3, b4 being Object of c1 holds b2 . b3,b4 = Hom b3,b4 ) holds
b1 = b2
end;
:: deftheorem Def3 defines the_hom_sets_of ALTCAT_2:def 3 :
theorem Th13: :: ALTCAT_2:13
definition
let c1 be
Category;
func the_comps_of c1 -> BinComp of
(the_hom_sets_of a1) means :
Def4:
:: ALTCAT_2:def 4
for
b1,
b2,
b3 being
Object of
a1 holds
a2 . b1,
b2,
b3 = the
Comp of
a1 | [:((the_hom_sets_of a1) . b2,b3),((the_hom_sets_of a1) . b1,b2):];
existence
ex b1 being BinComp of (the_hom_sets_of c1) st
for b2, b3, b4 being Object of c1 holds b1 . b2,b3,b4 = the Comp of c1 | [:((the_hom_sets_of c1) . b3,b4),((the_hom_sets_of c1) . b2,b3):]
uniqueness
for b1, b2 being BinComp of (the_hom_sets_of c1) st ( for b3, b4, b5 being Object of c1 holds b1 . b3,b4,b5 = the Comp of c1 | [:((the_hom_sets_of c1) . b4,b5),((the_hom_sets_of c1) . b3,b4):] ) & ( for b3, b4, b5 being Object of c1 holds b2 . b3,b4,b5 = the Comp of c1 | [:((the_hom_sets_of c1) . b4,b5),((the_hom_sets_of c1) . b3,b4):] ) holds
b1 = b2
end;
:: deftheorem Def4 defines the_comps_of ALTCAT_2:def 4 :
theorem Th14: :: ALTCAT_2:14
theorem Th15: :: ALTCAT_2:15
theorem Th16: :: ALTCAT_2:16
:: deftheorem Def5 defines Alter ALTCAT_2:def 5 :
theorem Th17: :: ALTCAT_2:17
theorem Th18: :: ALTCAT_2:18
theorem Th19: :: ALTCAT_2:19
:: deftheorem Def6 defines reflexive ALTCAT_2:def 6 :
:: deftheorem Def7 defines reflexive ALTCAT_2:def 7 :
definition
let c1 be non
empty transitive AltCatStr ;
redefine attr a1 is
associative means :
Def8:
:: ALTCAT_2:def 8
for
b1,
b2,
b3,
b4 being
object of
a1 for
b5 being
Morphism of
b1,
b2 for
b6 being
Morphism of
b2,
b3 for
b7 being
Morphism of
b3,
b4 st
<^b1,b2^> <> {} &
<^b2,b3^> <> {} &
<^b3,b4^> <> {} holds
(b7 * b6) * b5 = b7 * (b6 * b5);
compatibility
( c1 is associative iff for b1, b2, b3, b4 being object of c1
for b5 being Morphism of b1,b2
for b6 being Morphism of b2,b3
for b7 being Morphism of b3,b4 st <^b1,b2^> <> {} & <^b2,b3^> <> {} & <^b3,b4^> <> {} holds
(b7 * b6) * b5 = b7 * (b6 * b5) )
end;
:: deftheorem Def8 defines associative ALTCAT_2:def 8 :
definition
let c1 be non
empty AltCatStr ;
redefine attr a1 is
with_units means :: ALTCAT_2:def 9
for
b1 being
object of
a1 holds
(
<^b1,b1^> <> {} & ex
b2 being
Morphism of
b1,
b1 st
for
b3 being
object of
a1 for
b4 being
Morphism of
b3,
b1 for
b5 being
Morphism of
b1,
b3 holds
( (
<^b3,b1^> <> {} implies
b2 * b4 = b4 ) & (
<^b1,b3^> <> {} implies
b5 * b2 = b5 ) ) );
compatibility
( c1 is with_units iff for b1 being object of c1 holds
( <^b1,b1^> <> {} & ex b2 being Morphism of b1,b1 st
for b3 being object of c1
for b4 being Morphism of b3,b1
for b5 being Morphism of b1,b3 holds
( ( <^b3,b1^> <> {} implies b2 * b4 = b4 ) & ( <^b1,b3^> <> {} implies b5 * b2 = b5 ) ) ) )
end;
:: deftheorem Def9 defines with_units ALTCAT_2:def 9 :
Lemma18:
for b1, b2 being strict AltCatStr st the carrier of b1 is empty & the carrier of b2 is empty holds
b1 = b2
:: deftheorem Def10 defines the_empty_category ALTCAT_2:def 10 :
theorem Th20: :: ALTCAT_2:20
:: deftheorem Def11 defines SubCatStr ALTCAT_2:def 11 :
theorem Th21: :: ALTCAT_2:21
theorem Th22: :: ALTCAT_2:22
theorem Th23: :: ALTCAT_2:23
definition
let c1 be non
empty AltCatStr ;
let c2 be
object of
c1;
func ObCat c2 -> strict SubCatStr of
a1 means :
Def12:
:: ALTCAT_2:def 12
( the
carrier of
a3 = {a2} & the
Arrows of
a3 = a2,
a2 :-> <^a2,a2^> & the
Comp of
a3 = [a2,a2,a2] .--> (the Comp of a1 . a2,a2,a2) );
existence
ex b1 being strict SubCatStr of c1 st
( the carrier of b1 = {c2} & the Arrows of b1 = c2,c2 :-> <^c2,c2^> & the Comp of b1 = [c2,c2,c2] .--> (the Comp of c1 . c2,c2,c2) )
uniqueness
for b1, b2 being strict SubCatStr of c1 st the carrier of b1 = {c2} & the Arrows of b1 = c2,c2 :-> <^c2,c2^> & the Comp of b1 = [c2,c2,c2] .--> (the Comp of c1 . c2,c2,c2) & the carrier of b2 = {c2} & the Arrows of b2 = c2,c2 :-> <^c2,c2^> & the Comp of b2 = [c2,c2,c2] .--> (the Comp of c1 . c2,c2,c2) holds
b1 = b2
;
end;
:: deftheorem Def12 defines ObCat ALTCAT_2:def 12 :
theorem Th24: :: ALTCAT_2:24
theorem Th25: :: ALTCAT_2:25
:: deftheorem Def13 defines full ALTCAT_2:def 13 :
:: deftheorem Def14 defines id-inheriting ALTCAT_2:def 14 :
theorem Th26: :: ALTCAT_2:26
theorem Th27: :: ALTCAT_2:27
theorem Th28: :: ALTCAT_2:28
theorem Th29: :: ALTCAT_2:29
theorem Th30: :: ALTCAT_2:30
theorem Th31: :: ALTCAT_2:31
theorem Th32: :: ALTCAT_2:32
theorem Th33: :: ALTCAT_2:33
for
b1 being non
empty transitive AltCatStr for
b2 being non
empty transitive SubCatStr of
b1 for
b3,
b4,
b5 being
object of
b2 st
<^b3,b4^> <> {} &
<^b4,b5^> <> {} holds
for
b6,
b7,
b8 being
object of
b1 st
b6 = b3 &
b7 = b4 &
b8 = b5 holds
for
b9 being
Morphism of
b6,
b7 for
b10 being
Morphism of
b7,
b8 for
b11 being
Morphism of
b3,
b4 for
b12 being
Morphism of
b4,
b5 st
b9 = b11 &
b10 = b12 holds
b10 * b9 = b12 * b11
theorem Th34: :: ALTCAT_2:34
theorem Th35: :: ALTCAT_2:35