:: CAT_2 semantic presentation
theorem Th1: :: CAT_2:1
theorem Th2: :: CAT_2:2
definition
let C be non
empty set ;
let D be non
empty set ;
let E be non
empty set ;
let f be
Function of
[:C,D:],
E;
redefine func curry as
curry c4 -> Function of
a1,
Funcs a2,
a3;
coherence
curry f is Function of C, Funcs D,E
by ;
redefine func curry' as
curry' c4 -> Function of
a2,
Funcs a1,
a3;
coherence
curry' f is Function of D, Funcs C,E
by ;
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
C being
Category for
O being non
empty Subset of the
Objects of
C for
M being non
empty set for
d,
c being
Function of
M,
O for
p being
PartFunc of
[:M,M:],
M for
i being
Function of
O,
M st
M = union { (Hom a,b) where a is Object of C, b is Object of C : ( a in O & b in O ) } &
d = the
Dom of
C | M &
c = the
Cod of
C | M &
p = the
Comp of
C || M &
i = the
Id of
C | O holds
CatStr(#
O,
M,
d,
c,
p,
i #)
is_full_subcategory_of C
theorem Th31: :: CAT_2:31
for
C being
Category for
O being non
empty Subset of the
Objects of
C for
M being non
empty set for
d,
c being
Function of
M,
O for
p being
PartFunc of
[:M,M:],
M for
i being
Function of
O,
M st
CatStr(#
O,
M,
d,
c,
p,
i #)
is_full_subcategory_of C holds
(
M = union { (Hom a,b) where a is Object of C, b is Object of C : ( a in O & b in O ) } &
d = the
Dom of
C | M &
c = the
Cod of
C | M &
p = the
Comp of
C || M &
i = the
Id of
C | O )
definition
let X1 be non
empty set ,
X2 be non
empty set ,
Y1 be non
empty set ,
Y2 be non
empty set ;
let f1 be
Function of
X1,
Y1;
let f2 be
Function of
X2,
Y2;
redefine func [: as
[:c5,c6:] -> Function of
[:a1,a2:],
[:a3,a4:];
coherence
[:f1,f2:] is Function of [:X1,X2:],[:Y1,Y2:]
end;
definition
let A be non
empty set ,
B be non
empty set ;
let f be
PartFunc of
[:A,A:],
A;
let g be
PartFunc of
[:B,B:],
B;
redefine func |: as
|:c3,c4:| -> PartFunc of
[:[:a1,a2:],[:a1,a2:]:],
[:a1,a2:];
coherence
|:f,g:| is PartFunc of [:[:A,B:],[:A,B:]:],[:A,B:]
by FUNCT_4:62;
end;
definition
let C be
Category;
let D be
Category;
func [:c1,c2:] -> Category equals :: CAT_2:def 7
CatStr(#
[:the Objects of C,the Objects of D:],
[:the Morphisms of C,the Morphisms of D:],
[:the Dom of C,the Dom of D:],
[:the Cod of C,the Cod of D:],
|:the Comp of C,the Comp of D:|,
[:the Id of C,the Id of D:] #);
coherence
CatStr(# [:the Objects of C,the Objects of D:],[:the Morphisms of C,the Morphisms of D:],[:the Dom of C,the Dom of D:],[:the Cod of C,the Cod of D:],|:the Comp of C,the Comp of D:|,[:the Id of C,the Id of D:] #) is Category
end;
:: deftheorem Def7 defines [: CAT_2:def 7 :
for
C,
D being
Category holds
[:C,D:] = CatStr(#
[:the Objects of C,the Objects of D:],
[:the Morphisms of C,the Morphisms of D:],
[:the Dom of C,the Dom of D:],
[:the Cod of C,the Cod of D:],
|:the Comp of C,the Comp of D:|,
[:the Id of C,the Id of D:] #);
theorem Th32: :: CAT_2:32
canceled;
theorem Th33: :: CAT_2:33
for
C,
D being
Category holds
( the
Objects of
[:C,D:] = [:the Objects of C,the Objects of D:] & the
Morphisms of
[:C,D:] = [:the Morphisms of C,the Morphisms of D:] & the
Dom of
[:C,D:] = [:the Dom of C,the Dom of D:] & the
Cod of
[:C,D:] = [:the Cod of C,the Cod of D:] & the
Comp of
[:C,D:] = |:the Comp of C,the Comp of D:| & the
Id of
[:C,D:] = [:the Id of C,the Id of D:] ) ;
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
C,
D being
Category for
c,
c' being
Object of
C for
f being
Morphism of
c,
c' for
d,
d' being
Object of
D for
g being
Morphism of
d,
d' st
Hom c,
c' <> {} &
Hom d,
d' <> {} holds
[f,g] is
Morphism of
[c,d],
[c',d']
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 be
Category;
let D be
Category;
func pr1 c1,
c2 -> Functor of
[:a1,a2:],
a1 equals :: CAT_2:def 10
pr1 the
Morphisms of
C,the
Morphisms of
D;
coherence
pr1 the Morphisms of C,the Morphisms of D is Functor of [:C,D:],C
by Th3;
func pr2 c1,
c2 -> Functor of
[:a1,a2:],
a2 equals :: CAT_2:def 11
pr2 the
Morphisms of
C,the
Morphisms of
D;
coherence
pr2 the Morphisms of C,the Morphisms of D is Functor of [:C,D:],D
by Th4;
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
theorem Th63: :: CAT_2:63
theorem Th64: :: CAT_2:64
theorem Th65: :: CAT_2:65
definition
let C be
Category;
let C' be
Category;
let D be
Category;
let D' be
Category;
let T be
Functor of
C,
D;
let T' be
Functor of
C',
D';
redefine func [: as
[:c5,c6:] -> Functor of
[:a1,a2:],
[:a3,a4:];
coherence
[:T,T':] is Functor of [:C,C':],[:D,D':]
by ;
end;
theorem Th66: :: CAT_2:66