:: CAT_2 semantic presentation
theorem Th1: :: CAT_2:1
theorem Th2: :: CAT_2:2
definition
let c
1, c
2, c
3 be non
empty set ;
let c
4 be
Function of
[:c1,c2:],c
3;
redefine func curry as
curry c
4 -> Function of a
1,
Funcs a
2,a
3;
coherence
curry c4 is Function of c1, Funcs c2,c3
by Th1;
redefine func curry' as
curry' c
4 -> Function of a
2,
Funcs a
1,a
3;
coherence
curry' c4 is Function of c2, Funcs c1,c3
by Th2;
end;
theorem Th3: :: CAT_2:3
theorem Th4: :: CAT_2:4
:: deftheorem Def1 defines --> CAT_2:def 1 :
theorem Th5: :: CAT_2:5
canceled;
theorem Th6: :: CAT_2:6
theorem Th7: :: CAT_2:7
:: deftheorem Def2 defines Funct CAT_2:def 2 :
:: deftheorem Def3 defines FUNCTOR-DOMAIN CAT_2:def 3 :
:: deftheorem Def4 defines Subcategory CAT_2:def 4 :
theorem Th8: :: CAT_2:8
canceled;
theorem Th9: :: CAT_2:9
canceled;
theorem Th10: :: CAT_2:10
canceled;
theorem Th11: :: CAT_2:11
canceled;
theorem Th12: :: CAT_2:12
theorem Th13: :: CAT_2:13
theorem Th14: :: CAT_2:14
theorem Th15: :: CAT_2:15
theorem Th16: :: CAT_2:16
theorem Th17: :: CAT_2:17
theorem Th18: :: CAT_2:18
theorem Th19: :: CAT_2:19
:: deftheorem Def5 defines incl CAT_2:def 5 :
theorem Th20: :: CAT_2:20
canceled;
theorem Th21: :: CAT_2:21
theorem Th22: :: CAT_2:22
theorem Th23: :: CAT_2:23
theorem Th24: :: CAT_2:24
theorem Th25: :: CAT_2:25
:: deftheorem Def6 defines is_full_subcategory_of CAT_2:def 6 :
theorem Th26: :: CAT_2:26
canceled;
theorem Th27: :: CAT_2:27
theorem Th28: :: CAT_2:28
theorem Th29: :: CAT_2:29
theorem Th30: :: CAT_2:30
for b
1 being
Categoryfor b
2 being non
empty Subset of the
Objects of b
1for b
3 being non
empty set for b
4, b
5 being
Function of b
3,b
2for b
6 being
PartFunc of
[:b3,b3:],b
3for b
7 being
Function of b
2,b
3 holds
( b
3 = union { (Hom b8,b9) where B is Object of b1, B is Object of b1 : ( b8 in b2 & b9 in b2 ) } & b
4 = the
Dom of b
1 | b
3 & b
5 = the
Cod of b
1 | b
3 & b
6 = the
Comp of b
1 || b
3 & b
7 = the
Id of b
1 | b
2 implies
CatStr(# b
2,b
3,b
4,b
5,b
6,b
7 #)
is_full_subcategory_of b
1 )
theorem Th31: :: CAT_2:31
for b
1 being
Categoryfor b
2 being non
empty Subset of the
Objects of b
1for b
3 being non
empty set for b
4, b
5 being
Function of b
3,b
2for b
6 being
PartFunc of
[:b3,b3:],b
3for b
7 being
Function of b
2,b
3 holds
(
CatStr(# b
2,b
3,b
4,b
5,b
6,b
7 #)
is_full_subcategory_of b
1 implies ( b
3 = union { (Hom b8,b9) where B is Object of b1, B is Object of b1 : ( b8 in b2 & b9 in b2 ) } & b
4 = the
Dom of b
1 | b
3 & b
5 = the
Cod of b
1 | b
3 & b
6 = the
Comp of b
1 || b
3 & b
7 = the
Id of b
1 | b
2 ) )
definition
let c
1, c
2, c
3, c
4 be non
empty set ;
let c
5 be
Function of c
1,c
3;
let c
6 be
Function of c
2,c
4;
redefine func [: as
[:c5,c6:] -> Function of
[:a1,a2:],
[:a3,a4:];
coherence
[:c5,c6:] is Function of [:c1,c2:],[:c3,c4:]
end;
definition
let c
1, c
2 be non
empty set ;
let c
3 be
PartFunc of
[:c1,c1:],c
1;
let c
4 be
PartFunc of
[:c2,c2:],c
2;
redefine func |: as
|:c3,c4:| -> PartFunc of
[:[:a1,a2:],[:a1,a2:]:],
[:a1,a2:];
coherence
|:c3,c4:| is PartFunc of [:[:c1,c2:],[:c1,c2:]:],[:c1,c2:]
by FUNCT_4:62;
end;
definition
let c
1, c
2 be
Category;
func [:c1,c2:] -> Category equals :: CAT_2:def 7
CatStr(#
[:the Objects of a1,the Objects of a2:],
[:the Morphisms of a1,the Morphisms of a2:],
[:the Dom of a1,the Dom of a2:],
[:the Cod of a1,the Cod of a2:],
|:the Comp of a1,the Comp of a2:|,
[:the Id of a1,the Id of a2:] #);
coherence
CatStr(# [:the Objects of c1,the Objects of c2:],[:the Morphisms of c1,the Morphisms of c2:],[:the Dom of c1,the Dom of c2:],[:the Cod of c1,the Cod of c2:],|:the Comp of c1,the Comp of c2:|,[:the Id of c1,the Id of c2:] #) is Category
end;
:: deftheorem Def7 defines [: CAT_2:def 7 :
for b
1, b
2 being
Category holds
[:b1,b2:] = CatStr(#
[:the Objects of b1,the Objects of b2:],
[:the Morphisms of b1,the Morphisms of b2:],
[:the Dom of b1,the Dom of b2:],
[:the Cod of b1,the Cod of b2:],
|:the Comp of b1,the Comp of b2:|,
[:the Id of b1,the Id of b2:] #);
theorem Th32: :: CAT_2:32
canceled;
theorem Th33: :: CAT_2:33
for b
1, b
2 being
Category holds
( the
Objects of
[:b1,b2:] = [:the Objects of b1,the Objects of b2:] & the
Morphisms of
[:b1,b2:] = [:the Morphisms of b1,the Morphisms of b2:] & the
Dom of
[:b1,b2:] = [:the Dom of b1,the Dom of b2:] & the
Cod of
[:b1,b2:] = [:the Cod of b1,the Cod of b2:] & the
Comp of
[:b1,b2:] = |:the Comp of b1,the Comp of b2:| & the
Id of
[:b1,b2:] = [:the Id of b1,the Id of b2:] ) ;
theorem Th34: :: CAT_2:34
theorem Th35: :: CAT_2:35
theorem Th36: :: CAT_2:36
theorem Th37: :: CAT_2:37
theorem Th38: :: CAT_2:38
theorem Th39: :: CAT_2:39
theorem Th40: :: CAT_2:40
theorem Th41: :: CAT_2:41
theorem Th42: :: CAT_2:42
theorem Th43: :: CAT_2:43
for b
1, b
2 being
Categoryfor b
3, b
4 being
Object of b
1for b
5 being
Morphism of b
3,b
4for b
6, b
7 being
Object of b
2for b
8 being
Morphism of b
6,b
7 holds
(
Hom b
3,b
4 <> {} &
Hom b
6,b
7 <> {} implies
[b5,b8] is
Morphism of
[b3,b6],
[b4,b7] )
theorem Th44: :: CAT_2:44
theorem Th45: :: CAT_2:45
:: deftheorem Def8 defines ?- CAT_2:def 8 :
theorem Th46: :: CAT_2:46
canceled;
theorem Th47: :: CAT_2:47
theorem Th48: :: CAT_2:48
:: deftheorem Def9 defines -? CAT_2:def 9 :
theorem Th49: :: CAT_2:49
canceled;
theorem Th50: :: CAT_2:50
theorem Th51: :: CAT_2:51
theorem Th52: :: CAT_2:52
theorem Th53: :: CAT_2:53
theorem Th54: :: CAT_2:54
theorem Th55: :: CAT_2:55
definition
let c
1, c
2 be
Category;
func pr1 c
1,c
2 -> Functor of
[:a1,a2:],a
1 equals :: CAT_2:def 10
pr1 the
Morphisms of a
1,the
Morphisms of a
2;
coherence
pr1 the Morphisms of c1,the Morphisms of c2 is Functor of [:c1,c2:],c1
by Th54;
func pr2 c
1,c
2 -> Functor of
[:a1,a2:],a
2 equals :: CAT_2:def 11
pr2 the
Morphisms of a
1,the
Morphisms of a
2;
coherence
pr2 the Morphisms of c1,the Morphisms of c2 is Functor of [:c1,c2:],c2
by Th55;
end;
:: deftheorem Def10 defines pr1 CAT_2:def 10 :
:: deftheorem Def11 defines pr2 CAT_2:def 11 :
theorem Th56: :: CAT_2:56
canceled;
theorem Th57: :: CAT_2:57
canceled;
theorem Th58: :: CAT_2:58
theorem Th59: :: CAT_2:59
theorem Th60: :: CAT_2:60
theorem Th61: :: CAT_2:61
theorem Th62: :: CAT_2:62
definition
let c
1, c
2, c
3 be
Category;
let c
4 be
Functor of c
1,c
2;
let c
5 be
Functor of c
1,c
3;
redefine func <: as
<:c4,c5:> -> Functor of a
1,
[:a2,a3:];
coherence
<:c4,c5:> is Functor of c1,[:c2,c3:]
by Th62;
end;
theorem Th63: :: CAT_2:63
theorem Th64: :: CAT_2:64
theorem Th65: :: CAT_2:65
definition
let c
1, c
2, c
3, c
4 be
Category;
let c
5 be
Functor of c
1,c
3;
let c
6 be
Functor of c
2,c
4;
redefine func [: as
[:c5,c6:] -> Functor of
[:a1,a2:],
[:a3,a4:];
coherence
[:c5,c6:] is Functor of [:c1,c2:],[:c3,c4:]
by Th65;
end;
theorem Th66: :: CAT_2:66