Exercise 4.2.6

How quickly can you multiply a kn×nkn \times n matrix by an n×knn \times kn matrix, using Strassen's algorithm as a subroutine? Answer the same question with the order of the input matrices reversed.

(kn×n)(n×kn)(kn \times n)(n \times kn) produces a kn×knkn \times kn matrix. This produces k2k^2 multiplications of n×nn \times n matrices.

(n×kn)(kn×n)(n \times kn)(kn \times n) produces an n×nn \times n matrix. This produces kk multiplications and k1k - 1 additions.