let Z be open Subset of REAL ; :: thesis: ( Z c= dom (sin * cot ) implies ( sin * cot is_differentiable_on Z & ( for x being Real st x in Z holds
((sin * cot ) `| Z) . x = - ((cos (cot . x)) / ((sin . x) ^2 )) ) ) )

assume A1: Z c= dom (sin * cot ) ; :: thesis: ( sin * cot is_differentiable_on Z & ( for x being Real st x in Z holds
((sin * cot ) `| Z) . x = - ((cos (cot . x)) / ((sin . x) ^2 )) ) )

A2: for x being Real st x in Z holds
sin . x <> 0
proof
let x be Real; :: thesis: ( x in Z implies sin . x <> 0 )
assume x in Z ; :: thesis: sin . x <> 0
then x in dom (cos / sin ) by A1, FUNCT_1:21;
hence sin . x <> 0 by FDIFF_8:2; :: thesis: verum
end;
A3: for x being Real st x in Z holds
sin * cot is_differentiable_in x
proof end;
then A5: sin * cot is_differentiable_on Z by A1, FDIFF_1:16;
for x being Real st x in Z holds
((sin * cot ) `| Z) . x = - ((cos (cot . x)) / ((sin . x) ^2 ))
proof
let x be Real; :: thesis: ( x in Z implies ((sin * cot ) `| Z) . x = - ((cos (cot . x)) / ((sin . x) ^2 )) )
A6: sin is_differentiable_in cot . x by SIN_COS:69;
assume A7: x in Z ; :: thesis: ((sin * cot ) `| Z) . x = - ((cos (cot . x)) / ((sin . x) ^2 ))
then A8: sin . x <> 0 by A2;
then cot is_differentiable_in x by FDIFF_7:47;
then diff (sin * cot ),x = (diff sin ,(cot . x)) * (diff cot ,x) by A6, FDIFF_2:13
.= (cos (cot . x)) * (diff cot ,x) by SIN_COS:69
.= (cos (cot . x)) * (- (1 / ((sin . x) ^2 ))) by A8, FDIFF_7:47
.= - ((cos (cot . x)) / ((sin . x) ^2 )) ;
hence ((sin * cot ) `| Z) . x = - ((cos (cot . x)) / ((sin . x) ^2 )) by A5, A7, FDIFF_1:def 8; :: thesis: verum
end;
hence ( sin * cot is_differentiable_on Z & ( for x being Real st x in Z holds
((sin * cot ) `| Z) . x = - ((cos (cot . x)) / ((sin . x) ^2 )) ) ) by A1, A3, FDIFF_1:16; :: thesis: verum