« previous | Friday, September 7, 2012 | next »
We assume
,
, and
eventually positive



Note: For case 3,
must be regular
Matrix Multiplication
Classic algorithm
for
for i from 1 to n do:
for j from 1 to k do:
for t from 1 to m do:
end for
end for
end for
Approx
Divide and Conquer
Divide batrices
and
into four smaller matrices:
- 8 matrix multiplications on submatrices of
and 
scalar additions
Running Time


great, all that work for nothing.
Can we do fewer operations?
Strassen's Matrix
Just calculate 7 products and do a bunch of cheap additions
Integer Multiplication
Elementary school algorithm
Multiplication of 2
-bit numbers takes
.
Kolmogrov (at one of his seminars) conjectured that we can't do better, but Karatsuba proved him wrong a week later.
Dividery and Conquery
Split
and
into two smaller parts: their most significant and least significant parts:
, where
and
are n/2-bit algorithms
, where
and
are n/2-bit algorithms
still 
What if we multiply
? Just correct the terms:
This has only 3 multiplications, so
Summary of Dividery and Conquery
- Split
into two parts
and 
- Split
into two parts
and 
- calculate
,
, and 
- shift each of the results by a certain amount and add all of those together