Násobení matic - Matrix multiplication

v matematika, zejména v lineární algebra, násobení matic je binární operace který produkuje a matice ze dvou matic. Pro násobení matic musí být počet sloupců v první matici stejný jako počet řádků v druhé matici. Výsledná matice, známá jako maticový produkt, má počet řádků první a počet sloupců druhé matice. Produkt matic a je pak označen jednoduše jako .[1][2]
Násobení matic poprvé popsal francouzský matematik Jacques Philippe Marie Binet v roce 1812,[3] zastupovat složení z lineární mapy které jsou reprezentovány maticemi. Maticové násobení je tedy základním nástrojem lineární algebra, a jako takový má četné aplikace v mnoha oblastech matematiky, stejně jako v aplikovaná matematika, statistika, fyzika, ekonomika, a inženýrství.[4][5]Výpočet maticových produktů je ústřední operací ve všech výpočetních aplikacích lineární algebry.
Zápis
Tento článek bude používat následující notační konvence: matice jsou reprezentovány velkými písmeny tučně, např. A; vektory tučným písmem, např. A; a vstupy vektorů a matic jsou kurzívou (protože jde o čísla z pole), např. A a A. Indexová notace je často nejjasnějším způsobem vyjádření definic a v literatuře se používá jako standardní. The já, j vstup matice A je označen (A)ij, Aij nebo Aij, zatímco číselný štítek (nikoli maticové položky) na kolekci matic je pouze indexován, např. A1, A2, atd.
Definice
Li A je m × n matice a B je n × p matice,
the maticový produkt C = AB (označeno bez znaků nebo teček násobení) je definován jako m × p matice[6][7][8][9]
takhle
pro i = 1, ..., m a j = 1, ..., p.
To je záznam produktu se získá vynásobením jednotlivých položek položky itř. řada A a jth sloupec Ba jejich shrnutí n produkty. Jinými slovy, je Tečkovaný produkt z itř. řada A a jth sloupec B.[1]
Proto, AB lze také napsat jako
Tedy produkt AB je definován právě tehdy, pokud je počet sloupců v A se rovná počtu řádků v B,[2] v tomto případě n.
Ve většině scénářů jsou položkami čísla, ale mohou být jakéhokoli druhu matematické objekty pro které jsou definovány sčítání a násobení asociativní a takový, že doplněk je komutativní a násobení je distribuční s ohledem na doplnění. Zejména mohou být položkami samotné matice (viz bloková matice ).
Ilustrace

