Algorithm to beat Strassen’s Algorithm

You don’t really specify what the question is here, but I guess it is to disprove that this trivial algorithm runs faster than Strassen.

Say you divide your matrices into blocks each of dimension (n / k) X (n / k) (in your question, k is 4). Then each matrix will have k2 blocks, and there will be k3 block multiplications (each block in the first matrix will be multiplied by k blocks in the second matrix). Consequently, the complexity recurrence is

T(n) = k3 T(n / k) + Θ(n2).

By case 1 of the Master theorem, this implies

T(n) = Θ(nlogk(k3)) = Θ(n3).

This is the same as ordinary matrix multiplication. It does not beat Strassen, obviously.

Leave a Comment