reserve P,Q,X,Y,Z for set, p,x,x9,x1,x2,y,z for object;

theorem
  for f being Function of X,Y st Y <> {} holds rng f = Y iff for Z st Z
  <> {} for g,h being Function of Y,Z st g*f = h*f holds g = h
proof
  let f be Function of X,Y;
  assume
A1: Y <> {};
  thus rng f = Y implies for Z st Z <> {} for g,h being Function of Y,Z st g*f
  = h*f holds g = h
  proof
    assume
A2: rng f = Y;
    let Z such that
A3: Z <> {};
    let g,h be Function of Y,Z;
    dom g = Y & dom h = Y by A3,Def1;
    hence thesis by A2,FUNCT_1:86;
  end;
  assume
A4: for Z st Z <> {} for g,h being Function of Y,Z st g*f = h*f holds g = h;
  for g,h being Function st dom g = Y & dom h = Y & g*f = h*f holds g = h
  proof
    let g,h be Function;
    assume that
A5: dom g = Y and
A6: dom h = Y;
A7: rng g <> {} by A1,A5,RELAT_1:42;
A8: g is Function of Y,rng g \/ rng h by A5,Th2,XBOOLE_1:7;
    h is Function of Y,rng g \/ rng h by A6,Th2,XBOOLE_1:7;
    hence thesis by A4,A7,A8;
  end;
  hence thesis by FUNCT_1:16;
end;
