let C be Category; :: thesis: for c being Object of C
for p1, p2, h being Morphism of C st c is_a_product_wrt p1,p2 & h in Hom c,c & p1 * h = p1 & p2 * h = p2 holds
h = id c

let c be Object of C; :: thesis: for p1, p2, h being Morphism of C st c is_a_product_wrt p1,p2 & h in Hom c,c & p1 * h = p1 & p2 * h = p2 holds
h = id c

let p1, p2, h be Morphism of C; :: thesis: ( c is_a_product_wrt p1,p2 & h in Hom c,c & p1 * h = p1 & p2 * h = p2 implies h = id c )
assume that
A1: ( dom p1 = c & dom p2 = c ) and
A2: for d being Object of C
for f, g being Morphism of C st f in Hom d,(cod p1) & g in Hom d,(cod p2) holds
ex h being Morphism of C st
( h in Hom d,c & ( for k being Morphism of C st k in Hom d,c holds
( ( p1 * k = f & p2 * k = g ) iff h = k ) ) ) and
A3: ( h in Hom c,c & p1 * h = p1 & p2 * h = p2 ) ; :: according to CAT_3:def 16 :: thesis: h = id c
( p1 in Hom c,(cod p1) & p2 in Hom c,(cod p2) ) by A1;
then consider i being Morphism of C such that
i in Hom c,c and
A4: for k being Morphism of C st k in Hom c,c holds
( ( p1 * k = p1 & p2 * k = p2 ) iff i = k ) by A2;
A5: id c in Hom c,c by CAT_1:55;
( p1 * (id c) = p1 & p2 * (id c) = p2 ) by A1, CAT_1:47;
hence id c = i by A4, A5
.= h by A3, A4 ;
:: thesis: verum