reserve f, g, h for Function;
reserve x, y, z, u, X for set,
  A for non empty set,
  n for Element of NAT,
  f for Function of X, X;
reserve f for c=-monotone Function of bool X, bool X,
  S for Subset of X;
reserve X, Y for non empty set,
  f for Function of X, Y,
  g for Function of Y, X;

theorem Th10:
  for X, Y being non empty set,
      f being Function of X, Y,
      g being Function of Y, X st
    f is one-to-one & g is one-to-one holds
   ex h being Function of X,Y st h is bijective
proof
  let X, Y be non empty set,
      f be Function of X, Y,
      g be Function of Y, X;
  assume that
A1: f is one-to-one and
A2: g is one-to-one;
  consider Xa, Xb, Ya, Yb being set such that
A3: Xa misses Xb and
A4: Ya misses Yb and
A5: Xa \/ Xb = X and
A6: Ya \/ Yb = Y and
A7: f.:Xa = Ya and
A8: g.:Yb = Xb by Th9;
  set gYb = g|Yb;
A9: gYb is one-to-one by A2,FUNCT_1:52;
  set fXa = f|Xa;
  dom f = X by FUNCT_2:def 1;
  then
A10: dom fXa = Xa by A5,RELAT_1:62,XBOOLE_1:7;
  set h = fXa+*gYb";
  rng gYb = Xb by A8,RELAT_1:115;
  then
A11: dom (gYb") = Xb by A9,FUNCT_1:32;
  then
A12: X = dom h by A5,A10,FUNCT_4:def 1;
A13: rng fXa = Ya by A7,RELAT_1:115;
  dom g = Y by FUNCT_2:def 1;
  then dom gYb = Yb by A6,RELAT_1:62,XBOOLE_1:7;
  then
A14: rng (gYb") = Yb by A9,FUNCT_1:33;
  fXa \/ gYb" = h by A3,A10,A11,FUNCT_4:31;
  then
A15: rng h = Y by A6,A13,A14,RELAT_1:12;
  then reconsider h as Function of X, Y by A12,FUNCT_2:def 1,RELSET_1:4;
A16: h is onto by A15,FUNCT_2:def 3;
  take h;
  fXa is one-to-one by A1,FUNCT_1:52;
  then h is one-to-one by A4,A13,A9,A14,FUNCT_4:92;
  hence thesis by A16,FUNCT_2:def 4;
end;
