language-icon Old Web
English
Sign In

Strassen algorithm

In linear algebra, the Strassen algorithm, named after Volker Strassen, is an algorithm for matrix multiplication. It is faster than the standard matrix multiplication algorithm and is useful in practice for large matrices, but would be slower than the fastest known algorithms for extremely large matrices. In linear algebra, the Strassen algorithm, named after Volker Strassen, is an algorithm for matrix multiplication. It is faster than the standard matrix multiplication algorithm and is useful in practice for large matrices, but would be slower than the fastest known algorithms for extremely large matrices. Strassen's algorithm works for any ring, such as plus/multiply, but not all semirings, such as min-plus or boolean algebra, where the naive algorithm still works, and so called combinatorial matrix multiplication. Volker Strassen first published this algorithm in 1969 and proved that the n3 general matrix multiplication algorithm wasn't optimal. The Strassen algorithm is only slightly better than that, but its publication resulted in much more research about matrix multiplication that led to faster approaches, such as the Coppersmith-Winograd algorithm. Let A, B be two square matrices over a ring R. We want to calculate the matrix product C as If the matrices A, B are not of type 2n × 2n we fill the missing rows and columns with zeros. We partition A, B and C into equally sized block matrices

[ "Algorithm", "Algebra", "DASS", "Matrix multiplication", "Matrix chain multiplication", "Coppersmith–Winograd algorithm" ]
Parent Topic
Child Topic
    No Parent Topic