Journal of Formalized Mathematics
Volume 9, 1997
University of Bialystok
Copyright (c) 1997
Association of Mizar Users
The abstract of the Mizar article:
-
- by
- Robert Nieszczerzewski
- Received June 12, 1997
- MML identifier: FUNCTOR2
- [
Mizar article,
MML identifier index
]
environ
vocabulary RELAT_2, ALTCAT_1, MSUALG_6, FUNCTOR0, CAT_1, FUNCT_1, BOOLE,
NATTRA_1, PBOOLE, QC_LANG1, FUNCT_2, PRALG_1, CARD_3, RELAT_1, CAT_2,
TARSKI, FUNCTOR2;
notation TARSKI, XBOOLE_0, ZFMISC_1, SUBSET_1, FUNCTOR0, MCART_1, DOMAIN_1,
RELAT_1, STRUCT_0, CARD_3, FUNCT_1, FUNCT_2, BINOP_1, MULTOP_1, FRAENKEL,
PBOOLE, MSUALG_1, ALTCAT_1;
constructors FUNCTOR0, DOMAIN_1;
clusters STRUCT_0, ALTCAT_1, FUNCTOR0, RELSET_1, SUBSET_1, XBOOLE_0;
requirements SUBSET, BOOLE;
begin
definition let A be transitive with_units (non empty AltCatStr),
B be with_units (non empty AltCatStr);
cluster -> feasible id-preserving Functor of A, B;
end;
definition let A be transitive with_units (non empty AltCatStr),
B be with_units (non empty AltCatStr);
cluster covariant -> Covariant comp-preserving Functor of A, B;
cluster Covariant comp-preserving -> covariant Functor of A, B;
cluster contravariant -> Contravariant comp-reversing Functor of A, B;
cluster Contravariant comp-reversing -> contravariant Functor of A, B;
end;
canceled;
theorem :: FUNCTOR2:2
for A,B being transitive with_units (non empty AltCatStr),
F being covariant Functor of A,B
for a being object of A holds F.idm a = idm (F.a);
begin :: Transformations
definition
let A,B be transitive with_units (non empty AltCatStr),
F1,F2 be covariant Functor of A,B;
pred F1 is_transformable_to F2 means
:: FUNCTOR2:def 1
for a being object of A holds <^F1.a,F2.a^> <> {};
reflexivity;
end;
canceled;
theorem :: FUNCTOR2:4
for A,B being transitive with_units (non empty AltCatStr),
F,F1,F2 being covariant Functor of A,B holds
F is_transformable_to F1 & F1 is_transformable_to F2 implies
F is_transformable_to F2;
definition
let A,B be transitive with_units (non empty AltCatStr),
F1,F2 be covariant Functor of A,B;
assume F1 is_transformable_to F2;
mode transformation of F1,F2 ->
ManySortedSet of the carrier of A means
:: FUNCTOR2:def 2
for a being object of A holds it.a is Morphism of F1.a,F2.a;
end;
definition
let A,B be transitive with_units (non empty AltCatStr);
let F be covariant Functor of A,B;
func idt F -> transformation of F,F means
:: FUNCTOR2:def 3
for a being object of A holds it.a = idm (F.a);
end;
definition
let A,B be transitive with_units (non empty AltCatStr),
F1,F2 be covariant Functor of A,B;
assume F1 is_transformable_to F2;
let t be transformation of F1,F2;
let a be object of A;
func t!a -> Morphism of F1.a, F2.a means
:: FUNCTOR2:def 4
it = t.a;
end;
definition
let A,B be transitive with_units (non empty AltCatStr),
F,F1,F2 be covariant Functor of A,B;
assume that
F is_transformable_to F1 and
F1 is_transformable_to F2;
let t1 be transformation of F,F1;
let t2 be transformation of F1,F2;
func t2`*`t1 -> transformation of F,F2 means
:: FUNCTOR2:def 5
for a being object of A holds it!a = (t2!a) * (t1!a);
end;
theorem :: FUNCTOR2:5
for A,B being transitive with_units (non empty AltCatStr),
F1,F2 being covariant Functor of A,B holds
F1 is_transformable_to F2 implies
for t1,t2 being transformation of F1,F2 st
for a being object of A holds t1!a = t2!a
holds t1 = t2;
theorem :: FUNCTOR2:6
for A,B being transitive with_units (non empty AltCatStr),
F being covariant Functor of A,B holds
for a being object of A holds (idt F)!a = idm(F.a);
theorem :: FUNCTOR2:7
for A,B being transitive with_units (non empty AltCatStr),
F1,F2 being covariant Functor of A,B holds
F1 is_transformable_to F2 implies
for t being transformation of F1,F2 holds (idt F2)`*`t = t & t`*`(idt F1) = t;
theorem :: FUNCTOR2:8
for A,B being category,
F,F1,F2,F3 being covariant Functor of A,B holds
F is_transformable_to F1 & F1 is_transformable_to F2 &
F2 is_transformable_to F3 implies
for t1 being transformation of F,F1, t2 being transformation of F1,F2,
t3 being transformation of F2,F3
holds t3`*`t2`*`t1 = t3`*`(t2`*`t1);
begin :: Natural transformations
definition
let A,B be transitive with_units (non empty AltCatStr),
F1,F2 be covariant Functor of A,B;
pred F1 is_naturally_transformable_to F2 means
:: FUNCTOR2:def 6
F1 is_transformable_to F2 &
ex t being transformation of F1,F2 st
for a,b being object of A st <^a,b^> <> {}
for f being Morphism of a,b holds
t!b*F1.f = F2.f*(t!a);
end;
theorem :: FUNCTOR2:9
for A,B be transitive with_units (non empty AltCatStr),
F be covariant Functor of A,B holds
F is_naturally_transformable_to F;
theorem :: FUNCTOR2:10
for A,B be category,
F,F1,F2 be covariant Functor of A,B holds
F is_naturally_transformable_to F1 & F1 is_naturally_transformable_to F2
implies F is_naturally_transformable_to F2;
definition
let A,B be transitive with_units (non empty AltCatStr),
F1,F2 be covariant Functor of A,B;
assume F1 is_naturally_transformable_to F2;
mode natural_transformation of F1,F2 -> transformation of F1,F2 means
:: FUNCTOR2:def 7
for a,b being object of A st <^a,b^> <> {}
for f being Morphism of a,b holds it!b*F1.f = F2.f*(it!a);
end;
definition
let A,B be transitive with_units (non empty AltCatStr),
F be covariant Functor of A,B;
redefine func idt F -> natural_transformation of F,F;
end;
definition
let A,B be category,
F,F1,F2 be covariant Functor of A,B such that
F is_naturally_transformable_to F1 and
F1 is_naturally_transformable_to F2;
let t1 be natural_transformation of F,F1;
let t2 be natural_transformation of F1,F2;
func t2`*`t1 -> natural_transformation of F,F2 means
:: FUNCTOR2:def 8
it = t2`*`t1;
end;
theorem :: FUNCTOR2:11
for A,B be transitive with_units (non empty AltCatStr),
F1,F2 be covariant Functor of A,B holds
F1 is_naturally_transformable_to F2 implies
for t being natural_transformation of F1,F2 holds
(idt F2)`*`t = t & t`*`(idt F1) = t;
theorem :: FUNCTOR2:12
for A,B be transitive with_units (non empty AltCatStr),
F,F1,F2 be covariant Functor of A,B holds
F is_naturally_transformable_to F1 &
F1 is_naturally_transformable_to F2 implies
for t1 being natural_transformation of F,F1
for t2 being natural_transformation of F1,F2
for a being object of A
holds (t2`*`t1)!a = (t2!a)*(t1!a);
theorem :: FUNCTOR2:13
for A,B be category,
F,F1,F2,F3 be covariant Functor of A,B
for t be natural_transformation of F,F1,
t1 be natural_transformation of F1,F2 holds
F is_naturally_transformable_to F1 &
F1 is_naturally_transformable_to F2 &
F2 is_naturally_transformable_to F3 implies
for t3 being natural_transformation of F2,F3 holds t3`*`t1`*`t = t3`*`(t1`*`t)
;
begin :: Category of Functors
definition
let I be set;
let A,B be ManySortedSet of I;
func Funcs(A,B) -> set means
:: FUNCTOR2:def 9
for x be set holds x in it iff x is ManySortedFunction of A,B
if for i being set st i in I holds B.i = {} implies A.i = {}
otherwise it = {};
end;
definition
let A,B be transitive with_units (non empty AltCatStr);
func Funct(A,B) -> set means
:: FUNCTOR2:def 10
for x being set holds x in it iff x is covariant strict Functor of A,B;
end;
definition let A,B be category;
func Functors(A,B) -> strict non empty transitive AltCatStr means
:: FUNCTOR2:def 11
the carrier of it = Funct(A,B) &
(for F,G being strict covariant Functor of A,B, x being set holds
x in (the Arrows of it).(F,G) iff
F is_naturally_transformable_to G & x is natural_transformation of F,G) &
for F,G,H being strict covariant Functor of A,B st
F is_naturally_transformable_to G & G is_naturally_transformable_to H
for t1 being natural_transformation of F,G,
t2 being natural_transformation of G,H
ex f being Function st f = (the Comp of it).(F,G,H) & f.(t2,t1) = t2`*`t1;
end;
Back to top