reserve I for set,
  x,x1,x2,y,z for set,
  A for non empty set;
reserve C,D for Category;
reserve a,b,c,d for Object of C;
reserve f,g,h,i,j,k,p1,p2,q1,q2,i1,i2,j1,j2 for Morphism of C;
reserve f for Morphism of a,b,
        g for Morphism of b,a;
reserve g for Morphism of b,c;

theorem Th29:
  f is coretraction & f is epi implies f is invertible
proof
 assume
A1: Hom(a,b) <> {} & Hom(b,a) <> {};
  given i being Morphism of b,a such that
A2: i*f = id a;
  assume
A3: f is epi;
  thus Hom(a,b) <> {} & Hom(b,a) <> {} by A1;
  take i;
A4: f*i*f = f*id a by A1,A2,CAT_1:25
    .= f by A1,CAT_1:29
    .= (id b)*f by A1,CAT_1:28;
   Hom(b,b) <> {};
  hence f*i = id b by A3,A4;
  thus i*f = id a by A2;
end;