Obrázek vpravo ilustruje schematicky součin dvou matic A a B, ukazující, jak každý průsečík v matici produktu odpovídá řadě A a sloupec B.
Hodnoty na křižovatkách označených kruhy jsou:
Základní aplikace
Historicky bylo pro usnadnění a objasnění výpočtů v systému zavedeno násobení matic lineární algebra. Tento silný vztah mezi násobením matic a lineární algebrou zůstává zásadní ve všech matematikách i v angličtině fyzika, inženýrství a počítačová věda.
Lineární mapy
Pokud vektorový prostor má konečnou základ, jeho vektory jsou každý jedinečně reprezentován konečnou sekvence skalárů, nazývaných a vektor souřadnic, jehož prvky jsou souřadnice vektoru na základě. Tyto souřadnicové vektory tvoří další vektorový prostor, který je izomorfní do původního vektorového prostoru. Vektor souřadnic je obvykle organizován jako sloupcová matice (také zvaný vektor sloupce), což je matice pouze s jedním sloupcem. Vektor sloupce tedy představuje vektor souřadnic i vektor původního vektorového prostoru.
A lineární mapa A z vektorového prostoru dimenze n do vektorového prostoru dimenze m mapuje vektor sloupce
na vektor sloupce
Lineární mapa A je tedy definována maticí
a mapuje vektor sloupce k maticovému produktu
Li B je další lineární mapa z předchozího vektorového prostoru dimenze m, do vektorového prostoru dimenze p, je reprezentován a matice Přímý výpočet ukazuje, že matice složená mapa je maticový produkt Obecný vzorec ), který definuje funkční složení, je zde instanován jako specifický případ asociativity maticového produktu (viz § Asociativita níže):
Systém lineárních rovnic
Obecná forma a soustava lineárních rovnic je
Použitím stejné notace jako výše je takový systém ekvivalentní jediné matici rovnice
Tečkovaný produkt, bilineární forma a vnitřní produkt
The Tečkovaný produkt dvou sloupcových vektorů je maticový produkt
kde je řádek vektor získané provedení a výsledná matice 1 × 1 je identifikována svým jedinečným záznamem.
Obecněji libovolné bilineární forma přes vektorový prostor konečné dimenze lze vyjádřit jako maticový produkt
a jakékoli vnitřní produkt lze vyjádřit jako
kde označuje konjugovat transponovat z (konjugát transpozice nebo ekvivalentní transpozice konjugátu).
Obecné vlastnosti
Maticové násobení sdílí některé vlastnosti s obvyklými násobení. Násobení matic však není definováno, pokud se počet sloupců prvního faktoru liší od počtu řádků druhého faktoru a je nekomutativní,[10] i když po změně pořadí faktorů zůstává produkt definitivní.[11][12]
Nekomutativita
Operace je komutativní pokud, vzhledem k tomu, dva prvky A a B takový, že výrobek je tedy definován je také definován a
Li A a B jsou matice příslušných velikostí a , pak je definováno, pokud , a je definováno, pokud . Pokud je tedy definován jeden z produktů, druhý není obecně definován. Li , tyto dva produkty jsou definovány, ale mají různé velikosti; nemohou si tedy být rovni. Jen když , tedy pokud A a B jsou čtvercové matice stejné velikosti, jsou oba definované produkty a stejné velikosti. I v tomto případě platí obecně
Například
ale
Tento příklad lze rozšířit, aby se ukázalo, že pokud A je matice se záznamy v a pole F, pak pro každého matice B se záznamy v F, kdyby a jen kdyby kde , a Já je matice identity. Pokud namísto pole mají položky patřit a prsten, pak je třeba přidat podmínku, že C patří do centrum prstenu.
Jedním zvláštním případem, kdy komutativita nastane, je situace, kdy D a E jsou dva (čtverec) diagonální matice (stejné velikosti); pak DE = ED.[10] Opět platí, že pokud jsou matice nad obecným prstencem spíše než nad polem, musí odpovídající záznamy v každé z nich také vzájemně dojíždět, aby to drželo.
Distribuce
Maticový produkt je distribuční s ohledem na přidání matice. To je, pokud A, B, C, D jsou matice příslušných velikostí m × n, n × p, n × p, a p × q, jeden má (levá distribuce)
a (správná distribuce)
To vyplývá z rozdělování koeficientů o
Produkt se skalárem
Li A je matice a C skalární, pak matice a jsou získány levým nebo pravým násobením všech záznamů A podle C. Pokud skaláry mají komutativní vlastnost, pak
Pokud produkt je definován (tj. počet sloupců A se rovná počtu řádků B), pak
- a
Pokud mají skaláry komutativní vlastnost, pak jsou všechny čtyři matice stejné. Obecněji jsou všechny čtyři stejné, pokud C patří do centrum a prsten obsahující položky matic, protože v tomto případě CX = XC pro všechny matice X.
Tyto vlastnosti vyplývají z bilinearita produktu skaláru:
Přemístit
Pokud skaláry mají komutativní vlastnost, přemístit součinu matic je součin převrácených činitelů v opačném pořadí. To je
kde T označuje transpozici, tj. výměnu řádků a sloupců.
Tato identita neplatí pro nekomutativní položky, protože pořadí mezi položkami A a B je obrácen, když jeden rozšíří definici maticového produktu.
Složitý konjugát
Li A a B mít komplex položky
kde * označuje vstup komplexní konjugát matice.
To vyplývá z aplikace na definici maticového součinu skutečnost, že konjugát součtu je součtem konjugátů sčítanců a konjugát součinu je součinem konjugátů faktorů.
Transpozice působí na indexy položek, zatímco konjugace působí nezávisle na samotné položky. Výsledkem je, že pokud A a B mít složité záznamy, jeden má
kde † označuje konjugovat transponovat (konjugát transpozice nebo ekvivalentní transpozice konjugátu).
Asociativita
Vzhledem k tomu, tři matice A, B a C, produkty (AB)C a A(před naším letopočtem) jsou definovány právě tehdy, pokud počet sloupců A se rovná počtu řádků Ba počet sloupců B se rovná počtu řádků C (zejména pokud je definován jeden z produktů, je definován také druhý). V tomto případě má jeden asociativní majetek
Pokud jde o jakoukoli asociativní operaci, umožňuje to vynechat závorky a zapsat výše uvedené produkty jako
To se přirozeně vztahuje na produkt libovolného počtu matic za předpokladu, že se rozměry shodují. To je, pokud A1, A2, ..., An jsou matice takové, že počet sloupců Ai se rovná počtu řádků Ai + 1 pro i = 1, ..., n – 1, pak produkt
je definován a nezávisí na pořadí násobení, pokud je pořadí matic udržováno pevné.
Tyto vlastnosti lze prokázat přímými, ale komplikovanými součet manipulace. Tento výsledek vyplývá také ze skutečnosti, kterou představují matice lineární mapy. Proto je asociativní vlastnost matic jednoduše specifickým případem asociativní vlastnosti složení funkce.
Složitost není asociativní
Ačkoli výsledek posloupnosti maticových produktů nezávisí na pořadí provozu (za předpokladu, že se pořadí matic nezmění), výpočetní složitost může na této objednávce dramaticky záviset.
Například pokud A, B a C jsou matice příslušných velikostí 10×30, 30×5, 5×60, výpočetní (AB)C potřeby 10×30×5 + 10×5×60 = 4,500 násobení při práci na počítači A(před naším letopočtem) potřeby 30×5×60 + 10×30×60 = 27,000 násobení.
Algoritmy byly navrženy pro výběr nejlepšího pořadí produktů, viz Násobení maticového řetězce. Když číslo n matic se zvyšuje, ukázalo se, že výběr nejlepšího řádu má složitost
Aplikace na podobnost
Žádný invertibilní matice definuje a transformace podobnosti (na čtvercových maticích stejné velikosti jako )
Transformace podobnosti mapují produkt na produkty
Ve skutečnosti jeden má
Čtvercové matice
Označme to soubor n×n čtvercové matice se záznamy v a prsten R, což je v praxi často a pole.
v , produkt je definován pro každou dvojici matic. To dělá A prsten, který má matice identity Já tak jako prvek identity (matice, jejíž diagonální položky jsou rovny 1 a všechny ostatní položky jsou 0). Tento prsten je také asociativní R-algebra.
Li n > 1, mnoho matic nemá a multiplikativní inverzní. Například matice tak, že všechny položky řádku (nebo sloupce) jsou 0, nemá inverzní. Pokud existuje, inverzní k matici A je označen A−1, a tedy ověří
Matice, která má inverzní funkci, je invertibilní matice. Jinak je to singulární matice.
Produkt matic je invertibilní právě tehdy, když je každý faktor invertovatelný. V tomto případě jeden má
Když R je komutativní, a zejména, pokud se jedná o pole, určující produktu je produktem determinantů. Protože determinanty jsou skaláry a skaláry dojíždějí, jeden tak má
Druhá matice invarianty nechovejte se stejně dobře s produkty. Nicméně, pokud R je komutativní a mít stejné stopa, stejný charakteristický polynom a totéž vlastní čísla se stejnými multiplicitami. Vlastní vektory se však obecně liší, pokud
Síly matice
Jeden může zvýšit čtvercovou matici na libovolnou nezáporný celočíselný výkon vynásobí to samo o sobě opakovaně stejným způsobem jako u běžných čísel. To znamená
Výpočet kta síla matice potřebuje k – 1 krát čas násobení jedné matice, pokud je to provedeno triviálním algoritmem (opakované násobení). Jelikož to může být velmi časově náročné, obecně se dává přednost použití umocňování druhou mocninou, což vyžaduje méně než 2 log2 k násobení matic, a je tedy mnohem efektivnější.
Snadný případ pro umocňování je a diagonální matice. Vzhledem k tomu, že součin diagonálních matic představuje jednoduché násobení odpovídajících diagonálních prvků dohromady, kta síla diagonální matice se získá zvýšením záznamů na mocninu k:
Abstraktní algebra
Definice maticového produktu vyžaduje, aby položky patřily semirování, a nevyžaduje násobení prvků semirování komutativní. V mnoha aplikacích patří prvky matice do pole, i když tropický semiring je také běžnou volbou pro graf nejkratší cesta problémy.[13] I v případě matic nad poli není produkt obecně komutativní, ačkoli je asociativní a je distribuční přes přidání matice. The matice identity (což jsou čtvercové matice jejichž položky jsou mimo hlavní úhlopříčku nulové a 1 na hlavní úhlopříčce) jsou prvky identity matricového produktu. Z toho vyplývá, že n × n matice nad a prsten tvoří prsten, který je nekomutativní kromě případů, kdy n = 1 a zemnící kruh je komutativní.
Čtvercová matice může mít a multiplikativní inverzní, nazvaný an inverzní matice. V běžném případě, kdy položky patří a komutativní prsten r, matice má inverzní právě tehdy, když je určující má multiplikativní inverzní v r. Determinant součinu čtvercových matic je součinem determinantů faktorů. The n × n matice, které mají inverzní tvar a skupina v rámci násobení matic je podskupiny z nichž jsou voláni maticové skupiny. Mnoho klasických skupin (včetně všech konečné skupiny ) jsou izomorfní do skupin matic; toto je výchozí bod teorie skupinové reprezentace.
Výpočetní složitost

