let Z be open Subset of REAL ; :: thesis: ( sin * sin is_differentiable_on Z & ( for x being Real st x in Z holds
((sin * sin ) `| Z) . x = (cos . (sin . x)) * (cos . x) ) )

( dom sin = REAL & rng sin c= REAL ) by SIN_COS:27;
then A1: dom (sin * sin ) = REAL by RELAT_1:46;
A2: for x being Real st x in Z holds
sin * sin is_differentiable_in x
proof end;
then A4: sin * sin is_differentiable_on Z by A1, FDIFF_1:16;
for x being Real st x in Z holds
((sin * sin ) `| Z) . x = (cos . (sin . x)) * (cos . x)
proof
let x be Real; :: thesis: ( x in Z implies ((sin * sin ) `| Z) . x = (cos . (sin . x)) * (cos . x) )
assume A5: x in Z ; :: thesis: ((sin * sin ) `| Z) . x = (cos . (sin . x)) * (cos . x)
A6: sin is_differentiable_in x by SIN_COS:69;
sin is_differentiable_in sin . x by SIN_COS:69;
then diff (sin * sin ),x = (diff sin ,(sin . x)) * (diff sin ,x) by A6, FDIFF_2:13
.= (cos . (sin . x)) * (diff sin ,x) by SIN_COS:69
.= (cos . (sin . x)) * (cos . x) by SIN_COS:69 ;
hence ((sin * sin ) `| Z) . x = (cos . (sin . x)) * (cos . x) by A4, A5, FDIFF_1:def 8; :: thesis: verum
end;
hence ( sin * sin is_differentiable_on Z & ( for x being Real st x in Z holds
((sin * sin ) `| Z) . x = (cos . (sin . x)) * (cos . x) ) ) by A1, A2, FDIFF_1:16; :: thesis: verum