let C be category; for o1, o2 being Object of C st <^o1,o2^> <> {} & <^o2,o1^> <> {} holds
for A being Morphism of o1,o2 holds
( A is iso iff ( A is retraction & A is coretraction ) )
let o1, o2 be Object of C; ( <^o1,o2^> <> {} & <^o2,o1^> <> {} implies for A being Morphism of o1,o2 holds
( A is iso iff ( A is retraction & A is coretraction ) ) )
assume A1:
( <^o1,o2^> <> {} & <^o2,o1^> <> {} )
; for A being Morphism of o1,o2 holds
( A is iso iff ( A is retraction & A is coretraction ) )
let A be Morphism of o1,o2; ( A is iso iff ( A is retraction & A is coretraction ) )
thus
( A is iso implies ( A is retraction & A is coretraction ) )
by Th5; ( A is retraction & A is coretraction implies A is iso )
assume A2:
( A is retraction & A is coretraction )
; A is iso
then
A " is_right_inverse_of A
by A1, Def4;
then A3:
A * (A ") = idm o2
;
A " is_left_inverse_of A
by A1, A2, Def4;
then
(A ") * A = idm o1
;
hence
A is iso
by A3; verum