reserve C for CatStr;
reserve f,g for Morphism of C;
reserve C for non void non empty CatStr,
  f,g for Morphism of C,
  a,b,c,d for Object of C;
reserve o,m for set;
reserve B,C,D for Category;
reserve a,b,c,d for Object of C;
reserve f,f1,f2,g,g1,g2 for Morphism of C;
reserve f,f1,f2 for Morphism of a,b;
reserve f9 for Morphism of b,a;
reserve g for Morphism of b,c;
reserve h,h1,h2 for Morphism of c,d;

theorem
  f is invertible implies f is monic & f is epi
proof
  assume that
A1: f is invertible;
A2: Hom(a,b)<>{} by A1;
  consider k being Morphism of b,a such that
A3: f*k=id b and
A4: k*f=id a by A1;
A5: Hom(b,a)<>{} by A1;
  now
    let c be (Object of C),g,h be Morphism of c,a such that
A6: Hom(c,a)<>{} and
A7: f*g=f*h;
    g = (k*f)*g by A4,A6,Th23
      .= k*(f*h) by A2,A5,A6,A7,Th21
      .= (id a)*h by A2,A5,A4,A6,Th21;
    hence g=h by A6,Th23;
  end;
  hence f is monic by A2;
  now
    let c be (Object of C), g,h be Morphism of b,c such that
A8: Hom(b,c)<>{} and
A9: g*f=h*f;
    g = g*(f*k) by A3,A8,Th24
      .= (h*f)*k by A2,A5,A8,A9,Th21
      .= h*(id b) by A2,A5,A3,A8,Th21;
    hence g=h by A8,Th24;
  end;
  hence thesis by A2;
end;
