reserve x,a,b,c for Real,
  n for Nat,
  Z for open Subset of REAL,
  f, f1,f2 for PartFunc of REAL,REAL;

theorem
  Z c= dom (cot(#)sec) implies (cot(#)sec) is_differentiable_on Z & for
x st x in Z holds ((cot(#)sec)`|Z).x = -1/(sin.x)^2/cos.x+cot.x*sin.x/(cos.x)^2
proof
  assume
A1: Z c= dom (cot(#)sec);
  then
A2: Z c= dom (cot) /\ dom sec by VALUED_1:def 4;
  then
A3: Z c= dom (cot) by XBOOLE_1:18;
  for x st x in Z holds cot is_differentiable_in x
  proof
    let x;
    assume x in Z;
    then sin.x<>0 by A3,FDIFF_8:2;
    hence thesis by FDIFF_7:47;
  end;
  then
A4: cot is_differentiable_on Z by A3,FDIFF_1:9;
A5: Z c= dom sec by A2,XBOOLE_1:18;
A6: for x st x in Z holds sec is_differentiable_in x & diff(sec, x)=sin.x/(
  cos.x)^2
  proof
    let x;
    assume x in Z;
    then cos.x<>0 by A5,RFUNCT_1:3;
    hence thesis by Th1;
  end;
  then for x st x in Z holds sec is_differentiable_in x;
  then
A7: sec is_differentiable_on Z by A5,FDIFF_1:9;
  for x st x in Z holds ((cot(#)sec)`|Z).x = -1/(sin.x)^2/cos.x+cot.x*sin
  .x/(cos.x)^2
  proof
    let x;
    assume
A8: x in Z;
    then
A9: sin.x<>0 by A3,FDIFF_8:2;
    ((cot(#)sec)`|Z).x = (sec.x)*diff(cot,x)+(cot.x)*diff(sec,x) by A1,A4,A7,A8
,FDIFF_1:21
      .=(sec.x)*(-1/(sin.x)^2)+(cot.x)*diff(sec,x) by A9,FDIFF_7:47
      .=(sec.x)*(-1/(sin.x)^2)+(cot.x)*(sin.x/(cos.x)^2) by A6,A8
      .=(-1/(sin.x)^2)/cos.x+cot.x*sin.x/(cos.x)^2 by A5,A8,RFUNCT_1:def 2;
    hence thesis;
  end;
  hence thesis by A1,A4,A7,FDIFF_1:21;
end;
