let V be non empty set ; :: thesis: for C being Category
for a being Object of C st Hom C c= V holds
hom?- a is Functor of C, Ens V
let C be Category; :: thesis: for a being Object of C st Hom C c= V holds
hom?- a is Functor of C, Ens V
let a be Object of C; :: thesis: ( Hom C c= V implies hom?- a is Functor of C, Ens V )
assume A1:
Hom C c= V
; :: thesis: hom?- a is Functor of C, Ens V
then reconsider T = hom?- a as Function of the carrier' of C,the carrier' of (Ens V) by Lm7;
now thus
for
c being
Object of
C ex
d being
Object of
(Ens V) st
T . (id c) = id d
:: thesis: ( ( for f being Morphism of C holds
( T . (id (dom f)) = id (dom (T . f)) & T . (id (cod f)) = id (cod (T . f)) ) ) & ( for f, g being Morphism of C st dom g = cod f holds
T . (g * f) = (T . g) * (T . f) ) )thus
for
f being
Morphism of
C holds
(
T . (id (dom f)) = id (dom (T . f)) &
T . (id (cod f)) = id (cod (T . f)) )
:: thesis: for f, g being Morphism of C st dom g = cod f holds
T . (g * f) = (T . g) * (T . f)proof
let f be
Morphism of
C;
:: thesis: ( T . (id (dom f)) = id (dom (T . f)) & T . (id (cod f)) = id (cod (T . f)) )
set b =
dom f;
set c =
cod f;
(
Hom a,
(dom f) in Hom C &
Hom a,
(cod f) in Hom C )
;
then reconsider A =
Hom a,
(dom f),
B =
Hom a,
(cod f) as
Element of
V by A1;
set g =
T . f;
A2:
[[(Hom a,(dom f)),(Hom a,(cod f))],(hom a,f)] =
@ (T . f)
by Def22
.=
[[(dom (@ (T . f))),(cod (@ (T . f)))],((@ (T . f)) `2 )]
by Th8
.=
[[(dom (T . f)),(cod (@ (T . f)))],((@ (T . f)) `2 )]
by Def10
.=
[[(dom (T . f)),(cod (T . f))],((@ (T . f)) `2 )]
by Def11
;
thus T . (id (dom f)) =
id (@ A)
by A1, Lm8
.=
id (dom (T . f))
by A2, Lm1
;
:: thesis: T . (id (cod f)) = id (cod (T . f))
thus T . (id (cod f)) =
id (@ B)
by A1, Lm8
.=
id (cod (T . f))
by A2, Lm1
;
:: thesis: verum
end; let f,
g be
Morphism of
C;
:: thesis: ( dom g = cod f implies T . (g * f) = (T . g) * (T . f) )assume A3:
dom g = cod f
;
:: thesis: T . (g * f) = (T . g) * (T . f)[[(Hom a,(dom f)),(Hom a,(cod f))],(hom a,f)] =
@ (T . f)
by Def22
.=
[[(dom (@ (T . f))),(cod (@ (T . f)))],((@ (T . f)) `2 )]
by Th8
.=
[[(dom (T . f)),(cod (@ (T . f)))],((@ (T . f)) `2 )]
by Def10
.=
[[(dom (T . f)),(cod (T . f))],((@ (T . f)) `2 )]
by Def11
;
then A4:
(
(@ (T . f)) `2 = hom a,
f &
dom (T . f) = Hom a,
(dom f) &
cod (T . f) = Hom a,
(cod f) )
by Lm1, ZFMISC_1:33;
then A5:
(
dom (@ (T . f)) = Hom a,
(dom f) &
cod (@ (T . f)) = Hom a,
(cod f) )
by Def10, Def11;
[[(Hom a,(dom g)),(Hom a,(cod g))],(hom a,g)] =
@ (T . g)
by Def22
.=
[[(dom (@ (T . g))),(cod (@ (T . g)))],((@ (T . g)) `2 )]
by Th8
.=
[[(dom (T . g)),(cod (@ (T . g)))],((@ (T . g)) `2 )]
by Def10
.=
[[(dom (T . g)),(cod (T . g))],((@ (T . g)) `2 )]
by Def11
;
then A6:
(
(@ (T . g)) `2 = hom a,
g &
dom (T . g) = Hom a,
(dom g) &
cod (T . g) = Hom a,
(cod g) )
by Lm1, ZFMISC_1:33;
then A7:
(
dom (@ (T . g)) = Hom a,
(dom g) &
cod (@ (T . g)) = Hom a,
(cod g) )
by Def10, Def11;
(
dom (g * f) = dom f &
cod (g * f) = cod g )
by A3, CAT_1:42;
hence T . (g * f) =
[[(Hom a,(dom f)),(Hom a,(cod g))],(hom a,(g * f))]
by Def22
.=
[[(Hom a,(dom f)),(Hom a,(cod g))],((hom a,g) * (hom a,f))]
by A3, Th45
.=
(@ (T . g)) * (@ (T . f))
by A3, A4, A5, A6, A7, Def7
.=
(T . g) * (T . f)
by A3, A4, A6, Th28
;
:: thesis: verum end;
hence
hom?- a is Functor of C, Ens V
by CAT_1:96; :: thesis: verum