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;

theorem Th22:
  f is retraction implies f is epi
proof assume
A1: Hom(a,b) <> {} & Hom(b,a) <> {};
  given g such that
A2: f*g = id b;
  thus Hom(a,b) <> {} by A1;
  let c be Object of C such that
A3: Hom(b,c) <> {};
  let p1,p2 be Morphism of b,c;
  assume
A4: p1*f = p2*f;
  thus p1 = p1*(f*g) by A3,A2,CAT_1:29
    .= (p2*f)*g by A3,A1,A4,CAT_1:25
    .= p2*(f*g) by A3,A1,CAT_1:25
    .= p2 by A3,A2,CAT_1:29;
end;
