Home

Strassens

Strassens refers to Strassen's algorithm, named after Volker Strassen, who introduced it in 1969. It is a fast method for multiplying matrices that reduces the number of required multiplications in a divide-and-conquer approach from eight to seven when multiplying 2x2 blocks, yielding a theoretical speedup for large matrices.

The method works by partitioning each input matrix into four equal-sized blocks and computing seven auxiliary

Complexity and performance considerations: Strassen’s algorithm achieves a time complexity of O(n^log2(7)) ≈ O(n^2.807), improving on the

Impact and context: Strassen’s result marked a breakthrough in computational linear algebra, spurring extensive research into

products,
M1
through
M7,
using
only
additions
and
subtractions
on
these
blocks.
The
results
are
then
combined
through
specific
linear
combinations
to
form
the
four
blocks
of
the
product
matrix.
The
process
can
be
applied
recursively
to
the
submatrices,
continuing
until
the
base
case
of
small
matrices
is
reached.
In
practice,
if
the
matrices
are
not
sized
as
a
power
of
two,
padding
is
used
to
fit
the
division.
standard
O(n^3)
matrix
multiplication
in
theory.
In
practice,
the
algorithm
introduces
more
additions
and
subtractions,
has
higher
memory
usage,
and
can
face
numerical
stability
issues,
so
it
is
not
universally
faster
for
all
sizes
or
hardware
configurations.
Variants
such
as
the
Strassen–Winograd
algorithm
reduce
the
number
of
additions
even
further
and
are
used
in
some
high-performance
implementations.
fast
matrix
multiplication
methods.
While
modern
practical
libraries
often
rely
on
highly
optimized
classical
approaches
for
many
sizes,
Strassen-like
algorithms
remain
relevant
for
very
large
matrices
and
specialized
applications
in
scientific
computing.