let V be non empty set ; for a being Object of st ex x being set st a = {x} holds
a is terminal
let a be Object of ; ( ex x being set st a = {x} implies a is terminal )
given x being set such that A1:
a = {x}
; a is terminal
let b be Object of ; CAT_1:def 15 ( not Hom b,a = {} & ex b1 being Morphism of b,a st
for b2 being Morphism of b,a holds b1 = b2 )
consider h being Function of @ b, @ a;
set m = [[(@ b),(@ a)],h];
A2:
[[(@ b),(@ a)],h] in Maps (@ b),(@ a)
by A1, Th15;
hence A3:
Hom b,a <> {}
by Th27; ex b1 being Morphism of b,a st
for b2 being Morphism of b,a holds b1 = b2
[[(@ b),(@ a)],h] in Hom b,a
by A2, Th27;
then reconsider f = [[(@ b),(@ a)],h] as Morphism of b,a by CAT_1:def 7;
take
f
; for b1 being Morphism of b,a holds f = b1
let g be Morphism of b,a; f = g
Maps (@ b),(@ a) c= Maps V
by Th17;
then reconsider m = [[(@ b),(@ a)],h], m' = g as Element of Maps V by A2;
g in Hom b,a
by A3, CAT_1:def 7;
then A4:
g in Maps (@ b),(@ a)
by Th27;
then A5:
m' = [[(@ b),(@ a)],(m' `2 )]
by Th16;
then
m' `2 is Function of @ b, @ a
by A4, Lm4;
hence
f = g
by A1, A5, FUNCT_2:66; verum