let a be Real; :: thesis: for A, B being Matrix of REAL st width A = len B & len A > 0 & len B > 0 & width B > 0 holds
(a * A) * B = a * (A * B)
let A, B be Matrix of REAL ; :: thesis: ( width A = len B & len A > 0 & len B > 0 & width B > 0 implies (a * A) * B = a * (A * B) )
assume A1:
( width A = len B & len A > 0 & len B > 0 & width B > 0 )
; :: thesis: (a * A) * B = a * (A * B)
then A2:
( len (A @ ) = width A & width (A @ ) = len A )
by MATRIX_2:12;
A3:
width (A * B) = width B
by A1, MATRIX_3:def 4;
A4:
len (A * B) = len A
by A1, MATRIX_3:def 4;
A5:
width (a * A) = width A
by Th27;
then A6:
len ((a * A) * B) = len (a * A)
by A1, MATRIX_3:def 4;
A7:
width ((a * A) * B) = width B
by A1, A5, MATRIX_3:def 4;
A8:
len (a * A) = len A
by Th27;
A9: len (a * (A * B)) =
len (A * B)
by Th27
.=
len A
by A1, MATRIX_3:def 4
;
A10: width (a * (A * B)) =
width (A * B)
by Th27
.=
width B
by A1, MATRIX_3:def 4
;
( len (B @ ) = width B & width (B @ ) = len B )
by A1, MATRIX_2:12;
then
(B @ ) * (a * (A @ )) = a * ((B @ ) * (A @ ))
by A1, A2, Th40;
then
(B @ ) * (a * (A @ )) = a * ((A * B) @ )
by A1, MATRIX_3:24;
then
(B @ ) * (a * (A @ )) = (a * (A * B)) @
by A1, A3, A4, Th30;
then
(B @ ) * ((a * A) @ ) = (a * (A * B)) @
by A1, Th30;
then
((a * A) * B) @ = (a * (A * B)) @
by A1, A5, MATRIX_3:24;
then
(a * A) * B = ((a * (A * B)) @ ) @
by A1, A6, A7, A8, MATRIX_2:15;
hence
(a * A) * B = a * (A * B)
by A1, A9, A10, MATRIX_2:15; :: thesis: verum