let C be Category; :: thesis: for a, b being Object of C holds
( a,b are_isomorphic iff ( Hom (a,b) <> {} & Hom (b,a) <> {} & ex f being Morphism of a,b ex f9 being Morphism of b,a st
( f * f9 = id b & f9 * f = id a ) ) )

let a, b be Object of C; :: thesis: ( a,b are_isomorphic iff ( Hom (a,b) <> {} & Hom (b,a) <> {} & ex f being Morphism of a,b ex f9 being Morphism of b,a st
( f * f9 = id b & f9 * f = id a ) ) )

thus ( a,b are_isomorphic implies ( Hom (a,b) <> {} & Hom (b,a) <> {} & ex f being Morphism of a,b ex f9 being Morphism of b,a st
( f * f9 = id b & f9 * f = id a ) ) ) :: thesis: ( Hom (a,b) <> {} & Hom (b,a) <> {} & ex f being Morphism of a,b ex f9 being Morphism of b,a st
( f * f9 = id b & f9 * f = id a ) implies a,b are_isomorphic )
proof
given f being Morphism of a,b such that A1: f is invertible ; :: according to CAT_1:def 20 :: thesis: ( Hom (a,b) <> {} & Hom (b,a) <> {} & ex f being Morphism of a,b ex f9 being Morphism of b,a st
( f * f9 = id b & f9 * f = id a ) )

thus ( Hom (a,b) <> {} & Hom (b,a) <> {} ) by A1; :: thesis: ex f being Morphism of a,b ex f9 being Morphism of b,a st
( f * f9 = id b & f9 * f = id a )

take f ; :: thesis: ex f9 being Morphism of b,a st
( f * f9 = id b & f9 * f = id a )

thus ex f9 being Morphism of b,a st
( f * f9 = id b & f9 * f = id a ) by A1; :: thesis: verum
end;
assume that
A2: Hom (a,b) <> {} and
A3: Hom (b,a) <> {} ; :: thesis: ( for f being Morphism of a,b
for f9 being Morphism of b,a holds
( not f * f9 = id b or not f9 * f = id a ) or a,b are_isomorphic )

given f being Morphism of a,b such that A4: ex f9 being Morphism of b,a st
( f * f9 = id b & f9 * f = id a ) ; :: thesis: a,b are_isomorphic
take f ; :: according to CAT_1:def 20 :: thesis: f is invertible
thus f is invertible by A2, A3, A4; :: thesis: verum