reserve y for set,
  x,a,b for Real,
  n for Element of NAT,
  Z for open Subset of REAL,
  f,f1,f2,g for PartFunc of REAL,REAL;

theorem
  Z c= dom (f1/f2) & (for x st x in Z holds f1.x=x-a & f2.x=x-b & f2.x<>
0) implies (f1/f2) is_differentiable_on Z & for x st x in Z holds ((f1/f2)`|Z).
  x = (a-b)/(x-b)^2
proof
  assume that
A1: Z c= dom (f1/f2) and
A2: for x st x in Z holds f1.x=x-a & f2.x=x-b & f2.x<>0;
A3: for x st x in Z holds f1.x = 1*x+-a & f2.x = 1*x+-b
  proof
    let x;
A4: 1*x+-a=1*x-a & 1*x+-b=1*x-b;
    assume x in Z;
    hence thesis by A2,A4;
  end;
  then
A5: for x st x in Z holds f1.x = 1*x+-a;
A6: Z c= dom f1 /\ (dom f2 \ f2"{0}) by A1,RFUNCT_1:def 1;
  then
A7: Z c= dom f1 by XBOOLE_1:18;
  then
A8: f1 is_differentiable_on Z by A5,FDIFF_1:23;
A9: for x st x in Z holds f2.x = 1*x+-b by A3;
A10: Z c= dom f2 by A6,XBOOLE_1:1;
  then
A11: f2 is_differentiable_on Z by A9,FDIFF_1:23;
A12: for x st x in Z holds f2.x <> 0 by A2;
  then
A13: f1/f2 is_differentiable_on Z by A8,A11,FDIFF_2:21;
  for x st x in Z holds ((f1/f2)`|Z).x = (a-b)/(x-b)^2
  proof
    let x;
    assume
A14: x in Z;
    then
A15: f2.x <>0 by A2;
A16: f1.x=x-a & f2.x=x-b by A2,A14;
    f1 is_differentiable_in x & f2 is_differentiable_in x by A8,A11,A14,
FDIFF_1:9;
    then diff(f1/f2,x) =(diff(f1,x) * f2.x - diff(f2,x) * f1.x)/(f2.x)^2 by A15
,FDIFF_2:14
      .=((f1`|Z).x * f2.x-diff(f2,x) * f1.x)/(f2.x)^2 by A8,A14,FDIFF_1:def 7
      .= ((f1`|Z).x * f2.x-(f2`|Z).x * f1.x)/(f2.x)^2 by A11,A14,FDIFF_1:def 7
      .=(1* f2.x-(f2`|Z).x * f1.x)/(f2.x)^2 by A7,A5,A14,FDIFF_1:23
      .=(1* f2.x-1* f1.x)/(f2.x)^2 by A10,A9,A14,FDIFF_1:23
      .=(a-b)/(x-b)^2 by A16;
    hence thesis by A13,A14,FDIFF_1:def 7;
  end;
  hence thesis by A8,A11,A12,FDIFF_2:21;
end;
