3

I have been reading about the Strassen Algorithm for matrix multiplication.

As mentioned in Introduction to Algorithms by Cormen , the algorithm is not intuitive. However I am curious to know if there exists any rigorous mathematical proof of the algorithm and what actually went into the design of the algorithm.

I tried searching on Google and stackoverflow, but all links are only on comparing Strassen's approach to standard matrix multiplication approach or they elaborate on the procedure presented by the algorithm.

Dref D
  • 257
  • 2
  • 17
  • This question is a little unclear. Is there a rigorous mathematical proof? Of course! Look into Strassen's papers or later survey papers. What went into the design of the algorithm? You'd have to ask Strassen. If you are actually asking for a 'high-level' overview of the algorithm, i.e. something that lets you understand the structure and the idea behind it without bothering with details, you may find better answers on math.SE or cs.SE. – us2012 Oct 07 '13 at 16:10
  • http://link.springer.com/article/10.1007%2FBF02165411?LI=true#page-1 is a source i found , though it does not contain a proof of any sort. Please share some link if you know of any – Dref D Oct 07 '13 at 16:17
  • 2
    You might want to ask this at http://cs.stackexchange.com/ or http://math.stackexchange.com/ - Stack Overflow is for programming questions! – Shashank Oct 07 '13 at 16:25
  • For this question on CS StackExchange see http://cs.stackexchange.com/questions/14907/strassens-algorithm-proof – pcworld Feb 23 '15 at 18:10

2 Answers2

1

You should go to the source material. In this case, the original paper by Strassen:

Strassen, Volker, Gaussian Elimination is not Optimal, Numer. Math. 13, p. 354-356, 1969

http://link.springer.com/article/10.1007%2FBF02165411?LI=true

Even though I haven't read it myself, I would assume that there is a rigorous discussion and proof of the complexity of the algorithm.

It looks like Professor Strassen is still active (http://en.wikipedia.org/wiki/Volker_Strassen) and has a home page (http://www.math.uni-konstanz.de/~strassen/). If, after learning as much as you can about the algorithm, you are still interested in learning more, I don't think a carefully worded email to the professor would be out of the question.

Unfortunately, there does not seem to be a free version of the paper available online despite the fact that the work was completed at a public university (UC Berkeley) using federal funds (NSF grant), but that is a completely separate issue we shouldn't discuss here.

If you are a student, you will likely have access via your school, or at least your school could get you a copy without cost to you. Good luck.

Joey
  • 464
  • 2
  • 9
0

The proof that Strassen's algorithm should exist is a simple dimension count (combined with a proof that the naive dimension count gives the correct answer). Consider the vector space of all bilinear map $C^n\times C^n \rightarrow C^n$, this is a vector space of dimension $n^3$ (in the case of matrix multiplication, we have $n=m^2$, e.g. $n=4$ for the $2\times 2$ case). The set of bilinear maps of rank one, i.e., those computable in an algorithm using just one scalar multiplication, has dimension $3(n-1)+1$ and the set of bilinear maps of rank at most $r$ has dimension the min of $r[3(n-1)]+r$ and $n^3$ for most values of $n,r$ (and one can check that this is correct when $r=7,n=4$. Thus any bilinear map $C^4\times C^4\rightarrow C^4$, with probability one has rank at most $7$, and may always be approximated to arbitrary precision by a bilinear map of rank at most $7$.

BartoszKP
  • 34,786
  • 15
  • 102
  • 130
user2886619
  • 101
  • 2