= N N matrix multiplication N = 3 matrix N = 3 matrix N = 3 matrix Matrix C a11 a12 a13 b11 b12 b13 = a21 a22 a23 b21 b22 b23 a31 a32 a33 b31 b32 b33 Matrix A Matrix B 1 12 8 -1 23 4
= N N matrix multiplication N = 3 matrix Matrix A Matrix B Matrix C C11 = (a11 b11) + (a12 b21) + (a13 b31)
= N N matrix multiplication N = 3 matrix Matrix A Matrix B Matrix C C11 = (a11 b11) + (a12 b21) + (a13 b31)
= N N matrix multiplication N = 3 matrix Matrix A Matrix B Matrix C C11 = (a11 b11) + (a21 b21) + (a13 b31) C21 = (a21 b11) + (a22 b21) + (a23 b31)
= N = 3 matrix Matrix A Matrix B Matrix C a11 a21 a31 a12 a22 a32 (a11 b11) + (a21 b21) + (a13 b31) C21 = (a21 b11) + (a22 b21) + (a23 b31) C31 = (a31 b11) + (a32 b21) + (a33 b31)
= N = 3 matrix Matrix A Matrix B Matrix C a11 a21 a31 a12 a22 a32 (a11 b11) + (a21 b21) + (a13 b31) C12 = (a11 b12) + (a12 b22) + (a13 b32) C21 = (a21 b11) + (a22 b21) + (a23 b31) C31 = (a31 b11) + (a32 b21) + (a33 b31)
= N = 3 matrix Matrix A Matrix B Matrix C a11 a21 a31 a12 a22 a32 (a11 b11) + (a21 b21) + (a13 b31) C12 = (a11 b12) + (a12 b22) + (a13 b32) C21 = (a21 b11) + (a22 b21) + (a23 b31) C22 = (a21 b12) + (a22 b22) + (a23 b32) C31 = (a31 b11) + (a32 b21) + (a33 b31)
= How many additions and multiplications are needed for completing a N N matrix multiplication? a11 a21 a31 a12 a22 a32 a13 a23 a33 N = 3 matrix b11 b21 b31 b12 b22 b32 b13 b23 b33 Matrix A Matrix B = c11 c21 c31 c12 c22 c32 c13 c23 c33 Matrix C These imply that a N N matrix multiplication is a N3 algorithm (i.e., O(N3) algorithm) C11 = (a11 b11) + (a21 b12) + (a13 b31) C12 = (a11 b12) + (a12 b22) + (a13 b32) C21 = (a21 b11) + (a22 b21) + (a23 b31) C22 = (a21 b12) + (a22 b22) + (a23 b32) C31 = (a31 b11) + (a32 b21) + (a33 b31) (a) N2 N = N3 multiplications C33 = (a31 b13) + (a32 b23) + (a33 b33) (b) N2 (N-1) = N3 – N2 additions
For N = 4 C11 = (a11 × b11) + (a21 × b12) + (a31 × b13) + (a41 × b14) + + C11
Applications and algorithms that use N N matrix multiplications w/ huge data sets Discrete Fourier transform (DFT) - for spectral analysis Spectral analysis is the technical process of decomposing a complex signal into simpler parts. Computer graphics - for image processing Quantum mechanics Graph theory Solving linear equations