Lineární algebra : Násobení matic a inverzní matice (8. přednáška) František Štampach, Karel Klouda LS 2013/2014 vytvořeno: 17. března 2014, 12:42 1
2 0.1 Násobení matic Definice 1. Buďte m, n, p N, A T m,n a B T n,p. Matici C T m,p definovanou ( ) n ( i ˆm)( j ˆp) C ij = A ik B kj k=1 nazýváme součinem matic A a B a značíme C = AB. Poznámka 2. Součin AB máme definován pouze tehdy, je-li počet sloupců matice A roven počtu řádků matice B. Výsledná matice AB má tolik řádků, jako matice A a tolik sloupců, jako matice B. ná- mezi Definice sobení maticemi Příklady 4 1 2 3 5 = (1 4 + 2 5 + 3 6) 6 1 4 5 6 2 4 5 6 = 8 10 12 3 12 15 18 1 1 1 1 2 2 = 1 1 1 1 2 2 1 1 1 1 = 1 1 1 1 Pozorujeme: Násobení matic není komutativní! 0 0 0 0 Neplatí implikace: AB = Θ = (A = Θ B = Θ). Co tedy platí?... Vlastnosti maticového
3 Věta 3. V následujících tvrzeních jsou rozměry matic A, B a C vždy takové, aby obsažené výrazy měly smysl. Platí: 1. A(BC) = (AB)C (asociativní zákon) 2. A(B + C) = AB + AC (distributivní zákon) 3. (A + B)C = AC + BC (distributivní zákon) 4. α(ab) = (αa)b = A(αB) 5. (AB) T = B T A T Důkaz: tabule/cvičení Blokové Uvažujme dvě matice sestavené po blocích takto: A1,1 A A = 1,2 B1,1 B, B = 1,2. A 2,1 A 2,2 B 2,1 B 2,2 Nechť jednotlivé bloky jsou takového typu, že A i,j B j,k je definováno pro všechna i, j, k ˆ2. Potom platí A1,1 B AB = 1,1 + A 1,2 B 2,1 A 1,1 B 1,2 + A 1,2 B 2,2. A 2,1 B 1,1 + A 2,2 B 2,1 A 2,1 B 1,2 + A 2,2 B 2,2 (Ověřte!) Analogický výsledek platí i pro jinak vytvořené bloky. Např.: A(B 1 B 2... B p ) = (AB 1 AB 2... AB p ). Uvažujme čtvercové matice A, B T n,n. K výpočtu AB podle definice potřebu- jeme n 3 operací (=vy dvou čísel). Nedalo by se ušetřit? Výpočetní složitost maticového Rekurzivní algoritmus matic: Vychází z blokového. Pro jednoduchost výpočtu složitosti předpokládejme, že rozměr matic n = 2 k, pro nějaké k N. Počet operací označme F (n), potom máme: F (n) = 8F (n/2) = 8(8F (n/4)) = 8(8(8F (n/8))) =... = 8 k F (n/2 k ) = 8 k F (1) = 8 k = (2 k ) 3 = n 3.
4 Položme Strassenův algoritmus X 1 = (A 1 + A 4 )(B 1 + B 4 ), X 5 = (A 1 + A 2 )B 4, X 2 = (A 3 + A 4 )B 1, X 6 = (A 3 A 1 )(B 1 + B 2 ), X 3 = A 1 (B 2 B 4 ), X 7 = (A 2 A 4 )(B 3 + B 4 ), X 4 = A 4 (B 3 B 1 ). Potom platí A1 A 2 B1 B 2 X1 + X = 4 X 5 + X 7 X 3 + X 5. A 3 A 4 B 3 B 4 X 2 + X 4 X 1 X 2 + X 3 + X 6 Rekurzivní Strassenův algoritmus: Vychází z blokového, ale vystačí jen se sedmi součiny. Pro počet operací F (n) nyní dostáváme: F (n) = 7F (n/2) = 7(7F (n/4)) = 7(7(7F (n/8))) =... = 7 k F (n/2 k ) = 7 k F (1) = 7 k = (2 k ) log 2 7 = n 2,807. Dnes nejvýkonější algorimus pro maticové je od Vassilevska Williams (publ. květen 2012), který počítá s přibližně n 2,3727 operacemi. Algoritmy pro rychlé maticové 0.2 Inverzní matice Inverzní matice Definice 4. Matici A T n,n nazýváme čtvercovou maticí řádu n. Matici E T n,n, kde E ij = δ ij, nazýváme jednotkovou maticí n-tého řádu. Poznámka 5. Pokud A, E T n,n, pak AE = EA = A. Definice 6. Buď A T n,n. Existuje-li matice B T n,n taková, že platí AB = BA = E, nazýváme matici A regulární a B inverzní maticí k matici A. Značíme B = A 1. Pokud A není regulární, nazýváme matici A singulární.
5 Obrázek 0.1: Výpočetní složitosti algoritmů pro maticové [zdroj: wikipedia.org] Inverzní matice je nejvýše jedna Věta 8. Nechť A, B T n,n jsou regulární, potom AB je regulární a platí Věta 7. Je-li A T n,n regulární, potom je inverzní matice k A určena jednoznačně. Součin regulárních matic je regulární matice (AB) 1 = B 1 A 1. Aby B byla inverzní maticí k A, musí podle definice platit dvě rovnosti: Stačí jedna rovnost v definici inverzní matice AB = E a BA = E. Nyní ukážeme, že vlastně stačí, aby platila pouze jedna z rovností. Druhá už je potom také splňena.
6 Věta 9. Buď A T n,n. Existuje-li B T n,n taková, že platí AB = E nebo BA = E, potom je A regulární a B = A 1. Poznámka 10. Toto je speciální případ matic, v obecné algebře (v grupách) jedna rovnost nestačí. Řádkové úpravy GEM v matici A T m,n lze realizovat tak, že A vynásobíme zleva vhodnou regulární maticí P T m,m. Maticová realizace kroků GEM 1/3 1. Prohození i-tého a j-tého řádku: Matici P(i, j) T m,m definujeme takto: { 1, pokud ( k = l / {i, j} ) (k = i l = j) (k = j l = i) [P(i, j)] kl := 0, jinak. Tedy matice P(i, j) je matice E T m,m s prohozeným i-tým a j-tým řádkem. Matice P(i, j)a je matice A s prohozeným i-tým a j-tým řádkem (ověřte!). Matice P(i, j) je regulární a platí (ověřte!). P(i, j) 1 = P(i, j) 2. Vy i-tého řádku číslem α 0: Matici P i (α) T m,m definujeme takto: α, pokud k = l = i [P i (α)] kl := 1, pokud k = l i 0, jinak. Maticová realizace kroků GEM 2/3 Tedy matice P i (α) je matice E T m,m, kde v i-tým řádku na diagonále je číslo α.
7 Matice P i (α)a je matice A s i-tým řádkem vynásobeným číslem α (ověřte!). Matice P i (α) je regulární (pro α 0) a platí P i (α) 1 = P i (α 1 ) (ověřte!). 3. Přičtení i-tého řádku k j-tému řádku: Matici Q(i, j) T m,m definujeme takto: { 1, pokud (k = l) (k = j l = i) [Q(i, j)] kl := 0, jinak. Tedy matice Q(i, j) je matice E T m,m, kde je navíc 1 na (j, i)-té pozici. Matice Q(i, j)a je matice A akorát na j-tém řádku je A i, +A j, (ověřte!). Matice Q(i, j) je regulární a platí Q(i, j) 1 = P i ( 1)Q(i, j)p i ( 1) (ověřte!). Důsledek 11. Nechť A, B T m,n a A B. Potom P T m,m regulární taková, že B = PA. Maticová realizace kroků GEM 3/3 Maticová realizace GEM - celkem Poznámka 12. Analogicky bychom místo řádkových úprav mohli používat 3 typy odpovídajících úprav sloupcových. Pro ně bychom opět sestavili 3 regulární matice realizující jednotlivé kroky. Matici A bychom tentokrát násobili regulární maticí zprava.
8 Cvičení: Nalezněte matice realizující sloupcové úpravy. Je-li matice A čtvercová, jaký vztah mají nalezené matice k maticím P(i, j), P i (α) a Q(i, j) definovaných na předchozích slajdech? Věta 13. Buď A T n,n. Následující tvrzení jsou ekvivalentní. Tvrzení ekvivalentní regularitě matice A 1. A je regulární. 2. Soubor řádků matice A je LN. 3. h(a) = n. 4. A E. 5. det A 0 (dokážeme v kapitole o determinantech). Důkaz: Poznámka 14. Protože víme, že h(a) = h(a T ), platí také ekvivalence: A regulární soubor sloupců matice A je LN. Algoritmus: Nechť A T n,n je regulární. Na rozšířenou matici (A E) T n,2n aplikujeme řádkové úpravy GEM tak, abychom matici A převedli na E (to jde podle předchozí věty). Matice, která nám takto vznikne v druhém bloku je hledaná inverze A 1, tj. Výpočet inverzní matice pomocí GEM (A E) (E A 1 ). Zdůvodnění: Posloupnost jednotlivých kroků GEM lze realizovat vym matice A zleva regulární maticí P. Dostaneme PA = E a z dřívější věty víme, že z toho vyplývá A 1 = P. V druhém bloku rozšířené matice děláme tytéž úpravy, a proto máme napravo matici PE = P = A 1. Hodnost součinu matic
9 Věta 15. Nechť A, B T m,n. Exituje-li P T m,m regulární taková, že B = PA, potom A B. Důsledek 16. Násobením regulární maticí se hodnost nezmění. Tzn., je-li A T m,n a P T m,m regularní, potom platí h(a) = h(pa). Věta 17. Nechť A T m,n a B T n,p. Potom platí: h(ab) min(h(a), h(b)).