reserve r,x,x0,a,b for Real;
reserve n,m for Element of NAT;
reserve A for non empty closed_interval Subset of REAL;
reserve Z for open Subset of REAL;
reserve f, f1, f2, f3 for PartFunc of REAL, REAL;

theorem
  A c= Z & (for x st x in Z holds f.x = -1/(sin.x)^2 & sin.x <> 0) & dom
cot=Z & Z = dom f & f|A is continuous implies
 integral(f,A) = cot.(upper_bound A)-cot.(
  lower_bound A)
proof
  assume that
A1: A c= Z and
A2: for x st x in Z holds f.x = -1/(sin.x)^2 & sin.x <> 0 and
A3: dom cot=Z and
A4: Z = dom f and
A5: f|A is continuous;
A6: f is_integrable_on A by A1,A4,A5,INTEGRA5:11;
A7: cot is_differentiable_on Z by A3,INTEGRA8:34;
A8: for x being Element of REAL st x in dom (cot`|Z) holds (cot`|Z).x = f.x
  proof
    let x be Element of REAL;
    assume x in dom (cot`|Z);
    then
A9: x in Z by A7,FDIFF_1:def 7;
    then (cot`|Z).x = -1/(sin.x)^2 by A3,INTEGRA8:34
      .= f.x by A2,A9;
    hence thesis;
  end;
  dom (cot`|Z) = dom f by A4,A7,FDIFF_1:def 7;
  then (cot`|Z) = f by A8,PARTFUN1:5;
  hence thesis by A1,A4,A5,A6,A7,INTEGRA5:10,13;
end;
