话题
搜索

斯特拉森公式


通常需要执行的标量操作数(即加法和乘法的总数)n×n 矩阵乘法

 M(n)=2n^3-n^2
(1)

(即。,n ^3个乘法和n^3-n^2添加)。然而,斯特拉森(1969)发现了如何将二者相乘矩阵在里面

 S(n)=7.7^(lgn)-6.4^(lgn)
(2)

标量运算,其中lg(长度)对数至底座2,小于M(n)对于n> 654个.对于n个二的幂(n=2^k),的两部分(2)可以写入

7·7^(lgn)=7·7^(lg2^k)
(3)
=7·7^k
(4)
=7·2^(klg7)
(5)
=7(2^k)^(lg7)
(6)
=7n^(长7)
(7)
6·4^(lgn)=6·4^(lg2^k)
(8)
=6·4^(klg2)
(9)
=6·4^k
(10)
=6(2^k)^2
(11)
=6n^2,
(12)

因此(◇)变为

 S(2^k)=7n^(lg7)-6n^2。
(13)

Strassen算法的主导指数权力因此,2的lg7约2.808.

下表总结了领先指数中已证明极限的改进欧米茄对于米第个《铜匠和温诺格拉德建筑的权力》(1990)2014年,表一)。

米上限参考
12.3871900铜匠和Winograd(1990)
22.3754770Coppersmith和Winograd(1990)
42.3736898斯特罗瑟斯(2010),戴维和斯特罗瑟斯(2013)
42.3729269瓦西列夫斯卡·威廉姆斯(2012)
82.3729瓦西列夫斯卡·威廉姆斯(2014)
82.3728642加尔(2014)
162.3728640勒加尔(2014)
322.3728639勒加尔(2014)

使用Strassen乘法,2×2矩阵可以相乘

 C=AB
(14)
 【c(11)c(12);c(21)c(22)】=【a(11)a(12)
(15)

只有

 S(2)=7·2^(lg7)-6·2^2=49-24=25
(16)

标量运算(事实证明,其中7个是乘法运算,18个是加法运算)。将七种产品(共涉及10种新增产品)定义为

问题_1=(a(11)+a(22))(b(11)+b(22)
(17)
问题2=(a(21)+a(22))b(11)
(18)
问题3=a(11)(b(12)-b(22))
(19)
问题4=a(22)(-b(11)+b(21))
(20)
问题_5=(a(11)+a(12))b(22)
(21)
问题_6=(-a(11)+a(21))(b(11)+b(12))
(22)
问题_7=(a(12)-a(22))(b(21)+b(22)。
(23)

然后使用剩余的八个加法得出矩阵乘积

c(11)=Q_1+Q_4-Q_5+Q_7
(24)
c(21)=Q_2+Q_4
(25)
c(12)=Q_3+Q_5
(26)
c(22)=Q_1+Q_3-Q_2+Q_6
(27)

(斯特拉森1969,出版社等。1989).

矩阵求逆2×2矩阵A类屈服C=A^(-1)也可以用比预期更少的操作完成使用公式

R_1级=(11)^(-1)
(28)
R_2级=a_(21)R_1
(29)
R_3级=R_1a_(12)
(30)
R_4型=a_(21)R_3
(31)
R_5级=R_4-a_(22)
(32)
R_6(_6)=R_5^(-1)
(33)
c(12)=R_3R_6级
(34)
c(21)=R_6R_2
(35)
R_7(_7)=R_3c_(21)
(36)
c(11)=R_1至R_7
(37)
c(22)=-R_6(_6)
(38)

(斯特拉森1969,出版社等。1989).

不幸的是,斯特拉森的算法在数值上表现不佳。它只是弱稳定的,即计算结果C=AB满足不等式

 ||C-AB||<=nu||A||||B||+O(u^2),
(39)

哪里u个是单位舍入误差,而相应的强稳定性不等式(得到用矩阵元素的绝对值替换矩阵范数)不成立。


另请参见

复数乘法,卡拉通巴乘法

与Wolfram一起探索| Alpha

新型网络搜索引擎

更多需要尝试的事情:

工具书类

Coppersmith,D.和Winograd,S.《通过算术编程实现矩阵乘法》J.塞姆。计算。 9, 251-280, 1990.戴维,上午。;和Strothers,A.J。“矩阵复杂性的改进界限乘法。"程序。爱丁堡皇家学会 143A型, 351-370, 2013.道格拉斯,C。;Heroux,M。;斯利什曼,G。;和Smith,R.“GEMMW:便携式3级BLAS斯特拉森矩阵乘法算法的Winograd变量。"J.计算。物理学。 110, 1-10, 1994.Le Gall,F.“张量的幂和快速矩阵乘法。“2014年1月30日。https://arxiv.org/abs/1401.7714.平移,对。怎么加快矩阵乘法。纽约:Springer-Verlag出版社,1982年。按,W.H。;弗兰纳里,B.P。;Teukolsky,美国。;和韦特林。“矩阵反转是N ^3个过程?“§2.11数字的FORTRAN:科学计算的艺术,第二版。英国剑桥:剑桥大学出版社,第95-98页,1989年。斯特拉森,V.“高斯消除不是最佳的。"数值数学 13, 354-356,1969Strothers,A.“关于矩阵乘法的复杂性”博士论文。苏格兰爱丁堡:爱丁堡大学,2010年。瓦西列夫斯卡Williams,V.《矩阵乘法比铜匠-温诺格拉德更快》STOC'12——2012年ACM计算理论研讨会论文集。新建约克:ACM,第887-898页,2012年。Vassilevska Williams,V.“多人游戏中的矩阵O(n ^ 2.373)."2014年7月1日。http://theory.stanford.edu/~virgi/matrixmult-f.pdf.

引用的关于Wolfram | Alpha

Strassen公式

引用如下:

埃里克·魏斯坦(Eric W.Weisstein)。“斯特拉森公式。”发件人数学世界--Wolfram Web资源。https://mathworld.wolfram.com/StrassenFormulas.html

主题分类