let m, n be Element of NAT ; :: thesis: for A being closed-interval Subset of REAL st m + n <> 0 & m - n <> 0 holds
integral ((cos * (AffineMap m,0 )) (#) (cos * (AffineMap n,0 ))),A = ((((1 / (2 * (m + n))) (#) (sin * (AffineMap (m + n),0 ))) + ((1 / (2 * (m - n))) (#) (sin * (AffineMap (m - n),0 )))) . (upper_bound A)) - ((((1 / (2 * (m + n))) (#) (sin * (AffineMap (m + n),0 ))) + ((1 / (2 * (m - n))) (#) (sin * (AffineMap (m - n),0 )))) . (lower_bound A))

let A be closed-interval Subset of REAL ; :: thesis: ( m + n <> 0 & m - n <> 0 implies integral ((cos * (AffineMap m,0 )) (#) (cos * (AffineMap n,0 ))),A = ((((1 / (2 * (m + n))) (#) (sin * (AffineMap (m + n),0 ))) + ((1 / (2 * (m - n))) (#) (sin * (AffineMap (m - n),0 )))) . (upper_bound A)) - ((((1 / (2 * (m + n))) (#) (sin * (AffineMap (m + n),0 ))) + ((1 / (2 * (m - n))) (#) (sin * (AffineMap (m - n),0 )))) . (lower_bound A)) )
assume A1: ( m + n <> 0 & m - n <> 0 ) ; :: thesis: integral ((cos * (AffineMap m,0 )) (#) (cos * (AffineMap n,0 ))),A = ((((1 / (2 * (m + n))) (#) (sin * (AffineMap (m + n),0 ))) + ((1 / (2 * (m - n))) (#) (sin * (AffineMap (m - n),0 )))) . (upper_bound A)) - ((((1 / (2 * (m + n))) (#) (sin * (AffineMap (m + n),0 ))) + ((1 / (2 * (m - n))) (#) (sin * (AffineMap (m - n),0 )))) . (lower_bound A))
A2: for x being Real st x in REAL holds
(AffineMap n,0 ) . x = n * x
proof
let x be Real; :: thesis: ( x in REAL implies (AffineMap n,0 ) . x = n * x )
assume x in REAL ; :: thesis: (AffineMap n,0 ) . x = n * x
(AffineMap n,0 ) . x = (n * x) + 0 by JORDAN16:def 3
.= n * x ;
hence (AffineMap n,0 ) . x = n * x ; :: thesis: verum
end;
A3: dom (cos * (AffineMap n,0 )) = [#] REAL by FUNCT_2:def 1;
A4: dom (cos * (AffineMap m,0 )) = [#] REAL by FUNCT_2:def 1;
then A5: (dom (cos * (AffineMap m,0 ))) /\ (dom (cos * (AffineMap n,0 ))) = [#] REAL by A3;
A6: for x being Real st x in REAL holds
(AffineMap m,0 ) . x = m * x
proof
let x be Real; :: thesis: ( x in REAL implies (AffineMap m,0 ) . x = m * x )
assume x in REAL ; :: thesis: (AffineMap m,0 ) . x = m * x
(AffineMap m,0 ) . x = (m * x) + 0 by JORDAN16:def 3
.= m * x ;
hence (AffineMap m,0 ) . x = m * x ; :: thesis: verum
end;
A7: for x being Real st x in dom ((((1 / (2 * (m + n))) (#) (sin * (AffineMap (m + n),0 ))) + ((1 / (2 * (m - n))) (#) (sin * (AffineMap (m - n),0 )))) `| REAL ) holds
((((1 / (2 * (m + n))) (#) (sin * (AffineMap (m + n),0 ))) + ((1 / (2 * (m - n))) (#) (sin * (AffineMap (m - n),0 )))) `| REAL ) . x = ((cos * (AffineMap m,0 )) (#) (cos * (AffineMap n,0 ))) . x
proof
let x be Real; :: thesis: ( x in dom ((((1 / (2 * (m + n))) (#) (sin * (AffineMap (m + n),0 ))) + ((1 / (2 * (m - n))) (#) (sin * (AffineMap (m - n),0 )))) `| REAL ) implies ((((1 / (2 * (m + n))) (#) (sin * (AffineMap (m + n),0 ))) + ((1 / (2 * (m - n))) (#) (sin * (AffineMap (m - n),0 )))) `| REAL ) . x = ((cos * (AffineMap m,0 )) (#) (cos * (AffineMap n,0 ))) . x )
assume x in dom ((((1 / (2 * (m + n))) (#) (sin * (AffineMap (m + n),0 ))) + ((1 / (2 * (m - n))) (#) (sin * (AffineMap (m - n),0 )))) `| REAL ) ; :: thesis: ((((1 / (2 * (m + n))) (#) (sin * (AffineMap (m + n),0 ))) + ((1 / (2 * (m - n))) (#) (sin * (AffineMap (m - n),0 )))) `| REAL ) . x = ((cos * (AffineMap m,0 )) (#) (cos * (AffineMap n,0 ))) . x
((((1 / (2 * (m + n))) (#) (sin * (AffineMap (m + n),0 ))) + ((1 / (2 * (m - n))) (#) (sin * (AffineMap (m - n),0 )))) `| REAL ) . x = (cos . (m * x)) * (cos . (n * x)) by A1, Th5
.= (cos . ((AffineMap m,0 ) . x)) * (cos . (n * x)) by A6
.= (cos . ((AffineMap m,0 ) . x)) * (cos . ((AffineMap n,0 ) . x)) by A2
.= ((cos * (AffineMap m,0 )) . x) * (cos . ((AffineMap n,0 ) . x)) by A4, FUNCT_1:22
.= ((cos * (AffineMap m,0 )) . x) * ((cos * (AffineMap n,0 )) . x) by A3, FUNCT_1:22
.= ((cos * (AffineMap m,0 )) (#) (cos * (AffineMap n,0 ))) . x by VALUED_1:5 ;
hence ((((1 / (2 * (m + n))) (#) (sin * (AffineMap (m + n),0 ))) + ((1 / (2 * (m - n))) (#) (sin * (AffineMap (m - n),0 )))) `| REAL ) . x = ((cos * (AffineMap m,0 )) (#) (cos * (AffineMap n,0 ))) . x ; :: thesis: verum
end;
A8: [#] REAL = dom ((cos * (AffineMap m,0 )) (#) (cos * (AffineMap n,0 ))) by FUNCT_2:def 1;
((1 / (2 * (m + n))) (#) (sin * (AffineMap (m + n),0 ))) + ((1 / (2 * (m - n))) (#) (sin * (AffineMap (m - n),0 ))) is_differentiable_on REAL by A1, Th5;
then dom ((((1 / (2 * (m + n))) (#) (sin * (AffineMap (m + n),0 ))) + ((1 / (2 * (m - n))) (#) (sin * (AffineMap (m - n),0 )))) `| REAL ) = dom ((cos * (AffineMap m,0 )) (#) (cos * (AffineMap n,0 ))) by A8, FDIFF_1:def 8;
then A9: (((1 / (2 * (m + n))) (#) (sin * (AffineMap (m + n),0 ))) + ((1 / (2 * (m - n))) (#) (sin * (AffineMap (m - n),0 )))) `| REAL = (cos * (AffineMap m,0 )) (#) (cos * (AffineMap n,0 )) by A7, PARTFUN1:34;
A10: dom (AffineMap n,0 ) = [#] REAL by FUNCT_2:def 1;
( dom (AffineMap m,0 ) = REAL & ( for x being Real st x in REAL holds
(AffineMap m,0 ) . x = (m * x) + 0 ) ) by FUNCT_2:def 1, JORDAN16:def 3;
then (AffineMap m,0 ) | REAL is continuous by A10, FDIFF_1:31, FDIFF_1:33;
then A11: (AffineMap m,0 ) | A is continuous by FCONT_1:17;
cos | ((AffineMap m,0 ) .: A) is continuous ;
then A12: (cos * (AffineMap m,0 )) | A is continuous by A11, FCONT_1:26;
for x being Real st x in REAL holds
(AffineMap n,0 ) . x = (n * x) + 0 by JORDAN16:def 3;
then (AffineMap n,0 ) | REAL is continuous by A10, FDIFF_1:31, FDIFF_1:33;
then A13: (AffineMap n,0 ) | A is continuous by FCONT_1:17;
cos | ((AffineMap n,0 ) .: A) is continuous ;
then A14: (cos * (AffineMap n,0 )) | A is continuous by A13, FCONT_1:26;
then ((cos * (AffineMap m,0 )) (#) (cos * (AffineMap n,0 ))) | A is continuous by A5, A12, FCONT_1:19;
then A15: (cos * (AffineMap m,0 )) (#) (cos * (AffineMap n,0 )) is_integrable_on A by A8, INTEGRA5:11;
((cos * (AffineMap m,0 )) (#) (cos * (AffineMap n,0 ))) | A is bounded by A8, A5, A14, A12, FCONT_1:19, INTEGRA5:10;
hence integral ((cos * (AffineMap m,0 )) (#) (cos * (AffineMap n,0 ))),A = ((((1 / (2 * (m + n))) (#) (sin * (AffineMap (m + n),0 ))) + ((1 / (2 * (m - n))) (#) (sin * (AffineMap (m - n),0 )))) . (upper_bound A)) - ((((1 / (2 * (m + n))) (#) (sin * (AffineMap (m + n),0 ))) + ((1 / (2 * (m - n))) (#) (sin * (AffineMap (m - n),0 )))) . (lower_bound A)) by A1, A15, A9, Th5, INTEGRA5:13; :: thesis: verum