Overview
Strassen's Algorithm splits matrices into blocks and combines seven carefully chosen block products to reduce multiplication work below the classical cubic method.
Multiplies matrices by replacing eight block multiplications with seven recursive products.
Compact metadata for implementation and discovery.
Strassen's Algorithm splits matrices into blocks and combines seven carefully chosen block products to reduce multiplication work below the classical cubic method.
Quick facts
Runtime and memory behavior at a glance.
Best
O(n^2)
Average
O(n^3)
Worst
O(n^3)
Space
O(n^2)
T(n) = 7*T(n/2) + O(n^2)Uses seven recursive block products instead of eight.
Show reducing two-by-two block multiplication to seven recursive products on a small matrix multiplication example.
Strassen Algorithm operates in O(n^3) time and O(n^2) space within the Matrix Multiplication family. Key governing relation: T(n) = 7*T(n/2) + O(n^2). Often compared with Blocked Matrix Multiplication and Winograd Matrix Multiplication.
What each reference supports for this entry.
Reference for Strassen Algorithm's arithmetic operations, modular arithmetic, multiplication, division, or number-theoretic implementation details.
Open sourceTextbook support for Strassen Algorithm's algorithm family, complexity framing, and standard implementation concepts.
Open sourceOriginal reference for reducing matrix multiplication below the classical cubic operation count.
Open sourceGood next jumps from the relationship graph, ranked for useful discovery.
Numerical Methods · Core
Both address matrix multiplication, but they make different modeling or performance tradeoffs.
Compare with thisBoth address matrix multiplication, but they make different modeling or performance tradeoffs.
Both address matrix multiplication, but they make different modeling or performance tradeoffs.
Both address matrix multiplication, but they make different modeling or performance tradeoffs.