Násobení matice algoritmus že výsledky definice vyžadují v nejhorší případ, množení skalárů a doplňky pro výpočet součinu dvou čtverců n×n matice. Své výpočetní složitost je tedy , v model výpočtu pro které skalární operace vyžadují konstantní čas (v praxi to platí pro plovoucí bod čísla, ale ne pro celá čísla).
Tato složitost není překvapivě optimální, jak ukazuje v roce 1969 Volker Strassen, který poskytl algoritmus, nyní volal Strassenův algoritmus, se složitostí [14] Exponent vyskytující se ve složitosti násobení matic byl několikrát vylepšen,[15][16][17][18][19][20] vedoucí k Coppersmith – Winogradův algoritmus se složitostí Ó(n2.3755) (1990).[21][22] Tento algoritmus byl v roce 2010 společností Stothers mírně vylepšen na složitost Ó(n2.3737),[23] v roce 2013 Virginia Vassilevska Williams na Ó(n2.3729),[22] a v roce 2014 François Le Gall Ó(n2.3728639).[24] To v roce 2020 dále vylepšili Josh Alman a Virginia Vassilevska Williamsová na konečnou (aktuální) složitost Ó(n2.3728596).[25]
The největší dolní mez protože exponent maticového multiplikačního algoritmu se obecně nazývá . Jeden má , protože člověk si musí přečíst prvky matice pro její vynásobení jinou maticí. Tím pádem . Není známo, zda . Největší známá dolní mez pro složitost násobení matic je Ω (n2 log (n)), pro omezený druh aritmetické obvody, a je kvůli Ran Raz.[26]
Související složitosti
Důležitost výpočetní složitosti násobení matic závisí na faktech, že mnoho algoritmických problémů lze vyřešit pomocí maticového výpočtu a většina problémů matic má složitost, která je buď stejná jako složitost maticového násobení (až do multiplikativní konstanty) ), nebo mohou být vyjádřeny z hlediska složitosti násobení matic nebo jejího exponenta
Existuje několik výhod vyjádření složitosti z hlediska exponentu násobení matic. Za prvé, pokud je vylepšeno, automaticky se zlepší známá horní hranice složitosti mnoha algoritmů. Zadruhé, v praktických implementacích člověk nikdy nepoužívá algoritmus násobení matic, který má nejlepší asymptotickou složitost, protože konstanta skrytá za velká O notace je příliš velký na to, aby byl algoritmus konkurenceschopný pro velikosti matic, s nimiž lze manipulovat v počítači.[Citace je zapotřebí ] Tedy vyjadřující složitost z hlediska poskytují realističtější složitost, protože zůstává platný podle toho, jaký algoritmus je pro maticový výpočet zvolen.
Mezi problémy patří stejná asymptotická složitost jako při násobení matic určující, inverze matice, Gaussova eliminace (viz další část). Problémy se složitostí, která je vyjádřitelná z hlediska zahrnout charakteristický polynom, vlastní čísla (ale ne vlastní vektory), Poustevník normální forma, a Smith normální forma.[Citace je zapotřebí ]
Maticová inverze, determinant a Gaussova eliminace
Ve své práci z roku 1969, kde dokázal složitost pro maticový výpočet to Strassen také dokázal inverze matice, určující a Gaussova eliminace mít, až do multiplikativní konstanty, totéž výpočetní složitost jako násobení matice. Důkaz nevytváří žádné předpoklady o násobení matic, které se používá, kromě toho, že je jeho složitost pro některé
Výchozím bodem Strassenova důkazu je použití bloková matice násobení. Konkrétně matice sudých rozměrů 2n×2n lze rozdělit na čtyři n×n bloky
Podle této formy je jeho inverzní
pokud A a jsou invertibilní.
Tedy inverzní funkce a 2n×2n matice může být počítána se dvěma inverzemi, šesti multiplikacemi a čtyřmi sčítáními nebo aditivními inverzemi n×n matice. Z toho vyplývá, že označujeme příslušně Já(n), M(n) a A(n) = n2 počet operací potřebných pro invertování, násobení a přidávání n×n matice, jedna má
Li jeden může použít tento vzorec rekurzivně:
Li a jeden nakonec dostane
pro nějakou konstantu d.
U matic, jejichž dimenze není mocninou dvou, je stejné složitosti dosaženo zvětšením dimenze matice na mocninu dvou, vyplněním matice řádky a sloupci, jejichž položky jsou 1 na úhlopříčce a 0 jinde.
To dokazuje tvrdenou složitost matic, takže všechny submatice, které je třeba převrátit, jsou skutečně invertibilní. Tato složitost je tak prokázána téměř pro všechny matice, protože matice s náhodně vybranými položkami je invertibilní s pravděpodobností jedna.
Stejný argument platí pro LU rozklad, jako, pokud je matice A je invertibilní, rovnost
definuje blokový rozklad LU, na který lze rekurzivně aplikovat a pro získání nakonec skutečného LU rozkladu původní matice.
Argument platí také pro determinant, protože to vyplývá z blokového rozkladu LU
Viz také
- Maticový počet, pro interakci násobení matic s operacemi z počtu
- Další typy produktů matric:
- Násobení blokové matice
- Krakovský produkt, definováno jako A ∧ B = BTA
- Vnitřní produkt Frobenius, Tečkovaný produkt matic považovaných za vektory nebo ekvivalentně součtu položek Hadamardova produktu
- Produkt Hadamard dvou matic stejné velikosti, což má za následek matici stejné velikosti, která je produktem položka po položce
- Produkt Kronecker nebo tenzorový produkt, zobecnění na jakoukoli velikost předchozího
- Produkt Khatri-Rao a Produkt rozdělující obličej
- Vnější produkt, také zvaný dyadický produkt nebo tenzorový produkt dvou sloupcových matic, což je
- Skalární násobení
Poznámky
- ^ A b „Úplný seznam symbolů algebry“. Matematický trezor. 2020-03-25. Citováno 2020-09-06.
- ^ A b Nykamp, Duane. "Násobení matic a vektorů". Matematický přehled. Citováno 6. září 2020.
- ^ O'Connor, John J.; Robertson, Edmund F., „Jacques Philippe Marie Binet“, MacTutor Historie archivu matematiky, University of St Andrews.
- ^ Lerner, R. G .; Trigg, G.L. (1991). Encyklopedie fyziky (2. vyd.). Vydavatelé VHC. ISBN 978-3-527-26954-9.
- ^ Parker, C. B. (1994). McGraw Hill Encyclopaedia of Physics (2. vyd.). ISBN 978-0-07-051400-3.
- ^ Lipschutz, S .; Lipson, M. (2009). Lineární algebra. Schaum's Outlines (4. vyd.). McGraw Hill (USA). 30–31. ISBN 978-0-07-154352-1.
- ^ Riley, K. F .; Hobson, M. P .; Bence, S. J. (2010). Matematické metody pro fyziku a inženýrství. Cambridge University Press. ISBN 978-0-521-86153-3.
- ^ Adams, R. A. (1995). Calculus, A Complete Course (3. vyd.). Addison Wesley. str. 627. ISBN 0-201-82823-5.
- ^ Horn, Johnson (2013). Maticová analýza (2. vyd.). Cambridge University Press. str. 6. ISBN 978-0-521-54823-6.
- ^ A b C Weisstein, Eric W. "Maticové násobení". mathworld.wolfram.com. Citováno 2020-09-06.
- ^ Lipcshutz, S .; Lipson, M. (2009). „2“. Lineární algebra. Schaum's Outlines (4. vyd.). McGraw Hill (USA). ISBN 978-0-07-154352-1.
- ^ Horn, Johnson (2013). "0". Maticová analýza (2. vyd.). Cambridge University Press. ISBN 978-0-521-54823-6.
- ^ Motwani, Rajeev; Raghavan, Prabhakar (1995). Randomizované algoritmy. Cambridge University Press. str. 280. ISBN 9780521474658.
- ^ Volker Strassen (srpen 1969). „Gaussova eliminace není optimální“. Numerische Mathematik. 13 (4): 354–356. doi:10.1007 / BF02165411. S2CID 121656251.
- ^ V. Ya Pan (1978). „Strassenův algoritmus není optimální trilineární technikou agregace, sjednocení a zrušení pro konstrukci rychlých algoritmů pro maticové operace“. Proc. 19. FOCS. 166–176. doi:10.1109 / SFCS.1978.34. S2CID 14348408.
- ^ Dario Andrea Bini; Milvio Capovani; Francesco Romani; Grazia Lotti (červen 1979). " složitost pro přibližné násobení matice ". Dopisy o zpracování informací. 8 (5): 234–235. doi:10.1016/0020-0190(79)90113-3.
- ^ A. Schönhage (1981). "Částečné a celkové násobení matice". SIAM Journal on Computing. 10 (3): 434–455. doi:10.1137/0210032.
- ^ Francesco Romani (1982). "Některé vlastnosti nesouvislých součtů tenzorů souvisejících s násobením matic". SIAM Journal on Computing. 11 (2): 263–267. doi:10.1137/0211020.
- ^ D. Coppersmith a S. Winograd (1981). Msgstr "O asymptotické složitosti násobení matic". Proc. 22. výroční sympozium o základech informatiky (SFCS). 82–90. doi:10.1109 / SFCS.1981.27. S2CID 206558664.
- ^ Volker Strassen (říjen 1986). "Asymptotické spektrum tenzorů a exponent násobení matic". Proc. 27. Ann. Symp. o založení výpočetní techniky (FOCS). str. 49–54. doi:10.1109 / SFCS.1986.52. S2CID 15077423.
- ^ D. Coppersmith a S. Winograd (březen 1990). "Násobení matic pomocí aritmetických průběhů". J. Symbolický výpočet. 9 (3): 251–280. doi:10.1016 / S0747-7171 (08) 80013-2.
- ^ A b Williams, Virginia Vassilevska. Násobení matic v čas (PDF) (Technická zpráva). Stanfordská Univerzita.
- ^ Stothers, Andrew James (2010). O složitosti násobení matic (Disertační práce). University of Edinburgh.
- ^ Le Gall, François (2014), „Powers of tensors and fast matrix multiplication“, Sborník 39. mezinárodního sympozia o symbolických a algebraických výpočtech (ISSAC 2014), arXiv:1401.7714, Bibcode:2014arXiv1401.7714L
- ^ Alman, Josh; Williams, Virginia Vassilevska (2020), „Rafinovaná laserová metoda a rychlejší násobení matic“, 32. výroční sympozium ACM-SIAM o diskrétních algoritmech (SODA 2021), arXiv:2010.05846
- ^ Raz, Ran (leden 2003). "O složitosti produktu Matrix". SIAM Journal on Computing. 32 (5): 1356–1369. doi:10.1137 / s0097539702402147. ISSN 0097-5397.
Reference
- Henry Cohn, Robert Kleinberg, Balázs Szegedy a Chris Umans. Skupinové teoretické algoritmy pro násobení matic. arXiv:matematika.GR/0511460. Sborník 46. výročního sympozia o základech informatiky„23. – 25. Října 2005, Pittsburgh, PA, IEEE Computer Society, s. 379–388.
- Henry Cohn, Chris Umans. Skupinový teoretický přístup k rychlému násobení matic. arXiv:matematika.GR/0307321. Proceedings of the 44th Annual IEEE Symposium on Foundations of Computer Science„11. – 14. Října 2003, Cambridge, MA, IEEE Computer Society, s. 438–449.
- Coppersmith, D .; Winograd, S. (1990). Msgstr "Násobení matic pomocí aritmetických průběhů". J. Symbolický výpočet. 9 (3): 251–280. doi:10.1016 / s0747-7171 (08) 80013-2.
- Horn, Roger A .; Johnson, Charles R. (1991), Témata maticové analýzy, Cambridge University Press, ISBN 978-0-521-46713-1
- Knuth, D.E., Umění počítačového programování Svazek 2: Seminumerické algoritmy. Addison-Wesley Professional; 3. vydání (14. listopadu 1997). ISBN 978-0-201-89684-8. 501.
- Press, William H .; Flannery, Brian P .; Teukolsky, Saul A.; Vetterling, William T. (2007), Numerické recepty: Umění vědecké práce na počítači (3. vyd.), Cambridge University Press, ISBN 978-0-521-88068-8.
- Ran Raz. O složitosti maticového produktu. Ve sborníku z třicátého čtvrtého ročníku ACM symposia o teorii práce s počítačem. ACM Press, 2002. doi:10.1145/509907.509932.
- Robinson, Sara, Směrem k optimálnímu algoritmu pro násobení matic, SIAM News 38 (9), listopad 2005. PDF
- Strassen, Volker, Gaussova eliminace není optimální, Numer. Matematika. 13, s. 354-356, 1969.
- Styan, George P. H. (1973), „Hadamardovy produkty a vícerozměrná statistická analýza“ (PDF), Lineární algebra a její aplikace, 6: 217–240, doi:10.1016/0024-3795(73)90023-2
- Williams, Virginia Vassilevska (2012-05-19). "Násobení matic rychleji než coppersmith-winograd". Sborník 44. sympozia o teorii práce na počítači - STOC '12. ACM. 887–898. CiteSeerX 10.1.1.297.2680. doi:10.1145/2213977.2214056. ISBN 9781450312455. S2CID 14350287.