Matrix multiplication is one of the fundamental operations of matrices.

Some ground rules:

  • Matrix multiplication is not commutative, i.e., .
  • With respect to matrix addition, multiplication is (left or right) distributive: .
  • For an matrix and a matrix , the resulting matrix is .

Note that the product between two matrices isn’t a matrix of elementwise products. This is called the Hadamard product, and is instead denoted .

Algorithms

When computing by hand, we usually use a primitive algorithm, where the average case time complexity is . This is defined by:

See Strassen’s algorithm

Powers

We are occasionally faced with needing to take multiple successive multiplications of the same matrix, i.e., we take it to some power. There are a few broad approaches we can use.

One approach is to use diagonalisation to break the matrix down into a simpler to evaluate form. By theorem, for a matrix , if it is diagonalisable, we can represent as:

where the columns of consist of ‘s eigenvectors and the diagonal of the corresponding eigenvalues. Since is purely diagonal, we just evaluate scalars to the power of and matrix multiply and .

Sylvester’s theorem (which shows up sometimes in optics problems) is useful for multiplying matrices, if . It states that:

This is provably correct with induction.