:: FUNCTOR2 semantic presentation
theorem Th1: :: FUNCTOR2:1
canceled;
theorem Th2: :: FUNCTOR2:2
:: deftheorem Def1 defines is_transformable_to FUNCTOR2:def 1 :
theorem Th3: :: FUNCTOR2:3
canceled;
theorem Th4: :: FUNCTOR2:4
:: deftheorem Def2 defines transformation FUNCTOR2:def 2 :
:: deftheorem Def3 defines idt FUNCTOR2:def 3 :
:: deftheorem Def4 defines ! FUNCTOR2:def 4 :
definition
let c
1, c
2 be non
empty transitive with_units AltCatStr ;
let c
3, c
4, c
5 be
covariant Functor of c
1,c
2;
assume that E7:
c
3 is_transformable_to c
4
and E8:
c
4 is_transformable_to c
5
;
let c
6 be
transformation of c
3,c
4;
let c
7 be
transformation of c
4,c
5;
func c
7 `*` c
6 -> transformation of a
3,a
5 means :
Def5:
:: FUNCTOR2:def 5
for b
1 being
object of a
1 holds a
8 ! b
1 = (a7 ! b1) * (a6 ! b1);
existence
ex b1 being transformation of c3,c5 st
for b2 being object of c1 holds b1 ! b2 = (c7 ! b2) * (c6 ! b2)
uniqueness
for b1, b2 being transformation of c3,c5 holds
( ( for b3 being object of c1 holds b1 ! b3 = (c7 ! b3) * (c6 ! b3) ) & ( for b3 being object of c1 holds b2 ! b3 = (c7 ! b3) * (c6 ! b3) ) implies b1 = b2 )
end;
:: deftheorem Def5 defines `*` FUNCTOR2:def 5 :
theorem Th5: :: FUNCTOR2:5
theorem Th6: :: FUNCTOR2:6
theorem Th7: :: FUNCTOR2:7
theorem Th8: :: FUNCTOR2:8
:: deftheorem Def6 defines is_naturally_transformable_to FUNCTOR2:def 6 :
Lemma13:
for b1, b2 being non empty transitive with_units AltCatStr
for b3, b4 being covariant Functor of b1,b2
for b5, b6 being object of b1 holds
( <^b5,b6^> <> {} implies for b7 being Morphism of b5,b6 holds ((idt b3) ! b6) * (b3 . b7) = (b3 . b7) * ((idt b3) ! b5) )
theorem Th9: :: FUNCTOR2:9
Lemma15:
for b1, b2 being category
for b3, b4, b5 being covariant Functor of b1,b2 holds
( b3 is_transformable_to b4 & b4 is_transformable_to b5 implies for b6 being transformation of b3,b4 holds
( ( for b7, b8 being object of b1 holds
( <^b7,b8^> <> {} implies for b9 being Morphism of b7,b8 holds (b6 ! b8) * (b3 . b9) = (b4 . b9) * (b6 ! b7) ) ) implies for b7 being transformation of b4,b5 holds
( ( for b8, b9 being object of b1 holds
( <^b8,b9^> <> {} implies for b10 being Morphism of b8,b9 holds (b7 ! b9) * (b4 . b10) = (b5 . b10) * (b7 ! b8) ) ) implies for b8, b9 being object of b1 holds
( <^b8,b9^> <> {} implies for b10 being Morphism of b8,b9 holds ((b7 `*` b6) ! b9) * (b3 . b10) = (b5 . b10) * ((b7 `*` b6) ! b8) ) ) ) )
theorem Th10: :: FUNCTOR2:10
definition
let c
1, c
2 be non
empty transitive with_units AltCatStr ;
let c
3, c
4 be
covariant Functor of c
1,c
2;
assume E17:
c
3 is_naturally_transformable_to c
4
;
mode natural_transformation of c
3,c
4 -> transformation of a
3,a
4 means :
Def7:
:: FUNCTOR2:def 7
for b
1, b
2 being
object of a
1 holds
(
<^b1,b2^> <> {} implies for b
3 being
Morphism of b
1,b
2 holds
(a5 ! b2) * (a3 . b3) = (a4 . b3) * (a5 ! b1) );
existence
ex b1 being transformation of c3,c4 st
for b2, b3 being object of c1 holds
( <^b2,b3^> <> {} implies for b4 being Morphism of b2,b3 holds (b1 ! b3) * (c3 . b4) = (c4 . b4) * (b1 ! b2) )
by E17, Def6;
end;
:: deftheorem Def7 defines natural_transformation FUNCTOR2:def 7 :
definition
let c
1, c
2 be
category;
let c
3, c
4, c
5 be
covariant Functor of c
1,c
2;
assume that E18:
c
3 is_naturally_transformable_to c
4
and E19:
c
4 is_naturally_transformable_to c
5
;
let c
6 be
natural_transformation of c
3,c
4;
let c
7 be
natural_transformation of c
4,c
5;
func c
7 `*` c
6 -> natural_transformation of a
3,a
5 means :
Def8:
:: FUNCTOR2:def 8
a
8 = a
7 `*` a
6;
existence
ex b1 being natural_transformation of c3,c5 st b1 = c7 `*` c6
correctness
uniqueness
for b1, b2 being natural_transformation of c3,c5 holds
( b1 = c7 `*` c6 & b2 = c7 `*` c6 implies b1 = b2 );
;
end;
:: deftheorem Def8 defines `*` FUNCTOR2:def 8 :
theorem Th11: :: FUNCTOR2:11
theorem Th12: :: FUNCTOR2:12
theorem Th13: :: FUNCTOR2:13
:: deftheorem Def9 defines Funcs FUNCTOR2:def 9 :
:: deftheorem Def10 defines Funct FUNCTOR2:def 10 :
definition
let c
1, c
2 be
category;
func Functors c
1,c
2 -> non
empty transitive strict AltCatStr means :: FUNCTOR2:def 11
( the
carrier of a
3 = Funct a
1,a
2 & ( for b
1, b
2 being
strict covariant Functor of a
1,a
2for b
3 being
set holds
( b
3 in the
Arrows of a
3 . b
1,b
2 iff ( b
1 is_naturally_transformable_to b
2 & b
3 is
natural_transformation of b
1,b
2 ) ) ) & ( for b
1, b
2, b
3 being
strict covariant Functor of a
1,a
2 holds
( b
1 is_naturally_transformable_to b
2 & b
2 is_naturally_transformable_to b
3 implies for b
4 being
natural_transformation of b
1,b
2for b
5 being
natural_transformation of b
2,b
3 holds
ex b
6 being
Function st
( b
6 = the
Comp of a
3 . b
1,b
2,b
3 & b
6 . b
5,b
4 = b
5 `*` b
4 ) ) ) );
existence
ex b1 being non empty transitive strict AltCatStr st
( the carrier of b1 = Funct c1,c2 & ( for b2, b3 being strict covariant Functor of c1,c2
for b4 being set holds
( b4 in the Arrows of b1 . b2,b3 iff ( b2 is_naturally_transformable_to b3 & b4 is natural_transformation of b2,b3 ) ) ) & ( for b2, b3, b4 being strict covariant Functor of c1,c2 holds
( b2 is_naturally_transformable_to b3 & b3 is_naturally_transformable_to b4 implies for b5 being natural_transformation of b2,b3
for b6 being natural_transformation of b3,b4 holds
ex b7 being Function st
( b7 = the Comp of b1 . b2,b3,b4 & b7 . b6,b5 = b6 `*` b5 ) ) ) )
uniqueness
for b1, b2 being non empty transitive strict AltCatStr holds
( the carrier of b1 = Funct c1,c2 & ( for b3, b4 being strict covariant Functor of c1,c2
for b5 being set holds
( b5 in the Arrows of b1 . b3,b4 iff ( b3 is_naturally_transformable_to b4 & b5 is natural_transformation of b3,b4 ) ) ) & ( for b3, b4, b5 being strict covariant Functor of c1,c2 holds
( b3 is_naturally_transformable_to b4 & b4 is_naturally_transformable_to b5 implies for b6 being natural_transformation of b3,b4
for b7 being natural_transformation of b4,b5 holds
ex b8 being Function st
( b8 = the Comp of b1 . b3,b4,b5 & b8 . b7,b6 = b7 `*` b6 ) ) ) & the carrier of b2 = Funct c1,c2 & ( for b3, b4 being strict covariant Functor of c1,c2
for b5 being set holds
( b5 in the Arrows of b2 . b3,b4 iff ( b3 is_naturally_transformable_to b4 & b5 is natural_transformation of b3,b4 ) ) ) & ( for b3, b4, b5 being strict covariant Functor of c1,c2 holds
( b3 is_naturally_transformable_to b4 & b4 is_naturally_transformable_to b5 implies for b6 being natural_transformation of b3,b4
for b7 being natural_transformation of b4,b5 holds
ex b8 being Function st
( b8 = the Comp of b2 . b3,b4,b5 & b8 . b7,b6 = b7 `*` b6 ) ) ) implies b1 = b2 )
end;
:: deftheorem Def11 defines Functors FUNCTOR2:def 11 :
for b
1, b
2 being
categoryfor b
3 being non
empty transitive strict AltCatStr holds
( b
3 = Functors b
1,b
2 iff ( the
carrier of b
3 = Funct b
1,b
2 & ( for b
4, b
5 being
strict covariant Functor of b
1,b
2for b
6 being
set holds
( b
6 in the
Arrows of b
3 . b
4,b
5 iff ( b
4 is_naturally_transformable_to b
5 & b
6 is
natural_transformation of b
4,b
5 ) ) ) & ( for b
4, b
5, b
6 being
strict covariant Functor of b
1,b
2 holds
( b
4 is_naturally_transformable_to b
5 & b
5 is_naturally_transformable_to b
6 implies for b
7 being
natural_transformation of b
4,b
5for b
8 being
natural_transformation of b
5,b
6 holds
ex b
9 being
Function st
( b
9 = the
Comp of b
3 . b
4,b
5,b
6 & b
9 . b
8,b
7 = b
8 `*` b
7 ) ) ) ) );