The process of mathematically multiplying two matrices by each other.

The process is defined for any pair of matrices such that the width of the first matrix is equal to the height of the second matrix. The process is NOT commutative.

To multiply two matrices, you want a triple-loop. Assume that the first matrix is of dimension m x k and the second matrix is of dimension k x n (rows x columns)

for row = 0 to m
	for column = 0 to n
		Mres[row][column] =
			  M1[row][0] * M2[0][column]
			+ M1[row][1] * M2[1][column]
			+ M1[row][2] * M2[2][column]
			+ ...
			+ M1[row][k] * M2[k][column]