LINEÁRNÍ ALGEBRA LIBOR BARTO A JIŘÍ TŮMA barto@karlin.mff.cuni.cz, tuma@karlin.mff.cuni.cz Toto jsou vznikající skripta k přednáškám Lineární algebra a geometrie 1 a Lineární algebra a geometrie 2. Pokud naleznete jakoukoliv chybu, dejte nám určitě vědět! 1. Opakování Cíl. Zopakujeme si základy analytické geometrie v rovině a prostoru a počítání s komplexními čísly. V úvodní kapitole si zopakujeme některé poznatky, se kterými se většina z vás seznámila už na střední škole. Připomeneme si základy analytické geometrie, zejména rovnici přímky v rovině a roviny v prostoru a jejich parametrická vyjádření. V druhé části zopakujeme počítání s komplexními čísly. Ukážeme jejich geometrický význam a podrobněji se budeme věnovat řešení binomických rovnic. 1.1. Analytická geometrie v rovině a prostoru. x1 x2 Hp,qL p q Hq,pL p q Obrázek 1. Souřadnice bodu v rovině Date: 30. května 2017. 1 2 LIBOR BARTO A JIŘÍ TŮMA 1.1.1. Souřadnice v rovině. Pokud zvolíme v rovině nějaký souřadný systém, můžeme každý bod zapsat pomocí jeho souřadnic jako uspořádanou dvojici reálných čísel (p, q). A naopak, každé uspořádané dvojici reálných čísel odpovídá právě jeden bod v rovině. Na přídavné jméno uspořádaná nesmíme zapomínat, protože v uspořádané dvojici čísel záleží na jejich pořadí. Je-li p = q, jsou dvojice (p, q) a (q, p) různé. Dvojicím (p, q) a (q, p) také odpovídají různé body v rovině. Jsou symetrické vzhledem k ose prvního a třetího kvadrantu. Je-li u vektor v rovině s počátečním bodem P = (p1, p2) a koncovým bodem Q = (q1, q2), pak za jeho souřadnice považujeme uspořádanou dvojici (q1 − p1, q2 − p2) reálných čísel. Souřadnice vektoru u nezávisí na volbě počátečního bodu. x1 x2 P Q q1 - p1 q2 - p2 q1 - p1 q2 - p2 u u Obrázek 2. Souřadnice vektoru v rovině Naopak, každá uspořádaná dvojice (r, s) reálných čísel určuje vektor u v rovině. Počáteční bod P = (p, q) můžeme zvolit libovolně, koncový bod Q má pak souřadnice (p + r, q + s). Pokud za počáteční bod zvolíme počátek souřadnic (0, 0), pak mluvíme o polohovém vektoru bodu (r, s). Každé uspořádané dvojici reálných čísel (r, s) tak odpovídá buď nějaký bod R = (r, s) nebo nějaký vektor u = (r, s) v rovině. Připomeňme ještě, že body v rovině můžeme zapsat pomocí souřadnic až poté, co jsme si zvolili nějaký souřadný systém. Jeden a ten samý bod může mít v různých souřadných systémech různé souřadnice. Totéž platí pro vektory. S jedinou výjimkou, a tou je nulový vektor, který má stejný počáteční a koncový bod. Ten má v jakémkoliv souřadném systému souřadnice (0, 0). 1.1.2. Rovnice přímky a parametrické vyjádření přímky v rovině. Každé řešení jedné lineární rovnice o dvou neznámých a1x1 + a2x2 = b LINEÁRNÍ ALGEBRA 3 x1 x2 Hr,sL r s u u Obrázek 3. Polohový vektor bodu je uspořádaná dvojice reálných čísel (x1, x2). Množina S všech řešení takové rovnice je nějaká množina uspořádaných dvojic reálných čísel: S = {(x1, x2) ∈ R2 : a1x1 + a2x2 = b} . Tyto dvojice můžeme považovat za souřadnice bodů v rovině. Množina všech řešení rovnice pak geometricky odpovídá přímce v rovině (pokud je aspoň jeden z koeficientů a1, a2 nenulový). x2 x1 b a1 b a2 S Obrázek 4. Rovnice přímky Je-li a1 = 0, je přímka rovnoběžná s první souřadnou osou, je-li a2 = 0, je rovnoběžná s druhou souřadnou osou. 4 LIBOR BARTO A JIŘÍ TŮMA Přímku v rovině můžeme také zapsat parametricky pomocí dvou vektorů u a v = (0, 0) jako množinu {u + tv : t ∈ R} , vektory sčítáme a násobíme reálným číslem po složkách. Vektor v nazýváme směrový vektor přímky. x2 x1 u v v S Obrázek 5. Parametrické vyjádření přímky Příklad 1.1. Najdeme rovnici a parametrické vyjádření přímky S, která prochází body P = (2, 3) a Q = (−1, 1). Snazší je vyjádřit přímku v parametrickém tvaru. Za vektor u zvolíme polohový vektor (2, 3) bodu P. Vektorem v bude vektor s počátečním bodem P a koncovým bodem Q, tj. v = (−1, 1) − (2, 3) = (−3, −2). Parametrické vyjádření přímky S je {u + tv : t ∈ R} = {(2, 3) + t(−3, −2) : t ∈ R} . K nalezení rovnice přímky najdeme průsečíky přímky S se souřadnými osami. Vyjdeme z parametrického vyjádření. Volbou t = 2/3 dostáváme bod (0, 5/3) přímky S na druhé souřadné ose, a volbou t = 3/2 najdeme průsečík (−5/2, 0) přímky S s první souřadnou osou. Z obrázku 4 pak nahlédneme, že musí platit −5 2 = b a1 a 5 3 = b a2 . Stačí tedy zvolit např. b = 5, a1 = −2 a a2 = 3. Jedna z možných rovnic přímky S je tedy −2x1 + 3x2 = 5. Otázky 1.2. K rovnici přímky −2x1 + 3x2 = 5 najděte rovnici nějaké rovnoběžné přímky. Které další rovnice popisují stejnou přímku jako rovnice −2x1 + 3x2 = 5? Kdy dvě rovnice určují různoběžné přímky? LINEÁRNÍ ALGEBRA 5 x1 x2 x3 P Hp,q,rL p q r u Obrázek 6. Souřadnice bodu a vektoru v prostoru 1.1.3. Souřadnice v prostoru. Podobně volba souřadného systému v prostoru umožňuje zapsat každý bod prostoru jako uspořádanou trojici (p, q, r) reálných čísel. Na obrázku 6 je také znázorněn polohový vektor bodu (p, q, r) a vektor s počátečním bodem P a souřadnicemi (p, q, r). Jakékoliv uspořádané trojici reálných čísel odpovídá jednoznačně určený bod v prostoru a také jednoznačně určený vektor v prostoru. Stejně jako v rovině také souřadnice bodů v prostoru závisí na volbě souřadného systému. Rovněž na něm závisí souřadnice jakéhokoliv nenulového vektoru. Nulový vektor má v každém souřadném systému souřadnice (0, 0, 0). 1.1.4. Rovnice roviny a parametrické vyjádření roviny v prostoru. Každé řešení jedné lineární rovnice o třech neznámých a1x1 + a2x2 + a3x3 = b je uspořádaná trojice (x1, x2, x3) reálných čísel, která odpovídá nějakému bodu v prostoru. Množina všech řešení S = {(x1, x2, x3) ∈ R3 : a1x1 + a2x2 + a3x3 = b} pak odpovídá nějaké rovině v prostoru, pokud je aspoň jeden z koeficientů a1, a2, a3 nenulový. Rovina je rovnoběžná s první souřadnou osou právě když je a1 = 0, podobně s dalšími osami. V případě a1 = a2 = 0 jde tedy o rovinu rovnoběžnou s rovinou určenou prvními dvěma souřadnými osami x1, x2. Také rovinu v prostoru můžeme vyjádřit v parametrickém tvaru S = {u + sv + tw : s, t ∈ R} , kde u je polohový vektor nějakého bodu roviny a v, w jsou další vhodné vektory. Příklad 1.3. Najdeme parametrické vyjádření roviny určené body P = (0, 2, 1), Q = (1, 2, 3), R = (2, 1, 0). Za vektor u zvolíme polohový vektor bodu P, tj. u = 6 LIBOR BARTO A JIŘÍ TŮMA x1 x2 x3 b a1 b a2 b a3 S Obrázek 7. Rovnice roviny v prostoru x1 x2 x3 b a1 b a2 b a3 S u v w Obrázek 8. Parametrické vyjádření roviny v prostoru (0, 2, 1). Za vektor v můžeme zvolit například vektor s počátečním bodem P a koncovým bodem Q, tj. v = (1, 2, 3) − (0, 2, 1) = (1, 0, 2). A nakonec za vektor w zvolíme vektor s počátečním bodem P a koncovým bodem R, tj. w = (2, 1, 0) − LINEÁRNÍ ALGEBRA 7 (0, 2, 1) = (2, −1, −1). Parametrické vyjádření roviny je tedy {(0, 2, 1) + s(1, 0, 2) + t(2, −1, −1) : s, t ∈ R} . Rovnici této roviny můžeme z jejího parametrického vyjádření najít podobně, jako jsme hledali rovnici přímky v rovině z jejího parametrického tvaru. Najdeme hodnoty parametrů s, t, které určují bod roviny na první souřadné ose. Takový bod musí mít druhou a třetí souřadnici rovnou 0. Tato podmínka vede na soustavu dvou lineárních rovnic o dvou neznámých: 2 + 0s − 1t = 0 1 + 2s − t = 0 , která má řešení t = 2 a s = 1/2, na první souřadné ose leží bod (0 + 1s + 2t, 0, 0) = (9/2, 0, 0). Podobně najdeme průsečíky parametricky zadané roviny s dalším souřadnými osami. Ze souřadnic těchto průsečíků potom odvodíme koeficienty a1, a2, a3 a b pomocí obrázku 7. Brzy se naučíme mnohem rychlejší postup a proto ten právě naznačený už nebudeme dělat podrobně až do konce. Otázky 1.4. Jak poznáme, že dvě lineární rovnice o třech neznámých určují rovnoběžné roviny? Kdy určují různoběžné roviny? Jak by řešení předchozího příkladu probíhalo, kdyby body P, Q, R ležely na jedné přímce? 1.1.5. Soustava rovnic přímky a parametrické vyjádření přímky v prostoru. Jednodušší je najít v tomto případě parametrické vyjádření. To je S = {u + tv : t ∈ R} , kde u, v jsou vhodné vektory v prostoru. x1 x2 x3 u v Obrázek 9. Parametrické vyjádření přímky v prostoru 8 LIBOR BARTO A JIŘÍ TŮMA Máme-li parametricky vyjádřit přímku procházející body P = (−2, 3, 1) a Q = (1, 0, 5), zvolíme u = (−2, 3, 1), tj. polohový vektor bodu P, a za v například vektor s počátečním bodem P a koncovým bodem Q, tj. v = (1, 0, 5) − (−2, 3, 1) = (3, −3, 4). Parametrické vyjádření je tedy {(−2, 3, 1) + t(3, −3, 4) : t ∈ R} . Neexistuje jedna lineární rovnice o třech neznámých, jejíž množina řešení by odpovídala přímce v prostoru. Každou přímku v prostoru ale můžeme vyjádřit jako množinu všech řešení soustavy dvou lineárních rovnic o třech neznámých: a11x1 + a12x2 + a13x3 = b1 a21x1 + a22x2 + a23x3 = b2 . Každá přímka je totiž průnikem dvou rovin a každou z těchto dvou rovin můžeme popsat jednou lineární rovnicí o třech neznámých. Průnik těchto dvou rovin odpovídá množině všech společných řešení obou rovnic. x1 x2 x3 Obrázek 10. Průnik dvou rovin v prostoru Musíme dát jenom pozor, aby každá z rovnic určovala rovinu, tj. aspoň jeden z koeficientů a11, a12, a13 byl nenulový, a stejně tak mezi koeficienty a21, a22, a23 musí být aspoň jeden různý od nuly. A ještě musí být obě roviny různoběžné, což zajistíme požadavkem, že žádný z vektorů (a11, a12, a13) a (a21, a22, a23) není násobkem druhého. Nyní můžeme geometricky nahlédnout, jak může vypadat množina všech řešení jakékoliv soustavy lineárních rovnic o třech neznámých. Protože je to průnik nějakých rovin, může to být buď rovina, nebo přímka, nebo bod, a nebo prázdná množina (to v případě, že je soustava neřešitelná). A nakonec musíme ještě přidat celý prostor, což nastane pokud je každá rovnice v soustavě tvaru 0x1 +0x2 +0x3 = 0, kterou splňuje jakákoliv trojice (x1, x2, x3). LINEÁRNÍ ALGEBRA 9 Podobně nahlédneme, že množina všech řešení jakékoliv soustavy lineárních rovnic o dvou neznámých je buď přímka, nebo bod, nebo prázdná množina, a nebo celá rovina. 10 LIBOR BARTO A JIŘÍ TŮMA 1.2. Komplexní čísla. 1.2.1. Počítání s komplexními čísly. Komplexní číslo je číslo tvaru a + ib , kde • a, b jsou reálná čísla , • i je imaginární jednotka, pro kterou platí i2 = −1 . Je-li z = a + ib komplexní číslo, pak • číslo a nazýváme reálná část čísla z a označujeme je Re z , • číslo b nazýváme imaginární část čísla z a označujeme je Im z . Každé komplexní číslo z tak můžeme zapsat jako z = Re z+i Im z. Dvě komplexní čísla z = a + ib a w = c + id se rovnají právě když se současně rovnají jejich reálné části a imaginární části, tj. právě když platí a = c a b = d. S komplexními čísly počítáme stejně jako s algebraickými výrazy. Sčítáme (a + ib) + (c + id) = (a + c) + i(b + d) , a násobíme (a + ib)(c + id) = (ac + i2 bd) + iad + ibc = (ac − bd) + i(ad + bc) . Díky předpokladu i2 = −1 je součin komplexních čísel opět komplexní číslo. Stejně snadné je odčítání, (a + ib) − (c + id) = (a − c) + i(b − d) , zatímco při dělení komplexních čísel musíme více počítat: a + ib c + id = a + ib c + id · c − id c − id = (ac + bd) + i(bc − ad) c2 + d2 + (−cd + cd) = ac + bd c2 + d2 + i bc − ad c2 + d2 . Poslední tři zlomky ve výpočtu mají smysl právě když c2 + d2 > 0, což je právě když aspoň jedno z reálných čísel c, d je různé od 0, a to nastává právě když je komplexní číslo c + id nenulové. 1.2.2. Čísla komplexně sdružená. Při úpravě zlomku z komplexních čísel do algebraického tvaru jsme zlomek rozšířili číslem c−id. Při počítání s komplexními čísly má změna znaménka imaginární složky důležité místo. Definice 1.5. Je-li z = c + id komplexní číslo, pak číslo c − id nazýváme číslo komplexně sdružené k číslu z a označujeme jej z. Číslo komplexně sdružené k z = c − id je tedy c + id = z, proto pro každé komplexní číslo z platí první z následujícího seznamu jednoduchých vlastností komplexního sdružování. • z = z , • z = z právě když je z reálné číslo , • z + z = 2c = 2 Re z , • z − z = i 2d = i 2 Im z , • z z = c2 + d2 . LINEÁRNÍ ALGEBRA 11 Také ostatní vlastnosti snadno odvodíme z definice komplexně sdruženého čísla k číslu z a můžete si je dokázat sami. Zde si výpočtem ověříme pouze tu poslední: z z = (c + id)(c − id) = c2 − i2 d2 + i(dc − cd) = c2 + d2 . Komplexní sdružování také „zachovává algebraické operace s komplexními čísly. Je-li w = a + ib další komplexní číslo, pak platí • w + z = w + z , • w z = w z . První vlastnost říká, že číslo komplexně sdružené k součtu dvou komplexních čísel dostaneme také tak, že vezmeme čísla komplexně sdružená k oběma sčítancům a ta pak sečteme. Druhá vlastnost říká totéž pro součin. Druhou vlastnost si ověříme výpočtem: wz = (a + ib)(c + id) = (ac − bd) + i(ad + bc) = (ac − bd) − i(ad + bc) , w z = (a − ib)(c − id) = (ac − bd) − i(ad + bc) . Obě čísla wz a w z mají stejné reálné a imaginární části a proto se rovnají. 1.2.3. Základní číselné obory. Každé reálné číslo a je současně komplexním číslem a + i0. Množina všech reálných čísel, budeme ji označovat R, je tak podmnožinou množiny všech komplexních čísel, kterou budeme označovat C. Komplexní čísla jsou největším z číselných oborů, se kterými jste se dosud učili počítat. Od přirozených čísel, která značíme N (natural numbers), přes celá čísla Z (Zahlen), racionální čísla Q (quotients), reálná čísla R (reals) až po komplexní čísla C (complex numbers): N ⊂ Z ⊂ Q ⊂ R ⊂ C . 1.2.4. Základní věta algebry. Jednou z příčin postupného rozšiřování číselných oborů byla potřeba řešit rovnice. V každém oboru obsaženém v množině reálných čísel R lze formulovat rovnici, která v tomto oboru nemá žádné řešení. Rovnice x + 2 = 1 má pouze přirozené koeficienty, ale žádné přirozené číslo ji neřeší. Podobně rovnice 2x = 1 nemá žádné celočíselné řešení, rovnici x2 = 2 neřeší žádné racionální číslo, a rovnice x2 = −1 nemá žádný reálný kořen. Obor komplexních čísel už kvůli řešení polynomiálních rovnic není nutné dále rozšiřovat, neboť platí následující základní věta algebry. Věta 1.6. Každý nekonstantní polynom s komplexními koeficienty má aspoň jeden komplexní kořen. Základní větu algebry lze formulovat také následujícím způsobem. Věta 1.7. Pro každý polynom p(x) = anxn +an−1xn−1 +· · ·+a1x+a0 stupně n ≥ 1 s komplexními koeficienty an, an−1, . . . , a1, a0 existují komplexní čísla z1, z2, . . . , zn (nemusí být navzájem různá), pro která platí anxn + an−1xn−1 + · · · + a1x + a0 = an(x − z1)(x − z2) · · · (x − zn) . Tuto formulaci můžeme také stručně vyjádřit slovy každý nekonstantní polynom s komplexními koeficienty se rozkládá na součin lineárních činitelů. Každé z komplexních čísel z1, z2, . . . , zn je kořenem polynomu p(x) a tedy řešením polynomiální rovnice anxn + · · · + a1x + a0 = 0. Z porovnání stupňů polynomů na obou stranách poslední rovnosti dostaneme ihned následující důsledek. Důsledek 1.8. Každý polynom stupně n s komplexními koeficienty má nejvýše n navzájem různých komplexních kořenů. 12 LIBOR BARTO A JIŘÍ TŮMA Polynom s reálnými koeficienty nemusí mít žádný reálný kořen, známým příkladem je polynom x2 + 1. Podle základní věty algebry má ale nějaké komplexní kořeny. Pro komplexní kořeny polynomů s reálnými koeficienty platí následující tvrzení. Říká, že komplexní kořeny polynomů s reálnými koeficienty se sdružují do párů. Věta 1.9. Je-li p(x) = anxn + an−1xn−1 + · · · + a1x + a0 polynom s reálnými koeficienty, pak je číslo z ∈ C kořen polynomu p(x) právě když je z (číslo komplexně sdružené k z) také kořen polynomu p(x). Důkaz. Narozdíl od základní věty algebry má věta o komplexním sdružování kořenů jednoduchý důkaz, a proto si jej uvedeme. Každý koeficient ai polynomu p(x) je reálné číslo, platí proto ai = ai. Stejně tak platí 0 = 0. Protože předpokládáme, že z je kořen polynomu p(x), platí p(z) = 0, a tedy také p(z) = 0 = 0. V následujícím výpočtu použijeme, že komplexní sdružování zachovává sčítání a násobení komplexních čísel. Platí 0 = p(z) = anzn + an−1zn−1 + · · · + a1z + a0 = an zn + an−1 zn−1 + · · · + a1 z + a0 = an zn + an−1 zn−1 + · · · + a1 z + a0 = anzn + an−1zn−1 + · · · + a1z + a0 = p(z) , což dokazuje, že z je kořen polynomu p(x). Je-li naopak z kořen polynomu p(x), pak jsme právě dokázali, že také z = z je kořen polynomu p(x). 1.2.5. Komplexní rovina. Reálná čísla znázorňujeme na reálné ose. Komplexní číslo z = a + ib můžeme znázornit jako bod (a, b) v rovině s kartézskými souřadnicemi. V takovém případě mluvíme o komplexní rovině. Také se můžete setkat s názvem Gaussova rovina a v anglicky psaných učebnicích s názvem Argand plane, případně Argand diagram. Na obrázku je kromě čísla z = a + ib znázorněné také číslo komplexně sdružené k z, tj. číslo z = a − ib. Geometricky je komplexně sdružené číslo z symetrické s číslem z vzhledem k reálné ose. Obrázek 12 ukazuje geometrický význam věty 1.9 o komplexním sdružování kořenů polynomů s reálnými koeficienty – množina všech kořenů je symetrická vzhledem k reálné ose. Dále si na obrázku 13 ukážeme geometrický význam sčítání komplexních čísel. Jsou-li z = a+ib a w = c+id komplexní čísla, pak součet z +w = (a+c)+i(b+d) odpovídá bodu se souřadnicemi (a + c, b + d) a ten dostaneme jako koncový bod součtu polohového vektoru bodu (a, b) odpovídajícího z a polohového vektoru bodu (c, d) odpovídajícího w. 1.2.6. Polární souřadnice v rovině. Geometrický význam násobení je o něco složitější. Pro jeho pochopení je vhodnější použít k zápisu bodů v rovině polární souřadnice. V rovině s kartézskými souřadnicemi můžeme každý bod P = (a, b) různý od počátku souřadnic jednoznačně určit pomocí vzdálenosti r > 0 bodu P od počátku a orientovaného úhlu α, který dostaneme tak, že kladnou x1-ovou poloosu otáčíme kolem počátku souřadnic proti směru hodinových ručiček až do polopřímky s počátkem v bodě (0, 0) a procházející bodem P. Dvojici čísel (r, α) nazýváme polární LINEÁRNÍ ALGEBRA 13 x1 x2 a + i b a b - b a - i b Obrázek 11. Geometrické znázornění komplexního čísla v rovině x1 x2 Obrázek 12. Komplexní kořeny polynomu s reálnými koeficienty souřadnice bodu P, viz. obrázek 14. Protože otočením o plný úhel 2π neboli 360 stupňů dostaneme zpět kladnou poloosu x1, není úhel α určený jednoznačně. Různé 14 LIBOR BARTO A JIŘÍ TŮMA x1 x2 z = a + ib w = c + id z+w = Ha+cL + iHb+dL c a a+c b d b+d Obrázek 13. Součet komplexních čísel možné hodnoty α se liší o nějaký celočíselný násobek 2π. V případě, že P = (0, 0) je počátek souřadnic, je r = 0 a úhel α není definován. x1 x2 z = a + ib a b r a Obrázek 14. Polární souřadnice bodu v rovině Z polárních souřadnic (r, α) bodu P = (0, 0) vypočteme jeho kartézské souřadnice (a, b) jako a = r cos α, b = r sin α . Naopak z kartézských souřadnic (a, b) bodu P = (0, 0) dostaneme jeho polární souřadnice pomocí vztahů r = a2 + b2, cos α = a √ a2 + b2 , sin α = b √ a2 + b2 . LINEÁRNÍ ALGEBRA 15 Protože funkce sinus a kosinus mají periodu 2π, plyne odtud znovu, že úhel α je určený jednoznačně až na celočíselný násobek 2π. 1.2.7. Goniometrický tvar komplexního čísla. Bod P odpovídá komplexnímu číslu z = a + ib. Vyjádříme-li jeho kartézské souřadnice (a, b) pomocí polárních, dosta- neme z = a + ib = r cos α + i r sin α = r(cos α + i sin α) . Vyjádření z = r(cos α + i sin α) nazýváme goniometrický tvar komplexního čísla z = 0. • číslo r nazýváme absolutní hodnota čísla z a označujeme jej |z| , • úhel α nazýváme argument komplexního čísla z a označujeme jej arg z . Platí tedy |z| = a2 + b2, cos(arg z) = a √ a2 + b2 , sin(arg z) = b √ a2 + b2 , také arg z může nabývat různých hodnot, které se ale vždy liší o celočíselný násobek 2π. Protože platí (poslední pátá rovnost pod Definicí 1.5), že z z = a2 + b2 , dostáváme pro absolutní hodnotu čísla z vyjádření • |z|2 = z z . 1.2.8. Geometrický význam násobení komplexních čísel. Body na jednotkové kružnici odpovídají komplexním číslům cos α+i sin α. Takovým číslům říkáme komplexní jednotky. x1 x2 z w w z 1 a b b Obrázek 15. Součin komplexních jednotek 16 LIBOR BARTO A JIŘÍ TŮMA Pro součin dvou komplexních jednotek w = cos α + i sin α a z = cos β + i sin β platí w z = (cos α + i sin α)(cos β + i sin β) = cos α cos β − sin α sin β + i(cos α sin β + sin α cos β) = cos(α + β) + i sin(α + β) , v poslední rovnosti jsme použili vzorce pro sinus a kosinus součtu dvou úhlů. Součin dvou komplexních jednotek je tedy opět komplexní jednotka, pro kterou platí • arg(w z) = arg w + arg z , rovnost platí až na celočíselný násobek 2π. Jednoduchou indukcí podle n pak snadno dokážeme důležitou Moivreovu větu: Věta 1.10. Pro každý úhel α a každé přirozené číslo n platí (cos α + i sin α)n = cos(nα) + i sin(nα) . x1 x2 z w w z a b b r r s s rs rs Obrázek 16. Součin komplexních čísel Jsou-li nyní w = r(cos α + i sin α) a z = s(cos β + i sin β) libovolná dvě nenulová komplexní čísla, pak pro jejich součin platí w z = r(cos α + i sin α)s(cos β + i sin β) = rs(cos α + i sin α)(cos β + i sin β) = rs(cos(α + β) + i sin(α + β)) . LINEÁRNÍ ALGEBRA 17 Pro absolutní hodnotu a argument součinu w z tak platí • |w z| = |w| |z| , • arg(wz) = arg w + arg z . V jednoduchém speciálním případě, kdy w = i = cos(π/2) + i sin(π/2) dostáváme, že |iz| = |i| |z| = |z| a arg(iz) = arg i + arg z = π 2 + arg z. Vynásobit číslo z číslem i tak znamená pootočit číslo z kolem počátku souřadnic o pravý úhel proti směru hodinových ručiček. To můžeme také snadno nahlédnout z algebraického tvaru z = a + ib, neboť i z = i(a + ib) = −b + ia . x1 x2 z a b i z -b a Obrázek 17. Součin komplexního čísla s imaginární jednotkou Dokážeme si ještě dvěma způsoby trojúhelníkovou nerovnost pro komplexní čísla, která říká, že pro libovolná dvě čísla z = a + ib a w = c + id platí • |z + w| ≤ |z| + |w| . K algebraickému důkazu trojúhelníkové nerovnosti využijeme další dvě jednoduché vlastnosti absolutní hodnoty komplexních čísel. Pro každé komplexní číslo z = a + ib platí • |z| = |z| , • Re z ≤ |z| . První rovnost plyne přímo z definice absolutní hodnoty, dokážeme druhou. Je-li z = a + ib, pak platí a ≤ |a| = √ a2 ≤ a2 + b2 = |z| . 18 LIBOR BARTO A JIŘÍ TŮMA Pro každou rovnost nebo nerovnost v následujícím výpočtu (s výjimkou poslední rovnosti) si najděte v předchozím textu tu vlastnost komplexních čísel, kterou pou- žíváme. |z + w|2 = (z + w)(z + w) = (z + w)(z + w) = zz + zw + wz + ww = |z|2 + zw + wz + |w|2 = |z|2 + zw + zw + |w|2 = |z|2 + 2 Re (zw) + |w|2 ≤ |z|2 + 2 |zw| + |w|2 = |z|2 + 2 |z| |w| + |w|2 = |z|2 + 2 |z| |w| + |w|2 = (|z| + |w|)2 . Dokázali jsme tak |z+w|2 ≤ (|z|+|w|)2 a po odmocnění dostáváme trojúhelníkovou nerovnost pro komplexní čísla. Pomocí geometrického významu sčítání komplexních čísel trojúhelníkovou nerovnost snadno nahlédneme z obrázku. x1 x2 z w z +w ÈzÈ ÈwÈ Èz+wÈ ÈzÈ Obrázek 18. Trojúhelníková nerovnost pro komplexní čísla 1.2.9. Řešení binomické rovnice zn = 1. Začneme řešením rovnice z5 = 1. Tuto rovnici zřejmě splňuje číslo z0 = 1. Z Moivreovy věty plyne, že komplexní jednotka z1 = cos 2π 5 + i sin 2π 5 je další kořen rovnice z5 = 1, neboť z5 1 = cos(2π) + i sin(2π) = 1. Položíme-li z2 = z2 1, platí z5 2 = z2 1 5 = z10 1 = 1 a dostáváme tak další kořen z2. Moivreova věta říká, že z2 = z2 1 = cos 2π 5 + i sin 2π 5 2 = cos 2 · 2π 5 + i sin 2 · 2π 5 . LINEÁRNÍ ALGEBRA 19 Analogicky najdeme další dva kořeny z3 = cos 3 · 2π 5 + i sin 3 · 2π 5 , z4 = cos 4 · 2π 5 + i sin 4 · 2π 5 . Našli jsme tak pět navzájem různých kořenů z0 = 1, z1, . . . , z4. Polynom z5 − 1 má stupeň 5, podle Důsledku 1.8 rovnice z5 − 1 = 0 více kořenů mít nemůže. A protože z0 = 1 = cos(0 · 2π/5) + i sin(0 · 2π/5), můžeme všechny kořeny zapsat jako zk = cos k · 2π 5 + i sin k · 2π 5 , pro k = 0, 1, 2, 3, 4 . Znázorníme-li je v komplexní rovině, dostaneme vrcholy pravidelného pětiúhelníku, který je vepsaný do jednotkové kružnice a jeden z vrcholů je číslo 1. x1 x2 z0=1 z1 z4 z2 z3 Obrázek 19. Kořeny rovnice z5 = 1 Na dalším obrázku vidíme kořeny rovnic z3 = 1 a z8 = 1. Rovnice z3 = 1 má kořeny zk = cos k · 2π 3 + i sin k · 2π 3 , pro k = 0, 1, 2 , které tvoří vrcholy rovnostranného trojúhelníku vepsaného do jednotkové kružnice tak, aby jedním z vrcholů bylo číslo 1. Rovnice z8 = 1 má kořeny zk = cos k · 2π 8 + i sin k · 2π 8 , pro k = 0, 1, . . . , 7 , 20 LIBOR BARTO A JIŘÍ TŮMA které tvoří vrcholy pravidelného osmiúhelníku vepsaného do jednotkové kružnice tak, aby jedním z vrcholů bylo číslo 1. x1 x2 z0=1 z1 z2 x1 x2 z0=1 z1 z2 z3 z4 z5 z6 z7 Obrázek 20. Kořeny rovnic z3 = 1 a z8 = 1 Obecně má rovnice zn = 1 celkem n navzájem různých kořenů zk = cos k · 2π n + i sin k · 2π n , pro k = 0, 1, . . . , n − 1 , které tvoří vrcholy pravidelného n-úhelníku vepsaného do jednotkové kružnice tak, aby jedním z vrcholů bylo číslo 1. Kořeny rovnice zn = 1 také nazýváme n-té odmocniny z 1. 1.2.10. Řešení binomické rovnice zn = w pro libovolné w. Začneme případem w = i = cos(π/2) + i sin(π/2). Je-li navíc n = 2, řešíme rovnici z2 = cos π 2 + i sin π 2 . Také v tomto případě nám Moivreova věta napoví jeden kořen z0 = cos π 4 + i sin π 4 . Druhý kořen snadno získáme z prvního: z1 = −z0 = − cos π 4 − i sin π 4 = cos π 4 + π + i sin π 4 + π . Pokud si z1 přepíšeme jako z1 = cos π 2 + 2π 2 + i sin π 2 + 2π 2 , můžeme oba kořeny rovnice z2 = cos(π/2) + i sin(π/2) vyjádřit jednou formulkou zk = cos π 2 + k 2π 2 + i sin π 2 + k 2π 2 pro k = 0, 1 . LINEÁRNÍ ALGEBRA 21 x1 x2 z0 i z1 Obrázek 21. Kořeny rovnice z2 = i Podobně najdeme kořeny rovnic z3 = i a z4 = i. V obou případech vyjdeme z toho, že pravá strana i = cos(π/2) + i sin(π/2). Rovnice z3 = cos(π/2) + i sin(π/2) má kořeny zk = cos π 2 + k 2π 3 + i sin π 2 + k 2π 3 pro k = 0, 1, 2 . x1 x2 z0z1 i z2 x1 x2 z0 z1 i z2 z3 Obrázek 22. Kořeny rovnic z3 = i a z4 = i 22 LIBOR BARTO A JIŘÍ TŮMA Rovnice z4 = cos(π/2) + i sin(π/2) má kořeny zk = cos π 2 + k 2π 4 + i sin π 2 + k 2π 4 pro k = 0, 1, 2, 3 . V obou případech snadno provedeme zkoušku pomocí Moivreovy věty. Na základě analogie můžeme nyní najít všechny kořeny rovnice zn = w pro jakoukoliv komplexní jednotku w = cos α + i sin α. zk = cos α + k 2π n + i sin α + k 2π n pro k = 0, 1, 2, . . . , n − 1 . x1 x2 z0 w z1 z2 zn-1 -1 a Obrázek 23. Kořeny rovnice zn = cos α + i sin α Pomocí Moivreovy věty ověříme, že každé číslo zk je kořenem rovnice zn = cos α + i sin α: zn k = cos α + k 2π n + i sin α + k 2π n n = cos n α + k 2π n + i sin n α + k 2π n = cos (α + k 2π) + i sin (α + k 2π) = cos α + i sin α . Čísla zk jsou navíc navzájem různá pro k = 0, 1, . . . , n − 1, neboť se argumenty libovolných dvou z těchto čísel liší o méně než 2π. LINEÁRNÍ ALGEBRA 23 Nakonec najdeme kořeny rovnice zn = w pro libovolnou nenulovou pravou stranu w = r(cos α + i sin α). Pro každý kořen zk rovnice zn = w musí platit |zk|n = |zn k | = |w| = r , odkud plyne |zk| = n √ r. Všechny kořeny rovnice zn = w tak musí mít absolutní hodnotu rovnou n √ r. Stejně jako v předchozím případě |w| = 1 ověříme pomocí Moivreovy věty, že kořeny rovnice zn = r(cos α + i sin α) jsou zk = n √ r cos α + k 2π n + i sin α + k 2π n pro k = 0, 1, 2, . . . , n − 1 . x1 x2 z0 w z1 z2 zn-1 zn-2 r r 1 n a Obrázek 24. Kořeny rovnice zn = w 1.2.11. Eulerova formule. Dříve nebo později se setkáte s Eulerovo formulí, která říká, že pro každé reálné číslo α platí eiα = cos α + i sin α . K důkazu této formule potřebujete vědět, jak se definuje Eulerovo číslo e, které je iracionální (stejně jako π) a jeho přibližná hodnota je 2, 718. O něco později se pak dozvíte, jak spočítat mocninu eiα s čistě imaginárním exponentem iα. V této chvíli můžeme Eulerovu formuli použít jako pohodlnější zápis komplexních jednotek cos α + i sin α. Dříve dokázané vlastnosti součinu dvou komplexních čísel můžeme pomocí Eulerovy formule zapsat jako pravidla pro počítání s mocninami, které v případě reálných exponentů znáte ze střední školy. Vzorec pro součin dvou komplexních jednotek pak můžeme zapsat jako eiα eiβ = ei(α+β) . 24 LIBOR BARTO A JIŘÍ TŮMA Podobně jednoduše lze zapsat Moivreovu větu: eiα n = ei(nα) . Goniometrický tvar nenulového čísla w = r(cos α + i sin α) je potom z = r eiα , kde r = |w| a α = arg w. Součin dvou komplexních čísel w = r eiα a z = s eiβ můžeme zapsat ve tvaru wz = r eiα s eiβ = (rs)ei(α+β) , odkud přímo plynou už dříve uvedené formulky pro absolutní hodnotu a argument součinu dvou komplexních čísel, které říkají, že |wz| = rs = |w| |z| a arg(wz) = α + β = arg w + arg z. Cvičení 1. Spočítejte reálnou a imaginární část komplexních čísel (1 + i)(2 − 3i) , 1 + i 2 − 3i , (1 − i)4 . 2. Pro z = 1 − i a w = 2 + 3i spočítejte z + w , z − w , zw, z w , z w, wz . 3. Najděte reálné a imaginární části kořenů rovnice z2 = i . 4. Najděte kořeny kvadratické rovnice z2 − (3 + i)z + (2 + i) = 0 . 5. Dokažte, že 1 + i je kořenem kubické rovnice z3 + z2 + (5 − 7i)z − (10 + 2i) = 0 a najděte zbývající dva kořeny této rovnice. 6. Dokažte, že pro libovolná dvě nenulová komplexní čísla z, w platí arg z w = arg z − arg w . 7. Najděte absolutní hodnotu a argument čísel 1+i a √ 3+i. Najděte reálnou a imaginární složku čísla 1 + i √ 3 + i a dokažte, že cos π 12 = √ 3 + 1 2 √ 2 , a sin π 12 = √ 3 − 1 2 √ 2 . 8. Najděte všechny kořeny rovnice x8 = −1 . 9. Pomocí Moivreovy věty dokažte, že pro každý úhel α platí cos 5α = 16 cos5 α − 20 cos3 α + 5 cos α, sin 5α = (16 cos4 α − 12 cos2 α + 1) sin α . 10. Najděte vyjádření cos 3α a sin 3α pomocí cos α a sin α. 11. Dokažte, že pro každou komplexní jednotku z = cos α + i sin α platí 2 cos α = z + 1 z , 2i sin α = z − 1 z . LINEÁRNÍ ALGEBRA 25 12. Dokažte, že je-li w = 1 kořen rovnice z3 = 1, pak platí 1 + w + w2 = 0 . 13. Dokažte, že pro komplexní jednotku z = cos 2π 5 + i sin 2π 5 platí 1 + z + z2 + z3 + z4 = 0 . 26 LIBOR BARTO A JIŘÍ TŮMA 2. Řešení soustav lineárních rovnic Cíl. Naučíme se řešit soustavy lineárních rovnic Gaussovo eliminační metodou. Ukážeme si jak parametricky vyjádřit množinu všech řešení takové soustavy. A upozorníme na problémy, které přináší řešení velkých soustav lineárních rovnic na počítačích. 2.1. Úlohy vedoucí na soustavy lineárních rovnic. Mnoho nejrůznějších úloh lze převést na řešení soustavy lineárních rovnic. Pro ilustraci uvedeme pět jednoduchých příkladů z různých oborů. 2.1.1. Elektrické obvody. U elektrického obvodu na obrázku chceme určit proudy protékající jednotlivými větvemi. 10 V 1 Ω 30 Ω 55 Ω50 Ω 1 Ω 25 Ω I1 I2 I3 Obrázek 25. Elektrický obvod z části 2.1.1 Použijeme metodu elementárních smyček. Spočívá v tom, že obvod nějak rozdělíme na elementární smyčky a v každé smyčce si libovolně zvolíme směr procházejícího proudu. Proudy protékající jednotlivými elementárními smyčkami označíme I1, I2, I3 podle obrázku. Použijeme druhý Kirchhoffův zákon, který říká, že součet orientovaných napětí na jednotlivých odporech v uzavřené smyčce se rovná součtu napětí na zdrojích v této smyčce. Pro každou smyčku tak získáme (ještě s pomocí Ohmova zákona) jednu rovnici: 1I1 + 25(I1 − I2) + 50(I1 − I3) = 10 25(I2 − I1) + 30I2 + 1(I2 − I3) = 0 50(I3 − I1) + 1(I3 − I2) + 55I3 = 0 . Zjednodušením dostaneme soustavu třech lineárních rovnic o třech neznámých, která má právě jedno řešení (I1, I2, I3) = (0,245, 0,111, 0,117). Z toho dopočteme proudy pro jednotlivé větve. LINEÁRNÍ ALGEBRA 27 10 V 1 Ω 30 Ω 55 Ω 50 Ω 1 Ω 25 Ω 0,245A 0,111A 0,006A 0,117A 0,134A 0,128A Obrázek 26. Proudy v elektrickém obvodu z části 2.1.1 2 kgh c 50 40 30 20 10 10 20 30 40 50 2 kg hc 50 40 30 20 10 10 20 30 40 50 Obrázek 27. Neznámá závaží 2.1.2. Neznámá závaží. Máme tři závaží. První váží 2kg, ale hmotnost dalších dvou neznáme (představte si vesmírné objekty, jejichž vzdálenosti lze přímo určit, ale hmotnosti nikoliv). Podařilo se nám ale najít dvě rovnovážné polohy, viz obrázek. Z těchto informací můžeme hmotnosti určit. Porovnáním momentů totiž dostaneme soustavu lineárních rovnic 40h + 15c = 50 · 2 25c = 25 · 2 + 50h , kterou snadno vyřešíme. 2.1.3. Prokládání kružnice danými body. Chceme najít kružnici v rovině procházející body (1, 0), (−1, 2), (3, 1). (Například víme, že nějaký objekt se pohybuje po kruhové dráze, máme změřeny tři polohy a chceme určit střed a poloměr obíhání.) Rovnice kružnice v rovině má tvar x2 + y2 + ax + by + c = 0 . Dosazením daných třech bodů získáme soustavu lineárních rovnic 1 + a + c = 0 5 − a + 2b + c = 0 10 + 3a + b + c = 0 . Soustava má právě jedno řešení (a, b, c) = (−7/3, −13/3, 4/3), takže hledaná kružnice má rovnici x2 + y2 − 7 3 x − 13 3 y + 4 3 = 0 . 28 LIBOR BARTO A JIŘÍ TŮMA x y −1 1 2 3 1 2 3 4 Obrázek 28. Kružnice procházející danými třemi body Chceme-li znát střed a poloměr kružnice, rovnici můžeme upravit na tvar x − 7 6 2 + y − 13 6 2 = 85 18 , ze kterého vidíme, že hledaná kružnice má střed (7/6, 13/6) a poloměr 85/18. Ve skutečnosti budou měření polohy obíhajícího objektu zatížena chybou, takže jich provedeme daleko více a vznikne soustava mnoha rovnic o třech neznámých. Ta zpravidla nebude mít řešení a budeme hledat v nějakém smyslu nejlepší aproximaci. V kapitole o skalárním součinu se s jednou metodou na hledání dobré aproximace seznámíme. 2.1.4. Pohyb hlavy disku. Objekt jednotkové hmotnosti se pohybuje bez tření po přímce, na počátku je v poloze 0 a má nulovou rychlost. 0-3 -2 -1 1 2 3 Obrázek 29. Pohyb hlavy čtečky Po dobu 8 vteřin na objekt působí vnější síly f(t). Vnější síla je konstantní vždy během jedné vteřiny, tj. f(t) = xj pro j − 1 ≤ t < j a j = 1, 2, . . . , 8. Chceme dosáhnout toho, aby se po 8 vteřinách poloha objektu rovnala b1 a jeho rychlost byla b2. Vektor neznámých sil (x1, . . . , x8) proto musí splňovat soustavu 15 2 x1 + 13 2 x2 + 11 2 x3 + 9 2 x4 + 7 2 x5 + 5 2 x6 + 3 2 x7 + 1 2 x8 = b1 x1 + x2 + x3 + x4 + x5 + x6 + x7 + x8 = b2 . LINEÁRNÍ ALGEBRA 29 Soustava má mnoho neznámých, málo rovnic a mnoho řešení. V této kapitole se naučíme uspokojivě popsat všechna řešení. V praxi nám většinou půjde o to vybrat v nějakém smyslu nejvýhodnější řešení. Jedna z metod je vysvětlena opět v kapitole o skalárním součinu. 2.1.5. Vyčíslování chemické rovnice. Uvažujme chemickou reakci toluenu a kyseliny dusičné, při které vzniká TNT a voda: C7H8 + HNO3 −→ C7H5O6N3 + H2O . Vyčíslení chemické rovnice znamená nalezení poměrů jednotlivých molekul, aby počet atomů každého prvku byl na obou stranách stejný. xC7H8 + yHNO3 −→ zC7H5O6N3 + vH2O . Chceme tedy najít hodnoty x, y, z, v, které splňují soustavu rovnic. To vede na rovnice 7x = 7z 8x + y = 5z + 2v y = 3z, 3y = 6z + v . Vzhledem k výbušné povaze tohoto příkladu nebudeme na tomto místě raději uvádět řešení. Reálný význam mají pouze nezáporná řešení. Nezajímají nás tedy všechna řešení soustavy, ale pouze ta řešení, která splňují dodatečné omezující podmínky x ≥ 0, y ≥ 0, z ≥ 0, v ≥ 0. S těmito omezujícími podmínkami dostáváme soustavu lineárních rovnic a nerovností. Řešení takových soustav hraje významnou roli v matematickém oboru nazývaném lineární programování nebo lineární optimalizace. V těchto úlohách se maximalizuje hodnota nějaké lineární funkce definované na množině všech řešení soustavy lineárních rovnic a nerovností. Úlohy lineárního programování jsou nejjednodušší třídou a nejpoužívanějším typem optimalizačních úloh, rozsáhlého oboru s aplikacemi v nejrůznějších oblastech lidského konání. 2.2. Soustavy lineárních rovnic a aritmetické vektory. 2.2.1. Soustavy lineárních rovnic. Definice 2.1. Lineární rovnice o n neznámých s reálnými koeficienty je rovnice a1x1 + a2x2 + · · · + anxn = b , kde všechny koeficienty a1, a2, . . . , an a číslo b jsou daná reálná čísla a x1, x2, . . . , xn jsou neznámé. Soustava m lineárních rovnic o n neznámých je soustava a11x1 + a12x2 + · · · + a1nxn = b1 a21x1 + a22x2 + · · · + a2nxn = b2(1) . . . am1x1 + am2x2 + · · · + amnxn = bm s reálnými koeficienty aij, reálnými pravými stranami bi a neznámými x1, x2, . . . , xn. Reálná čísla x1, . . . , xn jsou řešením dané soustavy, pokud splňují zároveň všechny rovnice. 30 LIBOR BARTO A JIŘÍ TŮMA Koeficient aij je koeficient v i-té rovnici u j-té neznámé xj. První z indexů ij je index rovnice, druhý je index neznámé. Jedno řešení soustavy lineárních rovnic o n neznámých budeme zapisovat jako uspořádanou n-tici čísel. To předpokládá nějaké pevné uspořádání neznámých. Z kontextu bude toto uspořádání zřejmé, neznámé jsou většinou značeny x1, . . . , xn. Uspořádanou n-tici čísel nazýváme n-složkový aritmetický vektor. 2.2.2. Aritmetické vektory. Definice 2.2. Aritmetickým vektorem nad R s n složkami rozumíme uspořádanou n-tici reálných čísel      x1 x2 ... xn      . Později uvidíme, že za vektor lze považovat i funkci, matici, atd. Přívlastek aritmetický používáme proto, abychom zdůraznili, že máme na mysli uspořádané n-tice čísel. Jak je vidět z definice, aritmetické vektory budeme psát sloupcově. Například 3-složkový vektor zapíšeme v =   1 −33 5   . Pro úsporu místa aritmetický vektor často napíšeme řádkově a přidáme exponent T, například v = (1, −33, 5)T . V první kapitole jsme si připomněli, že 2-složkový aritmetický vektor můžeme interpretovat jako souřadnice bodu nebo jako souřadnice vektoru v rovině se souřadným systémem. Podobně 3-složkové aritmetické vektory mohou geometricky odpovídat bodům nebo vektorům v prostoru. Na základě analogie můžeme říkat, že 4-složkové aritmetické vektory (a1, a2, a3, a4)T odpovídají bodům nebo vektorům ve čtyřdimenzionálním prostoru s nějakým souřadným systémem, přestože čtyřdimenzionální prostor si už vizuálně představit neumíme. Podobně pro každé n ∈ N můžeme n-složkové aritmetické vektory interpretovat jako body nebo jako vektory v prostoru dimenze n. 2.2.3. Operace s aritmetickými vektory. Každý reálný aritmetický vektor můžeme násobit reálným číslem a aritmetické vektory se stejným počtem složek můžeme sčítat. Obě operace provádíme „po složkách . Definice 2.3. Jsou-li u = (u1, u2 . . . , un)T a v = (v1, v2, . . . , vn)T dva n-složkové aritmetické vektory nad R, pak jejich součtem rozumíme aritmetický vektor u + v =      u1 u2 ... un      +      v1 v2 ... vn      =      u1 + v1 u2 + v2 ... un + vn      . LINEÁRNÍ ALGEBRA 31 Je-li u = (u1, . . . , un)T aritmetický vektor nad R a t ∈ R reálné číslo, pak tnásobkem vektoru u rozumíme vektor t · u = tu = t      u1 u2 ... un      =      tu1 tu2 ... tun      . Pro dva n-složkové vektory u, v definujeme −u = (−1) · u a u − v = u + (−v) . Vektor −u nazýváme opačný vektor k vektoru u. Příklad 2.4. 2 ·   1 3 7   −   5 2 −2   =   2 6 14   +   −5 −2 2   =   −3 4 16   . Obě operace mají přirozenou geometrickou interpretaci. Na obrázku 30 je znázorněn geometrický význam součtu u + v: vektor v umístíme do koncového bodu vektoru u, součet u + v potom spojuje počátek vektoru u s koncem vektoru v. Ge- u v + =u v u+v Obrázek 30. Součet vektorů ometrický význam násobení vektoru reálným číslem t ukazuje obrázek 31: vektor se prodlouží (pro |t| > 1) nebo zkrátí (pro |t| < 1) a případně ještě převrátí do opačného směru (pro t < 0). Zdůvodnění správnosti této interpretace je na obrázku ?? (TODO) v případě 2–složkových vektorů. OBRAZEK 2.3. Ekvivalentní a elementární úpravy. Soustavy lineárních rovnic lze řešit tak, že postupně eliminujeme neznámé. Používáme k tomu úpravy, které nemění množinu všech řešení soustavy. Takovým úpravám říkáme ekvivalentní úpravy. Definice 2.5. Ekvivalentní úpravou soustavy lineárních rovnic rozumíme úpravu, která nemění množinu všech řešení. Eliminaci neznámé si nejprve ukážeme na příkladu dvou lineárních rovnic o dvou neznámých. 32 LIBOR BARTO A JIŘÍ TŮMA u 2u 0,5u -u Obrázek 31. Násobky vektorů Příklad 2.6. Vyřešíme soustavu x1 + 2x2 = 3 3x1 − x2 = 2 . Budeme eliminovat neznámou x1. Z první rovnice ji vyjádříme pomocí x2: x1 = 3 − 2x2 , a dosadíme do druhé rovnice, první rovnici necháme beze změny: x1 + 2x2 = 3 3(3 − 2x2) − x2 = 2 . Po roznásobení a úpravě druhé rovnice dostaneme soustavu x1 + 2x2 = 3 −7x2 = −7 . Eliminovali jsme tak neznámou x1 z druhé rovnice. Provedené úpravy jsou vratné v tom smyslu, že ze vzniklé soustavy rovnic lze odvodit původní soustavu. Proto mají obě soustavy stejnou množinu všech řešení a provedená úprava je tedy ekvi- valentní. Stejné úpravy soustavy můžeme dosáhnout mnohem rychleji tak, že připočteme (−3)-násobek první rovnice k druhé a první rovnici necháme beze změny. Vyjadřování a dosazování proto nebudeme nadále při eliminaci používat. Vzinklou soustavu můžeme jednoduše dořešit. Z druhé rovnice vypočteme x2 = 1 a dosadíme do první rovnice (znovu eliminace, tentokrát neznámé x2). Dostaneme x1 = 3 − 2x2 = 1 . Původní soustava má právě jedno řešení, a to (1, 1)T . Jinými slovy, množina všech řešení soustavy je 1 1 LINEÁRNÍ ALGEBRA 33 Ukazuje se, že při řešení jakékoliv soustavy lineárních rovnic vystačíme pouze se třemi jednoduchými typy ekvivalentních úprav, které nazýváme elementární úpravy soustavy. Definice 2.7. Elementární úpravy soustavy lineárních rovnic jsou (i) prohození dvou rovnic, (ii) vynásobení nějaké rovnice nenulovým číslem t, (iii) přičtení t-násobku jedné rovnice k jiné rovnici . Dokážeme, že elementární úpravy jsou skutečně ekvivalentní, tj. že nemění množinu všech řešení soustavy lineárních rovnic. Tvrzení 2.8. Elementární úpravy nemění množinu všech řešení soustavy lineárních rovnic. Důkaz. Důkaz dostaneme spojením tří jednoduchých úvah. Napřed si všimneme, že každá elementární úprava změní nejvýše jednu rovnici v soustavě. Potom si ukážeme, že každé řešení (x1, x2, . . . , xn)T původní soustavy je také řešením jediné změněné rovnice v nové soustavě. Dokážeme si to na třetí elementární úpravě, kdy přičítáme t-násobek i-té rovnice k j-té rovnici pro nějaké j = i. Dané řešení (x1, x2, . . . , xn)T původní soustavy splňuje rovnice ai1x1 + ai2x2 + · · · + ainxn = bi aj1x1 + aj2x2 + · · · + ajnxn = bj , splňuje proto také rovnici tai1x1 + tai2x2 + · · · + tainxn = tbi , (tím jsme mimochodem dokázali, že každé řešení původní soustavy je také řešením nové rovnice vzniklé druhou elementární úpravou) a tedy také rovnici (aj1 + tai1)x1 + (aj2 + tai2)x2 + · · · + (ajn + tain)xn = bj + tbi . Vektor (x1, x2, . . . , xn)T je samozřejmě také řešením všech ostatních (nezměněných) rovnic nové soustavy. Označíme S množinu všech řešení původní soustavy a T množinu všech řešení nové soustavy. Právě jsme dokázali, že platí S ⊆ T – žádné řešení původní soustavy se elementárními úpravami neztratí. A nakonec si uvědomíme, že efekt každé elementární úpravy můžeme zvrátit jinou elementární úpravou a dostat zpět původní soustavu. V případě první úpravy stačí prohodit ještě jednou prohozené rovnice. V případě druhé úpravy stačí tutéž rovnici vynásobit inverzním číslem t−1 (proto je nutné předpokládat t = 0). V případě třetí úpravy přičteme (−t) násobek i-té rovnice k j-té rovnici. (To předpokládá, že i-tá rovnice se třetí elementární úpravou nezměnila, proto předpoklad j = i.) Protože původní soustavu dostaneme z nové také jednou elementární úpravou, platí rovněž T ⊆ S, odkud plyne rovnost S = T. Ta říká, že původní a nová soustava mají stejné množiny všech řešení. 2.3.1. Soustava s jedním řešením. Jako další příklad vyřešíme následující soustavu tří lineárních rovnic o třech neznámých x1, x2, x3 pomocí elementárních úprav. 34 LIBOR BARTO A JIŘÍ TŮMA 2x1 + 6x2 + 5x3 = 0 3x1 + 5x2 + 18x3 = 33 2x1 + 4x2 + 10x3 = 16 . Budeme postupně eliminovat neznámé tak, abychom převedli soustavu do tvaru, ze kterého se řešení snadno dopočítá. Tvar, o který se snažíme, je tzv. odstupňovaný tvar. Poněkud nepřesně řečeno odstupňovaný tvar znamená, že v každé rovnici je na začátku více nulových koeficientů než v rovnici předcházející. Nejprve eliminujeme neznámou x1, tj. docílíme toho, že ve všech rovnicích kromě první bude nulový koeficient u x1. Uděláme to tak, že přičteme vhodné násobky vhodné rovnice (vhodná je každá rovnice s nenulovým koeficientem u x1) k ostatním tak, aby z ostatních rovnic neznámá x1 „zmizela , tj. měla v nich nulový koeficient. V našem případě bychom mohli (−3/2)-násobek první rovnice přičíst k druhé a (−1)-násobek první rovnice přičíst ke třetí. Aby nám vycházely hezčí koeficienty, vynásobíme napřed třetí rovnici jednou polovinou: 2x1 + 6x2 + 5x3 = 0 3x1 + 5x2 + 18x3 = 33 x1 + 2x2 + 5x3 = 8 a pak ji prohodíme s první rovnicí: x1 + 2x2 + 5x3 = 8 3x1 + 5x2 + 18x3 = 33 2x1 + 6x2 + 5x3 = 0 . Nyní jsme připraveni k eliminaci neznámé x1. Přičteme (−3)-násobek první rovnice ke druhé: x1 + 2x2 + 5x3 = 8 −x2 + 3x3 = 9 2x1 + 6x2 + 5x3 = 0 . a (−2)-násobek první rovnice ke třetí: x1 + 2x2 + 5x3 = 8 −x2 + 3x3 = 9 +2x2 − 5x3 = −16 . Po eliminaci jedné neznámé již první rovnici nebudeme měnit a budeme se zabývat pouze zbylými rovnicemi. V našem případě již zbývají pouze dvě a k eliminaci neznámé x2 stačí přičíst 2-násobek druhé rovnice ke třetí. x1 + 2x2 + 5x3 = 8 −x2 + 3x3 = 9 x3 = 2 . Tím jsme dokončili eliminační fázi řešení soustavy a můžeme dopočítat řešení tzv. zpětnou substitucí, kdy postupujeme od poslední rovnice k první a postupně LINEÁRNÍ ALGEBRA 35 dosazováním získáváme hodnoty jednotlivých neznámých. V našem případě dostáváme x3 = 2, x2 = −3, x1 = 4. Původní soustava má právě jedno řešení, a to aritmetický vektor x =   x1 x2 x3   =   4 −3 2   . Při řešení soustavy jsme mohli samozřejmě začít eliminací libovolné neznámé, také nebylo nutné třetí rovnici přehazovat s první a násobit ji napřed jednou polo- vinou. Pro řešení velkých soustav tisíců rovnic o tisících neznámých potřebujeme jednotlivé kroky eliminace nějak uspořádat tak, aby je bylo možné použít kdykoliv a bez ohledu na to, jaké jsou koeficienty soustavy. Tomuto postupu se říká Gaussova eliminační metoda nebo zkráceně Gaussova eliminace. 2.3.2. Maticový zápis. K formulaci Gaussovy eliminace a také pro zkrácení zápisu budeme místo soustavy psát její rozšířenou matici. Nejprve zavedeme pojem matice. Definice 2.9. Maticí (nad R) typu m × n rozumíme obdélníkové schéma reálných čísel s m řádky a n sloupci. Zápis A = (aij)m×n znamená, že A je matice typu m × n, která má na pozici (i, j) (tedy v i-tém řádku a j-tém sloupci) číslo aij. Pozor na pořadí indexů – první index označuje řádek, druhý sloupec. Definice 2.10. Maticí soustavy a11x1 + a12x2 + · · · + a1nxn = b1 a21x1 + a22x2 + · · · + a2nxn = b2 . . . am1x1 + am2x2 + · · · + amnxn = bm rozumíme matici koeficientů u neznámých: A = (aij)m×n =      a11 a12 . . . a1n a21 a22 . . . a2n ... ... ... ... am1 am2 . . . amn      Vektor pravých stran je vektor b = (b1, b2, . . . , bm)T a rozšířená matice soustavy je matice typu m × (n + 1) (A | b) =      a11 a12 . . . a1n b1 a21 a22 . . . a2n b2 ... ... ... ... ... am1 am2 . . . amn bm      Rozšířená matice soustavy tedy vznikne tak, že do i-tého řádku zapíšeme koeficienty v i-té rovnici u proměnných x1, . . . , xn a nakonec přidáme pravou stranu. Pro přehlednost se pravé strany někdy oddělují svislou čarou. Rozšířená matice se tím rozdělí na dva bloky. V levém je matice soustavy a v pravém je sloupec pravých stran. 36 LIBOR BARTO A JIŘÍ TŮMA Pro soustavu rovnic z předchozího příkladu 2x1 + 6x2 + 5x3 = 0 3x1 + 5x2 + 18x3 = 33 2x1 + 4x2 + 10x3 = 16 jsou její matice, sloupec pravých stran a rozšířená matice pořadě A =   2 6 5 3 5 18 2 4 10   , b =   0 33 16   , (A | b) =   2 6 5 0 3 5 18 33 2 4 10 16   . Prohození dvou rovnic se v rozšířené matici projeví prohozením odpovídajících dvou řádků, vynásobení i-té rovnice číslem t odpovídá vynásobení i-tého řádku matice číslem t a podobně přičtení t-násobku i-té rovnice k j-té odpovídá přičtení t-násobku i-tého řádku k j-tému řádku. Pro vyznačení, že rozšířená matice vznikla z předchozí ekvivalentní úpravou, používáme symbol ∼. Úpravy provedené u naší soustavy tedy zapíšeme takto:   2 6 5 0 3 5 18 33 2 4 10 16   ∼   1 2 5 8 3 5 18 33 2 6 5 0   ∼ ∼   1 2 5 8 0 −1 3 9 0 2 −5 −16   ∼   1 2 5 8 0 −1 3 9 0 0 1 2   . Zápis úprav se tímto značně zkrátil a zpřehlednil. Místo „soustava rovnic s rozšířenou maticí (A | b) budeme někdy stručně říkat „soustava (A | b) . V dalším textu také budeme často místo slova neznámá používat slovo proměnná. Poznamenejme ještě, že užitím násobení matic z kapitoly 4 lze řešení soustavy rovnic s rozšířenou maticí (A | b) zapsat jako hledání všech aritmetických vektorů x takových, že Ax = b . Maticový popis se hodí nejen ke zkrácení a zpřehlednění, je výhodnější i pro teoretické úvahy. 2.3.3. Jeden parametr. Podívejme se nyní na příklad soustavy tří rovnic o třech neznámých, kdy řešením je přímka. Používáme rovnou maticový zápis.   1 4 3 11 1 4 5 15 2 8 3 16   ∼   1 4 3 11 0 0 2 4 0 0 −3 −6   ∼ ∼   1 4 3 11 0 0 2 4 0 0 0 0   ∼ 1 4 3 11 0 0 2 4 . V první úpravě jsme přičetli (−1)-násobek prvního řádku k druhému a (−2)násobek prvního řádku k třetímu. V druhé úpravě jsme (3/2)-násobek druhého řádku přičetli k třetímu. Nakonec jsme jen vynechali poslední řádek odpovídající rovnici 0x1 + 0x2 + 0x3 = 0, která množinu řešení nemění (vynechání této rovnice LINEÁRNÍ ALGEBRA 37 není elementární úpravou, ale je zřejmě úpravou ekvivalentní). Vzniklá soustava rovnic je v nematicovém zápisu x1 + 4x2 + 3x3 = 11 2x3 = 4 . Z poslední rovnice umíme spočítat x3 = 2 a z první rovnice x1, známe-li ovšem x2. Neznámou x2 lze volit libovolně a budeme jí říkat parametr. Parametr označíme x2 = t a vyjde x1 = 11 − 4x2 − 3x3 = 5 − 4t. Množina všech řešení je tedy      5 − 4t t 2   : t ∈ R    . V našem konkrétním případě lze za parametr zvolit také neznámou x1 = s, dopočítat x2 = 5/4 − s/4 a získat množinu řešení ve tvaru      s 5/4 − s/4 2   : s ∈ R    . Nevýhodou této druhé volby je, že by nefungovala, pokud by byl koeficient u x2 v první rovnici roven nule. Volba parametrů, která funguje vždy, bude diskutována u následujícího příkladu a pak v plné obecnosti v části 2.4. Vraťme se ale k množině řešení {(5 − 4t, t, 2)T : t ∈ R}. Vektor (5 − 4t, t, 2)T lze pomocí sčítání aritmetických vektorů a jejich násobení reálnými čísly vyjádřit také jako   5 − 4t t 2   =   5 − 4t 0 + t 2 + 0t   =   5 0 2   +   −4t t 0t   =   5 0 2   + t   −4 1 0   . Takže množinu všech řešení lze napsat ve tvaru      5 0 2   + t   −4 1 0   : t ∈ R    . Tento tvar je lepší než předchozí. Vidíme z něj totiž ihned, že řešením je přímka procházející bodem (5, 0, 2)T se směrovým vektorem (−4, 1, 0)T . 2.3.4. Více parametrů. Podíváme se na soustavu s více parametry, ze které již snad bude vidět obecný postup. Soustava bude mít pět neznámých x1, x2, x3, x4, x5, její řešení budou 5-složkové aritmetické vektory, které odpovídají bodům (nebo vektorům) v pětidimenzionálním prostoru. Vizuální představa proto není dost dobře možná. Elementárními úpravami rozšířené matice soustavy dostaneme   0 0 1 0 2 −3 2 4 −1 6 2 1 1 2 −1 3 0 2   ∼   1 2 −1 3 0 2 2 4 −1 6 2 1 0 0 1 0 2 −3   ∼   1 2 −1 3 0 2 0 0 1 0 2 −3 0 0 1 0 2 −3   ∼   1 2 −1 3 0 2 0 0 1 0 2 −3 0 0 0 0 0 0   . 38 LIBOR BARTO A JIŘÍ TŮMA V první úpravě jsme prohodili řádky tak, aby byl na prvním místě v prvním řádku nenulový prvek. V druhé úpravě jsme (−2)-násobek prvního řádku přičetli ke druhému. Ve třetí úpravě jsme (−1)-násobek druhého řádku přičetli ke třetímu. Soustava je teď v odstupňovaném tvaru. K volbě parametrů nejprve určíme pivoty, to jsou první nenulové prvky v každém řádku. Proměnné odpovídající sloupcům s pivotem se nazývají bázové proměnné. V našem případě jsou jimi x1 a x3. Zbylé proměnné jsou tzv. volné proměnné, v našem případě x2, x4, x5. Volným proměnným také říkáme parametry, neboť jejich hodnoty můžeme zvolit libovolně: x2 = t2, x4 = t4, x5 = t5 pro nějaká čísla t2, t4, t5 ∈ R. Hodnoty bázových proměnných x1, x3 pak dopočteme zpětnou substitucí. Tím dostaneme x3 = −3 − 2t5 a x1 = 2 − 2t2 + x3 − 3t4 = −1 − 2t2 − 3t4 − 2t5. Množinu všech řešení soustavy tak můžeme zapsat jako množinu 5-složkových aritmetických vektorů          −1 − 2t2 − 3t4 − 2t5 t2 −3 − 2t5 t4 t5       : t2, t4, t5 ∈ R    , kterou pomocí operací s aritmetickými vektory zapíšeme v parametrickém tvaru          −1 0 −3 0 0       + t2       −2 1 0 0 0       + t4       −3 0 0 1 0       + t5       −2 0 −2 0 1       : t2, t4, t5 ∈ R    . Později si ukážeme o něco rychlejší způsob, jak najít parametrické vyjádření množiny všech řešení soustavy lineárních rovnic. 2.4. Gaussova eliminační metoda. Nyní představíme obecnou metodu řešení soustav lineárních rovnic. 2.4.1. Odstupňovaný tvar. Dosud jsme při řešení soustav lineárních rovnic vystačili s ekvivalentními úpravami tří typů. A protože místo rovnic píšeme rozšířenou matici soustavy, provádíme úpravy řádků této matice. Proto jim říkáme elementární řádkové úpravy. Definujeme je pro jakoukoliv matici. Definice 2.11. Elementárními řádkovými úpravami matice rozumíme následující tři typy úprav: (i) prohození dvou řádků matice, (ii) vynásobení jednoho z řádků matice nenulovým číslem, (iii) přičtení libovolného násobku jednoho řádku k jinému řádku. Úpravu (i), tedy prohození dvou řádků matice, lze docílit posloupností zbylých dvou úprav, viz cvičení. Gaussova eliminační metoda je založená na převodu jakékoliv matice do řádkově odstupňovaného tvaru pomocí elementárních řádkových úprav. Matice C = (cij)m×n je v odstupňovaném tvaru, pokud v každém nenulovém řádku matice C kromě prvního je na počátku (tj. zleva) více nul, než na počátku řádku nad ním. Z této definice ihned plyne, že nad žádným nenulovým řádkem nemůže být nulový řádek. V matici v řádkově odstupňovaném tvaru tak jsou všechny nenulové řádky v horní části matice a teprve pod nimi jsou řádky nulové. LINEÁRNÍ ALGEBRA 39 0 1 k1 k2 kr n 1 r m ? Obrázek 32. Matice v řádkově odstupňovaném tvaru Symbolicky můžeme definovat matici v řádkově odstupňovaném tvaru násle- dovně. Definice 2.12. Matice C = (cij)m×n je v řádkově odstupňovaném tvaru, pokud existuje celé číslo r ∈ {0, 1, . . . , m} takové, že řádky r +1, . . . , m jsou nulové, řádky 1, . . . , r jsou nenulové, a platí k1 < k2 < · · · < kr, kde ki je index sloupce, ve kterém je první nenulové číslo v i-tém řádku (tedy platí ci1 = ci2 = · · · = ci,ki−1 = 0 a ci,ki = 0; ještě jinak, ki = min{l : cil = 0}). Prvkům ci,ki , i = 1, 2, . . . , r, říkáme pivoty. Soustava lineárních rovnic je v řádkově odstupňovaném tvaru, pokud její rozšířená matice je v řádkově odstupňovaném tvaru. Lze také definovat sloupcově odstupňovaný tvar matice. Ten ale nebudeme používat, proto budeme místo řádkově odstupňovaný tvar říkat stručněji odstupňovaný tvar. Příklad 2.13. Matice 0 0 0 0 0 0 ,   1 7 2 0 3 1 0 0 7   ,       0 1 0 3 4 0 0 0 0 2 0 0 −1 0 0 0 0 0 4 2 3 0 0 0 0 0 0 10 0 0 0 0 0 0 0       jsou v odstupňovaném tvaru. Matice 0 0 0 0 0 1 ,   1 7 2 0 0 1 0 0 7   ,   2 3 1 0 3 1 0 2 0   v odstupňovaném tvaru nejsou. Gaussova eliminace převádí každou matici A = (aij)m×n do odstupňovaného tvaru posloupností elementárních řádkových úprav. Eliminace jednoho sloupce (jedné proměnné) proběhne následovně. 40 LIBOR BARTO A JIŘÍ TŮMA 1. Najdeme první nenulový sloupec, jeho index označíme k1. Pokud takový sloupec neexistuje, je matice A v řádkově odstupňovaném tvaru (neboť je nulová), jsme tedy hotovi. 2. Pokud je a1k1 = 0, prohodíme první řádek s libovolným řádkem i, ve kterém je aik1 = 0. 3. Pro každé i = 2, 3, . . . , m přičteme (−aik1 /a1k1 )-násobek prvního řádku k i-tému řádku. Všimněte si, že po provedení kroku 2. máme a1k1 = 0 a po provedení kroku 3 máme a2k1 = a3k1 = · · · = amk1 = 0. Dále postup opakujeme s maticí bez prvního řádku. V dalším kroku tedy najdeme první sloupec s indexem k2, pro který je alespoň jedno z čísel a2k2 , . . . , amk2 nenulové, řekněme ajk2 = 0, j ≥ 2. Prohodíme druhý a j-tý řádek a pak pro každé i = 3, 4, . . . , m přičteme (−aik2 /a2k2 )-násobek prvního řádku k i-tému řádku. Gaussova eliminace končí buď v bodě 1, nebo ve chvíli, kdy dojdou nenulové řádky. To je i případ, kdy má matice A pouze jeden nenulový řádek. Náš popis Gaussovy eliminace není jednoznačný algoritmus, protože nepředepisujeme, který řádek prohodíme s prvním řádkem v kroku 2. Různé implementace Gaussovy eliminace to řeší různým způsobem, což je důvod, proč žádný konkrétní způsob nepředepisujeme. Více o tom v části 2.6 o numerické stabilitě. Věta 2.14. Gaussova eliminace převede každou matici A = (aij) typu m × n do odstupňovaného tvaru. Důkaz. Důkaz provedeme indukcí podle počtu řádků matice A, tj. podle m. Pro m = 1 Gaussova eliminace nic nedělá a matice je vždy v odstupňovaném tvaru, takže tvrzení platí. Předpokládejme, že věta platí, pokud má matice méně než m řádků, a vezměme matici A s m řádky. Pokud ji tvoří samé nuly, pak se eliminace zastaví v bodě 1. a věta platí, protože nulová matice je v odstupňovaném tvaru. Předpokládejme tedy, že tomu tak není. Nechť k je index prvního nenulového sloupce v matici soustavy. Označme B matici po provedení eliminace k-tého sloupce. Z matice B vynecháme první řádek a na matici se zbylými m − 1 řádky provedeme Gaussovu eliminaci. Podle indukčního předpokladu dostaneme matici C v odstupňovaném tvaru. První nenulový sloupec v matici C má index l > k, neboť první nenulový sloupec v celé matici A měl index k a všechny prvky v k-tém sloupci matice B pod nenulovým prvkem v prvním řádku jsou nulové. Vrátíme-li do matice C nahoru první řádek matice B, dostaneme tak opět matici v odstupňovaném tvaru. Tato matice je výsledkem Gaussovy eliminace na původní matici A. Platí dokonce více – počet r nenulových řádků v matici C je maticí A určený jednoznačně, tj. nezávisí na tom, jak jsme Gaussovu eliminaci použili. Stejně tak jsou maticí A jednoznačně určené indexy k1, k2, . . . , kr sloupců v matici C, které obsahují pivoty. Dokážeme si to později, příslušnou terminologii zavedeme už nyní. Definice 2.15. Číslo r, tj. počet nenulových řádků v matici C v odstupňovaném tvaru, kterou dostaneme z matice A Gaussovou eliminací, se nazývá hodnost matice A a značí se r(A) nebo rank(A). Sloupce v matici A s indexy k1, k2, . . . , kr z definice 2.12 nazýváme bázové sloupce matice A. LINEÁRNÍ ALGEBRA 41 0 1 k k+1 n 1 2 m ? Obrázek 33. Gaussova eliminace po prvním cyklu 2.4.2. Eliminační fáze řešení soustavy lineárních rovnic. Máme-li řešit soustavu m lineárních rovnic o n neznámých x1, . . . , xn s rozšířenou maticí (A | b), použijeme Gaussovu eliminaci na matici (A | b). Výsledkem je nějaká matice (C | d) v řádkově odstupňovaném tvaru, ze které také můžeme určit bázové sloupce. Je-li sloupec pravých stran bázový, je poslední nenulový řádek matice (C | d) tvaru (0 0 . . . 0 | dr), kde pivot dr = 0. Tento řádek odpovídá rovnici 0x1 + 0x2 + · · · + 0xn = dr , která nemá žádné řešení. Původní soustava (A | b) je proto také neřešitelná. Pokud sloupec pravých stran není bázový sloupec matice (A | b), tj. platí-li 1 ≤ k1 < k2 < · · · < kr ≤ n, ukážeme že soustava (A | b) je řešitelná a najdeme všechna řešení pomocí zpětné substituce. 2.4.3. Zpětná substituce. Označíme P množinu indexů těch sloupců od 1 do n, které nejsou bázové, tj. P = {1, 2, . . . , n} \ {k1, . . . , kr} . Množina P může být i prázdná, pokud je každý sloupec s výjimkou sloupce pravých stran bázový. Proměnným xp, p ∈ P, říkáme volné proměnné (nebo též parametry). Ostatní proměnné, tj. proměnné xk1 , xk2 , . . . , xkr jsou bázové proměnné. Nyní nahlédneme, že každá volba hodnot volných proměnných dává právě jedno řešení soustavy (A | b). Matici (C | d) po provedení Gaussovy eliminace odpovídá soustava lineárních rovnic ve tvaru c1,k1 xk1 + c1,k1+1xk1+1 + · · · + c1,nxn = d1 c2,k2 xk2 + c2,k2+1xk2+1 + · · · + c2,nxn = d2 ... cr,kr xkr + cr,kr+1xkr+1 + · · · + cr,nxn = dr , 42 LIBOR BARTO A JIŘÍ TŮMA což je ekvivalentní soustavě rovnic xk1 = c−1 1,k1 (d1 − c1,k1+1xk1+1 − . . . − c1,nxn) xk2 = c−1 2,k2 (d2 − c2,k2+1xk2+1 − . . . − c2,nxn) ... xkr = c−1 r,kr (dr − cr,kr+1xkr+1 − . . . − cr,nxn) . Poslední rovnice jednoznačně určuje hodnotu bázové proměnné xkr pomocí hodnot volných proměnných – parametrů. Po dosazení za xkr do předposlední rovnice jednoznačně spočteme xkr−1 pomocí hodnot volných proměnných – parametrů, atd. Tomuto dopočítávání hodnot bázových proměnných říkáme zpětná substituce. Dokázali jsme tak následující pozorování. Pozorování 2.16. Pokud sloupec pravých stran rovnice (A | b) není bázový, pak pro libovolná reálná čísla xp ∈ R, p ∈ P, existují jednoznačně určená reálná čísla xk1 , xk2 , . . . , xkr ∈ R taková, že aritmetický vektor (x1, x2, . . . , xn)T je řešením soustavy (A | b). Nakonec podobně jako v částech 2.3.3 a 2.3.4 vyjádříme množinu všech řešení soustavy (A | b) ve tvaru S =    u + p∈P tpvp : tp ∈ R pro každé p ∈ P    , kde u a vp pro p ∈ P jsou vhodné n-složkové aritmetické vektory. Nebylo by těžké nahlédnout, že řešení lze skutečně zapsat v tomto tvaru, ale důkaz odložíme na dobu, kdy budeme mít vhodné pojmy a aparát. Dosavadní poznatky o řešení soustav lineárních rovnic si shrneme do následující věty. Věta 2.17. Množina všech řešení řešitelné soustavy (A | b) o n neznámých je rovná množině S =    u + p∈P tpvp : tp ∈ R pro každé p ∈ P    pro vhodné n-složkové aritmetické vektory u a vp, p ∈ P. Připomeňme ještě geometrický význam: S je nějaký “rovný útvar” (bod, přímka, rovina, . . . ), u je jeden z bodů v S a vp, p ∈ P jsou směrové vektory. 2.4.4. Shrnutí. Obecnou soustavu m lineárních rovnic o n neznámých lze vyřešit následujícím postupem. 1. Gaussovou eliminací převedeme soustavu na ekvivalentní soustavu v odstupňovaném tvaru. 2. Rozhodneme, zda soustava má řešení. Pokud ne, tj. pokud existuje rovnice typu 0x1+0x2+· · ·+0xn = d = 0, skončíme s tím, že soustava je neřešitelná. 3. Určíme volné proměnné (parametry) – tj. proměnné odpovídající sloupcům, kde nejsou pivoty. Množinu indexů těchto sloupců označíme P. LINEÁRNÍ ALGEBRA 43 4. Množinu všech řešení vyjádříme tvaru    u + p∈P tpvp : tp ∈ R pro každé p ∈ P    pro vhodné n-složkové aritmetické vektory u a vp, p ∈ P. Všimněte si, že počet volných proměnných je roven číslu n − r, kde r je počet nenulových řádků matice v odstupňovaném tvaru, kterou jsme dostali z rozšířené matice řešitelné soustavy (A | b) Gaussovou eliminací. Již dříve jsme definovali, že toto číslo se rovná hodnosti rank(A | b) rozšířené matice soustavy. Zatím sice neumíme dokázat, že hodnost matice nezávisí na tom, jaké ekvivalentní úpravy používáme k jejímu převodu do odstupňovaného tvaru, nicméně tomu tak je. Intuitivně to lze zdůvodnit tím, že v popisu množiny řešení máme n−r parametrů, takže množina řešení je (n − r)-dimenzionální útvar, přičemž tato dimenze samozřejmě závisí jen na původní soustavě, nikoliv na konkrétním odstupňovaném tvaru. Na popsaný postup řešení rovnic se dá také dívat takto: na začátku máme rovnicový popis „rovného útvaru v n-rozměrném prostoru, v bodě 1. nalezneme přehlednější rovnicový popis stejného útvaru a v bodě 4. nalezneme jeho parametrický popis. V další části této kapitoly se budeme zabývat třemi souvisejícími otázkami. • Jak rozumět geometrii soustav lineárních rovnic? • Co se může přihodit, budeme-li soustavy lineárních rovnic řešit na počítači? • Jak dlouho to bude trvat? 2.5. Geometrie soustav lineárních rovnic. 2.5.1. Řádkový pohled na soustavy lineárních rovnic. V první opakovací kapitole jsme si ukázali, že v případě soustavy lineárních rovnic o dvou neznámých x1, x2 určuje každá rovnice nějakou přímku v rovině, pokud je aspoň jeden z koeficientů u x1 a x2 nenulový. Množina všech řešení je potom průnikem těchto přímek. Z toho je intuitivně jasné, jak může vypadat množina všech řešení. • Celá rovina. To se stane v případě, že všechny rovnice mají triviální tvar 0x1 + 0x2 = 0. • Přímka. To se stane v případě, že všechny (netriviální) rovnice popisují tutéž přímku, neboli všechny rovnice jsou násobkem jedné z rovnic. • Bod. Nastane v případě, že rovnice soustavy popisují alespoň dvě různé přímky a všechny tyto přímky procházejí jedním bodem. • Prázdná množina. Nastane v případě, že dvě rovnice určují rovnoběžné přímky, nebo rovnice určují tři přímky neprocházející jedním bodem, nebo jedna z rovnic je triviálně nesplnitelná, například 0x1 + 0x2 = 123. V případě soustavy lineárních rovnic o třech neznámých x1, x2, x3 je každé řešení nějaký bod v trojrozměrném prostoru. Každá rovnice s aspoň jedním nenulovým koeficientem u neznámých x1, x2, x3 určuje nějakou rovinu v prostoru. Množina všech řešení soustavy je tedy průnikem nějakých rovin. Pro množinu všech řešení tedy máme následující možnosti, už bez obrázků. • Celý prostor. To nastane v triviálním případě, kdy jsou všechny rovnice v soustavě tvaru 0x1 + 0x2 + 0x3 = 0. • Rovina. • Přímka. 44 LIBOR BARTO A JIŘÍ TŮMA Obrázek 34. Geometrie jednoznačně řešitelné soustavy o dvou neznámých Obrázek 35. Geometrické důvody neřešitelnosti soustavy o dvou neznámých • Bod. • Prázdná množina. Tento případ nastane, pokud dvě rovnice určují rovnoběžné roviny, nebo jsou roviny sice po dvou různoběžné, ale nemají žádný společný bod (v tom případě musí být aspoň tři), a nebo je v soustavě triviálně neřešitelná rovnice, například 0x1 + 0x2 + 0x3 = 123. Jedna netriviální lineární rovnice o dvou neznámých odpovídá přímce v rovině. Jedna netriviální lineární rovnice o třech neznámých odpovídá rovině v třídimenzionálním prostoru. Na základě analogie můžeme tvrdit, že jedna netriviální rovnice o čtyřech neznámých odpovídá 3-dimenzionálnímu rovnému útvaru ve 4dimenzionálním prostoru. A s ještě větší odvahou můžeme prohlásit, že množina LINEÁRNÍ ALGEBRA 45 všech řešení jedné netriviální rovnice o n neznámých odpovídá nějakému (n − 1)dimenzionálnímu rovnému útvaru umístěnému v n-dimenzionálním prostoru. Takovému útvaru říkáme nadrovina v n-dimenzionálním prostoru. Množina všech řešení soustavy lineárních rovnic o n neznámých pak odpovídá průniku nějakých nadrovin v n-dimenzionálním prostoru. 2.5.2. Sloupcový geometrický pohled. Ukážeme si ještě jeden geometrický pohled na soustavy lineárních rovnic. Tento pohled bude v dalším textu nabývat na větším významu než původní pohled přes rovnice přímek, rovin, atd. Vezměme si jednoduchou soustavu dvou rovnic o dvou neznámých −x1 + 3x2 = 1 2x1 − x2 = 3 . Rozšířená matice této soustavy je −1 3 1 2 −1 3 . Při řešení soustavy hledáme hodnoty proměnných x1, x2 tak, aby platila rovnost dvousložkových vektorů −x1 + 3x2 2x1 − x2 = 1 3 . Všimněme si, že v prvním sloupci matice soustavy jsou koeficienty u proměnné x1 a ve druhém sloupci jsou koeficienty u proměnné x2. Těmto vektorům říkáme sloupcové vektory matice soustavy. Levou stranu poslední rovnosti můžeme pomocí sloupcových vektorů přepsat ve tvaru −x1 + 3x2 2x1 − x2 = x1 −1 2 + x2 3 −1 a celou soustavu jako x1 −1 2 + x2 3 −1 = 1 3 . Na obrázku je geometrické znázornění této soustavy. Máme dány dva vektory a1 = (−1, 2)T a a2 = (3, −1)T , a hledáme nějaké jejich násobky tak, abychom se součtem těchto násobků „trefili do bodu se souřadnicemi (1, 3)T , což je aritmetický vektor b pravých stran soustavy. Na dalším obrázku pak vidíme „geometrické řešení této soustavy. Platí totiž 2 −1 2 + 1 3 −1 = 1 3 , řešením je aritmetický vektor (2, 1)T . Ze sloupcového pohledu na tuto soustavu můžeme získat ještě více. Levá strana soustavy může nabývat hodnot x1 −1 2 + x2 3 −1 : x1, x2 ∈ R . To je parametrické vyjádření roviny. Z geometrického náhledu vidíme (i když to ještě neumíme efektivně dokázat), že vhodnou volbou násobků vektorů a1 = (−1, 2)T a 46 LIBOR BARTO A JIŘÍ TŮMA a1 a2 b x1 x2 Obrázek 36. Sloupcový pohled na soustavu o dvou neznámých a1 a2 b2 a1 a2 x1 x2 Obrázek 37. Geometrické řešení soustavy o dvou neznámých a2 = (3, −1)T se můžeme trefit do jakéhokoliv bodu roviny a navíc právě jedním způsobem. Tento poznatek můžeme zformulovat také tak, že soustava −1 3 b1 2 −1 b2 . LINEÁRNÍ ALGEBRA 47 je řešitelná pro jakoukoliv pravou stranu b = (b1, b2)T a řešení je vždy určené jednoznačně. Ještě zajímavější je případ tří lineárních rovnic o dvou neznámých, např. x1 + 3x2 = −5 2x1 + 2x2 = −2 3x1 + x2 = 1 . Rozšířená matice této soustavy je   1 3 −5 2 2 −2 3 1 1   . Soustavu můžeme pomocí sloupcových vektorů rozšířené matice zapsat jako x1   1 2 3   + x2   3 2 1   =   −5 −2 1   . Tentokrát hledáme koeficienty x1 a x2, kterými je třeba vynásobit sloupcové vektory a1 = (1, 2, 3)T a a2 = (3, 2, 1)T tak, abychom se aritmetickým vektorem x1a1 +x2a2 trefili do bodu se souřadnicemi (−5, −2, 1)T . Množina {x1a1 + x2a2 : x1, x2 ∈ R} je parametrické vyjádření roviny v trojrozměrném prostoru (která prochází bodem (0, 0, 0)T ). Můžeme se proto trefit pouze do bodů, které leží v této rovině. Pokud vektor b = (b1, b2, b3)T v rovině {x1a1 + x2a2 : x1, x2 ∈ R} neleží, soustava   1 3 b1 2 2 b2 3 1 b3   není řešitelná. Pokud vektor b v této rovině leží, soustava má řešení a navíc je určené jednoznačně. Soustava je tedy řešitelná právě když vektor pravých stran b leží v rovině s parametrickým vyjádřením {x1a1 + x2a2 : x1, x2 ∈ R}. V našem konkrétním případě vektoru (−5, −2, 1)T platí 1 ·   1 2 3   − 2 ·   3 2 1   =   −5 −2 1   , což dokazuje nejen to, že soustava s pravou stranou (−5, −2, 1)T je řešitelná, ale také, že vektor (−5, −2, 1)T leží v rovině    x1   1 2 3   + x2   3 2 1   : x1, x2 ∈ R    . Abychom zjednodušili další vyjadřování, zavedeme následující zcela základní definici. Jde o jednu z nejdůležitějších definic celého dvousemestrálního kurzu lineární algebry. 48 LIBOR BARTO A JIŘÍ TŮMA Definice 2.18. Jsou-li u1, u2, . . . , un m-složkové vektory a a1, a2, . . . , an reálná čísla, pak definujeme lineární kombinaci vektorů u1, u2, . . . , un s koeficienty a1, a2, . . . , an jako m-složkový vektor a1u1 + a2u2 + · · · + anun . Soustavu a11x1 + a12x2 + · · · + a1nxn = b1 a21x1 + a22x2 + · · · + a2nxn = b2 ... am1x1 + am2x2 + · · · + amnxn = bm pak můžeme přepsat do tvaru x1      a11 a21 ... am1      + x2      a12 a22 ... am2      + · · · + xn      a1n a2n ... amn      =      b1 b2 ... bm      . Na levé straně máme lineární kombinaci sloupcových vektorů matice soustavy s neznámými koeficienty x1, x2, . . . , xn. Soustava je řešitelná právě když lze sloupec pravých stran vyjádřit jako lineární kombinaci sloupcových vektorů matice soustavy. Vektory koeficientů každé takové lineární kombinace pak tvoří množinu všech řešení soustavy. 2.5.3. Význam obou geometrických pohledů na soustavu lineárních rovnic. Řádkový pohled nám dává představu, jak může vypadat množina všech řešení soustavy lineárních rovnic o n-neznámých. Množina všech řešení jedné rovnice je nadrovina (za předpokladu, že aspoň jeden z koeficientů u neznámých je nenulový) v n-dimenzionálním prostoru. Množina všech řešení soustavy m-lineárních rovnic o n neznámých je pak průnikem nějakých nadrovin. Naproti tomu sloupcový pohled nám dává geometrickou představu, kdy je soustava lineárních rovnic Ax = b řešitelná. Je to právě když lze sloupcový vektor pravých stran b vyjádřit jako lineární kombinaci sloupcových vektorů matice soustavy A. Geometrický význam této podmínky v případě soustavy dvou nebo tří rovnic o dvou neznámých jsme si ukázali výše. 2.6. Praktické problémy při numerickém řešení velkých soustav rovnic. 2.6.1. Numerická stabilita. Při řešení soustav lineárních rovnic na počítači často reprezentujeme reálná čísla s nějakou předem určenou přesností. Takových čísel, které můžeme reprezentovat v počítači pomocí plovoucí desetinné čárky, je ale pouze konečně mnoho, jakkoliv obrovský ten počet je. Může se přihodit, že výsledek nějaké aritmetické operace se dvěma reprezentovatelnými čísly už reprezentovat nejde a počítač jej musí zaokrouhlit. Problémem je, že zaokrouhlování koeficientů není ekvivalentní úprava soustavy. Na konci algoritmu tak sice dostaneme přesné řešení, ale jiné soustavy. Otázkou obrovské důležitosti je jak moc se liší přesné řešení soustavy pozměněné zaokrouhlováním od přesného řešení původní soustavy. Těmito otázkami se mimo jiné zabývá numerická lineární algebra. Základní poznatek zní, že Gaussova eliminace je obecně LINEÁRNÍ ALGEBRA 49 numericky nestabilní. To znamená, že malé zaokrouhlovací chyby mohou vést k výsledku, který se velmi liší od správného. Uvažujme například soustavu −10−4 1 2 1 1 3 , jejímž přesným řešením je 1 1,0001 , 2,0003 1,0001 T . Pokud použijeme aritmetiku s třemi platnými ciframi, Gaussova eliminace nám dá −10−4 1 2 1 1 3 ∼ −10−4 1 2 0 104 2 · 104 a zpětnou substitucí dostaneme řešení (0, 2)T , které se od správného liší významně v první složce. Problémem je, že jsme při úpravě přičítali 104 -násobek prvního řádku k druhému a číslo 104 je tak velké, že smaže pro danou soustavu podstatný rozdíl mezi koeficientem 1 u proměnné x2 a pravou stranou 3 ve druhé rovnici. Tomuto problému lze někdy předejít tak, že vždy před eliminací jedné proměnné prohodíme řádky tak, aby pivot byl co největší (v absolutní hodnotě). Tomu se říká částečná pivotace. V našem příkladu bychom napřed prohodili oba řádky a teprve pak eliminovali první sloupec: −10−4 1 2 1 1 3 ∼ 1 1 3 −10−4 1 2 ∼ 1 1 3 0 1 2 . Dostaneme tak řešení (1, 2)T , které se rovná správnému řešení zaokrouhlenému na tři desetinná místa. Lépe to se zaokrouhlováním na tři desetinná místa nejde. Částečná pivotace ale nezamezí všem problémům s numerickou stabilitou. Příkladem může být soustava −10 105 2 · 105 1 1 3 , která vznikne z předchozí vynásobením první rovnice číslem 105 . Řešení při použití aritmetiky se třemi platnými ciframi vyjde opět (0, 2)T a částečná pivotace tomuto problému nezamezí (řádky jsou již od začátku ve správném pořadí). U tohoto příkladu je problém ve značném rozdílu ve velikosti čísel v prvním řádku a druhém řádku. Těmto i dalším typům problémů lze zamezit úplnou pivotací, při níž prohodíme před každým cyklem eliminace zbylé řádky a sloupce tak, aby pivot byl co největší. Úplná pivotace je numericky stabilní v každém případě. Při prohození sloupců nesmíme zapomenout na to, že vlastně prohazujeme proměnné. Místo první soustavy bychom tak řešili soustavu 1 −10−4 2 1 1 3 . Gaussova eliminace se zaokrouhlováním na tři platná místa by proběhla následovně: 1 −10−4 2 1 1 3 ∼ 1 −10−4 2 0 1 1 50 LIBOR BARTO A JIŘÍ TŮMA a zpětnou substitucí bychom dostali x1 = 1 (prohazovali jsme sloupce, tak musíme také prohodit proměnné) a x2 = 2, což je tak blízko přesnému řešení původní soustavy jak je to jenom při zaokrouhlování na tři platná místa možné. Prohledávání matice v každém cyklu tak, aby byl pivot co největší, je časově hodně náročné, proto se mu algoritmy pro numerické řešení velkých soustav lineárních rovnic snaží vyhnout, pokud to jenom trochu lze. V takovém případě se v eliminační fázi používají jiné algoritmy, které nejsou založené na Gaussově eliminaci, jsou ale numericky stabilnější. 2.6.2. Špatně podmíněné soustavy. Jiný typ problémů ukážeme na soustavě 0,835 0,667 0,168 0,333 0,266 0,067 , jejíž řešením je (1, −1)T . Pokud číslo 0,067 jen nepatrně změníme na hodnotu 0,066, řešení se změní na (−666, 834)T . Důvodem tohoto drastického rozdílu je, že přímky určené rovnicemi jsou téměř rovnoběžné, takže malá změna jedné z nich může posunout průnik daleko od původního. V našem příkladu se směrnice obou přímek liší zhruba o 3,6 · 10−6 . Soustavám, jejichž řešení je velmi citlivé na malou změnu koeficientů, říkáme špatně podmíněné. U špatně podmíněných soustav nám nepomůže ani numericky velmi stabilní algoritmus, protože koeficienty jsou v praxi většinou získány měřením, takže jsou zatíženy chybou. Je proto zapotřebí změnit matematický model, který vedl k soustavě, navrhnout jiný experiment, apod., abychom se vyhnuli špatně podmíněným soustavám. 2.7. Jak dlouho to bude trvat. Máme-li řešit velkou soustavu lineárních rovnic na počítači, potřebujeme nějakou představu, jak dlouho bude výpočet trvat – vteřinu, den, měsíc, do vánoc? Doba výpočtu samozřejmě závisí na konstrukci počítače. Nicméně jakousi představu nám může dát odhad počtu aritmetických operací, které je třeba při výpočtu provést. Počet operací se obvykle udává v jednotce flop, což je zkratka od floating-point operation používaná i v češtině. Každá z operací sčítání, odčítání, násobení a dělení dvou čísel představuje jeden flop. My budeme raději používat termín aritmetická operace. Případné prohazování řádků nepočítáme. Pro zjednodušení se omezíme na řešení soustav n lineárních rovnic o n neznámých, které mají jednoznačné řešení. To znamená, že množina všech řešení nemá žádný parametr, neboli že každá proměnná je bázová. Po Gaussově eliminaci jsou proto pivoty na místech s indexy 11, 22, 33, . . . , nn. Ve skutečnosti toto je případ, který vyžaduje nejvíce aritmetických operací. Zvlášť spočteme počet aritmetických operací nutných pro Gaussovu eliminaci a zvlášť pro zpětnou substituci. Některé kroky výpočtu si můžete doplnit jako cvičení. Při Gaussově eliminaci používáme aritmetické operace pouze v kroku 3. Spočítáme, kolik aritmetických operací je maximálně třeba pro krok 3., tj. pro jeden cyklus Gaussovy eliminace. Chceme-li vynulovat první prvek ve druhém řádku, musíme napřed spočítat podíl a21/a11, to je jedno dělení. Pak musíme spočítat n − 1 součinů (a21/a11)a1i pro i = 2, 3, . . . , n a jeden součin (a21/a11)b1 pro pravou stranu. To je celkem nejvýše n+1 násobení/dělení. Může jich být méně, pokud je některé z čísel a1inebo bi rovné 0. LINEÁRNÍ ALGEBRA 51 1 2 n n+1 1 2 n Obrázek 38. Rozšířená matice soustavy po Gaussově eliminaci Nakonec spočteme n − 1 součtů −(a21/a11)a1i + a2i pro i = 2, 3, . . . , n. Pro i = 1 jej počítat nemusíme, protože předem víme, že vyjde 0. Nakonec přidáme ještě jeden součet −(a21/a11)b1 + b2 na pravé straně. Celkem potřebujeme nejvýše n sčítání/odčítání. Dohromady vynulování prvku a21 pod pivotem na místě (1, 1) v matici typu n×(n+1) vyžaduje nejvýše n+1 násobení/dělení a n sčítání/odčítání. Je-li a21 = 0, nemusíme tyto operace vůbec provádět. Musíme vynulovat všech n − 1 prvků v prvním sloupci, to znamená, že na třetí krok Gaussovy eliminace potřebujeme nejvýše (n − 1)(n + 1) = n2 − 1 násobení/dělení a (n − 1)n = n2 − n sčítání/odčítání . Druhý cyklus Gaussovy eliminace provádíme s maticí bez prvního řádku a nemusíme se starat o první sloupec, který už je celý nulový. Potřebujeme na něj nejvýše (n − 1)2 − 1 násobení/dělení a (n − 1)2 − (n − 1) sčítání/odčítání . Ve třetím cyklu je to nejvýše (n − 2)2 − 1 násobení/dělení a (n − 2)2 − (n − 2) sčítání/odčítání, atd. Poslední cyklus Gaussovy eliminace nuluje prvek pod pivotem na místě (n−1, n−1) a stojí nás nejvýše 22 − 1 násobení/dělení a 22 − 2 sčítání/odčítání . Dohromady tak celá Gaussova eliminace vyžaduje nejvýše n k=2 k2 − (n − 1) násobení/dělení . 52 LIBOR BARTO A JIŘÍ TŮMA Nyní využijeme vzorečky, jejich důkaz (matematickou indukcí) je ponechán jako cvičení: n k=1 k2 = n3 3 + n2 2 + n 6 a n k=1 k = n2 2 + n 2 . Gaussova eliminace vyžaduje nejvýše n k=2 k2 − (n − 1) = n3 3 + n2 2 + n 6 − 1 − (n − 1) = n3 3 + n2 2 − 5n 6 násobení/dělení . Počet operací +/− je pak nejvýše n k=2 k2 − n k=2 k = n3 3 + n2 2 + n 6 − 1 − n2 2 + n 2 − 1 = n3 3 − n 3 . Výpočet náročnosti Gaussovy eliminace si shrneme do následujícího tvrzení. Tvrzení 2.19. Gaussova eliminace rozšířené matice soustavy n lineárních rovnic o n neznámých vyžaduje nejvýše 2n3 3 + n2 2 − 7n 6 ≈ 2n3 3 aritmetických operací. Pro velká n je první člen dominantní. Gaussova eliminace soustavy s 10000 rovnicemi o 10000 neznámých tak vyžaduje zhruba (2/3)1012 ≈ (2/3)240 aritmetických operací (neboť 103 ≈ 210 ). Pro odhad náročnosti zpětné substituce si připomeňme tvar soustavy po proběhlé Gaussově eliminaci v případě, že pivoty jsou na místech 11, 22, . . . , nn: c11x1 + c12x2 + c13x3 + · · · + c1,n−1xn−1 + c1nxn = d1 c22x2 + c23x3 + · · · + c2,n−1xn−1 + c2nxn = d2 ... cn−1,n−1xn−1 + cn−1,nxn = dn−1 cn,nxn = dn . Při zpětné substituci tak postupně dopočítáváme xn = c−1 nndn xn−1 = c−1 n−1,n−1(dn−1 − cn−1,nxn) ... x2 = c−1 22 (d2 − c23x3 − · · · − c2,n−1xn−1 − c2nxn) x1 = c−1 11 (d1 − c12x2 − c13x3 − · · · − c1,n−1xn−1 − c1nxn) a to vyžaduje n k=1 k = n2 2 + n 2 násobení/dělení a n−1 k=1 k = n2 2 − n 2 sčítání/odčítání . Tvrzení 2.20. Zpětná substituce vyžaduje při řešení soustavy n lineárních rovnic o n neznámých nejvýše n2 aritmetických operací. LINEÁRNÍ ALGEBRA 53 Nyní je vidět, že pro velká n je počet operací nutných pro zpětnou substituci zanedbatelný vzhledem k počtu operací nutných pro Gaussovu eliminaci. Cvičení 1. Najděte kvadratický polynom p(x) = ax2 + bx + c, pro který platí p(0) = 3, p(1) = 1, p(2) = 2. 2. Dokažte, že prohození dvou řádků matice lze docílit zbylými dvěmi elementárními řádkovými úpravami. 3. Matematickou indukcí podle n dokažte, že pro každé číslo n ≥ 1 platí n k=1 k = 1 + 2 + 3 + · · · + n = n2 2 + n 2 . 4. Matematickou indukcí podle n dokažte, že pro každé číslo n ≥ 1 platí n k=1 k2 = 12 + 22 + 32 + · · · + n2 = n3 3 + n2 2 + n 6 . 5. Spočtěte, kolik aritmetických operací je nejvýše třeba pro Gaussovu eliminaci soustavy m rovnic o n neznámých pro libovolná m, n. 6. Spočtěte, kolik aritmetických operací je nejvýše třeba pro zpětnou substituci při řešení soustavy m rovnic o n neznámých pro libovolná m, n. 54 LIBOR BARTO A JIŘÍ TŮMA Shrnutí druhé kapitoly (1) Soustava m lineárních rovnic o n neznámých s reálnými koeficienty je sou- stava a11x1 + a12x2 + · · · + a1nxn = b1 a21x1 + a22x2 + · · · + a2nxn = b2 . . . am1x1 + am2x2 + · · · + amnxn = bm . (2) Soustavy lineárních rovnic řešíme pomocí ekvivalentních úprav. To jsou úpravy, které nemění množinu všech řešení soustavy. (3) Vystačíme s ekvivalentními úpravami tří typů, kterým říkáme elementární úpravy: (i) prohození dvou rovnic, (ii) vynásobení nějaké rovnice nenulovým číslem t, (iii) přičtení t-násobku jedné rovnice k jiné rovnici. (4) Každé řešení soustavy lineárních rovnic s n neznámými je uspořádaná n-tice (x1, x2, . . . , xn) reálných čísel. Uspořádanou n-tici reálných čísel nazýváme aritmetický vektor nad R s n složkami. Aritmetické vektory chápeme jako sloupce čísel, kvůli úspoře místa je ale zapisujeme také (x1, x2, . . . , xn)T . Množinu všech n-složkových aritmetických vektorů nad R označujeme Rn , nazýváme ji také reálný aritmetický prostor dimenze n. (5) Aritmetické vektory sčítáme po složkách (x1, x2, . . . , xn)T + (y1, y2, . . . , yn)T = (x1 + y1, x2 + y2, . . . , xn + yn)T a násobíme reálným číslem také po složkách t(x1, x2, . . . , xn)T = (tx1, tx2, . . . , txn)T . (6) Postup při řešení soustavy lineárních rovnic zapisujeme přehledně pomocí matic. Matice nad R typu m × n je obdélníkové schéma reálných čísel s m řádky a n sloupci. Zapisujeme ji symbolicky A = (aij)m×n, číslo aij je prvek matice v i-tém řádku a j-tém sloupci. (7) Soustava lineárních rovnic z bodu (1) určuje dvě matice. Matice soustavy je matice koeficientů u neznámých: A = (aij)m×n =      a11 a12 . . . a1n a21 a22 . . . a2n ... ... ... ... am1 am2 . . . amn      . (8) Přidáme-li k matici soustavy vektor pravých stran (b1, b2, . . . , bm)T , dostaneme rozšířenou matici soustavy (A | b) =      a11 a12 . . . a1n b1 a21 a22 . . . a2n b2 ... ... ... ... ... am1 am2 . . . amn bm      . LINEÁRNÍ ALGEBRA 55 (9) Elementárním úpravám soustavy lineárních rovnic odpovídají elementární řádkové úpravy rozšířené matice soustavy. Definujeme je ale pro jakoukoliv matici A a jsou to (i) prohození dvou řádků matice, (ii) vynásobení jednoho z řádků matice nenulovým číslem, (iii) přičtení libovolného násobku jednoho řádku k jinému řádku. (10) Gaussova eliminace je postup, jak každou matici převést do odstupňovaného tvaru. (11) Matice C = (cij)m×n je v odstupňovaném tvaru, pokud v každém nenulovém řádku matice C je na počátku (tj. zleva) více nul, než na počátku řádku nad ním. Grafické znázornění matice v odstupňovaném tvaru je 0 1 k1 k2 kr n 1 r m ? Formálně definujeme, že matice C = (cij)m×n je v řádkově odstupňovaném tvaru, pokud existuje celé číslo r ∈ {0, 1, . . . , m} takové, že řádky r + 1, . . . , m jsou nulové, řádky 1, . . . , r jsou nenulové, a platí k1 < k2 < · · · < kr, kde ki je index sloupce, ve kterém je první nenulové číslo v i-tém řádku. Prvkům ci,ki , i = 1, 2, . . . , r, tj. prvním nenulovým prvkům v jednotlivých řádcích, říkáme pivoty. (12) Gaussova eliminace spočívá v následujících krocích: 1. Najdeme první nenulový sloupec, jeho index označíme k1. Pokud takový sloupec neexistuje, je matice A v řádkově odstupňovaném tvaru (neboť je nulová), a jsme hotovi. 2. Pokud je a1k1 = 0, prohodíme první řádek s libovolným řádkem i, ve kterém je aik1 = 0. 3. Pro každé i = 2, 3, . . . , m přičteme (−aik1 /a1k1 )-násobek prvního řádku k i-tému řádku. 4. Postup opakujeme s maticí bez prvního řádku. (13) Gaussovou eliminací převedeme každou matici A = (aij)m×n do odstupňovaného tvaru C = (cij)m×n. Různým použitím Gaussovy eliminace můžeme dostat různé odstupňované tvary, neboť v kroku 2. máme možnost volit index i. Bez důkazu jsme si řekli, že počet nenulových řádků r a indexy k1 < k2 < · · · < kr z formální definice odstupňovaného tvaru vyjdou vždy stejně, jsou určené jednoznačně maticí A. (14) Číslo r nazýváme hodnost matice A a značíme je rank(A). Sloupce s indexy k1, k2, . . . , kr nazýváme bázové sloupce matice A. (15) Soustavu lineárních rovnic řešíme ve třech krocích. Eliminační fáze spočívá v převedení rozšířené matice soustavy do odstupňovaného tvaru Gaussovou eliminací. Je-li sloupec pravých stran bázový sloupec rozšířené matice soustavy, nemá soustava řešení. 56 LIBOR BARTO A JIŘÍ TŮMA (16) Pokud sloupec pravých stran není bázový, následuje zpětná substituce. Napřed určíme bázové proměnné xk1 , xk2 , . . . , xkr , zbývající proměnné jsou volné proměnné a jejich hodnoty můžeme zvolit libovolně. Poté odzadu postupně spočteme hodnoty bázových proměnných xkr , xkr−1 , . . . , x1 pomocí volných proměnných. (17) Nakonec zapíšeme množinu všech řešení soustavy v parametrickém tvaru    u + p∈P tpvp : tp ∈ R pro každé p ∈ P    pro vhodné n-složkové aritmetické vektory u a vp, p ∈ P, kde P je množina indexů volných proměnných-parametrů. Každé volné proměnné xp odpovídá jeden vektor vp. (18) Řešení soustavy lineárních rovnic lze chápat geometricky dvěma různými způsoby. Množina všech řešení soustavy je průnik množin řešení jednotlivých rovnic. Množina všech řešení jedné lineární rovnice o n neznámých je nadrovina, tj. „rovný útvar dimenze n − 1 v prostoru Rn dimenze n. To v případě, že aspoň jeden z koeficientů u neznámých je nenulový. V triviálním případě, kdy jsou všechny koeficienty u neznámých nulové, je množina všech řešení buď prázdná nebo celý prostor Rn . Pokud soustava lineárních rovnic obsahuje aspoň jednu netriviální rovnici, je množina jejích řešení průnikem nadrovin. (19) Pro sloupcový pohled na řešení soustavy lineárních rovnic potřebujeme klíčový pojem lineární kombinace. Jsou-li u1, u2, . . . , un aritmetické vektory nad R s m složkami a a1, a2, . . . , an reálná čísla, pak lineární kombinací vektorů u1, u2, . . . , un s koeficienty a1, a2, . . . , an nazýváme vektor a1u1 + a2u2 + · · · + anun ∈ Rm . (20) Řešení soustavy lineární rovnic (A|b) spočívá v nalezení všech možných lineárních kombinací sloupcových vektorů a1, a2, . . . , an matice soustavy A, které se rovnají vektoru pravých stran b. Soustava je tedy řešitelná právě když sloupec pravých stran lze vyjádřit jako lineární kombinaci sloupcových vektorů matice soustavy. (21) Řešíme-li soustavu lineárních rovnic na počítači, je třeba mít na paměti, že v počítači lze uložit přesně pouze konečně mnoho čísel. Může se stát, že při některých krocích výpočtu je nutné výsledky zaokrouhlit, aby se do počítače „vešly . Zaokrouhlování koeficientů ale není ekvivalentní úprava. Počítač nám sice dá nějaké řešení, je to ale řešení jiné soustavy. Numerická stabilita, tj. vztah mezi přesným řešením a řešením získaným na počítači, je základním problémem numerické lineární algebry. (22) Některé soustavy mají jinou nepříjemnou vlastnost - drobná změna některého koeficientu nebo prvku na pravé straně způsobí velkou změnu řešení. Takovým soustavám se říká špatně podmíněné. Pokud koeficienty soustavy získáváme měřením, tak se na řešení špatně podmíněné soustavy nelze vůbec spolehnout. Tento problém nelze odstranit ani numericky velmi stabilním algoritmem. (23) Pro hrubý odhad doby, jakou bude trvat řešení velké soustavy lineárních rovnic o mnoha neznámých na počítači, je dobré odhadnout počet aritmetických operací, které výpočet vyžaduje. Gaussova eliminace soustavy n LINEÁRNÍ ALGEBRA 57 lineárních rovnic o n neznámých potřebuje nejvýše (2/3)n3 operací. Zpětná substituce jich potřebuje nejvýše n2 . Pro velká n je časová náročnost zpětné substituce zanedbatelná. Klíčové znalosti z druhé kapitoly nezbytné pro průběžné sledování přednášek s pochopením (1) Aritmetické vektory a počítání s nimi. (2) Pojem lineární kombinace vektorů. (3) Matice, zejména vědět že prvek aij leží v i-tém řádku a j-tém sloupci. (4) Definice řádkově odstupňovaného tvaru matice. (5) Fakt, že Gaussova eliminace převede každou matici do řádkově odstupňovaného tvaru. (6) Umět řešit soustavy lineárních rovnic a vyjádřit množinu všech řešení v parametrickém tvaru. (7) Rozumět řádkovému a sloupcovému pohledu na řešení soustavy lineárních rovnic. 58 LIBOR BARTO A JIŘÍ TŮMA 3. Tělesa Cíl. Studiem vlastností reálných čísel, které používáme při řešení soustav lineárních rovnic, dojdeme k pojmu tělesa. Ukážeme si několik důležitých příkladů těles. 3.1. Motivace. V minulé kapitole jsme řešili soustavy lineárních rovnic nad reálnými čísly. Zcela stejný postup lze využít pro řešení soustav lineárních rovnic nad jinými obory, například komplexními čísly. Pomocí detailní analýzy řešení jednoduchých rovnic si uvědomíme, jaké vlastnosti počítání s reálnými čísly nám umožňují takové rovnice řešit. Zamysleme se nejprve jaké vlastnosti reálných čísel využíváme při řešení rovnice x + a = b, konkrétně třeba x + 11 = 18 . Snažíme se odhlédnout od toho, že řešení okamžitě vidíme a že některé vlastnosti reálných čísel již používáme zcela automaticky. Většina z nás by na tomto místě navrhla odečíst od obou stran číslo 11. My se budeme snažit vystačit se dvěmi základními operacemi, sčítáním a násobením. Ostatní operace, jako odčítání a dělení, budeme považovat za odvozené. Proto k oběma stranám raději přičteme číslo −11. Protože jsme zapomněli na komutativitu sčítání, musíme se domluvit, z které strany přičítáme. V našem případě potřebujeme přičíst zprava. Dostáváme (x + 11) + (−11) = 18 + (−11) . Dalším krokem je přezávorkování levé strany a výpočet součtu na pravé straně: x + (11 + (−11)) = 7 . Teď můžeme závorku vypočítat: x + 0 = 7 . Nakonec využijeme skutečnosti, že x + 0 = x a dostáváme x = 7 . Při řešení rovnic typu x+a = b tedy využíváme asociativitu sčítání, existenci neutrálního prvku a existenci opačných prvků. Přesněji řečeno, využíváme následující vlastnosti: (S1) („asociativita sčítání ) Pro libovolná čísla a, b, c ∈ R platí (a + b) + c = a + (b + c) . (S2) („existence nulového prvku ) Existuje číslo 0 ∈ R takové, že pro libovolné a ∈ R platí 0 + a = a + 0 = a . (S3) („existence opačného prvku ) Pro každé a ∈ R existuje b ∈ R takové, že a + b = b + a = 0 . Takové b značíme −a. LINEÁRNÍ ALGEBRA 59 Pointa je v tom, že kdykoliv máme na nějaké množině binární operaci + s těmito vlastnostmi, pak můžeme na řešení rovnic typu x + a = b (nebo a + x = b) použít zcela stejný postup. Binární operací se rozumí jakékoliv zobrazení, které každé uspořádané dvojici prvků z T jednoznačně přiřadí prvek T. Definice 3.1. Binární operací na množině T rozumíme zobrazení z T × T do T. Je-li ⊕ binární operace na T, pak její hodnotu na dvojici (a, b) zapisujeme většinou a ⊕ b, místo ⊕(a, b), nebo formálně ještě správnějšího ⊕((a, b)). Všimněte si, že a ⊕ b musí být definované pro každou dvojici a, b ∈ T a že výsledek operace je opět prvek T. Pokud má ⊕ vlastnost (S1), pak ve výrazech typu a1 ⊕ a2 ⊕ · · · ⊕ an nemusíme psát závorky, protože každé smysluplné uzávorkování dá stejný výsledek (důkaz je technicky docela náročný, nebudeme jej provádět). Obecně však nemůžeme beztrestně prohazovat pořadí. Příklady množin a operací splňující (S1), (S2), (S3) jsou • T = Z a + je běžné sčítání. • Podobně T = Q (nebo T = R, nebo T = C) a + je běžné sčítání. • Větším příkladem je množina všech reálných funkcí reálné proměnné s operací sčítání funkcí. • Naopak velmi malým příkladem je T = {0, 1} s operací ⊕ definovanou 0 ⊕ 0 = 1 ⊕ 1 = 0 a 0 ⊕ 1 = 1 ⊕ 0 = 1. • Zcela odlišným příkladem pak je množina všech permutací na nějaké pevné množině s operací ◦ skládání permutací. Tento příklad se od předchozích liší v tom, že operace není komutativní (tj. nesplňuje a ◦ b = b ◦ a). Vra?me se nyní k problému, které vlastnosti reálných čísel využíváme při řešení soustav lineárních rovnic. Uvažujme rovnici typu a · x = b, například 3 · x = 12. Postup řešení je následující. 3 · x = 12 3−1 · (3 · x) = 3−1 · 12 (3−1 · 3) · x = 4 1 · x = 4 x = 4 . Všimněte si, že postup je velmi podobný postupu na řešení rovnice x+a = b. Rozdíl je v tom, že místo operace + pracujeme s operací ·, místo 0 používáme prvek 1 a místo −x používáme x−1 . Vlastnosti ·, které využíváme, jsou proto velmi podobné vlastnostem (S1), (S2), (S3) s jedním důležitým rozdílem – obdoba vlastnosti (S3), což je existence inverzního prvku, platí pouze pro nenulová čísla. Použité vlastnosti jsou následující. (N1) („asociativita násobení ) Pro libovolná čísla a, b, c ∈ R platí (a · b) · c = a · (b · c) . (N2) („existence jednotkového prvku ) Existuje číslo 1 ∈ R takové, že pro libovolné a ∈ R platí 1 · a = a · 1 = a . (N3) („existence inverzního prvku ) Pro každé a ∈ R takové, že a = 0, existuje b ∈ R takové, že a · b = b · a = 1 . 60 LIBOR BARTO A JIŘÍ TŮMA Takové b značíme a−1 . Při elementárních úpravách soustavy lineárních rovnic používáme ještě dvě další vlastnosti. Ty lze vidět například z úprav, které automaticky používáme, přičítámeli 2-násobek rovnice x+3y = 10 k rovnici (−2)x+4y = 15. V úpravách již využíváme (S1) a (N1), takže nepíšeme závorky. 2(x + 3y) + (−2)x + 4y = 2 · 10 + 15 2x + 2 · 3y + (−2)x + 4y = 35 2x + 6y + (−2)x + 4y = 35 2x + (−2)x + 6y + 4y = 35 (2 + (−2))x + (6 + 4)y = 35 0x + 10y = 35 0 + 10y = 35 10y = 35 . Kromě již formulovaných vlastností jsme využili tyto: (D) („oboustranná distributivita ) Pro libovolná čísla a, b, c ∈ R platí a · (b + c) = a · b + a · c a (b + c) · a = b · a + c · a . (S4) („komutativita sčítání ) Pro libovolná čísla a, b ∈ R platí a + b = b + a . Ještě jsme využili, že 0 · x = 0. Později však ukážeme, že tento vztah plyne ze zbylých vlastností. Shrneme-li všechny doposud zformulované vlastnosti, dostaneme pojem nekomutativního tělesa. Nikde jsme totiž nevyužili komutativitu násobení a soustavy lineárních rovnic lze Gaussovou eliminací řešit i nad nekomutativními tělesy, jen bychom se museli dohodnout, zda koeficienty v rovnicích budeme psát zleva nebo zprava. Rovnice ax = b totiž může mít jiné řešení než rovnice xa = b. Důležitým příkladem nekomutativního tělesa je těleso kvaternionů, o kterém se zmíníme na konci kapitoly. My ale budeme pracovat s tělesy, kde násobení je komutativní, proto do definice tělesa tuto vlastnost přidáme. Tím pádem stačí vyžadovat jen jeden z distributivních zákonů a můžeme také zjednodušit vlastnosti (S2), (S3), (N2) a (N3). Ještě přidáme tzv. axiom netriviality, tj. požadavek že těleso má alespoň 2 prvky. Jednoprvkovou množinu totiž za těleso nechceme považovat. 3.2. Definice tělesa. Definice 3.2. Tělesem T rozumíme množinu T spolu s dvěma binárními operacemi +, · na T, které splňují následující axiomy. (S1) („asociativita sčítání ) Pro libovolné prvky a, b, c ∈ T platí (a + b) + c = a + (b + c) . (S2) („existence nulového prvku ) Existuje prvek 0 ∈ T takový, že pro libovolné a ∈ T platí a + 0 = a . (S3) („existence opačného prvku ) Pro každé a ∈ T existuje −a ∈ T takové, že a + (−a) = 0 . LINEÁRNÍ ALGEBRA 61 (S4) („komutativita sčítání ) Pro libovolné prvky a, b ∈ T platí a + b = b + a . (N1) („asociativita násobení ) Pro libovolné prvky a, b, c ∈ T platí (a · b) · c = a · (b · c) . (N2) („existence jednotkového prvku ) Existuje prvek 1 ∈ T takový, že pro libovolné a ∈ T platí a · 1 = a . (N3) („existence inverzního prvku ) Pro každé 0 = a ∈ T existuje a−1 ∈ T takové, že a · a−1 = 1 . (N4) („komutativita násobení ) Pro libovolné prvky a, b ∈ T platí a · b = b · a . (D) („distributivita ) Pro libovolné prvky a, b, c ∈ T platí a · (b + c) = a · b + a · c . (¬ T) („netrivialita ) |T| > 1. Prvek 0 z axiomu (S2) též nazýváme neutrální prvek vzhledem k operaci + a prvek 1 z axiomu (N2) je neutrální prvek vzhledem k operaci · . V následujícím tvrzení ukážeme, že oba neutrální prvky jsou určené jednoznačně. Tyto jednoznačně určené prvky pak vystupují v axiomech (S3) a (N3). Formulace (S3) může být trochu matoucí. Přesněji bychom měli říct, že pro každé a ∈ T existuje b ∈ T takové, že a + b = 0, a poté libovolné takové b označit −a. V následujícím tvrzení dokážeme, že b = −a je pro dané a určeno jednoznačně. Podobně pro inverzní prvky. Stejně jako je běžné u reálných čísel budeme součin a · b často zapisovat jako ab. Také budeme dodržovat konvenci, že násobení má přednost před sčítáním. Dále definujeme a − b = a + (−b) a a b = ab−1 . Těleso je zadané množinou T a určením dvou binárních operací + a · na množině T. Samotná množina těleso neurčuje. Rovněž poznamenejme, že vzhledem k definici binární operace (definice 3.1) musí být a+b a ab definované pro každou dvojici prvků a, b ∈ T a výsledek musí ležet v množině T. Příkladem tělesa je množina racionálních (nebo reálných nebo komplexních) čísel spolu s běžnými operacemi. Množina celých čísel spolu s běžnými operacemi těleso netvoří kvůli axiomu (N3). Dříve než se podíváme na další příklady, dokážeme několik jednoduchých vlastností, které mají všechna tělesa. Tvrzení 3.3. V každém tělese T platí (1) nulový prvek je určený jednoznačně, (2) rovnice a + x = b má vždy právě jedno řešení, speciálně opačný prvek −a je prvkem a ∈ T určený jednoznačně, (3) jednotkový prvek je určený jednoznačně, (4) rovnice ax = b, a = 0, má vždy právě jedno řešení, speciálně prvek a−1 inverzní k prvku 0 = a ∈ T je prvkem a určený jednoznačně, (5) 0a = 0 pro libovolný prvek a ∈ T, (6) je-li ab = 0, pak buď a = 0 nebo b = 0, 62 LIBOR BARTO A JIŘÍ TŮMA (7) −a = (−1)a pro každý prvek a ∈ T, (8) z rovnosti a + b = a + c plyne b = c, (9) z rovnosti ab = ac a předpokladu a = 0 vyplývá b = c, (10) 0 = 1. Důkaz. (1) Předpokládejme, že 0 a 0 jsou prvky, pro které a + 0 = a = a + 0 pro libovolné a ∈ T. Pak platí 0 = 0 + 0 = 0 + 0 = 0 . V první rovnosti jsme využili, že a = a + 0 pro libovolné a (využili jsme to pro a = 0 ), ve druhé rovnosti využíváme komutativitu sčítání – axiom (S3) – a ve třetí rovnosti využíváme, že a + 0 = a (pro a = 0). Tedy 0 = 0, což jsme chtěli dokázat. (2) Vezmeme libovolné a, b ∈ T a předpokládáme, že x ∈ T i x ∈ T splňují a + x = b a a + x = b. Přičteme k oběma stranám rovnosti a + x = a + x libovolný pevně zvolený opačný prvek −a k a, použijeme asociativitu sčítání a axiomy (S3),(S4) a (S2). Dostáváme a + x = a + x (−a) + (a + x) = (−a) + (a + x ) ((−a) + a) + x = ((−a) + a) + x 0 + x = 0 + x x = x . Tvrzení o jednoznačnosti opačného prvku dostaneme volbou b = 0. (3) Obdobně jako (1) (4) Obdobně jako (2) (5) Pro libovolné a máme užitím (D) 0a + 0a = (0 + 0)a = 0a . Rovnice 0a + x = 0a má tedy řešení x = 0a, ale také x = 0 podle axiomu (S2). Z bodu (2) nyní vyplývá 0a = 0. (6) Předpokládejme, že ab = 0 a a = 0, a dokážeme že b = 0. Rovnice ax = 0 má řešení x = b a také x = 0 podle předešlého bodu a axiomu (N4). Takže 0 = b podle bodu (4). (7) Je třeba ukázat, že (−1)a je opačný prvek k a. Pak tvrzení plyne z jednoznačnosti opačného prvku (bod (2)). Skutečně a + (−1)a = 1a + (−1)a = (1 + (−1))a = 0a = 0 , kde jsme využili (N2), (D), (S3) a bod (6). (8) Rovnice a + x = (a + c) má řešení x = c (zřejmě) a x = b (podle předpokladu). Z bodu (2) plyne b = c. (9) Podobně jako předešlý bod. (10) Pokud 0 = 1, pak vynásobením obou stran libovolným číslem a a užitím (5) a (N2) dostaneme 0 = 0a = 1a = a. Tedy každý prvek je roven nulovému, takže |T| = 1. Další společné vlastnosti všech těles jsou ve cvičeních. LINEÁRNÍ ALGEBRA 63 3.3. Tělesa Zp. Důležitým příkladem těles jsou tělesa Zp, kde p je prvočíslo. Tato a jiná konečná tělesa se používají například v informatice při návrhu kódů, které umožňují spolehlivý přenos informace kanálem se šumem, nebo při návrhu rychlých algoritmů pro počítání s celočíselnými polynomy. 3.3.1. Dělení se zbytkem. Počítání v tělesech Zp je založené na dělení se zbytkem. Následující tvrzení shrnuje to, co jste se naučili už na prvním stupni základní školy. Tvrzení 3.4. Pro každé přirozené číslo n ∈ N a každé celé číslo a ∈ Z existují jednoznačně určená čísla q ∈ Z a r ∈ {0, 1, 2, . . . , n − 1} taková, že platí a = nq + r . Rovnost a = nq + r můžeme také chápat jako zkoušku, kterou ověřujeme, že spočítaný celočíselný podíl a zbytek při dělení a číslem n jsou správně. Příklad 3.5. 12 : 5 = 2, zbytek 2, nebo? 12 = 5 · 2 + 2 −32 : 7 = −5, zbytek 3, nebo? −32 = 7(−5) + 3 62 : 8 = 7, zbytek 6, nebo? 62 = 8 · 7 + 6 . Tvrzení 3.4 dokazovat nebudeme. Z prvního stupně základní školy dokonce znáte algoritmus, jak čísla q a r spočítat. Pro nás bude důležité číslo r, kterému říkáme zbytek při dělení čísla a číslem n, a budeme jej označovat a mod n . 3.3.2. Modulární počítání. Libovolná dvě celá čísla a, b můžeme sečíst a vynásobit modulo n: a ⊕ b = (a + b) mod n, a b = (a · b) mod n . Na levých stranách jsou nově definované operace modulárního sčítání a násobení, které definujeme, a na pravých stranách jsou běžné operace v Z. Výsledkem operace a ⊕ b je zbytek při dělení běžného součtu a + b číslem n. Podobně modulární součin a b je zbytek při dělení běžného součinu ab číslem n. Například při počítání modulo 5 platí 1 ⊕ 4 = 0, 3 ⊕ 4 = 2, 2 2 = 4, 2 3 = 1, 3 3 = 4, 7 8 = 1, . . . . Zbytek při dělení číslem n je vždy v množině {0, 1, . . . , n − 1}. Tuto „množinu možných zbytků při dělení číslem n budeme označovat Zn. Nadále budeme předpokládat n ≥ 2, aby množina Zn měla aspoň dva prvky. Běžné sčítání celých čísel je komutativní, platí a + b = b + a pro libovolná dvě čísla a, b ∈ Z. Proto se také rovnají zbytky při dělení obou čísel číslem n ∈ N: (a + b) mod n = (b + a) mod n , což dokazuje rovnost a ⊕ b = b ⊕ a. Sčítání modulo n je tedy komutativní. Zcela stejně ověříme komutativitu násobení modulo n. Dokázat asociativitu obou operací je o něco složitější. Napřed si ukážeme jednoduché pomocné tvrzení, že při modulárním sčítání (nebo násobení) se výsledek 64 LIBOR BARTO A JIŘÍ TŮMA nezmění, pokud kterýkoliv ze sčítanců (nebo činitelů) nahradíme číslem se stejným zbytkem modulo n. Lemma 3.6. Pro libovolné přirozené číslo n a celá čísla a, b, d taková, že a mod n = d mod n, platí při počítání modulo n rovnosti (1) a ⊕ b = d ⊕ b, (2) a b = d b . Důkaz. Protože modulární sčítání a násobení je definováno pomocí zbytků modulo n, označíme si r = a mod n = d mod n a s = b mod n. Existují tedy celá čísla u, v, w, pro která platí a = nu + r, d = nw + r, b = nv + s . (1) Pak platí a + b = (nu + r) + (nv + s) = n(u + v) + (r + s) . Nyní najdeme zbytek t ∈ {0, 1, . . . , n − 1} při dělení čísla r + s číslem n. Pro zbytek t platí rovnost (r + s) = nq + t, kde q je nějaké celé číslo. Po dosazení do posledního výrazu předchozího výpočtu dostaneme a + b = n(u + v) + (r + s) = n(u + v) + (nq + t) = n(u + v + q) + t , což dokazuje, že a ⊕ b = (a + b) mod n = t. Stejně tak z d + b = (nw + r) + (nv + s) = n(w + v) + (r + s) = n(w + v) + (nq + t) = n(w + v + q) + t plyne d ⊕ b = t a tedy d ⊕ b = t = a ⊕ b. (2) V případě násobení označíme t = (rs) mod n, což znamená, že rs = nq + t pro nějaké celé číslo q. Pak spočteme ab = (nu + r)(nv + s) = n2 uv + nus + nvr + rs = n(nuv + us + vr) + (nq + t) = n(nuv + us + vr + q) + t a tedy a b = (ab) mod n = t. Rovněž db = (nw + r)(nv + s) = n(nwv + ws + rv) + (rs) = n(nwv + ws + rv + q) + t , což dokazuje rovnost d b = t = a b. Lemma 3.6 můžeme použít ke dvěma různým účelům. Při složitějším výpočtu modulo n lze jakýkoliv sčítanec nebo činitel nahradit jeho zbytkem modulo n a výsledek se nezmění. Příklad 3.7. Budeme počítat modulo 3: (587 422) ⊕ (724 128) = (2 2) ⊕ (1 2) = 1 ⊕ 2 = 0 . Pokud stejný výpočet děláme modulo 7, dostaneme (587 422) ⊕ (724 128) = (6 2) ⊕ (3 2) = 5 ⊕ 6 = 4 . LINEÁRNÍ ALGEBRA 65 Lemma 3.6 můžeme také použít k důkazu obecných vlastností počítání modulo n. Z definice a ⊕ b = (a + b) mod n totiž plyne, že obě čísla a ⊕ b = (a + b) mod n a a + b (běžné sčítání) mají stejný zbytek modulo n. Pro libovolná tři celá čísla a, b, c proto platí (a ⊕ b) ⊕ c = (a + b) ⊕ c = ((a + b) + c) mod n , v druhé rovnosti jsme použili definici sčítání modulo n. Celý výpočet lze proto provést pomocí běžného sčítání celých čísel a teprve na konci spočítat zbytek modulo n. Stejně tak platí a ⊕ (b ⊕ c) = a ⊕ (b + c) = (a + (b + c)) mod n . Vzhledem k tomu, že běžné sčítání celých čísel je asociativní, plyne odtud také asociativita modulárního sčítání: (a ⊕ b) ⊕ c = a ⊕ (b ⊕ c) . Zcela stejně ověříme asociativitu modulárního násobení: (a b) c = ((ab)c) mod n = (a(bc)) mod n = a (b c) a distributivitu: a (b ⊕ c) = (a(b + c)) mod n = (ab + ac) mod n = (a b) ⊕ (a c) . Nulový prvek pro sčítání modulo n neexistuje. Přirozeným kandidátem je číslo 0, nicméně pro každé a ∈ Z platí a ⊕ 0 = (a + 0) mod n = a mod n ∈ Zn = {0, 1, . . . , n − 1} a odtud dostáváme, že a ⊕ 0 = a právě když a = a mod n a to nastane právě když a ∈ Zn. Z analogického důvodu není ani číslo 1 jednotkovým prvkem pro násobení modulo n, nicméně pro každé a ∈ Zn platí a 1 = a. Omezíme-li sčítání a násobení modulo n na prvky množiny Zn = {0, 1, . . . , n−1}, bude výsledek obou operací také v Zn. Sčítání a násobení modulo n jsou proto binární operace také na množině Zn. Právě jsme si ukázali, že pro každé a ∈ Zn platí a ⊕ 0 = a = a 1, pro sčítání a násobení modulo n na množině Zn nulový a jednotkový prvek existují. Zbývá vyjasnit existenci opačných a inverzních prvků. Pro každý nenulový prvek a ∈ Zn platí n − a ∈ Zn, a protože a ⊕ (n − a) = n mod n = 0 , je prvek n − a opačný k prvku a. Vzhledem k tomu, že 0 ⊕ 0 = 0, je nulový prvek opačný k sobě samému. Opačný prvek proto existuje ke každému a ∈ Zn. Označíme jej a. Pro každé a ∈ Zn ale platí rovnost ( a) mod n = (−a) mod n. Podle lemma 3.6 tak můžeme při modulárním počítání také každý výskyt prvku a nahradit běžným opačným prvkem −a a výsledek se nezmění. Příklad 3.8. Budeme počítat modulo 6: 321 ( 223) 115 = 321 (−223) ⊕ ( 115) = 3 5 ⊕ (−115) = 3 ⊕ 5 = 2 . Existence inverzních prvků k nenulovým prvkům v Zn je složitější a budeme se jí podrobněji zabývat za chvilku. Dosavadní poznatky si shrneme v následujícím tvrzení. 66 LIBOR BARTO A JIŘÍ TŮMA Tvrzení 3.9. Pro každé přirozené číslo n ≥ 2 jsou operace sčítání a násobení modulo n binární operace na množině Zn = {0, 1, . . . , n − 1} a splňují všechny axiomy tělesa s výjimkou axiomu (N3) o existenci inverzního prvku ke každému nenulovému prvku a ∈ Zn. 3.3.3. Existence inverzních prvků v Zn. Nadále budeme při počítání modulo n používat běžné označení operací +, −, ·, přičemž budeme · obvykle vynechávat. Skutečnost, že počítáme modulo n je dána sdělením, že počítáme v Zn. Zkusíme zjistit, existuje-li v Z3 inverzní prvek k prvku 2. Uděláme to zkusmo, spočteme všechny součiny 2x pro x ∈ Z3. x 0 1 2 2x 0 2 1 . Zjistili jsme, že v Z3 je 2 inverzní prvek k 2. A protože v Z3 platí také 1 · 1 = 1 (což platí v každém Zn), našli jsme inverzní prvek ke každému nenulovému prvku a ∈ Z3. To znamená, že počítání v Z3 splňuje i axiom (N3) a Z3 je těleso. Zkusíme stejným způsobem najít inverzní prvek ke 2 v Z4: x 0 1 2 3 2x 0 2 0 2 . K číslu 2 tedy v Z4 inverzní prvek neexistuje a Z4 proto není těleso. Jiný důvod, proč Z4 není těleso spočívá také v rovnosti 2 · 2 = 0, protože v libovolném tělese musí být součin dvou nenulových prvků různý od 0 - viz vlastnost (6) v tvrzení 3.3. Na základě posledního argumentu můžeme ihned dokázat následující tvrzení. Tvrzení 3.10. Je-li n ≥ 2 složené číslo, pak Zn s operacemi sčítání a násobení modulo n není těleso. Důkaz. Protože předpokládáme, že n je složené číslo, můžeme jej napsat jako běžný součin n = ab, kde obě čísla a, b jsou kladná, nenulová, a menší než n. Patří proto do Zn. Pro jejich součin modulo n pak platí ab = n mod n = 0. Počítání v Zn tak nemá vlastnost (6) v tvrzení 3.3, která musí platit v každém tělese, a proto Zn tělesem není. Zkusíme-li přesto najít v Z4 inverzní prvek k 3, vyjde x 0 1 2 3 3x 0 3 2 1 . Inverzní prvek k 3 v Z4 existuje. Číslo 2 je jediný nenulový prvek v Z4, ke kterému inverzní prvek neexistuje. Pokročíme dále k Z5: x 0 1 2 3 4 2x 0 2 4 1 3 , x 0 1 2 3 4 4x 0 4 3 2 1 . V Z5 proto platí 2 · 3 = 1 a 4 · 4 = 1, a protože také 1 · 1 = 1, inverzní prvky existují ke všem nenulovým prvkům Z5 a Z5 proto tělesem je. Tělesa Z3 a Z5 jsou speciálním případem konečných tělesech popsaných v následující větě. Věta 3.11. Pro libovolné prvočíslo p je množina Zp spolu s operacemi sčítání a násobení modulo p těleso. LINEÁRNÍ ALGEBRA 67 Důkaz. Z tvrzení 3.9 už víme, že Zp splňuje všechny axiomy tělesa s výjimkou axiomu (N3). Myšlenka důkazu existence inverzních prvků v Zp vychází z pozorování, že ve všech dosud uvedených příkladech, kdy inverzní prvek k nenulovému a ∈ Zn existoval, bylo zobrazení x → ax : Zn → Zn vzájemně jednoznačné. Dokážeme, že v případě Zp, kdy p je prvočíslo, je pro každý nenulový prvek a ∈ Zp toto zobrazení prosté. Pokud pro nějaké dva prvky x, y ∈ Zp platí, že ax = ay v Zp, mají oba (běžné) součiny ax a ay stejný zbytek r při dělení prvočíslem p. Existují tedy celá čísla u, v, pro která platí ax = pu + r a ay = pv + r . Odečtením rovností dostaneme a(x − y) = p(u − v). Z této rovnosti plyne, že prvočíslo p dělí (běžný) součin a(x − y). Protože je to prvočíslo, musí dělit aspoň jednoho z činitelů a nebo x − y. Číslo a dělitelné prvočíslem p být nemůže, nebo? a ∈ {1, 2, . . . , p − 1}. Prvočíslo p tedy dělí rozdíl x − y. Protože x, y ∈ Zp = {0, 1, . . . , p − 1}, pro absolutní hodnotu |x − y| platí 0 ≤ |x − y| < p. Jedinou možností dělitelnou p je tedy |x − y| = 0 a proto x = y. Zobrazení x → ax : Zp → Zp je tedy prosté. Protože je množina Zp konečná, je zobrazení x → ax také na celou množinu Zp. Proto existuje x ∈ Zp takové, že v Zp platí ax = 1. Příklad 3.12. V tělese Z5 máme 1−1 = 1, 2−1 = 3, 3−1 = 2, 4−1 = 4 . V tělese Z7 je 1−1 = 1, 2−1 = 4, 3−1 = 5, 4−1 = 2, 5−1 = 3, 6−1 = 6 . Inverzní prvky jsme našli zkusmo, například v tělese Z5 platí 2−1 = 3, protože 2 · 3 = 1. Uvedeme několik snadných pozorování, které usnadní práci. Každé z nich ověřte na uvedených příkladech. V každém tělese platí 1−1 = 1 a také (−1)−1 = −1. Tedy v Zp je (p − 1)−1 = (p − 1), protože −1 = p − 1 (čti „opačný prvek k 1 je p − 1 ). Podle cvičení 3. na konci této kapitoly je (−a)−1 = −(a−1 ), takže známe-li inverzní prvek k a, můžeme též určit inverzní prvek k −a = p − a. Podle stejného cvičení je inverzní prvek k inverznímu prvku původní prvek, tj. víme-li, že b = a−1 , pak a = b−1 . Příklad 3.13. V tělese Z7 platí −3 5 = 4 5 = 4 · 5−1 = 4 · 3 = 5 . Využili jsme 5−1 = 3, což jsme nahlédli v předchozím příkladu. Alternativně se lze přímo zeptat jakým číslem je v Z7 třeba vynásobit 5, abychom dostali 4. Ještě jinak můžeme počítat −3 5 = 4 −2 = −2 = 5 . Poznamenejme, že zatímco v tělese reálných (nebo racionálních) čísel je 4/5 číslo, v tělese Z7 jde o výraz „4 děleno 5 . Takové výrazy by se ve výsledcích příkladů neměly objevovat, protože jdou ještě dopočítat. 68 LIBOR BARTO A JIŘÍ TŮMA Než se pustíme do řešení soustavy lineárních rovnic s koeficienty v Z11 v následujícím příkladu, připravíme si tabulku inverzních prvků v tělese Z11: x 1 2 3 4 5 6 7 8 9 10 x−1 1 6 4 3 9 2 8 7 5 10 Příklad 3.14. V tělese Z11 vyřešíme soustavu lineárních rovnic s maticí   2 4 1 2 10 3 4 1 3 8 6 7 7 5 0 2 6 8   . Soustavu převedeme do odstupňovaného tvaru.   2 4 1 2 10 3 4 1 3 8 6 7 7 5 0 2 6 8   ∼   2 4 1 2 10 3 0 4 1 4 8 1 0 2 2 6 4 3   ∼ ∼   2 4 1 2 10 3 0 4 1 4 8 1 0 0 7 4 0 8   ∼   1 2 6 1 5 7 0 1 3 1 2 3 0 0 1 10 0 9   V první úpravě jsme 9-násobek prvního řádku přičetli ke druhému a 2-násobek prvního řádku jsme přičetli ke třetímu. Jak jsme přišli například na číslo 9 při nulování pozice (2, 1)? Jednou možností je spočítat (−4)2−1 = 7 · 6 = 9. Pro malá tělesa, zejména Z2, Z3, Z5, Z7, je asi nejrychlejší určit potřebné číslo zkusmo. Tím myslíme v našem případě úvahou „kolika je třeba vynásobit 2, aby po přičtení 4 vznikla 0 . Možná o něco početně příjemnější než přičítat 9-násobek je přičítat (−2)-násobek. Na koeficient 2 při nulování pozice (3, 1) můžeme obdobně přijít buď výpočtem nebo zkusmo. Výpočet provedeme přímočaře −7 2 = (−7) · 2−1 = 4 · 6 = 2 , nebo rychleji například takto: −7 2 = 4 2 = 2 . V další úpravě jsme 5-násobek druhého řádku přičetli k třetímu. V poslední úpravě jsme vynásobili řádky čísly tak, aby pivoty byly rovny 1. To nám usnadní zpětné substituce při dopočítání řešení. Konkrétně jsme první řádek vynásobili číslem 2−1 = 6, druhý řádek číslem 4−1 = 3 a třetí řádek číslem 7−1 = 8. Bázové proměnné jsou x1, x2 a x3 a volné proměnné jsou x4 a x5. Hodnoty volných proměnných zvolíme libovolně x4 = t4 a x5 = t5 a zpětnou substitucí dopočteme hodnoty bázových proměnných x3 = 9 − 10x4 = 9 + (−10)t4 = 9 + t4, x2 = 3 − 3x3 − x4 − 2x5 = 3 + 8(9 + t4) + 10t4 + 9t5 = 3 + 6 + 8t4 + 10t4 + 9t5 = 9 + 7t4 + 9t5, x1 = 7 − 2x2 − 6x3 − x4 − 5x5 = 7 − 2(9 + 7t4 + 9t5) + 5(9 + t4) − t4 − 5t5 = 7 − 18 − 3t4 − 7t5 + 1 + 5t4 − t4 − 5t5 = 1 + t4 + 10t5 . LINEÁRNÍ ALGEBRA 69 Obecné řešení soustavy se tedy rovná       x1 x2 x3 x4 x5       =       1 9 9 0 0       + t4       1 7 1 1 0       + t5       10 9 0 0 1       a množina všech řešení soustavy je          1 9 9 0 0       + t4       1 7 1 1 0       + t5       10 9 0 0 1       : t4, t5 ∈ Z11    . 3.4. Charakteristika. Důležitým číselným parametrem těles je jejich charakteris- tika. Definice 3.15. Existuje-li kladné celé číslo n takové, že v tělese T platí 1 + 1 + · · · + 1 n = 0 , pak nejmenší takové kladné číslo nazýváme charakteristika tělesa T. Pokud žádné takové kladné celé číslo n neexistuje, tak říkáme že těleso T má charakteristiku 0. Charakteristika tedy určuje, kolikrát nejméně je třeba sečíst jednotkový prvek, abychom dostali 0. Pokud sčítáním 1 nikdy nedostaneme nulový prvek, charakteristika je 0. Věta 3.16. Charakteristika každého tělesa je buď 0 nebo prvočíslo. Důkaz. Jestliže charakteristika tělesa T není rovná 0, pak existuje nějaké kladné celé číslo n ≥ 2, pro které platí 1 + 1 + · · · + 1 n = 0 . Jestliže je n složené číslo, platí n = kl pro nějaká kladná celá čísla k, l < n. V důsledku axiomu distributivity (D) platí (1 + 1 + · · · + 1 k )(1 + 1 + · · · + 1 l ) = 1 + 1 + · · · + 1 kl=n = 0 . Podle tvrzení 3.3.(6) může být součin dvou prvků v tělese rovný 0 pouze pokud je aspoň jeden z činitelů rovný 0. Proto je buď 1 + 1 + · · · + 1 k = 0 nebo 1 + 1 + · · · + 1 l = 0 . 70 LIBOR BARTO A JIŘÍ TŮMA V každém případě nemůže být složené číslo n ≥ 2 nejmenším kladným celým číslem, pro které platí 1 + 1 + · · · + 1 n = 0 . Protože je 1 = 0 podle tvrzení 3.3.(10), musí být nejmenší takové číslo prvočíslo. Charakteristika těles Q, R, C je 0. Pro libovolné prvočíslo p je charakteristika tělesa Zp rovná p. Tělesa charakteristiky 2 mají tu příjemnou vlastnost, že sčítání a odčítání splývají, viz cvičení. V některých situacích tato tělesa tvoří výjimečné případy, které je třeba zvláš? rozebírat. Jedním z důvodů je fakt, že v nich nelze počítat aritmetický průměr dvou čísel – výraz a + b 1 + 1 totiž nedává smysl, protože v něm dělíme nulou. V tělese s charakteristikou 2 se nelze bratrsky rozdělit. 3.5. Další příklady těles. 3.5.1. Čtyřprvkové těleso. Pokud n není prvočíslo, pak Zn není těleso. Tedy například Z4 není těleso. Není splněný axiom (N3), prvek 2 nemá inverzní prvek. Můžeme také použít větu 3.16, protože charakteristika by byla 4, což pro těleso není možné. Čtyřprvkové těleso ale existuje. Nejlépe je počítat s polynomy GF(4) = {0, 1, α, α + 1} jedné proměnné α s koeficienty v Z2. Sčítání je definované jako přirozené sčítání polynomů, přičemž s koeficienty počítáme jako v tělese Z2. Např. α + (α + 1) = (1 + 1)α + 1 = 1 . Při násobení polynomy vynásobíme přirozeným způsobem (s koeficienty opět počítáme jako v Z2) a případný člen α2 nahradíme součtem α + 1. Například (α + 1)(α + 1) = α2 + (1 + 1)α + 1 = = α2 + 1 = (α + 1) + 1 = α . Náhradu členu α2 součtem α+1 lze chápat také jako zbytek při dělení polynomu α2 polynomem α2 + α + 1. Násobení ve 4-prvkovém tělese GF(4) lze tedy chápat také jako běžné násobení polynomů s koeficienty v Z2 modulo polynom α2 +α+1. Stejně tak je možné i sčítání považovat za běžné sčítání polynomů modulo α2 + α + 1. Pro polynom α2 + α + 1 je důležité, že jej nelze vyjádřit jako součin dvou polynomů menšího stupně. Této analogii prvočísel mezi polynomy říkáme nerozložitelné polynomy. 3.5.2. Další konečná tělesa. Těleso s n prvky existuje právě tehdy, když n je mocnina prvočísla. Důkaz uvidíte později v kurzu algebry. Pro každé prvočíslo p a přirozené číslo k dokonce existuje v podstatě (až na přeznačení prvků) jediné těleso, které má pk prvků. Lze jej sestrojit podobně jako čtyřprvkové těleso. Prvky budou polynomy stupně nejvýše k − 1 s koeficienty v Zp a počítat budeme modulo pevně zvolený nerozložitelný polynom stupně k, tj. polynom, který se nedá napsat jako (běžný) součin polynomů nižšího stupně. Každé těleso s pk prvky má charakteristiku p. LINEÁRNÍ ALGEBRA 71 3.5.3. Charakteristika a konečnost. Každé těleso charakteristiky 0 má nekonečně mnoho prvků, protože čísla 0, 1, 1 + 1, 1 + 1 + 1 jsou všechna navzájem různá. Lze ukázat, že takové těleso v jistém smyslu „obsahuje těleso racionálních čísel (viz cvičení). Na druhou stranu není pravda, že těleso nenulové charakteristiky má nutně konečný počet prvků. Příklad uvádět nebudeme, řekneme si pouze, že každé těleso charakteristiky p „obsahuje těleso Zp (opět viz cvičení). 3.5.4. Podtělesa komplexních čísel. Existuje celá řada těles „mezi racionálními a komplexními čísly. Například množina komplexních čísel {a + bi : a, b ∈ Q} tvoří s běžnými operacemi těleso. K důkazu musíme ověřit, že tato množina je uzavřena na sčítání a násobení. Většina zbylých axiomů je pak očividná, kromě existence inverzního prvku. Úplný důkaz přenecháme do cvičení. Dalším příkladem je množina {a + b √ 2 : a, b ∈ Q} opět s běžnými operacemi. Tato a podobná tělesa hrají velkou roli například při důkazu slavné věty, že neexistuje vzoreček (využívající operace +, ·, −, :, n √ ) pro kořeny polynomu většího než čtvrtého stupně, nebo při důkazu neexistence konstrukce kvadratury kruhu, trisekce úhlu nebo zdvojení krychle kružítkem a pravítkem. 3.5.5. Kvaterniony. Důležitým příkladem nekomutativního tělesa jsou kvaterniony. Kvaterniony definujeme jako výrazy tvaru a + ib + jc + kd , kde a, b, c, d ∈ R a i, j, k jsou kvaternionové jednotky. Sčítání je definováno přirozeně, tedy (a + ib + jc + kd) + (a + ib + jc + kd ) = (a + a ) + i(b + b ) + j(c + c ) + k(d + d ) . Při násobení roznásobíme závorky a využijeme vztahů ai = ia, aj = ja, ak = ka pro libovolné a ∈ R a i2 = j2 = k2 = −1, ij = k, jk = i, ki = j, ji = −k, kj = −i, ik = −j , které se dobře pamatují pomocí cyklu i → j → k → i: i jk 72 LIBOR BARTO A JIŘÍ TŮMA Pokud násobíme po směru cyklu, dostaneme třetí kvaternionovou jednotku s kladným znaménkem, a násobení proti směru znaménko obrací. Tedy (a + ib + jc + kd) · (a + ib + jc + kd ) = = aa + iab + jac + kad + iba + i2 bb + ijbc + ikbd + + jca + jicb + j2 cc + jkcd + kda + kidb + kjdc + k2 dd = = aa + iab + jac + kad + iba − bb + kbc − jbd + + jca − kcb − cc + icd + kda + jdb − idc − dd = = (aa − bb − cc − dd ) + +i(ab + ba + cd − dc )+ + j(ac − bd + ca + db ) + k(ad + bc − cb + da ) . Kvaterniony typu a + ib + j0 + k0 můžeme sčítat a násobit jako komplexní čísla, nebo? (a + ib + j0 + k0) + (a + ib + j0 + k0) = (a + a ) + i(b + b ) + j0 + k0 a rovněž (a + ib + j0 + k0) · (a + ib + j0 + k0) = aa − bb + i(ab + ba ) + j0 + k0 . Těleso kvaternionů je tedy rozšířením tělesa komplexních čísel stejně jako je těleso komplexních čísel rozšířením tělesa reálných čísel. Lineární algebru lze mimo jiné použít také ke zkoumání geometrických zobrazení. Důležitými příklady takových zobrazení jsou rotace o nějaký úhel α kolem nějaké osy. V kapitole o unitární diagonalizaci si ukážeme, že složení dvou rotací kolem různých os je opět rotace kolem nějaké osy. Najít osu a úhel složené rotace ale není vůbec jednoduché. Pátrání po tom, jak osa a úhel složené rotace závisí na osách a úhlech původních rotací, které skládáme, vedlo k objevu kvaternionů. Délkou kvaternionu a + ib + jc + kd rozumíme reálné číslo √ a2 + b2 + c2 + d2. Kvaternion délky 1 nazýváme jednotkový kvaternion. Lze spočítat (viz cvičení), že součin dvou jednotkových kvaternionů je zase jednotkový kvaternion. Přímo z definice také plyne, že je-li a + ib + jc + kd jednotkový kvaternion, pak také −a − ib − jc − kd je jednotkový kvaternion. Je-li a2 + b2 + c2 = 1, pak rotaci kolem osy procházející počátkem souřadnic a bodem (a, b, c) = (0, 0, 0) o úhel α v kladném směru (tj. proti směru hodinových ručiček díváme-li se na rovinu, ve které se body pohybují, ze směru osy rotace) zapíšeme pomocí jednotkového kvaternionu cos(α/2) + (ia + jb + kc) sin(α/2) . Tak například otočení o úhel π/2 kolem první souřadné osy zapíšeme jako kvaternion √ 2 2 + i √ 2 2 . Otočení kolem osy z o úhel π/2 v kladném směru zapíšeme pomocí kvaternionu √ 2 2 + k √ 2 2 . Jednotkový kvaternion cos(α/2) + (ia + jb + kc) sin(α/2) LINEÁRNÍ ALGEBRA 73 popisuje stejnou rotaci jako jednotkový kvaternion − cos(α/2) − (ia + jb + kc) sin(α/2) . Pro každou rotaci máme proto na výběr dva možné jednotkové kvaterniony. Oba příklady z předchozího odstavce jsou jednotkové kvaterniony. Složíme-li dvě rotace, dostaneme osu a úhel složené rotace tak, že vynásobíme příslušné kvaterniony v daném pořadí. Příklad 3.17. Složíme rotaci kolem osy x o úhel π/2 s rotací kolem osy z o úhel π/2. Osu a úhel složené rotace najdeme jako součin kvaternionů √ 2 2 + k √ 2 2 √ 2 2 + i √ 2 2 = 1 2 + (i + j + k) 1 2 = 1 2 + i 1 √ 3 + j 1 √ 3 + k 1 √ 3 √ 3 2 , použili jsme rovnost ki = j. Platí tedy, že složená rotace je kolem osy prvního oktantu o úhel 2π/3 v kladném směru. Cvičení 1. Dokažte, že v libovolném tělese T platí pro každé dva prvky a, b ∈ T vztahy (−a)(−b) = ab, (−a)b = −(ab) a a −b = −a b = − a b . 2. Dokažte, že v libovolném tělese T funguje převod na společný jmenovatel, tzn. dokažte, že pro libovolná a, b, c, d ∈ T, b, d = 0, platí a b + c d = ad + bc bd 3. Dokažte, že v libovolném tělese platí −0 = 0, 1−1 = 1, (−a)−1 = −a−1 , (a−1 )−1 = a pro libovolné 0 = a ∈ T. 4. Dokažte, že pro libovolné n ≥ 2 platí, že k prvku a ∈ Zn existuje inverzní prvek v Zn právě když je číslo a nesoudělné s n (tj. největší společný dělitel čísel a, n se rovná 1). 5. Dokažte, že v libovolném tělese T charakteristiky 2 platí a = −a pro libovolný prvek a ∈ T. 6. Vytvořte tabulku počítání ve čtyřprvkovém tělese a ověřte, že se skutečně jedná o těleso. 7. Rozhodněte (a odpověď dokažte), které z následujících podmnožin C tvoří s běžnými operacemi těleso. • {a + bi : a, b ∈ Q} • {a + b √ 2 : a, b ∈ Q} • {a + b √ n : a, b ∈ Q}, kde n je pevně zvolené přirozené číslo • {a + b 3 √ 2 : a, b ∈ Q} • {a + b 3 √ 2 + c 3 √ 4 : a, b, c ∈ Q} • {a + b √ 2 + c √ 3 : a, b, c ∈ Q} • {a + b √ 2 + c √ 3 + d √ 6 : a, b, c, d ∈ Q} 74 LIBOR BARTO A JIŘÍ TŮMA 8. Dokažte, že v tělese charakteristiky 0 jsou všechna čísla 0,1,1+1,1+1+1, . . . navzájem různá. 9. Nech? T s operacemi ⊕, je těleso charakteristiky 0. Opačné prvky a dělení v tomto tělese budeme značit , . Pro libovolné přirozené číslo n označme n = 1 ⊕ 1 ⊕ · · · ⊕ 1 n× a −n = n Dokažte, že pro libovolné p1, p2 ∈ Z a q1, q2 ∈ N platí, že p1 q1 = p2 q2 právě tehdy, když se racionální čísla p1/q1 a p2/q2 rovnají a platí (p1 q1) (p2 q2) = p1p2 q1q2, (p1 q1) ⊕ (p2 q2) = p1q2 + p2q1 q1q2 . Prvky T typu p q, p ∈ Z, q ∈ N se tedy sčítají a násobí jako racionální čísla. V tomto smyslu obsahuje každé těleso charakteristiky 0 těleso racionálních čísel. 10. Po vzoru předchozího tvrzení přesně zformulujte a dokažte tvrzení, že každé těleso charakteristiky p obsahuje těleso Zp. 11. V tělese kvaternionů najděte prvek inverzní k nenulovému kvaternionu a+ib+jc+kd. 12. Dokažte, že součin dvou jednotkových kvaternionů je opět jednotkový kvaternion. LINEÁRNÍ ALGEBRA 75 Shrnutí třetí kapitoly (1) Binární operace na množině T je zobrazení z T × T do T. (2) Těleso T je množina T spolu se dvěma binárními operacemi + a · na T splňující následující podmínky (S1) pro každé a, b, c ∈ T platí (a + b) + c = a + (b + c), (S2) existuje prvek 0 ∈ T takový, že pro každé a ∈ T platí a + 0 = a, (S3) pro každý prvek a ∈ T existuje −a ∈ T takový, že a + (−a) = 0, (S4) pro každé a, b ∈ T platí a + b = b + a, (N1) pro každé a, b, c ∈ T platí (a · b) · c = a · (b · c), (N2) existuje prvek 1 ∈ T takový, že pro každé a ∈ T platí a · 1 = a, (N3) pro každý prvek a ∈ T, a = 0, existuje a−1 ∈ T takový, že a · a−1 = 1, (N4) pro každé a, b ∈ T platí a · b = b · a, (D) pro každé a, b, c ∈ R platí a · (b + c) = a · b + a · c. (nT) T má aspoň dva prvky. Uvedeným vlastnostem počítání v tělese říkáme axiomy tělesa. (3) Z axiomů tělesa vyplývají následující běžné vlastnosti obou operací, které proto platí v každém tělese T: • nulový prvek je určený jednoznačně, • rovnice a + x = b má vždy právě jedno řešení, speciálně opačný prvek −a je prvkem a ∈ T určený jednoznačně, • jednotkový prvek je určený jednoznačně, • rovnice ax = b, a = 0, má vždy právě jedno řešení, speciálně prvek a−1 inverzní k prvku 0 = a ∈ T je prvkem a určený jednoznačně, • 0a = 0 pro libovolný prvek a ∈ T, • je-li ab = 0, pak buď a = 0 nebo b = 0, • −a = (−1)a pro každý prvek a ∈ T, • z rovnosti a + b = a + c plyne b = c, • z rovnosti ab = ac a předpokladu a = 0 vyplývá b = c, • 0 = 1. (4) Klasické číselné obory Q, R a C jsou tělesa. (5) Pro každé přirozené číslo n ≥ 2 definujeme součet modulo n dvou celých čísel a, b jako zbytek při dělení běžného součtu a+b číslem n. Zbytek bereme vždy z množiny Zn = {0, 1, . . . , n − 1}. (6) Analogicky definujeme součin modulo n jako zbytek při dělení běžného součinu ab číslem n. (7) Pro každé prvočíslo p je množina Zp všech „zbytků modulo p spolu s operacemi sčítání a násobení modulo p těleso. Jsou to příklady konečných těles. K důkazu je nutné ověřit platnost všech axiomů tělesa. (8) Existuje-li kladné celé číslo n takové, že v tělese T platí 1 + 1 + · · · + 1 n = 0 , pak nejmenší takové kladné číslo nazýváme charakteristika tělesa T. Pokud žádné takové kladné celé číslo n neexistuje, tak říkáme že těleso T má charakteristiku 0. (9) Charakteristika každého tělesa je buď 0 nebo prvočíslo. (10) Klasické číselné obory Q, R a C mají charakteristiku 0, konečné těleso Zp má charakteristiku p. Každé konečné těleso má nenulovou charakteristiku. 76 LIBOR BARTO A JIŘÍ TŮMA Klíčové znalosti z třetí kapitoly nezbytné pro průběžné sledování přednášek s pochopením (1) Znát axiomy tělesa a odvozené vlastnosti. (2) Umět počítat v tělesech Zp a umět řešit soustavy lineárních rovnic nad tělesy Zp. (3) Vědět, co je charakteristika tělesa. LINEÁRNÍ ALGEBRA 77 4. Matice Cíl. Definujeme základní operace s maticemi a jejich vlastnosti. Jednoduché jsou operace sčítání matic, součin čísla s maticí a transponování matice. Složitější a zajímavější operací je součin matic. Ukážeme, jak matici interpretovat jako geometrické zobrazení a odhalíme geometrický význam násobení matic jako skládání zobrazení. Dále několika způsoby charakterizujeme matice, které jdou invertovat, a naučíme se inverzní matice počítat. Nakonec využijeme poznatky k dalšímu studiu soustav lineárních rovnic. Matice pro nás zatím byly pouze pomůckou k přehlednému zápisu soustav lineárních rovnic. Mnohá další data mají přirozenou maticovou strukturu nebo jdou do matice uspořádat. Uvedeme několik příkladů. Příklad 4.1. Ceny akcií v jednotlivých dnech můžeme uložit do matice A = (aij), kde aij je závěrečná cena i-té akcie v j-tém dni. Hospodářské přílohy novin nebo zpravodajských webů zveřejňují každý den nový sloupec matice. Příklad 4.2. Nějaká velká korporace vyrábí řadu produktů. K jejich výrobě potřebuje mnoho vstupů (materiál, součástky, pracovní síly, energie, voda, atd.). Vstupní náklady výroby lze zaznamenat do matice A = (aij), kde aij je počet jednotek vstupu j potřebných k výrobě produktu i. V i-tém řádku matice A jsou tak počty jednotek jednotlivých vstupů potřebných k výrobě i-tého produktu. Příklad 4.3. Digitální fotoaparát zaznamenává pro každý pixel jeho barvu. Barvu se skládá ze tří základních složek - R,G,B. Intenzitu každé ze tří barev v daném pixelu zaznamenává v jednom bytu, neboli posloupností osmi nul a jedniček. Celkem je tedy možných 28 = 256 odstínů každé ze tří barev. Ty jsou ukládány pro každou z barev do samostatné matice jako celá čísla mezi −127 a +128. Jedna fotka vyrobená fotoaparátem, který má 8 Mpixelů by tak vyžadovala paměť velikosti 24 MB. Na disk velikosti 1 GB bychom tak mohli uložit pouze 40 fotek. Fotky je proto nutné komprimovat, nejznámější komprimační formát je jpeg. Příklad 4.4. Jiný typ dat, která lze uložit do matice, jsou grafy. Budeme uvažovat orientované grafy, ty mají nějakou množinu V vrcholů a nějakou množinu E ⊆ V ×V hran. Je-li e = (u, v) hrana grafu, pak u je počáteční vrchol hrany e a v je její koncový vrchol. Jako konkrétní příklad si představte mapu leteckých spojení: vrcholy jsou letiště a dvě letiště u, v jsou spojeny hranou, pokud existuje letecké spojení z u do v. Graf lze zapsat pomocí matice sousednosti. Je to čtvercová matice řádu |V |, prvky a sloupce budeme indexovat prvky množiny V . Prvek na místě (u, v) je auv = 1 pokud (u, v) ∈ E, 0 pokud (u, v) /∈ E. Graf na obrázku 39 popíšeme maticí řádu 5:       0 1 0 0 1 0 0 1 0 1 0 0 0 1 0 1 0 0 0 0 0 0 0 1 0       . 78 LIBOR BARTO A JIŘÍ TŮMA 1 2 3 4 5 1 2 3 4 5 6 7 Obrázek 39. Příklad grafu Příklad 4.5. Jiný typ matice grafu (V, E) je matice incidence. Je to obdélníková matice, jejíž řádky odpovídají hranám grafu a sloupce jeho vrcholům. Prvky matice se rovnají 0, 1 nebo −1. V řádku určeném hranou (u, v) je • prvek ve sloupci, který odpovídá počátečnímu vrcholu u, rovný −1, • prvek ve sloupci, který odpovídá koncovému vrcholu v, rovný 1, • všechny ostatní prvky se rovnají 0. Graf na obrázku 39 tak můžeme zapsat také následující maticí typu 7 × 5.           −1 1 0 0 0 0 −1 1 0 0 0 0 −1 1 0 0 0 0 1 −1 −1 0 0 0 1 0 −1 0 0 1 1 0 0 −1 0           . Tento způsob zápisu grafu je vhodný například ke zkoumání toků v sítích. 4.1. Matice, jednoduché operace, typy matic. Začneme definicí matice a speciálních typů matic. Nová definice rozšiřuje stávající definice 2.2 a 2.9 tím, že prvky mohou být z libovolného pevně zvoleného tělesa. Definice 4.6. Nechť T je těleso. Maticí typu m × n nad tělesem T rozumíme obdélníkové schéma prvků tělesa T s m řádky a n sloupci. Matice typu m × m se nazývá čtvercová matice řádu m. Matice typu m×1 se nazývá sloupcový aritmetický vektor (nad T) a matice typu 1 × m se nazývá řádkový aritmetický vektor (nad T). LINEÁRNÍ ALGEBRA 79 Připomeňme, že zápisem A = (aij)m×n rozumíme matici A typu m×n, která má na pozici (i, j) prvek aij ∈ T. Typ matice m × n vynecháváme, pokud jej nechceme specifikovat nebo je zřejmý z kontextu. Matice A = (aij) a B = (bij) považujeme za stejné, pokud mají stejný typ m × n a také mají stejné prvky na odpovídajících pozicích. Formálněji, pro každé i ∈ {1, 2, . . . , m} a každé j ∈ {1, 2, . . . , n} platí aij = bij. Rovnost mezi dvěma maticemi tak znamená mn rovností mezi jejich prvky na stejných místech. V dalším textu budeme používat následující speciální typy čtvercových matic. Definice 4.7. Čtvercovou matici A = (aij) nazýváme • horní trojúhelníková, pokud aij = 0 kdykoliv i > j, • dolní trojúhelníková, pokud aij = 0 kdykoliv i < j. • diagonální, pokud aij = 0 kdykoliv i = j, • jednotková, pokud je diagonální a navíc aii = 1 pro každé i, • permutační, má-li v každém řádku a každém sloupci právě jeden prvek 1 a ostatní 0, (Ve všech případech se rozumí, že daná podmínka je splňená pro všechny přípustné hodnoty i, j, tedy přirozená čísla mezi 1 a řádem matice.) U libovolné matice říkáme, že prvky aii tvoří hlavní diagonálu. Jednotkovou matici řádu n (nad tělesem T) budeme značit In: In =      1 0 · · · 0 0 1 · · · 0 ... ... ... ... 0 0 · · · 1      . Těleso, ve kterém počítáme, musí být zřejmé z kontextu. Prvky jednotkové matice také zapisujeme pomocí symbolu δij, tzn. Kroneckerovo delta. Ten se rovná 1, pokud i = j, a 0 jinak. 4.1.1. Sčítání. Zavedeme několik jednoduchých operací s maticemi, které zobecňují příslušné operace pro vektory. Začneme sčítáním matic. Definice 4.8. Jsou-li A = (aij) a B = (bij) matice stejného typu m × n nad stejným tělesem T, pak definujeme • součet matic A a B jako matici A + B = (aij + bij)m×n, • matici opačnou k A jako matici −A = (−aij)m×n, • nulovou matici typu m × n jako matici 0m×n = (0)m×n. Součet matic různých typů nebo nad různými tělesy není definován. Příklad 4.9. Nad tělesem Z5 platí 2 1 3 4 0 1 + 4 2 2 1 1 3 = 2 + 4 1 + 2 3 + 2 4 + 1 0 + 1 1 + 3 = 1 3 0 0 1 4 , − 2 1 3 4 0 1 = −2 −1 −3 −4 −0 −1 = 3 4 2 1 0 4 , 02×3 = 0 0 0 0 0 0 . Sčítání matic má podobné vlastnosti jako sčítání v tělese. Musíme dát ale pozor, abychom sčítali matice stejného typu. 80 LIBOR BARTO A JIŘÍ TŮMA Tvrzení 4.10. Jsou-li A, B, C matice stejného typu m × n nad stejným tělesem T, pak platí (1) (A + B) + C = A + (B + C), (2) A + 0m×n = A, (3) A + (−A) = 0m×n, (4) A + B = B + A. Důkaz. Matice mají stejný typ, takže výrazy (A + B) + C a A + (B + C) jsou definovány a výsledkem jsou matice typu m × n. Prvek na místě (i, j) v matici (A + B) + C se rovná (aij + bij) + cij, na místě (i, j) v matici A + (B + C) se rovná aij + (bij + cij). Protože sčítání prvků tělesa je asociativní – axiom (S1) v definici tělesa – prvky na stejném místě v maticích (A + B) + C a A + (B + C) se rovnají. Proto platí (A + B) + C = A + (B + C). Ostatní vlastnosti sčítání matic se dokáží podobně. 4.1.2. Násobení skalárem. Analogicky k definici t-násobku aritmetického vektoru definujeme t-násobek matice. Definice 4.11. Je-li A = (aij) matice typu m × n nad tělesem T a t ∈ T, pak definujeme t-násobek matice A jako matici t · A = tA = (taij)m×n. Zdůrazněme, že výraz At jsme nedefinovali, t-násobek matice A píšeme vždy tA. Příklad 4.12. Nad tělesem Z5 platí 3 2 1 3 4 0 1 = 3 · 2 3 · 1 3 · 3 3 · 4 3 · 0 3 · 1 = 1 3 4 2 0 3 . Z axiomů počítání v tělese plyne ihned následující tvrzení. Tvrzení 4.13. Pro matice A = (aij) a B = (bij) téhož typu m × n nad stejným tělesem T a pro libovolné dva prvky s, t ∈ T platí (1) s(tA) = (st)A, (2) 1A = A, (3) −A = (−1)A, (4) (s + t)A = sA + tA, (5) s(A + B) = sA + sB. Důkaz. Dokážeme například vlastnost (5). Protože předpokládáme, že matice A, B jsou nad stejným tělesem T a mají stejný typ m × n, je součet A + B definován a má typ m × n. Proto také matice s(A + B) má typ m × n. Stejný typ mají také matice sA a sB, proto také součet sA + sB je definován a má typ m × n. Prvek na místě (i, j) v matici s(A + B) se rovná s(aij + bij). Prvek na témže místě (i, j) v matici sA + sB se rovná saij + sbij. Z axiomu distributivity (D) pro počítání v tělesech plyne s(aij + bij) = saij + sbij. Prvky na stejných místech v maticích s(A+B) a sA+sB se rovnají, platí proto rovnost matic s(A + B) = sA + sB. Ostatní rovnosti se dokáží stejným způsobem. LINEÁRNÍ ALGEBRA 81 4.1.3. Transponování. Obě definované operace vůbec neberou v úvahu tabulkovou strukturu matice, jsou definované „po prvcích . První operací, která není tohoto typu, je transponování. Definice 4.14. Transponovaná matice k matici A = (aij)m×n je matice AT = (bji)n×m, kde bji = aij pro libovolné indexy i ∈ {1, 2, . . . , m} a j ∈ {1, 2, . . . , n}. Zavedené označení AT je v souladu s dříve používaným značením (a1, . . . , an)T pro sloupcový aritmetický vektor. Sloupce transponované matice jsou tedy řádky původní matice a naopak. Napří- klad A = 2 1 3 4 0 1 , AT =   2 4 1 0 3 1   . Transponování matic má následující tři jednoduché vlastnosti. Tvrzení 4.15. Pro matice A = (aij) a B = (bij) téhož typu m × n nad stejným tělesem T a pro libovolný prvek s ∈ T platí (1) AT T = A, (2) (A + B)T = AT + BT , (3) (sA)T = s AT . Důkaz. Dokážeme pouze vlastnost (1). Matice AT má typ n × m a matice AT T má proto typ m × n, stejný jako matice A. Prvek na libovolném místě (i, j) matice AT T se rovná prvku na místě (j, i) matice AT a ten se rovná prvku na místě (i, j) matice A, tj. prvku aij. Tím je rovnost AT T = A dokázána. 4.2. Součin matic. Složitější a zajímavější operací s maticemi je jejich součin. Využijeme jej mimo jiné na maticový popis soustav lineárních rovnic a eliminačního procesu. Součin také umožňuje matematicky formulovat řadu situací a úloh. Několik z nich se naučíme řešit už v této kapitole, například se naučíme skládat některé typy geometrických zobrazení. Pro součin matic je někdy vhodnější nahlížet na matici jako na posloupnost sloupcových aritmetických vektorů, nikoliv jako na soubor prvků uspořádaných do obdélníku. V tom případě matici A = (aij)m×n nad tělesem T zapisujeme jako A = (a1|a2| . . . |an) , kde pro každé j = 1, 2, . . . , n vektor aj = (a1j, a2j, . . . , amj)T je m-složkový sloupcový aritmetický vektor. Například reálnou matici A = 1 2 3 4 5 6 7 8 zapíšeme také jako A = (a1|a2|a3|a4), kde a1 = 1 5 , a2 = 2 6 , a3 = 3 7 , a4 = 4 8 . 82 LIBOR BARTO A JIŘÍ TŮMA Zapíšeme-li matici AT transponovanou k matici A = (aij)m×n sloupcově, dostaneme zápis AT = (˜a1|˜a2| · · · |˜am) , kde pro každé i = 1, 2, . . . , m vektor ˜ai = (ai1, ai2, . . . , ain)T je i-tý sloupcový vektor transponované matice AT . Řádkový zápis matice je při tomto značení A =      ˜aT 1 ˜aT 2 ... ˜aT m      , kde ˜aT i = (ai1, ai2, . . . , ain) je i-tý řádkový vektor matice A. 4.2.1. Součin matice s vektorem. Nejdříve definujeme součin matice s vektorem a poté součin dvou matic. Definice 4.16. Je-li A = (a1|a2| · · · |an) matice typu m × n nad tělesem T a b = (b1, b2, . . . , bn)T (sloupcový) aritmetický vektor s n-složkami z tělesa T, pak definujeme součin matice A s vektorem b jako Ab = b1a1 + b2a2 + · · · + bnan . Součin Ab je tedy lineární kombinace sloupcových vektorů a1, a2, . . . , an s koeficienty b1, b2, . . . , bn. Výsledkem je m-složkový vektor nad T. Příklad 4.17. Spočteme součin nad R   1 2 3 4 5 6 7 8 9     1 2 3   = 1   1 4 7   + 2   2 5 8   + 3   3 6 9   =   14 32 50   . Pomocí součinu matice s vektorem můžeme kompaktně zapsat soustavu lineárních rovnic a11x1 + a12x2 + · · · + a1nxn = b1 a21x1 + a22x2 + · · · + a2nxn = b2 . . . am1x1 + am2x2 + · · · + amnxn = bm nad tělesem T. Je-li A = (aij)m×n = (a1|a2| · · · |an) matice této soustavy, pak n-složkový vektor x = (x1, x2, . . . , xn)T ∈ Tn je řešením této soustavy právě když Ax = x1a1 + x2a2 + · · · + xnan = b . Soustavu proto můžeme zapsat jako Ax = b . Od této chvíle budeme pro soustavu lineárních rovnic používat téměř výhradně tento zápis. Násobení matice vektorem má přirozenou interpretaci pro většinu příkladů z úvodu kapitoly. Podíváme se na příklad 4.2 o matici vstupů do výroby. LINEÁRNÍ ALGEBRA 83 Příklad 4.18. Matice A = (aij) zaznamenává vstupní náklady na produkty, řádky odpovídají produktům a sloupce vstupům. Prvek aij je roven počtu jednotek vstupu j potřebných k výrobě produktu i. Označíme x vektor jednotkových cen jednotlivých vstupů, jeho j-tá složka udává cenu jednotky j-tého vstupu. Spočítáme-li součin Ax, bude se jeho i-tá složka rovnat ai1x1 + ai2x2 + · · · + ainxn . Jinak řečeno, i-tá složka vektoru Ax se rovná výrobní ceně i-tého produktu. V tomto smyslu vektor Ax popisuje výrobní ceny. 4.2.2. Součin dvou matic. Definice 4.19. Je-li A matice typu m×n a B = (b1|b2| · · · |bp) matice typu n×p, obě nad stejným tělesem T, pak součinem matic A a B rozumíme matici AB = (Ab1|Ab2| · · · |Abp) , tj. j-tý sloupec součinu matic AB se rovná součinu matice A s j-tým sloupcem matice B. Součin AB je tedy definován, pokud počet sloupců matice A je rovný počtu řádků matice B. Jinak definován není. To znamená, že je-li m = p, součin BA definován není, přestože součin AB definován je. Na obrázku vidíme grafické znázornění součinu matic. = j j A B AB Obrázek 40. Sloupce v součinu matic Každý sloupec v součinu AB je nějakou lineární kombinací sloupců matice A. Z definice také plyne, že součin matice typu m × n s maticí typu n × p je matice typu m × p. Příklad 4.20. Spočteme součin dvou reálných matic   1 2 3 4 5 6   1 2 3 4 5 6 7 8 . Součin je definován neboť počet sloupců v levém činiteli se rovná počtu řádků v pravém činiteli. První sloupec v součinu se rovná   1 2 3 4 5 6   1 5 = 1   1 3 5   + 5   2 4 6   =   11 23 35   . 84 LIBOR BARTO A JIŘÍ TŮMA Analogicky spočteme další tři sloupcové vektory součinu:   1 2 3 4 5 6   2 6 =   14 30 46   ,   1 2 3 4 5 6   3 7 =   17 37 57   ,   1 2 3 4 5 6   4 8 =   20 44 68   . Platí tedy   1 2 3 4 5 6   1 2 3 4 5 6 7 8 =   11 14 17 20 23 30 37 44 35 46 57 68   . Všimněme si, že v opačném pořadí obě matice vynásobit nelze, jejich součin není definován. Při výpočtu součinu dvou matic je někdy výhodnější použít následující tvrzení, které říká jak přímo spočítat jednotlivé prvky v součinu matic. Tvrzení 4.21. Jsou-li A = (aij)m×n a B = (bjk)n×p matice nad tělesem T, pak prvek na místě (i, k) v součinu AB se rovná ai1b1k + ai2b2k + · · · + ainbnk = n j=1 aijbjk = ˜aT i bk . Důkaz. Prvek na místě (i, k) v součinu AB leží v k-tém sloupci, který se rovná Abk. Protože Abk = b1ka1 + b2ka2 + · · · + bnkan , i-tá složka vektoru Abk se rovná b1kai1 + b2kai2 + · · · + bnkain = ai1b1k + ai2b2k + · · · + ainbnk . = k i i k A B AB Obrázek 41. Prvky v součinu dvou matic Prvek na místě (i, k) v součinu AB se tak rovná součinu i-tého řádku matice A s k-tým sloupcem matice B. V případě reálných matic tento součin nazýváme standardní skalární součin řádkového vektoru ˜aT i se sloupcovým vektorem bk matice B. LINEÁRNÍ ALGEBRA 85 Příklad 4.22. Počítáme opět nad R. 1 0 −1 1 1 0   3 5 2 4 1 1 −3 2 0 2 −2 1   = = 1 · 3 + 0 · 1 + (−1) · 0 1 · 5 + 0 · 1 + (−1) · 2 1 · 3 + 1 · 1 + 0 · 0 1 · 5 + 1 · 1 + 0 · 4 1 · 2 + 0 · (−3) + (−1) · (−2) 1 · 4 + 0 · 2 + (−1) · 1 1 · 2 + 1 · (−3) + 0 · (−2) 1 · 4 + 1 · 2 + 0 · 1 = = 3 3 4 3 4 6 −1 6 Víme už, jak vypadají sloupce a jednotlivé prvky v součinu AB. V následujícím tvrzení popíšeme jak v součinu AB vypadají řádky. Tvrzení 4.23. Jsou-li A = (aij) matice typu m × n a B = (bjk) matice typu n × p, pak pro každé i = 1, 2, . . . , m se i-tý řádek v součinu AB rovná lineární kombinaci řádků matice B s koeficienty v i-tém řádku matice A. Formálně, i-tý řádek v součinu AB se rovná ai1 ˜bT 1 + ai2 ˜bT 2 + · · · + ain ˜bT n = ˜aT i B . Důkaz. Tvzení lze dokázat podobně jako předchozí (cvičení), nebo můžeme využít transponování (viz příklad 4.33). Na obrázku 42 vidíme grafické znázornění řádků v součinu AB. Každý řádek v součinu matic je nějakou lineární kombinací řádků pravého činitele. = i i A B AB Obrázek 42. Řádky v součinu matic Příklad 4.24. Podívejme se ještě jednou na součin v příkladu 4.22. AB = 1 0 −1 1 1 0   3 5 2 4 1 1 −3 2 0 2 −2 1   Podle předchozího tvrzení je první řádek výsledku součet 1-násobku řádkového vektoru ˜bT 1 = (3, 5, 2, 4), 0-násobku ˜bT 2 = (1, 1, −3, 2) a (−1)-násobku ˜bT 3 = (0, 2, −2, 1), to je (3, 3, 4, 3). Druhý řádek výsledku je součtem prvních dvou řádků matice B, tedy (4, 6, −1, 6). Tímto způsobem získáme výsledek 3 3 4 3 4 6 −1 6 daleko rychleji. 86 LIBOR BARTO A JIŘÍ TŮMA Dohromady zatím máme tři pohledy na součin matic – sloupcový (definice 4.19), po prvcích (tvrzení 4.21) a řádkový (tvrzení 4.23). Další, geometrický význam bude vysvětlen v 4.3.3. 4.2.3. Elementární matice. Tvrzení 4.23 o řádkovém pohledu na násobení matic vede k následujícímu maticovému popisu elementárních řádkových úprav. Tvrzení 4.25. Nechť C je matice typu m × n nad tělesem T, i, j ∈ {1, 2, . . . , m}, i = j, a 0 = t ∈ T. (1) Nechť E je matice, která vznikne z Im prohozením i-tého a j-tého řádku. Pak EC vznikne z C prohozením i-tého a j-tého řádku. E = i j                1 0 · · · i 0 · · · j 0 · · · 0 0 1 · · · 0 · · · 0 · · · 0 ... ... ... ... ... ... 0 0 · · · 0 · · · 1 · · · 0 ... ... ... ... ... ... 0 0 · · · 1 · · · 0 · · · 0 ... ... ... ... ... ... 0 0 · · · 0 · · · 0 · · · 1                . (2) Nechť E je matice, která vznikne z Im nahrazením prvku 1 na místě (i, i) prvkem t. Pak EC vznikne z C vynásobením i-tého řádku prvkem t. E = i           1 0 · · · i 0 · · · 0 0 1 · · · 0 · · · 0 ... ... ... ... ... ... 0 0 · · · t · · · 0 ... ... ... ... ... ... 0 0 · · · 0 · · · 1           . (3) Nechť E je matice, která vznikne z Im nahrazením prvku 0 na místě (i, j) prvkem t. Pak EC vznikne z C přičtením t-násobku j-tého řádku k i-tému řádku. E = i                1 0 · · · i 0 · · · j 0 · · · 0 0 1 · · · 0 · · · 0 · · · 0 ... ... ... ... ... ... 0 0 · · · 1 · · · t · · · 0 ... ... ... ... ... ... 0 0 · · · 0 · · · 1 · · · 0 ... ... ... ... ... ... 0 0 · · · 0 · · · 0 · · · 1                . Důkaz. Tvrzení plyne z tvrzení 4.23. Maticím E z předchozího tvrzení říkáme elementární matice. Elegatně je můžeme definovat následujícím způsobem. LINEÁRNÍ ALGEBRA 87 Definice 4.26. Elementární matice je čtvercová matice, která vznikne z jednotkové matice jednou elementární řádkovou úpravou. Elementární řádkovou úpravu nějaké matice C lze tedy chápat tak, že matici C násobíme zleva vhodnou elementární maticí. To nám dává elegantní a účinný formalizmus pro řádkové úpravy. Elementární matice využijeme například při výpočtu inverzních matic a při dalším zkoumání průběhu Gaussovy eliminace. 4.2.4. Vlastnosti součinu. Začneme varováním: násobení matic není komutativní. Jsou pro to dokonce tři různé důvody. Může být definován pouze jeden ze součinů AB a BA (například když A má typ 2×2 a B má typ 2×3). Pokud jsou definovány oba, mohou mít různý typ (příklad 4.27). A pokud mají stejný typ, může platit AB = BA (příklad 4.28). Příklad 4.27. Nad tělesem R máme (1, 2) 3 4 = 1 · 3 + 2 · 4 = 11, 3 4 (1, 2) = 3 · 1 3 · 2 4 · 1 4 · 2 = 3 6 4 8 . Příklad 4.28. Opět počítáme s reálnými maticemi. 1 2 3 4 4 1 3 2 = 10 5 24 11 , zatímco 4 1 3 2 1 2 3 4 = 7 12 9 14 . Některé jiné vlastnosti počítání v tělesech se ale na počítání s maticemi přenáší. Tvrzení 4.29. Jsou-li A = (aij) a B = (bij) matice téhož typu m × n, C = (cjk) matice typu n × p, a D = (dkl), E = (ekl) matice téhož typu p × q, pak platí (A + B)C = AC + BC, C(D + E) = CD + CE . Důkaz. Dokážeme první rovnost. Součet matic A + B má typ m × n a proto součin (A + B)C má typ m × p. Stejný typ m × p mají také oba součiny AC a BC a proto i jejich součet AC + BC. Obě matice (A + B)C a AC + BC mají tedy stejný typ. Prvek na místě (i, k) v součinu (A + B)C se podle tvrzení 4.21 rovná n j=1 (aij + bij)cjk = n j=1 aijcjk + n j=1 bijcjk . Prvky na místě (i, k) v součinech AC a BC a v součtu AC + BC se postupně rovnají n j=1 aijcjk, n j=1 bijcjk, n j=1 aijcjk + n j=1 bijcjk . Tím je rovnost (A + B)C = AC + BC dokázána. Druhou rovnost v předchozím tvrzení stejně jako všechny další vlastnosti počítání s maticemi lze dokázat pomocí stejné osnovy: (1) přesvědčíme se, že všechny operace na obou stranách jsou definované, 88 LIBOR BARTO A JIŘÍ TŮMA (2) ověříme, že na obou stranách vyjdou matice stejného typu, (3) dokážeme, že každý prvek ve výsledné matici vlevo se rovná prvku na tomtéž místě ve výsledné matici vpravo. Tento krok je založený na definici příslušných operací s maticemi a vlastnostech počítání v tělese. Důležitou asociativitu násobení matic dokážeme v následujícím tvrzení. Tvrzení 4.30. Jsou-li B = (bij) matice typu m × n, C = (cjk) matice typu n × p, a D = (dkl) matice typu p × q, pak platí (BC)D = B(CD) . Důkaz. Součin BC je definovaný a má typ m × p, proto je definovaný také součin (BC)D, který má typ m×q. Podobně ověříme, že také součin B(CD) je definovaný a má tentýž typ m × q. Zvolíme libovolné i ∈ {1, 2, . . . , m} a l ∈ {1, 2, . . . , q} a spočítáme prvek na místě (i, l) v matici (BC)D. Prvek na místě (i, k) v součinu BC = (eik) se rovná eik = n j=1 bijcjk . Prvek na místě (i, l) v součinu (BC)D se potom rovná p k=1 eikdkl = p k=1   n j=1 bijcjk   dkl = p k=1 n j=1 (bijcjk)dkl . K výpočtu prvku na místě (i, l) v součinu B(CD) napřed spočítáme prvek na místě (j, l) v součinu (CD) = (fjl): fjl = p k=1 cjkdkl . Prvek na místě (i, l) v součinu B(CD) se potom rovná n j=1 bijfjl = n j=1 bij p k=1 cjkdkl = n j=1 p k=1 bij(cjkdkl) . Obě dvojité sumy, ke kterým jsme dospěli, se rovnají neboť v nich sčítáme stejné prvky (bijcjk)dkl = bij(cjkdkl), pouze v jiném pořadí. Nahlédnout to můžeme například tak, že si každý sčítanec bijcjkdkl napíšeme na místo (j, k) v matici G typu n×p. V případě první dvojité sumy p k=1 n j=1 bijcjkdkl je napřed sečteme po sloupcích matice G a pak sečteme součty sloupců. V případě druhé dvojité sumy n j=1 p k=1 bijcjkdkl je napřed sečteme po řádcích matice G a pak sečteme součty řádků. Vzhledem ke komutativitě sčítání v tělese T je v obou případech výsledkem součet všech prvků matice G. Tím jsme dokázali, že prvky na témže místě v maticích (BC)D a B(CD) se rovnají, což dokazuje rovnost matic (BC)D = B(CD). Díky asociativitě můžeme pro přirozené číslo n definovat n-tou mocninu čtvercové matice vztahem An = AA . . . A n× . LINEÁRNÍ ALGEBRA 89 Výsledek totiž nezávisí na uzávorkování. Mocnění matic hraje důležitou roli v aplikacích, jako ukázku uvedeme v části 4.2.5 dva příklady. Mocnit matice se naučíme v kapitole o vlastních číslech. Další vlastnosti součinu matic jsou v následujícím tvrzení, jehož důkaz ponecháme jako cvičení. Tvrzení 4.31. Pro libovolné matice A typu m × n a B typu n × p, a každý prvek s tělesa T platí • ImA = A = AIn, • s(AB) = (sA)B = A(sB), • (AB)T = BT AT . V následujícím příkladu využijeme řadu vlastností operací s maticemi. Příklad 4.32. Čtvercová matice A = (aij) řádu n se nazývá symetrická, pokud aij = aji pro libovolné i, j ∈ {1, 2, . . . , n}. Ekvivalentně, A je symetrická, pokud AT = A. Pomocí vlastností z tvrzení 4.31 a tvrzení 4.15 ukážeme, že pro libovolnou čtvercovou matici A je matice B = 2AAT + AT A symetrická: BT = (2AAT + AT A)T = (2AAT )T + (AT A)T = 2(AAT )T + (AT A)T = = 2(AT )T AT + AT (AT )T = 2AAT + AT A = B . Ukázali jsme, že B = BT , matice B je tedy symetrická. Mlčky jsme používali i druhou vlastnost z tvrzení 4.31, když jsme například nepsali závorky ve výrazu 2AAT . Vlastnosti transponování lze často využít k důkazu nějakého tvrzení pro sloupce, známe-li již příslušné tvrzení pro řádky. Jako ukázku dokážeme tvrzení 4.23. Příklad 4.33. Máme matice A typu m × n a B typu n × p. Chceme dokázat, že se i-tý řádek v součinu AB rovná ai1 ˜bT 1 + ai2 ˜bT 2 + · · · + ain ˜bT n = ˜aT i B . Podle definice transponované matice se i-tý řádek v matici AB rovná i-tému sloupci transponované matice (AB)T . Z třetí rovnosti v předchozím tvrzení 4.31 dostáváme (AB)T = BT AT . Z definice součinu matic plyne, že i-tý sloupec v součinu BT AT se rovná lineární kombinaci sloupců matice BT = (˜b1|˜b2| · · · |˜bn) s koeficienty v i-tém sloupci ˜ai = (ai1, ai2, . . . , ain)T matice AT , tj. rovná se BT ˜ai = ai1 ˜b1 + ai2 ˜b2 + · · · + ain ˜bn . Přechodem k transponovaným maticím na obou stranách poslední rovnosti a s využitím vlastností transponování z tvrzení 4.15 dostaneme rovnost ai1 ˜bT 1 + ai2 ˜bT 2 + · · · + ain ˜bT n = (BT ˜ai)T = ˜aT i B . Z uvedených vlastností součinu snadno vyplývají další vlastnosti, jako například A(B − C) = AB − AC, A(−B) = −AB, kdykoliv má jedna strana smysl. Důkazy přenecháme jako cvičení. Následující tvrzení ukazuje, že součin dvou matic jednoho ze speciálních typů z definice 4.7 je opět matice téhož typu. 90 LIBOR BARTO A JIŘÍ TŮMA Tvrzení 4.34. Jsou-li A = (aij) a B = (bjk) čtvercové matice téhož řádu n, pak jejich součin AB je (1) diagonální, jsou-li obě matice A, B diagonální, (2) permutační matice, jsou-li obě matice A, B permutační, (3) horní trojúhelníková matice, jsou-li obě matice A, B horní trojúhelníkové, (4) horní trojúhelníková s prvky 1 na hlavní diagonále, jsou-li obě matice A, B horní trojúhelníkové s prvky 1 na hlavní diagonále, (5) dolní trojúhelníková matice, jsou-li obě matice A, B dolní trojúhelníkové, (6) dolní trojúhelníková s prvky 1 na hlavní diagonále, jsou-li obě matice A, B dolní trojúhelníkové s prvky 1 na hlavní diagonále. Důkaz. K důkazu (1) použijeme vyjádření prvků v součinu matic AB = (cik) podle tvrzení 4.21. Prvek cik v součinu AB se rovná cik = n j=1 aijbjk . Předpoklad, že obě matice A, B jsou diagonální, znamená aij = 0 kdykoliv i = j a bjk = 0 kdykoliv j = k. Je-li i = k, pak pro každé j = 1, 2, . . . , n je buď i = j nebo j = k. Odtud plyne, že buď aij = 0 nebo bjk = 0, což dokazuje cik = 0 kdykoliv i = k, součin AB je proto diagonální matice. (2) můžeme dokázat přímo z definice 4.19 součinu matic. Pro každé j = 1, 2, . . . , n se j-tý sloupec v součinu AB rovná Abj. Protože B je permutační matice, obsahuje sloupec bj pouze jeden prvek bij = 1 a ostatní prvky v j-tém sloupci jsou 0. Proto sloupec Abj = ai obsahuje rovněž pouze jeden prvek rovný 1 a ostatní 0, neboť předpokládáme že A je také permutační matice. Protože je v i-tém řádku matice B také jediný prvek rovný 1 a ostatní 0, plyne odtud, že pouze jeden sloupec součinu AB se rovná ai. Sloupce v součinu AB tedy dostaneme jako nějakou permutaci sloupců matice A. Jelikož v každém řádku matice A je jediný prvek 1 a ostatní prvky 0, obsahuje také každý řádek součinu AB jediný prvek 1 a ostatní 0. (3) opět dokážeme pomocí tvrzení 4.21. Prvek na místě (i, k) v součinu AB = (cik) je tedy cik = n j=1 aijbjk . Předpoklad, že obě matice A, B jsou horní trojúhelníkové znamená, že aij = 0 kdykoliv i > j a bjk = 0 kdykoliv j > k. Je-li nyní i > k, platí pro každé j = 1, 2, . . . , n buď j > k nebo i > j. Součin aijbjk se proto rovná 0 pro každé j = 1, 2, . . . , n, proto cik = 0 kdykoliv i > k. Součin AB = (cik) je tedy také horní trojúhelníková matice. K důkazu (4) pouze doplníme předchozí důkaz (3) úvahou, čemu se rovná prvek cii. Je-li j = i, pak buď i > j nebo j > i. V součtu definujícím cii je proto pouze jediný nenulový součin pro j = i, tj. cii = aiibii = 1. Vlastnost (5) dokážeme přechodem k transponovaným maticím. Jsou-li A, B dolní trojúhelníkové matice, jsou obě transponované matice BT a AT horní trojúhelníkové. Podle bodu (3) je také součin BT AT = (AB)T horní trojúhelníková matice a proto je matice AB = (AB)T T dolní trojúhelníková. Vlastnost (6) plyne analogicky ze (4). LINEÁRNÍ ALGEBRA 91 4.2.5. Tři aplikace. Ukážeme dvě úlohy, které vedou na výpočet mocniny matice. Příklad 4.35 (Počet cest). Na obrázku 43 jsou vyznačena letecká spojení mezi městy X1, X2, X3, X4. Vypočítáme počet spojení s nejvýše čtyřmi přestupy mezi každou dvojicí měst. X1 X2 X3 X4 Obrázek 43. Letecká spojení Informaci o spojeních mezi městy uložíme do matice A = (aij)4×4 nad R tak, že aij definujeme rovné 1, pokud z Xi vede spojení do Xj, a aij = 0 v opačném případě. (Je to matice sousednosti grafu, viz příklad 4.4.) A =     0 1 1 0 1 0 0 0 0 1 0 1 0 0 1 0     . Nyní se zamyslíme, jaký je význam prvku na místě (i, k) v matici A2 . Tento prvek je rovný ai1a1k + ai2a2k + ai3a3k + ai4a4k. Všimněte si, že j-tý člen součtu je rovný jedné právě tehdy, když z Xi vede spojení do Xj a z Xj vede spojení do Xk, a je rovný nule v ostatních případech. Prvek na místě (i, k) v matici A2 je proto rovný počtu cest z Xi do Xk s právě jedním přestupem. Podobně nahlédneme, že prvek na místě (i, k) v matici An je rovný počtu cest z Xi do Xk s právě (n − 1) přestupy. Hledaný počet cest s nejvýše čtyřmi přestupy z Xi do Xk je tedy prvek na místě (i, k) v matici A + A2 + A3 + A4 + A5 =     0 1 1 0 1 0 0 0 0 1 0 1 0 0 1 0     +     1 1 0 1 0 1 1 0 1 0 1 0 0 1 0 1     + +     1 1 2 0 1 1 0 1 0 2 1 1 1 0 1 0     +     1 3 1 2 1 1 2 0 2 1 1 1 0 2 1 1     +     3 2 3 1 1 3 1 2 1 3 3 1 2 1 1 1     = =     6 8 7 4 4 6 4 3 4 7 6 4 3 4 4 3     . Příklad 4.36 (Rekurentní rovnice). Asi jste se již setkali s Fibonacciho posloupností definovanou předpisem a0 = 0, a1 = 1, ai+2 = ai+1 + ai pro každé i = 0, 1, 2 . . . 92 LIBOR BARTO A JIŘÍ TŮMA Chtěli bychom najít explicitní vzorec pro výpočet n-tého členu. Z definice posloupnosti nahlédneme, že dvojice sousedních členů splňuje vztah ai+1 ai+2 = 0 1 1 1 ai ai+1 . Označíme-li C matici 2 × 2 vystupující v této rovnosti, vidíme že a1 a2 = C a0 a1 , a2 a3 = C a1 a2 = C C a0 a1 = C2 a0 a1 , a indukcí podle i dostaneme ai+1 ai+2 = Ci a0 a1 = Ci 0 1 . Podstatným způsobem zde využíváme asociativitu násobení matic. K výpočtu itého členu Fibonacciho posloupnosti tedy stačí umět mocnit matice. To se naučíme v kapitole o vlastních číslech a vektorech. Vyjde možná překvapivý vzorec ai = ϕi √ 5 − (1 − ϕ)i √ 5 , kde ϕ = (1 + √ 5)/2 je hodnota zlatého řezu. Poslední příklad ukazuje využití maticového násobení k matematickému popisu fyzikální úlohy. Příklad 4.37. Na obrázku 44 vlevo vidíme čtyři pružiny zavěšené pod sebou. Horní a dolní konec jsou pevné. Na obrázku vpravo vidíme situaci poté, co jsme do spojů mezi pružinami zavěsili závaží s hmotnostmi m1, m2 a m3. Chceme vědět, o kolik se jednotlivé spoje posunou. Vektor neznámých posunutí si označíme x = (x1, x2, x3)T . Horní a dolní konec jsou pevné, vlivem závaží se neposunou. Proto je velikost jejich posunutí x0 = x4 = 0. Posunutí koncových bodů pružin pod vlivem závaží způsobí natažení nebo zkrácení pružin. Ta si označíme d1, d2, d3, d4. Pro každé i = 1, 2, 3, 4 platí di = xi − xi−1 . Hodnota di je kladná, pokud se i-tá pružina natáhne, a je záporná, pokud se zkrátí. Vztah mezi vektorem d = (d1, d2, d3, d4)T a vektorem neznámých posunutí x = (x1, x2, x3)T je lineární a lze jej popsat rovností     d1 d2 d3 d4     =     1 0 0 −1 1 0 0 −1 1 0 0 −1       x1 x2 x3   . Označíme-li matici v poslední rovnosti A, dostáváme vztah d = Ax. Prodloužení/zkrácení pružin v nich vyvolá vnitřní síly, jejichž velikost vyjadřuje Hookeův zákon. Označíme-li vnitřní síly v pružinách yi, pak platí yi = kidi, kde ki > 0 je konstanta udávající „pružnost i-té pružiny. Také vztah mezi vektorem vnitřních sil y = (y1, y2, y3, y4)T a vektorem d lze popsat maticí:     y1 y2 y3 y4     =     k1 0 0 0 0 k2 0 0 0 0 k3 0 0 0 0 k4         d1 d2 d3 d4     , LINEÁRNÍ ALGEBRA 93 0 3 2 1 4 3 2 1 4 m3 m2 m1 f3 f2 f1 x3 x2 x1 Obrázek 44. Zavěšené pružiny neboli y = Cd, kde C označuje diagonální matici z poslední rovnosti. Je dobré si uvědomit, že pokud di > 0, tj. je-li i-tá pružina natažená, táhne vnitřní síla yi dolní konec této pružiny vzhůru a horní konec dolů. V případě di < 0 je tomu přesně naopak. První pružina je vždy natažená, proto y1 > 0, takže kladný směr vnitřních sil v pružinách je směrem vzhůru. Na spoj i působí vnitřní síly pružin yi a yi+1, které se složí do síly yi − yi+1 působící na i-tý spoj. Vektor sil působících na jednotlivé spoje v důsledku vnitřních sil v pružinách spočteme opět pomocí matice, tentokrát platí   1 −1 0 0 0 1 −1 0 0 0 1 −1       y1 y2 y3 y4     , matice v poslední rovnosti se rovná matici AT transponované k A. Velikost vnitřních sil působících na jednotlivé spoje tak dostaneme jako součin AT CAx . V ustáleném rovnovážném stavu jsou vnitřní síly pružin v rovnováze s vnějšími gravitačními silami působícími na jednotlivé spoje. Vnější síla působící v i-tém spoji se rovná fi = mig, kde g je gravitační konstanta. Vektor vnějších je tedy f = (f1, f2, f3)T a v rovnovážném stavu platí rovnost AT CAx = f, což je soustava lineárních rovnic s maticí AT CA a pravou stranou f. Z té můžeme hodnoty posunutí xi vypočítat, známe-li hmotnosti závaží a koeficienty pružnosti jednotlivých pružin. 94 LIBOR BARTO A JIŘÍ TŮMA Matice soustavy ve tvaru AT CA, kde C je diagonální matice s kladnými prvky na hlavní diagonále, se vyskytuje při řešení mnoha praktických problémů a v lineární algebře je těmto maticím věnována speciální pozornost. Setkáme se s nimi ještě několikrát. 4.2.6. Blokové násobení matic. Někdy je výhodné nahlížet na matici jako rozdělenou do bloků a operace, zejména násobení, provádět blokově. Optimalizované algoritmy pro výpočet součinu dvou matic využívají blokové násobení spíše než vyjádření jednotlivých prvků součinu pomocí tvrzení 4.21. Velikost bloků je volena s ohledem na velikost cache v počítači. Vezměme dvě matice nad tělesem T, matici A typu m×n a matici B typu n×p. Dále nechť m1, . . . , mr, n1, . . . , ns a p1, . . . , pt jsou přirozená čísla, pro která m = m1 + m2 + · · · + mr, n = n1 + n2 + · · · + ns a p = p1 + · · · + pt . Matici A rozdělíme podélně na prvních m1 řádků, dalších m2 řádků, atd. až posledních mr řádků, a vertikálně na prvních n1 sloupců, dalších n2 sloupců, atd. až posledních ns sloupců. Matice A se nyní skládá z rs bloků A11, A12, . . . , A1s, A21, . . . , Ars. A = m1 m2 ... mr      n1 A11 n2 A12 . . .. . . ns A1s A21 A22 . . . A2s ... ... ... ... Ar1 Ar2 . . . Ars      Každý blok Aij je matice typu mi × nj. Podobně, matici B rozdělíme podélně na oddíly velikosti n1, n2, . . . , ns a vertikálně na oddíly velikosti p1, p2, . . . , pt. Matici B tím rozdělíme na st bloků B11, . . . , Bst: B = n1 n2 ... ns      p1 B11 p2 B12 . . .. . . pt B1t B21 B22 . . . B2t ... ... ... ... Bs1 Bs2 . . . Bst      . Součin C = AB lze potom rozdělit do bloků následovně. C = AB = m1 m2 ... mr      p1 C11 p2 C12 . . .. . . pt C1t C21 C22 . . . C2t ... ... ... ... Cr1 Cr2 . . . Crt      , kde pro každé i ∈ {1, 2, . . . , r} a k ∈ {1, 2, . . . , t} platí Cik = s j=1 AijBjk . Důkaz, který pouze vyžaduje správně si napsat jednotlivé prvky ve všech maticích a jejich blocích, přenecháme do cvičení. Někdy lze výpočet součinu dvou matic zjednodušit, pokud si všimneme, že matice mají přirozenou blokovou strukturu složenou z jednoduchých bloků. LINEÁRNÍ ALGEBRA 95 Příklad 4.38. Najdeme A2 pro matici A nad Z7, A =       1 0 2 3 4 0 1 5 0 6 0 0 1 0 0 0 0 0 1 0 0 0 0 0 1       . Všimneme si, že matice A má blokovou strukturu A =       1 0 2 3 4 0 1 5 0 6 0 0 1 0 0 0 0 0 1 0 0 0 0 0 1       . Označíme-li pravý horní blok B = 2 3 4 5 0 6 , můžeme násobit po blocích A2 = I2 B 03×2 I3 I2 B 03×2 I3 = I2I2 + B03×2 I2B + BI3 03×2I2 + I303×2 03×2B + I3I3 = = I2 2B 0 I3 =       1 0 4 6 1 0 1 3 0 5 0 0 1 0 0 0 0 0 1 0 0 0 0 0 1       . 4.3. Matice jako zobrazení. Každá matice A typu m × n nad tělesem T přirozeným způsobem určuje zobrazení Tn → Tm , které budeme označovat fA. Tato geometrická představa matic se od teď bude prolínat celým výkladem. Zobrazení fA určené maticí A je popsáno v definici 4.41. Nejprve se ale podíváme na několik příkladů, jak pomocí matic algebraicky popsat některá jednoduchá geometrická zobrazení v rovině. 4.3.1. Zobrazení v rovině. Začneme otočením kolem počátku souřadnic o úhel α v kladném směru, tj. proti směru hodinových ručiček. Příklad 4.39. Rovinu otočíme kolem počátku souřadnic o úhel α. Kam se pootočí bod se souřadnicemi (p1, p2), tj. jaké budou jeho souřadnice po otočení? Spočítat nové souřadnice přímo pomocí euklidovské geometrie je dost pracné. Ukážeme si algebraické řešení, na kterém lze vidět základní rysy lineárně algebraického uvažování. Místo toho, abychom počítali ihned souřadnice bodu, do kterého se pootočí bod (p1, p2)T , se napřed zamyslíme nad tím, můžeme-li úlohu snadno vyřešit pro nějaké jiné body. Několik takových bodů vidíme na obrázku 46. Snadno nahlédneme, že bod na první souřadné ose se souřadnicemi (1, 0)T se pootočí do bodu o souřadnicích (cos α, sin α)T . Tím pádem také víme, že se bod (p1, 0)T pootočí do bodu (p1 cos α, p1 sin α)T . 96 LIBOR BARTO A JIŘÍ TŮMA x1 x2 a Hp1,p2L Obrázek 45. Otočení v rovině o úhel α v kladném směru x1 x2 a a a Hp1,p2L 1 p1 1 p2 Obrázek 46. Otočení v rovině o úhel α podruhé Podobně snadno nahlédneme, že bod na druhé souřadné ose se souřadnicemi (0, 1)T se pootočí do bodu (− sin α, cos α)T a bod (0, p2)T se pootočí do bodu (−p2 sin α, p2 cos α)T . Nyní přichází klíčový moment. Polohový vektor bodu (p1, p2)T je součtem polohových vektorů bodů (p1, 0)T a (0, p2)T . Tato vlastnost se otočením zachová – polohový vektor bodu, do kterého se pootočí bod (p1, p2)T , je součtem polohových vektorů bodů, do kterých se pootočí body (p1, 0)T a (0, p2)T , tj. je součtem polohových vektorů bodů (p1 cos α, p1 sin α)T a (−p2 sin α, p2 cos α)T . LINEÁRNÍ ALGEBRA 97 x1 x2 a a 1 p1 1 p2 Obrázek 47. Otočení v rovině o úhel α potřetí x1 x2 a Hp1,p2L p1 p2 Obrázek 48. Otočení v rovině o úhel α počtvrté Bod se souřadnicemi (p1, p2)T se tedy pootočí do bodu se souřadnicemi p1 cos α p1 sin α + −p2 sin α p2 cos α = p1 cos α sin α + p2 − sin α cos α = cos α − sin α sin α cos α p1 p2 . Můžeme říct, že matice cos α − sin α sin α cos α 98 LIBOR BARTO A JIŘÍ TŮMA „určuje otočení kolem počátku souřadnic o úhel α v kladném směru. Všimněme si také, že první sloupec v matici tvoří souřadnice bodu, do kterého se zobrazí bod (1, 0)T na první souřadné ose. Podobně druhý sloupec matice tvoří souřadnice bodu, do kterého se zobrazí bod (0, 1)T na druhé souřadné ose. Také jiná geometrická zobrazení v rovině můžeme popsat pomocí vhodné matice. Příklad 4.40. Osová symetrie vzhledem k první souřadné ose v rovině zobrazuje každý bod (p1, p2)T do bodu se souřadnicemi p1 −p2 = 1 0 0 −1 p1 p2 . x1 x2 p1 p2 -p2 Hp1,p2L Hp1,-p2L Obrázek 49. Symetrie v rovině vzhledem k první souřadné ose Všimněme si, že opět jsou ve sloupcích matice A obrazy bodu (1, 0)T (v prvním sloupci) a bodu (0, 1)T (ve druhém sloupci). V obou příkladech jsme ze znalosti hodnot zobrazení (rotace nebo symetrie) v těchto dvou bodech mohli odvodit hodnotu zobrazení v každém dalším bodě roviny. 4.3.2. Zobrazení určené maticí. Pro každou matici A typu m × n nad tělesem T a každý n-složkový aritmetický vektor x ∈ Tn je součin Ax prvkem Tm . Matice A tak určuje zobrazení z Tn do Tm ve smyslu následující zásadní definice. Definice 4.41. Je-li A matice typu m×n nad tělesem T, pak definujeme zobrazení fA : Tn → Tm určené maticí A předpisem fA(x) = Ax pro každý aritmetický vektor x ∈ Tn . Je-li A = (aij)m×n = (a1| . . . |an) Přepíšeme-li výraz Ax pomocí sloupcové definice součinu matic, dostáváme fA      x1 x2 ... xn      = x1a1 + x2a2 + · · · + xnan . LINEÁRNÍ ALGEBRA 99 Obrazem vektoru x při zobrazení fA je tedy lineární kombinace sloupcových vektorů matice A s koeficienty rovnými složkám vektoru x. Přepíšeme-li výraz Ax pomocí „prvkové definice součinu matice, máme fA      x1 x2 ... xn      =      a11x1 + a12x2 + · · · + a1nxn a21x1 + a22x2 + · · · + a2nxn ... am1x1 + am2x2 + · · · + amnxn      . Každá složka obrazu vektoru x je tedy tvaru c1x1 + · · · + cnxn pro nějaké prvky ci ∈ T. Příklad 4.42. V příkladu 4.39 jsme zjistili, že rotace v rovině kolem počátku souřadnic o úhel α v kladném směru je zobrazení fA : R2 → R2 určené maticí A = cos α − sin α sin α cos α . Obrazem vektoru x = (x1, x2)T je vektor fA(x) = Ax = x1 cos α sin α + x2 − sin α cos α = x1 cos α − x2 sin α x1 sin α + x2 cos α Příklad 4.43. Osová symetrie v rovině vzhledem k první souřadné ose je podle příkladu 4.40 zobrazení určené maticí 1 0 0 −1 . Příklad 4.44. Zobrazení fA : R2 → R3 určené maticí A =   5 1 2 3 1 −1   = (a1|a2) zobrazuje každý bod (p1, p2)T v rovině do bodu v 3-dimenzionálním prostoru se souřadnicemi fA((p1, p2)T ) = p1a1 + p2a2 , který leží v rovině s parametrickým vyjádřením {x1a1 + x2a2 : x1, x2 ∈ R}. Na obrázku 50 vidíme několik bodů v rovině R2 a jejich obrazy v prostoru R3 . Na rozdíl od reálných funkcí jedné reálné proměnné si pro zobrazení fA určené maticí A nemůžeme nakreslit graf, ze kterého bychom viděli hodnotu zobrazení v každém bodě definičního oboru. Pro zobrazení fA : Tn → Tm určené maticí A typu m × n nad tělesem T máme pouze předpis, jak pro daný vektor x = (x1, x2, . . . , xn)T spočítat hodnotu zobrazení fA v bodě x: fA(x) = Ax . Důležité je ale také umět si představit zobrazení fA : Tn → Tm jako celek, jako jeden objekt. Graf zobrazení nemáme k dispozici, můžeme ale využít blokové schéma používané v řadě inženýrských oborů. Elektroinženýr si zobrazení fA představí jako nějaký obvod (konkrétních konstrukcí obvodu může být více), ve kterém lze měnit nějaké hodnoty x1, x2 na vstupu (například proudy), které ovlivní jiné hodnoty y1, y2, y3 na výstupu (například napětí). Pokud si žádný obvod neumíme představit, 100 LIBOR BARTO A JIŘÍ TŮMA x1 x2 x3 Obrázek 50. Zobrazení určené reálnou maticí typu 3 × 2 můžeme zobrazení fA považovat za „černou skříňku . Na obrázku 51 je „černá skříňka reprezentující zobrazení z příkladu 4.44. x1 x2 y1 y2 y1 fA Obrázek 51. Zobrazení fA určené maticí typu 3 × 2 Zobrazení fA : Tn → Tm určené obecnou maticí A typu m × n si pak můžeme představit jako na obrázku 52. x n m yA Obrázek 52. Zobrazení fA určené maticí typu m × n Zobrazení–černé skříňce můžeme klást dotazy typu jaká je tvoje hodnota v prvku x ∈ Tn ? Je-li A = (a1|a2| · · · |an) matice typu m × n nad tělesem T a e1 = (1, 0, . . . , 0)T ∈ Tn , pak fA(e1) = 1a1 + 0a2 + · · · + 0an = a1 . Sloupce v matici A tak můžeme zjistit jako hodnoty zobrazení fA v dobře zvolených prvcích Tn . Definice 4.45. Je-li T nějaké těleso a n ∈ N, pak pro každé j = 1, 2, . . . , n označíme ej = (0, . . . , 0, 1, 0, . . . , 0)T ∈ Tn vektor, který má j-tou složku rovnou 1 a všechny ostatní složky rovné 0. Vektory e1, e2, . . . , en nazýváme prvky kanonické báze v Tn . LINEÁRNÍ ALGEBRA 101 Pomocí prvků kanonické báze v Tn snadno dokážeme následující pozorování. Pozorování 4.46. Pro dvě matice A, B téhož typu m × n nad stejným tělesem T platí fA = fB právě když A = B. Důkaz. Obě matice A, B zapíšeme pomocí sloupců, tj. A = (a1|a2| · · · |an) a B = (b1|b2| · · · |bn). Z rovnosti fA = fB plyne rovnost aj = fA(ej) = fB(ej) = bj pro každé j = 1, 2, . . . , n, matice A, B mají stejné sloupce a proto se rovnají. Opačná implikace je triviální. Při odvození matice určující otočení v rovině kolem počátku souřadnic o úhel α v příkladu 4.39 jsme využili dvou vlastností rotace. Napřed jsme použili dvakrát skutečnost, že rotace kolem počátku zobrazí s-násobek nějakého vektoru do s-násobku obrazu tohoto vektoru. A nakonec jsme použili fakt, že rotace zobrazí součet dvou vektorů do součtu jejich obrazů. Tyto dvě vlastnosti má zobrazení určené jakoukoliv maticí. Tvrzení 4.47. Je-li A matice typu m × n nad tělesem T, pak pro každé dva aritmetické vektory x, y ∈ Tn a každý prvek s ∈ T platí • fA(sx) = s fA(x), • fA(x + y) = fA(x) + fA(y). Důkaz. Z první části tvrzení 4.31 dostáváme • fA(sx) = A(sx) = s(Ax) = s fA(x). Podobně z definice 4.41 a distributivity násobení matic ihned plyne • fA(x + y) = A(x + y) = Ax + Ay = fA(x) + fA(y). Poslední tvrzení říká, že zobrazení určená maticemi jsou velmi speciální: zachovávají násobení skalárem a zachovávají sčítání. Takovým zobrazením budeme v kapitole 6 říkat lineární. Uvidíme, že zobrazení f : Tn → Tm je rovno fA pro nějakou matici A právě když f je lineární. 4.3.3. Součin matic a skládání zobrazení. Z definice 4.41 ihned dostaneme následující tvrzení. Tvrzení 4.48. Jsou-li A matice typu m × n a B matice typu n × p nad stejným tělesem T, pak zobrazení fA : Tn → Tm a fB : Tp → Tn můžeme složit v pořadí fAfB a pro složené zobrazení fAfB : Tp → Tm platí fAfB = fAB . Důkaz. Plyne ihned z asociativity násobení matic. Pro každý vektor x ∈ Tp platí fAfB(x) = fA(fB(x)) = fA(Bx) = A(Bx) = (AB)x = fAB(x) . Graficky můžeme složené zobrazení fAfB znázornit jako na obrázku 53. Tvrzení 4.48 říká, že tento diagram můžeme nahradit jednodušším diagramem na obrázku 54. Ukážeme si ještě nekolik příkladů, jejichž řešení je založené na tvrzení 4.48. Jako první dokážeme součtové vzorce pro funkce sinus a cosinus. 102 LIBOR BARTO A JIŘÍ TŮMA p n n mAB Obrázek 53. Diagram pro složení fAfB zobrazení určených maticemi p m AB Obrázek 54. Zobrazení fAB určené součinem matic Příklad 4.49. Otočíme-li rovinu kolem počátku souřadnic o úhel β, je tato rotace podle příkladu 4.39 zobrazení fB : R2 → R2 určené maticí B = cos β − sin β sin β cos β . Poté pootočíme rovinu kolem počátku ještě o úhel α v kladném směru. To je zobrazení fA : R2 → R2 určené maticí A = cos α − sin α sin α cos α . Geometricky nahlédneme, že složením fAfB těchto dvou rotací dostaneme rotaci kolem počátku o úhel α + β v kladném směru. Její matice je tedy cos(α + β) − sin(α + β) sin(α + β) cos(α + β) . Matici složeného zobrazení fAfB dostaneme rovněž jako součin matic AB = cos α − sin α sin α cos α cos β − sin β sin β cos β = cos α cos β − sin α sin β − cos α sin β − sin α cos β sin α cos β + cos α sin β − sin α sin β + cos α cos β . Protože matice zobrazení je určená jednoznačně podle tvrzení 4.46, plyne odtud rovnost matic cos(α + β) − sin(α + β) sin(α + β) cos(α + β) = cos α cos β − sin α sin β − cos α sin β − sin α cos β sin α cos β + cos α sin β − sin α sin β + cos α cos β . Platí proto cos(α + β) = cos α cos β − sin α sin β, sin(α + β) = sin α cos β + cos α sin β LINEÁRNÍ ALGEBRA 103 pro libovolné dva úhly α, β. Příklad 4.50. Odvodíme matici určující symetrie v rovině vzhledem k jakékoliv přímce procházející počátkem. Tato symetrie je složením tří zobrazení, jejichž matice už známe. Pokud osu symetrie dostaneme z první souřadné osy otočením o úhel α v kladném směru začneme tím, že osu symetrie otočíme do směru první souřadné osy po směru hodinových ručiček. Poté použijeme symetrii vzhledem k první souřadné ose a nakonec vše otočíme zpět. x1 x2 a x1 x2 x1 x2 a x1 x2 Obrázek 55. Rozklad symetrie vzhledem k obecné přímce Matici symetrie vzhledem k obecné přímce svírající úhel α s první souřadnou osou tak dostaneme jako součin matic cos α − sin α sin α cos α 1 0 0 −1 cos(−α) − sin(−α) sin(−α) cos(−α) = cos α − sin α sin α cos α cos α sin α sin α − cos α = cos2 α − sin2 α 2 sin α cos α 2 sin α cos α sin2 α − cos2 α = cos 2α sin 2α sin 2α − cos 2α . 104 LIBOR BARTO A JIŘÍ TŮMA Symetrie vzhledem k ose určené přímkou procházející počátkem souřadnic a bodem (cos α, sin α)T tak zobrazuje například bod o souřadnicích (2, 3)T do bodu cos 2α sin 2α sin 2α − cos 2α 2 3 = 2 cos 2α + 3 sin 2α 2 sin 2α − 3 cos 2α . Příklad 4.51. Jaké zobrazení dostaneme pokud uděláme rotaci kolem počátku o úhel α v kladném směru následovanou symetrií vzhledem k první souřadné ose? Toto složení je určené součinem matic 1 0 0 −1 cos α − sin α sin α cos α = cos α − sin α − sin α − cos α = cos(−α) sin(−α) sin(−α) − cos(−α) . Na základě předchozího příkladu 4.50 tak můžeme odpovědět, že složené zobrazení je symetrie vzhledem k ose, kterou dostaneme z první souřadné osy otočením o úhel α/2 v záporném směru, tj. po směru hodinových ručiček. Příklad 4.52. Ortogonální projekce na první souřadnou osu v rovině zobrazuje každý bod (x1, x2)T do bodu (x1, 0)T na první souřadné ose. x1 x2 Obrázek 56. Projekce na první souřadnou osu Odtud snadno dostaneme matici, která projekci na první souřadnou osu určuje. Platí totiž 1 0 0 0 x1 x2 = x1 0 pro každý bod (x1, x2)T ∈ R2 . LINEÁRNÍ ALGEBRA 105 Příklad 4.53. Podobně jako v příkladu 4.50 dostaneme matici určující ortogonální projekci na přímku procházející počátkem souřadnic a bodem (cos α, sin α)T . Rovinu napřed otočíme o úhel −α tak, abychom přímku, na kterou projektujeme, přesunuli do první souřadné osy. Poté uděláme projekci na první souřadnou osu, a nakonec otočíme rovinu o úhel α, abychom přímku, na kterou projektujeme, vrátili zpět do původního směru. Matici projekce pak dostaneme jako součin matic cos α − sin α sin α cos α 1 0 0 0 cos(−α) − sin(−α) sin(−α) cos(−α) = cos α − sin α sin α cos α cos α sin α 0 0 = cos2 α sin α cos α sin α cos α sin2 α . x1 x2 a Obrázek 57. Projekce na přímku Příklad 4.54. Podíváme se ještě jednou na příklad 3.17 z konce kapitoly o tělesech. Tam jsme v R3 pomocí kvaternionů skládali rotaci kolem první souřadné osy o úhel π/2 s rotací kolem třetí souřadné osy o úhel π/2. Matici B rotace kolem osy x1 o úhel π/2 dostaneme tak, že do sloupců zapíšeme obrazy prvků e1, e2, e3 kanonické báze: B =   1 0 0 0 0 −1 0 1 0   . Analogicky dostaneme matici A rotace kolem osy x3 o úhel π/2: A =   0 −1 0 1 0 0 0 0 1   . 106 LIBOR BARTO A JIŘÍ TŮMA x1 x2 x3 Obrázek 58. Kladně orientovaný souřadný systém v prostoru Složením je zobrazení fAfB = fAB určené součinem matic AB =   0 −1 0 1 0 0 0 0 1     1 0 0 0 0 −1 0 1 0   =   0 0 1 1 0 0 0 1 0   . Z matice AB určíme snadno obraz libovolného vektoru (x1, x2, x3)T : fAB   x1 x2 x3   =   0 0 1 1 0 0 0 1 0     x1 x2 x3   =   x3 x1 x2   . Odtud vidíme, že složené zobrazení fAfB zobrazuje každý vektor (x, x, x)T opět do vektoru (x, x, x)T . Osa výsledné rotace je tedy osou prvního oktantu. Není ale vidět, že jde o rotaci o úhel 2π/3 v kladném směru, jak jsme zjistili výpočtem pomocí kvaternionů. Příklad 4.55. Jednotková matice In řádu n nad tělesem T určuje zobrazení fIn : Tn → Tn . Pro libovolný vektor x ∈ Tn platí fIn (x) = Inx = x , jednotková matice In tedy určuje identické zobrazení na množině Tn všech nsložkových aritmetických vektorů nad tělesem T. Identické zobrazení na množině Tn budeme v dalším textu označovat idT n . 4.3.4. Duální zobrazení. Matice A typu m × n nad T určuje zobrazení fA : Tn → Tm . Obrazem aritmetického vektoru x ∈ Tn je Ax, což můžeme poněkud nepřesně vyjádřit slovy „fA je násobení zleva maticí A . V řadě situací má význam i tzv. duální zobrazení fAT : Tm → Tn určené transponovanou maticí AT . Protože pro libovolný aritmetický vektor y ∈ Tm platí AT y = (yT A)T , LINEÁRNÍ ALGEBRA 107 obrazem řádkového vektoru yT je vektor yT A napsaný do řádku. V tomto smyslu „fAT je násobení zprava maticí A . Význam obou zobrazení fA i fAT si ukážeme na matici vstupů do výroby z příkladů 4.2 a 4.18. Příklad 4.56. Matice A = (aij) typu m × n nad R zaznamenává vstupní náklady na produkty, řádky odpovídají produktům a sloupce vstupům. Prvek aij je roven počtu jednotek vstupu j potřebných k výrobě produktu i. Jak jsme nahlédli v příkladu 4.18, je-li x ∈ Rn vektor jednotkových cen vstupů, pak Ax je vektor výrobních cen. Takže fA : Rn → Rm jednotkové ceny vstupů → výrobní ceny produktů . Podobně se nahlédne, že je-li y ∈ Rm počet výrobků, které chceme vyrobit, pak AT y udává potřebný počet jednotek vstupu – i-tá složka je počet jednotek vstupu i potřebných k výrobě daného počtu výrobků. Schematicky fAT : Rm → Rn počet výrobků → počet jednotek vstupů . Na okraj ještě poznamenejme, že nás v této situaci bude asi nejvíce zajímat zobrazení g : Rm × Rn → R definované g(y, x) = yT Ax, které v sobě v nějakém smyslu ukrývá obě zobrazení fA i fAT . g : Rm × Rn → R (počet výrobků, jednotkové ceny vstupů) → cena . 4.4. Regulární matice. V další části této kapitoly se budeme zabývat otázkou, kdy ke čtvercové matici existuje inverzní matice. 4.4.1. Algebraický a geometrický pohled. Začneme algebraickou definicí. Definice 4.57. Čtvercová matice A nad tělesem T řádu n se nazývá invertovatelná, pokud existuje čtvercová matice X nad T řádu n taková, že AX = XA = In. Matici X nazýváme inverzní matice k A a označujeme ji A−1 . V pozorování 4.64 nahlédneme, že inverzní matice je, pokud existuje, určená jednoznačně. Geometricky si matici A představujeme jako zobrazení fA určené maticí A. K zobrazení fA : Tn → Tn existuje inverzní zobrazení právě když fA je vzájemně jednoznačné zobrazení, tj. prosté a obor hodnot fA se rovná Tn . Místo vzájemně jednoznačné zobrazení se také používá termín bijekce. Definice 4.58. Čtvercová matice A nad tělesem T řádu n se nazývá regulární, pokud je zobrazení fA : Tn → Tn určené maticí A vzájemně jednoznačné (tj. bijekce). Čtvercová matice, která není regulární, se nazývá singulární. Připomeňme, že zobrazení fA : Tn → Tn je definované předpisem fA(x) = Ax pro libovolný vektor x ∈ Tn . Vzájemná jednoznačnost zobrazení fA znamená, že pro každý vektor b ∈ Tn existuje právě jeden vektor x ∈ Tn , pro který platí fA(x) = Ax = b. Platí proto následující pozorování. 108 LIBOR BARTO A JIŘÍ TŮMA Pozorování 4.59. Matice A je regulární právě když soustava Ax = b má právě jedno řešení pro každou pravou stranu b. Ukážeme, že pojmy invertovatelná matice a regulární matice splývají. Jedna z implikací se dokáže snadno. Tvrzení 4.60. Každá invertovatelná matice je regulární. Důkaz. Je-li A invertovatelná, existuje matice X, pro kterou platí AX = XA = In. Podle tvrzení 4.48 platí pro zobrazení fA : Tn → Tn a fX : Tn → Tn rovnosti fAfX = fIn = idT n , fXfA = fIn = idT n . Použili jsme fakt, že zobrazení fIn je identické zobrazení na množině Tn , viz příklad 4.55. Zobrazení fX určené maticí X je tedy inverzní k fA, což dokazuje, že zobrazení fA je vzájemně jednoznačné. Příklad 4.61. Z geometrického náhledu vidíme, že matice odpovídající rotaci kolem počátku a symetrii vzhledem k přímce procházející počátkem jsou regulární, protože tato zobrazení jsou vzájemně jednoznačná. Inverzní matice X k matici rotace o úhel α A = cos α − sin α sin α cos α musí určovat inverzní zobrazení k této rotaci, a geometricky vidíme, že inverzním zobrazením je rotace o úhel −α. Zvolíme-li X = cos(−α) − sin(−α) sin(−α) cos(−α) = cos α sin α − sin α cos α , snadno ověříme, že AX = XA = I2. Příklad 4.62. Matice symetrie vzhledem k přímce procházející počátkem a bodem (cos α, sin α)T se rovná B = cos 2α sin 2α sin 2α − cos 2α . Výpočtem snadno ověříme, že B2 = I2, neboli že inverzní matice k B je opět B, což odpovídá geometrickému faktu, že symetrie vzhledem k přímce je inverzní k sobě samé. Příklad 4.63. Matice určující projekci na osu x1 v R2 je singulární, protože projekce roviny na přímku není vzájemně jednoznačné zobrazení (dokonce není ani prosté ani na celý prostor R2 ). Projekce je určená maticí C = 1 0 0 0 , která proto nemůže být invertovatelná. O tom se snadno přesvědčíme, neboť pro každou čtvercovou matici X řádu 2 je druhý řádek součinu CX nulový, proto CX = I2. V součinu XC je vždy nulový druhý sloupec, proto také XC = I2. Stejně jako v případě inverzních prvků v tělese je také inverzní matice k matici A určená jednoznačně, pokud existuje. Protože násobení čtvercových matic stejného řádu není komutativní operace, budeme jednoznačnost inverzní matice formulovat opatrněji. LINEÁRNÍ ALGEBRA 109 Pozorování 4.64. Jsou-li A, X, Y čtvercové matice stejného řádu n nad stejným tělesem T, pro které platí Y A = In a AX = In, pak platí Y = X. Speciálně je inverzní matice k invertovatelné matici určená jednoznačně. Důkaz. Stačí využít asociativitu násobení matic: Y = Y In = Y (AX) = (Y A)X = InX = X . Budeme říkat, že platí-li pro nějaké dvě matice (nemusí být ani čtvercové) X, A rovnost AX = In, pak X je inverzní zprava k matici A a A je inverzní zleva k matici X. Poslední pozorování tedy říká, že v případě čtvercových matic se každá matice inverzní zleva k matici A rovná každé matici inverzní zprava k A. Zdůrazněme ale ještě jednou, že pojmy invertovatelné a regulární matice se týkají pouze čtvercových matic. Ukázali jsme už, že každá invertovatelná matice je regulární. Opačnou implikaci dokážeme tím, že popíšeme postup jak najít inverzní matici ke každé regulární matici. 4.4.2. Hledání matice inverzní zprava. K dané regulární matici A řádu n napřed najdeme matici X takovou, že AX = In. Budeme provádět obecnou diskuzi a zároveň ji ilustrovat na příkladu reálné matice A = 1 3 2 9 . Především si všimneme, že sloupce jednotkové matice In jsou prvky e1, e2, . . . , en kanonické báze v Tn , tj. sloupcový zápis jednotkové matice In je (e1|e2| · · · |en). Rovnost AX = In pomocí definice součinu matic přepíšeme do tvaru A(x1|x2| · · · |xn) = (Ax1|Ax2| · · · |Axn) = (e1|e2| · · · |en) . Nalezení čtvercové matice X = (x1|x2| · · · |xn), pro kterou platí AX = In, se tak redukuje na řešení n soustav lineárních rovnic Axi = ei pro i = 1, 2, . . . , n. Řešíme soustavy lineárních rovnic se stejnou maticí A a s různými pravými stranami. Protože A je regulární matice, každá soustava má jednoznačné řešení podle pozorování 4.59. V našem konkrétním příkladě potřebujeme vyřešit soustavy 1 3 2 9 x11 x21 = 1 0 , 1 3 2 9 x12 x22 = 0 1 . Tak je vyřešíme. 1 3 1 2 9 0 ∼ 1 3 1 0 3 −2 , x11 x21 = 3 −2/3 , 1 3 0 2 9 1 ∼ 1 3 0 0 3 1 , x12 x22 = −1 1/3 . Matice inverzní zprava k matici A = 1 3 2 9 je tedy X = 3 −1 −2/3 1/3 . Provedeme nyní dvě modifikace tohoto postupu. 110 LIBOR BARTO A JIŘÍ TŮMA Protože je matice všech n soustav stejná, totiž A, je možné všechny soustavy řešit stejnými řádkovými úpravami. Proto je můžeme řešit najednou tak, že pravé strany napíšeme vedle matice soustavy všechny vedle sebe a upravíme celou matici do odstupňovaného tvaru. Dopočtení zpětnou substitucí pak proběhne zvlášť pro každou pravou stranu. V našem případě 1 3 1 0 2 9 0 1 ∼ 1 3 1 0 0 3 −2 1 . Před druhou modifikací si uvědomíme, jak vypadá odstupňovaný tvar matice A po Gaussově eliminaci. Z předpokladu regularity matice A plyne, že rovnice Ax = b má právě jedno řešení pro každé b. Při řešení soustav Axi = ei, tak nedostaneme žádné volné proměnné. Tím pádem musí pro odstupňovaný tvar matice A platit r = n a k1 = 1, k2 = 2, . . . , kn = n, což znamená, že hodnost matice A je n a všechny její sloupce jsou bázové. Ještě jinými slovy, odstupňovaný tvar matice A je horní trojúhelníková matice s nenulovými prvky na hlavní diagonále. Slíbená druhá modifikace. Po převedení soustav na odstupňovaný tvar budeme dále pokračovat v elementárních řádkových úpravách tak, abychom na levé straně dostali jednotkovou matici In. To lze provést díky tomu, že odstupňovaný tvar je horní trojúhelníková matice s nenulovými prvky na hlavní diagonále. Postup je takový, že nejprve „doeliminujeme druhý sloupec – přičtením vhodného násobku druhého řádku k prvnímu docílíme, že hodnota na pozici (1, 2) je nula. Pak vynulujeme přičtením vhodných násobků pozice (1, 3) a (2, 3), atd. Tímto vznikne diagonální matice s nenulovými prvky na hlavní diagonále, ze které umíme udělat jednotkovou vynásobením řádků vhodnými nenulovými prvky. V našem případě máme 1 3 1 0 2 9 0 1 ∼ 1 3 1 0 0 3 −2 1 ∼ ∼ 1 0 3 −1 0 3 −2 1 ∼ 1 0 3 −1 0 1 −2/3 1/3 . Soustavu s jednotkovou maticí je velmi snadné vyřešit – řešením je přímo pravá strana. Postup lze nyní shrnout následovně. Řádkovými úpravami převedeme matici (A | In) do tvaru (In | X) a vpravo si přečteme výslednou matici X, která je inverzní zprava k matici A. 4.4.3. Hledání matice inverzní zleva. Ukázali jsme, že k regulární matici A existuje matice X inverzní zprava, tj. platí AX = In. K důkazu, že X je inverzní matice k A stačí dokázat, že také XA = In. Díky pozorování 4.64 nám stačí najít jakoukoliv matici Y řádu n, která je inverzní zleva k A. Ve skutečnosti jsme ji už našli v průběhu elementárních řádkových úprav (A | In) ∼ · · · ∼ (In | X) vedoucích k matici X. Podívejme se na tento postup pomocí elementárních matic. V tvrzení 4.25 jsme nahlédli, že každá elementární řádková úprava nějaké matice odpovídá násobení této matice nějakou elementární maticí zleva. Připomeňme, že všechny elementární matice jsou čtvercové, a tedy stejného řádu jako matice A. Úpravy lze zapsat jako (A | In) ∼ E1(A | In) ∼ E2(E1(A | In)) ∼ . . . , kde E1, E2, . . . jsou elementární matice příslušných elementárních řádkových úprav. LINEÁRNÍ ALGEBRA 111 Vezmeme-li v úvahu asociativitu násobení matic a pravidlo o násobení po blocích, můžeme postup zapsat ve tvaru (A | In) ∼ (E1A | E1In) = (E1A | E1) ∼ (E2E1A | E2E1) ∼ · · · ∼ ∼ (Ek . . . E2E1A | Ek . . . E2E1) = (In | X) . Srovnáním levých bloků v poslední rovnosti dostáváme, že pro matici Y = Ek . . . E2E1 platí Y A = In, takže matice Y je inverzní zleva k matici A. Na základě pozorování 4.64 můžeme konstatovat, že Y = X. Tuto rovnost také získáme srovnáním pravých bloků v poslední rovnosti předchozího výpočtu. Pro matici X nalezenou v části 4.4.2 tedy platí XA = AX = In, tj. X je inverzní matice k matici A. Současně jsme zjistili, že X můžeme vyjádřit jako součin elementárních matic. 4.4.4. Charakterizace regulárních matic. Následující věta shrnuje různé ekvivalentní charakterizace regularity – geometrické charakterizace, charakterizace pomocí odstupňovaného tvaru, a algebraické charakterizace pomocí invertovatelnosti a elementárních matic. Věta 4.65. Pro čtvercovou matici A řádu n nad tělesem T jsou následující tvrzení ekvivalentní: (1) matice A je regulární, (2) zobrazení fA je na Tn (jinými slovy, soustava Ax = b má pro každou pravou stranu b ∈ Tn alespoň jedno řešení), (3) zobrazení fA je prosté (jinými slovy, soustava Ax = b má pro každou pravou stranu b ∈ Tn nejvýše jedno řešení), (4) soustava Ax = o má jediné řešení x = o, (5) Gaussova eliminace převede matici A do horního trojúhelníkového tvaru s nenulovými prvky na hlavní diagonále (ekvivalentně do odstupňovaného tvaru bez nulových řádků), (6) matici A lze převést elementárními řádkovými úpravami do jednotkové matice In, (7) matice A je invertovatelná, (8) existuje čtvercová matice X řádu n taková, že AX = In, (9) existuje čtvercová matice Y řádu n taková, že Y A = In, (10) matice A je součinem elementárních matic. Důkaz. Implikace (1) ⇒ (3) ⇒ (4) a (1) ⇒ (2) jsou triviální. Argumenty pro (2) nebo (4) ⇒ (5) ⇒ (6) ⇒ (7) ⇒ (1) byly již předvedeny výše, takže je jen stručně shrneme. (4) ⇒ (5). Řešíme-li soustavu rovnic Ax = o Gaussovou eliminací a získáme odstupňovaný tvar s alespoň jednou volnou proměnnou, pak má soustava více řešení (u soustavy s nulovou pravou stranou se ani nemůže stát, že řešení neexistuje). Podobně ukážeme (2) ⇒ (5). Pokud odstupňovaný tvar matice A má nulový řádek, pak soustava Ax = b nemá pro nějakou pravou stranu řešení, takže fA není na. Toto si rozmyslete podrobně jako cvičení. (5) ⇒ (6). Matici A převedeme do horní trojúhelníkové matice s nenulovými prvky na diagonále a pak doeliminujeme postupně druhý sloupec, třetí sloupec, atd. Získáme diagonální matici a stačí vynásobit řádky vhodnými prvky tělesa. 112 LIBOR BARTO A JIŘÍ TŮMA (6) ⇒ (7). Toto je jádro důkazu. Použijeme postup (A | In) ∼ · · · ∼ (In | X). Díváme-li se na tento postup jako na řešení n soustav lineárních rovnic, máme AX = In. Díváme-li se na něj jako na násobení elementárními maticemi zleva, získáme XA = In. (7) ⇒ (1). Předvedeme algebraický argument, již jsme viděli geometrický. Platíli Ax = b, pak A−1 Ax = A−1 b, takže rovnice má nejvýše jedno řešení, a to x = A−1 b. Na druhou stranu, tento vektor je skutečně řešením, protože A(A−1 b) = b. Nyní jsme dokázali, že tvrzení (1), (2), (3), (4), (5), (6), (7) jsou ekvivalentní. Ekvivalenci regularity s podmínkou (10) ukážeme později v tvrzení 4.72. Triviálně platí (7) ⇒ (8), (9), takže stačí dokázat třeba (8) ⇒ (2) a (9) ⇒ (3). (8) ⇒ (2). Je-li AX = In, pak fAfX = fIn = idT n , takže k zobrazení fA existuje zobrazení inverzní zprava, tedy fA je na. Implikace (9) ⇒ (3) se dokáže obdobně. Příklad 4.66. Najdeme matici inverzní k matici A nad tělesem Z5, pokud existuje. A =   0 2 4 3 1 4 4 2 1   Řádkovými úpravami upravujeme (A | I3):   0 2 4 1 0 0 3 1 4 0 1 0 4 2 1 0 0 1   ∼   3 1 4 0 1 0 0 2 4 1 0 0 4 2 1 0 0 1   ∼   3 1 4 0 1 0 0 2 4 1 0 0 0 4 4 0 2 1   ∼   3 1 4 0 1 0 0 2 4 1 0 0 0 0 1 3 2 1   ∼   3 0 2 2 1 0 0 2 4 1 0 0 0 0 1 3 2 1   ∼   3 0 0 1 2 3 0 2 0 4 2 1 0 0 1 3 2 1   ∼ ∼   1 0 0 2 4 1 0 1 0 2 1 3 0 0 1 3 2 1   Takže A je regulární a platí A−1 =   2 4 1 2 1 3 3 2 1   . Příklad 4.67. Najdeme matici inverzní k matici A nad tělesem Z2, pokud existuje. A =   1 0 1 0 1 1 1 1 0   Opět řádkovými úpravami upravujeme (A | In):   1 0 1 1 0 0 0 1 1 0 1 0 1 1 0 0 0 1   ∼   1 0 1 1 0 0 0 1 1 0 1 0 0 1 1 1 0 1   ∼   1 0 1 1 0 0 0 1 1 0 1 0 0 0 0 1 1 1   . Odstupňovaný tvar matice A není horní trojúhelníková matice s nenulovými prvky na diagonále, takže A je singulární podle (1)⇔(5) z věty 4.65. Inverzní matice neexistuje podle bodu (7) stejné věty. Chápeme-li A jako matici nad tělesem Z3 nebo R, pak je regulární. LINEÁRNÍ ALGEBRA 113 Příklad 4.68. Někdy je výhodnější se trochu zamyslet než ihned začít počítat podle uvedeného algoritmu. Příkladem je výpočet inverzní matice k reálné matici A =   1 1 1 1/2 0 0 1 0 1/3   . Hledáme matici X takovou, že AX = I3. Znovu si uvědomíme, že při násobení matice X zleva maticí A děláme lineární kombinace řádků matice X, kde koeficienty jsou v řádcích matice A – tvrzení 4.23. Druhý řádek matice A nám říká, že druhý řádek výsledné matice I3, tj. řádek (0, 1, 0), je 1/2-násobek prvního řádku matice X. Z toho okamžitě vidíme, že první řádek matice X je (0, 2, 0). X =   0 2 0 ? ? ? ? ? ?   . Z posledního řádku matice A vidíme, že třetí řádek výsledku I3, tj. (0, 0, 1), je roven 1-násobku prvního řádku matice X (o tom už víme, že se rovná (0, 2, 0)) plus 1/3-násobku třetího řádku matice X. Z toho snadno dopočteme, že třetí řádek X je (0, −6, 3). X =   0 2 0 ? ? ? 0 −6 3   . Z prvního řádku matice A pak podobně dopočítáme druhý řádek matice X a zís- káme X =   0 2 0 1 4 −3 0 −6 3   . Snadno ověříme, že X je skutečně matice inverzní. Jako cvičení proveďte podobnou úvahu sloupcově pro rovnici XA = I3 a řádkově pro rovnici XA = I3. Příklad 4.69. Pokud A je regulární matice, pak každá soustava rovnic Ax = b má podle definice regulární matice právě jedno řešení. Jak jsme již viděli v důkazu věty 4.65, vynásobením obou stran maticí A−1 zleva získáme explicitní vzorec: x = A−1 b . Například řešením soustavy rovnic nad Z5   0 2 4 3 1 4 4 2 1     x1 x2 x3   =   1 2 3   je vektor   x1 x2 x3   = A−1 b =   2 4 1 2 1 3 3 2 1     1 2 3   =   3 3 0   , kde A−1 jsme spočítali v příkladu 4.66. K numerickému řešení konkrétních rovnic se vzorec x = A−1 b nehodí, protože Gaussova eliminace a zpětná substituce je rychlejší postup. Stejně jako v části 2.7 114 LIBOR BARTO A JIŘÍ TŮMA můžeme spočítat, že samotný výpočet inverzní matice převedením matice (A|In) do matice (In|A−1 ) pomocí elementárních řádkových úprav vyžaduje n3 násobení/dělení a n3 − 2n2 + n sčítání/odčítání . K tomu je třeba ještě připočíst počet operací nutných k výpočtu součinu A−1 b, který se rovná n2 násobení/dělení a n2 − n sčítání/odčítání . Celkem tedy řešení soustavy Ax = b s regulární maticí A pomocí vzorce x = A−1 b vyžaduje n3 + n2 násobení/dělení a n3 − n2 sčítání/odčítání . Pro velká n je to zhruba třikrát více aritmetických operací než je třeba na Gaussovu eliminaci a zpětnou substituci. Vzorec se spíš hodí pro teoretické úvahy, kdy potřebujeme zapsat řešení obecné soustavy lineárních rovnic s regulární maticí. Důležité příklady regulárních matic tvoří elementární matice. To je v souladu se skutečností, že elementární úpravy jsou vratné. Tvrzení 4.70. Každá elementární matice je regulární, navíc inverzní matice k elementární matici je opět elementární. Důkaz. K důkazu můžeme přímo najít matice inverzní, jsou jimi matice úprav, které ruší efekt příslušné elementární úpravy. Pak pouze využijeme ekvivalenci invertovatelnosti a regulárnosti z charakterizační věty 4.65. 4.4.5. Regularita a maticové operace. Tvrzení 4.71. Jsou-li A, B regulární matice stejného řádu n nad stejným tělesem T a t ∈ T nenulový prvek, pak platí (1) A−1 je regulární a platí (A−1 )−1 = A, (2) AT je regulární a platí (AT )−1 = (A−1 )T , (3) tA je regulární a platí (tA)−1 = t−1 A−1 , (4) AB je regulární a platí (AB)−1 = B−1 A−1 . Důkaz. Důkaz můžeme provést tak, že ukážeme, že popsané matice jsou skutečně matice inverzní (stačí z jedné strany). Například (AB)−1 = B−1 A−1 , protože (B−1 A−1 )(AB) = B−1 (A−1 A)B = B−1 B = I. Geometrickou interpretaci bodů (1), (3), (4) si rozmyslete jako cvičení. Pro sčítání podobné tvrzení neplatí, stačí se podívat na součet A + (−A), kde matice A (a tím pádem i −A) je regulární, například A = In. Pomocí bodu (4) dokončíme důkaz charakterizační věty 4.65. Tvrzení 4.72. Čtvercová matice A je regulární právě tehdy, když jde napsat jako součin elementárních matic. Důkaz. Každá elementární matice je regulární podle tvrzení 4.70, takže podle bodu (4) v předchozím tvrzení je libovolný součin elementárních matic regulární matice. To dokazuje implikaci zprava doleva. Naopak, je-li A regulární, pak ji lze elementárními řádkovými úpravami převést na jednotkovou matici (podle bodu (6) charakterizační věty 4.65). Elementární LINEÁRNÍ ALGEBRA 115 řádkové úpravy se dají napsat jako násobení zleva elementární maticí, takže existují elementární matice E1, E2, . . . , Ek takové, že Ek · · · E2E1A = In , kde n je řád A. Protože elementární matice jsou regulární (podle tvrzení 4.70), tedy i invertibilní, můžeme vztah upravit na A = E−1 1 E−1 2 · · · E−1 k . Teď jsme hotovi, protože inverzní matice k elementárním maticím jsou elementární (opět podle tvrzení 4.70). Příklad 4.73. Z důkazu také vidíme postup, jak rozklad na elementární matice nalézt. Najdeme rozklad matice A =   0 2 3 1 0 0 3 0 3   nad Z5. Matici převedeme elementárními řádkovými úpravami na jednotkovou a zaznamenáme si úpravy.   0 2 3 1 0 0 3 0 3   ∼   1 0 0 0 2 3 3 0 3   ∼   1 0 0 0 2 3 0 0 3   ∼ ∼   1 0 0 0 2 0 0 0 3   ∼   1 0 0 0 1 0 0 0 3   ∼   1 0 0 0 1 0 0 0 1   Matice úprav jsou E1 =   0 1 0 1 0 0 0 0 1   , E2 =   1 0 0 0 1 0 2 0 1   , E3 =   1 0 0 0 1 4 0 0 1   , E4 =   1 0 0 0 3 0 0 0 1   , E5 =   1 0 0 0 1 0 0 0 2   Takže máme A =E−1 1 E−1 2 E−1 3 E−1 4 E−1 5 =   0 1 0 1 0 0 0 0 1     1 0 0 0 1 0 3 0 1     1 0 0 0 1 1 0 0 1     1 0 0 0 2 0 0 0 1     1 0 0 0 1 0 0 0 3   . Nyní můžeme také elegantně popsat, kdy lze jednu matici dostat z druhé posloupností elementárních řádkových úprav. Uvažujme dvě matice A, B stejného typu (nad stejným tělesem). Pokud B vznikla z A posloupností elementárních úprav, pak pro příslušné elementární matice E1, . . . , Ek, které popisují provedené úpravy, platí B = Ek · · · E2E1A . Podle tvrzení 4.72 je matice R = Ek · · · E1 regulární. Naopak, pokud B = RA pro nějakou regulární matici R, pak podle stejného tvrzení platí R = Ek · · · E2E1 pro nějaké elementární matice E1, . . . , Ek. Z toho 116 LIBOR BARTO A JIŘÍ TŮMA vyplývá, že B lze z A získat posloupností elementárních úprav. Dokázali jsme následující tvrzení. Tvrzení 4.74. Nechť A, B jsou matice typu m × n nad tělesem T. Pak B lze z A získat posloupností elementárních řádkových úprav právě tehdy, když existuje regulární matice R řádu m nad T taková, že B = RA. 4.4.6. Jednostranné inverzy. Pro zobrazení f : X → X na nekonečné množině X obecně neplatí, že f je vzájemně jednoznačné, pokud je f prosté. Také neplatí, že f je vzájemně jednoznačné, pokud je f na. To je rozdíl oproti situaci, kdy je množina X je konečná. Ve větě 4.65 jsme ukázali že zobrazení tvaru fA : Tn → Tn (pro čtvercovou matici A) jsou „spořádaná v tom smyslu, že kdykoliv je fA prosté nebo na, pak je fA vzájemně jednoznačné. Dokázali jsme tam také, že pro čtvercovou matici A je zobrazení fA prosté (ekvivalentně na) právě tehdy, když A má inverzní matici (zleva nebo zprava). Následující dvě tvrzení podávají podobné charakterizace pro obecné, ne nutně čtvercové, matice. Tvrzení 4.75 (o matici inverzní zprava). Pro matici A typu m × n nad T je ekvivalentní: (i) Existuje matice X typu n × m nad T taková, že AX = Im. (ii) Zobrazení fA : Tn → Tm je na Tm . Důkaz. Pokud AX = Im, pak pro příslušná zobrazení fA a fX platí fAX = fIm , tedy fA ◦ fX = idT m . K zobrazení fA tedy existuje zprava inverzní, fA je proto na Tm . Naopak, předpokládejme, že fA je na. Pro j-tý sloupec ej jednotkové matice Im najdeme nějaké řešení soustavy rovnic Axj = ej (řešení existuje, protože fA je na). Vektory xj srovnáme do sloupců matice X = (x1|x2| . . . |xm). Pak platí AX = (Ax1| . . . |Axm) = Im. Tvrzení 4.76 (o matici inverzní zleva). Pro matici A typu m × n nad T je ekvi- valentní: (i) Existuje matice X typu n × m nad T taková, že XA = In. (ii) Zobrazení fA : Tn → Tm je prosté. Důkaz. První část se dokáže obdobně jako u předchozího tvrzení. Z rovnosti XA = In plyne fX ◦ fA = fXA = fIn = idT n . Je-li naopak zobrazení fA prosté, má soustava Ax = o jediné řešení x = o. Všechny proměnné jsou bázové. Gaussova eliminace převede A do odstupňovaného tvaru C, kde prvních n řádků v C je nenulových a ostatní jsou nulové. Stejně jako v algoritmu pro hledání inverzní matice změníme pomocí elementárních úprav všechny pivoty na 1 a vynulujeme prvky nad nimi. Dostáváme Ek · · · E1A = In 0(m−n)×n pro vhodné elementární matice E1, . . . , Ek. Matici X definujeme jako prvních n řádků matice Ek · · · E1. 4.5. Soustavy lineárních rovnic podruhé. Matice poskytují efektivní formalismus ke studiu soustav lineárních rovnic. Již samotná formulace problému je nyní velice elegantní: pro danou matici A typu m × n nad T a daný aritmetický vektor b ∈ Tm hledáme všechny x ∈ Tn , pro které platí Ax = b . LINEÁRNÍ ALGEBRA 117 4.5.1. Tvar řešení. V kapitole 2 jsme si ukázali, že množinu všech řešení soustavy Ax = b m lineárních rovnic o n neznámých nad tělesem T můžeme zapsat jako    u + p∈P tpvp : tp ∈ T pro každé p ∈ P    kde • P je množina indexů volných proměnných, • u, vp, p ∈ P, jsou „vhodné n-složkové aritmetické vektory nad T. Navíc víme, že různé volby parametrů tp ∈ T dávají různá řešení. (Vlastně jsme vše probírali jen pro T = R, ale postup nad obecným tělesem je stejný.) Aritmetické vektory u a vp, p ∈ P jsme získali užitím zpětné substituce a algebraických úprav. Jde spočítat tyto vektory přímo? Co se stane, když změníme pouze pravou stranu soustavy? Nyní máme nástroje na takové otázky snadno odpovědět. Z tvaru řešení vidíme, že zvolíme-li hodnoty parametrů tp = 0 pro každé p ∈ P, dostaneme řešení x = u. Vektor u tedy můžeme spočítat z odstupňovaného tvaru tím, že zvolíme volné proměnné rovné 0 a dopočteme řešení soustavy. Zvolímeli jeden z parametrů tp = 1 a ostatní parametry rovné 0, dostaneme jiné řešení x = u+vp. Z následující pozorování vyplývá, že vektor vp = (u+vp)−u je řešením soustavy se stejnou maticí a nulovou pravou stranou, tzv. příslušné homogenní soustavy. Pozorování 4.77. Jsou-li u a w dvě řešení soustavy lineárních rovnic Ax = b, pak w − u je řešením soustavy Ax = o. Důkaz. Protože jsou aritmetické vektory u, w řešení soustavy Ax = b, platí Au = Aw = b. Potom A(w − u) = Aw − Au = b − b = o . Aritmetický vektor w − u je proto řešením soustavy Ax = o. Definice 4.78. Soustava Ax = o se nazývá homogenní soustava lineárních rovnic (příslušná k soustavě Ax = b). Vektor vp, p ∈ P lze tedy získat tak, že zvolíme xp = 1, ostatní volné proměnné zvolíme rovné 0 a dopočteme řešení příslušné homogenní soustavy. Tato pozorování nám dávají odpověď i na druhou otázku – směrové vektory vp na pravé straně vůbec nezáleží. Geometricky, změníme-li pravou stranu, řešením bude útvar rovnoběžný k původnímu. Příklad 4.79. Vrátíme se k soustavě k příkladu z oddílu 2.3.4. Po eliminaci jsme získali ekvivalentní soustavu s rozšířenou maticí 1 2 −1 3 0 2 0 0 1 0 2 −3 . Soustava má řešení, bázové proměnné jsou x1 a x3, volné proměnné jsou x2, x4 a x5. Množina všech řešení proto bude tvaru {u + t2v2 + t4v4 + t5v5 : t2, t4, t5 ∈ R}, Na rozdíl od předchozího postupu, určíme nyní aritmetické vektory u, v2, v4 a v5 rychleji. Zvolíme x2 = x4 = x5 a dopočteme řešení soustavy zpětnou substitucí. Při 118 LIBOR BARTO A JIŘÍ TŮMA počítání na papíře to většinou půjde zpaměti. Následující schéma znázorňuje volbu parametrů a postupný výpočet proměnných x3 a x1. (?, 0, ?, 0, 0)T (?, 0, −3, 0, 0)T (−1, 0, −3, 0, 0)T = u Vektor v2 určíme volbou x2 = 1, x4 = x5 = 0 a dopočtením řešení příslušné homogenní soustavy. (?, 1, ?, 0, 0)T (?, 1, 0, 0, 0)T (−2, 1, 0, 0, 0)T = v2 Podobně spočítáme v4 a v5. (?, 0, ?, 1, 0)T (?, 0, 0, 1, 0)T (−3, 0, 0, 1, 0)T = v4 (?, 0, ?, 0, 1)T (?, 0, −2, 0, 1)T (−2, 0, −2, 0, 1)T = v5 Množina řešení je tedy          −1 0 −3 0 0       + t2       −2 1 0 0 0       + t4       −3 0 0 1 0       + t5       −2 0 −2 0 1       : t2, t4, t5 ∈ R    . Všimněte si rovněž, že    p∈P tpvp : tp ∈ T pro každé p ∈ P    je množina všech řešení příslušné homogenní soustavy. Množina všech řešení homogenní soustavy Ax = o je důležitou charakteristikou matice A, která bude v dalším textu hrát významnou roli při zkoumání matic. Definice 4.80. Množina všech řešení homogenní soustavy lineárních rovnic Ax = o se nazývá jádro matice A nebo také nulový prostor matice A. Označujeme ji Ker A. Nabízejí se další otázky. Je důležité zvolit při výpočtu u všechny volné proměnné rovny 0, nebo můžeme volit libovolně? Věta 4.82 na tuto otázku odpovídá. Podobná otázka se nabízí pro výpočet vektorů vp, tu ale budeme umět uspojivě zodpovědět až v kapitole o vektorových prostorech. K důkazu slíbené věty učiníme ještě jedno jednoduché pozorování. Pozorování 4.81. Je-li u řešení soustavy Ax = b a v řešení příslušné homogenní soustavy Ax = o, pak u + v je také řešení soustavy Ax = b. Důkaz spočívá v jednoduchém výpočtu A(u + v) = Au + Av = b + o = b využívajícím opět distributivity. Věta 4.82. Je-li u jakékoliv řešení soustavy lineárních rovnic Ax = b nad tělesem T (tzv. partikulární řešení), pak se množina všech řešení této soustavy rovná {u + v : v ∈ Ker A} = u + Ker A . LINEÁRNÍ ALGEBRA 119 Důkaz. Je-li w řešení soustavy Ax = b, pak w − u ∈ Ker A podle pozorování 4.77 a tedy w = u + (w − u) ∈ {u + v : v ∈ Ker A} . Naopak pro libovolné v ∈ Ker A je u + v řešením soustavy Ax = b podle pozorování 4.81. Ve formulaci věty je zároveň vysvětlen význam výrazů typu u + Ker A, kdy „sčítáme vektor s množinou vektorů. Toto značení budeme příležitostně používat. 4.5.2. LU–rozklad. Začneme podrobným rozborem jednoho příkladu. Příklad 4.83. Máme vyřešit soustavu   2 2 2 1 4 7 7 2 6 18 22 7   . Gaussovou eliminací dostaneme   2 2 2 1 4 7 7 2 6 18 22 7   ∼   2 2 2 1 0 3 3 0 0 12 16 4   ∼   2 2 2 1 0 3 3 0 0 0 4 4   a po zpětné substituci vyjde řešení (x1, x2, x3)T = (1/2, −1, 1). Poté nám zadavatel úlohy řekne, že se spletl a dal nám pravou stranu v opačném pořadí, že vlastně potřebuje vyřešit soustavu   2 2 2 7 4 7 7 2 6 18 22 1   . Tak znovu Gaussova eliminace   2 2 2 7 4 7 7 2 6 18 22 1   ∼   2 2 2 7 0 3 3 −12 0 12 16 −20   ∼   2 2 2 7 0 3 3 −12 0 0 4 28   a po zpětné substituci odevzdáme nový výsledek (x1, x2, x3)T = (15/2, −11, 7). Zadavatel pohlédne na výsledek, chytne se za hlavu a prohlásí něco v tom smyslu, že nejspíš tu pravou stranu špatně odečetl na přístrojích, a jestli bychom mu to nespočítali ještě jednou s pravou stranou rovnou (6, 24, 70)T . Dříve než mu ublížíme, se raději zamyslíme nad tím, že při řešení budeme znovu používat ty samé elementární řádkové úpravy jako poprvé, a možná bychom první řešení mohli nějak využít k urychlení dalších výpočtů. Vzpomeneme si, že každé elementární řádkové úpravě odpovídá nějaká elementární matice, kterou soustavu násobíme zleva. V našem případě jsme násobili postupně elementárními maticemi E1 =   1 0 0 −2 1 0 0 0 1   , E2 =   1 0 0 0 1 0 −3 0 1   , E3 =   1 0 0 0 1 0 0 −4 1   . 120 LIBOR BARTO A JIŘÍ TŮMA Celý průběh Gaussovy eliminace tak zaznamenáme jako součin matic R = E3E2E1 =   1 0 0 0 1 0 0 −4 1     1 0 0 0 1 0 −3 0 1     1 0 0 −2 1 0 0 0 1   =   1 0 0 −2 1 0 5 −4 1   . Protože jsme nemuseli prohazovat řádky, používali jsme pouze třetí elementární úpravu a navíc v podobě přičtení vhodného násobku nějakého řádku k řádku pod ním, což znamená, že jsme násobili pouze dolními trojúhelníkovými maticemi s jednotkami na hlavní diagonále. Jejich součin R je proto také dolní trojúhelníková matice s jednotkami na hlavní diagonále podle bodu (6) tvrzení 4.34. Řešíme-li další soustavu (A|b) se stejnou maticí soustavy A Gaussovou eliminací, násobíme ji opět zleva maticí R = E3E2E1. Po Gaussově eliminaci tak dostaneme soustavu R(A|b) = (RA|Rb). Součin matic RA = E3E2E1A navíc známe hned po první Gaussově eliminaci, neboť RA =   1 0 0 −2 1 0 5 −4 1     2 2 2 4 7 7 6 18 22   =   2 2 2 0 3 3 0 0 4   . Při každém dalším pokusu uspokojit zadavatele tak potřebujeme vyřešit soustavu Ux = RAx = Rb se známou horní trojúhelníkovou maticí U = RA. Tu můžeme vyřešit zpětnou substitucí, problém ale zůstává s pravou stranou, neboť ta vyžaduje provést všechny elementární řádkové úpravy použité při prvním výpočtu na nový vektor pravých stran. Také výpočtu Rb se lze vyhnout. Součin elementárních matic R = E3E2E1 rozdělíme na dvě části E3(E2E1). Součin E2E1 odpovídá prvnímu cyklu Gaussovy eliminace – eliminaci prvního sloupce – a rovná se E2E1 =   1 0 0 0 1 0 −3 0 1     1 0 0 −2 1 0 0 0 1   =   1 0 0 −2 1 0 −3 0 1   . Součin E2E1 známe hned po první Gaussově eliminaci. Kromě jednotek na hlavní diagonále obsahuje v prvním sloupci koeficienty násobků prvního řádku, které přičítáme k řádkům pod ním během eliminace prvního sloupce. K druhému řádku jsme přičítali (−2)-násobek prvního řádku, ke třetímu (−3)-násobek. Můžeme tak říct, že součin E2E1 je záznamem prvního cyklu Gaussovy eliminace. Podobně je matice E3 =   1 0 0 0 1 0 0 −4 1   záznamem o eliminaci druhého sloupce matice A, tj. druhém cyklu Gaussovy elim- kinace. LINEÁRNÍ ALGEBRA 121 Obě matice E2E1 a E3 mají tak jednoduchou strukturu, že můžeme přímo napsat matice k nim inverzní: (E2E1)−1 =   1 0 0 2 1 0 3 0 1   , E−1 3 =   1 0 0 0 1 0 0 4 1   . Můžeme proto také hned spočítat matici R−1 inverzní k součinu R = E3(E2E1): R−1 = (E2E1)−1 E−1 3 =   1 0 0 2 1 0 3 0 1     1 0 0 0 1 0 0 4 1   =   1 0 0 2 1 0 3 4 1   . Matice R−1 je záznamem o celém průběhu Gaussovy eliminace při řešení první soustavy. Je to dolní trojúhelníková matice s jednotkami na hlavní diagonále a na místě (i, j) pod hlavní diagonálou je prvek opačný k číslu, kterým jsme násobili j-tý řádek při eliminaci prvku na místě (i, j). Díky tomu, že matici R−1 známe hned po první Gaussově eliminaci, v tomto kontextu je vždy označována L, upravíme si soustavu Ux = Rb do tvaru R−1 Ux = LUx = b . Protože U = RA, platí LU = R−1 RA = A. Matici A tak máme vyjádřenou jako součin dolní trojúhelníkové matice L s horní trojúhelníkovou maticí U. Podstatné je, že obě matice L a U známe poté, co jsme jednou použili Gaussovu eliminaci na matici A a v jejím průběhu jsme nepoužili prohazování řádků. Řešení soustavy LUx = b můžeme rozdělit na řešení dvou soustav. Napřed vyřešíme soustavu Ly = b s dolní trojúhelníkovou maticí a poté soustavu Ux = y s horní trojúhelníkovou maticí. Dá-li nám zadavatel novou pravou stranu (6, 24, 70)T , nemrkneme okem a napřed vyřešíme přímou substitucí soustavu   1 0 0 6 2 1 0 24 3 4 1 70   , dostaneme řešení y = (6, 12, 4)T . Poté použijeme zpětnou substituci na řešení sou- stavy   2 2 2 6 0 3 3 12 0 0 4 4   a dostaneme řešení x = (−1, 3, 1)T soustavy Ax = b. Postup z předchozího příkladu můžeme použít při opakovaném řešení soustavy lineárních rovnic s regulární maticí A v případě, že během Gaussovy eliminace používáme pouze třetí krok, tj. nemusíme prohazovat řádky. V tom případě jsou všechny elementární matice odpovídající elementárním úpravám dolní trojúhelníkové s jednotkami na hlavní diagonále a jejich součin R je také dolní trojúhelníková matice s jednotkami na hlavní diagonále podle bodu (6) tvrzení 4.34. Ta je navíc regulární coby součin elementárních matic, tvrzení 4.72. Inverzní matice R−1 proto existuje a podle následujícího tvrzení je rovněž dolní trojúhelníková s jednotkami na hlavní diagonále. 122 LIBOR BARTO A JIŘÍ TŮMA Tvrzení 4.84. Nechť R je dolní (horní) trojúhelníková matice řádu n s nenulovými všemi prvky na hlavní diagonále. Pak R je regulární a inverzní matice R−1 je také dolní (horní) trojúhelníková. Má-li navíc matice R na hlavní diagonále všechny prvky rovné 1, pak i matice R−1 má samé jednotky na hlavní diagonále. Důkaz. Je-li R dolní trojúhelníková s nenulovými prvky na hlavní diagonále, pak RT je regulární podle bodu (5) z věty 4.65. Tím pádem je i R regulární podle tvrzení 4.71. Při výpočtu inverzní matice R−1 převodem matice (R|In) do (In|R−1 ) pomocí elementárních řádkových úprav můžeme napřed změnit všechny prvky na hlavní diagonále na 1 pomocí vhodných násobků jednotlivých řádků a poté vynulujeme všechny prvky pod hlavní diagonálou pomocí přičítání vhodných násobků jednotlivých řádků k řádkům po ním. Všem řádkovým úpravám odpovídají dolní trojúhelníkové matice E1, E2, . . . , Ek, platí proto Ek · · · E2E1R = In a matice R−1 = Ek · · · E2E1 je dolní trojúhelníková podle bodu (5) tvrzení 4.34. Pokud má matice R hned na počátku na hlavní diagonále prvky 1, můžeme první fázi vynechat a použít pouze přičítání vhodných násobků jednoho řádku k řádkům pod ním. V tom případě používáme pouze dolní trojúhelníkové matice E1, E2, . . . , Ek s jednotkami na hlavní diagonále a jejich součin R−1 = Ek · · · E2E1 je proto rovněž dolní trojúhelníková matice s jednotkami na hlavní diagonále podle bodu (6) tvrzení 4.34. Případy, kdy je matice R horní trojúhelníková plynou pomocí transponování z právě dokázaných vlastností inverze dolních trojúhelníkových matic. Vrátíme se k diskusi předcházející formulaci tvrzení 4.84. Pokud při Gaussově eliminaci použité na regulární matici A nepotřebujeme přehazovat řádky, existuje dolní trojúhelníková matice R s jednotkami na hlavní diagonále taková, že součin RA = U je horní trojúhelníková matice s nenulovými prvky na hlavní diagonále. Podle tvrzení 4.84 je inverzní matice R−1 také dolní trojúhelníková s jednotkami na hlavní diagonále a platí pro ni A = R−1 U. Dokázali jsme tak existenční část následující věty o LU-rozkladu. Věta 4.85 (O LU-rozkladu). Nechť A je regulární matice řádu n, u které při Gaussově eliminaci nemusíme prohazovat řádky. Pak existují regulární matice L, U řádu n, pro které platí • A = LU, • L je dolní trojúhelníková s jednotkami na hlavní diagonále, • U je horní trojúhelníková s nenulovými prvky na hlavní diagonále. Matice L, U jsou těmito podmínkami určené jednoznačně. Důkaz. Existenci jsme již dokázali, zbývá dokázat jednoznačnost. Předpokládejme tedy, že A = L1U1 = L2U2 jsou rozklady splňující podmínky věty. Chceme dokázat, že L1 = L2 a U1 = U2. Vynásobením rovnosti L1U1 = L2U2 zleva maticí L−1 2 a poté zprava maticí U−1 1 získáme L−1 2 L1 = U2U−1 1 . Matice L−1 2 L1 je dolní trojúhelníková s jednotkami na hlavní diagonále podle tvrzení 4.84 a tvrzení 4.34. Je rovná horní trojúhelníkové matici U2U−1 1 . Z toho plyne, LINEÁRNÍ ALGEBRA 123 že obě strany jsou diagonální matice s jednotkami na hlavní diagonále, tj. jednotkové matice. Proto L−1 2 L1 = In a U2U−1 1 = In, z čehož po úpravě dostáváme L1 = L2 a U1 = U2. V příkladu 4.83 jsme si na příkladu matice řádu 3 ukázali, jak efektivně nalézt LU-rozklad matice pomocí Gaussovy eliminace. Postup lze jednoduše zobecnit na regulární matici A = (aij) libovolného řádu n. Pokud nemusíme prohazovat řádky před eliminací prvního sloupce, je a11 = 0. Pro každé i > 1 pak přičteme (−ai1/a11)-násobek prvního řádku k i-tému. Výsledek prvního cyklu Gaussovy eliminace dosáhneme vynásobením matice A zleva maticí F1 =        1 0 0 · · · 0 − 21 1 0 · · · 0 − 31 0 1 · · · 0 ... ... ... ... ... − n1 0 0 · · · 1        = In −        0 21 31 ... n1        (1, 0, 0, . . . , 0) , kde i1 = ai1/a11 pro každé i = 1, 2, . . . , n. Výsledek druhého cyklu – eliminaci druhého sloupce – získáme tak, že matici F1A vynásobíme zleva maticí F2 =        1 0 0 · · · 0 0 1 0 · · · 0 0 − 32 1 · · · 0 ... ... ... ... ... 0 − n2 0 · · · 1        = In −        0 0 31 ... n1        (0, 1, 0, . . . , 0) , kde pro každé i > 2 je − i2 koeficient, kterým násobíme druhý řádek při eliminaci prvku na místě (i, 2). Obecně označíme pro každé j = 1, 2, . . . , n − 1 symbolem Fj matici Fj =             1 0 · · · 0 0 · · · 0 0 1 · · · 0 0 · · · 0 ... ... ... ... ... ... 0 0 · · · 1 0 · · · 0 0 0 · · · − j+1,j 1 · · · 0 ... ... ... ... ... ... 0 0 · · · − n,j 0 · · · 1             = In−             0 0 ... 0 j+1,j ... n,j             (0, 0, . . . , 0, 1, . . . , 0) , kde opět − i,j je koeficient, kterým jsme násobili j-tý řádek při eliminaci prvku na místě (i, j) pro libovolné i > j. Výsledek Gaussovy eliminace je pak horní trojúhelníková matice s nenulovými prvky na hlavní diagonále U = Fn−1 · · · F2F1A . Všechny matice Fj jsou dolní trojúhelníkové matice s jednotkami na hlavní diagonále, proto i jejich součin Fn−1 · · · F2F1 a inverzní matice (Fn−1 · · · F2F1)−1 = F−1 1 F−1 2 · · · F−1 n−1 jsou dolní trojúhelníkové matice s jednotkami na hlavní diagonále podle bodu (6) tvrzení 4.34 a tvrzení 4.84. 124 LIBOR BARTO A JIŘÍ TŮMA Zbývá spočítat matici F−1 1 F−1 2 · · · F−1 n−1. K tomu se hodí označit sloupcové vektory použité při vyjádření matic Fj: mj =             0 0 ... 0 j+1,j ... n,j             . Pro každé j = 1, 2, . . . , n − 1 tak platí Fj = In − mjeT j . Nyní snadno ověříme, že F−1 j =             1 0 · · · 0 0 · · · 0 0 1 · · · 0 0 · · · 0 ... ... ... ... ... ... 0 0 · · · 1 0 · · · 0 0 0 · · · j+1,j 1 · · · 0 ... ... ... ... ... ... 0 0 · · · n,j 0 · · · 1             = In + mjeT j . Skutečně, Fj(In + mjeT j ) = (In − mjeT j )(In + mjeT j ) = I2 n + mjeT j In − InmjeT j − mjeT j mjeT j = In + mjeT j − mjeT j + mj(eT j mj)eT j = In , neboť eT j mj = (0, 0, . . . , 1, 0, . . . , 0)             0 0 ... 0 j+1,j ... n,j             = 0 . Zbývá spočítat součin F−1 1 F−1 2 · · · F−1 n−1. Jako ukázku spočteme součin F−1 1 F−1 2 = (In + m1eT 1 )(In + m2eT 2 ) = In + m1eT 1 + m2eT 2 + m1eT 1 m2eT 2 = In + m1eT 1 + m2eT 2 . LINEÁRNÍ ALGEBRA 125 Platí proto F−1 1 F−1 2 =        1 0 0 · · · 0 21 1 0 · · · 0 31 32 1 · · · 0 ... ... ... ... ... n1 n2 0 · · · 1        . Naprosto stejně spočítáme L = F−1 1 F−1 2 · · · F−1 n−1 = (In + m1eT 1 )(In + m2eT 2 ) · · · (In + mn−1eT n−1) = In + m1eT 1 + m2eT 2 + · · · + mn−1eT n−1 + i j, • dolní trojúhelníková, pokud aij = 0 kdykoliv i < j. (7) Pro matice A = (aij) a B = (bij) stejného typu m × n nad stejným tělesem definujeme • součet matic A a B jako matici A + B = (aij + bij)m×n, • matici opačnou k A jako matici −A = (−aij)m×n, • dále definujeme nulovou matici typu m×n jako matici 0m×n = (0)m×n. (8) Jsou-li A, B, C matice stejného typu m × n nad stejným tělesem T, pak platí (a) (A + B) + C = A + (B + C), (b) A + 0m×n = A, (c) A + (−A) = 0m×n, (d) A + B = B + A. (9) Pro matici A = (aij) typu m × n nad tělesem T a t ∈ T definujeme • t-násobek matice A jako matici t · A = tA = (taij)m×n. (10) Pro matice A = (aij) a B = (bij) téhož typu m × n nad stejným tělesem T a pro libovolné dva prvky s, t ∈ T platí (a) s(tA) = (st)A, (b) 1A = A, (c) −A = (−1)A, 132 LIBOR BARTO A JIŘÍ TŮMA (d) (s + t)A = sA + tA, (e) s(A + B) = sA + sB. (11) Transponovaná matice k matici A = (aij)m×n je matice AT = (bji)n×m, kde bji = aij pro libovolné indexy i ∈ {1, 2, . . . , m} a j ∈ {1, 2, . . . , n}. (12) Pro matice A = (aij) a B = (bij) téhož typu m × n nad stejným tělesem T a pro libovolný prvek s ∈ T platí (a) AT T = A, (b) (A + B)T = AT + BT , (c) (sA)T = s AT . (13) Matici A = (aij)m×n nad tělesem T můžeme také zapsat po sloupcích. Sloupcový zápis matice A je A = (a1|a2| . . . |an) , kde pro každé j = 1, 2, . . . , n vektor aj = (a1j, a2j, . . . , amj)T je m-složkový sloupcový aritmetický vektor nad T. (14) Sloupcový zápis matice AT je AT = (˜a1|˜a2| · · · |˜am) , kde pro každé i = 1, 2, . . . , m vektor ˜ai = (ai1, ai2, . . . , ain)T je i-tý sloupcový vektor transponované matice AT . Řádkový zápis matice A je A =      ˜aT 1 ˜aT 2 ... ˜aT m      , kde ˜aT i = (ai1, ai2, . . . , ain) je i-tý řádkový vektor matice A. (15) Je-li A = (a1|a2| · · · |an) matice typu m×n nad tělesem T a b = (b1, b2, . . . , bn)T (sloupcový) aritmetický vektor s n-složkami z tělesa T, pak definujeme součin matice A s vektorem b jako Ab = b1a1 + b2a2 + · · · + bnan . (16) Soustavu m lineárních rovnic o n neznámých x1, x2, . . . , xn s maticí soustavy A = (aij)m×n a vektorem pravých stran b ∈ Tm můžeme zapsat jako součin Ax = b , kde x = (x1, x2, . . . , xn)T je vektor neznámých. (17) Je-li A matice typu m × n a B = (b1|b2| · · · |bp) matice typu n × p, obě nad stejným tělesem T, pak součinem matic A a B rozumíme matici AB = (Ab1|Ab2| · · · |Abp) , tj. j-tý sloupec součinu matic AB se rovná součinu matice A s j-tým sloupcem matice B. Součin AB má tedy typ m × p. (18) Součin matic A = (aij)m×n a B = (bjk)n×p můžeme také spočítat po prvcích, neboť prvek na místě (i, k) v součinu AB se rovná ai1b1j + ai2b2j + · · · + ainbnj = n j=1 aijbjk = ˜aT i bk . Také se říká „výpočet součinu matic podle pravidla řádek × sloupec . LINEÁRNÍ ALGEBRA 133 (19) Součin matice A = (aij)m×n s maticí B = (bjk)n×p můžeme také spočítat po řádcích, neboť pro každé i = 1, 2, . . . , m se i-tý řádek v součinu AB rovná součinu i-tého řádku ˜aT i matice A s maticí B, tj. ˜aT i B. (20) Násobení matic není komutativní. (21) Jsou-li A = (aij) a B = (bij) matice téhož typu m × n, C = (cjk) matice typu n × p, a D = (dkl), E = (ekl) matice téhož typu p × q, všechny nad stejným tělesem T, a s ∈ T, pak platí (a) ImA = A = AIn, (b) B(CD) = (BC)D, (c) (A + B)C = AC + BC, (d) C(D + E) = CD + CE, (e) (BC)T = CT BT , (f) s(BC) = (sB)C = B(sC). (22) Pro libovolné čtvercové matice A = (aij) a B = (bjk) téhož řádu n platí, že jejich součin AB je (a) diagonální, jsou-li obě matice A, B diagonální, (b) permutační matice, jsou-li obě matice A, B permutační, (c) horní trojúhelníková matice, jsou-li obě matice A, B horní trojúhelníkové matice, (d) horní trojúhelníková s prvky 1 na hlavní diagonále, jsou-li obě matice A, B horní trojúhelníkové s prvky 1 na hlavní diagonále, (e) dolní trojúhelníková matice, jsou-li obě matice A, B dolní trojúhelníkové matice, (f) dolní trojúhelníková s prvky 1 na hlavní diagonále, jsou-li obě matice A, B dolní trojúhelníkové s prvky 1 na hlavní diagonále. (23) Elementární matice řádu m je libovolná matice, kterou dostaneme z identické matice Im jednou elementární řádkovou úpravou. (24) Je-li E elementární matice řádu m a A libovolná matice typu m × n, pak matici EA dostaneme z matice A tou samou elementární řádkovou úpravou, kterou jsme dostali matici E z jednotkové matice Im. (25) Matice A = (aij)m×n a B = (bjk)n×p můžeme také vynásobit po blocích A11 A12 A21 A22 B11 B12 B21 B22 = A11B11 + A12B21 A11B12 + A12B22 A21B11 + A22B21 A21B12 + A22B22 , pokud jsou všechny součiny bloků vpravo definované, tj. pokud jsou rozklady matic A, B do bloků kompatibilní. Matice můžeme kompatibilně rozdělit do více bloků a pak je vynásobit po blocích. (26) Je-li A matice typu m × n nad tělesem T, pak definujeme zobrazení fA : Tn → Tm určené maticí A předpisem fA(x) = Ax pro každý aritmetický vektor x ∈ Tn . 134 LIBOR BARTO A JIŘÍ TŮMA (27) Rotace kolem počátku souřadnic v tovině o úhel α proti směru hodinových ručiček je určená maticí cos α − sin α sin α cos α . (28) Symetrie v rovině vzhledem k první souřadné ose je určená maticí 1 0 0 −1 . (29) Je-li T nějaké těleso a n ∈ N, pak pro každé j = 1, 2, . . . , n označujeme ej = (0, . . . , 0, 1, 0, . . . , 0)T ∈ Tn vektor, který má j-tou složku rovnou 1 a všechny ostatní složky rovné 0. Vektory e1, e2, . . . , en nazýváme prvky kanonické báze v Tn . (30) Pro každou matici A = (a1|a2| · · · |an) a každé j = 1, 2, . . . , n platí rovnost fA(ej) = ai. Matice A určující zobrazení fA je určená jenoznačně. (31) Je-li A matice typu m × n nad tělesem T, pak pro každé dva aritmetické vektory x, y ∈ Tn a každý prvek s ∈ T platí • fA(sx) = A(sx) = s Ax = s fA(x), • fA(x + y) = A(x + y) = Ax + Ay = fA(x) + fA(y). (32) Jsou-li A matice typu m × n a B matice typu n × p nad stejným tělesem T, pak zobrazení fA : Tn → Tm a fB : Tp → Tn můžeme složit v pořadí fAfB a pro složené zobrazení fAfB : Tp → Tm platí fAfB = fAB , protože pro každý vektor x ∈ Tp platí fAfB(x) = fA(Bx) = A(Bx) = (AB)x = fAB(x). (33) Symetrie v rovině vzhledem k přímce, kterou dostaneme z první souřadné osy otočením kolem počátku o úhel α v kladném směru, je určená maticí cos 2α sin 2α sin 2α − cos 2α . (34) Ortogonální projekce v rovině na první souřadnou osu je určená maticí 1 0 0 0 . (35) Jednotková matice In nad tělesem T určuje identické zobrazení na množině Tn . (36) Čtvercová matice A nad tělesem T řádu n se nazývá invertovatelná, pokud existuje čtvercová matice X řádu n nad T taková, že AX = XA = In. Matici X nazýváme inverzní matice k A a označujeme ji A−1 . (37) Čtvercová matice A nad tělesem T řádu n se nazývá regulární, pokud je zobrazení fA : Tn → Tn určené maticí A vzájemně jednoznačné (tj. bijekce). Čtvercová matice, která není regulární, se nazývá singulární. (38) 10 ekvivalentních formulací, co znamená být regulární maticí. Pro čtvercovou matici A řádu n nad tělesem T jsou následující tvrzení ekviva- lentní: (a) matice A je regulární, (b) zobrazení fA je na Tn , (c) zobrazení fA je prosté, (d) homogenní soustava Ax = o má jediné řešení x = o, LINEÁRNÍ ALGEBRA 135 (e) Gaussova eliminace převede matici A do horního trojúhelníkového tvaru s nenulovými prvky na hlavní diagonále (ekvivalentně do odstupňovaného tvaru bez nulových řádků), (f) matici A lze převést elementárními řádkovými úpravami do jednotkové matice In, (g) matice A je invertovatelná, (h) existuje čtvercová matice X řádu n taková, že AX = In, (i) existuje čtvercová matice Y řádu n taková, že Y A = In, (j) matice A je součinem elementárních matic. (39) Speciálně, čtvercová matice A je invertovatelná právě když je regulární. (40) Inverzní matici k regulární matici A najdeme tak, že matici (A|In) převedeme elementárními řádkovými úpravami do matice (In|X). Matice X se pak rovná inverzní matici A−1 . (41) Je-li Ax = b soustava lineárních rovnic s regulární maticí A, pak jednoznačně určené řešení této soustavy lze zapsat jako x = A−1 b. Soustavy lineárních rovnic takto neřešit! Je to třikrát pomalejší než Gaussova eliminace se zpětnou substitucí. (42) Každá elementární matice je regulární, navíc inverzní matice k elementární matici je opět elementární matice. (43) Jsou-li A, B regulární matice stejného řádu n nad stejným tělesem T a t ∈ T nenulový prvek, pak platí (a) A−1 je regulární a platí (A−1 )−1 = A, (b) AT je regulární a platí (AT )−1 = (A−1 )T , (c) (tA)T je regulární a platí (tA)−1 = t−1 A−1 , (d) AB je regulární a platí (AB)−1 = B−1 A−1 . (44) Jsou-li A, B matice téhož typu m × n nad tělesem T, pak B lze z A získat posloupností elementárních řádkových úprav právě tehdy, když existuje regulární matice R řádu m nad T taková, že B = RA. (45) Pro matici A typu m × n nad T je ekvivalentní • existuje matice X typu n × m nad T taková, že AX = Im, • zobrazení fA : Tn → Tm je na Tm . (46) Pro matici A typu m × n nad T je ekvivalentní • existuje matice X typu n × m nad T taková, že XA = In, • zobrazení fA : Tn → Tm je prosté. (47) Soustava Ax = o s nulovou pravou stranou se nazývá homogenní soustava lineárních rovnic. (48) Množina všech řešení homogenní soustavy lineárních rovnic Ax = o se nazývá jádro matice A nebo také nulový prostor matice A. Označujeme ji Ker A. (49) Je-li u jedno pevně zvolené partikulární řešení soustavy lineárních rovnic Ax = b nad tělesem T, pak se množina všech řešení této soustavy rovná {u + v : v ∈ Ker A} = u + Ker A . Vektor u spočítáme z odstupňovaného tvaru tím, že zvolíme volné proměnné rovné 0 a dopočteme řešení soustavy. Vektor vp, p ∈ P spočítáme tak, že zvolíme xp = 1, ostatní volné proměnné zvolíme rovné 0 a dopočteme řešení příslušné homogenní soustavy. (50) Pro regulární dolní (horní) trojúhelníkovou matici R řádu n platí, že inverzní matice R−1 je také dolní (horní) trojúhelníková. Má-li navíc matice 136 LIBOR BARTO A JIŘÍ TŮMA R na hlavní diagonále všechny prvky rovné 1, pak i matice R−1 má samé jednotky na hlavní diagonále. (51) Věta o LU-rozkladu. Je-li A regulární matice řádu n, u které při Gaussově eliminaci nemusíme prohazovat řádky, pak existují regulární matice L, U řádu n, pro které platí • A = LU, • L je dolní trojúhelníková s jednotkami na hlavní diagonále, • U je horní trojúhelníková s nenulovými prvky na hlavní diagonále. Matice L, U jsou těmito podmínkami určené jednoznačně. (52) Horní trojúhelníkovou matici U dostaneme jako výsledek Gaussovy eliminace bez prohazování řádků použité na matici A. Dolní trojúhelníkovou matici L = ( )i×j dostaneme tak, že na místo (i, j) pod hlavní diagonálou napíšeme koeficient ij, kterým jsme násobili j-tý řádek a pak jej odečetli od i-tého při nulování prvku na místě (i, j). To znamená, že LU-rozklad regulární matice A najdeme Gaussovou eliminací matice A. (53) Známe-li LU-rozklad A = LU matice A, můžeme soustavu lineárních rovnic Ax = b převést na tvar LUx = b a vyřešit ji ve dvou krocích. Napřed přímou substitucí najdeme řešení soustavy Ly = b a potom zpětnou substitucí vyřešíme soustavu Ux = y. Celý postup je řádově rychlejší než opětovná Gaussova eliminace následovaná zpětnou substitucí. (54) Věta o LU-rozkladu s částečnou pivotací. Je-li A regulární matice řádu n, pak existuje permutační matice P a regulární matice matice L, U, všechny řádu n, pro které platí • PA = LU, • L je dolní trojúhelníková matice s jednotkami na hlavní diagonále, • U je horní trojúhelníková matice s nenulovými prvky na hlavní diago- nále. Klíčové znalosti ze čtvrté kapitoly nezbytné pro průběžné sledování přednášek s pochopením (1) Operace s maticemi (sčítání, násobení číslem, transponování, součin, inverzní matice) a jejich algebraické vlastnosti (distributivita, asociativita násobení, atd.). (2) Jednotkové a elementární matice, vyjádření elementární řádkové úpravy matice násobením elementární maticí zleva. (3) Speciální typy matic, jejich součiny a inverzní matice k nim. (4) Blokové násobení matic. (5) Zobrazení určené maticí a jeho vlastnosti. (6) Matice jednoduchých geometrických zobrazení. (7) Matice složeného zobrazení fAfB. (8) Regulární matice a různé podmínky ekvivalentní s regularitou. (9) Metoda výpočtu inverzní matice. (10) Vztah invertování a ostatních operací. (11) Kdy lze jednu matici dostat z druhé posloupností elementárních řádkových úprav. (12) Homogenní soustava rovnic a jádro matice. (13) Vyjádření množiny všech řešení soustavy Ax = b ve tvaru {u + Ker A}. (14) Věta o LU-rozkladu. LINEÁRNÍ ALGEBRA 137 5. Vektorové prostory Cíl. Podobně jako jsme běžné vlastnosti počítání s reálnými čísly zobecnili do pojmu tělesa, zobecníme vlastnosti počítání s aritmetickými vektory do pojmu vektorového prostoru. Ukážeme si některé základní vlastnosti vektorových prostorů. Budeme zkoumat důležité pojmy jako podprostor, lineární obal, množina generátorů, lineární závislost a nezávislost, báze a dimenze. Motivací je porozumět geometrickým vztahům mezi vektory a podprostory (rovné útvary procházející počátkem) například v rovině a v prostoru. To nám také umožní lépe porozumět řešení soustav lineárních rovnic. 5.1. Definice, příklady a základní vlastnosti. V kapitole o tělesech jsme se zabývali tím, jaké vlastnosti čísel využíváme při řešení lineárních rovnic, a reálná čísla jsme zobecnili na tělesa. Odměnou za větší abstraktnost je větší použitelnost. Stejná tvrzení a algoritmy, například pro řešení soustav rovnic nebo invertování matic, můžeme použít nejen pro reálná nebo komplexní čísla, ale také pro tělesa Zp, a jakákoliv jiná tělesa. Aritmetické n-složkové vektory nad tělesem T můžeme sčítat a násobit prvky tělesa T. Výsledkem je opět aritmetický n-složkový vektor nad tělesem T. Řadu vlastností těchto dvou operací s aritmetickými vektory jsme dokázali v předchozí kapitole jako speciální případ vlastností počítání s maticemi nad tělesem T. Všechny bezprostředně vyplývaly z axiomů tělesa T. V této kapitole zobecníme vlastnosti uvedených dvou operací s aritmetickými vektory nad tělesem T do abstraktního pojmu vektorového prostoru nad tělesem T. Prvky vektorového prostoru mohou být nejen aritmetické vektory, ale například také nekonečné posloupnosti čísel, reálné funkce reálné proměnné, matice, polynomy, apod. Pojem vektorového prostoru umožňuje používat geometrickou intuici získanou z geometrie bodů a vektorů v rovině a prostoru ke studiu objektů, které na první pohled nemají s vektory nic společného. I při studiu reálných funkcí můžeme používat obrázky jako 30 nebo 31. Díky tomu, že reálné funkce reálné proměnné můžeme také sčítat a násobit reálným číslem a že tyto operace mají stejné základní vlastnosti jako počítání s reálnými aritmetickými vektory, dovoluje nám abstraktní pojem vektorového prostoru přenášet úvahy o vektorech na funkce na základě analogie. Vektorový prostor nad R tvoří množina (jejíž prvky nazýváme vektory), operace sčítání vektorů a operace násobení vektoru reálným číslem. Tyto ingredience musí splňovat sadu axiomů, které jsou ve shodě s představou vektoru jako „šipky v rovině nebo prostoru a operací prováděných podle obrázků 30 a 31. Obecněji definujeme vektorový prostor nad tělesem T, kde místo násobení vektoru reálným číslem máme operace násobení vektoru prvkem T. Definice 5.1. Nechť T je těleso. Vektorovým prostorem V nad tělesem T rozumíme množinu V spolu s binární operací + na V (tj. + je zobrazení z V × V do V ) a operací · násobení prvků množiny V prvky tělesa T (tj. · je zobrazení z T × V do V ), které splňují následující axiomy. (vS1) Pro libovolné u, v, w ∈ V platí (u + v) + w = u + (v + w). (vS2) Existuje o ∈ V takový, že pro libovolné v ∈ V platí v + o = v. (vS3) Pro každé v ∈ V existuje −v ∈ V takové, že v + (−v) = o. 138 LIBOR BARTO A JIŘÍ TŮMA (vS4) Pro libovolné u, v ∈ V platí u + v = v + u. (vN1) Pro libovolné v ∈ V a a, b ∈ T platí a · (b · v) = (a · b) · v. (vN2) Pro libovolné v ∈ V platí 1 · v = v. (vD1) Pro libovolné v ∈ V a a, b ∈ T platí (a + b) · v = a · v + b · v. (vD2) Pro libovolné u, v ∈ V a a ∈ T platí a · (u + v) = a · u + a · v. Při studiu vektorových prostorů budeme prvkům T někdy říkat skaláry a prvkům V vektory (nebo prostě prvky V ). Výrazy skalár a vektor nemají samostatný smysl, používáme je jen když je z kontextu zřejmé, které těleso a vektorový prostor máme na mysli. „Operace · není binární operací ve smyslu definice 3.1, protože násobíme prvky dvou různých množin. Místo a · v, kde a ∈ T a v ∈ V , píšeme často av. Nikdy neprohazujeme pořadí, tj. výrazy v · a a va nejsou definované. Podobně jako při počítání v tělesech má · přednost před +, proto nemusíme ve výrazech na pravé straně v axiomech (vD1) a (vD2) psát závorky. V definici je implicitně obsaženo, že součet u+v je definován pro každou dvojici prvků u, v ∈ V a násobení skalárem av je definováno pro každé a ∈ T a v ∈ V . Z definice rovněž vyplývá, že množina V je neprázdná, protože musí obsahovat podle (vS2) alespoň nulový prvek. Axiomy (vS1), (vS2), (vS3), (vS4) jsou stejné jako axiomy pro sčítání v tělese. Stejně jako v tělese proto platí, že nulový prvek a opačné prvky jsou určené jednoznačně. Máme teď dvě různé nuly, 0 v tělese T a o ve vektorovém prostoru V. Abychom je odlišili i jazykově, budeme v případě 0 ∈ T mluvit o nulovém skaláru a v případě o ∈ V o nulovém vektoru. Axiom (vN1) připomíná asociativitu násobení a (vN2) existenci jednotkového prvku, i když zde je podstatný rozdíl v tom, že násobíme prvky různých množin. Axiomy (vD1) a (vD2) připomínají distributivitu. Zopakujme, že základním příkladem vektorového prostoru nad R je množina všech “fyzikálních” vektorů (šipek) v ideální rovině s běžnými operacemi definovanými podle obrázků 30 a 31. Podobně, množina šipek v ideálním prostoru tvoří vektorový prostor nad R. Abychom v těchto vektorových prostorech mohli efektivně počítat, zavádíme soustavu souřadnic a místo s vektory počítáme s jejich souřadnicemi. Tím převádíme výpočty v těchto ideálních prostorech na výpočty v tzv. aritmetických vektorových prostorech. 5.1.1. Aritmetické vektorové prostory. Základním příkladem vektorového prostoru, který je vhodný k počítání, je množina všech uspořádaných n-tic prvků tělesa. Definice 5.2. Nechť T je těleso a n je přirozené číslo. Aritmetickým vektorovým prostorem nad T dimenze n rozumíme množinu všech n-složkových aritmetických (sloupcových) vektorů Tn spolu s přirozenými operacemi + a · (definovanými jako v definici 2.3). Označujeme jej Tn . To, že aritmetický vektorový prostor Tn je skutečně vektorovým prostorem, jsme dokázali obecně pro matice v tvrzení 4.10 a tvrzení 4.13. Aritmetické vektorové prostory jsou velmi konkrétní, zároveň ale v jistém smyslu „jediné , příklady vektorových prostorů konečné dimenze (pojem konečné dimenze přesně definujeme později, zatím chápejte intuitivně). Uvidíme, že v každém vektorovém prostoru konečné dimenze lze zvolit soustavu souřadnic (říkáme jí báze), a místo prvků prostoru můžeme počítat s jejich souřadnicemi stejně jako v aritmetickém vektorovém prostoru. Omezit se ale na studium aritmetických vektorových prostorů není výhodné z mnoha důvodů. LINEÁRNÍ ALGEBRA 139 Jedním z nich je to, že vektorový prostor (hlavně nad R) si představujeme jako množinu šipek. Z tohoto prostoru se stává aritmetický vektorový prostor až po volbě nějaké soustavy souřadnic, kdežto operace s prvky vektorového prostoru na této volbě nezávisí. Žádná volba souřadnic nemusí být přirozená a v různých situacích mohou být užitečné různé soustavy souřadnic. Například množina všech řešení rovnice 2x1 + 3x2 + 4x3 = 0 je rovina, tedy „v podstatě totéž co R2 , ale asi by bylo těžké argumentovat, že nějaká konkrétní volba souřadnic je ta nejlepší. Přesný význam výrazů typu „v podstatě totéž co R2 uvidíme později. Dalším důvodem je, že u některých vektorových prostorů není ihned patrné, že se v podstatě jedná jen o uspořádané n-tice prvků nějakého tělesa. Navíc i když to někdy vidět je, není vždy výhodné se na prostory takto dívat, například proto, že na dané množině máme i jiné operace, které jsou při takovém pohledu nepřehledné. 5.1.2. Další příklady. Uvedeme několik dalších příkladů vektorových prostorů. Příklad 5.3. Množina V všech trojic (x1, x2, x3)T ∈ R3 , které splňují rovnici 2x1 + 3x2 + 4x3 = 0, spolu s běžnými operacemi tvoří vektorový prostor nad R (obecněji Ker A pro libovolnou matici A nad T tvoří s běžnými operacemi vektorový prostor nad T, viz tvrzení 5.13). K ověření, že tomu tak skutečně je, je potřeba si nejprve uvědomit, že operace jsou dobře definovány, tedy součet dvou vektorů ve V je opět vektor ve V a skalární násobek vektoru ve V je opět vektor ve V . Dále je třeba ověřit všechny axiomy. V tvrzení 5.13 vše dokážeme obecněji. Uvědomte si, že tento prostor není aritmetickým prostorem R3 , protože V není tvořeno všemi trojsložkovými reálnými aritmetickými vektory, jen některými. Jde o tzv. podprostor aritmetického vektorového prostoru R3 . Podprostory se budeme zabývat v oddílu 5.2. Také si všimněte, že kdybychom místo 2x1 + 3x2 + 4x3 = 0 uvažovali rovnici 2x1 + 3x2 + 4x3 = 10, vektorový prostor bychom (s běžnými operacemi) nedostali. Operace nejsou dobře definovány, protože například trojice (5, 0, 0)T rovnici splňuje, kdežto 0 · (5, 0, 0)T = (0, 0, 0)T nikoliv. Příklad 5.4. Množina všech polynomů stupně nejvýše 173 s reálnými koeficienty (nebo jiného daného maximálního stupně, s koeficienty v jiném tělese) s běžnými operacemi sčítání polynomů a násobení polynomu reálným číslem. Tento vektorový prostor je „v podstatě aritmetický vektorový prostor R174 , protože na polynom a0 + a1x + · · · + a173x173 se můžeme dívat jako na uspořádanou 174-ici koeficientů (a0, a1, . . . , a173)T a operace jsou při tomto pohledu stejné jako v R174 . Příklad 5.5. Množina všech matic typu 7×15 nad tělesem Z3 s běžnými operacemi sčítání a násobení skalárem je vektorový prostor nad Z3 (obecněji množina matic daného typu nad jiným tělesem). Vzhledem k operacím + a · se tato množina chová stejně jako množina uspořádaných 105-tic, takže tento vektorový prostor je „v podstatě aritmetický vektorový prostor Z105 3 . To, že množina matic daného typu nad daným tělesem je vektorový prostor jsme dokázali v tvrzení 4.10 a tvrzení 4.13. Když matice daného typu sčítáme a násobíme skalárem, můžeme se na ně dívat jako na k-tice prvků tělesa, ale tento pohled není výhodný například když matice interpretujeme jako zobrazení, násobíme je nebo invertujeme. Vektorový prostor matic typu m × n nad tělesem T s běžnými operacemi sčítání a násobení skalárem z T budeme označovat Tm×n . Aritmetický vektorový prostor Tn lze také chápat jako Tn×1 . 140 LIBOR BARTO A JIŘÍ TŮMA Následují další příklady vektorových prostorů. Příklad 5.6. Množina všech podmnožin množiny X = {1, 2, . . . , 11} (nebo jiné dané množiny X) spolu s operací symetrické diference, tj. A+B = (A\B)∪(B\A), a násobení skalárem 0 · A = ∅, 1 · A = A pro libovolné A ⊆ X, je vektorový prostor nad Z2. Jako cvičení dokažte, že toto je skutečně vektorový prostor, a vysvětlete proč je tento prostor „v podstatě Z11 2 . Příklad 5.7. Množina komplexních čísel je vektorovým prostorem nad R (s běžnými operacemi). Vzhledem ke sčítání a násobení reálným číslem se komplexní číslo a + ib chová stejně jako dvojice (a, b)T , takže z tohoto pohledu je C v podstatě R2 . Pokud chápeme komplexní čísla jako vektorový prostor nad R, zapomínáme vlastně na násobení v C, pamatujeme si pouze sčítání a násobení reálným číslem. Příklad 5.8. Těleso Q( √ 2) = {a + b √ 2 : a, b ∈ Q} s běžnými operacemi sčítání a násobení racionálním číslem je vektorový prostor nad Q. Skutečně, číslo a+b √ 2 lze chápat jako dvojici (a, b)T ∈ Q2 . Není ale na první pohled patrné, že každá dvojice odpovídá právě jednomu prvku tělesa Q( √ 2), důkaz je přenechán jako cvičení. Vlastnosti podobných vektorových prostorů, jako například dimenze, jsou důležité například v již zmíněných problémech kvadratury kruhu, trisekce úhlu, zdvojení krychle a „neřešitelnosti rovnic pátého stupně. Příklad 5.9. Množina všech funkcí z R do R tvoří spolu s přirozenými operacemi sčítání funkcí a násobení funkce reálným číslem vektorový prostor nad R. Podobnými příklady jsou množina všech spojitých funkcí na R, množina diferencovatelných funkcí, množina polynomiálních funkcí, nebo třeba množina spojitých funkcí na intervalu [0, 1]. Prostory funkcí jsou důležité příklady vektorových prostorů nekonečné dimenze, kterými se budete v dalším studiu zabývat hlavně v jiných předmětech, například ve funkcionální analýze. My se soustředíme hlavně na vektorové prostory konečné dimenze. 5.1.3. Jednoduché vlastnosti. Formulujeme některé vlastnosti všech vektorových prostorů. Dokazují se podobně jako příslušné vlastnosti pro tělesa v tvrzení 3.3, proto důkaz přenecháme jako cvičení. Tvrzení 5.10. V každém vektorovém prostoru V nad tělesem T platí (1) nulový prvek o je určený jednoznačně, (2) rovnice u + x = v má pro pevná u, v ∈ V právě jedno řešení, speciálně, opačný prvek −v je vektorem v určen jednoznačně, (3) 0v = o pro libovolný vektor v ∈ V , (4) ao = o pro libovolný skalár a ∈ T, (5) je-li av = o, pak buď a = 0 nebo v = o, (6) −v = (−1)v pro libovolný vektor v ∈ V , speciálně −(−v) = v. Axiomy vektorového prostoru stejně jako právě uvedené jednoduché důsledky těchto axiomů budeme používat zcela automaticky. Je dobré si při prvním čtení důkazů v této kapitole podrobně rozmyslet všechny kroky a použité axiomy. LINEÁRNÍ ALGEBRA 141 5.2. Podprostory. V příkladu 5.3 jsme viděli, že z vektorových prostorů můžeme konstruovat další vektorové prostory tím, že vybereme jen některé vektory a operace sčítání a násobení skalárem zúžíme. Říkáme, že nový prostor je podprostorem původního: Definice 5.11. Je-li V vektorový prostor nad T, pak vektorový prostor U nad tělesem T je podprostorem V, pokud U ⊆ V a operace + a · v U se shodují s příslušnými operacemi ve V. Skutečnost, že U je podprostorem V zapisujeme U ≤ V. Protože operace v podprostoru U jsou určené původními operacemi ve V, nemusíme je uvádět a stačí říkat, že množina U tvoří podprostor prostoru V. V této situaci budeme také psát U ≤ V. K tomu aby U byl podprostor V, musí být U neprázdná množina uzavřená na operace sčítání a násobení skalárem. Naopak, pokud U splňuje tyto podmínky, pak spolu s příslušnými operacemi tvoří podprostor. Tvrzení 5.12. Je-li V vektorový prostor nad tělesem T, pak neprázdná podmnožina U množiny V je podprostorem V právě tehdy, když současně • („uzavřenost na sčítání ) pro libovolné u, v ∈ U platí u + v ∈ U, • („uzavřenost na násobení skalárem ) pro libovolné v ∈ U a a ∈ T platí av ∈ U. Důkaz. Pokud U ≤ V, pak množina U musí být uzavřená na sčítání a násobení skalárem, neboť spolu s těmito operacemi tvoří vektorový prostor. Předpokládejme, že U je neprázdná množina uzavřená na sčítání a násobení skalárem. Pak opačný prvek k u ∈ U je v U, protože −u lze napsat jako (−1) · u. Rovněž nulový prvek vektorového prostoru V je prvkem U, protože U je neprázdná a platí 0 · u = o. Všechny axiomy nyní vyplývají z toho, že jsou splněny ve V. Množina {o} tvořená pouze nulovým vektorem o je vždy podprostorem V, rovněž celý prostor V je podprostorem V. Těmto podprostorům říkáme triviální, ostatní podprostory nazýváme netriviální nebo vlastní. Zdůrazněme pozorování z důkazu předchozího tvrzení – nulový prvek o je obsažen v každém podprostoru V. 5.2.1. Podprostory Rn . Uvažujme podprostor U ≤ R2 . Pokud U obsahuje nenulový vektor x = (x1, x2)T , pak musí obsahovat všechny jeho násobky: {tx : t ∈ R} ⊆ U. Geometricky tvoří tyto násobky přímku procházející bodem x a počátkem o. Pokud U obsahuje ještě jiný nenulový vektor y, který neleží na přímce {tx : t ∈ R}, pak opět obsahuje všechny jeho skalární násobky {sy : s ∈ R}, a z toho již geometricky nahlédneme, že U = R2 , protože každý vektor z R2 je součtem nějakého vektoru na přímce {tx : t ∈ R} a nějakého vektoru na přímce {sy : s ∈ R}. Formální důkaz tohoto tvrzení přenecháme jako cvičení, později budeme podobné věci umět dokazovat snadno a rychle pomocí pojmu báze. Ukázali jsme, že kromě triviálních podprostorů {o} a R2 jsou jedinými kandidáty na podprostory R2 množiny tvaru {tx : t ∈ R}. Snadno ověříme, že pro libovolný vektor o = x ∈ R2 je tato množina uzavřená na sčítání a násobení skalárem. Podprostory R2 jsou tedy {o}, přímky procházející počátkem, a celý prostor R2 . Podobnou úvahou nalezneme všechny podprostory U ≤ R3 . Pokud o = x ∈ U, pak U obsahuje celou přímku {tx : t ∈ R}. Pokud U obsahuje ještě jiný vektor y, 142 LIBOR BARTO A JIŘÍ TŮMA x1 x2 x y t x s y Obrázek 59. Podprostor R2 obsahující přímku a vektor mimo ni pak {sy : s ∈ R} ⊆ U a U pak obsahuje celou rovinu určenou body x, y a počátkem o, což je rovina s parametrickým vyjádřením {tx + sy : t, s ∈ R} . Obsahuje-li U ještě nějaký jiný vektor mimo tuto rovinu, pak U = R3 . Podprostory R3 jsou tedy triviální podprostory, přímky procházející počátkem a roviny procházející počátkem. I když vizuální představa prostoru Rn pro n > 3 chybí, intuice stále je, že podprostory jsou rovné útvary procházející počátkem. 5.2.2. Podprostory Tn . Nad jinými tělesy již nemáme tak dobrou vizuální představu aritmetického prostoru, ale stále můžeme podobné úvahy jako výše provádět algebraicky. Tak například stále platí (viz cvičení), že podprostory T2 jsou triviální podprostory a „přímky procházející počátkem, tj. množiny tvaru {tx : t ∈ T}, kde o = x ∈ T2 . H0,0L H1,0L H0,1L H2,1L H4,2L H1,3L H3,4L Obrázek 60. Přímka {t(2, 1)T : t ∈ Z5} v prostoru Z2 5 LINEÁRNÍ ALGEBRA 143 S podprostory Tn jsme se již setkali už v předchozí kapitole při řešení homogenních soustav lineárních rovnic. Zde je třeba si připomenout definici 4.80 jádra matice A jako množinu všech řešení homogenní soustavy Ax = o. Tvrzení 5.13. Pro libovolnou matici A typu m × n nad T platí, že Ker A je podprostor Tn , neboli Ker A ≤ Tn . Důkaz. Podle tvrzení 5.12 stačí ověřit, že množina Ker A je neprázdná a uzavřená na sčítání a násobení skalárem. Protože Ao = o, množina Ker A obsahuje nulový prvek o ∈ Tn , takže je ne- prázdná. Pokud u, v ∈ Ker A, pak podle definice Ker A je Au = o = Av. Z distributivity násobení matic nyní dostaneme A(u + v) = Au + Av = o + o = o, takže u + v ∈ Ker A. Pokud u ∈ Ker A a s ∈ T, pak A(su) = s(Au) = so = o, tedy su ∈ Ker A. Geometricky je Ker A úplným vzorem nulového vektoru při zobrazení fA. Úplný vzor nenulového vektoru b ∈ Tm (neboli množina všech řešení soustavy Ax = b) není podprostor Tn . Tato množina je sice „rovný útvar , ale neobsahuje nulový prvek o ∈ Tn . Takovým množinám budeme později říkat afinní podprostory Tn . Každý podprostor Tn je tedy také afinní podprostor Tn , ale pouze afinní podprostory Tn obsahující o ∈ Tn jsou současně podprostory vektorového prostoru Tn . 5.2.3. Další příklady podprostorů. Příklad 5.14. Množina všech čtvercových matic řádu 4 nad tělesem Z5 takových, že součet prvků na hlavní diagonále je roven nule, je podprostor vektorového prostoru Z4×4 5 . Je totiž neprázdná (obsahuje například nulovou matici) a je uzavřená na sčítání a násobení skalárem, jak se snadno ověří. Příklad 5.15. Množina všech polynomů p stupně nejvýše 173 s reálnými koeficienty, pro které platí p(5) = 0, je podprostorem vektorového prostoru (z příkladu 5.4 všech reálných polynomů stupně nejvýše 173. Příklad 5.16. Množina reálných čísel je podprostorem prostoru komplexních čísel, kde obě tělesa reálných a komplexních čísel chápeme jako vektorové prostory nad Q. Příklad 5.17. Množina spojitých funkcí z R do R je podprostorem vektorového prostoru všech funkcí z R do R. protože množina spojitých funkcí je neprázdná a uzavřená na operace sčítání a násobení reálným číslem. Podobně, množina diferencovatelných funkcí z R do R je podprostorem vektorového prostoru spojitých funkcí. 5.2.4. Lineární kombinace. Už mnohokrát jsme se setkali s výrazy typu ru + sv + tw, kde u, v, w jsou nějaké reálné aritmetické vektory a r, s, t ∈ R. Takovým výrazům říkáme lineární kombinace vektorů u, v, w. Lineární kombinace můžeme definovat v každém vektorovém prostoru. Definice 5.18. Jsou-li v1, v2, . . . , vk prvky vektorového prostoru V nad T a t1, t2, . . . , tk ∈ T skaláry, tj. prvky tělesa T, pak prvek t1v1 + t2v2 + · · · + tkvk 144 LIBOR BARTO A JIŘÍ TŮMA se nazývá lineární kombinace prvků v1, v2, . . . , vk ∈ V. Skaláry t1, t2, . . . , tk nazýváme koeficienty lineární kombinace. Lineární kombinaci prázdného systému vektorů definujeme jako nulový vektor. Zdůrazněme, že v lineární kombinaci máme vždy konečný počet vektorů prostoru V. Součet nekonečně mnoha vektorů ve vektorovém prostoru není obecně definován. 5.2.5. Lineární obal. Lineární kombinace se vyskytují v popisu podprostorů, například pro aritmetické vektory x = (1, 1, 1)T a y = (1, 2, 3)T ∈ R3 je {sx + ty : s, t ∈ R} množina všech lineárních kombinací vektorů x, y – rovina v R3 . Obecně definujeme lineární obal množiny X jako množinu všech lineárních kombinací prvků X. Tato množina tvoří vždy podprostor (viz tvrzení 5.23). Definice 5.19. Nechť V je vektorový prostor nad T a X ⊆ V . Pak lineárním obalem množiny X rozumíme množinu LO X všech lineárních kombinací prvků X, tj. množinu LO X = {t1v1 + t2v2 + · · · + tkvk : k ∈ N0, v1, . . . , vk ∈ X, t1, . . . , tk ∈ T} Geometricky, lineární obal je „rovný útvar procházející počátkem obsahující dané vektory. Poznamenejme, že množina X může být i nekonečná. Definici můžeme trochu zjednodušit pro konečné množiny vektorů. Pozorování 5.20. Jsou-li v1, . . . , vl prvky vektorového prostoru V nad tělesem T, pak LO {v1, . . . , vl} = {t1v1 + · · · + tlvl : t1, . . . , tl ∈ T} . Důkaz. Inkluze „⊇ plyne triviálně z definice lineárního obalu. Naopak, je-li u ∈ LO {v1, . . . , vl}, pak u = s1u1 + · · · + skuk, kde každý z vektorů ui leží v množině {v1, . . . , vl}. V součtu s1u1 + · · · + skuk seskupíme sčítance podle vektorů v1, . . . , vl a užitím (vD1) nahradíme jediným sčítancem tvaru tjvj. Nakonec pro chybějící vj přidáme sčítanec 0vj. Tím získáme vyjádření u = t1v1 + t2v2 + · · · + tlvl. Příklad 5.21. LO ∅ = {o} – lineární obal prázdné množiny je triviální prostor tvořený nulovým vektorem. Příklad 5.22. V prostoru R3 máme LO      1 2 3   ,   4 5 6   ,   9 12 15      = LO      1 2 3   ,   4 5 6      = =    s   1 2 3   + t   4 5 6   : s, t ∈ R    . Inkluze ⊆ v první rovnosti plyne z toho, že každou lineární kombinaci vektorů (1, 2, 3)T , (4, 5, 6)T , (9, 12, 15)T lze psát jako lineární kombinaci vektorů (1, 2, 3)T , (4, 5, 6)T , protože vektor (9, 12, 15)T lze napsat jako lineární kombinaci prvních LINEÁRNÍ ALGEBRA 145 dvou vektorů: t1   1 2 3   + t2   4 5 6   + t3   9 12 15   = = t1   1 2 3   + t2   4 5 6   + t3     1 2 3   + 2   4 5 6     = = (t1 + t3)   1 2 3   + (t2 + 2t3)   4 5 6   . Geometricky, lineární obal daných tří vektorů je rovina procházející počátkem, třetí vektor leží v rovině určené prvními dvěma vektory. Někdy říkáme „lineární obal vektorů . . . , místo formálně přesného „lineární obal množiny vektorů {. . . } . Tvrzení 5.23. Pro libovolný vektorový prostor V nad T a libovolnou X ⊆ V je LO X podprostorem V. Důkaz. Je třeba ověřit, že LO X je neprázdná množina uzavřená na sčítání a násobení libovolným r ∈ T. Předně LO X je neprázdná, protože obsahuje lineární kombinaci prvků prázdné podmnožiny X, tj. vektor o. Součet lineární kombinace s1v1 + s2v2 + · · · + skvk vektorů v1, v2, . . . , vk ∈ X s koeficienty s1, s2, . . . , sk ∈ T a lineární kombinace t1w1 +t2w2 +· · ·+tlwl vektorů w1, w2, . . . , wl ∈ X s koeficienty t1, t2, . . . , tl se rovná s1v1 + s2v2 + · · · + skvk + t1w1 + t2w2 + · · · + tlwl , což je lineární kombinace vektorů v1, . . . , vk, w1, . . . , wl ∈ X s koeficienty s1, . . . , sk, t1, . . . , tl. Konečně, r-násobkem lineární kombinace s1v1+s2v2+· · ·+skvk vektorů v1, v2, . . . , vk ∈ X s koeficienty s1, s2, . . . , sk je lineární kombinace r(s1v1 + s2v2 + · · · + skvk) = (rs1)v1 + (rs2)v2 + · · · + (rsk)vk stejných vektorů s koeficienty rs1, rs2, . . . , rsk. 5.2.6. Množina generátorů. Obsahuje-li podprostor U ≤ V množinu X, pak díky uzavřenosti na sčítání a násobení skalárem obsahuje také všechny lineární kombinace prvků X. To znamená, že LO X je „nejmenší podprostor, který obsahuje X. Slovo nejmenší je zde třeba chápat vzhledem k inkluzi, tj. tak že jakýkoliv podprostor obsahující X obsahuje LO X. Proto se rovněž hovoří o podprostoru generovaném X. Definice 5.24. Je-li V vektorový prostor nad T a X ⊆ V . Pokud LO X = V , pak říkáme, že X je množina generátorů prostoru V, nebo také že X generuje V. Jinými slovy, množina X ⊆ V generuje V, pokud každý vektor ve V lze vyjádřit jako lineární kombinaci vektorů z X. Příklad 5.25. • Prázdná množina generuje triviální prostor {o}. 146 LIBOR BARTO A JIŘÍ TŮMA • Množina {(1, 0)T , (0, 1)T } generuje pro libovolné T prostor T2 , protože každý vektor (x1, x2)T v T2 lze vyjádřit jako lineární kombinaci vektorů (1, 0)T a (0, 1)T takto: x1 x2 = x1 1 0 + x2 0 1 . Tedy také libovolná podmnožina T2 obsahující vektory (1, 0)T a (0, 1)T je množinou generátorů T2 . • Množina {(1, 2, 3)T } generuje podprostor V = LO (1, 2, 3)T vektorového prostoru R3 . Jiné množiny generátorů stejného prostoru V jsou například {(2, 4, 6)T }, {(2, 4, 6)T , (3, 6, 9)T }, V . Množina {(1, 2, 3)T , (4, 5, 6)T } není množinou generátorů V, protože není ani jeho podmnožinou. • Množina {1, x, x2 } je množinou generátorů prostoru všech reálných polynomů stupně nejvýše 2. Příklad 5.26. V části 5.2.1 jsme si geometricky zdůvodnili, že pro každý netriviální podprostor R3 existuje množina generátorů, která má jeden nebo dva prvky. Příklad 5.27. Definujeme Rω jako prostor všech posloupností reálných čísel s operacemi prováděnými po složkách, podobně jako s aritmetickými vektory. Množina X = {(1, 0, 0, . . . ), (0, 1, 0, 0, . . . ), (0, 0, 1, 0, . . . ), . . . } negeneruje prostor Rω . Ověřte, že LO X se rovná množině všech posloupností reálných čísel, které obsahují pouze konečně mnoho nenulových prvků. Také množina všech posloupností reálných čísel konvergujících k 0 je podprostor Rω a obsahuje LO X. Jiným zajímavým podprostorem Rω je množina Y všech posloupností (a0, a1, a2, . . . ) splňujících podmínku an+2 = an + an+1 pro každé n ≥ 2. Mezi prvky tohoto podprostoru patří Fibonacciho posloupnost. 5.2.7. Opět soustavy lineárních rovnic. Uvažujme matici A typu m×n nad tělesem T a aritmetický vektor b ∈ Tm . Množinu řešení řešitelné soustavy rovnic Ax = b jsme dosud zapisovali ve tvaru    u + p∈P tpvp : tp ∈ T pro každé p ∈ P    , kde u a vp jsou vhodné aritmetické vektory z Tn . Již také víme, že    p∈P tpvp : tp ∈ T pro každé p ∈ P    je množina všech řešení příslušné homogenní soustavy rovnic Ax = o – jádro matice A. Zavedené pojmy umožňují kompaktnější zápis a formulace. Jádro matice A je podprostor Rn rovný LO {vp : p ∈ P} , jinými slovy, {vp : p ∈ P} je množina generátorů jádra matice A. Množinu všech řešení pak můžeme zapsat u + LO {vp : p ∈ P} . LINEÁRNÍ ALGEBRA 147 Připomeňme, že tato množina je podprostorem Rn právě tehdy, když b = o. Příklad 5.28. Množina řešení soustavy z příkladu 2.3.4 je          −1 0 −3 0 0       + t2       −2 1 0 0 0       + t4       −3 0 0 1 0       + t5       −2 0 −2 0 1       : t2, t4, t5 ∈ R    =       −1 0 −3 0 0       + LO          −2 1 0 0 0       ,       −3 0 0 1 0       ,       −2 0 −2 0 1          . Množina řešení příslušné homogenní soustavy je podprostor R5 generovaný vektory (−2, 1, 0, 0, 0)T , (−3, 0, 0, 1, 0)T , (−2, 0, −2, 0, 1)T . 5.2.8. Sloupcový a řádkový prostor matice. Každá matice přirozeně definuje dvě množiny aritmetických vektorů – množinu řádkových vektorů a množinu sloupcových vektorů. Prostorům, které tyto množiny generují, říkáme řádkový a sloupcový prostor. Definice 5.29. Je-li A matice typu m×n nad T, pak sloupcovým prostorem matice A rozumíme podprostor Tm generovaný množinou sloupcových vektorů matice A a značíme jej Im A. Im A = LO {a1, a2, . . . , an} ≤ Tm Řádkovým prostorem matice A rozumíme sloupcový prostor matice AT , tj. Im AT = LO {˜a1, ˜a2, . . . , ˜am} ≤ Tn Příklad 5.30. Pro reálnou matici A = 1 3 4 2 7 −1 je Im A = LO 1 2 , 3 7 , 4 −1 Im AT = LO      1 3 4   ,   2 7 −1      . Jak poznáme, že vektor b ∈ Tm leží v Im A? Stačí si připomenout, že Ax je lineární kombinace sloupců matice A, kde koeficienty jsou složky vektoru x. Takže b ∈ Im A právě když rovnice Ax = b má řešení, přičemž koeficienty lineární kombinace jsou složky nějakého řešení. Také vidíme, že Im A je obor hodnot zobrazení fA. Im A = {Ax : x ∈ Tn } = {fA(x) : x ∈ Tn } = obor hodnot fA . Oboru hodnot se někdy také říká obraz (anglicky image), proto značení Im A. 148 LIBOR BARTO A JIŘÍ TŮMA Příklad 5.31. Pro matici A z předchozího příkladu nejprve ověříme, že (0, 1)T ∈ Im A a (1, 0)T ∈ Im A a vyjádříme tyto vektory jako lineární kombinaci sloupců. Protože máme dvě soustavy rovnic se stejnou maticí, můžeme je řešit najednou. 1 3 4 1 0 2 7 −1 0 1 ∼ 1 3 4 1 0 0 1 −9 −2 1 Vidíme, že obě soustavy mají řešení, tedy dané vektory do sloupcového prostoru matice A patří. Pro pravou stranu (1, 0)T dostaneme volbou 0 za volnou proměnnou řešení x = (7, −2, 0)T , což dává vyjádření 1 0 = 7 1 2 − 2 3 7 + 0 4 −1 . Koeficienty nejsou určeny jednoznačně, například volbou 2 za volnou proměnnou dostaneme x = (−55, 16, 2)T , což odpovídá vyjádření 1 0 = −55 1 2 + 16 3 7 + 2 4 −1 . Pro vektor (0, 1)T dostaneme například vyjádření 0 1 = −3 1 2 + 1 3 7 + 0 4 −1 . Ukázali jsme, že oba vektory (1, 0)T , (0, 1)T patří do Im A, tím pádem Im A = R2 , protože z příkladu 5.25 víme, že LO (1, 0)T , (0, 1)T = R2 . Leží vektor (2, 1, 1)T v prostoru Im AT ?   1 2 2 3 7 1 4 −1 1   ∼   1 2 2 0 1 −5 0 −9 −7   ∼   1 2 2 0 1 −5 0 0 −52   Soustava nemá řešení, takže vektor (2, 1, 1)T v Im AT neleží. 5.2.9. Prostory určené maticí a elementární úpravy. K matici A typu m × n nad T máme přiřazeny čtyři základní podprostory aritmetických prostorů: : Im A ≤ Tm sloupcový prostor matice A, neboli lineární obal sloupcových vektorů, neboli obor hodnot zobrazení fA : Im AT ≤ Tn řádkový prostor matice A, neboli sloupcový prostor matice AT , neboli lineární obal řádkových vektorů (psaných do sloupců), neboli obor hodnot zobrazení fAT : Ker A ≤ Tn jádro matice A, neboli množina všech řešení soustavy Ax = o, neboli množina všech vektorů, jejichž obrazem při zobrazení fA je nulový vektor : Ker AT ≤ Tm jádro matice AT , neboli množina všech řešení soustavy AT x = o, neboli množina všech vektorů, jejichž obrazem při zobrazení fAT je nulový vektor Jak se tyto prostory mění při elementárních řádkových (sloupcových) úpravách? Již v kapitole o řešení soustav lineárních rovnic jsme si všimli, že elementární řádkové úpravy nemění množinu všech řešení soustavy lineárních rovnic. Když toto tvrzení napíšeme maticově pro homogenní soustavy, máme Ker (EA) = Ker A pro každou elementární matici E (správného typu nad správným tělesem). Protože LINEÁRNÍ ALGEBRA 149 každá regulární matice R je součinem elementárních matic R = E1E2 . . . Ek, máme obecněji Ker (RA) = Ker (E1E2 . . . EkA) = Ker (E2 . . . EkA) = · · · = Ker A . Toto tvrzení dokážeme níže trochu rychleji. Všimněte si, že elementární sloupcové úpravy Ker A obecně mění. Dalším důležitým pozorováním je, že řádkové elementární úpravy nemění lineární obal řádků (tj. prostor Im AT ). Obecněji, násobení zleva regulární maticí nemění Im AT a násobení regulární maticí zprava nemění Im A. Násobení zleva maticí R obecně mění Im A tak, že sloupcový prostor vzniklé matice je lineární obal Rnásobků původních sloupců. Tvrzení 5.32. Nechť A = (a1| . . . |an) je matice typu m×n nad T a R je regulární matice řádu m. Pak Im (RA) = LO {Ra1, Ra2, . . . , Ran} , Ker (RA) = Ker A, Im (RA)T = Im AT . Důkaz. První část je důsledkem definice součinu matic 4.19. Je-li x ∈ Ker A, pak Ax = o. Vynásobením R zleva získáme RAx = Ro = o, čili x ∈ Ker (RA). Tím jsme dokázali Ker A ⊆ Ker (RA) pro každou matici A a regulární matici R. Je-li naopak x ∈ Ker (RA), pak RAx = o. Protože R je regulární, je také R−1 regulární podle tvrzení 4.71.1. Podle předcházejícího odstavce pak platí Ker (RA) ⊆ Ker (R−1 RA) = Ker (A). Tím je dokázána opačná inkluze nutná k ověření druhé rovnosti Ker A = Ker (RA). Zbývá dokázat třetí rovnost. Opět si uvědomíme, že násobení v matici RA je každý řádek lineárních kombinací řádků matice A podle tvrzení 4.23. To znamená, že každý řádek matice RA leží v lineárním obalu řádků matice A, tj. v řádkovém prostoru Im AT , tj. Im (RA)T ⊆ Im AT . Stejnou úvahou jako v předchozím odstavci získáme opačnou inkluzi Im (AT ) = Im (R−1 RA)T ⊆ Im (RA)T . Zformulujte si podobné tvrzení pro sloupce, tj. pro násobení regulární maticí zprava. Máme například Im A = Im (AR), pokud R je regulární matice řádu n. Důkaz můžeme provést buď užitím sloupcových úprav místo řádkových nebo přechodem k transponované matici – použitím třetí rovnosti předchozího tvrzení na matici AT místo A a RT místo R dostaneme Im (AT )T = Im (RT AT )T , což po úpravě za použití rovností (AT )T = A a (RT AT )T = AR dokazuje rovnost Im A = Im (AR). Důsledek 5.33. Elementární řádkové úpravy matice A (obecněji násobení regulární maticí zleva) nemění Ker A a Im AT . Elementární sloupcové úpravy nemění Ker AT a Im A. Rovněž se zamyslete, jak se sloupcovými úpravami mění Ker A. 5.3. Lineární závislost a nezávislost. Množina aritmetických vektorů (1, 2, 3)T , (4, 5, 6)T , (9, 12, 15)T generuje ten samý podprostor V ≤ R3 jako množina (1, 2, 3)T , (4, 5, 6)T , jak jsme viděli v příkladu 5.22. Důvod je ten, že třetí vektor (9, 12, 15)T lze napsat jako lineární kombinaci zbývajících dvou vektorů. Množinám prvků libovolného vektorového prostoru, ve kterých žádný z prvků není lineární kombinací ostatních, říkáme lineárně nezávislé. Z formulačních důvodů definujeme lineární (ne)závislost pro posloupnosti prvků vektorového prostoru, nikoliv pro množiny. 150 LIBOR BARTO A JIŘÍ TŮMA Definice 5.34. Nechť V je vektorový prostor nad tělesem T. Posloupnost prvků (v1, v2, . . . , vk) prostoru V se nazývá lineárně závislá, pokud některý z prvků vi je lineární kombinací zbývajících prvků v1, v2, . . . , vi−1, vi+1, . . . , vk. V opačném případě říkáme, že posloupnost (v1, v2, . . . , vk) je lineárně nezávislá. Později si ukážeme, jak lineární (ne)závislost definovat i pro nekonečné soubory vektorů. Užitím pojmu lineárního obalu můžeme definici přeformulovat tak, že posloupnost (v1, v2, . . . , vk) je lineárně závislá, pokud existuje i ∈ {1, 2, . . . , k} tak, že vi ∈ LO {v1, v2, . . . , vi−1, vi+1, . . . , vk} , ekvivalentně LO {v1, v2, . . . , vk} = LO {v1, v2, . . . , vi−1, vi+1, . . . , vk} . Geometricky to znamená, že vi leží v „rovném útvaru určeném zbylými vektory. Naopak, posloupnost je lineárně nezávislá, když žádné takové i neexistuje, jinými slovy, když každý vektor vi „něco přidá k lineárnímu obalu zbylých vektorů. Někdy se používá nepřesná formulace typu „vektory . . . jsou lineárně nezávislé , apod. Uvědomte si, že lineární (ne)závislost není vlastnost vektorů ale jejich posloupností. Takže takovou formulaci je potřeba vždy přeložit jako „posloupnost vektorů . . . je lineárně nezávislá . Příklad 5.35. Posloupnost ((1, 2, 3)T , (9, 12, 15)T , (4, 5, 6)T ) ve vektorovém prostoru R3 je lineárně závislá, protože druhý vektor lze napsat jako lineární kombinaci zbylých dvou:   9 12 15   =   1 2 3   + 2   4 5 6   . Geometricky to znamená, že vektor (9, 12, 15)T leží v rovině určené zbylými dvěma vektory. Posloupnost vektorů (1, 0, 0, 0)T , (0, 1, 0, 0)T , (0, 0, 1, 0)T , (0, 0, 0, 1)T v prostoru Z4 3 je lineárně nezávislá, protože, žádný z vektorů není lineární kombinací ostatních: lineární obal druhého až čtvrtého vektoru je množina {(0, a, b, c)T : a, b, c ∈ Z4 3}, do níž vektor (1, 0, 0, 0)T nepatří. Podobně pro ostatní vektory. Posloupnost prvků (u, v, u + v) v libovolném vektorovém prostoru je vždy lineárně závislá. Posloupnost vektorů (cos x sin x + 5, 1, sin(2x) + 3) v prostoru reálných funkcí reálné proměnné (nad R) je lineárně závislá, protože sin(2x) + 3 lze napsat jako 2 · (cos x sin x + 5) + (−7) · 1. Několik snadných obecných pozorování: • Kdykoliv posloupnost obsahuje nulový prvek, tak je lineárně závislá, protože nulový prvek je lineární kombinací ostatních prvků posloupnosti. To platí i v případě, že posloupnost obsahuje jediný prvek o díky tomu, že nulový prvek je lineární kombinací prvků prázdné množiny. • Jednočlenná posloupnost (v) je lineárně nezávislá právě tehdy, když v = o. • Kdykoliv posloupnost obsahuje dva stejné prvky, je lineárně závislá. Obecněji, pokud je některý z prvků násobkem jiného, je posloupnost lineárně závislá. Neplatí to ale naopak. V posloupnosti ((1, 2, 3)T , (9, 12, 15)T , (4, 5, 6)T ) z předchozího příkladu není žádný z aritmetických vektorů násobkem jiného, přesto je posloupnost lineárně závislá. LINEÁRNÍ ALGEBRA 151 • Lineární závislost nebo nezávislost posloupnosti nezávisí na pořadí prvků. • Podposloupnost lineárně nezávislé posloupnosti je lineárně nezávislá. Jinak řečeno, pokud je podposloupnost prvků lineárně závislá, tak je lineárně závislá i původní posloupnost. Pokud bychom ověřovali, že nějaká posloupnost (v1, v2, . . . , vk) je lineárně nezávislá z definice, museli bychom pro každý z prvků v1, . . . , vk ukázat, že jej nelze vyjádřit jako lineární kombinaci ostatních. Snazší je použít bod (2) nebo (3) z následujícího pozorování, které dává elegantnější charakterizaci lineární nezávislosti. Tvrzení 5.36. Nechť (v1, . . . , vk) je posloupnost prvků vektorového prostoru V nad tělesem T. Následující tvrzení jsou ekvivalentní. (1) Posloupnost (v1, . . . , vk) je lineárně nezávislá. (2) Žádný z prvků vi (1 ≤ i ≤ k) nelze vyjádřit jako lineární kombinaci předchozích prvků v1, . . . , vi−1. (3) Nulový prvek o lze vyjádřit jako lineární kombinaci prvků v1, v2, . . . , vk pouze triviálním způsobem o = 0v1 + 0v2 + · · · + 0vk. Jinými slovy, pro libovolné a1, a2, . . . , ak ∈ T platí, že z rovnosti a1v1 + a2v2 + · · · + akvk = o , plyne a1 = a2 = · · · = ak = 0. (4) Každý prvek b ∈ V lze vyjádřit jako lineární kombinaci prvků v1, v2, . . . , vk nejvýše jedním způsobem. Důkaz. (1) ⇒ (2) je zřejmé. (2) ⇒ (3). Pokud platí a1v1 + a2v2 + · · · + akvk = o a jedno z čísel a1, a2, . . . , ak je nenulové, zvolíme největší takové i, pro které ai = 0. Pak můžeme upravit aivi = −a1v1 − . . . − ai−1vi−1 a vi = −a−1 i a1v1 − . . . − a−1 i ai−1vi , z čehož vidíme, že podmínka (2) není splněna. (3) ⇒ (4). Pokud máme dvě vyjádření prvku u u = a1v1 + a2v2 + · · · + akvk = b1v1 + b2v2 + · · · + bkvk , jejich odečtením získáme rovnost o = (a1 − b1)v1 + (a2 − b2)v2 + · · · + (ak − bk)vk, takže z (3) dostáváme, že ai −bi = 0 pro každé i, neboli ai = bi a tedy obě vyjádření vektoru u jsou stejná. (4) ⇒ (3) je triviální. (3) ⇒ (1). Pokud je posloupnost prvků (v1, . . . , vk) lineárně závislá, pak pro nějaké i je prvek vi lineární kombinací ostatních, tedy vi = b1v1 + b2v2 + · · · + bi−1vi−1 + bi+1vi+1 + · · · + bkvk . Poslední rovnost přepíšeme do tvaru o = b1v1 + b2v2 + · · · + bi−1vi−1 + (−1)vi + bi+1vi+1 + · · · + bkvk , takže dostáváme netriviální lineární kombinaci prvků v1, v2, . . . , vk s koeficienty ai = −1 a aj = bj pro j = i, která se rovná nulovému prvku. 152 LIBOR BARTO A JIŘÍ TŮMA Bod (3) lze formulovat také tak, že posloupnost prvků vektorového prostoru je lineárně závislá právě tehdy, když existuje její netriviální lineární kombinace, která se rovná nulovému vektoru. Netriviální znamená, že alespoň jeden koeficient je nenulový (skalár). Připomeňme, že vektory v1, . . . , vk generují vektorový prostor V, pokud se každý vektor dá napsat jako lineární kombinace těchto vektorů alespoň jedním způsobem. Srovnejte tuto skutečnost s bodem (4). Příklad 5.37. Zjistíme, zda je posloupnost aritmetických vektorů ((1, 1, 1, 1)T , (1, 2, 1, 1)T , (0, 1, 0, 1)T ) lineárně nezávislá v prostoru Z4 3. Pokusíme se vyjádřit nulový vektor jako lineární kombinaci vektorů dané posloupnosti x1     1 1 1 1     + x2     1 2 1 1     + x3     0 1 0 1     =     0 0 0 0     . To je vlastně homogenní soustava rovnic!     1 1 0 1 2 1 1 1 0 1 1 1       x1 x2 x3   =     0 0 0 0     Soustavu převedeme do odstupňovaného tvaru. Pravé strany psát nebudeme, protože je soustava homogenní.     1 1 0 1 2 1 1 1 0 1 1 1     ∼     1 1 0 0 1 1 0 0 0 0 0 1     ∼     1 1 0 0 1 1 0 0 1 0 0 0     Nemáme žádnou volnou proměnnou, takže soustava má pouze triviální řešení x = (0, 0, 0)T . Jediná lineární kombinace daných aritmetických vektorů, která se rovná nulovému vektoru má všeschny koeficienty nulové, tj. je triviální. Podle bodu (3) z předchozího tvrzení je daná posloupnost aritmetických vektorů lineárně nezávislá. Tento příklad nám dává návod jak zjistit, je-li daná posloupnost aritmetických vektorů lineárně (ne)závislá. Formulujeme učiněné pozorování jako tvrzení. Tvrzení 5.38. Posloupnost sloupcových vektorů matice A = (a1|a2| · · · |an) typu m × n nad tělesem T tvoří lineárně nezávislou posloupnost v Tm právě tehdy, když Ker A = {o}, tj. právě když má soustava Ax = o pouze triviální řešení x = o. Důkaz. Je-li x = (x1, x2, . . . , xn), pak podle definice 4.16 součinu matice s aritmetickým vektorem platí Ax = x1a1 + x2a2 + · · · + xnan. Z definice 4.80 jádra matice plyne, že Ker A = {o} právě když je nulový vektor o ∈ Tn jediným řešení soustavy Ax = o. To platí právě když z rovnosti x1a1 + x2a2 + · · · + xnan = o plyne x1 = x2 = · · · = xn = 0, což je podmínka (3) z tvrzení 5.36 ekvivalentní lineární nezávislosti posloupnosti sloupcových vektorů matice A. LINEÁRNÍ ALGEBRA 153 Příklad 5.39. Posloupnost (3i + 5, 2, 3), (5, 2 + i, 1), (4, 2, 12), (π, eπ , 4) v prostoru C3 je lineárně závislá. K důkazu můžeme využít předchozí tvrzení. Dané aritmetické vektory si napíšeme do sloupců matice A typu 3 × 4. Při řešení soustavy Ax = o máme díky typu matice A aspoň jednu volnou proměnnou, protože proměnné jsou 4 a pivotů může být nejvýše tolik, kolik je řádků v matici A. Z toho plyne, že soustava má netriviální řešení. Stačí za jednu volnou proměnnou dosadit například 1, za ostatní volné proměnné, pokud jsou, skalár 0, a dopočítat volné proměnné zpětnou substi- tucí. Na tomto místě si znovu uvědomme, že aritmetické vektorové prostory tvoří jen jeden z mnoha možných typů vektorových prostorů. (I když jsme v úvodu tvrdili, že jsou „v podstatě jediné . Uvozovky jsou zde podstatné, na přesný význam si musíme ještě chvíli počkat.) Častá chybná odpověď studentů na otázku, jak určit, zda jsou dané vektory lineárně závislé, je typu „Napíšeme si je do sloupců, vyeliminujeme a zjistíme, zda existují volné proměnné . Odpověď je správná jen v aritmetických vektorových prostorech, obecně nedává žádný smysl: Jak napsat do sloupců prvky cos(2x), sin x + ex , x3 vektorového prostoru spojitých reálných funkcí jedné reálné proměnné? Příklad 5.40. Posloupnost (1, √ 2) je lineárně nezávislá ve vektorovém prostoru R nad tělesem Q, protože √ 2 je iracionální číslo. Stejná posloupnost je lineárně závislá ve vektorovém prostoru R nad tělesem R, protože např. √ 2 je √ 2-násobkem vektoru 1. Protože je druhý vektorový prostor nad tělesem reálných čísel, můžeme použít číslo √ 2 ∈ R jako koeficient lineární kombinace. 5.3.1. Odstupňovaný tvar a elementární úpravy. Jinou možností jak zjistit, zda jsou dané aritmetické vektory lineárně (ne)závislé je napsat je do řádků matice a elementárními řádkovými úpravami převádět matici do odstupňovaného tvaru. Tyto úpravy totiž nemění lineární (ne)závislost řádků a z odstupňovaného tvaru matice poznáme (ne)závislost řádků snadno. Výhodou také je, že řádkové úpravy nemění ani lineární obal řádků, což se nám bude hodit o něco později při hledání báze řádkového prostoru. Rovnou si také všimneme, že řádkové úpravy nemění ani lineární (ne)závislost sloupců. Tvrzení nejprve formulujeme pro sloupce. Řádkovou verzi dostaneme trans- ponováním. Tvrzení 5.41. Nechť A = (a1|a2| · · · |an) je matice typu m × n nad tělesem T, R je regulární matice řádu m nad T a Q je regulární matice řádu n nad T. Pak platí (1) posloupnost (a1, a2, . . . , an) sloupcových vektorů matice A je lineárně nezávislá právě tehdy, když je lineárně nezávislá posloupnost sloupcových vektorů matice AQ, (2) posloupnost (a1, a2, . . . , an) sloupcových vektorů matice A je lineárně nezávislá právě tehdy, když je lineárně nezávislá posloupnost sloupcových vektorů matice RA. Důkaz. Použijeme pozorování formulované jako tvrzení 5.38, které říká, že posloupnost sloupcových vektorů matice B je lineárně nezávislá právě tehdy, když soustava Bx = o má pouze triviální řešení. Předpokládejme, že posloupnost (a1, a2, . . . , an) sloupcových vektorů matice A je lineárně nezávislá a že x je řešením soustavy AQx = o. Potom Qx je řešením 154 LIBOR BARTO A JIŘÍ TŮMA soustavy A(Qx) = o a protože posloupnost (a1, a2, . . . , an) je lineárně nezávislá, platí Qx = o. Odtud plyne, že x = o (použijeme například bod (4) charakterizace regulárních matic z věty 4.65, nebo bod (7) a vynásobíme rovnost Qx = o zleva maticí Q−1 ). Ukázali jsme, že soustava AQx = o má pouze triviální řešení, takže posloupnost sloupcových vektorů matice AQ je lineárně nezávislá. Opačná implikace se dá dokázat užitím právě dokázané implikace, nahradíme-li matici A maticí AQ a matici Q maticí Q−1 . Druhou ekvivalenci jsme již vlastně dokázali v tvrzení 5.32. Platí rovnost Ker (RA) = Ker A, takže soustava Ax = o má netriviální řešení právě tehdy, když má soustava RAx = o netriviální řešení. Z rovnosti Ker (RA) = Ker A plyne dokonce více než druhá ekvivalence v předchozím tvrzení. Pro posloupnost sloupcových vektorů matice A = (a1|a2| · · · |an) platí x1a1 + x2a2 + · · · + xnan = o právě když x ∈ Ker A = Ker (RA), což platí právě když x1Ra1 + x2Ra2 + · · · + xnRan = o , neboť RA = (Ra1|Ra2| · · · |Ran) podle definice součinu matic. Neformálně můžeme říct, že mezi sloupcovými vektory matice A platí stejné lineární závislosti jako mezi sloupcovými vektory matice RA. Například pokud 2a1 + 3a2 − 4a3 = o, pak pro matici RA = (b1|b2|b3) platí 2b1 + 3b2 − 4b3 = o, a naopak. Slovy, součet 2-násobku prvního sloupce, 3-násobku druhého sloupce a (−4)-násobku třetího sloupce v matici A je nulový vektor právě tehdy, když součet 2-násobku prvního sloupce, 3-násobku druhého sloupce a (−4)-násobku třetího sloupce v matici RA je nulový vektor. Důsledek 5.42. Elementární řádkové úpravy nemění lineární (ne)závislost posloupnosti sloupcových vektorů ani posloupnosti řádkových vektorů matice. Elementární sloupcové úpravy nemění lineární (ne)závislost posloupnosti sloupcových vektorů ani posloupnosti řádkových vektorů matice. Důkaz. Zvolíme-li v předchozím tvrzení za regulární matice R nebo Q elementární matice stejného řádu, dostaneme obě tvrzení pro případ posloupnosti sloupcových vektorů matice. Protože posloupnost řádkových vektorů matice A se rovná posloupnosti sloupcových vektorů transponované matice AT , plynou řádkové verze z právě dokázaných sloupcových verzí. Zbývá nahlédnout, kdy je lineárně nezávislá posloupnost řádkových vektorů matice v řádkově odstupňovaném tvaru. Z předchozího tvrzení a tvrzení 5.38 vidíme, kdy je posloupnost sloupcových vektorů matice v odstupňovaném tvaru lineárně nezávislá. Je to právě tehdy, když příslušná homogenní soustava nemá žádné volné proměnné. Je zřejmé, že je-li v matici nulový řádek, pak je posloupnost jejích řádkových vektorů lineárně závislá. Tvrzení 5.43. Posloupnost řádkových vektorů matice v odstupňovaném tvaru je lineárně nezávislá právě tehdy, když matice neobsahuje nulový řádek. Důkaz. Implikace zleva doprava je zřejmá. Předpokládejme, že matice A typu m × n bez nulového řádku je v odstupňovaném tvaru a vezmeme parametry r, k1, . . . , kr z definice odstupňovaného tvaru. LINEÁRNÍ ALGEBRA 155 Protože A nemá nulový řádek je r = m. K důkazu lineární nezávislosti posloupnosti řádkových vektorů matice A stačí dokázat lineární nezávislost posloupnosti sloupcových vektorů matice AT , tj. dokázat, že homogenní soustava AT x = o má pouze triviální řešení (viz opět tvrzení 5.38). Ze soustavy AT x = o vybereme pouze rovnice s pořadovými čísly k1, k2, . . . , kr. Tato vybraná soustava má dolní trojúhelníkovou matici s nenulovými prvky na hlavní diagonále a ta má pouze triviální nulové řešení. 1 k1 k2 kr n 1 r 1 k1 k2 kr 1 r n Obrázek 61. Matice A a matice AT Myšlenku důkazu můžeme zobecnit na užitečné pozorování. Máme-li posloupnost n-složkových aritmetických vektorů (a1, a2, . . . , ap) nad tělesem T, zapíšeme je do sloupců matice A = (a1|a2| · · · |ap) nad T. Ta je maticí homogenní soustavy lineárních rovnic Ax = o. Pokud z této soustavy vybereme nějakých m ≤ n rovnic takových, že už tyto rovnice mají pouze triviální nulové řešení, pak také celá soustava Ax = o má pouze triviální nulové řešení. To znamená, že i původní posloupnost (a1, a2, . . . , ap) je lineárně nezávislá. Příklad 5.44. Chceme zjistit, je-li posloupnost aritmetických vektorů ((1, 37, 3, 45, 1)T , (0, −e, 1, πe , 4)T , (0, −12, 0, 33, 2)T ) v prostoru R5 lineárně závislá nebo nezávislá. Z homogenní soustavy s maticí       1 0 0 37 −e −12 3 1 0 45 πe 33 1 4 2       156 LIBOR BARTO A JIŘÍ TŮMA vybereme první, třetí a pátou rovnici a dostaneme homogenní soustavu s maticí   1 0 0 3 1 0 1 4 2   , která má zjevně pouze triviální nulové řešení. Proto je původní posloupnost vektorů lineárně nezávislá. Všimněme si, že k rozhodnutí o lineární nezávislosti původní posloupnosti nám stačilo vybrat pouze první, třetí a pátou složku těchto vektorů. Příklad 5.45. Podíváme se znovu na příklad 5.37, tam jsme zjišťovali, zda je posloupnost ((1, 1, 1, 1)T , (1, 2, 1, 1)T , (0, 1, 0, 1)T ) v prostoru Z4 3 lineárně nezávislá. Tentokrát si vektory napíšeme do řádků a převedeme řádkovými úpravami do odstupňovaného tvaru.   1 1 1 1 1 2 1 1 0 1 0 1   ∼   1 1 1 1 0 1 0 0 0 1 0 1   ∼   1 1 1 1 0 1 0 0 0 0 0 1   = B Původní posloupnost je podle důsledku 5.42 lineárně nezávislá právě tehdy, když jsou řádky vzniklé matice B lineárně nezávislé. Matice B je v odstupňovaném tvaru bez nulového řádku, takže podle předchozího tvrzení jsou řádky B lineárně nezávislé. Původní posloupnost je tedy lineárně nezávislá. Příklad 5.46. Zjistíme, zda je posloupnost vektorů ((1, 1, 1, 0)T , (0, 1, 0, 1)T , (1, 0, 1, 1)T ) v prostoru Z4 2 lineárně nezávislá. Napíšeme si vektory do řádků a upravujeme řádkovými úpravami.   1 1 1 0 0 1 0 1 1 0 1 1   ∼   1 1 1 0 0 1 0 1 0 1 0 1   V úpravách už nemusíme pokračovat, protože vidíme, že posloupnost řádkových vektorů vzniklé matice, a tedy i původní matice, je lineárně závislá. Shrneme poznatky o důsledcích řádkových úprav. Řádkové úpravy nemění lineární nezávislost posloupnosti řádkových vektorů ani posloupnosti sloupcových vektorů. Dále nemění sloupcový prostor Im AT transponované matice, tj. lineární obal řádků matice A, a jádro Ker A matice A. Obecně mění lineární obal Im A sloupců matice A a jádro Ker AT transponované matice A. 5.4. Báze. Dostali jsme se ke stěžejnímu pojmu báze vektorového prostoru. Jako u lineární nezávislosti množin se budeme zabývat především konečnými bázemi a obecnou definici odložíme na později. Definice 5.47. Posloupnost (v1, v2, . . . , vn) prvků vektorového prostoru V nad T se nazývá báze, pokud je lineárně nezávislá a LO {v1, v2, . . . , vn} = V. LINEÁRNÍ ALGEBRA 157 Druhou podmínku můžeme také vyjádřit tak, že množina {v1, v2, . . . , vn} generuje prostor V. Intuitivně, báze je uspořádaná konečná množina prvků V, která je „dost velká na to, aby šel každý prvek prostoru V vyjádřit jako lineární kombinace jejích prvků, a současně „dost malá , aby takové vyjádření bylo nejvýše jedno. Formálně, daná posloupnost prvků (v1, v2, . . . , vn) generuje prostor V právě tehdy, když lze každý prvek zapsat jako jejich lineární kombinaci alespoň jedním způsobem. Podle tvrzení 5.36 je posloupnost lineárně nezávislá právě tehdy, když lze každý prvek vyjádřit jako lineární kombinaci v1, v2, . . . , vn nejvýše jedním způsobem. Dohromady dostáváme následující důležité pozorování. Pozorování 5.48. Posloupnost prvků (v1, v2, . . . , vn) tvoří bázi vektorového prostoru V právě tehdy, když lze každý prvek b ∈ V vyjádřit právě jedním způsobem jako lineární kombinaci prvků v1, v2, . . . , vn. Příklad 5.49. Posloupnost sloupcových vektorů jednotkové matice In nad tělesem T, tj. n-tice aritmetických vektorů ((1, 0, 0, . . . , 0)T , (0, 1, 0, . . . , 0)T , . . . , (0, 0, . . . , 0, 1)T ), je bází aritmetického vektorového prostoru Tn . Tato posloupnost je totiž lineárně nezávislá, například podle tvrzení 5.43, a generuje Tn , protože každý vektor (x1, . . . , xn)T jde vyjádřit jako lineární kombinaci        x1 x2 x3 ... xn        = x1        1 0 0 ... 0        + x2        0 1 0 ... 0        + · · · + xn        0 0 ... 0 1        . Obě podmínky (lineární nezávislost i generování) lze nahlédnout najednou z toho, že každý vektor (x1, x2, . . . , xn)T ∈ Tn lze jednoznačně vyjádřit jako právě uvedenou lineární kombinaci Báze z posledního příkladu jsou význačné báze aritmetických prostorů, proto mají svoje pojmenování a značení. Definice 5.50. Kanonická báze (též standardní báze) v aritmetickém prostoru Tn je posloupnost (e1, e2, . . . , en) =               1 0 0 ... 0        ,        0 1 0 ... 0        , . . . ,        0 0 ... 0 1               . Příklad 5.51. Posloupnost ((1, 1)T , (3, 2)T ) je bází prostoru R2 . Můžeme to odůvodnit například tím, že matice A = 1 3 1 2 je regulární podle charakterizační věty 4.65 (např. podmínka 5). Zobrazení fA : R2 → R2 je proto vzájemně jednoznačné, což znamená, že soustava Ax = b má právě jedno řešení pro každý vektor pravých stran b. To znamená, že každý vektor 158 LIBOR BARTO A JIŘÍ TŮMA b ∈ R2 lze vyjádřit jako lineární kombinaci sloupců matice A právě jedním způsobem, což nastane podle pozorování 5.48 právě tehdy, když posloupnost sloupcových vektorů matice A je báze R2 . Obecněji lze z věty 4.65 charakterizující regulární matice nahlédnout, že sloupce (nebo řádky) čtvercové matice řádu n tvoří bázi Tn právě tehdy, když A je regulární (viz cvičení). Tedy například posloupnost sloupců (řádků) horní trojúhelníkové matice s nenulovými prvky na diagonále tvoří bázi. Příklad 5.52. • Jednočlenná posloupnost ((3, 3, 3)T ) je báze prostoru LO (1, 1, 1)T ≤ R3 . • Posloupnost (1, x, x2 ) je báze prostoru reálných polynomů stupně nejvýše 2, protože každý polynom lze napsat právě jedním způsobem ve tvaru a · 1 + b · x + c · x2 . • Prázdná posloupnost je bází triviálního prostoru {o}. • Posloupnost ((1, 2, 3)T , (9, 12, 15)T , (4, 5, 6)T ) není bází prostoru V = LO (1, 2, 3)T , (9, 12, 15)T , (4, 5, 6)T ≤ R3 , protože je lineárně závislá podle příkladu 5.35. Posloupnost ((1, 2, 3)T ) je sice lineárně nezávislá, ale není bází V, protože daný prostor negeneruje (například vidíme, že (4, 5, 6)T není v lineárním obalu vektoru (1, 2, 3)T ). Posloupnost ((1, 2, 3)T , (2, 1, 1)T ) není bází V, protože vektor (2, 1, 1)T není ani prvkem V, jak jsme se přesvědčili v příkladu 5.31. Posloupnost ((1, 2, 3)T , (4, 5, 6)T ) je bází V, protože generuje V (viz opět 5.35) a je lineárně nezávislá, jak se snadno přesvědčíme. Příklad 5.53. Najdeme nějakou bázi prostoru V = LO        2 1 3 0     ,     1 4 5 0     ,     6 3 1 1     ,     1 4 6 6     ,     3 5 2 3        ≤ Z4 7 . Využijeme toho, že řádkové úpravy matice nemění lineární obal řádků (viz důsledek 5.33). Vektory tedy napíšeme do řádků a převedeme řádkovými úpravami na odstupňovaný tvar. Nenulové řádky generují stejný prostor a navíc jsou podle tvrzení 5.43 lineárně nezávislé, tedy tvoří bázi.       2 1 3 0 1 4 5 0 6 3 1 1 1 4 6 6 3 5 2 3       ∼       2 1 3 0 0 0 0 0 0 0 6 1 0 0 1 6 0 0 1 3       ∼       2 1 3 0 0 0 0 0 0 0 6 1 0 0 0 0 0 0 0 4       ∼       2 1 3 0 0 0 6 1 0 0 0 4 0 0 0 0 0 0 0 0       Bází V je tedy například posloupnost ((2, 1, 3, 0)T , (0, 0, 6, 1)T , (0, 0, 0, 4)T ). Příklad 5.54. Uvažujme prostor V nekonečných posloupností a = (a0, a1, a2, . . . ) splňujících rovnost an+2 = an +an+1 pro každé n ≥ 2, s běžnými operacemi sčítání a násobení skalárem. Prostor V je podprostorem Rω mezi jehož prvky patří také Fibonacciho posloupnost, viz příklad 5.27. Teď nás osvítí záblesk geniality a zkusíme najít v prostoru V nějakou nenulovou geometrickou posloupnost q = (q0 , q1 , q2 , q3 , . . . ) pro vhodné q ∈ R. Geometrická LINEÁRNÍ ALGEBRA 159 posloupnost leží v prostoru V právě když platí qn+2 = qn + qn+1 pro každé n ≥ 2, což platí právě když q2 − q − 1 = 0 . Tato kvadratická rovnice má kořeny ϕ = 1 + √ 5 2 , a 1 − √ 5 2 = 1 − ϕ . Našli jsme tedy dvě geometrické posloupnosti v prostoru V a to p1 = (1, ϕ, ϕ2 , ϕ3 , . . . ), p2 = (1, (1 − ϕ), (1 − ϕ)2 , (1 − ϕ)3 , . . . ) , kde ϕ = (1 + √ 5)/2 je hodnota zlatého řezu. Ukážeme, že uspořádaná dvojice posloupností (p1, p2) je báze ve V. Použijeme podmínku 3. z tvrzení 5.36. Platí-li pro nějaká dvě čísla s, t ∈ R rovnost sp1 + tp2 = (0, 0, 0, . . . ) , porovnáme první dva prvky v posloupnostech na obou stranách. Musí platit rov- nosti s 1 + t 1 = 0 sϕ + t(1 − ϕ) = 0 . Čísla s, t jsou tedy řešením homogenní soustavy lineárních rovnic s maticí 1 1 ϕ 1 − ϕ ∼ 1 1 0 1 − 2ϕ ∼ 1 1 0 − √ 5 . Matice soustavy je regulární a jediným řešením soustavy jsou proto čísla s = t = 0. Podle tvrzení 5.36 je posloupnost (p1, p2) lineárně nezávislá ve V. Dokážeme, že také LO {p1, p2} = V. Je-li a = (a0, a1, a2, . . . ) ∈ V, pak soustava s 1 + t 1 = a0 sϕ + t(1 − ϕ) = a1 má regulární matici a tudíž právě jedno řešení (s, t)T . Protože je posloupnost a určená stejně jako každý jiný prvek prostoru V prvními dvěma prvky, musí platit rovnost sp1 + tp2 = a. Pro vyjádření Fibonacciho posloupnosti a = (0, 1, 1, 2, . . . ) ∈ V jako lineární kombinaci posloupností p1 a p2 stačí najít koeficienty s, t jako řešení soustavy s 1 + t 1 = 0 sϕ + t(1 − ϕ) = 1 . Ta má řešení t = 1/(1 − 2ϕ) = −1/ √ 5 a s = 1/ √ 5. Pro n-tý člen Fibonacciho posloupnosti tak dostáváme vyjádření an = ϕn √ 5 − (1 − ϕ)n √ 5 , které jsme bez důkazu uvedli už v příkladu 4.36. Jak tento vzorec nalézt bez záblesku geniality je vysvětleno v kapitole o vlastních číslech. 160 LIBOR BARTO A JIŘÍ TŮMA 5.4.1. Steinitzova věta o výměně a důsledky, dimenze. Z vizuální představy prostorů R2 je patrné, že všechny báze mají dva prvky. Méně vektorů prostor R2 nemůže generovat a množina třech a více vektorů nemůže být lineárně nezávislá. Podobně, v R3 mají všechny báze právě tři prvky. Obecně platí, že každý vektorový prostor má bázi a všechny báze mají stejný počet prvků. Tomuto počtu říkáme dimenze. Tyto zásadní skutečnosti v této části dokážeme pro konečně generované prostory. Definice 5.55. Vektorový prostor se nazývá konečně generovaný, pokud má nějakou konečnou množinu generátorů. Jedna možnost, jak se můžeme pokusit hledat bázi vektorového prostoru je vzít nějakou posloupnost generátorů a vynechávat prvky z posloupnosti tak dlouho, dokud vzniklé posloupnosti stále generují daný prostor. Pokud již nemůžeme pokračovat, máme minimální posloupnost generátorů. Minimální zde znamená, že vynecháním libovolného prvku vznikne posloupnost, která už prostor negeneruje. Následující tvrzení říká, že v tomto případě již máme bázi. Tvrzení 5.56. Minimální posloupnost generátorů (v1, v2, . . . , vn) vektorového prostoru V je báze V. Důkaz. Podle poznámek za definicí 5.34 je posloupnost lineárně závislá právě tehdy, když LO {v1, v2, . . . , vn} = LO {v1, v2, . . . , vi−1, vi+1, . . . , vn} pro nějaké i ∈ {1, 2, . . . , n}. To se ale nestane, protože předpokládáme, že máme minimální posloupnost generátorů. Posloupnost je tedy lineárně nezávislá, takže je to báze. Důsledek 5.57. Z každé konečné množiny generátorů vektorového prostoru lze vybrat bázi. Důkaz. Postupně vynecháváme prvky dokud nevznikne minimální množina generátorů. Množinu seřadíme do posloupnosti a ta je podle tvrzení bází. Obecně z každé (ne nutně konečné) množiny generátorů konečně generovaného prostoru jde vybrat bázi. Myšlenka je, že nejprve vybereme konečnou množinu generátorů a pak použijeme předchozí výsledek. Detaily si rozmyslete jako cvičení. Speciálně dostáváme důležitý důsledek: Důsledek 5.58. Každý konečně generovaný vektorový prostor má bázi. Příklad 5.59. Podíváme se znovu na příklad prostoru V = LO X ≤ R3 , kde X = {(1, 2, 3)T , (9, 12, 15)T , (4, 5, 6)T }. Množina generátorů X není minimální, protože např. vektor (9, 12, 15)T lze vynechat (viz příklad 5.35). Množina Y = {(1, 2, 3)T , (4, 5, 6)T } je minimální množina generátorů, protože, jak je vidět, vynecháním kteréhokoliv ze dvou vektorů vznikne podprostor, který neobsahuje druhý z vektorů. Takže posloupnost ((1, 2, 3)T , (4, 5, 6)T ) musí být báze podle tvrzení 5.56, což skutečně je. K důkazu dalších zásadních skutečností se nám bude hodit tzv. Steinitzova věta o výměně. Ta říká, že pro libovolnou lineárně nezávislou posloupnost N délky k lze v libovolné posloupnosti generující V vyměnit některých k členů za členy N tak, že vzniklá posloupnost stále generuje V. LINEÁRNÍ ALGEBRA 161 Věta 5.60 (Steinitzova věta o výměně). Nechť N = (v1, v2, . . . , vk) je lineárně nezávislá posloupnost prvků vektorového prostoru V nad T a nechť G = (w1, w2, . . . , wl) generuje V. Pak k ≤ l a při vhodném uspořádání G = (w1, w2, . . . , wl) posloupnosti G platí, že (v1, v2, . . . , vk, wk+1, wk+2, . . . , wl) generuje V. Důkaz. Dokážeme indukcí podle k. Pro k = 0 je tvrzení zřejmé, takže předpokládáme, že k > 0 a že tvrzení platí pro |N| < k. Podle indukčního předpokladu platí k − 1 ≤ l a můžeme najít přeuspořádání G = (w1 , w2 , . . . , wl ) takové, že P = (v1, v2, . . . , vk−1, wk, wk+1, . . . , wl ) generuje V. Zbývá do P umístit prvek vk výměnou za některý z prvků wk, wk+1, . . . . Protože P generuje V, prvek vk jde napsat jako lineární kombinace prvků z P: vk = a1v1 + a2v2 + · · · + ak−1vk−1 + akwk + ak+1wk+1 + · · · + alwl . Posloupnost N je lineárně nezávislá, proto vk není lineární kombinací prvků v1, . . . , vk−1. To znamená, že platí k ≤ l a navíc alespoň jeden z prvků ak, ak+1, . . . , al tělesa T je nenulový. Předpokládejme, že ak = 0, jinak můžeme posloupnost G přeuspořádat do posloupnosti G (a patřičně změnit P), aby toto platilo. Ukážeme, že Z = (v1, v2, . . . , vk, wk+1, wk+2, . . . , wl ) generuje V. Prvek wk jde napsat jako lineární kombinace prvků v1, . . . , vk, wk+1, . . . , wl , což lze nahlédnout z rovnosti výše (z rovnosti vyjádříme akwk a vynásobíme a−1 k ). Takže lineární obal Z obsahuje prvek wk a tím pádem LO {Z} ⊇ LO v1, v2, . . . , vk−1, wk, wk+1, . . . , wl = LO {P} = V . Nejdůležitější důsledek Steinitzovy věty je, že všechny báze obsahují stejný počet prvků. To umožňuje dát přesný význam slovu dimenze. Důsledek 5.61. Každé dvě báze konečně generovaného vektorového prostoru mají stejný počet prvků. Důkaz. Předpokládejme, že B = (v1, . . . , vk) a C = (w1, . . . , wl) jsou dvě báze vektorového prostoru V. Protože posloupnost B je lineárně nezávislá a posloupnost C generuje V, platí podle Steinitzovy věty k ≤ l. Z téže věty plyne také l ≤ k, protože C je lineárně nezávislá a B generuje V. Dohromady dostáváme k = l. Definice 5.62. Dimenzí konečně generovaného vektorového prostoru V nad T rozumíme počet prvků jeho libovolné báze. Dimenzi prostoru V značíme dim(V). Příklad 5.63. V souladu s intuicí je dimenze aritmetického vektorového prostoru Tn rovna n, protože kanonická báze má n prvků. Triviální prostor {o} má dimenzi 0 protože prázdná posloupnost je jeho báze. Prostor LO (1, 1, 1)T ≤ R3 má dimenzi 1, protože ((1, 1, 1)T ) je jeho bází. To odpovídá geometrické představě, že daný prostor je přímkou. 162 LIBOR BARTO A JIŘÍ TŮMA Dimenze prostoru V = LO        2 1 3 0     ,     1 4 5 0     ,     6 3 1 1     ,     1 4 4 1     ,     3 5 2 3        ≤ Z4 7 je 3, protože v příkladu 5.53 jsme nalezli tříprvkovou bázi. Zdůvodnění následujících tvrzení přenecháme do cvičení. Dimenze prostoru všech matic nad T typu m×n je mn. Dimenze prostoru reálných polynomů stupně nejvýše n je n + 1. Dimenze prostoru C jako vektorového prostoru nad R je 2. V důsledku 5.57 jsme viděli, že z každé konečné množiny generátorů lze vybrat bázi. Při hledání báze můžeme postupovat i opačně – k lineárně nezávislé množině doplnit další prvky tak, aby vznikla báze. Následující důsledek říká, že to jde, navíc můžeme doplňovat pouze prvky z libovolně zvolené množiny generátorů. Důsledek formulujeme pro konečné množiny, obecněji necháme důkaz do cvičení. Důsledek 5.64. Nechť G je konečná množina generátorů vektorového prostoru V. Potom každou lineárně nezávislou posloupnost ve V jde doplnit prvky G na bázi V. Důkaz. Označme N = (v1, v2, . . . , vk) Nejprve pomocí důsledku 5.57 vybereme z G bázi B = (w1, . . . , wl). Ze Steinitzovy věty dostaneme, že při vhodném přeuspořádání báze B, posloupnost Z = (v1, v2, . . . , vk, wk+1, . . . , wl) generuje V. Ze Z jde podle důsledku 5.57 vybrat bázi. My ale víme, že dimenze V je l (protože B je báze), takže již Z musí být báze. Formulujeme dva triviální důsledky. Důsledek 5.65. Maximální lineárně nezávislá posloupnost v konečně generovaném prostoru je bází. Obecněji, maximální lineárně nezávislá posloupnost prvků konečné množiny generátorů je bází. Příklad 5.66. V příkladu 5.53 jsme hledali nějakou bázi prostoru V = LO {v1, v2, v3, v4, v5} = LO        2 1 3 0     ,     1 4 5 0     ,     6 3 1 1     ,     1 4 6 6     ,     3 5 2 3        ≤ Z4 7 . Teď z vektorů v1, v2, . . . , v5 bázi V vybereme. Z důsledku 5.57 plyne, že to jde. Předchozí důsledek 5.64 nám dává návod, jak to jde udělat. Stačí totiž vzít libovolnou maximální lineárně nezávislou podmnožinu {v1, . . . , v5} a uspořádat libovolně do posloupnosti. Můžeme postupovat například tak, že začneme s lineárně nezávislou posloupností (v1). Pokusíme se přidat v2 – otestujeme řádkovými úpravami, zda (v1, v2) je lineárně nezávislá. 2 1 3 0 1 4 5 0 ∼ 2 1 3 0 0 0 0 0 Dvojice (v1, v2) je lineárně závislá, vektor v2 tedy přidávat nebudeme. Zkusíme v3. 2 1 3 0 6 3 1 1 ∼ 2 1 3 0 0 0 6 1 LINEÁRNÍ ALGEBRA 163 Máme lineárně nezávislou posloupnost (v1, v3). Pokusíme se k ní přidat v4. Při testování lineární závislosti můžeme využít již provedených úprav.   2 1 3 0 0 0 6 1 1 4 6 6   ∼   2 1 3 0 0 0 6 1 0 0 1 6   ∼   2 1 3 0 0 0 6 1 0 0 0 0   . Vektor v4 přidávat nebudeme. Nakonec zkusíme v5.   2 1 3 0 0 0 6 1 3 5 2 3   ∼   2 1 3 0 0 0 6 1 0 0 1 3   ∼   2 1 3 0 0 0 6 1 0 0 0 4   Protože (v1, v3, v5) je lineárně nezávislá posloupnost a navíc je maximální lineárně nezávislá posloupnost tvořená vektory v množině {v1, v2, . . . , v5} (neboť přidáním v2 nebo v4 již vznikne lineárně závislá množina), tvoří tato posloupnost bázi V. Dokázaná tvrzení umožňují dokazovat a zobecňovat i další fakta, která jsou geometricky zřejmá pro R2 nebo R3 : Pozorování 5.67. V každém vektorovém prostoru V dimenze n platí: (1) Každá množina generátorů V obsahuje alespoň n prvků. (2) Každá n-prvková posloupnost generátorů je bází V. (3) Každá lineárně nezávislá posloupnost ve V obsahuje nejvýše n prvků. (4) Každá n-prvková lineárně nezávislá posloupnost ve V je bází V. Důkaz. Z každé množiny generátorů lze vybrat bázi a všechny báze obsahují n prvků. Z toho plynou první dva body. Každou lineárně nezávislou množinu lze doplnit na n-prvkovou bázi. Z toho plynou zbylé dva body. Příklad 5.68. V příkladu 5.39 jsme zdůvodnili, že posloupnost (3i+5, 2, 3)T , (5, 2+ i, 1)T , (4, 2, 12)T , (π, eπ , 4)T v prostoru C3 je lineárně závislá. Teď máme kratší zdůvodnění – podle třetího bodu v pozorování nemůže žádná lineárně nezávislá posloupnost v C3 obsahovat více než 3 vektory. Podobně můžeme bez jakéhokoliv počítání rozhodnout, že množina {(1, 3, i + eπ , −10)T , (i, 2i, 3 + 2i, −311)T , (2, π, π, −4)T } negeneruje C4 podle prvního bodu. Nakonec ukážeme, že podprostor má nejvýše takovou dimenzi jako původní pro- stor. Tvrzení 5.69. Je-li W podprostor konečně generovaného prostoru V, pak W je konečně generovaný a platí dim(W) ≤ dim(V), přičemž rovnost nastane právě tehdy, když W = V . Důkaz. Nejprve dokážeme, že W je konečně generovaný. (Pozor, zde se často dělá chyba. Toto „intuitivně zřejmé tvrzení je třeba dokázat.) Předpokládejme pro spor, že W nemá konečnou množinu generátorů. Vezmeme libovolný nenulový prvek w1 ∈ W. Protože {w1} negeneruje W, existuje prvek w2 ∈ W takový, že w2 ∈ LO {w1}, atd.: Indukcí najdeme pro libovolné i prvek wi ∈ W, který neleží v lineárním obalu předchozích prvků w1, . . . , wi−1. Podle tvrzení 5.36 je pro každé i posloupnost (w1, w2, . . . , wi) lineárně nezávislá ve W, tedy i ve V), což je spor s bodem (3) předchozího pozorování. 164 LIBOR BARTO A JIŘÍ TŮMA Již víme, že W je konečně generovaný, takže má bázi B podle důsledku 5.58. Báze B prostoru W je lineárně nezávislá množina ve V, takže dim(W) = |B| ≤ dim(V), opět podle bodu (3). Pokud se dimenze rovnají, pak B je bází V podle (4), z čehož vyplývá, že V = W. (Naopak z V = W triviálně plyne dim(V ) = dim(W).) Příklad 5.70. Podle tvrzení mají podprostory R3 dimenzi 0 (triviální podprostor {o}), 1 (podprostory tvaru LO {u}, kde u je nenulový vektor, tedy přímky procházející počátkem), 2 (podprostory tvaru LO {u, v}, kde (u, v) je lineárně nezávislá, tedy roviny procházející počátkem) nebo 3 (triviální podprostor R3 ). Nyní tedy máme precizní důkaz, že diskuze o podprostorech R3 v části 5.2.1 byla správná. Obecněji z tvrzení vyplývá, že každý netriviální podprostor Tn lze zapsat jako lineární obal 1 až n − 1 (lineárně nezávislých) vektorů. 5.4.2. Báze jako souřadnicový systém. Vraťme se teď k pozorování 5.48, které říká, že máme-li bázi B = (v1, v2, . . . , vn) prostoru V, pak každý vektor v ∈ V lze jednoznačným způsobem vyjádřit jako lineární kombinaci vektorů v1, . . . , vn. Koeficientům této lineární kombinace říkáme souřadnice v vzhledem k B. Definice 5.71. Nechť B = (v1, v2, . . . , vn) je báze vektorového prostoru V nad tělesem T a w ∈ V . Souřadnicemi (též vyjádřením) prvku w vzhledem k B rozumíme (jednoznačně určený) aritmetický vektor (a1, a2, . . . , an)T ∈ Tn takový, že w = a1v1 + a2v2 + · · · + anvn . Souřadnice w vzhledem k B značíme [w]B, tj. [w]B =      a1 a2 ... an      . Příklad 5.72. Lineární kombinace prvků u, v prostoru V nad R s koeficienty 2, 3, tj. prvek 2u + 3v, je vlastně „prvek o souřadnicích (2, 3) vzhledem k soustavě souřadnic u, v . Souřadnice závisí na pořadí prvků v bázi. Z tohoto důvodu jsme bázi definovali jako posloupnost prvků vektorového prostoru, nikoliv množinu. Zvolíme-li v prostoru V nad tělesem T dimenze n bázi B, pak předchozí definice jednoznačně přiřazuje každému prvku v ∈ V aritmetický vektor [v]B ∈ Tn . Naopak, každý aritmetický vektor v Tn je roven [v]B pro nějaký (jednoznačně určený) prvek v ∈ V . Zobrazení přiřazující [v]B prvku v je tedy bijekcí mezi V a Tn . Příklad 5.73. V příkladu 5.49 jsme si všimli, že pro kanonickou bázi K = (e1, e2, . . . , en) prostoru Tn a libovolný vektor v ∈ Tn platí [v]K = v . Jednou z bází prostoru V = LO (1, 2, 3)T , (4, 5, 6)T ≤ R3 je posloupnost B = ((1, 2, 3)T , (4, 5, 6)T ) (viz příklad 5.52. Vektor (9, 12, 15)T leží v prostoru V, protože (9, 12, 15)T = (1, 2, 3)T + 2 · (4, 5, 6))T . Jeho vyjádření v bázi B je podle tohoto vztahu [(9, 12, 15)]B = (1, 2)T . LINEÁRNÍ ALGEBRA 165 x 2x y 3y 2x+3y Obrázek 62. Lineární kombinace 2x + 3y (k příkladu 5.72) Posloupnost B = (x, x2 , 1) je bází prostoru reálných polynomů stupně nejvýše dva. Souřadnicemi polynomu a+bx+cx2 vzhledem k této bázi je aritmetický vektor [a + bx + cx2 ]B = (b, c, a)T . Příklad 5.74. Uvažujme posloupnost B = (v1, v2, v3) =     1 2 3   ,   1 3 4   ,   2 1 1     v prostoru Z3 5. Ověříme, že B je bází a najdeme souřadnice vektoru w = (4, 0, 1)T vzhledem k B. Obojí uděláme najednou, pokusíme se w vyjádřit jako lineární kombinaci vektorů v B. Z mnohokrát použitého pohledu na násobení jako na lineární kombinování nahlédneme, že souřadnice [w]B jsou řešením soustavy rovnic Ax = w, kde A = (v1|v2|v3) (tj. vektory z báze napíšeme do sloupců). Soustavu vyřešíme.   1 1 2 4 2 3 1 0 3 4 1 1   ∼   1 1 2 4 0 1 2 2 0 1 0 4   ∼   1 1 2 4 0 1 2 2 0 0 3 2   . Vidíme, že A je regulární (odstupňovaný tvar je horní trojúhelníková matice s nenulovými prvky na diagonále), takže B je báze podle poznámky za příkladem 5.51. Řešením soustavy je x = [w]B =   2 4 4   . Pro kontrolu můžeme ověřit, že skutečně platí w = 2v1 + 4v2 + 4v3. 166 LIBOR BARTO A JIŘÍ TŮMA Korespondence mezi prvky vektorového prostoru a jejich souřadnicemi ve zvolené bázi je ještě těsnější, zachovává totiž operace vektorového prostoru. Konkrétně, souřadnice součtu prvků ve V (vzhledem k B) jsou rovny součtu jejich souřadnic (vzhledem k B) v prostoru Tn . Podobně pro násobení skalárem. Tvrzení 5.75. Nechť B = (v1, v2, . . . , vn) je báze vektorového prostoru V nad tělesem T, nechť u, w ∈ V a t ∈ T. Pak platí (1) [u + w]B = [u]B + [w]B a (2) [tu]B = t[u]B Na levých stranách vystupují operace v prostoru V, na pravých stranách jsou operace v Tn . Důkaz. Je-li [u]B = (a1, a2, . . . , an)T a [w]B = (b1, b2, . . . , bn)T , pak podle definice souřadnic platí u = a1v1 + a2v2 + · · · + anvn, w = b1v1 + b2v2 + · · · + bnvn . Sečtením a úpravou získáme u + w = (a1 + b1)v1 + (a2 + b2)v2 + · · · + (an + bn)vn , což podle definice znamená [u+w]B = (a1 +b1, a2 +b2, . . . , an +bn)T = [u]B +[v]B. Druhá část tvrzení je rovněž snadné cvičení. Příklad 5.76. V prostoru V = LO {(1, 2, 3), (4, 5, 6)} ≤ R3 uvažujme bázi B = ((1, 2, 3)T , (4, 5, 6)T ) a vektory u, w se souřadnicemi (1, 2)T , (3, −1)T vzhledem k B: u =   9 12 15   , [u]B = 1 2 , w =   −1 1 3   , [w]B = 3 −1 . Součtem u a w je vektor (8, 13, 18)T , jeho souřadnice vzhledem k B jsou (1, 2)T + (3, −1)T = (4, 1)T . Skutečně, 4 · (1, 2, 3)T + 1 · (4, 5, 6)T = (8, 13, 18)T . Teď již vidíme přesný význam hesla „všechny konečně generované vektorové prostory jsou v podstatě Tn . Zvolíme-li v prostoru bázi B, můžeme místo původních prvků počítat s jejich souřadnicemi vzhledem k B a tím se vše převádí do Tn . Otázku, jak se souřadnice mění při přechodu od báze B k jiné bázi, vyřešíme za okamžik. Do Tn můžeme převádět celé podmnožiny, tj. pro X ⊆ V definujeme [X]B = {[v]B : v ∈ X} ⊆ Tn . Tento přechod také zachovává důležité vlastnosti, jako lineární nezávislost, generování, báze, apod. Důkaz tohoto pozorování přenecháme jako cvičení. Pozorování 5.77. Nechť B je báze vektorového prostoru V nad tělesem T dimenze n. Pak platí (1) posloupnost (v1, v2, . . . , vk) je lineárně nezávislá ve V právě tehdy, když je posloupnost ([v1]B, [v2]B, . . . , [vk]B) lineárně nezávislá v Tn ; (2) množina X generuje V právě tehdy, když [X]B generuje Tn ; (3) posloupnost (v1, v2, . . . , vk) je báze V právě tehdy, když je posloupnost ([v1]B, [v2]B, . . . , [vk]B) báze Tn . LINEÁRNÍ ALGEBRA 167 5.4.3. Přechod mezi bázemi. Často je potřeba umět rychle přecházet mezi bázemi, tj. počítat souřadnice nějakého prvku vzhledem k jedné bázi, známe-li jeho souřadnice vzhledem k jiné bázi. Tento přechod je možné popsat maticí. Rozmyslíme si nejprve jednoduchý případ aritmetického vektorového prostoru T3 s bází B = (v1, v2, v3). Najdeme vzoreček jak najít vektor x = (x1, x2, x3)T , známe-li jeho vyjádření [x]B = (y1, y2, y3)T vzhledem k bázi B. Podle definice je x = y1v1 + y2v2 + y3v3 , což můžeme maticově zapsat x = (v1|v2|v3)[x]B . Vektor x je roven svému vyjádření vzhledem ke kanonické bázi K = (e1, e2, e3). Matice (v1|v2|v3) se nazývá matice přechodu od B ke K a značí se [id]B K. Umožňuje nám “přecházet” od báze B k bázi K pomocí vzorce [x]K = [id]B K[x]B . Podobnou formulku můžeme nalézt pro přechod mezi libovolnými dvěma bázemi libovolného konečně generovaného vektorového prostoru. Definice 5.78. Nechť B = (v1, . . . , vn) a C jsou báze vektorového prostoru V nad tělesem T. Maticí přechodu od báze B k bázi C rozumíme matici [id]B C = ([v1]C|[v2]C| . . . |[vn]C) . Slovy, matice přechodu od B k C má ve sloupcích vyjádření prvků báze B vzhledem k bázi C. Tvrzení 5.79. Nechť V je vektorový prostor V nad tělesem T dimenze n a B, C jsou báze V. Pak pro libovolný prvek x ∈ V platí [x]C = [id]B C [x]B . Navíc je matice [id]B C tímto vztahem určena jednoznačně. Důkaz. Označme B = (v1, . . . , vn). Vezmeme libovolný prvek x ∈ V a označme [x]B = (a1, . . . , an), tj. podle definice x = a1v1 + · · · + anvn. Podle tvrzení 5.75 platí [x]C = [a1v1 + · · · + anvn]C = [a1v1]C + · · · + [anvn]C = a1[v1]C + · · · + an[vn]C = ([v1]C| . . . |[vn]C)(a1, . . . , an)T = [id]B C [x]B . K důkazu jednoznačnosti uvažujme matici A, která splňuje pro libovolný prvek x ∈ V vztah [x]C = A[x]B . Dosazením x = vi dostaneme [vi]C = A[vi]B = Aei , takže i-tý sloupec matice A je roven [vi]C a tím pádem A = [id]B C . 168 LIBOR BARTO A JIŘÍ TŮMA Příklad 5.80. Matice přechodu od báze B = ((1, 2)T , (5, 6)T ) ke kanonické bázi K prostoru R2 je [id]B K = 1 5 2 6 . Pro libovolný prvek x ∈ R2 platí x = [x]K = 1 5 2 6 [x]B . Pokud chceme naopak vyjadřovat vzhledem k bázi B, známe-li vyjádření vzhledem ke kanonické bázi, upravíme tento vztah na [x]B = 1 5 2 6 −1 x = 1 4 −6 5 2 −1 x . (Využili jsme toho, že [id]B K je regulární matice. Obecně, každá matice přechodu je regulární a platí [id]C B = ([id]B C )−1 . Dokažte!) Příklad 5.81. Najdeme matici přechodu od báze B k bázi C prostoru V ≤ R3 , kde V = LO      1 0 0   ,   0 1 1      , B =     2 4 4   ,   1 −1 −1     , C =     1 0 0   ,   1 1 1     . (Ověřte, že B a C jsou skutečně báze prostoru V!) Potřebujeme najít vyjádření vektorů báze B vzhledem k bázi C. To vede na dvě soustavy rovnic se stejnou maticí, které vyřešíme současně.   1 1 2 1 0 1 4 −1 0 1 4 −1   ∼   1 1 2 1 0 1 4 −1 0 0 0 0   Vychází [(2, 4, 4)T ]C = (−2, 4)T a [(1, −1, −1)T ]C = (2, −1)T , takže matice přechodu od B k C je [id]B C = −2 2 4 −1 . 5.5. Hodnost matice. K matici A nad tělesem T typu m × n máme přiřazeny řádkový a sloupcový prostor Im AT ≤ Tn a Im A ≤ Tm . Ukážeme, že mají stejnou dimenzi. Dále dáme do souvislosti dimenzi prostoru Ker A ≤ Tn a Im A, a podíváme se ještě jednou na řešení soustav lineárních rovnic v terminologii zavedené v této kapitole. V této části budou vystupovat pouze aritmetické vektorové prostory a jejich podprostory. 5.5.1. Bázové sloupce matice. Po převodu soustavy lineárních rovnic elementárními řádkovými úpravami do odstupňovaného tvaru jsme rozdělili proměnné na bázové a volné (parametry). Nyní ukážeme, že toto rozdělení nezávisí na konkrétních provedených úpravách, ale pouze na původní soustavě (viz tvrzení 5.86). Výsledek samozřejmě formulujeme v jazyku matic. Definice 5.82. Nechť A = (a1|a2| · · · |an) je matice nad T. Říkáme, že i-tý sloupec matice A je bázový, pokud není lineární kombinací předchozích sloupců, tj. pokud platí ai ∈ LO {a1, a2, . . . , ai−1} . LINEÁRNÍ ALGEBRA 169 Pojmenování ospravedlňuje skutečnost, že bázové sloupce tvoří bázi sloupcového prostoru matice. To si rozmyslete jako cvičení. Pozorování 5.83. Pro libovolnou matici A tvoří bázové sloupce bázi sloupcového prostoru. Speciálně, dimenze Im A je rovna počtu bázových sloupců. Příklad 5.84. V matici   0 1 2 3 4 0 3 6 3 6 0 −2 −4 4 2   je bázový druhý a čtvrtý sloupec. První, třetí ani pátý sloupec není bázový. Je to vidět u prvního a třetího sloupce, pátý je součtem druhého a čtvrtého, takže také není bázový. Za okamžik ukážeme, že řádkové úpravy neovlivňují skutečnost, zda je sloupec bázový nebo ne. Nejdříve ale ukážeme, že bázové sloupce matice v odstupňovaném tvaru jsou právě sloupce obsahující pivoty. Tvrzení 5.85. Bázové sloupce matice A nad T typu m×n v odstupňovaném tvaru jsou právě sloupce k1, k2, . . . , kr, kde r, k1, . . . , kr jsou parametry z definice 2.12 odstupňovaného tvaru. 0 1 k1 k2 kr n 1 r m ? 0 1 k1 k2 kr n 1 r m Obrázek 63. Matice v odstupňovaném tvaru Důkaz. Označme A = (a1| . . . |an). Pro j = 1, 2, . . . , n označme Wj lineární obal prvních j sloupců, tj. Wj = LO {a1, a2, . . . , aj} . Dále nechť Vj je následující podprostor Tm : Vj = LO {e1, . . . , ej} = {(x1, x2, . . . , xj, 0, 0, . . . , 0) : x1, x2, . . . , xj ∈ T} . Pro libovolné i je Wki−1 podprostorem prostoru Vi−1. Sloupec aki do tohoto prostoru nepatří, takže je bázový. Zbývá ukázat, že ostatní sloupce bázové nejsou. Za tím účelem si všimneme, že Wki = Vi pro libovolné i. Je to proto, že za prvé (ak1 , ak2 , . . . , aki ) je lineárně nezávislá posloupnost (žádný z vektorů v posloupnosti není lineární kombinací předchozích, takže posloupnost je lineárně nezávislá podle tvrzení 5.36), čili dim(Wki ) ≥ i, a za druhé dim(Vi) = i. Prostor Wki dimenze alespoň i je podprostorem Vi dimenze i, takže skutečně platí Wki = Vi podle tvrzení 5.69. Nyní již důkaz dokončíme snadno. Sloupce a1, . . . , ak1−1 jsou celé nulové, takže nejsou bázové. Sloupce ak1+1, ak1+2, . . . , ak2−1 nejsou bázové, protože patří do V1, tedy i do Wk1 , atd. 170 LIBOR BARTO A JIŘÍ TŮMA Tvrzení 5.86. Nechť A je matice nad tělesem T typu m × n a R je regulární matice řádu m. Pak pro libovolné i ∈ {1, 2, . . . , n} platí, že i-tý sloupec matice A je bázový právě tehdy, když je bázový i-tý sloupec matice RA. Důkaz. Tvrzení je důsledkem definice a pozorování, že matice A má stejné lineární závislosti mezi sloupci jako matice RA (toho jsme si všimli v poznámce za tvrzením 5.69). Obšírněji, i-tý sloupec matice A = (a1| . . . |an) není bázový právě tehdy, když je lineární kombinací předchozích sloupců, tj. ai = t1a1 + · · · + ti−1ai−1 pro nějaké prvky t1, . . . , ti−1 ∈ T. Upravený vztah −t1a1 −. . .−ti−1ai−1 +ai = o lze maticově zapsat A(−t1, . . . , −ti−1, 1, 0, . . . , 0)T = o. Vynásobením maticí R zleva dostáváme RA(−t1, . . . , −ti−1, 1, 0, 0, . . . , 0)T = o, z čehož plyne, že i-tý sloupec matice RA je lineární kombinací předchozích. Druhá implikace se dokáže podobně, například vynásobením poslední rovnosti zleva maticí R−1 .) Příklad 5.87. Jako ilustraci provedeme v předchozím příkladu Gaussovu eliminaci a přesvědčíme se, že bázové sloupce jsou právě sloupce obsahující pivoty.   0 1 2 3 4 0 3 6 3 6 0 −2 −4 4 2   ∼   0 1 2 3 4 0 0 0 −6 −6 0 0 0 10 10   ∼   0 1 2 3 4 0 0 0 1 1 0 0 0 0 0   5.5.2. Hodnost. Z dokázaného tvrzení je již jen krok k důkazu, že sloupcový a řádkový prostor matice mají stejnou dimenzi. Této dimenzi říkáme hodnost matice. Věta 5.88. Pro libovolnou matici A platí dim(Im A) = dim(Im AT ). Důkaz. Myšlenka je taková, že pro matice v odstupňovaném tvaru tvrzení platí a ani jedna dimenze se řádkovými úpravami nemění, takže tvrzení platí pro jakoukoliv matici. Detailněji. Každou matici A lze elementárními řádkovými úpravami převést do odstupňovaného tvaru. Jinými slovy, existuje regulární matice R taková, že RA je v odstupňovaném tvaru. Dimenze sloupcového prostoru matice A i RA je počet bázových sloupců (viz pozorování 5.83), tyto dimenze jsou stejné (viz tvrzení 5.86) a rovnají se počtu nenulových řádků matice RA (viz tvrzení 5.85). Dimenze řádkového prostoru matice RA je také rovna počtu nenulových řádků, protože nenulové řádky tvoří lineárně nezávislou posloupnost (viz tvrzení 5.43), která zřejmě generuje řádkový prostor. Ale násobení regulární maticí zleva nemění lineární obal řádků (viz tvrzení 5.32), speciálně, dimenze řádkového prostoru matice RA je stejná jako dimenze řádkového prostoru matice A. Definice 5.89. Hodností matice A rozumíme dimenzi řádkového (sloupcového) prostoru matice A. Značíme rank(A). Shrneme některé důležité triviální důsledky do pozorování. Pozorování 5.90. Pro libovolnou matici A typu m×n platí rank(A) = rank(AT ) ≤ m, n. Hodnost se nemění elementárními řádkovými ani sloupcovými úpravami. Hodnost matice v řádkově odstupňovaném tvaru je rovna počtu nenulových řádků. Poslední věta pozorování také vysvětluje volbu písmena r pro počet nenulových řádků v odstupňovaném tvaru. LINEÁRNÍ ALGEBRA 171 Příklad 5.91. V závislosti na a, b ∈ Z3 určíme dimenzi prostoru Va,b = LO      a 1 2   ,   1 b 2   ,   1 2 1      ≤ Z3 3 , přičemž nás nebude zajímat konkrétní báze. Vektory si napíšeme do řádků nebo sloupců a určíme hodnost matice. Přitom můžeme využívat jak řádkové, tak sloupcové úpravy. Zvolíme třeba řádky.   a 1 2 1 b 2 1 2 1   ∼   1 2 1 a 1 2 1 b 2   ∼   1 2 1 2 1 a 2 b 1   ∼ ∼   1 2 1 0 0 a + 1 0 b + 2 2   ∼   1 2 1 0 b + 2 2 0 0 a + 1   V první úpravě jsme přeuspořádali řádky a v druhé jsme prohodili sloupce. Bývá totiž výhodnější mít parametry co nejvíce vpravo dole, aby se do úprav dostaly co nejpozději. Následně jsme vyeliminovali první sloupec a nakonec ještě prohodili řádky. Pokud b = 1 a a = 2, pak je matice v odstupňovaném tvaru se třemi nenulovými řádky a dim(Va,b) = 3. Pokud b = 1 a a = 2, pak je matice rovněž v odstupňovaném tvaru tentokrát s dvěma nenulovými řádky a dim(Va,b) = 2. Pokud b = 1, pak můžeme ještě upravit (pozor, v tomto případě je matice v odstupňovaném tvaru pouze když a = 2!)   1 2 1 0 0 2 0 0 a + 1   ∼   1 2 1 0 0 2 0 0 0   a dimenze je 2. Shrnutí: Pokud b = 1 a a = 2 je dim(Va,b) = 3, ve všech ostatních případech je dim(Va,b) = 2. Hodnost matice A je rovná dimenzi oboru hodnot příslušného zobrazení fA. Máme-li ještě matici B, aby byl definován součin AB, pak hodnost AB je rovná dimenzi oboru hodnot zobrazení fAB. Ale obor hodnot zobrazení fAB = fA ◦ fB je podprostorem oboru hodnot zobrazení fA, takže hodnost AB je menší nebo rovna hodnosti A. Tuto nerovnost a obdobnou nerovnost pro násobení zleva dokážeme algebraicky. Tvrzení 5.92. Nechť A je matice nad T typu m×n a B matice nad T typu n×p. Pak platí rank(AB) ≤ rank(A), rank(AB) ≤ rank(B) . Důkaz. Podle sloupcové definice součinu je každý sloupec matice AB lineární kombinací sloupců matice A. Z toho plyne Im (AB) ≤ Im (A), takže rank(AB) ≤ rank(A) podle tvrzení 5.69 o dimenzi podprostoru. Podobně Im (AB)T ≤ Im BT , takže rank(AB)T ≤ rank(BT ), z toho plyne rank(AB) ≤ rank(B). Důsledek 5.93. Nechť A je matice nad T typu m × n a R je regulární matice nad T řádu m. Pak rank(RA) = rank(A). Podobně pro násobení regulární maticí zprava. 172 LIBOR BARTO A JIŘÍ TŮMA Důkaz. Podle předchozího tvrzení platí rank(RA) ≤ rank(A), ale také rank(A) = rank(R−1 (RA)) ≤ rank(RA). Pomocí hodnosti můžeme také doplnit charakterizaci regulárních matic dokázanou ve větě 4.65. Uvažujme čtvercovou matici A nad T řádu n. Bod (2) ve větě říká, že fA je zobrazení na, neboli Ax = b má řešení pro každou pravou stranu, neboli Im A = Tn (sloupce generují Tn ), což nastane podle tvrzení 5.69 právě tehdy, když dim(Im A) = rank(A) = n. Bod (4) říká, že Ax = o má jediné řešení, neboli sloupce A jsou lineárně nezávislé. Protože rank(A) = rank(AT ) můžeme podobné charakterizace formulovat i pro řádky. Dostáváme následující pozorování. Pozorování 5.94. Nechť A je čtvercová matice nad T řádu n. Následující tvrzení jsou ekvivalentní. (1) A je regulární. (2) rank(A) = n. (3) Posloupnost sloupců (řádků) matice A je lineárně nezávislá. (4) Sloupce (řádky) matice A generují Tn . (5) Sloupce (řádky) matice A tvoří bázi Tn . Všimněte si, že ekvivalence sloupcových (a řádkových) verzí také plyne z pozorování 5.67. Příklad 5.95. Ukážeme řešení jedné kombinatorické úlohy pomocí hodnosti matice. Příklad byl převzat ze sbírky Šestnáct miniatur Jiřího Matouška, kde jsou popsány některé zajímavé aplikace lineární algebry v jiných oborech. Lze ji najít na domovské stránce autora. Ve městě žije n občanů, kteří jsou sdruženi v m klubech. Podle vyhlášky městské rady má každý klub lichý počet členů, zatímco pro každé dva různé kluby musí být počet společných členů sudý. Dokážeme, že v této situaci je m ≤ n, tedy klubů není více než občanů. Občany označíme čísly 1, 2, . . . , n a kluby čísly 1, 2, . . . , m. Utvoříme matici A = (aij) typu m × n nad tělesem Z2 tak, že aij = 1, pokud občan j je v klubu i, a aij = 0, jinak. Každý řádek tedy popisuje členy jednoho klubu, má na j-té pozici jedničku právě tehdy, když občan j je jeho členem. Například A =   1 1 1 0 0 0 1 1 1 0 0 0 0 0 1   popisuje situaci, kdy ve městě je 5 občanů a 3 kluby. Členy klubu 1 jsou občané 1, 2, 3, členy klubu 2 jsou občané 2, 3, 4 a jediným členem klubu 3 je občan 5. Všimněte si, že tato situace je v souladu s vyhláškou městské rady. Spočítáme součin matic AAT = (bkl). Prvek na místě kl je součtem n sčítanců ak1al1 + ak2al2 + · · · + aknaln. Sčítanec akmalm je roven jedné právě tehdy, když občan m je v obou klubech k, l, jinak je roven nule. Počítáme v Z2, takže celý součet je roven jedné, pokud je počet společných členů klubů k a l lichý, jinak je roven nule. Vyhlášku nyní můžeme přeformulovat tak, že akk = 1 a akl = 0 pro libovolná k = l. Jinými slovy AAT = Im. Hodnost matice A je nejvýš n, protože hodnost nemůže být vyšší než počet sloupců. Z tvrzení 5.92 o hodnosti součinu dostaneme rank(A) ≥ rank(AAT ) = rank(Im) = m . LINEÁRNÍ ALGEBRA 173 Celkově n ≥ rank(A) ≥ m a jsme hotovi. 5.5.3. Skeletní rozklad, Gaussova-Jordanova eliminace. Uvažujme matici A typu m × n hodnosti r ≥ 1 nad tělesem T. Napíšeme nějakou bázi Im A do sloupců matice B. Každý sloupec ai matice A je lineární kombinací sloupců matice B, takže platí ai = Bci pro nějaký vektor ci ∈ Tr . Označíme-li tedy C = (c1| . . . |cn), máme rozklad A = BC, kde B je typu m×r a C je typu r ×n. Takovému rozkladu říkáme skeletní rozklad. Rozklad se hodí pro ukládání matic nízkých hodností a počítání s nimi. Je-li například A čtvercová matice řádu 1000 hodnosti 100, pak na uložení matice A potřebujeme 106 skalárů, kdežto na uložení matic B, C pouze 2 · 105 skalárů. Na výpočet součinu Ax pro nějaký vektor x ∈ T1000 přímočarým způsobem potřebujeme 106 násobení, na výpočet postupem B(C(x)) opět pouze 2 · 105 násobení. Za sloupce matice B můžeme vzít bázové sloupce matice A. Ve tvrzení 5.97 ukážeme, že v tomto případě tvoří matici C nenulové řádky tzv. redukovaného odstupňovaného tvaru matice A. Definice 5.96. Matice je v redukovaném (řádkově) odstupňovaném tvaru, pokud je v řádkově odstupňovaném tvaru a každý bázový sloupec má jedinou nenulovou složku rovnou 1. Každou matici A lze převést do redukovaného odstupňovaného tvaru takto: (1) Matici Gaussovou eliminací převedeme do odstupňovaného tvaru. (2) Vynásobíme nenulové řádky tak, aby byl každý pivot roven 1. (3) Postupně (nejlépe od konce) vynulujeme zbylé prvky v každém bázovém sloupci. Tomuto procesu se říká Gaussova-Jordanova eliminace. Vzniklé matici říkáme redukovaný odstupňovaný tvar matice A. Přejdeme ke slíbenému tvrzení o skeletním rozkladu pomocí redukovaného odstupňovaného tvaru. Tvrzení 5.97. Libovolná matice A typu m × n nad T s hodností r ≥ 1 je rovná součinu A = BC, kde B je matice typu m × r tvořená bázovými sloupci matice A (v pořadí v jakém se vyskytují v A) a C je matice typu r × n tvořená nenulovými řádky v redukovaném odstupňovaném tvaru D matice A. Důkaz. Označme k1, . . . , kr indexy bázových sloupců matice A = (a1| . . . |an). Matice D = (d1| . . . |dn) vznikla z A posloupností řádkových elementárních úprav, takže D = RA pro nějakou regulární matici R řádu m. Matice C je v odstupňovaném tvaru, čísla k1, . . . , kr se shodují s definicí 2.12, B = (ak1 | . . . |akr ) a navíc platí dki = ei pro každé 1 ≤ i ≤ r, tedy také cki = ei (v tomto výrazu má ei jiný počet složek než v přechozím). Vztah A = BC plyne z toho, že A a RA mají stejné lineární závislosti mezi sloupci. Důkaz provedeme podrobněji. Dokážeme, že matice A a BC mají stejné sloupce s pořadovým číslem j. Triviálně to je splněné pro j < k1 (na obou stranách jsou nulové sloupce). Jinak označme i největší takové číslo, že j ≥ ki. Sloupec j matice A je lineární kombinací bázových sloupců ak1 , . . . , aki , tedy pro nějaké prvky t1, . . . , ti ∈ T platí aj = t1ak1 + t2ak2 + · · · + tiaki . 174 LIBOR BARTO A JIŘÍ TŮMA Vynásobením maticí R zleva a úpravou užitím D = RA získáme dj = Raj = t1Rak1 +· · ·+tiRaki = t1dk1 +· · ·+tidki = t1e1+· · ·+tiei = (t1, . . . , ti, 0, . . . , 0)T , tím pádem také cj = (t1, . . . , ti, 0, . . . , 0)T , kde vektor má tentokrát r složek. Sloupec j matice BC je proto Bcj = B(t1, . . . , ti, 0, . . . , 0)T = t1ak1 + · · · + tiaki = aj . Jako cvičení dokažte, že redukovaný odstupňovaný tvar je maticí určen jednoznačně, tj. pro každou matici A existuje právě jedna matice J v redukovaném odstupňovaném tvaru taková, že J lze získat z A elementárními řádkovými úpravami. Opět lze argumentovat lineárními závislostmi mezi sloupci. 5.5.4. Ještě jednou soustavy rovnic, dimenze jádra a obrazu. Nyní si zopakujeme různé pohledy na řešení soustav lineárních rovnic a formujeme již známé skutečnosti o existenci a tvaru řešení pomocí pojmů zavedených v této kapitole. Budeme předpokládat, že A je matice nad tělesem T typu m × n a b ∈ Tm . Na řešení soustavy Ax = b se můžeme dívat několika způsoby: (1) Hledání průniku m „nadrovin v prostoru Tn (každá rovnice, neboli řádek matice (A|b), určuje jednu „nadrovinu ). (2) Hledání koeficientů lineárních kombinací sloupců matice A, jejímž výsledkem je b. (3) Určování úplného vzoru vektoru b při zobrazení fA. Pomocí pojmu hodnost můžeme formulovat kritérium řešitelnosti. Věta 5.98 (Frobeniova věta). Soustava Ax = b má řešení právě tehdy, když rank(A) = rank(A | b). Důkaz. Rovnost Ax = b je pro nějaké x ∈ Tn splněna právě tehdy, když b je lineární kombinací sloupců matice A, což platí právě tehdy, když Im A = Im (A | b). Uvážíme-li, že Im A ≤ Im (A | b), vidíme, že podprostory jsou rovny právě tehdy, když se rovnají jejich dimenze (viz tvrzení 5.69). Prakticky, hodnosti vidíme z odstupňovaného tvaru matice soustavy, protože hodnost je rovna počtu nenulových řádků v odstupňovaném tvaru, takže kritérium ve Frobeniově větě se shoduje s předchozím kritériem na řešitelnost (neexistence řádku tvaru (0, 0, . . . , 0, a), a = 0 v odstupňovaném tvaru). Tvar řešení je určený řešením příslušné homogenní soustavy: je-li u libovolné řešení, pak množina všech řešení dané soustavy je podle věty 4.82 rovná u + Ker A . Řešením je tedy vždy posunutí podprostoru Ker A o nějaký vektor. Jádro matice A jsme nejprve popisovali ve tvaru    p∈P tpvp : tp ∈ T pro každé p ∈ P    a nyní píšeme stručněji LO {vp : p ∈ P} , LINEÁRNÍ ALGEBRA 175 kde P jsou indexy nebázových sloupců – volných proměnných. Ze způsobu nalezení vektorů vp (připomenutého v důkazu následující věty) se snadno ukáže, že tyto vektory tvoří bázi prostoru Ker A. Protože počet volných proměnných je n − rank(A), dostáváme: Věta 5.99 (Věta o dimenzi jádra a obrazu). Pro libovolnou matici A nad T typu m × n platí dim(Ker A) + dim(Im A) = n ( = dim(Ker A) + rank(A) ) . Důkaz. Nechť r = rank(A) a označme P = {j1, . . . , jn−r}, j1 < j2 < · · · < jn−r nebázové sloupce matice A (příslušné proměnné nazýváme volné). Připomeňme, že každý prvek x = (x1, . . . , xn)T ∈ Ker A (neboli každé řešení homogenní soustavy Ax = o) je jednoznačně určen vektorem (xj1 , xj2 , . . . , xjn−r )T ∈ Tn−r a naopak, libovolný vektor v Tn−r určuje jedno řešení. Toto jsme nahlédli v pozorování 2.16 použitím odstupňovaného tvaru, můžeme to ale dokázat přímo z definice bázových sloupců (viz cvičení). Zvolíme libovolnou bázi U = (uj1 , . . . , ujn−r ) prostoru Tn−r a najdeme (jednoznačně určené) vektory vp ∈ Ker A tak, že pro každé p ∈ P a k ∈ {1, . . . , n − r} je jk-tá složka vektoru vp rovná k-té složce vektoru up. Podle připomenutí z předchozího odstavce je (vj1 , . . . , vjn−r ) báze prostoru Ker A: je lineárně nezávislá (protože U je lineárně nezávislá) a generuje Ker A (protože U generuje Tn−r ). Poznamenejme, že v diskuzi v oddílu 4.5.1 jsme při výpočtu vp volili vždy jednu volnou proměnnou rovnou 1 a zbylé rovné 0. Za U jsme tedy volili kanonickou bázi prostoru Tn−r . V prostoru Ker A jsme nalezli (n − r)–prvkovou bázi, máme tedy dim(Ker A) + dim(Im A) = (n − r) + r = n . Důkaz věty zároveň odpovídá na poslední otázku, která v oddílu 4.5.1 zůstala otevřená: je nutné při výpočtu vektorů vp volit za volné proměnné prvky kanonické báze Tn−r ? Odpověď je ne, můžeme zvolit prvky libovolné báze Tn−r . Příklad 5.100. Vrátíme se k soustavě z oddílu 2.3.4 a příkladu 4.79.   0 0 1 0 2 −3 2 4 −1 6 2 1 1 2 −1 3 0 2   . Převodem do odstupňovaného tvaru jsme získali   1 2 −1 3 0 2 0 0 1 0 2 −3 0 0 0 0 0 0   . Vidíme, že dim(Im A) = rank(A) = rank(A | b) = 2, takže soustava je řešitelná. Dimenze Ker A je 5 − 2 = 3. Partikulární řešení získáme dopočítáním z libovolné volby volných proměnných. V 4.79 jsme zvolili nulový vektor a dostali jsme vektor (−1, 0, −3, 0, 0)T . Bázi Ker A získáme dopočítáním z nějaké báze U prostoru R3 . V 4.79 jsme volili kanonickou bázi R3 a získali jsme následující bázi Ker A: ((−2, 1, 0, 0, 0)T , (−3, 0, 0, 1, 0)T , (−2, 0, −2, 0, 1)T ). Celkově můžeme řešení psát ve 176 LIBOR BARTO A JIŘÍ TŮMA tvaru       −1 0 −3 0 0       + LO          −2 1 0 0 0       ,       −3 0 0 1 0       ,       −2 0 −2 0 1          . Jiné partikulární řešení je například (−8, 1, −5, 1, 1)T ) získáné volbou jedniček za parametry. Jinou bázi Ker A můžeme dostat například volbou následující báze prostoru R3 . U = ((1, 1, 1)T , (0, 1, 1)T , (0, 0, 2)T ) Dopočtením prvků v posloupnosti ((?, 1, ?, 1, 1)T , (?, 0, ?, 1, 1)T , (?, 0, ?, 0, 2)T ) získáme následující bázi prostoru Ker A. ((−7, 1, −2, 1, 1)T , (−5, 0, −2, 1, 1)T , (−4, 0, −4, 0, 2)T ) . Množina všech řešení dané soustavy je tedy také rovná       −8 1 −5 1 1       + LO          −7 1 −2 1 1       ,       −5 0 −2 1 1       ,       −4 0 −4 0 2          . Věta o dimenzi jádra a obrazu a věta 5.88 o rovnosti dimenzí sloupcového a řádkového prostoru ukazují, že dimenze čtyř základních prostorů určených maticí (prostorů Im A, Im AT , Ker A, Ker AT ) jsou dohromady těsně svázány. Každá z těchto dimenzí určuje zbývající tři. Podívejme se ještě na geometrickou interpretaci věty o dimenzi jádra a obrazu. Matice A určuje zobrazení fA : Tn → Tm . Dimenze jádra určuje dimenzi prostoru vektorů, které se zobrazí na nulový vektor. To si můžeme představovat jako počet dimenzí, které zobrazení fA „zkolabuje do bodu. Větu lze nyní interpretovat tak, že dimenze obrazu je rovná dimenzi prostoru, který zobrazujeme (n) minus počet zkolabovaných dimenzí. Například pokud fA : R3 → R3 je projekce na nějakou rovinu, pak dim(Ker A) = 1 a rank(A) = dim(Im A) = 2. Pro zobrazení fA : R2 → R3 (viz obrázek ??), které „věrně zobrazuje rovinu do nějaké roviny v R3 , je dim(Ker A) = 0 a rank(A) = 2. 5.6. Průnik a součet podprostorů. Průnik dvou i více podprostorů nějakého vektorového prostoru je vždy podpro- stor. Tvrzení 5.101. Jsou-li Vi, i ∈ I podprostory vektorového prostoru V, pak i∈I Vi je podprostorem V. Důkaz. Stačí ověřit, že průnik je neprázdný a je uzavřený na sčítání a násobení skalárem (viz tvrzení 5.12). Průnik je neprázdný, protože obsahuje nulový vektor. Jsou-li u, w dva vektory z průniku, pak pro každé i ∈ I platí u, w ∈ Vi. Protože Vi jsou podprostory, platí u + w ∈ Vi pro každé i ∈ I. To ale znamená, že u + w leží v průniku podprostorů Vi. Uzavřenost na násobení skalárem se dokáže podobně. LINEÁRNÍ ALGEBRA 177 Sjednocení dvou podprostorů je zřídkakdy podprostorem. Například sjednocení dvou různých přímek v R2 zřejmě není podprostorem, protože není uzavřené na sčítání. Nejmenší podprostor obsahující dané podprostory nazýváme jejich součtem. Definice 5.102. Nechť Vi, i ∈ I jsou podprostory vektorového prostoru V. Součtem (též spojením) podprostorů Vi, i ∈ I rozumíme lineární obal jejich sjednocení, značíme jej i∈I Vi, tj. i∈I Vi = LO i∈I Vi . Součet podprostorů V1, V2, . . . , Vk také značíme V1 + V2 + · · · + Vk. Jako cvičení dokažte, že součet je asociativní. Při tvorbě lineárního obalu stačí sjednocení V1 ∪ V2 ∪ · · · ∪ Vk uzavřít na součty vektorů z různých podprostorů, tj. platí V1 + V2 + · · · + Vk = {v1 + v2 + · · · + vk : v1 ∈ V1, v2 ∈ V2, . . . , vk ∈ Vk} . Důkaz přenecháme jako cvičení. Rovněž si všimněme, že sjednocením množiny generátorů prostoru U a množiny generátorů prostoru V je množina generátorů prostoru U + V. Pro dimenze dvou podprostorů a jejich součtu a průniku platí podobný vztah jako pro počty prvků ve dvou množinách a jejich sjednocení a průniku. Věta 5.103 (Věta o dimenzi součtu a průniku). Pro libovolné dva konečně generované podprostory U, V vektorového prostoru W platí dim(U) + dim(V) = dim(U ∩ V) + dim(U + V) . Důkaz. Prostor U∩V je podprostorem konečně generovaného prostoru U, proto je konečně generovaný (viz tvrzení 5.69). Vezmeme libovolnou bázi B = (w1, w2, . . . , wk) průniku U∩V (báze existuje v libovolném konečně generovaném prostoru podle důsledku 5.58). Množina B je lineárně nezávislá v prostoru U, takže ji můžeme doplnit na bázi C = (w1, w2, . . . , wk, u1, u2, . . . , ul) prostoru U (viz důsledek 5.64). Podobně doplníme B na bázi D = (w1, w2, . . . , wk, v1, v2, . . . , vm) prostoru V. Ukážeme, že E = (w1, w2, . . . , wk, u1, . . . , ul, v1, v2, . . . , vm) je báze U + V. Posloupnost E generuje U + V podle poznámky nad větou (cvičení ??). Zbývá ukázat, že E je lineárně nezávislá. Předpokládejme, že k i=1 aiwi + l i=1 biui + m i=1 civi = o . Chceme dokázat, že všechny koeficienty jsou nutně nulové. Vztah drobně upravíme. l i=1 biui = − m i=1 civi − k i=1 aiwi Vektor u = l i=1 biui leží v prostoru U a také leží, podle odvozeného vztahu, v lineárním obalu vektorů v1, . . . , vm, w1, . . . , wk, čili v prostoru V. Vektor u tedy leží v průniku U ∩ V a proto jej lze vyjádřit jako lineární kombinaci vektorů w1, . . . , wk báze B. u = k i=1 diwi 178 LIBOR BARTO A JIŘÍ TŮMA Z toho získáme následující vyjádření o jako lineární kombinaci prvků C: o = k i=1 diwi − l i=1 biui , takže b1 = b2 = · · · = bl = d1 = d2 = · · · = dk = 0, protože C je lineárně nezávislá.. Podobně bychom dokázali, že koeficienty c1, c2, . . . , cm jsou rovněž všechny nulové. Nyní ale a1 = a2 = · · · = ak = 0, protože B je lineárně nezávislá. Věta se geometricky dobře představí, když si ze vztahu vyjádříme dimenzi součtu podprostorů jako součet dimenzí jednotlivých prostorů minus dimenze společné části (průniku). Věta se může hodit třeba při určování dimenze průniku, protože dimenze prostorů a jejich součtu nebývá problém spočítat. Příklad 5.104. Určíme dimenzi průniku podprostorů U, V ≤ Z4 5. U = LO        2 1 0 3     ,     3 4 2 1     ,     3 4 3 3        , V = LO        2 3 4 1     ,     4 4 0 1        Dimenze U a V zjistíme tím, že si vektory napíšeme do řádků a řádkovými úpravami převedeme do odstupňovaného tvaru (víme, že hodnost se nemění ani sloupcovými úpravami, my ale později využijeme toho, že řádkové úpravy nemění lineární obal řádků).   2 1 0 3 3 4 2 1 3 4 3 3   ∼   2 1 0 3 0 0 2 4 0 0 3 1   ∼   2 1 0 3 0 0 2 4 0 0 0 0   = A 2 3 4 1 4 4 0 1 ∼ 2 3 4 1 0 3 2 4 = B Vidíme, že dim(U) = 2 a dim(V) = 2. Nenulové řádky matice A generují U a řádky matice B generují V (protože elementární řádkové úpravy nemění lineární obal), takže dohromady máme množinu generátorů U+V, která už je částečně upravená. Dokončíme Gaussovu eliminaci.     2 1 0 3 0 0 2 4 2 3 4 1 0 3 2 4     ∼     2 1 0 3 0 0 2 4 0 2 4 3 0 3 2 4     ∼     2 1 0 3 0 2 4 3 0 0 2 4 0 3 2 4     ∼ ∼     2 1 0 3 0 2 4 3 0 0 2 4 0 0 1 2     ∼     2 1 0 3 0 2 4 3 0 0 2 4 0 0 0 0     Vidíme, že dim(U + V) = 3. Z věty o dimenzi součtu a průniku dostáváme dim(U ∩ V) = dim(U) + dim(V) − dim(U + V) = 2 + 2 − 3 = 1 . Příklad 5.105. Dokážeme, že průnikem dvou různých podprostorů U, V dimenze 2 (rovin) v prostoru W dimenze 3 (např. R3 ) je podprostor dimenze 1 (přímka). Protože podprostory U a V jsou různé, U je vlastním podprostorem U+V. Podle tvrzení 5.69 o dimenzi podprostorů máme 2 = dim U < dim(U+V) ≤ dim(W) = 3, LINEÁRNÍ ALGEBRA 179 takže dimenze součtu je 3 (součet je podle stejného tvrzení celý prostor W). Z věty o dimenzi součtu a průniku teď můžeme spočítat dim(U ∩ V) = dim(U) + dim(V) − dim(U + V) = 2 + 2 − 3 = 1 . Na rozdíl od sjednocení a průniku, pro součet a průnik neplatí distributivní zákony. Z toho důvodu také neplatí „přímočaré zobecnění věty o dimenzi součtu a průniku na případ tří podprostorů, viz cvičení. Jak jsme si již všimli, každý vektor v součtu V = V1 + V2 + · · · + Vk lze psát jakou součet v1 + v2 + · · · + vk. Pokud je tento zápis jednoznačný hovoříme o direktním součtu. Tento pojem je obdobou pojmu báze pro podprostory. Definice 5.106. Říkáme, že V je direktním součtem podprostorů V1, V2, . . . , Vk, pokud jsou splněny dvě podmínky. (1) V = V1 + V2 + · · · + Vk (2) Vi ∩ (V1 + V2 + · · · + Vi−1 + Vi+1 + Vi+2 + · · · + Vk) = {o} pro libovolné i ∈ {1, 2, . . . , k}. Skutečnost, že V je direktním součtem V1, V2, . . . , Vk zapisujeme V = V1 ⊕ V2 ⊕ · · · ⊕ Vk . Pro dva podprostory V1, V2 se podmínky zjednoduší na V1 + V2 = V a V1 ∩ V2 = {o} Tvrzení 5.107. Nechť V1, V2, . . . , Vk jsou podprostory vektorového prostoru V. Pak následující tvrzení jsou ekvivalentní. (1) V = V1 ⊕ V2 ⊕ · · · ⊕ Vk. (2) Každý vektor v ∈ V lze zapsat právě jedním způsobem ve tvaru v = v1 + v2 + · · · + vk, kde vi ∈ Vi pro každé i ∈ {1, 2, . . . , k}. Důkaz. Předpokládejme, že V = V1 +V2 +· · ·+Vk. Pak V je součtem podprostorů V1, V2, . . . , Vk, takže každý vektor v ∈ V lze zapsat ve tvaru v = v1 +v2 +· · ·+vk, kde vi ∈ Vi pro každé i ∈ {1, 2, . . . , k}. K důkazu jednoznačnosti uvažujme dvě taková vyjádření v = v1 + v2 + · · · + vk = v1 + v2 + · · · + vk . Pro každé i ∈ {1, 2, . . . , k} leží vektor vi − vi v prostoru Vi, ale také v součtu zbylých podprostorů, jak je vidět z vyjádření vi−vi = (−v1+v1)+(−v2+v2)+· · ·+(−vi−1+vi−1)+(−vi+1+vi+1)+· · ·+(−vk+vk) . Podle podmínky (2) z definice direktního součtu platí vi − vi = o, čili vi = vi. Předpokládejme naopak, že platí podmínka (2). Pak V = V1 + V2 + · · · + Vk. Pro spor předpokládejme, že pro nějaké i existuje nenulový vektor u v průniku Vi a j=i Vj. Pak existují a1, a2, · · · ∈ T taková, že u = a1v1 + a2v2 + · · · + ai−1vi−1 + 0vi + ai+1vi+1 + · · · + akvk = 0v1 + 0v2 + · · · + 0vi−1 + u + 0vi+1 + · · · + 0vk . Dostali jsme dvě různá vyjádření vektoru u jako součet vektorů z V1, V2, . . . , Vk, spor. 180 LIBOR BARTO A JIŘÍ TŮMA Direktní součet lze chápat jako rozklad podprostoru na vzájemně nezávislé části. Všimněte si, že V je direktním součtem jednodimenzionálních podprostorů V = LO {v1} ⊕ LO {v2} ⊕ · · · ⊕ LO {vk} právě tehdy, když (v1, v2, . . . , vk) je báze. 5.7. Prostory nekonečné dimenze. Pro zjednodušení jsme pojmy lineární nezávislosti a báze definovali pro konečné posloupnosti vektorů, a tím pádem jsme mohli dokazovat některá tvrzení jen pro konečně generované prostory. V této části stručně probereme obecný případ. Příklady prostorů, které nejsou konečně generované, zahrnují prostor reálných funkcí reálné proměnné, nebo reálná čísla chápaná jako vektorový prostor nad Q. Lineární (ne)závislost a bázi definujeme jako indexovaný soubor vektorů: Definice (Zobecnění definic 5.34 a 5.47). Soubor (vi : i ∈ I) vektorů ve V nazýváme lineárně závislý, pokud některý z vektorů vi je lineární kombinací ostatních vektorů vj, j = i. V opačném případě říkáme, že je soubor lineárně nezávislý. Bází rozumíme lineárně nezávislý soubor generátorů. Tato definice skutečně rozšiřuje stávající definici, protože posloupnost n vektorů můžeme chápat jako soubor indexovaný množinou I = {1, 2, . . . , n}. Připomeňme, že v lineární kombinaci může mít nenulový koeficient pouze konečně mnoho vektorů, součet nekonečně mnoha vektorů nemáme definován. Tedy například v prostoru Rω všech nekonečných posloupností reálných čísel soubor (ei : i ∈ N), kde ei = (0, 0, . . . , 1, 0, 0, . . . ) s jedničkou na i-tém místě, negeneruje Rω . Tento soubor generuje podprostor R(ω) všech posloupností s konečným počtem nenulových členů a je jeho bází. Mnoho dokázaných tvrzení lze zobecnit, konkrétně platí obdoby následujících tvrzení. Důkazy dělat nebudeme. • Tvrzení 5.36 charakterizující lineární nezávislost. • Pozorování 5.48, které říká, že každý vektor lze vyjádřit jako lineární kombinaci prvků báze. To umožňuje zavést souřadnice vektoru vzhledem k bázi. Roli aritmetických vektorových prostorů hrají prostory T(I) : Vektory jsou „skoro všude nulové I-tice prvků tělesa I, formálněji, soubory (ai : i ∈ I), takové, že všechna ai ∈ T až na konečný počet jsou nulové. Operace jsou definovány po složkách. Obdoba tvrzení 5.75 o souřadnicích a operacích i obdoba pozorování 5.77 o zachovávání důležitých vlastností jako lineární nezávislost platí. • Minimální soubor generátorů je vždy báze (obdoba tvrzení 5.56). Obdoba důsledku 5.57, tj. že z každé množiny generátorů lze vybrat bázi platí, ale není to zřejmé, protože není apriori jasné, že minimální generující podmnožina existuje. Speciálně, každý konečně generovaný vektorový prostor má bázi (obdoba důsledku 5.58). • Všechny báze mají stejnou mohutnost (obdoba důsledku 5.61), takže má smysl zavést dimenzi jako mohutnost libovolné báze. Rovněž platí obdoba důsledku 5.64, že libovolný lineárně nezávislý soubor lze doplnit do báze vektory z libovolné množiny generátorů. Z toho plyne obdoba důsledku 5.65, že maximální lineárně nezávislý soubor je báze. • Obdoba tvrzení 5.69 platí jen částečně. Je pravda, že podprostor má vždy dimenzi menší nebo rovnou dimenzi původního prostoru. Není ale pravda, LINEÁRNÍ ALGEBRA 181 že rovnost nastane pouze tehdy, když se prostory rovnají. Například dimenze prostoru R(ω) skoro všude nulových posloupností je stejná jako dimenze jeho vlastního podprostoru tvořeného posloupnostmi, které začínají nulou. 5.8. Samoopravné kódy. Představíme základní pojmy teorie samoopravných kódů a ukážeme si, jak se v ní uplatňuje lineární algebra. 5.8.1. Kódy neformálně. V roce 1947 byl v Bellových laboratořích v provozu jeden z prvních reléových počítačů. Relé byla uspořádána do pětic. Jednotlivé cifry 0, 1, . . . , 9 byly reprezentovány tak, že vždy dvojice z pěti relé byla sepnuta a zbylá tři nikoliv. Protože existuje deset možných výběrů dvojice prvků z pěti, každá z dvojic reprezentovala právě jednu cifru. Pokud během výpočtu došlo k nějaké chybě, projevila se tak, že v nějakě pětici relé byl počet sepnutých relé různý od dvou. Počítač to zaregistroval a zastavil se. V té chvíli nastoupila obsluha, nějakým způsobem zjistila, jaká dvojice relé má být správně sepnuta, ručně to zařídila, a spustila pokračování výpočtu. V režimu bez obsluhy (mimo pracovní dobu) počítač výpočet ukončil a ze zásobníku programů vzal ten následující. Toto ukončování výpočtu bez náhrady motivovalo Richarda W. Hamminga (1915-1998) k návrhu prvních samoopravných kódů. Bellův počítač pracoval s desetiprvkovou abecedou 0, 1, . . . , 9. Každou z těchto cifer reprezentoval pomocí posloupnosti pěti nul a jednotek: 00110, 01010, atd. Binární vyjádření prvků nějaké abecedy jako posloupnosti nul a jednotek je v současnosti tak běžné, že je považujeme za samozřejmé. Tak například odpovědi v testu s výběrem ze čtyř možností a, b, c, d můžeme přeložit do binárního vyjádření třeba následovně: a = 00, b = 01, c = 10, d = 11. Vyplněný test s 90 otázkami a nabídkou čtyř možných odpovědí je pak totéž, co posloupnost 180 nul a jednotek. Analogicky můžeme zapsat celý genetický kód člověka, použijeme-li překlad G = 00, C = 01, T = 10, H = 11. Zápis bude jenom o něco delší. Morseova abeceda je příklad jiného kódování. Používá sice také jenom dva symboly - tečka, čárka - ale mezi symboly do abecedy je třeba také zařadit mezeru. To je cena, kterou je nutné zaplatit za to, že posloupnosti teček a čárek reprezentující různá písmena abecedy mohou mít různou délku a Morseova volba byla taková, že vyjádření jednoho písmene může být počátečním úsekem jiného písmene. Např. e = ·, a = ·−. My se budeme v dalším zabývat pouze kódováním, které každému symbolu původní abecedy přiřazuje posloupnost n nul a jedniček pro nějaké pevné n. Definice 5.108. Binární blokový kód délky n je libovolná podmnožina C aritmetického vektorového prostoru Zn 2 . Prvkům C říkáme slova nebo také bloky kódu C. Zprávou v kódu C potom rozumíme posloupnost slov kódu C. Tak například, je-li C = {000, 001, 010, 001, 110, 111} kód délky 3, pak posloup- nost 000 111 110 010 001 je zpráva v tomto kódu. Mezery mezi jednotlivými slovy kódu děláme pro pohodlí. Také vynecháváme závorky při zápisu vektorů a čárky mezi jejich složkami, jak je v 182 LIBOR BARTO A JIŘÍ TŮMA teroii kódování běžné. Stejná délka jednotlivých bloků v binárním kódu umožňuje jednoznačně interpretovat tutéž zprávu zapsanou bez mezer 000111110010001. Zprávu zapsanou v jakékoliv abecedě s konečným počtem symbolů můžeme jednoznačně zakódovat pomocí bloků binárního kódu vhodné délky n. Stačí pouze, aby bylo číslo 2n aspoň tak velké jako počet znaků v původní abecedě. V této ”digitalizované”podobě můžeme zprávu přenést nějakým komunikačním kanálem. Pokud je kanál bez jakéhokoliv šumu, neni žádné nebezpečí, že přijímající strana přijme zprávu v jiné podobě, než v jaké byla vyslána. Takové kanály ale v reálném světě neexistují, vždy je nenulová pravděpodobnost, že některá z cifer 0 nebo 1 se během přenosu změní na opačnou. Pro kanály se šumem nejsou blokové kódy typu C = Zn 2 vhodné. Skutečnost, že každý blok z n cifer 0 nebo 1 je kódovým slovem, znamená že přijímající strana nemá možnost poznat, že během přenosu zprávy byl nějaký blok pozměněn. Každý přijatý blok mohl být také vyslán. Řešením je nepoužívat jako kódová slova všechny bloky dané délky n, ale pouze některé. Pokud jsou kódová slova dobře vybrána, může přijímající strana poznat, že během přenosu bloku zprávy došlo k nějaké chybě díky tomu, že přijme posloupnost délky n, která není kódovým slovem. Takový blok vysílající strana nemohla vyslat. Daní, kterou je nutné za to zaplatit, je snížení rychlosti přenosu informace, množství informace, kterou kanálem přeneseme za jednotku času. Do kódu vnášíme nadbytečnost, cizím slovem redundanci - pro přenášení informace používáme více symbolů, než kolik je potřeba. nadbytečnost ale umožňuje odhalovat a opravovat chyby při přenosu dat. Nejjednodušší způsob jak bojovat se šumem, je vyslat každý blok dvakrát po sobě. Příkladem takového opakovacího kódu je následující kód délky 4: C = {0000, 0101, 1010, 1111}. Každé slovo má dvě části. První dva symboly jsou informační symboly, zbylé dva jsou kontrolní symboly. Kontrolní symboly nenesou žádnou informaci, pouze opakují předchozí dva symboly. Z každých čtyř symbolů vyslaného slova pouze první dva nesou informaci. Rychlost přenosu informace pomocí takového kódu je poloviční oproti rychlosti přenosu informace kódem D = {00, 01, 10, 11}. Narozdíl od kódu D ale kód C umožňuje přijímající straně poznat, pokud během přenosu slova došlo k jedné chybě. První a druhá polovina přijatého čtyřprvkového bloku se v takovém případě liší. Říkáme, že kód C odhalí jednu chybu. V opakovacím kódu můžeme počáteční informační část opakovat vícekrát. Kód {000, 111} ⊆ Z3 2 obsahuje pouze dva bloky, v každém z nich se první symbol opakuje třikrát. Je to příklad 3-opakovacího kódu. Jiným příkladem 3-opakovacího kódu je {000000, 010101, 101010, 111111} ⊆ Z6 2, ve kterém opakujeme třikrát vždy první dva informační symboly. Rychlost přenosu informace kterýmkoliv z těchto dvou kódů je 1/3. V každém bloku je pouze jedna třetina symbolů informačních, zbylé dvě třetiny jsou kontrolní. Každý 3-opakovací kód odhalí jednu chybu – změníme-li v libovolném bloku jeden symbol, dostaneme slovo, které do kódu nepatří. Oproti prostému opakovacímu kódu ale dokáže navíc lokalizovat (opravit) jednu chybu. Ukážeme si to na LINEÁRNÍ ALGEBRA 183 příkladu, kdy vyslaný blok 010101 přijme přijímající strana jako 010001. Graficky to znázorníme takto: 010101 −→ 010001. Rozdělíme-li libovolné slovo 3-opakovacího kódu na tři stejně dlouhé úseky, jsou tyto úseky stejné. Tak jsou kódová slova definována. Pokud tomu tak u přijatého slova není, došlo během přenosu informace k nějaké chybě. Pokud došlo k jedné chybě, dva z těchto úseků zůstanou stejné, třetí (ten, ve kterém se chyba vyskytla) se od nich liší. Předpokládáme, že vysláno bylo to kódové slovo, ve kterém se všechny tři úseky rovnají těm dvěma stejným přijatým. Je to jediná možnost, jak z přijatého slova dostat kódové slovo změnou jediného symbolu. V našem případě změníme čtvrtý přijatý symbol z 0 na 1 a dostaneme kódové slovo. Jakékoliv jiné kódové slovo dostaneme z přijatého pomocí změny aspoň dvou symbolů. Například tak, že obě přijaté 1 změníme na 0. Pokud předpokládáme, že pravděpodobnost změny symbolu vlivem šumu je p < 1/2, a tedy pravděpodobnost, že symbol byl přijatý správně (tj. tak jak byl vyslán) je 1 − p > 1/2 > p, pak v případě přijetí nekódového slova je nejpravděpodobnější, že bylo vysláno to slovo, které se od přijatého liší v co nejméně symbolech. 5.8.2. Hammingova vzdálenost. Pro teorii samoopravných kódů je následující definice klíčová. Definice 5.109. Jsou-li a = a1a2 · · · an a b = b1b2 · · · bn libovolné dva prvky Zn 2 , pak jejich Hammingova vzdálenost h(a, b) se rovná počtu indexů i ∈ {1, 2, . . . , n}, pro které platí ai = bi. Hammingova váha slova a ∈ Zn 2 je definována jako Hammingova vzdálenost h(a, o) slova a od nulového slova o. Hammingova vzdálenost je tak definována pro posloupnosti téže délky a rovná se počtu míst (indexů), na kterých se obě posloupnosti liší. Hammingova váha slova a se pak rovná počtu cifer 1 ve slově a. Pro Hammingovu vzdálenost zřejmě platí h(a, a) = 0 a h(a, b) = h(b, a) pro libovolná dvě slova a, b ∈ Zn 2 . Platí také trojúhelníková nerovnost h(a, c) ≤ h(a, b) + h(b, c) pro libovolná tři slova a, b, c ∈ Zn 2 . Snadno si to ověříte sami. Pokud totiž pro nějaký index i ∈ {1, 2, . . . , n} platí ai = ci, platí také ai = bi nebo bi = ci. Jestliže index i přispívá ke vzdálenosti h(a, c), přispívá také k aspoň jedné ze vzdáleností h(a, b) nebo h(b, c). Hammingovu vzdálenost si můžeme také představit pomocí délky (počtu hran) cest v nějakém neorientovaném grafu. Jeho vrcholy jsou prvky Zn 2 a dva vrcholy a, b jsou spojené hranou pokud se liší v právě jednom symbolu, tj. pokud je jejich Hammingova vzdálenost rovná 1. Pro n = 2 se tento graf rovná čtverci, pro n = 3 je jím třídimenzionální krychle. Hammingova vzdálenost libovolných dvou vrcholů a, b ∈ Zn 2 se pak rovná délce (tj. počtu hran) v nejkratší cestě z a do b. Proto se také někdy tomuto grafu říká Hammingova krychle i v případě libovolného n. Pro schopnost kódu odhalovat a lokalizovat chyby je důležitý pojem minimální vzdálenost kódu. Definice 5.110. Je-li C ⊆ Zn 2 binární blokový kód délky n, pak definujeme minimální vzdálenost kódu C jako číslo h(C) = min{h(a, b); a, b ∈ C, a = b}. 184 LIBOR BARTO A JIŘÍ TŮMA Příklad 5.111. • Minimální vzdálenost 3-opakovacího kódu {000, 111} se rovná 3. • Minimální vzdálenost opakovacího kódu {0000, 0101, 1010, 1111} se rovná 2. • Minimální vzdálenost kódu používaného v roce 1947 v reléovém počítači v Bellových laboratořích se rovná 2. • Minimální vzdálenost kódu C = Zn 2 se rovná 1. Nyní můžeme přesně formulovat, co myslíme tím, že nějaký kód C ⊆ Zn 2 odhalí jednu chybu. Pokud při přenosu slova a ∈ C dojde k jedné chybě, přijímající strana to pozná, přijme-li v takovém případě slovo, které není prvkem C. Znamená to, že žádné slovo b ∈ C, jehož Hammingova vzdálenost od a se rovná 1, není blokem kódu C. Jinak řečeno, Hammingova vzdálenost libovolných dvou různých kódových slov a, b ∈ C je aspoň 2, a to znamená, že minimální vzdálenost kódu C je aspoň 2. Každý kód C, jehož minimální vzdálenost je d > 1, odhalí až d − 1 chyb. Pokud při přenosu slova a ∈ C dojde k nejvýše d − 1 chybám, přijímající strana přijme slovo c, jehož Hammingova vzdálenost od vyslaného slova a je nejvýše d − 1. Slovo c tak nepatří do kódu C, a přijímající strana proto odhalí, že při přenosu došlo k nějakým chybám. Počet chyb ale jednoznačně nezjistí stejně jako kde k nim došlo. Předpokládejme nyní, že minimální vzdálenost nějakého kódu C ⊆ Zn 2 se rovná 3. Pokud při přenosu slova a dojde k jedné chybě, přijímající strana přijme slovo c, které má od slova a Hammingovu vzdálenost h(c, a) = 1. Vzdálenost přijatého slova c od jakéhokoliv jiného slova b ∈ C je v důsledku trojúhelníkové nerovnosti h(c, b) ≥ h(a, b) − h(a, c) ≥ 3 − 1 = 2, použili jsme navíc skutečnost, že minimální vzdálenost kódu C je 3, a tedy h(a, b) ≥ 3 pro jakékoliv dva různé bloky a, b ∈ C. Vyslané slovo a je tedy ze všech možných vyslaných slov b ∈ C nejblíže (vzhledem k Hammingově vzdálenosti) k přijatému slovu c. Předpokládáme, že pravděpodobnost poškození přenášeného symbolu šumem v kanálu je p < 1/2 a tedy menší než pravděpodobnost 1 − p že k poškození symbolu nedošlo. V případě přijetí slova c je nejpravděpodobnější, že bylo vysláno slovo a ∈ C, které je ze všech slov kódu C nejblíže k přijatému slovu c. V tomto smyslu tedy kód s minimální vzdáleností 3 dokáže opravit (lokalizovat) jednu chybu. Zcela analogicky lze odůvodnit, že kód s minimální vzdáleností 2d + 1 dokáže opravit d chyb. Schopnost kódu odhalovat a opravovat daný počet chyb je tak dána jeho minimální vzdáleností. 5.8.3. Paritní kód, lineární kódy. Nejjednodušší příklad kódu, který je schopen odhalit jednu chybu, je paritní kód. Definice 5.112. Paritní kód délky n je podmnožina S ⊆ Zn 2 tvořená všemi slovy, které obsahují sudý počet jednotek. Minimální vzdálenost paritního kódu S je 2, paritní kód tedy dokáže odhalit jednu chybu. Známe-li a1a2 · · · an−1, existuje právě jedno an ∈ {0, 1} takové, že slovo a = a1a2 · · · an−1an ∈ S. Prvních n − 1 symbolů ve slově a tak můžeme považovat za informační symboly, zatímco poslední symbol an je kontrolní. Nenese žádnou dodatečnou informaci, lze jej doplnit na základě znalosti a1a2 · · · an−1. LINEÁRNÍ ALGEBRA 185 Proto se kontrolnímu bitu říká také paritní bit nebo paritní kontrola. Samozřejmě můžeme za kontrolní bit považovat kterýkoliv symbol ve slově a a zbylé symboly za informační. Obvyklé ale bývá seřadit symboly v kódovém slově tak, že informační symboly jsou na začátku a kontrolní symboly následují po nich. Rychlost přenosu informace paritním kódem je tak n − 1/n. Kódy, které dokážou nejen odhalit, ale i opravit chyby se konstruují kombinací více paritních kontrol. Paritní kód S délky n má jednu důležitou vlastnost. Tvoří nejenom podmnožinu Zn 2 , ale dokonce podprostor. Obsahuje totiž nulové slovo o, je proto uzavřený na násobení skaláry ze Z2 a zřejmě také na sčítání. Takové kódy jsou důležité a zaslouží si zvláštní pojmenování. Definice 5.113. Binární blokový kód C ⊆ Zn 2 délky n se nazývá lineární kód, je-li C podprostor Zn 2 . Je-li dimenze C rovna r, říkáme také, že jde o lineární (n, r)-kód. Minimální vzdálenost lineárních kódů lze zjistit snáze než u obecných kódů. Tvrzení 5.114. Minimální vzdálenost lineárního kódu C se rovná min{h(a, o); a ∈ C, a = o}, tj. rovná se minimální Hammingově váze nenulových prvků C. Důkaz. Připomeňme si, že minimální vzdálenost kódu C označujeme h(C). Je-li C lineární kód, platí o ∈ C a h(a, o) ≥ h(C) pro libovolné nenulové slovo a ∈ C. Dále platí pro libovolná dvě slova a, b ∈ C, že h(a, b) = h(a + b, o). Je-li tedy h(C) = h(a, b), platí, že h(C) se rovná Hammingové váze vektoru a + b. Je-li C lineární (n, r)-kód, má prostor C dimenzi r. Zvolíme-li v něm nějakou bázi a1, . . . , ar, je každý prvek b kódu (podprostoru) C jenoznačně určen r-ticí jeho souřadnic vzhledem ke zvolené bázi. K jeho jednoznačnému určení nám tedy stačí posloupnost koeficientů lineární kombinace, která vyjadřuje b pomocí prvků zvolené báze. Naopak, každá posloupnost r nul a jednotek určuje jednoznačně nějaký prvek kódu C. To jenom jinak vyjadřujeme skutečnost, že C je izomorfní aritmetickému prostoru Zr 2. K předání informace o bloku b nám tedy stačí předat r koeficientů vyjádřujících b jako lineární kombinaci báze a1, . . . , ar. Kód C ale předává celý vektor b délky n. Intuitivně tak můžeme říct, že rychlost přenosu informace lineárním (n, r)-kódem je r/n. 5.8.4. Hammingovy kódy. Hamming předložil tři konstrukce kódů, které opravují jednu chybu. Všechny tři jsou založené na kombinaci několika paritních testů. Všechny tři návrhy jsou lineární kódy. Jejich konstrukci si ukážeme na příkladu, který má čtyři informační symboly. Protože kódy mají opravovat jednu chybu, musí být jejich minimální vzdálenost 3. Příklad 5.115. V první konstrukci si čtyři informační symboly a, b, c, d napíšeme do prvních dvou řádků a prvních dvou sloupců čtvercové matice řádu 3.   a b ? c d ? ? ? ?   186 LIBOR BARTO A JIŘÍ TŮMA Místo otazníků doplníme další prvky tak, aby v každém řádku a každém sloupci byl sudý počet jednotek. Doplněná matice je   a b r1 c d r2 s1 s2 t   , kde r1 = a + b, r2 = c + d, s1 = a + c, s2 = b + d, t = s1 + s2 = a + b + c + d = r1 + r2. Celé kódové slovo je potom abr1cdr2s1s2t. Informační symboly jsou na prvním, druhém, čtvrtém a pátém místě, zbylé symboly jsou kontrolní. Kód C je tvořen všemi slovy a = a1a2 · · · a9 ∈ Z9 2, pro která platí a3 = a1 + a2 a6 = a4 + a5, a7 = a1 + a4, a8 = a2 + a5, a9 = a1 + a2 + a4 + a5. Prvky a1, a2, a4, a5 můžeme zvolit libovolně a právě uvedené rovnosti ukazují, že matice   a1 a2 a3 a4 a5 a6 a7 a8 a9   splňuje všechny požadované paritní testy, tj. každý řádek a každý sloupec obsahuje sudý počet jednotek. Z kostrukce kódu také snadno nahlédneme, že kód C opravuje jednu chybu. Pokud totiž při přenosu slova a = a1a2 · · · a9 ∈ C dojde k jedné chybě, přijaté slovo nebude splňovat dva paritní testy, jeden pro řádek a druhý pro sloupec, ve kterých leží chybně přijatý symbol. Tyto dva neplatné paritní testy tak přesně určují polohu poškozeného symbolu. Kód C je lineární, protože jeho prvky jsou právě všechna řešení x1x2 · · · x9 homogenní soustavy lineárních rovnic s maticí A =       1 1 1 0 0 0 0 0 0 0 0 0 1 1 1 0 0 0 1 0 0 1 0 0 1 0 0 0 1 0 0 1 0 0 1 0 1 1 0 1 1 0 0 0 1       Třetí sloupec spolu s posledními čtyřmi sloupci jsou lineárně nezávislé, hodnost matice A je tedy aspoň 5, řádky matice A jsou tedy lineárně nezávislé, rank(A) = 5, dimenze Ker (A) je tudíž podle věty o dimenzi jádra a obrazu rovna 9 − 5 = 4 a počet prvků kódu C je 16. Přijímající strana tak snadno ověří, patří-li přijaté slovo c = c1c2 · · · c9 do kódu C. Stačí ověřit rovnost AcT = oT . Poslední pozorování vede k následující důležité definici. Definice 5.116. Je-li C lineární (n, r)-kód a pro matici A typu (n − r) × n platí, že C = Ker A, pak matici A nazýváme kontrolní matice kódu C. LINEÁRNÍ ALGEBRA 187 Z definice kontrolní matice a z věty o dimenzi jádra a obrazu matice plyne, že rank(A) = dim(Im (A)) = n − r, tj. že posloupnost řádků matice A je lineárně nezávislá. Později si ukážeme obecné tvrzení, ze kterého plyne existence kontrolní matice pro jakýkoliv lineární kód. Ve skutečnosti jsou lineární kódy zadávány tak, že napíšeme jejich kontrolní matici. Pomocí kontrolní matice můžeme snadno zjistit, jaká je minimální vzdálenost lineárního kódu. Tvrzení 5.117. Nechť C je (n, r)-lineární kód a A jeho kontrolní matice. Minimální vzdálenost kódu C se rovná d právě když libovolná (d−1)-prvková podposloupnost sloupců matice A je lineárně nezávislá a existuje d-prvková podposloupnost sloupců A, která je lineárně závislá. Důkaz. Kontrolní matice A = (a1| . . . |an) kódu C je typu (n − r) × n. Nechť x = x1x2 · · · xn je nenulový prvek kódu C. Pak platí AxT = oT , neboli x1a1 + x2a2 + · · · xnan = oT . Je-li l Hammingova váha prvku x a xj1 , xj2 , . . . , xjl jsou všechny nenulové složky vektoru x, pak platí rovněž xj1 aj1 + xj2 aj2 + · · · xjl ajl = oT , l-prvková podposloupnost sloupcových vektorů aj1 , . . . , ajl je tedy lineárně závislá. Jestliže naopak existuje lineárně závislá podposloupnost ai1 , ai2 , . . . , aim sloupcových vektorů matice A, existují prvky xij ∈ Z2, ne všechny nulové, takové, že xi1 ai1 + xi2 ai2 + · · · + xim aim = oT . Doplníme tuto lineární kombinaci zbývajícími sloupcovými vektory matice A s koeficienty xi = 0. Vektor x = x1 · · · xn pak splňuje AxT = oT , je tedy blokem kódu C a jeho Hammingova váha je nejvýše m. Je-li tedy minimální vzdálenost kódu C rovna d, je podle Tvrzení 5.114 minimální Hammingova váha nenulových vektorů v C rovna d. Každá podposloupnost d − 1 sloupcových vektorů matice A je tedy lineárně nezávislá a existuje podposloupnost d sloupcových vektorů matice A, která je lineárně závislá. Jestliže naopak je každá podposloupnost d − 1 sloupcových vektorů matice A lineárně nezávislá, neobsahuje C nenulový vektor, který by měl Hammingovu váhu menší nebo rovnou d − 1. Pokud je navíc nějaká d-prvková podposloupnost sloupcových vektorů A lineárně závislá, existuje v C = Ker A nenulový vektor, jehož Hammingova váha je nejvýše d. Minimální Hammingova váha nenulových vektorů v C je tedy rovna d. Příklad 5.118. Kontrolní matice A kódu C z Příkladu 5.115 neobsahuje nulový sloupcový vektor, každá jednoprvková podposloupnost sloupcových vektorů matice A je tedy lineárně nezávislá. Libovolné dva sloupcové vektory matice A jsou různé, lineárně nezávislá je proto rovněž každá dvouprvková podposloupnost sloupcových vektorů v A. Platí dokonce, že žádný ze sloupcových vektorů se nerovná součtu jiných dvou sloupcových vektorů, a tak každá tříprvková podposloupnost sloupců matice A je lineárně nezávislá. Naproti tomu první sloupcový vektor se rovná součtu jiných tří sloupcových vektorů, existuje tedy čtyřprvková lineárně závislá podposloupnost sloupcových vektorů matice A. Minimální vzdálenost kódu C je tedy 4. 188 LIBOR BARTO A JIŘÍ TŮMA Kód C tak opraví jednu chybu a odhalí až tři chyby. Rychlost přenosu informace tímto kódem je 4/9, což je zlepšení oproti 3-opakovacímu kódu, který také dokáže opravit jednu chybu. Příklad 5.119. Druhý kód, který Hamming navrhnul, se od toho prvního liší v tom, že nepoužívá paritní kontrolu třetího řádku a třetího sloupce, tj. nepotřebuje prvek t. Matici   a b ? c d ? ? ? ?   doplní na matici   a b r1 c d r2 s1 s2   , kde r1 = a + b, r2 = c + d, s1 = a + c, s2 = b + d. Jde opět o lineární kód, označme jej D. Kontrolní matici tohoto kódu dostaneme tak, že z kontrolní matice původního kódu vynecháme poslední řádek a poslední sloupec. Dostaneme tak matici B =     1 1 1 0 0 0 0 0 0 0 0 1 1 1 0 0 1 0 0 1 0 0 1 0 0 1 0 0 1 0 0 1     . Libovolná dvouprvková podposloupnost sloupců matice B je lineárně nezávislá ze stejného důvodu, jako v případě prvního Hammingova návrhu. Existují lineárně závislé tříprvkové podposloupnosti sloupců v B. Minimální vzdálenost kódu D je tak rovna 3, kód dokáže opravit jednu chybu a odhalit až dvě chyby. Rychlost přenosu informace kódem D je 1/2, což je další vylepšení. Může kód se čtyřmi informačními symboly opravovat jednu chybu a současně přenášet informaci rychlostí větší než 1/2? Ukážeme si tvrzení, které ukazuje, že by to mohlo jít ještě o něco rychleji. Tvrzení 5.120. Předpokládejme, že kód délky n má r informačních symbolů a n−r kontrolních symbolů. Pokud opravuje jednu chybu, musí platit 2n n + 1 ≥ 2r . Důkaz. Kód C délky n, který má r informačních symbolů, musí obsahovat aspoň 2r různých slov. Každá volba informačních symbolů musí vést k nějakému kódovému slovu, různé volby k různým slovům. Jinak by dekódování nebylo jednoznačné. Využijeme geometrické představy kódu jako podmnožiny vrcholů Hammingovy krychle. Pro každý vektor a ∈ Zn 2 nazveme 1-okolí slova a množinu V1(a) = {x ∈ Zn 2 ; h(a, x) ≤ 1}. Snadno nahlédneme, že 1-okolí každého vektoru a obsahuje přesně n + 1 prvků. Má-li kód C opravovat jednu chybu, musí být jeho minimální vzdálenost aspoň 3. To znamená, že pro libovolná dvě různá kódová slova a, b ∈ C musí být jejich 1okolí disjunktní. V opačném případě by totiž v důsledku trojúhelníkové nerovnosti LINEÁRNÍ ALGEBRA 189 pro Hammingovu vzdálenost platilo h(a, b) ≤ 2, což je spor s tím, že minimální vzdálenost kódu je aspoň 3. Sjednotíme-li všechna 1-okolí všech slov a ∈ C, bude mít toto sjednocení aspoň 2r (n+1) prvků. Tento počet musí být menší nebo rovný počtu všech prvků (vrcholů Hammingovy krychle) Zn 2 , tj. 2n . Odtud po snadné úpravě vyplývá dokazovaná nerovnost. Analogickou nerovnost můžeme dokázat pro kódy, které opravují d chyb, podrobnosti ve cvičeních. Pro r = 4 a n = 6 platí 24 · 7 > 26 , kód délky 6 se čtyřmi informačními symboly, který by opravoval jednu chybu proto neexistuje. V případě n = 7 platí rovnost 24 · 8 = 27 , existence kódu délky 7 se čtyřmi informačními symboly, který opravuje jednu chybu, tak vyloučena není. Všimněme si, že pokud by takový kód C ⊆ Z7 2 existoval, platila by rovnost Z7 2 = a∈C V1(a). To znamená, že pro takový kód by každý vrchol Hammingovy krychle Z7 2 měl vzdálenost 1 od nějakého (jednoznačně určeného) kódového slova a. Všechny vrcholy Hammingovy krychle Z7 2 by tak byly pokryté 1-okolími kódových slov. Takový kód by byl optimální v tom smyslu, že množina Z7 2 by neobsahovala žádná ”zbytečná”slova, každé ze slov délky 7 by se vyskytovalo ve vzdálenosti nejvýše 1 od nějakého kódového slova. Definice 5.121. Kód délky n, který má r informačních symbolů a opravuje jednu chybu, se nazývá perfektní kód, pokud platí rovnost 2r (n + 1) = 2n . Jako poslední příklad kódu si ukážeme perfektní lineární (7, 4)-kód, který opravuje jednu chybu. Příklad 5.122. Kód H3 definujeme pomocí kontrolní matice A =   1 0 0 1 1 0 1 0 1 0 1 0 1 1 0 0 1 0 1 1 1   . Prvky C jsou prvky jádra Ker (A) matice A. Tato matice je v řádkově odstupňovaném tvaru, její hodnost se tedy rovná 3, a dimenze kódu H3 = Ker (A) je tedy rovna 4. Platí-li AxT = oT pro x = x1x2 · · · x7, jsou neznámé x4, x5, x6, x7 volné, můžeme je zvolit libovolně a považujeme je za informační symboly. Neznámé x1, x2, x3 jsou volbou x4, x5, x6, x7 určené jednoznačně: x1 = x4 + x5 + x7, x2 = x4 + x6 + x7, x3 = x5 + x6 + x7. Neznámé x1, x2, x3 jsou tedy kontrolní (paritní) bity. I tento kód H3 je založen na kombinací tří paritních kontrol. Sloupce matice A tvoří všechny nenulové vektory z prostoru Z3 2 . Každá dvouprvková podposloupnost sloupců matice A je tedy lineárně nezávislá a minimální vzdálenost kódu C je tak aspoň 3, (ve skutečnosti je právě 3), a kód H3 tak opravuje jednu chybu. 190 LIBOR BARTO A JIŘÍ TŮMA Jak najdeme kódové slovo x1x2 · · · x7, jsou-li dány informační symboly x4, x5, x6, x7, jsme si už řekli. Pokud přijímající strana přijme slovo y = y1y2 · · · y7, spočítá součin AyT . Platí-li AyT = oT , je y kódové slovo a bylo tedy přeneseno bez chyby. Je-li AyT = oT , došlo během přenosu k chybě a zbývá určit, který symbol v přijatém slově y = y1y2 · · · y7 je ten poškozený. Označme AyT = (s1s2s3)T . Protože matice A obsahuje všechny nenulové vektory Z3 2 jako sloupce, existuje jednoznačně určený sloupec aj = (s1s2s3)T . Platí aj = AeT j pro j-tý vektor ej standardní báze v Z7 2. Slovo y + ej se od y liší pouze v j-tém symbolu. Platí navíc A(yT + eT j ) = AyT + AeT j = (s1s2s3)T + aj = (s1s2s3)T + (s1s2s3)T = oT . Slovo y + ej tak patří do kódu H3 a má Hammingovu vzdálenost 1 od přijatého slova y. Je to tedy to slovo, které bylo vysláno a při přenosu byl poškozen j-tý symbol. Příklad 5.123. Při použití Hammingova kódu H3 bylo přijato slovo 1010101. Došlo během přenosu k chybě a pokud ano, jaké slovo bylo vysláno? Vynásobíme kontrolní matici A vektorem (1010101)T . Dostaneme   1 0 0 1 1 0 1 0 1 0 1 0 1 1 0 0 1 0 1 1 1             1 0 1 0 1 0 1           =   0 1 1   . Vektor (0, 1, 1)T je šestý sloupcový vektor matice A3, poškozen byl tedy šestý symbol ve slově 1010101, vysláno bylo slovo 1010111. Definice 5.124. Hammingův kód Hr je binární blokový kód délky n = 2r − 1 určený kontrolní maticí typu r ×n, jejíž sloupce tvoří všechny nenulové aritmetické vektory dimenze r nad Z2. Detaily důkazu následujícího tvrzení přenecháme do cvičení. Tvrzení 5.125. Hammingův kód Hr je perfektní lineární kód délky 2r −1 a dimenze 2r − r − 1, jehož minimální vzdálenost je 3. Cvičení 1. Vysvětlete, proč množina všech polynomů stupně právě 173 s reálnými koeficienty s běžnými operacemi sčítání polynomů a násobení polynomu reálným číslem není vektorovým prostorem. 2. Pro libovolné těleso T a libovolnou množinu X definujeme vektorový prostor T(X) jako množinu těch zobrazení f z X do T, pro který je množina {x : f(x) = 0} je konečná. Sčítání a násobení definujeme po souřadnicích, tj. (f + g)(x) = f(x) + g(x) a (af)(x) = af(x). Dokažte, že T(X) je vektorový prostor. Tímto způsobem bychom zobecnili definici 5.2 na případ nekonečné dimenze – prostor T(X) může být nazýván aritmetickým vektorovým prostorem nad T dimenze |X|. 3. U všech příkladů vektorových prostorů za definicí ověřte, že se skutečně jedná o vektorové prostory. 4. Množina všech podmnožin množiny {1, 2, 3, . . . , n} (nebo jiné dané množiny X) spolu s operací symetrické diference, tj. A + B = (A \ B) ∪ (B \ A), je vektorový prostor nad LINEÁRNÍ ALGEBRA 191 Z2. (Násobení skalárem je jednoznačně dané axiomy. ) Dokažte a vysvětlete, proč je tento prostor „v podstatě Zn 2 . 5. Dokažte tvrzení 5.10 a formulujte a dokažte obdoby vlastností (8) a (9) z tvrzení 3.3. 6. Dokažte, že T jako vektorový prostor nad T má pouze triviální podprostory. 7. Dokažte, že jedinými netriviálními podprostory prostoru T2 jsou množinu tvaru {tx : t ∈ T}, kde o = x ∈ T2 . 8. Zjistěte lineární obal množiny X z příkladu 5.27 a dokažte, že množina Y tvoří pod- prostor. 9. Dokažte, že posloupnost vektorů (v1, . . . , vk) ve vektorovém prostoru V nad T je lineárně nezávislá právě tehdy, když žádný z vektorů není v lineárním obalu předchozích (tj. pro každé i platí vi ∈ LO {v1, v2, . . . , vi−1}). 10. Dokažte, že sloupce matice v řádkově odstupňovaném tvaru jsou lineárně nezávislé právě tehdy, když příslušná homogenní soustava nemá žádné volné proměnné. 11. Dokončete příklad 5.54 o Fibonacciho posloupnostech. 12. Dokažte, že sloupce (řádky) čtvercové matice A nad T řádu n tvoří bázi Tn právě tehdy, když A je regulární. 13. Dokažte: • Dimenze prostoru všech matic nad T typu m × n je mn. • Dimenze prostoru reálných polynomů stupně nejvýše n je n. • Dimenze prostoru C jako vektorového prostoru nad R je 2. 14. Najděte bázi podprostoru Rω tvořeného posloupnostmi (a1, a2, . . . ), pro které platí an = 2an−1 − an−2 (pro každé n ≥ 3). Pomocí nalezené báze najděte vzorec pro výpočet an, když a1 = 3, a2 = 7. 15. Dokažte, že z každé množiny generátorů konečně generovaného prostoru lze vybrat bázi. 16. Dokažte, že důsledek 5.64 platí bez předpokladu konečnosti G. Předpoklad tedy změníme na „G je množina generátorů konečně generovaného prostoru V . 17. Spočítejte počet všech různých bází V vybraných z vektorů v1, . . . , v5 z příkladu 5.66. 18. Dokažte druhou část tvrzení 5.75. 19. Dokažte, že bázové sloupce tvoří bázi sloupcového prostoru matice. 20. Přímo z definice bázových sloupců dokažte, že řešení x = (x1, x2, . . . , xn) ∈ Tn soustavy Ax = b je jednoznačně určeno vektorem (xi1 , xi2 , . . . , xik ) ∈ Tk , kde i1, i2, . . . , ik je seznam nebázových sloupců matice A, a naopak, že každý vektor (xi1 , xi2 , . . . , xik ) v Tk vzniká z nějakého řešení (x1, x2, . . . , xn). 21. Jednoznacnost redukovaneho tvaru 22. Dokažte, že pro libovolné tři podprostory V1, V2, V3 prostoru V platí (V1 + V2) + V3 = V1 + (V2 + V3) . 23. Dokažte, že V1 + V2 + · · · + Vk = {v1 + v2 + · · · + vk : v1 ∈ V1, v2 ∈ V2, . . . , vk ∈ Vk} . 24. Nechť Vi, i ∈ I jsou podprostory vektorového prostoru W a Gi je množina generátorů prostoru Vi pro každé i ∈ I. Dokažte, že i∈I Gi generuje i∈I Vi. 25. Najděte podprostory U, V, W prostoru R3 takové, že U∩(V +W) = (U∩V)+(U∩ W), U + (V ∩ W) = (U + V) ∩ (U + W). 26. Jedna inkluze v obou (neplatných) distributivních zákonech vždy platí. Zjistěte které a dokažte. 192 LIBOR BARTO A JIŘÍ TŮMA 27. Dokažte, že rovnosti v distributivních zákonech platí za předpokladu U ≤ W nebo W ≤ U. 28. Rozhodněte, zda pro podprostory U, V, W vektorového prostoru Z platí dim(U) + dim(V) + dim(W) = dim(U + V + W) + dim(U ∩ V) + dim(V ∩ W)+ + dim(U ∩ W) − dim(U ∩ V ∩ W) 29. Jakou dimenzi může mít průnik podprostoru dimenze 3 a podprostoru dimenze 4 v Z6 37? Pro každou z možností uveďte příklad. 30. Při komunikaci byl použit Hammingův kód H3. Přijímající strana přijala slova 0101011, 0011111, 1011100, 1111110, 011111, 0001110, 1100101. Rozhodněte, která z nich byla během přenosu poškozena a u každého z poškozených slov rozhodněte, který ze symbolů byl přenesen nesprávně a jaké slovo bylo vysláno. 31. Dokažte Tvrzení 5.125. 32. Definujeme d-okolí slova a ∈ Zn 2 jako množinu Vd(a) = {x ∈ Zn 2 ; h(x, a) ≤ d}. Dokažte, že počet prvků Vd(a) se rovná n 0 + n 1 + · · · + n d = d i=1 n i . 33. Dokažte, že je-li C kód dimenze n s r informačními symboly, který opravuje d chyb, pak platí nerovnost 2r ( n 0 + n 1 + · · · n d ) ≤ 2n . 34. Hamming svůj lineární (7, 4)-kód D definoval pomocí kontrolní matice B =   1 0 1 0 1 0 1 0 1 1 0 0 1 1 0 0 0 1 1 1 1   Pokud bylo přijaté slovo y a ByT = (s1s2s3)T = oT , dokažte že s3s2s1 je binární vyjádření indexu poškozeného symbolu. 35. Dokažte, že existuje permutace π na množině {1, 2, . . . , 7} taková, že platí a1a2 · · · a7 ∈ H3 právě když aπ(1)aπ(2) · · · aπ(7) ∈ D, kde D je kód z předchozího cvičení. Jak souvisí permutace π s permutací sloupců, pomocí které dostaneme z kontrolní matice A kódu H3 kontrolní matici B kódu D. LINEÁRNÍ ALGEBRA 193 Shrnutí páté kapitoly (1) Je-li T těleso, pak vektorovým prostorem V nad tělesem T rozumíme množinu V spolu s binární operací + na V (tj. + je zobrazení z V × V do V ) a operací · násobení prvků množiny V prvky tělesa T (tj. · je zobrazení z T × V do V ), které splňují následující axiomy. (vS1) Pro libovolné u, v, w ∈ V platí (u + v) + w = u + (v + w). (vS2) Existuje o ∈ V takový, že pro libovolné v ∈ V platí v + o = v. (vS3) Pro každé v ∈ V existuje −v ∈ V takové, že v + (−v) = o. (vS4) Pro libovolné u, v ∈ V platí u + v = v + u. (vN1) Pro libovolné v ∈ V a a, b ∈ T platí a · (b · v) = (a · b) · v. (vN2) Pro libovolné v ∈ V platí 1 · v = v. (vD1) Pro libovolné v ∈ V a a, b ∈ T platí (a + b) · v = a · v + b · v. (vD2) Pro libovolné u, v ∈ V a a ∈ T platí a · (u + v) = a · u + a · v. (2) Pro libovolné těleso T a přirozené číslo n aritmetický vektorový prostor dimenze n nad T je množina všech n-složkových aritmetických (sloupcových) vektorů Tn spolu s přirozenými operacemi + a · (definovanými jako v definici 2.3), označujeme jej Tn . (3) Další příklady vektorových prostorů: prostory polynomů s reálnými koeficienty, prostor Tm×n matic typu m × n nad tělesem T, prostor R∞ všech posloupností reálných čísel, prostor R(∞) posloupností reálných čísel s konečně mnoha nenulovými prvky, prostor všech konvergentních posloupností reálných čísel, prostor všech posloupností reálných čísel konvergujících k 0, prostory reálných funkcí reálné proměnné, atd. Všechny s přirozenými operacemi sčítání a násobení skalárem. (4) V každém vektorovém prostoru V nad tělesem T platí (a) nulový prvek o je určený jednoznačně, (b) rovnice u+x = v má pro pevná u, v ∈ V právě jedno řešení, speciálně, opačný prvek −v je vektorem v určen jednoznačně, (c) 0v = o pro libovolný prvek v ∈ V , (d) ao = o pro libovolný skalár a ∈ T, (e) je-li av = o, pak buď a = 0 nebo v = o, (f) −v = (−1)v pro libovolný prvek v ∈ V , speciálně −(−v) = v. (5) Je-li V vektorový prostor nad T, pak vektorový prostor U nad tělesem T je podprostorem V, pokud U ⊆ V a operace + a · v U se shodují s příslušnými operacemi ve V. Skutečnost, že U je podprostorem V, zapisujeme U ≤ V. (6) Je-li V vektorový prostor nad tělesem T, pak neprázdná podmnožina U množiny V je podprostorem V právě tehdy, když současně • („uzavřenost na sčítání ) pro libovolné u, v ∈ U platí u + v ∈ U, • („uzavřenost na násobení skalárem ) pro libovolné v ∈ U a a ∈ T platí av ∈ U. (7) Geometrický význam podprostorů R2 a R3 . (8) Pro libovolnou matici A typu m × n nad T platí, že Ker A je podprostor Tn , neboli Ker A ≤ Tn . (9) Jsou-li v1, v2, . . . , vk prvky vektorového prostoru V nad T a t1, t2, . . . , tk ∈ T skaláry, tj. prvky tělesa T, pak prvek t1v1 + t2v2 + · · · + tkvk 194 LIBOR BARTO A JIŘÍ TŮMA se nazývá lineární kombinace prvků v1, v2, . . . , vk ∈ V. Skaláry t1, t2, . . . , tk nazýváme koeficienty lineární kombinace. Lineární kombinaci prázdného systému vektorů definujeme jako nulový vektor. (10) Nechť V je vektorový prostor nad T a X ⊆ V . Pak lineárním obalem množiny X rozumíme množinu LO X všech lineárních kombinací prvků X, tj. množinu LO X = {t1v1 + t2v2 + · · · + tkvk : k ∈ N0, v1, . . . , vk ∈ X, t1, . . . , tk ∈ T} (11) Pro libovolný vektorový prostor V nad T a libovolnou X ⊆ V je LO X podprostorem V. (12) Je-li V vektorový prostor nad T a X ⊆ U ≤ V, pak LO X ⊆ U. Lineární obal LO X je proto nejmenší podprostor V obsahující množinu X. (13) Jsou-li X, Y dvě podmnožiny vektorového prostoru V nad T, pak platí LO X ⊆ LO Y právě když pro každé x ∈ X platí x ∈ LO Y . (14) Je-li V vektorový prostor nad T a X ⊆ V . Pokud LO X = V , pak říkáme, že X je množina generátorů prostoru V, nebo také že X generuje V. (15) Je-li (v1, . . . , vl) konečná posloupnost prvků vektorového prostoru V nad tělesem T, pak LO {v1, . . . , vl} = {t1v1 + · · · + tlvl : t1, . . . , tl ∈ T} . (16) Je-li A matice typu m × n nad T, pak sloupcovým prostorem matice A rozumíme podprostor Tm generovaný množinou sloupcových vektorů matice A a značíme jej Im A. Im A = LO {a1, a2, . . . , an} ≤ Tm Řádkovým prostorem matice A rozumíme sloupcový prostor matice AT , tj. Im AT = LO {˜a1, ˜a2, . . . , ˜am} ≤ Tn (17) Nechť A = (a1| . . . |an) je matice typu m×n nad T a R je regulární matice řádu m. Pak Im (RA) = LO {Ra1, . . . , Ran} , Ker A = Ker (RA), Im AT = Im (RA)T . (18) Elementární řádkové úpravy nemění Ker A a Im AT . Elementární sloupcové úpravy nemění Ker AT a Im A. (19) Nechť V je vektorový prostor nad tělesem T. Posloupnost prvků (v1, v2, . . . , vk) prostoru V se nazývá lineárně závislá, pokud některý z prvků vi je lineární kombinací zbývajících prvků v1, v2, . . . , vi−1, vi+1, . . . , vk. V opačném případě říkáme, že posloupnost (v1, v2, . . . , vk) je lineárně nezávislá. (20) Nechť (v1, . . . , vk) je posloupnost prvků vektorového prostoru V nad tělesem T. Následující tvrzení jsou ekvivalentní. (a) Posloupnost (v1, . . . , vk) je lineárně nezávislá. (b) Žádný z prvků vi (1 ≤ i ≤ k) nelze vyjádřit jako lineární kombinaci předchozích prvků v1, . . . , vi−1. (c) Nulový prvek o lze vyjádřit jako lineární kombinaci prvků v1, v2, . . . , vk pouze triviálním způsobem o = 0v1 + 0v2 + · · · + 0vk. Jinými slovy, pro libovolné a1, a2, . . . , ak ∈ T platí, že z rovnosti a1v1 + a2v2 + · · · + akvk = o , LINEÁRNÍ ALGEBRA 195 plyne a1 = a2 = · · · = ak = 0. (d) Každý prvek b ∈ V lze vyjádřit jako lineární kombinaci prvků v1, v2, . . . , vk nejvýše jedním způsobem. (21) Posloupnost sloupcových vektorů matice A = (a1|a2| · · · |an) typu m × n nad tělesem T tvoří lineárně nezávislou posloupnost v Tm právě tehdy, když Ker A = {o}, tj. právě když má soustava Ax = o pouze triviální řešení x = o. (22) Nechť A = (a1|a2| · · · |an) je matice typu m×n nad tělesem T, R je regulární matice řádu m a Q je regulární matice řádu n. Pak platí (a) posloupnost (a1, a2, . . . , an) sloupcových vektorů matice A je lineárně nezávislá právě tehdy, když je lineárně nezávislá posloupnost sloupcových vektorů matice AQ, (b) posloupnost (a1, a2, . . . , an) sloupcových vektorů matice A je lineárně nezávislá právě tehdy, když je lineárně nezávislá posloupnost sloupcových vektorů matice RA. (23) Elementární řádkové úpravy nemění lineární (ne)závislost posloupnosti sloupcových vektorů ani posloupnosti řádkových vektorů matice. Elementární sloupcové úpravy nemění lineární (ne)závislost posloupnosti sloupcových vektorů ani posloupnosti řádkových vektorů matice. (24) Posloupnost řádkových vektorů matice v odstupňovaném tvaru je lineárně nezávislá právě tehdy, když matice neobsahuje nulový řádek. (25) Posloupnost (v1, v2, . . . , vn) prvků vektorového prostoru V nad T se nazývá báze, pokud je lineárně nezávislá a LO {v1, v2, . . . , vn} = V. (26) Posloupnost prvků (v1, v2, . . . , vn) tvoří bázi vektorového prostoru V právě tehdy, když lze každý prvek b ∈ V vyjádřit právě jedním způsobem jako lineární kombinaci prvků v1, v2, . . . , vn. (27) Kanonická báze (též standardní báze) v aritmetickém prostoru Tn je po- sloupnost (e1, e2, . . . , en) =               1 0 0 ... 0        ,        0 1 0 ... 0        , . . . ,        0 0 ... 0 1               . (28) Odvození formule pro n-tý člen Fibonacciho posloupnosti. (29) Vektorový prostor se nazývá konečně generovaný, pokud má nějakou konečnou množinu generátorů. (30) Minimální posloupnost generátorů (v1, v2, . . . , vn) vektorového prostoru V je báze V. (31) Z každé konečné množiny generátorů vektorového prostoru lze vybrat bázi. (32) Každý konečně generovaný vektorový prostor má bázi. (33) Steinitzova věta o výměně. Nechť N = (v1, v2, . . . , vk) je lineárně nezávislá posloupnost prvků vektorového prostoru V nad T a nechť G = (w1, w2, . . . , wl) generuje V. Pak k ≤ l a při vhodném uspořádání G = (w1, w2, . . . , wl) posloupnosti G platí, že (v1, v2, . . . , vk, wk+1, wk+2, . . . , wl) generuje V. (34) Každé dvě báze konečně generovaného vektorového prostoru mají stejný počet prvků. 196 LIBOR BARTO A JIŘÍ TŮMA (35) Dimenzí konečně generovaného vektorového prostoru V nad T rozumíme počet prvků jeho libovolné báze. Dimenzi prostoru V značíme dim(V ). (36) Nechť G je konečná množina generátorů vektorového prostoru V. Potom každou lineárně nezávislou posloupnost ve V jde doplnit prvky G na bázi V. (37) Maximální lineárně nezávislá posloupnost v konečně generovaném prostoru je bází. Obecněji, maximální lineárně nezávislá posloupnost prvků konečné množiny generátorů je bází. (38) V každém vektorovém prostoru V dimenze n platí: (a) Každá množina generátorů V obsahuje alespoň n prvků. (b) Každá n-prvková posloupnost generátorů je bází V. (c) Každá lineárně nezávislá posloupnost ve V obsahuje nejvýše n prvků. (d) Každá n-prvková lineárně nezávislá posloupnost ve V je bází V. (39) Je-li W podprostor konečně generovaného prostoru V, pak W je konečně generovaný a platí dim(W) ≤ dim(V), přičemž rovnost nastane právě tehdy, když W = V . (40) Nechť B = (v1, v2, . . . , vn) je báze vektorového prostoru V nad tělesem T a w ∈ V. Souřadnicemi (též vyjádřením) prvku w vzhledem k B rozumíme (jednoznačně určený) aritmetický vektor (a1, a2, . . . , an)T ∈ Tn takový, že w = a1v1 + a2v2 + · · · + anvn . Souřadnice w vzhledem k B značíme [w]B, tj. [w]B =      a1 a2 ... an      . (41) Nechť B = (v1, v2, . . . , vn) je báze lineární prostoru V nad tělesem T, nechť u, w ∈ V a t ∈ T. Pak platí (a) [u + w]B = [u]B + [w]B a (b) [tu]B = t[u]B (42) Nechť B je báze vektorového prostoru V nad tělesem T dimenze n. Pak platí (a) posloupnost (v1, v2, . . . , vk) je lineárně nezávislá ve V právě tehdy, když je posloupnost ([v1]B, [v2]B, . . . , [vk]B) lineárně nezávislá v Tn ; (b) množina X generuje V právě tehdy, když [X]B generuje Tn ; (c) posloupnost (v1, v2, . . . , vk) je báze V právě tehdy, když je posloupnost ([v1]B, [v2]B, . . . , [vk]B) báze Tn . (43) Nechť B = (v1, . . . , vn) a C jsou báze vektorového prostoru V nad tělesem T. Maticí přechodu od báze B k bázi C rozumíme matici [id]B C = ([v1]C | [v2]C | · · · | [vn]C) . (44) Nechť V je vektorový prostor V nad tělesem T dimenze n a B, C jsou báze V. Pak pro libovolný prvek x ∈ V platí [x]C = [id]B C [x]B . Navíc je matice [id]B C tímto vztahem určena jednoznačně. LINEÁRNÍ ALGEBRA 197 (45) Nechť A = (a1|a2| · · · |an) je matice nad T. Říkáme, že i-tý sloupec matice A je bázový, pokud není lineární kombinací předchozích sloupců, tj. pokud platí ai ∈ LO {a1, a2, . . . , ai−1} . (46) Pro libovolnou matici A tvoří bázové sloupce bázi sloupcového prostoru. Speciálně, dimenze Im A je rovna počtu bázových sloupců. (47) Bázové sloupce matice A nad T typu m × n v odstupňovaném tvaru jsou právě sloupce k1, k2, . . . , kr, kde r, k1, . . . , kr jsou parametry z definice 2.12 odstupňovaného tvaru. (48) Nechť A je matice nad tělesem T typu m × n a R je regulární matice řádu m. Pak pro libovolné i ∈ {1, 2, . . . , n} platí, že i-tý sloupec matice A je bázový právě tehdy, když je bázový i-tý sloupec matice RA. (49) Pro libovolnou matici A platí dim(Im A) = dim(Im AT ). (50) Hodností matice A rozumíme dimenzi řádkového (sloupcového) prostoru matice A. Značíme rank(A). (51) Pro libovolnou matici A typu m × n platí rank(A) = rank(AT ) ≤ m, n. Hodnost se nemění elementárními řádkovými ani sloupcovými úpravami. Hodnost matice v řádkově odstupňovaném tvaru je rovna počtu nenulových řádků. (52) Nechť A je matice nad T typu m × n a B matice nad T typu n × p. Pak platí rank(AB) ≤ rank(A), rank(AB) ≤ rank(B) . (53) Nechť A je matice nad T typu m×n a R je regulární matice nad T řádu m. Pak rank(RA) = rank(A). Podobně pro násobení regulární maticí zprava. (54) Nechť A je čtvercová matice nad T řádu n. Následující tvrzení jsou ekvi- valentní. 1. A je regulární. 11. rank(A) = n. 12. Sloupce (řádky) matice A jsou lineárně nezávislé. 13. Sloupce (řádky) matice A generují Tn . 14. Sloupce (řádky) matice A tvoří bázi Tn . (55) Matice je v redukovaném (řádkově) odstupňovaném tvaru, pokud je v řádkově odstupňovaném tvaru a každý bázový sloupec má jedinou nenulovou složku rovnou 1. (56) Každou matici A lze převést do redukovaného odstupňovaného tvaru takto: (a) Matici Gaussovou eliminací převedeme do odstupňovaného tvaru. (b) Vynásobíme nenulové řádky tak, aby byl každý pivot roven 1. (c) Postupně vynulujeme zbylé prvky v každém bázovém sloupci. Tomuto procesu se říká Gaussova-Jordanova eliminace. (57) Libovolná matice A typu m × n nad T s hodností r je rovná součinu A = BC, kde B je matice typu m × r tvořená bázovými sloupci matice A (v pořadí v jakém se vyskytují v A) a C je matice typu r × n tvořená nenulovými řádky v redukovaném odstupňovaném tvaru D matice A. (58) Použití skeletního rozkladu k bezztrátové komprimaci dat uložených do matice. (59) Frobeniova věta. Soustava Ax = b má řešení právě tehdy, když rank(A) = rank(A | b). 198 LIBOR BARTO A JIŘÍ TŮMA (60) Věta o dimenzi jádra a obrazu. Pro libovolnou matici A nad T typu m × n platí dim(Ker A) + dim(Im A) = n . (61) Jsou-li Vi, i ∈ I podprostory vektorového prostoru V, pak i∈I Vi je podprostorem V. (62) Nechť Vi, i ∈ I jsou podprostory vektorového prostoru V. Součtem (též spojením) podprostorů Vi, i ∈ I rozumíme lineární obal jejich sjednocení, značíme jej i∈I Vi, tj. i∈I Vi = LO i∈I Vi . Součet podprostorů V1, V2, . . . , Vk také značíme V1 + V2 + · · · + Vk. (63) Pro podprostory U, W vektorového prostoru V platí U + W = {u + w : u ∈ U, w ∈ W} (64) Věta o dimenzi součtu a průniku podprostorů. Pro libovolné dva konečně generované podprostory U, V vektorového prostoru W platí dim(U) + dim(V) = dim(U ∩ V) + dim(U + V) . Klíčové znalosti ze čtvrté kapitoly nezbytné pro průběžné sledování přednášek s pochopením (1) Definice vektorového prostoru nad tělesem T a jednoduché vlastnosti počítání v něm, příklady vektorových prostorů. (2) Pojem podprostoru vektorového prostoru a ekvivalentní definnice pomocí uzavřenosti na operace. (3) Definice lineární kombinace prvků, lineárního obalu množiny prvků, množiny generátorů, a konečně generovaného vektorového prostoru. (4) Lineární obal LO X množiny X ⊆ V je nejmenší podprostor V obsahující X. (5) Lineární závislost a nezávislost konečné posloupnosti prvků vektorového prostoru, různé ekvivalentní definice. (6) Báze konečně generovaného vektorového prostoru a ekvivalentní formulace pomocí jednoznačnosti vyjádření prvků prostoru jako lineární kombinace prvků báze. (7) Steinitzova věta o výměně, rovnost počtu prvků libovolných dvou bází a definice dimenze konečně generovaného vektorového prostoru. (8) Různé ekvivalentní definice báze (např. maximální lineárně nezávislá posloupnost, atd.). (9) Sloupcový a řádkový prostor matice, čtyři podprostory určené maticí. (10) Vliv elementárních řádkových a sloupcových úprav na čtyři základní prostory matice. (11) Ekvivalentní definice lineární nezávislosti posloupnosti sloupcových vektorů matice pomocí jádra matice. (12) Vliv elementárních řádkových a sloupcových úprav na lineární (ne)závislost posloupnosti sloupcových nebo řádkových vektorů matice. LINEÁRNÍ ALGEBRA 199 (13) Bázové sloupce matice, báze sloupcového a řádkového prostoru matice v řádkově odstupňovaném tvaru. (14) Rovnost dimenze řádkového a dimenze sloupcového prostoru matice, definice hodnosti matice. (15) Další ekvivalentní podmínky s regularitou matice. (16) Odhady hodnosti součinu matic pomocí hodností činitelů. (17) Frobeniova věta a věta o dimenzi jádra a obrazu matice. (18) Souřadnice vektoru vzhledem k bázi, souřadnice součtu dvou prvků a skalárního násobku prvku. (19) Matice přechodu mezi dvěma bázemi vektorového prostoru, vzorec pro přepočet souřadnic vektoru vzhledem ke dvěma různým bázím. (20) Průnik a součet podprostorů, ekvivalentní popis součtu dvou podprostorů. (21) Věta o dimenzi součtu a průniku podprostorů. 200 LIBOR BARTO A JIŘÍ TŮMA 6. Lineární zobrazení Cíl. Dosud jsme zobecnili počítání s reálnými čísly na počítání v tělese a počítání s aritmetickými vektory na počítání v vektorovém prostoru. V této kapitole zobecníme matice do pojmu lineárního zobrazení. Ukážeme si základní vlastnosti lineárních zobrazení. 6.1. Definice a příklady. Připomeňme, že každá matice A nad tělesem T typu m × n určuje zobrazení fA : Tn → Tm předpisem fA(x) = Ax. Tento pohled motivoval řadu zavedených pojmů. • Násobení matic: je-li B matice nad T typu p × m, pak složené zobrazení fB ◦ fA : Tn → Tp je rovno zobrazení fBA. • Inverzní matice: je-li m = n a fA je bijekce, pak inverzní zobrazení (fA)−1 je rovno fA−1 . • Jádro matice: podprostor Ker A ≤ Tn se rovná množině všech vektorů x ∈ Tn , které fA zobrazí na nulový vektor. Ker A = {x : fA(x) = o} ≤ Tn . • Sloupcový prostor matice a hodnost: podprostor Im A ≤ Tm se rovná oboru hodnot zobrazení fA. Hodnost rank(A) matice A se rovná dimenzi Im A. Im A = {fA(x) : x ∈ Tn } = fA(Tn ) ≤ Tm , rank(A) = dim(Im A) . Rovněž nám tento pohled poskytl geometrickou interpretaci řady tvrzení. Ne každé zobrazení f : Tn → Tm je tvaru fA pro nějakou matici A. Zobrazení tvaru fA mají tu vlastnost, že „zachovávají sčítání a násobení. Takovým zobrazením říkáme lineární a za okamžik nahlédneme, že linearita tato zobrazení charakterizuje. Lineární zobrazení definujeme mezi obecnými lineárními prostory (nejen aritmetickými vektorovými). Definice 6.1. Nechť V, W jsou vektorové prostory nad stejným tělesem T. Zobrazení f : V → W nazýváme lineární zobrazení (nebo homomorfismus) z V do W, pokud (1) f(u + v) = f(u) + f(v) pro libovolné u, v ∈ V a (2) f(tu) = tf(u) pro libovolné u ∈ V a t ∈ T. Skutečnost, že f je lineární zobrazení z V do W zapisujeme f : V → W. Vlevo v rovnostech vystupují operace v prostoru V a vpravo operace v prostoru W. Zdůrazněme, že prostory V a W musí být nad stejným tělesem. Všimněte si rovněž, že každé lineární zobrazení zobrazuje nulový prvek ve V na nulový prvek v W. Pro libovolnou matici A nad T typu m × n je zobrazení fA : Tn → Tm lineární, protože fA(u + v) = A(u + v) = Au + Av = fA(u) + fA(v) a fA(tu) = A(tu) = t(Au) = tfA(u) . LINEÁRNÍ ALGEBRA 201 To nám dává řadu příkladů lineárních zobrazení mezi aritmetickými vektorovými prostory (a jak jsme zmínili a za chvíli dokážeme, jiná lineární zobrazení mezi aritmetickými vektorovými prostory neexistují). Příklad 6.2. • Příklady lineárních zobrazení z R2 do R2 : – Otočení (rotace) o daný úhel. – Zkosení e1 e2 F e1 e2 F Otočení e1 e2 F e1 e2 F Zkosení Obrázek 64. Zobrazení v rovině: otočení a zkosení – Projekce na přímku procházející počátkem. – Osová souměrnost podle přímky procházející počátkem. – Zvětšení (zmenšení) e 1 e 2 F e1 e2 F Projekce e1 e2 F e1 e2 F Zvětšení e1 e2 F e1 e2 F Osová souměrnost Obrázek 65. Zobrazení v rovině: projekce, zvětšení a osová souměrnost • Lineární zobrazení z R3 do R3 jsou například rotace, zrcadlení podle roviny procházející počátkem, osová souměrnost podle přímky procházející počátkem, projekce na rovinu nebo přímku procházející počátkem. • Příkladem lineárního zobrazení z R2 do R3 je zobrazení fA pro matici A =   1 2 1 0 1 3   . • Lineární zobrazení z R3 do R2 používáme při kreslení trojrozměrných útvarů na tabuli (papír). • Příkladem lineárního zobrazení z R3 do R je zobrazení d udávající orientovanou vzdálenost od zvolené roviny procházející počátkem. Ještě než popíšeme, jak vypadají lineární zobrazení obecně, podíváme se na další příklady. 202 LIBOR BARTO A JIŘÍ TŮMA u d(u) Obrázek 66. Lineární zobrazení z R3 do R: orientovaná vzdálenost od plochy Příklad 6.3. • Identické zobrazení idV na libovolném vektorovém prostoru V je lineární zobrazení V → V. • Tzv. nulové zobrazení 0 z V do W přiřazující všem vektorům ve V nulový vektor ve W je lineární. • Nechť B = (v1, v2, . . . , vn) je báze vektorového prostoru V. Zobrazení f z V do Tn definované f(v) = [v]B je lineární zobrazení V → Tn podle tvrzení 5.75 o souřadnicích a operacích. • Zobrazení přiřazující matici nad T typu n × n součet prvků na diagonále (tzn. stopu) je lineárním zobrazením Tn×n → T. • Derivace je lineárním zobrazením (např.) z prostoru reálných diferencovatelných funkcí do prostoru všech reálných funkcí. • Zobrazení přiřazující funkci její určitý integrál od 1 do 10 je lineárním zobrazením z prostoru všech reálných integrovatelných funkcí na [1, 10] do R. 6.2. Matice lineárního zobrazení. Z definice lineárního zobrazení snadno indukcí dokážeme, že obrazem lineární kombinace je lineární kombinace obrazů, tj. že pro libovolné lineární zobrazení f : V → W, vektory v1, v2, . . . , vn ∈ V , a skaláry t1, t2, . . . , tk ∈ T platí f(t1v1 + t2v2 + · · · + tkvn) = t1f(v1) + t2f(v2) + · · · + tkf(vn). Toto jednoduché pozorování má důležitý důsledek, že lineární zobrazení je jednoznačně určené obrazy prvků libovolné báze. Tvrzení formulujeme pro konečně generované prostory, zobecnění necháme do cvičení. Tvrzení 6.4. Jsou-li V a W vektorové prostory nad tělesem T, je-li B = (v1, v2, . . . , vn) báze v prostoru V, a jsou-li w1, w2, . . . , wn ∈ W libovolné vektory, pak existuje právě jedno lineární zobrazení f : V → W splňující f(vi) = wi pro každé i ∈ {1, 2, . . . , n}. Důkaz. Předpokládejme, že f je lineární zobrazení splňující f(vi) = wi. Každý prvek x ∈ V lze zapsat jediným způsobem jako lineární kombinaci x = t1v1 + t2v2 + · · · + tnvn (jinými slovy, [x]B = (t1, t2, . . . , tn)) a pak podle výše uvedeného vztahu platí f(x) = t1w1 + t2w2 + · · · + tnwn LINEÁRNÍ ALGEBRA 203 To dokazuje jednoznačnost. Na druhou stranu je potřeba ověřit, že zobrazení f definované tímto předpisem je lineární a splňuje f(vi) = wi, a tím bude dokázána existence. Vztah f(vi) = wi necháme k ověření čtenáři. K důkazu linearity uvažujme prvky x, y ∈ V , jejichž vyjádření vzhledem k B jsou [x]B = (t1, t2, . . . , tn)T , [y]B = (s1, s2, . . . , sn)T . Pak [x + y]B = (t1 + s1, t2 + s2, . . . , tn + sn)T (viz tvrzení 5.75 o souřadnicích a operacích) a tedy f(x + y) = (t1 + s1)w1 + (t2 + s2)w2 + · · · + (tn + sn)wn = t1w1 + t2w2 + · · · + tnwn + s1w1 + s2w2 + · · · + snwn = f(x) + f(y) . Podobně se ukáže zachovávání násobení skalárem. Tvrzení nám dává geometrickou představu lineárních zobrazení – podíváme se na obrazy prvků nějaké báze, obrazy zbylých prvků jsou pak určené linearitou. Algebraickým důsledkem je, že každé lineární zobrazení je „určené maticí. Než zformulujeme příslušné definice a tvrzení obecněji, ukážeme, že každé lineární zobrazení f z Tn do Tm je rovno fA pro jistou (jednoznačně určenou) matici A nad T typu m × n. Skutečně, pro libovolný aritmetický vektor x = (x1, x2, . . . , xn)T ∈ Tn platí f(x) = f(x1e1 + x2e2 + · · · + xnen) = x1f(e1) + x2f(e2) + · · · + xnf(en) , což lze maticově zapsat jako f(x) = (f(e1) | f(e2) | · · · | f(en)) x , takže stačí položit A = (f(e1) | f(e2) | · · · | f(en)) a máme f = fA. Matice A je určena jednoznačně, protože i-tý sloupec se musí rovnat f(ei), kde ei je i-tý vektor kanonické báze v Tn . Lineární zobrazení f : V → W, kde V, W jsou konečně generované vektorové prostory, můžeme obdobně popsat maticově, počítáme-li v prostorech V a W vzhledem ke zvoleným bázím B a C. Konkrétně, existuje (jednoznačně určená) matice A typu dim(W) × dim(V) taková, že [f(x)]C = A[x]B pro libovolný prvek x ∈ V . Této matici říkáme matice f vzhledem k B a C. Odvození, jak tato matice vypadá, se udělá podobně jako výše. Definice 6.5. Nechť V, W jsou konečně generované vektorové prostory nad tělesem T, f : V → W, B = (v1, v2, . . . , vn) je báze ve V a C je báze ve W. Maticí lineárního zobrazení f vzhledem k bázím B a C rozumíme matici [f]B C = ([f(v1)]C | [f(v2)]C | · · · | [f(vn)]C) . V matici f vzhledem k B a C je tedy i-tý sloupec roven souřadnicím prvku f(vi), tj. obrazu i-tého vektoru vi báze B, vzhledem k bázi C. Matice je typu dim(W) × dim(V). 204 LIBOR BARTO A JIŘÍ TŮMA Tvrzení 6.6. Jsou-li V, W konečně generované vektorové prostory nad tělesem T, B = (v1, v2, . . . , vn) báze prostoru V, C báze prostoru W, a f : V → W lineární zobrazení, pak pro libovolný prvek x ∈ V platí [f(x)]C = [f]B C [x]B . Důkaz. Pro libovolný prvek x ∈ V s vyjádřením x = x1v1 + x2v2 + · · · + xnvn vzhledem k bázi B platí f(x) = f(x1v1 + x2v2 + · · · + xnvn) = x1f(v1) + x2f(v2) + · · · + xnf(vn) , pro vyjádření vzhledem k bázi C pak podle tvrzení 5.75 o souřadnicích a operacích platí [f(x)]C = x1[f(v1)]C + x2[f(v2)]C + · · · + xn[f(vn)]C , což pomocí násobení matic zapíšeme jako [f(x)]C = ([f(v1)]C|[f(v2)]C| . . . |[f(vn)]C) (x1, x2, . . . , xn)T = [f]B C [x]B . Matice [f]B C tedy umožňuje počítat souřadnice [f(x)]C prvku f(x) vzhledem k bázi C prostoru W, známe-li souřadnice [x]B vektoru x vzhledem k bázi B prostoru V. Matice [f]B C je jediná matice splňující rovnost z předchozího tvrzení. Tvrzení 6.7. Jsou-li V, W konečně generované vektorové prostory nad tělesem T, B báze V, C báze W a f : V → W a M matice nad tělesem T splňující [f(x)]C = M [x]B pro každý prvek x ∈ V, pak M = [f]B C . Důkaz. Předně si uvědomíme, že M musí být typu dim(W) × dim(V), aby mohl vztah [f(x)]C = M [x]B vůbec platit. Dosadíme-li do tohoto vztahu i-tý vektor vi báze B, dostaneme [f(vi)]C = M [vi]B = M ei. Pravá strana je rovná i-tému sloupci matice M, tedy M = ([f(v1)]C | [f(v2)]C | · · · | [f(vn)]C) = [f]B C . Matice lineárního zobrazení fA : Tn → Tm vzhledem ke kanonickým bázím je původní matice A, tj. [fA]Kn Km = A, kde Ki značí kanonickou bázi v aritmetickám prostoru Ti . Příklad 6.8. Uvažujme zobrazení f : Z3 5 → Z2 5 dané předpisem f   x1 x2 x3   = 2x1 + 3x2 + x3 4x1 + 2x3 . Vztah lze maticově zapsat f   x1 x2 x3   = 2 3 1 4 0 2   x1 x2 x3   . Z toho vidíme, že f = fA pro matici A = 2 3 1 4 0 2 , takže f je lineární zobrazení a podle předchozí poznámky [f]K3 K2 = A. LINEÁRNÍ ALGEBRA 205 Určíme matici f vzhledem k bázím B a C, kde B =     1 1 2   ,   2 2 0   ,   3 4 4     a C = 1 2 , 3 3 . K tomu dosazením spočítáme obrazy vektorů v bázi B: f(1, 1, 2)T = (2 · 1 + 3 · 1 + 1 · 2, 4 · 1 + 2 · 2)T = (2, 3)T f(2, 2, 0)T = (2 · 2 + 3 · 2 + 1 · 0, 4 · 2 + 2 · 0)T = (0, 3)T f(3, 4, 4)T = (2 · 3 + 3 · 4 + 1 · 4, 4 · 3 + 2 · 4)T = (2, 0)T a obrazy vyjádříme v bázi C tím, že vyřešíme tři soustavy rovnic se stejnou maticí zároveň. 1 3 2 0 2 2 3 3 3 0 ∼ 1 3 2 0 2 0 2 4 3 1 Zpětnou substitucí dostáváme [(2, 3)T ]C = (1, 2)T , [(0, 3)T ]C = (3, 4)T , [(2, 0)T ]C = (3, 3)T (toto je dobré ověřit zkouškou, např. (2, 3)T = 1 · (1, 2)T + 2 · (3, 3)T , takže souřadnice vektoru (2, 3)T vzhledem k C jsou spočteny správně). Matice f vzhledem k B a C je [f]B C = 1 3 3 2 4 3 . Ověříme vztah [f(x)]C = [f]B C [x]B pro vektor [x]B = (1, 2, 3)T , tj. x = 1 · (1, 1, 2)T + 2 · (2, 2, 0)T + 3 · (3, 4, 4)T = (4, 2, 4)T . Obraz tohoto vektoru je podle definice f(x) = 2 · 4 + 3 · 2 + 1 · 4 4 · 4 + 2 · 4 = 3 4 . Podle [f(x)]C = [f]B C [x]B musí také platit [f(x)]C = 1 3 3 2 4 3   1 2 3   = 1 4 , což odpovídá, protože 1 · (1, 2)T + 4 · (3, 3)T = (3, 4)T , takže skutečně [(3, 4)T ]C = (1, 4)T . Příklad 6.9. S nabytými znalostmi můžeme nyní rychleji určovat matice některých lineárních zobrazení. Budeme hledat matici A, aby příslušné zobrazení fA byla rotace o α. V novější terminologii, hledáme matici rotace f v R2 o úhel α vzhledem ke kanonickým bázím. K tomu stačí určit obrazy prvků kanonické báze a napsat je do sloupců. Máme f 1 0 = cos α sin α , f 0 1 = − sin α cos α , tedy A = [f]K2 K2 = cos α − sin α sin α cos α Srovnejte tento výpočet s odvozením v části 4.3.1. 206 LIBOR BARTO A JIŘÍ TŮMA Příklad 6.10. Uvažujme zrcadlení f : R2 → R2 podle přímky p procházející počátkem a bodem (2, 5)T . K nalezení matice f vzhledem ke kanonickým bázím, bychom potřebovali nalézt obrazy vektorů kanonické báze, což vyžaduje netriviální výpočet. Je ale snadné určit obrazy vektorů vhodně zvolené báze, například B = ((2, 5)T , (−5, 2)T ). Máme totiž f(2, 5)T = (2, 5)T , protože tento vektor (2, 5)T leží na přímce p, a f(−5, 2)T = (5, −2)T , protože vektor (−5, 2)T je kolmý na p. Matice f vzhledem k B a K2 je tedy [f]B K2 = 2 5 5 −2 . Zanedlouho si ukážeme, jak z nalezené matice určit matici f vzhledem k jakýmkoliv jiným bázím, například kanonickým. Příklad 6.11. Určíme matici derivace chápané jako lineární zobrazení f z prostoru polynomů stupně nejvýše 3 do stejného prostoru vzhledem k bázím B = (1, x, x2 , x3 ) a stejné bázi B. K tomu stačí vypočítat vyjádření f-obrazů prvků B vzhledem k bázi B: [1 ]B = [0]B = (0, 0, 0, 0)T [x ]B = [1]B = (1, 0, 0, 0)T [(x2 ) ]B = [2x]B = (0, 2, 0, 0)T [(x3 ) ]B = [3x2 ]B = (0, 0, 3, 0)T Hledaná matice je [f]B B =     0 1 0 0 0 0 2 0 0 0 0 3 0 0 0 0     . V definici 5.78 byl zaveden pojem matice přechodu od báze B k bázi C konečně generovaného prostoru V. Pojem matice lineárního zobrazení nám umožňuje zdůvodnit zavedené značení [id]B C . Pozorování 6.12. Jsou-li B, C dvě báze konečně generovaného prostoru V, pak matice identického zobrazení z V do V se rovná matici přechodu od báze B k bázi C. Důkaz. Přímý důsledek definic. Přesnější označení pro matici přechodu od báze B k bázi C by bylo [idV ]B C , abychom zdůraznili, že se jedná o matici identického zobrazení idV z V do V . Index V ale pro přehlednost většinou vynecháváme, obvykle víme, v jakém prostoru V počítáme. Vztah [x]C = [id]B C [x]B z tvrzení 5.79 je nyní důsledkem tvrzení 6.6. Příklad 6.13. Matice přechodu od báze B = ((1, 2, 3)T , (6, 7, 8)T , (π, π, 10)T ) ke kanonické bázi prostoru R3 je [id]B K3 =   1 6 π 2 7 π 3 8 10   , protože vyjádření i-tého vektoru báze B v kanonické bázi je ten samý vektor. LINEÁRNÍ ALGEBRA 207 Příklad 6.14. Matice přechodu od B k B je vždy jednotková matice, protože vyjádření i-tého vektoru báze B vzhledem k bázi B je ei. 6.3. Skládání lineárních zobrazení. Lineární zobrazení a matice spolu úzce souvisí, proto není překvapivé, že s lineárními zobrazeními můžeme provádět podobné operace jako s maticemi: můžeme je násobit skalárem, sčítat, násobit (pro zobrazení tím myslíme skládat) a invertovat, samozřejmě jen za určitých podmínek. Přičemž operace s lineárními zobrazeními odpovídají při maticovém popisu příslušným operacím pro matice. Podíváme se nejprve na skládání a invertování. Tvrzení 6.15. Jsou-li U, V, W vektorové prostory nad tělesem T a jsou-li f : U → V a g : V → W lineární zobrazení, pak složené zobrazení gf je lineární zobrazení gf : U → W. Jsou-li navíc prostory U, V, W konečně generované a jsou-li B báze v U, C báze ve V a D báze ve W, pak platí [gf]B D = [g]C D [f]B C . Důkaz. Pro libovolné dva vektory x, y ∈ U dostáváme využitím předpokladu linearity f a g, že gf(x + y) = g(f(x + y)) = g(f(x) + f(y)) = gf(x) + gf(y) . Zobrazení gf tedy zachovává sčítání. Podobně, pro každý vektor x ∈ U a každý skalár t ∈ T platí gf(tx) = g(t f(x)) = t gf(x) . Zobrazení gf proto zachovává i násobení skalárem, takže je lineární. K důkazu druhé části ověříme (dvojím užitím tvrzení 6.6 o matici lineárního zobrazení), že pro libovolné x ∈ U platí [gf(x)]D = [g]C D [f(x)]C = [g]C D ([f]B C [x]B) = ([g]C D [f]B C )[x]B . Z tvrzení 6.7 o jednoznačnosti matice lineárního zobrazení nyní vyplývá, že [gf]B D = [g]C D [f]B C . Tvrzení 6.16. Nechť U, V jsou vektorové prostory nad tělesem T a f : U → V vzájemně jednoznačné lineární zobrazení. Pak f−1 : V → U je také lineární zobrazení. Jsou-li navíc U, V konečně generované vektorové prostory dimenze n, B báze v U a C báze ve V, pak platí [f−1 ]C B = [f]B C −1 . Důkaz. Zvolíme libovolné dva libovolné prvky x, y ∈ V . Protože f je na V , existují u, v ∈ U takové, že f(u) = x a f(v) = y. Protože f je lineární, platí f(u + v) = f(u) + f(v) = x + y a tedy f−1 (x + y) = u + v = f−1 (x) + f−1 (y). Podobně, pro libovolný skalár t ∈ T platí f(tu) = tf(u) = tx a tedy f−1 (tx) = tu = tf−1 (x). K důkazu druhé části využijeme druhou část tvrzení 6.15 o složeném zobrazení. Protože f−1 f = idU , platí In = [idU ]B B = [f−1 f]B B = [f−1 ]C B [f]B C . Matice [f]B C je čtvercová, proto [f−1 ]C B = ([f]B C )−1 . V druhé části tvrzení stačí předpokládat, že prostor U je konečně generovaný. Podle bodu (2) nebo (3) tvrzení 6.29 je pak prostor V také konečně generovaný a má stejnou dimenzi. 208 LIBOR BARTO A JIŘÍ TŮMA Ukážeme si použití předchozích dvou tvrzení na početních příkladech. Příklad 6.17. Určíme matici přechodu od kanonické báze prostoru R2 k bázi B = ((2, 5)T , (−5, 2)T ). Matici přechodu od B ke kanonické bázi určíme přímo z definice. [id]B K2 = 2 −5 5 2 Využijeme id−1 = id a tvrzení 6.16: [id]K2 B = [id−1 ]K2 B = ([id]B K2 )−1 = 2 −5 5 2 −1 = 1 29 2 5 −5 2 . Nalezenou matici přechodu můžeme použít k výpočtu matice zrcadlení f : R2 → R2 podle přímky p procházející počátkem se směrem (2, 5)T vzhledem ke kanonickým bázím. V příkladu 6.10 jsme nahlédli, že matice f vzhledem k B a kanonické bázi je [f]B K2 = 2 5 5 −2 . Pomocí tvrzení 6.15 a užitím f = f id nyní můžeme spočítat matici f vzhledem ke kanonickým bázím: [f]K2 K2 = [f]B K2 [id]K2 B = 2 5 5 −2 1 29 2 5 −5 2 = 1 29 −21 20 20 21 . Příklad 6.18. V prostoru Z2 5 jsou dány báze B = ((2, 4)T , (3, 3)T ) a C = ((1, 3)T , (2, 4)T ). Vektor v ∈ Z2 5 má vzhledem k bázi B souřadnice [v]B = (x1, x2)T . Najdeme souřadnice vektoru v vzhledem k bázi C. K tomu určíme matici přechodu od B k C užitím tvrzení 6.15 a 6.16: [id]B C = [id]K2 C [id]B K2 = [id]C K2 −1 [id]B K2 = 1 2 3 4 −1 2 3 4 3 = 1 3 4 3 2 1 2 3 4 3 = 2 0 1 3 4 = 0 2 1 3 Souřadnice v vzhledem k C jsou [v]C = [id]B C [v]B = 0 2 1 3 x1 x2 = 2x2 x1 + 3x2 . Výsledek ještě můžeme ověřit například volbou (x1, x2)T = (1, 0)T . Je [v]B = (1, 0)T , takže v = (2, 4)T . Podle odvozeného vzorce by mělo platit [v]C = (0, 1)T a skutečně (2, 4)T = 0 · (1, 3)T + 1 · (2, 4)T . K nabytí úplné jistoty bychom mohli ještě ověřit pro (x1, x2)T = (0, 1)T . Příklad 6.19. V příkladu 6.8 jsme určili matici lineárního zobrazení f : Z3 5 → Z2 5 daného předpisem f   x1 x2 x3   = 2x1 + 3x2 + x3 4x1 + 2x3 = 2 3 1 4 0 2   x1 x2 x3   LINEÁRNÍ ALGEBRA 209 vzhledem k bázím B a C, kde B =     1 1 2   ,   2 2 0   ,   3 4 4     a C = 1 2 , 3 3 . Spočítáme tuto matici jiným postupem. Ze zadání můžeme přímo určit matice [f]K3 K2 , [id]B K3 a [id]C K2 . Pomocí těchto matic lze spočítat [f]B C : [f]B C = [id]K2 C [f]K3 K2 [id]B K3 = [id]C K2 −1 [f]K3 K2 [id]B K3 = 1 3 2 3 −1 2 3 1 4 0 2   1 2 3 1 2 4 2 0 4   = 1 2 3 2 3 1 2 0 2 3 3 0 = 3 2 1 1 4 3 1 = 1 3 3 2 4 3 . Následující důsledek tvrzení 6.15 a 6.16 je obzvláště důležitý, jak zjistíme v kapitole o vlastních číslech. Proto jej formulujeme jako samostatné tvrzení. Tvrzení 6.20. Je-li V konečně generovaný vektorový prostor nad tělesem T, f : V → V lineární zobrazení, B, C dvě báze prostoru V, a R matice přechodu od báze B k bázi C, pak [f]B B = R−1 [f]C C R . Důkaz. Protože f = idV f idV máme [f]B B = [idV ]C B [f]C C [idV ]B C = [idV ]B C −1 [f]C C [idV ]B C = R−1 [f]C C R . 6.4. Typy lineárních zobrazení. Následující definice zavádí terminologii pro různé typy lineárních zobrazení. Definice 6.21. Nechť V, W jsou vektorové prostory nad tělesem T a f : V → W je lineární zobrazení. • Pokud je f prosté, říkáme že f je monomorfismus, • pokud je f na prostor W, říkáme že f je epimorfismus, • pokud f je vzájemně jednoznačné, říkáme že f je izomorfismus, • pokud V = W, říkáme že f je endomorfismus prostoru V (nebo také lineární operátor na prostoru V), • pokud W = T = T1 , říkáme že f je lineární forma na V, • pokud je f izomorfismus a endomorfismus, říkáme, že f je automorfismus prostoru V. Příklad 6.22. • Rotace a osové souměrnosti jsou automorfismy R2 → R2 . • Zobrazení přiřazující vektoru z V souřadnice ve zvolené bázi B = (v1, . . . , vn) je izomorfismus z V do Tn . • Zobrazení přiřazující vektoru z R3 jeho orientovanou vzdálenost od zvolené roviny procházející počátkem je lineární forma na R3 , je to epimorfismus, který není monomorfismus. 210 LIBOR BARTO A JIŘÍ TŮMA • Projekce na rovinu procházející počátkem (chápaná jako zobrazení R3 → R3 ) je endomorfismus, který není ani epimorfismus ani monomorfismus. • Zobrazení f : R2 → R3 definované vztahem f(x1, x2)T = (x1, x2, 0)T (vložení roviny do R3 ) je monomorfismus a není to epimorfismus. 6.4.1. Jádro a obraz. Jako defekt prostoty zavedeme jádro Ker f lineárního zobrazení f, je tvořeno těmi vektory, které f zobrazí na nulový vektor. Obraz lineárního zobrazení f budeme značit Im f. Definice 6.23. Nechť f : V → W je lineární zobrazení. Jádrem f rozumíme množinu Ker f = {x ∈ V : f(x) = o} . Obraz (obor hodnot) f značíme Im f, tj. Im f = {f(x) : x ∈ V } . Všimněte si, že nulový vektor leží v jádru jakéhokoliv lineárního zobrazení. Pokud ale v jádru žádný jiný vektor neleží, je již zobrazení prosté (tj. monomorfismus). Tvrzení 6.24. Nechť f : V → W je lineární zobrazení. Pak f je prosté právě tehdy, když Ker f = {o}. Důkaz. Je-li f prosté a x ∈ Ker f, pak f(x) = o = f(o), a protože f je prosté, plyne odtud x = o. Proto Ker f ⊆ {o}. Opačná inkluze je triviální. Je-li naopak Ker f = {o} a f(x) = f(y) pro nějaké vektory x, y ∈ V , pak z linearity f plyne f(x − y) = f(x) − f(y) = o, takže x − y ∈ Ker f, odkud plyne x = y. To dokazuje, že f je prosté. Z důkazu je patrné, že jádro lineárního zobrazení určuje, které dvojice vektorů se zobrazí na stejný vektor. Vztah f(x) = f(y) totiž platí právě tehdy, když x − y ∈ Ker f. Obraz i jádro lineárního zobrazení mezi dvěma konečně generovanými prostory určíme snadno z jeho libovolné matice – v příslušných bázích je to sloupcový prostor resp. jádro této matice. Toho jsme si již dříve všimli pro zobrazení mezi aritmetickými prostory a jejich matici vzhledem ke kanonickým bázím. Tvrzení 6.25. Nechť V, W jsou konečně generované vektorové prostory, B je báze V, C je báze W a f : V → W je lineární zobrazení. Pak platí • jádro Ker f je podprostorem V a platí [Ker f]B = Ker [f]B C , • obraz Im f je podprostorem W a platí [Im f]C = Im [f]B C . Důkaz. • Jádro je neprázdné, protože obsahuje nulový vektor. Je uzavřené na sčítání, protože z u, v ∈ Ker f plyne f(u+v) = f(u)+f(v) = o, čili u+v ∈ Ker f, a podobně se ukáže uzavřenost na násobení skalárem. Použijeme opět vzorec pro matici lineárního zobrazení: [Ker f]B = [{v : f(v) = o}]B = {[v]B : f(v) = o} = {[v]B : [f(v)]C = o} = {[v]B : [f]B C [v]B = o} = {x ∈ Tdim(V ) : [f]B C x = o} = Ker [f]B C LINEÁRNÍ ALGEBRA 211 • Obraz je zřejmě neprázdný. Ověříme uzavřenost na sčítání, uzavřenost na násobení skalárem se dokáže podobně. Jsou-li w1, w2 ∈ W v obrazu f, pak existují v1, v2 ∈ V takové, že f(v1) = w1 a f(v2) = w2. Z linearity f(v1 +v2) = f(v1)+f(v2) = w1 +w2, takže v obrazu leží i součet w1 +w2. Z tvrzení 6.6 o matici lineárního zobrazení dostáváme [f(V )]C = [{f(v) : v ∈ V ]C = {[f(v)]C : v ∈ V } = {[f]B C [v]B : v ∈ V } = {[f]B C x : x ∈ Tdim(V ) } = Im [f]B C . Příklad 6.26. Lineární zobrazení f : R3 → R2 máme dáno maticí vzhledem k následujícím bázím B v R3 a C v R2 : B =     1 2 3   ,   2 0 1   ,   3 3 0     , C = 3 1 , −1 1 , A = [f]B C = 2 1 −3 −4 −2 6 . Určíme Ker f a f(R3 ). Nejprve spočítáme Ker A (tj. určíme nějakou bázi Ker A), tedy vyřešíme homogenní soustavu rovnic s maticí A. 2 1 −3 −4 −2 6 ∼ 2 1 −3 0 0 0 . Báze Ker A je například (−1, 2, 0)T , (3, 0, 2)T (za parametry jsme volili (2, 0)T a (0, 2)T , aby vycházela hezčí čísla). Takže [Ker f]B = Ker A = LO      −1 2 0   ,   3 0 2      , z čehož dopočteme Ker f = LO    −1   1 2 3   + 2   2 0 1   , 3   1 2 3   + 2   3 3 0      = LO      3 −2 −1   ,   9 12 9      = LO      3 −2 −1   ,   3 4 3      . Nyní řádkovými úpravami určíme bázi Im A:   2 −4 1 −2 −3 6   ∼   1 −2 0 0 0 0   . Takže [Im f]C = Im A = LO 1 −2 a Im f = LO 1 3 1 − 2 −1 1 = LO 5 −1 . 212 LIBOR BARTO A JIŘÍ TŮMA Dimenze jádra f je 2 a dimenze obrazu f je 1, což je v souladu s větou o dimenzi jádra a obrazu pro matice. 6.4.2. Charakterizace mono/epi/izomorfismů. Monomorfismy zobrazují lineárně nezávislé posloupnosti na lineárně nezávislé posloupnosti a tato vlastnost je charak- terizuje. Tvrzení 6.27. Nechť V a W jsou vektorové prostory nad tělesem T, V je konečně generovaný a f : V → W je lineární zobrazení. Pak následující tvrzení jsou ekvivalentní. (1) Zobrazení f je prosté (monomorfismus), (2) pro každou lineárně nezávislou posloupnost (v1, . . . , vk) ve V je posloupnost (f(v1), . . . , f(vk)) lineárně nezávislá ve W, (3) existuje báze (v1, . . . , vn) prostoru V taková, že posloupnost (f(v1), . . . , f(vn)) je lineárně nezávislá v W. Důkaz. (1) ⇒ (2). Předpokládejme, že f je prosté a (v1, . . . , vk) lineárně nezávislá posloupnost ve V. Platí-li pro nějaké skaláry t1, . . . , tk ∈ T t1f(v1) + · · · + tkf(vk) = o , pak v důsledku linearity f platí rovněž f(t1v1 + · · · + tkvk) = o = f(o) . Protože f je prosté zobrazení, platí t1v1 + · · · + tkvk = o, a protože (v1, . . . , vk) je lineárně nezávislá, dostáváme t1 = · · · = tk = 0. (2) ⇒ (3). Plyne z toho, že každá báze je lineárně nezávislá posloupnost. (3) ⇒ (1). Podle tvrzení 6.24 stačí dokázat, že Ker f obsahuje pouze nulový vektor. Uvažujme libovolný vektor x ∈ Ker f. Vyjádříme jej jako lineární kombinaci prvků báze (v1, . . . , vn): x = t1v1 + · · · + tnvn . Pak o = f(x) = f(t1v1 + · · · + tnvn) = t1f(v1) + · · · + tnf(vn) . Protože je (f(v1), . . . , f(vn)) je lineárně nezávislá, plyne odtud t1 = · · · = tn = 0 a tedy x = o. Následuje obdobné tvrzení pro epimorfismy. Ty převádějí množiny generátorů na množiny generátorů. Tvrzení 6.28. Nechť V a W jsou vektorové prostory nad tělesem T, V je konečně generovaný a f : V → W je lineární zobrazení. Pak následující tvrzení jsou ekvivalentní. (1) Zobrazení f je na W (epimorfismus), (2) pro každou množinu generátorů {v1, . . . , vk} ve V je {f(v1), . . . , f(vk)} množina generátorů ve W, (3) existuje báze (v1, . . . , vn) prostoru V taková, že {f(v1), . . . , f(vn)} generuje W. Důkaz. (1) ⇒ (2). Pro libovolný vektor w ∈ W existuje x ∈ V tak, že f(x) = w, protože f je epimorfismus. Protože {v1, . . . , vk} generuje V, můžeme vektor x vyjádřit jako lineární kombinaci x = t1v1 + · · · + tkvk. Díky linearitě f nyní LINEÁRNÍ ALGEBRA 213 máme w = f(x) = f(t1v1 + · · · + tkvk) = t1f(v1) + · · · + tkf(vk). Zjistili jsme, že každý vektor w lze vyjádřit jako lineární kombinaci vektorů f(v1), . . . , f(vk), což znamená, že {f(v1), . . . , f(vk)} množina generátorů ve W. (2) ⇒ (3). Plyne z toho, že každá báze V generuje V. (3) ⇒ (1). Potřebujeme ukázat, že každý vektor w ∈ W má vzor při zobrazení f. Protože {f(v1, . . . , f(vn)} generuje W, můžeme w vyjádřit jako w = t1f(v1)+· · ·+ tnf(vn). Pak pro vektor x = t1v1 + · · · + tnvn platí f(x) = f(t1v1 + · · · + tnvn) = t1f(v1) + · · · + tnf(vn) = w. Důsledkem předchozích dvou tvrzení je charakterizace izomorfismů. Tvrzení 6.29. Nechť V a W jsou vektorové prostory nad tělesem T, V je konečně generovaný a f : V → W je lineární zobrazení. Pak následující tvrzení jsou ekvivalentní: (1) zobrazení f je izomorfismus, (2) pro každou bázi (v1, . . . , vk) ve V je (f(v1), . . . , f(vk)) báze ve W, (3) existuje báze (v1, . . . , vn) prostoru V taková, že (f(v1), . . . , f(vn)) je báze ve W. 6.4.3. Izomorfismus. Dva prostory V, W nazýváme izomorfní, pokud existuje izomorfismus f : V → W. (Rozmyslete si, že relace “být izomorfní” je reflexivní, symetrická a tranzitivní, tj. je to ekvivalence, viz cvičení.) Skutečnost, že V a W jsou izomorfní, zapisujeme V ∼= W Izomorfní prostory jsou „v podstatě stejné, liší se jenom přejmenováním vektorů. Podrobněji, uvažujme izomorfismus f : V → W. Přejmenováním každého vektoru v ∈ V na f(v) a zachováním původních operací vznikne prostor W. Skutečně, přejmenováním dvou vektorů u, v ve V vzniknou vektory f(u), f(v), jejichž součet ve W je f(u)+f(v), což je z linearity totéž jako přejmenovaný vektor u+v, tj. vektor f(u+v). Podobně pro násobení skalárem. Proto izomorfismy zachovávají mnoho vlastností. Pozorování 6.30. Nechť f : V → W je izomorfismus konečně generovaných prostorů. Pak platí (1) posloupnost (v1, . . . , vk) je lineárně nezávislá ve V právě tehdy, když je posloupnost (f(v1), . . . , f(vk)) lineárně nezávislá v W, (2) množina {v1, . . . , vk} generuje V právě tehdy, když množina {f(v1), . . . , f(vk)} generuje W, (3) posloupnost (v1, . . . , vk) je báze V právě tehdy, když je posloupnost (f(v1), . . . , f(vk)) báze W, (4) dim V = dim W, (5) množina M ⊆ V je podprostorem prostoru V právě tehdy, když je f(M) = {f(m) : m ∈ M} podprostorem prostoru W, (6) pokud U ≤ V, pak f zúžené na U je izomorfismem U → f(U). Speciálně dim U = dim f(U). Důkaz. Pro libovolný konečně generovaný prostor V nad tělesem T s bází B = (v1, . . . , vn) je zobrazení s : V → Tn definované vztahem s(v) = [v]B izomorfismus V → Tn : Zobrazení s je prosté, protože každý vektor je jednoznačně určen souřadnicemi 214 LIBOR BARTO A JIŘÍ TŮMA vzhledem k B. Zobrazení s je na Tn , protože každá n-tice je souřadnicemi nějakého vektoru ve V. Konečně s je lineární podle tvrzení 5.75. (Vlastnosti uvedené v pozorování 5.77 jsou tak speciálním případem pozorování 6.30.) Použitím vlastností z pozorování 6.30 na tento “souřadnicový izomorfismus” získáme obecnější verzi věty o dimenzi jádra a obrazu, dříve dokázané v maticové verzi. Věta 6.31 (o dimenzi jádra a obrazu). Jsou-li V, W konečně generované vektorové prostory nad tělesem T a f : V → W lineární zobrazení, pak dim(Ker f) + dim(Im f) = dim V . Důkaz. Vezmeme libovolnou bázi B prostoru V a bázi C prostoru W. Označme A = [f]B C (jde o matici typu dim W × dim V ). Podle tvrzení 6.25 o výpočtu jádra a obrazu platí [Ker f]B = Ker A a [Im f]C = Im A. Z bodu (6) pozorování 6.30 nyní vyplývá dim Ker f = dim Ker A a dim Im f = dim Im A. Vztah nyní vyplývá z věty 5.99 o dimenzi jádra a obrazu pro matice. Souřadnicový izomorsmus také ukazuje, že každý vektorový prostor V nad T dimenze n je izomorfní aritmetickému prostoru Tn . Ze symetrie a tranzitivity relace “být izomorfní” plyne, že libovolné dva prostory nad stejným tělesem stejné dimenze jsou izomorfní. Předvedeme “bezsouřadnicový” důkaz. Věta 6.32. Nechť V a W jsou dva konečně generované prostory nad tělesem T. Pak následující tvrzení jsou ekvivalentní: (1) Existuje izomorfismus f : V → W. (2) dim(V) = dim(W). Důkaz. Implikace (1) ⇒ (2) je bod (4) v pozorování 6.30. Pro důkaz druhé implikace zvolíme bázi B = (v1, v2, . . . , vn) prostoru V a bázi C = (w1, w2, . . . , wn) prostoru W. Podle tvrzení 6.4 (o rozšiřování lineárního zobrazení definovaného na bázi) existuje lineární zobrazení f : V → W splňující f(vi) = wi pro každé i ∈ {1, 2, . . . , n}. Toto lineární zobrazení je izomorfismem podle bodu (3) tvrzení 6.29 charakterizující izomorfismy. Dokázaná věta dává přesný význam heslu, že vektorový prostor nad daným tělesem dané dimenze je “v podstatě” jen jeden. Věta platí i pro prostory, které nejsou konečně generované. Těmi se detailněji nezabýváme, ukážeme ale příklad izomorfismu mezi takovými prostory. Příklad 6.33. Ozačíme V prostor všech reálných polynomů a W podprostor prostoru všech posloupností reálných čísel tvořený posloupnostmi, které obsahují konečně mnoho nenulových prvků. Definujeme zobrazení f : V → W vztahem f(a0 + a1x + · · · + anxn ) = (a0, a1, . . . , an, 0, 0, . . . ) . Snadno se ověří, že f je bijekce (prosté a na) a že je lineární, tedy f je izomorfismus. 6.5. Prostor lineárních zobrazení. Uvažujme dva vektorové prostory V, W nad stejným tělesem. Následující tvrzení ukazuje, že na množině všech lineárních zobrazení z V do W lze přirozeným způsobem zavést sčítání a skalární násobení. Další tvrzení ukazuje, že tímto získáme vektorový prostor. LINEÁRNÍ ALGEBRA 215 Tvrzení 6.34. Jsou-li V, W vektorové prostory nad stejným tělesem T, f, g : V → W dvě lineární zobrazení a t ∈ T, pak platí: (1) Zobrazení tf definované vztahem (tf)(x) = t · f(x), x ∈ V je lineární zobrazení V → W. (2) Zobrazení f + g definované vztahem (f + g)(x) = f(x) + g(x), x ∈ V je lineární zobrazení V → W. Tvrzení 6.35. Jsou-li V, W vektorové prostory nad stejným tělesem T, pak množina všech lineárních zobrazení z V do W s operacemi definovanými v tvrzení 6.34 tvoří vektorový prostor nad T. Důkaz. Přenecháme jako cvičení Definice 6.36. Vektorový prostor všech lineárních zobrazení z V do W značíme Hom(V, W). Tvrzení 6.37. Jsou-li V, W konečně generované vektorové prostory nad tělesem T, dim V = n a dim W = m, pak prostor Hom(V, W) je izomorfní prostoru Tm×n všech matic typu m × n nad T Důkaz. Zvolíme bázi B prostoru V a bázi C prostoru W. Zobrazení s : Hom(V, W) → Tm×n definujeme vztahem s(f) = [f]B C . Zobrazení s je prosté, protože každé lineární zobrazení je jednoznačně určeno svou maticí vzhledem k B a C. Zobrazení s je na Tm×n , protože každá matice typu m × n je maticí nějakého lineárního zobrazení V → W. K ověření toho, že s je lineární, potřebujeme ukázat, že pro libovolné f, g : V → W a t ∈ T platí [tf]B C = t[f]B C , [f + g]B C = [f]B C + [g]B C . To přenecháme jako cvičení. 6.5.1. Lineární formy. Připomeňme, že lineární forma na vektorovém prostoru V nad tělesem T je lineární zobrazení z V do (jednodimenzionálního) prostoru T. Množinu všech lineárních forem na V spolu s přirozenými operacemi sčítání a násobení (zavedenými ve tvrzení 6.34) nazýváme duál prostoru V: Definice 6.38. Nechť V je vektorový prostor nad tělesem T. Duálem prostoru V rozumíme prostor Vd = Hom(V, T) . Předpokládejme, že V je konečně generovaný prostor dimenze n. Prostor Hom(V, T) je podle tvrzení 6.37 izomorfní prostoru T1×n všech matic nad T typu 1 × n tj. prostoru řádkových vektorů. Speciálně: Tvrzení 6.39. Nechť V je konečně generovaný prostor, pak dim V = dim Vd . Důkaz. Vd = Hom(V, T) je izomorfní T1×n (kde n = dim V) a tento prostor má dimenzi n. Protože izomorfní prostory mají stejnou dimenzi (viz např. pozorování 6.30), platí dim Vd = n. Podle důkazu tvrzení 6.37 izomorfismus Hom(V, T) ∼= T1×n získáme volbou báze B prostoru V a báze C prostoru T. Pro lineární formy bázi C volíme vždy “kanonickou”, tj. C = (1). 216 LIBOR BARTO A JIŘÍ TŮMA Definice 6.40. Nechť V je konečně generovaný prostor nad tělesem T, f je lineární forma na V a B je báze prostoru V. Maticí formy f vzhledem k bázi B rozumíme řádkový vektor [f]B = [f]B (1) . Podle definice matice lineárního zobrazení je matice f vzhledem k B = (v1, . . . , vn) rovná [f]B = (f(v1), f(v2), . . . , f(vn)) . Vzorec z tvrzení 6.6 o matici lineárního zobrazení má pro lineární formy tvar f(x) = [f]B [x]B . Označíme-li [f]B = (a1, . . . , an) a [x]B = (x1, . . . , xn), máme f(x) = (a1, . . . , an)(x1, . . . , xn)T = a1x1 + a2x2 + · · · + anxn . 6.5.2. Řádkový pohled na soustavy lineárních rovnic. Rozebereme nyní podrobněji řádkový pohled na soustavy lineárních rovnic. Diskuzi budeme provádět pouze pro homogenní soustavy rovnic, jejichž řešení je základem pro řešení obecných soustav. Nechť tedy A = (aij) je matice typu m × n nad tělesem T s řádkovými vektory ˜a1, . . . , ˜am. Pro i = 1, . . . , m označme fi lineární formu na Tn , jejíž matice vzhledem ke kanonické bázi je ˜ai, tj. fi(x1, . . . , xn)T = ai1x1 + ai2x2 + · · · + ainxn . Vektor x ∈ Tn je řešením soustavy Ax = o právě tehdy, když f1(x) = 0, f2(x) = 0, . . . , fm(x) = 0. Jinými slovy, Ax = o právě tehdy, když x ∈ Ker f1, . . . , x ∈ Ker fm, neboli x ∈ Ker f1 ∩· · ·∩Ker fm. Jádro je, kromě případu nulové formy, vždy nadrovina (tj. podprostor dimenze n − 1 v Tn ), jak ukazuje následující obecnější tvrzení. Tvrzení 6.41. Nechť V je vektorový prostor dimenze n nad tělesem T a f je lineární forma na V. Je-li f nenulová, pak dim Ker f = n − 1. Důkaz. Podle věty 6.31 o dimenzi jádra a obrazu platí dim Ker f + dim Im f = n Je-li f nenulová forma, její obraz je celé T a dim Im f = 1, takže dim Ker f +1 = n, čili dim Ker f = n − 1. Vraťme se k diskuzi řešení soustavy. Předpokládejme pro přehlednost, že žádná z forem f1, . . . , fm není nulová. Každý řádek v takovém případě určuje nadrovinu Ker fi a množina řešení je rovna průniku těchto nadrovin. Počítejme průniky postupně: uvažujme posloupnost W1 = Ker f1, W2 = Ker f1 ∩ Ker f2, . . . , Wm = Ker f1 ∩ Ker f2 ∩ · · · ∩ Ker fm. Wi+1 je tedy průnikem Wi a nadroviny Ker fi+1. Důsledkem věty o dimenzi součtu a průniku je (viz následující tvrzení 6.42), že Wi+1 je buď rovno Wi (to nastane v případě, že Ker fi+1 ⊇ Wi) a nebo má o jedničku menší dimenzi. Další věta pak ukazuje, že první možnost nastane právě tehdy, když je forma fi+1 lineární kombinací forem f1, . . . , fi. (Ekvivalentně, když je ˜ai+1 lineární kombinací vektorů ˜a1, . . . , ˜ai.) Tvrzení 6.42. Nechť V je vektorový prostor dimenze n, W je podprostor V a U je podprostor V dimenze n−1. Pokud neplatí W ⊆ U, pak dim(W∩U) = dim W−1. LINEÁRNÍ ALGEBRA 217 Důkaz. Pokud neplatí W ⊆ U, tak je U je vlastním podprostorem W + U, z čehož plyne, že W + U má dimenzi alespoň n. Vyšší dimenzi ale mít nemůže jakožto podprostor prostoru V, který má dimenzi n. Z věty 5.103 o dimenzi součtu a průniku dostáváme dim(W∩U) = dim W+dim U−dim(W+U) = dim W+n−1−n = dim W−1 . Věta 6.43. Nechť V je vektorový prostor dimenze n nad tělesem T a f1, f2, . . . , fk, g lineární formy na V. Pak následující tvrzení jsou ekvivalentní. (1) g ∈ LO {f1, . . . , fk} (2) Ker g ⊇ Ker f1 ∩ · · · ∩ Ker fk Důkaz. Jednodušší je implikace (1) ⇒ (2). Předpokládejme, že g = t1f1 +· · ·+tkfk pro nějaké skaláry t1, . . . , tk ∈ T. Pak pro libovolný vektor x ∈ Ker f1 ∩· · ·∩Ker fk platí f1(x) = f2(x) = · · · = fk(x) = o, tedy také g(x) = (t1f1 + · · · + tkfk)(x) = t1f1(x) + · · · + tkfk(x) = o. Pro důkaz (2) ⇒ (1) zvolme nějakou bázi B prostoru V. Označme C matici (typu k × n) s řádkovými vektory [f1]B , . . . , [fk]B a D matici (typu (k + 1) × n) s řádkovými vektory [f1]B , . . . , [fk]B , [g]B . Ukážeme, že Ker C = [Ker f1 ∩· · ·∩Ker fk]B. Uvažujme libovolný vektor y ∈ Tn a vektor x ∈ V takový, že [x]B = y. Vektor y leží v [Ker f1 ∩ · · · ∩ Ker fk]B právě tehdy, když x leží v Ker f1 ∩ . . . Ker fk, neboli f1(x) = · · · = fk(x) = 0. To nastane právě tehdy, když [f1]B [x]B = · · · = [fk]B [x]B = 0 (podle tvrzení 6.6). Podle definice matice C, toto je ekvivalentní podmínce C[x]B = o, neboli y ∈ Ker C. Podobně se ukáže, že Ker D = [Ker f1 ∩ · · · ∩ Ker fk ∩ Ker g]B. Z předpokladu, že Ker g obsahuje Ker f1 ∩ · · · ∩ Ker fk ale plyne Ker f1 ∩ · · · ∩ Ker fk ∩ Ker g = Ker f1 ∩ · · · ∩ Ker fk. Platí proto Ker C = Ker D. Podle věty 5.99 o dimenzi jádra a obrazu pak platí dim Im C = dim Im D (= n − dim Ker C = n − dim Ker D) a z věty 5.88 o rovnosti dimenze řádkového a sloupcového prostoru dostáváme dim Im CT = dim Im DT . Řádkový prostor matice C je podprostorem řádkového prostoru matice D, proto z rovnosti dimenzí vyplývá Im CT = Im DT . Tím pádem je poslední řádek [g]B matice D lineární kombinací řádků matice C, takže existují skaláry t1, . . . , tk takové, že [g]B = t1[f1]B + · · · + tk[fk]B = [t1f1 + · · · + tkfk]B Rovnají-li se matice lineárních forem vzhledem k nějaké bázi, pak se lineární formy rovnají, tedy konečně dostáváme g = t1f1 + · · · + tkfk . Předchozí diskuze nám rovněž umožňuje lépe nahlédnout, proč se dimenze sloupcového prostoru matice A (typu m × n) rovná dimenzi řádkového prostoru matice A. Vypočítáme dvěma způsobu dimenzi Ker A. Nejprve sloupcově. Podle věty o dimenzi jádra a obrazu platí dim Ker A = n−dim Im A. To si můžeme představovat tak, že každý bázový sloupec nám ubere jeden stupeň volnosti při řešení soustavy Ax = o. Dimenze množiny řešení této soustavy je tak rovná n minus počet bázových sloupců, čili n − dim Im A. 218 LIBOR BARTO A JIŘÍ TŮMA Nyní řádkový pohled. Analogicky jako pro sloupce řekneme, že řádek matice A je bázový, pokud není lineární kombinací předchozích řádků. Dimenze dim Im AT řádkového prostoru je rovna počtu bázových řádků. Přechozí diskuze ukazuje, že při postupném přidávání rovnic (=řádků matice A), každý bázový řádek sníží dimenzi prostoru řešení o 1, takže dim Ker A je rovno n minus počet bázových řádků, čili n − dim Im AT . Zdůvodnili jsme, že dim Ker A = n−dim Im A = n−dim Im AT . Z toho okamžitě vidíme, že dim Im A = dim Im AT . LINEÁRNÍ ALGEBRA 219 Shrnutí šesté kapitoly (1) Jsou-li V, W vektorové prostory nad stejným tělesem T, pak zobrazení f : V → W nazýváme lineární zobrazení (nebo homomorfismus) z V do W, pokud (a) f(u + v) = f(u) + f(v) pro libovolné u, v ∈ V a (b) f(tu) = tf(u) pro libovolné u ∈ V a t ∈ T. (2) Příklady lineárních zobrazení z R2 do R2 . (3) Jsou-li V a W vektorové prostory nad tělesem T, je-li B = (v1, v2, . . . , vn) báze v prostoru V, a jsou-li w1, w2, . . . , wn ∈ W libovolné vektory, pak existuje právě jedno lineární zobrazení f : V → W splňující f(vi) = wi pro každé i ∈ {1, 2, . . . , n}. (4) Jsou-li V, W konečně generované vektorové prostory nad tělesem T, f : V → W lineární zobrazení, B = (v1, v2, . . . , vn) báze ve V, a C báze ve W, pak matice lineárního zobrazení f vzhledem k bázím B a C je matice [f]B C = ([f(v1)]C | [f(v2)]C | · · · | [f(vn)]C) . (5) Jsou-li V, W konečně generované vektorové prostory nad tělesem T, B = (v1, v2, . . . , vn) báze prostoru V, C báze prostoru W, a f : V → W lineární zobrazení, pak pro libovolný prvek x ∈ V platí [f(x)]C = [f]B C [x]B . (6) Jsou-li V, W konečně generované vektorové prostory nad tělesem T, B báze V, C báze W a f : V → W a M matice nad tělesem T splňující [f(x)]C = M [x]B pro každý prvek x ∈ V, pak M = [f]B C . (7) Matice lineárního zobrazení fA : Tn → Tm vzhledem ke kanonickým bázím je původní matice A, tj. [fA]Kn Km = A, kde Ki značí kanonickou bázi v aritmetickám prostoru Ti . (8) Jsou-li B, C dvě báze konečně generovaného prostoru V, pak matice identického zobrazení z V do V se rovná matici přechodu od báze B k bázi C. (9) Matice přechodu od B k B je vždy identická matice. (10) Jsou-li U, V, W vektorové prostory nad tělesem T a jsou-li f : U → V a g : V → W lineární zobrazení, pak složené zobrazení gf je lineární zobrazení gf : U → W. Jsou-li navíc prostory U, V, W konečně generované a jsou-li B báze v U, C báze ve V a D báze ve W, pak platí [gf]B D = [g]C D [f]B C . (11) Jsou-li U, V vektorové prostory nad tělesem T a f : U → V vzájemně jednoznačné lineární zobrazení, pak f−1 : V → U je také lineární zobrazení. Jsou-li navíc U, V konečně generované lineátní prostory dimenze n, B báze v U a C báze ve V, pak platí [f−1 ]C B = [f]B C −1 . (12) Je-li V konečně generovaný vektorový prostor nad tělesem T, f : V → V lineární zobrazení, B, C dvě báze prostoru V, a R matice přechodu od báze B k bázi C, pak [f]B B = R−1 [f]C C R . 220 LIBOR BARTO A JIŘÍ TŮMA (13) Nechť V, W jsou vektorové prostory nad tělesem T a f : V → W je lineární zobrazení. • Pokud je f prosté, říkáme že f je monomorfismus, • pokud je f na prostor W, říkáme že f je epimorfismus, • pokud f je vzájemně jednoznačné, říkáme že f je izomorfismus, • pokud V = W, říkáme že f je endomorfismus prostoru V (nebo také lineární operátor na prostoru V), • pokud W = T = T1 , říkáme že f je lineární forma na V, • pokud je f izomorfismus a endomorfismus, říkáme, že f je automorfismus prostoru V. (14) Nechť f : V → W je lineární zobrazení. Jádrem f rozumíme množinu Ker f = {x ∈ V : f(x) = o} . Obraz (obor hodnot) f značíme Im f, tj. Im f = {f(x) : x ∈ V } . (15) Je-li f : V → W lineární zobrazení, pak f je prosté právě tehdy, když Ker f = {o}. (16) Jsou-li V, W konečně generované vektorové prostory, B je báze V, C je báze W, a f : V → W lineární zobrazení, pak • jádro Ker f je podprostorem V a platí [Ker f]B = Ker [f]B C , • obraz Im f je podprostorem W a platí [Im f]C = Im [f]B C . (17) Jsou-li V a W vektorové prostory nad tělesem T, V konečně generovaný vektorový prostor, a f : V → W lineární zobrazení, pak jsou následující tvrzení ekvivalentní. (a) Zobrazení f je prosté (monomorfismus), (b) pro každou lineárně nezávislou posloupnost (v1, . . . , vk) ve V je posloupnost (f(v1), . . . , f(vk)) lineárně nezávislá ve W, (c) existuje báze (v1, . . . , vn) prostoru V taková, že posloupnost (f(v1), . . . , f(vn)) je lineárně nezávislá v W. (18) Jsou-li V a W vektorové prostory nad tělesem T, V konečně generovaný vektorový prostor, a f : V → W lineární zobrazení, pak jsou následující tvrzení ekvivalentní. (a) Zobrazení f je na W (epimorfismus), (b) pro každou množinu generátorů {v1, . . . , vk} ve V je {f(v1), . . . , f(vk)} množina generátorů ve W, (c) existuje báze (v1, . . . , vn) prostoru V taková, že {f(v1), . . . , f(vn)} generuje W. (19) Jsou-li V a W vektorové prostory nad tělesem T, V konečně generovaný vektorový prostor, a f : V → W lineární zobrazení, pak následující tvrzení jsou ekvivalentní. (a) Zobrazení f je izomorfismus, (b) pro každou bázi (v1, . . . , vk) ve V je (f(v1), . . . , f(vk)) báze ve W, (c) existuje báze (v1, . . . , vn) prostoru V taková, že (f(v1), . . . , f(vn)) je báze ve W. (20) Je-li f : V → W izomorfismus konečně generovaných prostorů, pak platí LINEÁRNÍ ALGEBRA 221 (a) posloupnost (v1, . . . , vk) je lineárně nezávislá ve V právě tehdy, když je posloupnost (f(v1), . . . , f(vk)) lineárně nezávislá v W, (b) množina {v1, . . . , vk} generuje V právě tehdy, když množina {f(v1), . . . , f(vk)} generuje W, (c) posloupnost (v1, . . . , vk) je báze V právě tehdy, když je posloupnost (f(v1), . . . , f(vk)) báze W, (d) dim V = dim W, (e) množina M ⊆ V je podprostorem prostoru V právě tehdy, když je f(M) = {f(m) : m ∈ M} podprostorem prostoru W, (f) pokud U ≤ V, pak f zúžené na U je izomorfismem U → f(U). Speciálně dim U = dim f(U). (21) Jsou-li V, W konečně generované vektorové prostory nad tělesem T a f : V → W lineární zobrazení, pak dim(Ker f) + dim(Im f) = dim V . (22) Jsou-li V a W dva konečně generované prostory nad tělesem T, pak následující tvrzení jsou ekvivalentní. (a) Existuje izomorfismus f : V → W. (b) dim(V) = dim(W). Část 6.5. Prostor lineárních zobrazení byla vynechána a nebude zkoušena. Klíčové znalosti ze šesté kapitoly nezbytné pro průběžné sledování přednášek s pochopením (1) Definice lineárního zobrazení. (2) Každé lineární zobrazení na konečně generovaném vektorovém prostoru je jednoznačně určené svými hodnotami na prvcích jakékoliv báze. Tyto hodnoty můžeme zvolit libovolně. (3) Matice [f]B C lineárního zobrazení f : V → W vzhledem k bázi B v prostoru V a bázi C v prostoru W. (4) Formule [f(x)]C = [f]B C [x]B . (5) Složení dvou lineárních zpobrazení je lineární zobrazení. (6) Formule [gf]B D = [g]C D [f]B C pro matici složeného zobrazení. (7) Inverzní zobrazení ke vzájemně jednoznačnému lineárnímu zobrazení je opět lineární zobrazení. (8) Formule [f−1 ]C B = [f]B C −1 pro matici inverzního zobrazení. (9) Formule [f]B B = [id]C B [f]C C [id]B C vyjadřující vztah mezi maticemi endomorfismu f vzhledem ke dvěma různým bázím. (10) Definice jádra a oboru hodnot lineárního zobrazení. (11) Charakterizace monomorfismů, epimorfismů a isomorfismů pomocí hodnot na nějaké bázi. (12) Dva konečně generované vektorové prostory jsou isomorfní právě když mají stejnou dimenzi. (13) Věta o dimenzi jádra a obrazu lineárního zobrazení definovaného na konečně generovaném vektorovém prostoru. 222 LIBOR BARTO A JIŘÍ TŮMA 7. Determinant Cíl. Budeme se věnovat pojmu determinantu matice. Motivací je porozumění, jak zobrazení určené maticí mění obsah (v R2 ) a objem (v R3 ). K definici budeme potřebovat permutace, naučíme se je různými způsoby zapisovat a určovat znaménko. 7.1. Motivace. Čtvercová matice A řádu n nad R určuje zobrazení fA : Rn → Rn . Tato zobrazení mají tu vlastnost, že násobí n-dimenzionální objemy (obsahy v případě n = 2, objemy v případě n = 3) konstantním číslem. Toto číslo je rovno absolutní hodnotě tzv. determinantu, který zavedeme v této kapitole. Znaménko determinantu určuje, zda zobrazení mění „orientaci prostoru . Například pokud je determinant matice A řádu 2 rovný 1,3, příslušné zobrazení násobí obsah každého útvaru číslem 1,3 a nemění orientaci. To, že se orientace nemění si lze představit tak, že obraz lze dostat spojitou deformací roviny z původního útvaru (přesněji, tato deformace musí body původního obrázku převádět na odpovídající body obrazu). Pokud je determinant A rovný −1,3, pak zobrazení násobí obsah každého útvaru číslem 1,3 a orientaci mění. F F F A = I2 det A = 1,3 det A = −1,3 Odvodíme si vzorec na výpočet determinantu v případě reálných čtvercových matic řádu n = 2 a n = 3. V obecné definici pro větší n a nad jinými tělesy vizuální představa chybí, ale determinant můžeme definovat stejně a bude mít podobné vlastnosti. 7.1.1. Determinant v R2 . Budeme se snažit odvodit vzorec pro determinant čtvercových matic A řádu 2. Matici se sloupci u, v budeme značit (u|v) a její determinant det (u|v). Číslo det (A), kde A = (u|v), má vyjadřovat změnu obsahu a orientace při zobrazení fA. Protože zobrazení fA zobrazuje vektor e1 = (1, 0)T na vektor Ae1 = u a vektor e2 = (0, 1)T na vektor Ae2 = v, fA zobrazuje jednotkový čtverec se stranami e1, e2 na rovnoběžník se stranami u, v. fA(e1) fA(e2) e1 e2 Obsah tohoto rovnoběžníku můžeme vyjádřit vhodným doplněním na obdélník a znaménko určit diskuzí možné vzájemné polohy vektorů u a v. Podíváme se na jiný postup, který se nám rovněž bude hodit v obecnější situaci. LINEÁRNÍ ALGEBRA 223 Když vynásobíme jeden z vektorů číslem t ∈ R, pak se obsah výsledného rovnoběžníku zvětší (nebo zmenší) |t|-krát. Přitom orientace se pro kladné t nezmění a pro záporná t změní. Dostáváme vztahy det (tu|v) = t det (u|v) = det (u|tv) . Z následujícího obrázku můžeme nahlédnout (stačí přesunout trojúhelník ...), že platí det (u1 + u2|v) = det (u1|v) + det (u2|v) a podobný vztah platí, když součet je v druhém sloupci. det (u|v1 + v2) = det (u|v1) + det (u|v2) u2 u2 v v v u1 u1 u1+u2 u1+u2 det(u1|v) det(u2|v) u2 u2 v v v u1 u1 u1+u2 u1+u2 det(u1 + u2|v) Ještě si uvědomíme, že det (e1, e2) = 1, det (e2, e1) = −1 , det (e1, e1) = det (e2, e2) = 0 protože první matice odpovídá identickému zobrazení, které nemění obsah ani orientaci, druhá matice odpovídá překlopení kolem osy prvního kvadrantu, která nemění obsah a mění orientaci, třetí a čtvrtá matice odpovídá zobrazení, která čtverci přiřadí „zdegenerovaný rovnoběžník – úsečku. Z odvozených vztahů již jde spočítat determinant obecné matice A = (u|v) = a11 a12 a21 a22 . det (A) = det (u|v) = det (a11e1 + a21e2|a12e1 + a22e2) = det (a11e1|a12e1 + a22e2) + det (a21e2|a12e1 + a22e2) = = det (a11e1|a12e1) + det (a11e1|a22e2) + + det (a21e2|a12e1) + det (a21e2|a22e2) = = a11a12 det (e1|e1) + a11a22 det (e1|e2) + + a21a12 det (e2|e1) + a21a22 det (e2|e2) = = a11a22 − a21a12 Determinant jsme odvodili použitím jednotkového čtverce. Obecně obsah a orientace obrazu libovolného útvaru (u nějž lze měřit obsah) se změní tak, jak udává determinant. Tento fakt nebudeme odvozovat. 224 LIBOR BARTO A JIŘÍ TŮMA 7.1.2. Determinant v R3 . Pro matice řádu 3 udává determinant změnu objemu a orientace. Pro zobrazení fA určené maticí A = (u|v|w) je obrazem jednotkové krychle se stranami e1, e2, e3 rovnoběžnostěn se stranami u, v, w. Z geometrického náhledu dostáváme podobné vztahy jako v případě R2 . det (tu|v|w) = det (u|tv|w) = det (u|v|tw) = t det (u|v|w) det (u1 + u2 + u3|v|w) = det (u1|v|w) + det (u2|v|w) + det (u3|v|w) Podobný vztah platí, když součet je ve druhém nebo třetím sloupci. K výpočtu ještě potřebujeme determinanty matic, jejichž sloupce jsou vektory v kanonické bázi. Pokud jsou dva ze sloupců stejné, pak příslušné zobrazení degeneruje krychli na čtverec, nebo dokonce úsečku, takže determinant je 0. Dále det (e1, e2, e3) = det (e2, e3, e1) = det (e3, e1, e2) , protože příslušná zobrazení jsou rotace, které orientaci nemění. Zbývají tři matice, jejichž determinant je −1, protože příslušná zobrazení jsou zrcadlení a ta orientaci mění. det (e1, e3, e2) = det (e2, e1, e3) = det (e3, e2, e1) , Determinant teď můžeme spočítat jako v případě n = 2, výrazy ale budou poněkud delší. A = (u|v|w) =   a11 a12 a13 a21 a22 a23 a31 a32 a33   . det (A) = det (u|v|w) = = det (a11e1 + a21e2 + a31e3|a12e1 + a22e2 + a32e3|a13e1 + a23e2 + a33e3) = 3 k=1 3 l=1 3 m=1 ak1al2am3 det (ek, el, em) = = a11a22a33 det (e1, e2, e3) + a11a32a23 det (e1, e3, e2) + + a21a12a33 det (e2, e1, e3) + a21a32a13 det (e2, e3, e1) + + a31a12a23 det (e3, e1, e2) + a31a22a13 det (e3, e2, e1) = = a11a22a33 + a21a32a13 + a31a12a23 − a11a32a23 − a31a22a13 − a21a12a33 Každý sčítanec je součinem třech prvků matice ak1al2am3, kde k, l, m jsou navzájem různé, se znaménkem odpovídajícím orientaci trojice ek, el, em. Jeden sčítanec tedy odpovídá výběru jednoho prvku s prvního sloupce, jednoho prvku z druhého sloupce a jednoho prvku z třetího sloupce, kde prvky vybíráme s navzájem různých řádků (ostatní členy budou nulové). 7.2. Permutace. Výpočet vzorce pro „vícerozměrný objem by probíhal podobně. Museli bychom zjistit, která pořadí vektorů kanonické báze odpovídají kladné orientaci a která záporné. To lze pomocí pojmu znaménka permutace, které definujeme v této části. Děláme tím malý výlet z lineární algebry do algebry obecné. Permutaci definujeme jako bijekci množiny na sebe samu. Definice 7.1. Permutací množiny X rozumíme bijekci X → X. Množinu všech permutací na množině X značíme SX. Pro množinu permutací na množině X = {1, 2, . . . , n}, kde n je přirozené číslo, také používáme značení Sn. LINEÁRNÍ ALGEBRA 225 Nejčastěji budeme používat permutace na konečné množině, konkrétně množině {1, 2, . . . , n}. Pro konečnou množinu X je každé prosté zobrazení X → X již bijekcí, a také každé zobrazení X → X na je bijekcí. (Připomeňme, že ani jedna z těchto implikací není pravdivá pro nekonečné množiny.) Význačnou permutací na X je identické zobrazení idX : X → X, pro něž idX(x) = x pro každé x ∈ X. Protože inverzní zobrazení k bijekci je bijekce, je inverzní zobrazení π−1 k permutaci π na X opět permutace na X. Složením permutací je rovněž permutace. Složení permutací ρ a σ značíme σ ◦ ρ nebo σρ, tj. σρ(x) = σ(ρ(x)). Množina SX spolu s těmito operacemi opět splňuje vlastnosti podobné sčítání v tělese, nebo sčítání ve vektorovém prostoru, s výjimkou komu- tativity: (1) Pro libovolné π, ρ, σ ∈ SX platí π(ρσ) = (πρ)σ. (2) Pro libovolné π ∈ SX platí idX π = π idX = π. (3) Pro libovolné π ∈ SX platí ππ−1 = π−1 π = idX. Tím pádem nemusíme při skládání psát závorky a také můžeme řešit jednoduché rovnice typu αρβ = γ, kde α, β, γ jsou dané permutace, podobným způsobem jako pro čísla, akorát musíme dát pozor na nekomutativitu. 7.2.1. Zápis permutace. Permutaci π na konečné množině X můžeme zapsat tabulkou, kdy do horního řádku napíšeme v nějakém pořadí prvky množiny X a pod každý prvek x ∈ X napíšeme jeho obraz π(x). Například permutaci π ∈ S8 danou vztahy π(1) = 7, π(2) = 6, π(3) = 1, π(4) = 8, π(5) = 5, π(6) = 4, π(7) = 3, π(8) = 2 můžeme zapsat π = 1 2 3 4 5 6 7 8 7 6 1 8 5 4 3 2 = 6 4 7 2 8 1 3 5 4 8 3 6 2 7 1 5 . Tabulkou můžeme zapsat libovolné zobrazení z X do X (nebo i do jiné množiny). To, že π je permutace, se v tabulce projeví tak, že v druhém řádku bude každý prvek množiny X právě jednou. Další možností je si permutaci nakreslit. Prvky X si nakreslíme jako body (tzv. vrcholy) a pro každé x ∈ X si nakreslíme šipku (tzv. hranu) z x do π(x). Takovému obrázku říkáme graf permutace π. Protože π je zobrazení, vede z každého bodu právě jedna šipka, a protože je to bijekce, vede do každého bodu právě jedna šipka. 1 2 3 4 5 6 7 8 Obrázek 67. Obrázek permutace Když graf trochu překreslíme, vidíme, že permutace je sjednocením nezávislých cyklů. To není náhoda, každá permutace je složením nezávislých cyklů. Definice 7.2. Cyklus délky k je permutace na X splňující π(x1) = x2, π(x2) = x3, . . . , π(xk−1) = xk, π(xk) = x1 a π(y) = y pro každé y ∈ X \ {x1, x2, . . . , xk}, kde x1, x2, . . . , xk jsou po dvou různé prvky X. Zapisujeme π = (x1 x2 . . . xk). 226 LIBOR BARTO A JIŘÍ TŮMA 1 7 3 2 6 48 5 Obrázek 68. Lepší obrázek permutace Cykly nazýváme nezávislé, pokud jsou množiny prvků vyskytující se v cyklech disjunktní. Transpozice je cyklus délky 2, tj. permutace tvaru π = (x y). Všimněte si, že pořadí prvků v cyklu můžeme cyklicky otočit a dostaneme stejnou permutaci: (x1 x2 . . . xk) = (x2 . . . xk x1) = · · · = (xk x1 x2 . . . xk−1) Jak najít pro danou permutaci π rozklad na nezávislé cykly aniž bychom kreslili obrázek? Zvolíme libovolný výchozí prvek x1 a podíváme se na jeho obraz x2 = π(x1), pak se podíváme na jeho obraz x3 = π(x2), atd. Když poprvé narazíme na prvek, který se již vyskytl, tj. xk+1 = xi pro nějaké i ≤ k, pak nutně i = 1, jinak by π zobrazovala dva různé prvky xi−1 a xk na stejný prvek xi. Takže máme π(xk) = x1 a můžeme cyklus uzavřít. Pokud jsou v množině X ještě jiné prvky, vybereme kterýkoliv z nich a nalezneme další cykly. Tyto cykly musí být nezávislé, jinak bychom opět měli dva prvky, které se zobrazí do stejného prvku, a zobrazení π by nebylo prosté. Naznačili jsme důkaz, že rozklad na nezávislé cykly je možný. Pořadí skládání nezávislých cyklů můžeme libovolně měnit (na rozdíl od obecných cyklů) a až na tuto skutečnost je rozklad jednoznačný. Detaily si rozmyslete jako cvičení. Tvrzení 7.3. Každou permutaci na konečné množině X lze zapsat jako složení nezávislých cyklů. Tento zápis je jednoznačný až na pořadí cyklů (a cykly délky 1). Příklad 7.4. Podle návodu rozložíme naší permutaci π na nezávislé cykly. Začneme například s prvkem 1. Jeho obraz je π(1) = 7, obraz 7 je π(7) = 3 a obraz 3 je π(3) = 1. Nalezli jsme první cyklus (1 7 3). Nyní vezmeme nějaký prvek, který se doposud neobjevil, třeba 2. Spočítáme π(2) = 6, π(6) = 4, π(4) = 8, π(8) = 2 a nalezli jsme další cyklus (2 6 4 8). Zbývá prvek 5, který je pevným bodem, tj. π(5) = 5, což můžeme zapsat cyklem (5) délky 1 (to je identická permutace), chceme-li tento fakt zdůraznit. Celkově tedy máme π = (1 7 3)(2 6 4 8) . Pořadí skládání můžeme díky nezávislosti prohodit a rovněž můžeme v tomto zápisu cyklicky otáčet prvky v závorkách, protože tím vznikají pouze různé zápisy stejné permutace. Takže například také π = (6 4 8 2)(3 1 7) . LINEÁRNÍ ALGEBRA 227 Cyklickým zápisem rozumíme rozumíme zápis pomocí nezávislých cyklů s vyznačenými pevnými body, například π = (1 7 3)(2 6 4 8)(5) . Pokud pevné body neuvádíme, hovoříme o redukovaném cyklickém zápisu. Cyklický (nebo redukovaný cyklický) zápis je většinou daleko výhodnější než zápis tabulkou, protože lépe vidíme, co permutace „dělá . Zápis tabulkou budeme dále používat jen zřídka. Na příkladu si rozmyslíme, jak permutace invertovat a skládat v cyklickém zá- pisu. Příklad 7.5. Inverzní permutace přiřadí každému prvku jeho vzor. Pro permutaci π = (1 7 3)(2 6 4 8) je například π−1 (3) = 7, protože π(7) = 3. Stačí tedy převrátit pořadí prvků v cyklu. Na obrázku bychom otočili směr šipek. π−1 = (1 3 7)(2 8 4 6) Na tomto místě si rovněž uvědomme, že inverzní permutace k transpozici je tatáž transpozice. (i j)−1 = (i j) ( = (j i) ) Vypočítáme složení permutace π a permutace ρ = (1 7 4 6)(2 8)(3 5): ρπ = (1 7 4 6)(2 8)(3 5)(1 7 3)(2 6 4 8) = (1 4 2)(3 7 5) Cyklový zápis tvoříme jako pro samotnou permutaci: vyjdeme z libovolného prvku, podíváme se, kam ho složená permutace zobrazí a takto pokračujeme. Vyšli jsme z prvku 1, permutace π ho zobrazí na 7 a permutace ρ prvek 7 zobrazí na 4, takže složená permutace ρπ zobrazí prvek 1 na prvek 4, tj. za 1 napíšeme číslo 4. Číslo 4 permutace π zobrazí na 8 a permutace ρ zobrazí číslo 8 na 2, takže píšeme 2, atd. Ještě jednou připomeňme, že skládání komutativní není (ale třeba nezávislé cykly spolu komutují). Složením ρ a π vyjde permutace πρ = (1 3 5)(6 7 8) , což je jiná permutace než ρπ. Má ale stejnou strukturu – má stejně jako ρπ dva cykly délky 3. To není náhoda, viz cvičení. Každý cyklus lze zapsat jako složení transpozic, například (x1 x2 . . . xk) = (x1 x2)(x2 x3) . . . (xk−1 xk) nebo (x1 x2 . . . xk) = (x1 xk) . . . (x1 x3)(x1 x2) . Ověřte obě rovnosti! Protože každá permutace je složením cyklů (dokonce nezávislých), můžeme každou permutaci napsat jako složení transpozic. Dokázali jsme Tvrzení 7.6. Každá permutace na konečné množině je složením transpozic. Tvrzení vlastně říká, že jakkoliv promícháme prvky množiny, lze původní uspořádání dostat postupným prohazováním dvojic. Zápis permutace jako složení transpozic není samozřejmě jednoznačný, například (1 2 3) = (1 3)(1 2) = (1 2)(2 3) = (1 2)(2 3)(1 2)(1 2) = (1 2)(1 3)(2 3)(1 2) = . . . 228 LIBOR BARTO A JIŘÍ TŮMA 7.2.2. Znaménko. I když každou permutaci můžeme zapsat jako složení transpozic mnoha způsoby, parita počtu transpozic (tj. zda je počet sudý nebo lichý) se nemění. K důkazu tohoto tvrzení si nejdřív všimneme jak se mění počet cyklů v cyklovém zápisu při složení s transpozicí. V následujícím tvrzení počítáme i cykly délky jedna. Tvrzení 7.7. Nechť X je konečná množina, π ∈ SX a (x y) ∈ SX. Pak počet cyklů v permutaci (x y)π a π se liší o 1 a počet sudých cyklů v permutaci (x y)π a π se rovněž liší o 1. Důkaz. Rozebereme dva případy. Nejprve předpokládejme, že x a y leží ve stejném cyklu (x = x1 x2 . . . xk y = y1 y2 . . . yl) permutace π. Pak (x y)π = (x y) . . . (x x2 . . . xk y y2 . . . yl) . . . = . . . (x x2 . . . xk)(y y2 . . . yl) . . . , kde ostatní cykly permutace π zůstanou beze změny. Počet cyklů se v tomto případě zvýší o 1. Rozborem případů dostaneme druhou část tvrzení (například pokud k i l je sudé, pak se počet sudých cyklů zvětší o jedna, pokud k je sudé a l je liché, pak se počet sudých cyklů také zvětší o jedna, atd.). Pokud jsou prvky x a y v různých cyklech (x = x1 x2 . . . xk), (y = y1 y2 . . . yl), pak (x y)π = (x y) . . . (x x2 . . . xk)(y y2 . . . yl) . . . = . . . (x x2 . . . xk y y2 . . . yl) . . . , takže se počet cyklů sníží o 1. Druhou část získáme opět rozborem případů. Důsledkem je, že parita počtu transpozic je stejná v libovolném zápisu permutace jako složení transpozic. Tuto paritu navíc poznáme podle počtu cyklů sudé délky v cyklickém zápisu permutace. Důsledek 7.8. Pro libovolnou permutaci π na konečné množině X nastane jedna z následujících možností: (1) Každý zápis π jako složení transpozic obsahuje sudý počet transpozic. To nastane právě tehdy, když počet cyklů sudé délky v (redukovaném) cyklickém zápisu permutace π je sudý. (2) Každý zápis π jako složení transpozic obsahuje lichý počet transpozic. To nastane právě tehdy, když počet cyklů sudé délky v (redukovaném) cyklickém zápisu permutace π je lichý. Důkaz. Je-li π složením transpozic ρ1ρ2 . . . ρk, pak několikanásobnou aplikací předchozího tvrzení dostaneme, že parita počtu cyklů sudé délky v permutaci π je rovná paritě k: Počet cyklů sudé délky v permutaci ρk je lichý (jeden cyklus délky 2), v permutaci ρk−1ρk je sudý, atd. Tento důsledek nám umožňuje zavést znaménko permutace. Definice 7.9. Permutace π na konečné množině X se nazývá sudá, pokud nastane možnost (1) v důsledku 7.8. Rovněž říkáme, že znaménko π je 1 a píšeme sgn(π) = 1. V opačném případě je π lichá, má znaménko −1 a definujeme sgn(π) = −1. Znaménko snadno vypočteme z (redukovaného) cyklického zápisu. Stačí spočítat počet cyklů sudé délky. Znaménko lze také určit podle počtu všech cyklů v cyklickém zápisu, viz cvičení. Příklad 7.10. sgn ((1 2 3 4)(5 6 7)(8 9)(10 11)) = −1 protože má permutace v cyklickém zápisu 3 cykly sudé délky. LINEÁRNÍ ALGEBRA 229 Znaménko inverzní permutace a složené permutace je určené znaménkem původních permutací. Tvrzení 7.11. Nechť X je konečná množina a π, ρ ∈ SX. Pak platí (1) sgn(idX) = 1, (2) sgn(π−1 ) = sgn(π) a (3) sgn(πρ) = sgn(π) sgn(ρ). Důkaz. (1) Identická permutace má 0 cyklů sudé délky. (2) Inverzní permutace má stejný počet cyklů sudé délky. (3) Pokud π lze zapsat jako složení k transpozic, tj. sgn(π) = (−1)k , a ρ lze zapsat jako složení l transpozic, tj. sgn(ρ) = (−1)l , pak πρ lze zapsat jako složení k + l transpozic, tj. sgn(πρ) = (−1)k+l = (−1)k (−1)l = sgn(π) sgn(ρ). Slovy, identická permutace je sudá, inverzní permutace k sudé (resp. liché) je sudá (resp. lichá), složením dvou sudých nebo dvou lichých permutací je sudá permutace a složením liché a sudé permutace v libovolném pořadí je lichá permutace. Příklad 7.12. Ve hře „15 máme čtvercovou krabičku se 4 × 4 políčky, v níž jsou kostičky číslované 1 až 15 a jedno prázdné políčko, pomocí něhož jdou kostičky vodorovně nebo svisle přesouvat. Ukážeme, že základní pozici na obrázku vlevo nelze získat z pozice na obrázku vpravo. 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 1 2 3 4 5 6 7 8 9 10 11 12 13 15 14 Obrázek 69. Hra 15 Místa v krabičce si očíslujeme podle základní pozice. Místo vpravo dole očíslujeme 16. Libovolnou pozici zapíšeme pomocí permutace π ∈ S16 tak, že definujeme π(i) = j, pokud se na místě i nalézá kostička s číslem j. Jeden tah je vlastně prohozením umístění prázdného políčka a nějaké kostičky i ∈ {1, 2, . . . , 15}. Nová pozice tedy odpovídá permutaci (16 i)π. Obarvíme ještě desku hlavolamu dvěma barvami jako šachovnici 4 × 4, tj. aby bílé místo vždy hranově sousedilo pouze s černými místy a naopak. Zvolme třeba obarvení, kdy levý horní roh (a také pravý dolní) je bílý. Budeme si všímat parity permutace π a barvy prázdného políčka. Na začátku vyjdeme z pozice odpovídající liché permutaci (14 15) a prázdné políčko je bílé. Po provedení jednoho tahu permutace π změní paritu a rovněž se změní barva prázdného políčka, protože bílá místa sousedí pouze s černými a naopak. Z toho plyne, že 230 LIBOR BARTO A JIŘÍ TŮMA • po provedení sudého počtu tahů bude π lichá a prázdné políčko bude bílé; • po provedení lichého počtu tahů bude π sudá a prázdné políčko bude černé. Ani v jednom z obou případů nemůžeme získat základní pozici, pro kterou je permutace π sudá (je to identická permutace) a prázdné políčko je bílé. 7.2.3. Počet permutací. Jak již asi víte, počet permutací na n-prvkové množině X = {x1, x2, . . . , xn} je n!. Máme totiž n možností, kam zobrazit x1, pak n − 1 možností, kam zobrazit x2, atd. Dohromady n(n − 1) . . . 1 = n!. Počet lichých permutací spočítáme z následujícího pozorování, které také použijeme pro důkazy tvrzení o determinantech. Tvrzení 7.13. Nechť X je konečná množina a π ∈ SX. Pak platí: (1) Soubor (ρ−1 : ρ ∈ SX), soubor (πρ : ρ ∈ SX) i soubor (ρπ : ρ ∈ SX) obsahuje každou permutaci v SX právě jednou. (2) Pokud π je lichá, pak soubor (πρ : ρ ∈ SX, sgn(ρ) = 1) i soubor (ρπ : ρ ∈ SX, sgn(ρ) = 1) obsahuje pouze liché permutace v SX, každou právě jednou. Důkaz. Rovnice σ = ρ−1 má pro dané σ právě jedno řešení ρ = σ−1 . (Rozmyslete si podrobně toto i další tvrzení použitá v tomto důkazu. Zdůvodnění je podobné jako v tvrzení 3.3 o vlastnostech těles.) To znamená, že každou permutaci σ lze zapsat ve tvaru ρ−1 právě jedním způsobem, tj. soubor (ρ−1 : ρ ∈ SX) obsahuje každou permutaci v SX právě jednou. Rovnice σ = πρ má pro dané σ a π právě jedno řešení ρ = π−1 σ. Z toho plyne, že v souboru (πρ : ρ ∈ SX) je každá permutace právě jednou. Podobně pro třetí soubor v části (1). Pokud jsou permutace σ a π liché, pak ρ = π−1 σ je sudá, protože sgn(π−1 σ) = sgn(π−1 ) sgn(σ) = sgn(π) sgn(σ) = (−1)(−1) = 1 (viz tvrzení 7.11). Každou lichou permutaci lze tedy zapsat ve tvaru πρ, kde ρ je sudá, právě jedním způsobem. Navíc πρ je lichá, pokud π je lichá a ρ je sudá. Z toho plyne první část bodu (2). Druhá část se dokáže podobně. Tvrzení můžeme formulovat v jazyku zobrazení. Například druhá část tvrzení v bodě (1) říká, že zobrazení f : SX → SX definované f(ρ) = πρ je bijekce. První část bodu (2) říká, že je-li π lichá, pak zobrazení f definované stejným předpisem je bijekcí z množiny všech sudých permutací v SX na množinu všech lichých permutací v SX. Důsledkem je, že počet lichých permutací na n-prvkové množině X je stejný jako počet sudých permutací na X, kdykoliv na X nějaká lichá permutace existuje, tj. v případě n > 1. Pro n > 1 je tedy počet lichých i sudých permutací n!/2. 7.3. Definice determinantu a základní vlastnosti. Připomeňme, že determinant reálné čtvercové matice A = (u|v|w) řádu 3 určuje, jak zobrazení fA mění objem a orientaci. Jeho absolutní hodnota je rovna objemu rovnoběžnostěnu o stranách u, v, w. Odvodili jsme vzorec det   a11 a12 a13 a21 a22 a23 a31 a32 a33   = = a11a22a33 + a21a32a13 + a31a12a23 − a11a32a23 − a31a22a13 − a21a12a33 . Každý člen součtu je součin třech prvků ak1al2am3, kde k, l, m jsou navzájem různé, a znaménko udává orientaci trojice vektorů (ek, el, em). Každý člen lze tedy zapsat jako aπ(1)1aπ(2)2aπ(3)3, kde π ∈ S3 je permutace π(1) = k, π(2) = l, π(3) = m a LINEÁRNÍ ALGEBRA 231 všimněte si, že znaménko členu je rovno znaménku permutace π. To geometricky odpovídá tomu, že prohodíme-li dva vektory kanonické báze, orientace se změní. 7.3.1. Definice. Podobně definujeme determinant libovolné čtvercové matice nad libovolným tělesem. Definice 7.14. Je-li A = (aij) čtvercová matice nad tělesem T řádu n, pak definujeme determinant matice A předpisem det (A) = π∈Sn sgn(π)aπ(1),1aπ(2),2 . . . aπ(n),n . Determinant tedy přiřadí čtvercové matici nad T prvek tělesa T. Součet má n! členů, jeden pro každou permutaci π ∈ Sn. Sčítanec odpovídající permutaci π je součinem n prvků matice, z každého sloupce i obsahuje součin prvek aπ(i),i, znaménko sčítance je rovné znaménku permutace π. (Pro přehlednost oddělujeme indexy prvků matice čárkou.) Pro determinant matice A se také užívá značení |A|. Příklad 7.15. V případě n = 2 máme dvě permutace v S2 – identickou permutaci a transpozici (1 2). Identická permutace je sudá a odpovídající sčítanec je a11a22, transpozice je lichá a odpovídající sčítanec je −a21a12. Dostáváme stejný vzorec jako dříve: det a11 a12 a21 a22 = a11 a12 a21 a22 = a11a22 − a21a12 Například cos(α) − sin(α) sin(α) cos(α) = cos2 (α) + sin2 (α) = 1 , což není překvapivé, protože rotace o α nemění ani obsah ani orientaci. (Při zápisu determinantu pomocí svislých čar vynecháváme kulaté závorky.) Příklad 7.16. V případě n = 3 máme šest permutací v S3 – identické permutace a trojcykly jsou sudé, transpozice jsou liché. Odpovídající sčítanci jsou: π id a11a22a33 (1 2 3) a21a32a13 (1 3 2) a31a12a23 (2 3) −a11a32a23 (1 3) −a31a22a13 (1 2) −a21a12a33 a opět dostáváme vzorec odvozený výše. Mnemotechnickou pomůckou je tzv. Sarrusovo pravidlo na obrázku. Počítat matice z definice není vhodné už pro matice řádu 3, je lepší využít jiné metody. Sarrusovo pravidlo tedy nebudeme používat. V případě n = 4 má již výraz 24 členů (vypište je jako cvičení) a definice je pro výpočet již zcela nevhodná. Všimněte si, že pravidlo podobné Sarrusovu pro matice řádu n > 3 neplatí. 232 LIBOR BARTO A JIŘÍ TŮMA a11 a12 a13 a21 a22 a23 a31 a32 a33 a11 a12 a13 a21 a22 a23 −a31a22a13 (1 3) −a11a32a23 (2 3) −a21a12a33 (1 2) +a12a22a33 id +a21a32a13 (1 3 2) +a31a12a23 (1 2 3) π Obrázek 70. Sarrusovo pravidlo 7.3.2. Základní vlastnosti. Pro horní trojúhelníkové matice vypočítáme determinant jako součin prvků na diagonále. Tvrzení 7.17. Je-li A horní trojúhelníková matice, pak det (A) = a11a22 . . . ann. Důkaz. Podívejme se na jeden sčítanec sgn(π)aπ(1),1aπ(2),2 . . . aπ(n),n v definici determinantu. Pokud je jeden z činitelů v tomto součinu nulový, celý sčítanec je roven nule a můžeme jej ignorovat. První sloupec matice A je celý nulový, až na hodnotu a11, která může být nenulová. Pokud tedy π(1) > 1, pak aπ(1),1 = 0 a sčítanec je nulový. Předpokládejme proto π(1) = 1. Podobně, pokud π(2) > 2 můžeme na sčítanec zapomenout, protože aπ(2),2 = 0. Takže můžeme předpokládat π(2) ≤ 2. Ale π(2) nemůže být 1, protože máme π(1) = 1 a π je prosté zobrazení, čili π(2) = 2. Postupně dostáváme π(3) = 3, π(4) = 4, . . . , π(n) = n. Jediný možná nenulový sčítanec tedy odpovídá identické permutaci, ta je sudá, takže det A = a11a22 . . . ann. Pro matice 2 × 2 nad R je geometrické vysvětlení na obrázku ??. Rovnoběžník o stranách (a11, 0)T , (a21, a22)T má stejný obsah jako obdélník o stranách (a11, 0)T a (0, a22)T , protože oba rovnoběžníky mají stejnou výšku. Také mají stejnou orientaci. OBRAZEK Podobně bychom mohli dokázat, že determinant dolní trojúhelníkové matice je součin prvků na diagonále. Dělat to ale nebudeme, dokážem obecněji, že determinant se nezmění transponováním. Tvrzení 7.18. Pro libovolnou čtvercovou matici A platí det (A) = det AT . Důkaz. Sčítanec v definici det AT odpovídající permutaci π je sgn(π)a1,π(1)a2,π(2) . . . an,π(n) . Součin lze přeuspořádat na sgn(π)aπ−1(1),1aπ−1(2),2 . . . aπ−1(n),n , LINEÁRNÍ ALGEBRA 233 protože π−1 (i)-tý činitel v původním součinu je roven aπ−1(i)π(π−1(i)) = aπ−1(i),i. Tento činitel jsme přesunuli na i-té místo. Máme det AT = π∈Sn sgn(π)a1,π(1)a2,π(2) . . . an,π(n) = π∈Sn sgn(π)aπ−1(1),1aπ−1(2),2 . . . aπ−1(n),n = π∈Sn sgn(π−1 )aπ−1(1),1aπ−1(2),2 . . . aπ−1(n),n = π∈Sn, ρ=π−1 sgn(ρ)aρ(1),1aρ(2),2 . . . aρ(n),n = ρ∈Sn sgn(ρ)aρ(1),1aρ(2),2 . . . aρ(n),n = det (A) . Ve třetí úpravě jsme použili vztah sgn(π−1 ) = sgn(π) (viz tvrzení 7.11) a v páté úpravě jsme začali sčítat přes inverzy permutací, což výsledek nezmění, protože soubor (π−1 : π ∈ Sn) obsahuje všechny permutace v Sn právě jednou (viz tvrzení 7.13). Dokázané tvrzení jinými slovy říká, že det (A) = π∈Sn sgn(π)a1,π(1)a2,π(2) . . . an,π(n) , což je trochu tradičnější verze definice. Tvrzení se hodí se k tomu, že věty, které dokážeme pro řádky, budeme moci použít i pro sloupce. Teď dokážeme vlastnosti determinantu použité při odvození vzorců v dimenzi 2 a 3 nad R, jsou to body (1) a (2) v následujícím tvrzení. Zároveň spočítáme, jak se mění determinant při elementárních sloupcových úpravách, to jsou body (2), (3) a (4). Tvrzení 7.19. Nechť T je těleso, n ∈ N, i, j ∈ {1, 2, . . . , n}, i = j, u, v1, v2, . . . , vn ∈ Tn , t ∈ T a ρ ∈ Sn. Pak platí. (1) det (v1|v2| . . . |vi−1| vi + u |vi+1| . . . |vn) = det (v1| . . . |vi−1| vi |vi+1| . . . |vn) + det (v1| . . . |vi−1| u |vi+1| . . . |vn) (2) det (v1|v2| . . . |vi−1| tvi |vi+1| . . . |vn) = t det (v1|v2| . . . |vn) (3) det vρ(1)|vρ(2)| . . . |vρ(n) = sgn(ρ) det (v1|v2| . . . |vn) (4) det (v1|v2| . . . |vi−1|vi + tvj|vi+1| . . . |vn) = det (v1|v2| . . . |vn) Důkaz. Označíme A = (aij) = (v1|v2| . . . |vn), čili aij je i-tá složka vektoru vj. 234 LIBOR BARTO A JIŘÍ TŮMA (1) Označíme-li u = (b1, b2, . . . , bn), platí det (v1|v2| . . . |vi−1| vi + u |vi+1| . . . |vn) = π∈Sn sgn(π)aπ(1),1aπ(2),2 . . . aπ(i−1),i−1(aπ(i),i + bπ(i))aπ(i+1),i+1 . . . aπ(n),n = π∈Sn (sgn(π)aπ(1),1aπ(2),2 . . . aπ(n),n+ + sgn(π)aπ(1),1aπ(2),2 . . . aπ(i−1),i−1bπ(i)aπ(i+1),i+1 . . . aπ(n),n) = π∈Sn sgn(π)aπ(1),1aπ(2),2 . . . aπ(n),n + π∈Sn sgn(π)aπ(1),1aπ(2),2 . . . aπ(i−1),i−1bπ(i)aπ(i+1),i+1 . . . aπ(n),n = det (v1| . . . |vi−1| vi |vi+1| . . . |vn) + det (v1| . . . |vi−1| u |vi+1| . . . |vn) . V úpravách jsme roznásobili závorku a rozdělili sumu na dvě části. (2) K důkazu tohoto bodu stačí vytknout t před sumu: det (v1|v2| . . . |vi−1| tvi |vi+1| . . . |vn) = π∈Sn sgn(π)aπ(1),1aπ(2),2 . . . aπ(i−1),i−1(taπ(i),i)aπ(i+1),i+1 . . . aπ(n),n = t π∈Sn sgn(π)aπ(1),1aπ(2),2 . . . aπ(n),n = t det (v1|v2| . . . |vn) . (3) Uvědomíme si, že prvek na místě (i, j) v matici (vρ(1)|vρ(2)| . . . |vρ(n)) je ai,ρ(j). K rozepsání determinantu použijeme alternativní definici. det vρ(1)|vρ(2)| . . . |vρ(n) = π∈Sn sgn(π)a1,ρ(π(1))a2,ρ(π(2)) . . . an,ρ(π(n)) = π∈Sn sgn(ρ) sgn(ρπ)a1,ρπ(1)a2,ρπ(2) . . . an,ρπ(n) = sgn(ρ) π∈Sn sgn(ρπ)a1,ρπ(1)a2,ρπ(2) . . . an,ρπ(n) = sgn(ρ) π∈Sn,σ=ρπ sgn(σ)a1,σ(1)a2,σ(2) . . . an,σ(n) = sgn(ρ) σ∈Sn sgn(σ)a1,σ(1)a2,σ(2) . . . an,σ(n) = sgn(ρ) det (v1|v2| . . . |vn) V předposlední úpravě jsme začali sčítat přes permutace σ = πρ místo π, což výsledek nezmění, protože soubor (ρπ : π ∈ Sn) obsahuje všechny permutace v Sn právě jednou (viz tvrzení 7.13). (4) Nejprve dokážeme pomocné tvrzení: Determinant matice B = (bkl) řádu n, která má dva sloupce i, j (i = j) stejné, je nula. Pro většinu těles bychom mohli použít předchozí bod: Protože (i, j) je lichá permutace a prohozením sloupců i a j se matice nezmění, platí LINEÁRNÍ ALGEBRA 235 det (B) = − det (B). Bohužel z toho plyne det (B) = 0 pouze pro tělesa charakteristiky různé od 2. Proto obecně musíme postupovat jinak. V sumě det (B) = π∈Sn b1,π(1)b2,π(2) . . . bn,π(n) k sobě seskupíme pro každou sudou permutaci π sčítanec odpovídající π a sčítanec odpovídající permutaci (i j)π. Toto seskupení můžeme provést a vyčerpáme jím všechny sčítance, protože soubor ((i j)π : π ∈ Sn, sgn(π) = 1) obsahuje všechny liché permutace v Sn právě jednou (viz tvrzení 7.13). Dostaneme det (B) = π∈Sn,sgn(π)=1 (sgn(π)b1,π(1)b2,π(2) . . . bn,π(n)+ + sgn((i j)π)b1,(i j)π(1)b2,(i j)π(2) . . . bn,(i j)π(n)) = π∈Sn,sgn(π)=1 (sgn(π)b1,π(1)b2,π(2) . . . bn,π(n)− − sgn(π)b1,π(1)b2,π(2) . . . bn,π(n)) = 0 , kde jsme použili sgn((i j)π) = − sgn(π) a fakt, že B má shodný i-tý a j-tý sloupec. Tím jsem dokázali pomocné tvrzení a důkaz čtvrtého bodu snadno dokončíme užitím předchozích. det (v1|v2| . . . |vi−1|vi + tvj|vi+1| . . . |vn) = det (v1|v2| . . . |vn) + det (v1|v2| . . . |vi−1| tvj |vi+1| . . . |vn) = det (v1|v2| . . . |vn) + t det (v1|v2| . . . |vi−1| vj |vi+1| . . . |vn) = det (v1|v2| . . . |vn) Protože determinant matice se shoduje s determinantem transponované matice (tvrzení 7.18), podobné tvrzení můžeme formulovat pro řádky. Bod (2) říká, že vynásobíme-li některý sloupec (nebo řádek) prvkem t ∈ T, determinant se zvětší tkrát. Další bod ukazuje, že prohodíme-li sloupce (řádky) podle nějaké permutace π, pak determinant nanejvýš změní znaménko, a to v případě, že π je lichá. Speciálně, pokud prohodíme dva sloupce (řádky), determinant změní znaménko. Poslední bod můžeme formulovat tak, že přičteme-li t-násobek některého sloupce (resp. řádku) k jinému sloupci (resp. řádku), determinant se nezmění. Protože víme, jak spočítat determinant horní (dolní) trojúhelníkové matice (tvrzení 7.17), můžeme k výpočtu determinantu obecné matice použít Gaussovu eliminaci. Přitom si můžeme pomoci také sloupcovými úpravami. Geometricky jsme si již zdůvodnili vlastnosti (1) a (2) v případě T = R a n = 2, 3. Prohození dvou sloupců odpovídá zrcadlení podle přímky nebo roviny, takže determinant změní znaménko. To odůvodňuje (3). Následující obrázek vysvětluje čtvrtou vlastnost pro n = 2. Přičteme-li k jednomu z vektorů násobek druhého, příslušný rovnoběžníky budou mít stejnou jednu ze stran a stejnou výšku na tuto stranu jako původní rovnoběžník. 236 LIBOR BARTO A JIŘÍ TŮMA Příklad 7.20. Spočítáme determinant reálné matice A =   2 4 2 7 −1 4 5 0 −6   . V prvních dvou úpravách vynásobíme pro pohodlí poslední sloupec číslem 1/2 a prohodíme první a třetí sloupec, abychom dostali na pozici (1, 1) prvek 1. Dále budeme používat už jen řádkové úpravy. V jedné z nich vynásobíme druhý řádek číslem 1/3. Musíme dát pozor na to, že prohazování a násobení determinant mění. Na násobení se můžeme v tomto kontextu dívat jako na vytýkání inverzního skaláru před determinant. 2 4 2 7 −1 4 5 0 −6 = 2 · 2 4 1 7 −1 2 5 0 −3 = −2 · 1 4 2 2 −1 7 −3 0 5 = −2 · 1 4 2 0 −9 3 0 12 11 = −2 · 3 · 1 4 2 0 −3 1 0 12 11 = −6 · 1 4 2 0 −3 1 0 0 15 = −6 · 1 · (−3) · 15 = 270 Výpočet budeme umět provést šikovněji pomocí elementárních úprav kombinovaných s rozvojem. Příklad 7.21. Prohozením sloupců spočítáme determinant reálné matice. 2 1 3 5 −3 8 0 −2 7 5 0 0 4 0 0 0 = sgn((1 4 2 3)) · 3 5 1 2 0 −2 8 −3 0 0 5 7 0 0 0 4 = sgn((1 4 2 3)) · 3 · (−2) · 5 · 4 = 120 Provedli jsme prohození sloupců odpovídající permutaci ρ = (1 4 2 3) – sloupec 1 jsme přesunuli na místo 4, sloupec 4 na místo 2, atd. Tato permutace je lichá. Alternativně bychom postupně mohli prohazovat sloupce po dvou. 7.3.3. Další kriterium regularity. Z tvrzení 7.19 můžeme odvodit další kriterium pro regulárnost matice: matice je regulární právě tehdy, když má nenulový determinant. Geometricky to pro reálné matice řádu 3 můžeme odůvodnit tak, že fA nuluje objemy právě tehdy, když je jeho obor hodnot obsažen v nějaké rovině (tj. zobrazení zkolabuje prostor do roviny nebo dokonce přímky či bodu). Tvrzení 7.22. Čtvercová matice je regulární právě tehdy, když det (A) = 0. Důkaz. Elementární řádkové úpravy sice determinant mění, ale nemění „nulovost determinantu: prohozením řádků determinant změní znaménko, vynásobením nenulovým číslem t se determinant zvětší t-krát a přičtení násobku nějakého řádku k jinému determinant nezmění. Takže označíme-li B odstupňovaný tvar matice A, pak det (A) = 0 právě tehdy, když det (B) = 0. Matice B je v horním trojúhelníkovém tvaru, takže det (B) je součinem prvků na diagonále (tvrzení 7.17). Tento součin je nulový právě tehdy, když má B nulový řádek, což se stane právě tehdy, když A je singulární podle bodu (5) věty 4.65 charakterizující regulární matice. LINEÁRNÍ ALGEBRA 237 Implikace zprava doleva zobecňuje fakt dokázaný v důkazu bodu (4), že determinant matice, která má dva sloupce stejné, je nulový. Obecněji lze hodnost libovolné matice určit podle determinantů čtvercových pod- matic. Definice 7.23. Minorem řádu k matice A rozumíme determinant matice vzniklé z A výběrem k řádků a k sloupců. Příklad 7.24. Jedním ze minorů řádu 2 matice A =   1 2 3 4 5 6 7 8 9 10 11 12   je det (B) = det 6 8 10 12 . Matice B vznikne z A výběrem řádků 2 a 3 a výběrem sloupců 2 a 4. Tvrzení 7.25. Hodnost libovolné matice A je rovna největšímu číslu r takovému, že existuje nenulový minor matice A řádu r. Důkaz. Pro odstupňovaný tvar se tvrzení nahlédne snadno a číslo r se řádkovými úpravami nemění. Detaily si rozmyslete jako cvičení. Například hodnost matice A je rovna 2 právě tehdy, když každý subdeterminant řádu 3 je nulový a existuje nenulový subdeterminant řádu 2. 7.3.4. Determinant součinu. Další aplikací tvrzení 7.19 je věta o determinantu součinu matic. K tomu si nejprve všimneme, jaké jsou determinanty elementárních matic: • Matice odpovídající prohození dvou řádků má determinant −1, protože vznikne z jednotkové matice prohozením těchto řádků (můžeme použít například bod (3) z tvrzení na jednotkovou matici, nebo přímo definici). • Matice odpovídající vynásobení nějakého řádku prvkem t ∈ T má determinant t, například podle věty o determinantu horní trojúhelníkové matice, nebo podle bodu (2). • Matice odpovídající přičtení t-násobku nějakého řádku k jinému má determinant 1, například opět podle věty o determinantu horní nebo dolní trojúhelníkové matice, nebo podle bodu (4). Z bodů (2),(3),(4) nyní vyplývá, že pro libovolnou elementární matici E a libovolnou čtvercovou matici B stejného řádu platí det (EB) = det (E) det (B). Každá regulární matice R je součinem elementárních matic R = E1E2 . . . Ek (podle tvrzení 4.72), takže dostáváme det (RB) = det (E1E2 . . . EkB) = det (E1) det (E2 . . . EkB) = . . . = det (E1) det (E2) . . . det (Ek) det (B) = · · · = det (R) det (B) Tento vztah platí i pro singulární matice R, tedy obecně platí, že determinant součinu je součin determinantů. Věta 7.26 (věta o determinantu součinu). Pro libovolné matice A, B řádu n nad stejným tělesem platí det (AB) = det (A) det (B). 238 LIBOR BARTO A JIŘÍ TŮMA Důkaz. Pro regulární matici A jsme větu dokázali. Pokud A je singulární, pak AB je rovněž singulární. To lze zdůvodnit například pomocí tvrzení 5.92 o hodnosti součinu: rank(AB) ≤ rank(A) < n. Obě strany rovnosti jsou proto rovny nule. Věta má opět názorný geometrický význam. Pro reálné matice řádu tři udávají determinanty matic A, B koeficienty změny objemu a orientace pro zobrazení fA, fB. Matice AB odpovídá složenému zobrazení fA ◦ fB, jeho koeficient změny objemu a orientace je zřejmě součinem těchto koeficientů pro matice A, B. Například, je-li det (A) = 2 a det (B) = 3, zobrazení fB jakýkoliv útvar zvětší třikrát a fA pak ještě dvakrát, takže dohromady se útvar zvětší šestkrát. Pro součet podobná věta neplatí, například proto, že součet dvou singulárních matic může být regulární. Pro determinant inverzní matice dostaneme vzorec z věty o determinantu součinu. Důsledek 7.27. Je-li A regulární matice, pak det A−1 = det (A) −1 . Důkaz. Podle věty o determinantu součinu je 1 = det (I) = det AA−1 = det (A) det A−1 , z čehož dostaneme vzorec vydělením det (A). (Determinant matice A je nenulový podle tvrzení 7.22. ) 7.3.5. Cramerovo pravidlo. Jako poslední aplikaci základních vlastností determinantu dokážeme Cramerovo pravidlo pro řešení soustav lineárních rovnic s regulární maticí. Věta 7.28 (Cramerovo pravidlo). Nechť A = (a1| . . . |an) je regulární matice řádu n a j ∈ {1, 2, . . . , n}. Pak j-tá složka vektoru řešení x = (x1, x2, . . . , xn) soustavy Ax = b je xj = det (Aj) det (A) , kde Aj je matice, která vznikne z A nahrazením j-tého sloupce vektorem b, tj. Aj = (a1|a2| . . . |aj−1|b|aj+1| . . . |an) . Důkaz. Vztah Ax = b můžeme zapsat jako x1a1 + x2a2 + · · · + xnan = b . Dostáváme det (Aj) = det (a1|a2| . . . |aj−1|b|aj+1| . . . |an) = det a1|a2| . . . |aj−1| n k=1 xkak|aj+1| . . . |an = det (a1|a2| . . . |aj−1|xjaj|aj+1| . . . |an) = xj det (a1|a2| . . . |aj−1|aj|aj+1| . . . |an) = xj det (A) , kde ve třetí úpravě jsme využili toho, že přičtením lineárním kombinace sloupců různých od j k sloupci j se determinant nezmění (to plyne z bodu (4) v tvrzení 7.19) a ve čtvrté úpravě jsme použili (2). Z toho ihned vidíme dokazovaný vztah. LINEÁRNÍ ALGEBRA 239 Cramerovo pravidlo můžeme použít pouze pro regulární matice, tj. pro čtvercové matice s nenulovým determinantem (viz tvrzení 7.22). Spíše než pro praktické počítání se využívá ve výpočtech a úvahách, kdy se může hodit explicitní vzorec pro nějakou složku řešení. Příklad 7.29. Vypočítáme třetí složku řešení soustavy Ax = b nad Z5.   1 3 2 0 2 4 1 2 0 2 2 4   Spočítáme determinant matice A. 1 3 2 2 4 1 0 2 2 = 1 3 2 0 3 2 0 2 2 = 1 3 2 0 3 2 0 0 4 = 2 Matice A je tedy regulární a můžeme použít Cramerovo pravidlo. Spočítáme ještě determinant matice A3. 1 3 0 2 4 2 0 2 4 = 1 3 0 0 3 2 0 2 4 = 1 3 0 0 3 2 0 0 1 = 3 Třetí složka řešení je x3 = 3 2 = 4 . 7.4. Rozvoj, adjungovaná matice. Vezmeme-li v definici všechny členy obsahující vybraný prvek aij a vytkneme jej, v závorce dostaneme tzv. algebraický doplněk prvku aij. Až na znaménko je roven determinantu matice, která vznikne vynecháním řádku a sloupce obsahující aij. To dokážeme ve větě o rozvoji podle sloupce. Nejprve potřebný pojem. Definice 7.30. Nechť A = (aij) je čtvercová matice řádu n a i, j ∈ {1, 2, . . . , n}. Algebraickým doplňkem (též kofaktorem) prvku aij matice A rozumíme skalár Aij = (−1)i+j det (Mij) , kde Mij je matice řádu n − 1, která vznikne z A vynecháním i-tého řádku a j-tého sloupce. Definice má smysl pro matice řádu n > 1. Pro matici řádu 1 definujeme A11 = 1. Tento případ je potřeba v některých tvrzeních této kapitoly rozebrat zvlášť, ale explicitně na to upozorňovat nebudeme. Příklad 7.31. Algebraickým doplňkem prvku a12 v reálné matici A = (aij) =   2 4 7 3 −2 −4 5 1 −3   je A12 = (−1)1+2 3 −4 5 −3 = (−1)(−9 − (−20)) = −11 . 240 LIBOR BARTO A JIŘÍ TŮMA Věta 7.32 (o rozvoji podle sloupce). Je-li A čtvercová matice řádu n a j ∈ {1, 2, . . . , n}, pak det (A) = n i=1 aijAij = a1jA1j + a2jA2j + · · · + anjAnj . Důkaz. Potřebujeme dokázat, že koeficient u aij, vytkneme-li tento prvek ze všech členů, které jej obsahují, je rovný Aij. Pro pohodlnost zvolíme trochu jiný postup důkazu. 1. krok. Pokud ann = 1 a všechny ostatní prvky v n-tém sloupci jsou nulové, pak det (A) = Ann. Platí det (A) = π∈Sn sgn(π)aπ(1),1aπ(2),2 . . . aπ(n),n = π∈Sn,π(n)=n sgn(π)aπ(1),1aπ(2),2 . . . aπ(n),n = π∈Sn,π(n)=n sgn(π)aπ(1),1aπ(2),2 . . . aπ(n−1),n−1 = = (−1)n+n π∈Sn−1 sgn(π)aπ(1),1aπ(2),2 . . . aπ(n−1),n−1 = Ann . V druhé úpravě jsme vynechali nulové sčítance, ve třetí jsme použili ann = 1, ve čtvrté jsme použili (−1)(n−1)+(n−1) = 1 a skutečnost, že znaménko permutace π ∈ Sn, pro kterou π(n) = n, je stejné jako znaménko permutace π zúžené na množinu {1, 2, . . . , n − 1} (to platí, protože tyto dvě permutace mají stejný redukovaný cyklický zápis). 2. krok. Pro libovolné i, j ∈ {1, 2, . . . , n}, pokud aij = 1 a všechny ostatní prvky v j-tém sloupci jsou nulové, pak det (A) = Aij. Posuneme-li v matici A řádek i na poslední místo a potom sloupec j na poslední místo, dostaneme matici B, jejíž determinant je Bnn podle 1. kroku. Posunutí i-tého řádku na n-té místo odpovídá permutaci řádků σ = (n (n − 1) . . . i) a posunutí jtého sloupce na n-té místo odpovídá permutaci sloupců ρ = (n (n−1) . . . j). Podle bodu (3) tvrzení 7.19 o změně determinantu při permutaci sloupců a analogického tvrzení pro řádky máme det (A) = sgn(σ) sgn(ρ) det (B) = sgn(σ) sgn(ρ)Bnn = (−1)i+j Bnn = Aij , kde sgn(σ) sgn(ρ) = (−1)i+j je vidět z toho, že parita délek cyklů σ,ρ je stejná právě tehdy, když parita i a j je stejná. LINEÁRNÍ ALGEBRA 241 3. krok. Označme A = (a1| . . . |an). Pomocí 2.kroku a bodů (1) a (2) z tvrzení 7.19 nyní výpočet dokončíme. det (A) = det (a1|a2| . . . |an) = det a1|a2| . . . |aj−1| n i=1 aijei |aj+1| . . . |an = n i=1 aij det (a1|a2| . . . |aj−1| ei |aj+1| . . . |an) = n i=1 aijAij . (Rovněž jsme využili triviální skutečnosti, že algebraický doplněk prvku aij se nezmění, změníme-li j-tý sloupec.) Díky tvrzení 7.18 o transponování můžeme provádět rozvoj podle řádku: det (A) = n j=1 aijAij = ai1Ai1 + ai2Ai2 + · · · + ainAin . Příklad 7.33. Provedeme rozvoj podle druhého řádku. 2 4 7 3 −2 −4 5 1 −3 = 3 · (−1)1+2 4 7 1 −3 + (−2) · (−1)2+2 2 7 5 −3 + +(−4) · (−1)3+2 2 4 5 1 Všimněte si, že se znaménka v algebraickém doplňku střídají, stačí tedy určit první. Rozvoj podle sloupce (řádku) vznikne pouhým přeskupením výrazu z definice determinantu. Kdybychom provedli rozvoj pro matici řádu n, na vzniklé matice provedli rozvoj, atd., po n − 1 krocích bychom dostali znovu výraz z definice determinantu. Pro praktické počítání se rozvoj hodí v situaci, že některý řádek nebo sloupec je skoro celý nulový, nejlépe, když obsahuje jen jeden nenulový prvek. Pak je totiž většina sčítanců v rozvoji nulová a nemusíme počítat menší determinanty. Efektivní postup je vyeliminovat jeden řádek nebo sloupec, provést rozvoj a pokračovat s jedním menším determinantem. Příklad 7.34. Spočítáme znovu determinant v příkladu 7.20. 2 4 2 7 −1 4 5 0 −6 = 30 0 18 7 −1 4 5 0 −6 = (−1)2+2 (−1) 30 18 5 −6 = 180 + 90 = 270 V první úpravě jsme 4-násobek druhého řádku přičetli k prvnímu, pak jsme provedli rozvoj podle 2. sloupce a zbylý determinant jsme spočítali z definice. 242 LIBOR BARTO A JIŘÍ TŮMA Příklad 7.35. Vypočítáme determinant větší matice. −3 −1 −3 4 −3 −7 −1 −10 5 −2 4 0 6 −4 −1 5 1 10 −4 5 5 3 4 −4 3 = 2 0 7 0 2 −2 0 0 1 3 4 0 6 −4 −1 5 1 10 −4 5 −10 0 −26 8 −12 = 2 7 0 2 −2 0 1 3 4 6 −4 −1 −10 −26 8 −12 = 2 7 0 2 0 0 1 0 −4 6 −4 11 6 −26 8 −36 = − 2 7 2 −4 6 11 6 −26 −36 = − 2 7 2 0 20 15 0 −47 −42 = −2 · 20 15 −47 −42 = 10 · 4 3 47 42 = 10(168 − 141) = 270. Nejprve jsme téměř vynulovali 2. sloupec eliminací, užitím 4. řádku. Potom jsme determinant rozvinuli podle 2. sloupce, máme jediný nenulový člen se znaménkem (−1)2+4 = 1. Dále jsme vyeliminovali 2. řádek (pomocí 3. sloupce). Následoval rozvoj podle 2. řádku, nenulový člen má znaménko (−1)3+2 = −1, atd. 7.4.1. Adjungovaná matice. Rozvoj podle j-tého sloupce probíhá tak, že vezmeme první prvek v j-tém sloupci, vynásobíme znaménkem (−1)j+1 a determinantem matice, která vznikne vynecháním prvního řádku a j-tého sloupce. Pak postupujeme obdobně s dalšími prvky v j-tém sloupci a všechny takové výrazy sečteme. Pokud „omylem vždy vynecháváme jiný sloupec k, dostaneme nulový prvek tělesa. Věta 7.36 (o falešném rozvoji). Je-li A čtvercová matice řádu n a j, k ∈ {1, 2, . . . , n}, j = k, pak 0 = n i=1 aijAik = a1jA1k + a2jA2k + · · · + anjAnk . Důkaz. Označme B matici, která vznikne nahrazením k-tého sloupce matice A jejím j-tým sloupcem. Protože B má dva sloupce stejné, je B singulární (má lineárně závislé sloupce, takže můžeme použít bod (3) pozorování 5.94), a proto det (B) = 0 podle kritéria v tvrzení 7.22. Na B použijeme rozvoj podle k-tého sloupce a využijeme toho, že Bik = Aik, protože algebraický doplněk prvku bik na k-tém sloupci nezávisí. 0 = det (B) = b1kB1k + b2kB2k + · · · + bnkBnk = a1jA1k + a2jA2k + · · · + anjAnk Z algebraických doplňků matice A = (aij) vytvoříme tzv. adjungovanou matici tak, že prvek na místě (i, j) bude algebraický doplněk prvku aji. Pozor na změnu pořadí indexů. Definice 7.37. Adjungovanou maticí ke čtvercové matici A rozumíme matici adj (A) stejného řádu, která má na místě (i, j) prvek Aji. Řádkovou i sloupcovou verzi vět o rozvoji a falešném rozvoji jde formulovat maticovým vztahem. LINEÁRNÍ ALGEBRA 243 Věta 7.38. Pro libovolnou čtvercovou matici A platí adj (A) A = A adj (A) = det (A) In . Speciálně, pokud A je regulární, pak A−1 = adj (A) det (A) . Důkaz. Prvek na místě (i, j) v součinu adj (A) A je A1ia1j + A2ia2j + . . . Anianj. Pokud i = j je výsledkem det A, protože výraz je roven rozvoji podle i-tého sloupce. Pokud i = j je výsledkem 0 podle věty o falešném rozvoji. Dohromady dostáváme adj (A) A = det (A) In. Rovnost A adj (A) = det (A) In dostaneme obdobně podle vět o rozvoji a falešném rozvoji podle řádku. Věta nám také dává explicitní vyjádření inverzní matice. Inverzní matici pro řády 2 a 3 lze její pomocí počítat rychle bez eliminace. Příklad 7.39. Pro regulární matici A řádu 2 dostáváme a11 a12 a21 a22 −1 = 1 a11a22 − a12a21 a22 −a12 −a21 a11 Příklad 7.40. Spočítáme inverzní matici k reálné matici A =   −2 1 −3 3 4 −2 0 2 5   . Nejdřív spočítáme adjungovanou matici. adj (A) =         4 −2 2 5 − 1 −3 2 5 1 −3 4 −2 − 3 −2 0 5 −2 −3 0 5 − −2 −3 3 −2 3 4 0 2 − −2 1 0 2 −2 1 3 4         =   24 −11 10 −15 −10 −13 6 4 −11   Determinant matice A by teď bylo neefektivní počítat zvlášť. Stačí spočítat například prvek na místě (3, 3) v součinu A adj (A). det (A) = 0 · 10 + 2 · (−13) + 5 · (−11) = −81. Vidíme, že A je regulární a platí A−1 = − 1 81   24 −11 10 −15 −10 −13 6 4 −11   = 1 81   −24 11 −10 15 10 13 −6 −4 11   . 244 LIBOR BARTO A JIŘÍ TŮMA 7.5. Vandermondův determinant. Tzv. Vandermondova matice vzniká při interpolaci polynomem. Budeme hledat polynom f nad tělesem T stupně nejvýše n − 1, tj. f = k0 + k1x + · · · + kn−1xn−1 , k0, k1, . . . kn−1 ∈ T , který splňuje podmínky f(a1) = b1, f(a2) = b2, . . . , f(an) = bn , kde a1, a2, . . . , an, b1, b2, . . . , bn jsou dané prvky tělesa T, přičemž a1, a2, . . . , an jsou navzájem různé. Pro koeficienty dostáváme soustavu rovnic      1 a1 a2 1 . . . an−1 1 1 a2 a2 2 . . . an−1 2 ... ... ... ... ... 1 an a2 n . . . an−1 n           k0 k1 ... kn−1      =      b1 b2 ... bn      Matice této soustavy se nazývá Vandermondova matice a její determinant Vandermondův determinant. Indukcí podle n dokážeme, že je roven V (a1, a2, . . . , an) = 1 a1 a2 1 . . . an−1 1 1 a2 a2 2 . . . an−1 2 ... ... ... ... ... 1 an a2 n . . . an−1 n = 1≤i 2 a že vzorec platí pro menší hodnoty n. Začneme tím, že vyeliminujeme první sloupec, tj. (−1)-násobek prvního řádku přičteme ke všem ostatním, a pak provedeme rozvoj podle prvního sloupce. . 1 a1 a2 1 . . . an−1 1 1 a2 a2 2 . . . an−1 2 ... ... ... ... ... 1 an a2 n . . . an−1 n = 1 a1 a2 1 . . . an−1 1 0 a2 − a1 a2 2 − a2 1 . . . an−1 2 − an−1 1 ... ... ... ... ... 0 an − a1 a2 n − a2 1 . . . an−1 n − an−1 1 = a2 − a1 a2 2 − a2 1 . . . an−1 2 − an−1 1 a3 − a1 a2 3 − a2 1 . . . an−1 3 − an−1 1 ... ... ... ... an − a1 a2 n − a2 1 . . . an−1 n − an−1 1 Vytkneme z prvního řádku výraz a2 −a1, z druhého výraz a3 −a2, atd., a využijeme vzorce ck − dk = (c − d)(ck−1 + ck−2 d + ck−3 d2 + · · · + cdk−2 + dk−1 ) . LINEÁRNÍ ALGEBRA 245 a2 − a1 a2 2 − a2 1 . . . an−1 2 − an−1 1 a3 − a1 a2 3 − a2 1 . . . an−1 3 − an−1 1 ... ... ... ... an − a1 a2 n − a2 1 . . . an−1 n − an−1 1 = (a2 − a1)(a3 − a1) . . . (an − a1)· · 1 a2 + a1 a2 2 + a2a1 + a2 1 . . . an−2 2 + an−3 2 a1 + · · · + an−2 1 1 a3 + a1 a2 3 + a3a1 + a2 1 . . . an−2 3 + an−3 3 a1 + · · · + an−2 1 ... ... ... ... ... 1 an + a1 a2 n + ana1 + a2 1 . . . an−2 n + an−3 n a1 + · · · + an−2 1 Dále přičteme (−a1)-násobek předposledního sloupce k poslednímu, . . . , (−a1)násobek druhého sloupce ke třetímu, a nakonec (−a1)-násobek prvního sloupce ke druhému. 1 a2 + a1 a2 2 + a2a1 + a2 1 . . . an−2 2 + an−3 2 a1 + · · · + an−2 1 1 a3 + a1 a2 3 + a3a1 + a2 1 . . . an−2 3 + an−3 3 a1 + · · · + an−2 1 ... ... ... ... ... 1 an + a1 a2 n + ana1 + a2 1 . . . an−2 n + an−3 n a1 + · · · + an−2 1 = 1 a2 + a1 a2 2 + a2a1 + a2 1 . . . an−2 2 1 a3 + a1 a2 3 + a3a1 + a2 1 . . . an−2 3 ... ... ... ... ... 1 an + a1 a2 n + ana1 + a2 1 . . . an−2 n = · · · = 1 a2 + a1 a2 2 . . . an−2 2 1 a3 + a1 a2 3 . . . an−2 3 ... ... ... ... ... 1 an + a1 a2 n . . . an−2 n = 1 a2 a2 2 . . . an−2 2 1 a3 a2 3 . . . an−2 3 ... ... ... ... ... 1 an a2 n . . . an−2 n = V (a2, . . . , an) Vznikne Vandermondův determinant pro a2, a3, . . . , an, takže výpočet můžeme dokončit užitím indukčního předpokladu. V (a1, . . . , an) = (a2 − a1)(a3 − a1) . . . (an − a1)V (a2, . . . , an) = (a2 − a1)(a3 − a1) . . . (an − a1) 2≤i n + 1 − j. 9. Nechť A je blokově horní trojúhelníková matice, tj. matice tvaru A =      A11 A12 . . . A1r 0 A22 . . . A2r ... ... ... ... 0 0 . . . Arr      , kde A11, A22, . . . , Arr jsou čtvercové matice (ne nutně stejného řádu). Dokažte, že det (A) = det (A11) det (A22) . . . det (Arr). 10. Z předchozího cvičení by se mohlo zdát, že determinanty můžeme počítat blokově. Není tomu tak. Nalezněte matici A = A11 A12 A21 A22 se čtvercovými bloky takovou, že det (A) = det (A11) det (A22) − det (A12) det (A21). 11. Dokažte, že pro regulární matici A řádu n platí det (adj (A)) = det (A)n−1 . 12. Dokažte tvrzení 7.25 LINEÁRNÍ ALGEBRA 247 Shrnutí sedmé kapitoly (1) Je-li A = (aij) matice řádu 2 nad tělesem T, pak definujeme determinant det A jako skalár a11a22 − a12a21. (2) Geometrický význam absolutní hodnoty | det A| determinantu matice A = (a1|a2) řádu 2 je obsah rovnoběžníku určeného vektory a1, a2. (3) Je-li A = (aij) matice řádu 3 nad tělesem T, pak definujeme determinant det A jako skalár a11a22a33 + a21a32a13 + a31a12a23 − a11a32a23 − a31a22a13 − a21a12a33 . (4) Geometrický význam absolutní hodnoty | det A| determinantu matice A = (a1|a2|a3) řádu 3 je objem rovnoběžnostěnu určeného vektory a1, a2, a3. (5) Permutací na množině X rozumíme vzájemně jednoznačné zobrazení X → X. Množinu všech permutací na množině X značíme SX. Pro množinu permutací na množině X = {1, 2, . . . , n}, kde n je přirozené číslo, také používáme značení Sn. (6) Permutace π, ρ na množině X můžeme složit (jako zobrazení), složení π ρ je opět permutace na X. Inverzní zobrazení ρ−1 k permutaci ρ ∈ SX je opět permutace na množině X. Identické zobrazení ιX na množině X je permutace na X. (7) Skládání permutací na množině X je binární operace na SX, která má následující vlastnosti. (a) Pro libovolné π, ρ, σ ∈ SX platí π(ρσ) = (πρ)σ. (b) Pro libovolné π ∈ SX platí idX π = π idX = π. (c) Pro libovolné π ∈ SX platí ππ−1 = π−1 π = idX. (8) Permutaci na konečné množině X můžeme zapsat buď tabulkou nebo gra- fem. (9) Cyklus délky k je permutace na X splňující π(x1) = x2, π(x2) = x3, . . . , π(xk−1) = xk, π(xk) = x1 a π(y) = y pro každé y ∈ X\{x1, x2, . . . , xk}, kde x1, x2, . . . , xk jsou po dvou různé prvky X. Zapisujeme π = (x1 x2 . . . xk). (10) Cykly nazýváme nezávislé, pokud jsou množiny prvků vyskytující se v cyklech disjunktní. (11) Transpozice je cyklus délky 2, tj. permutace tvaru π = (x y). (12) Každou permutaci na konečné množině X lze zapsat jako složení nezávislých cyklů. Tento zápis je jednoznačný až na pořadí cyklů (a cykly délky 1). (13) Cyklickým zápisem rozumíme rozumíme zápis pomocí nezávislých cyklů s vyznačenými pevnými body, například π = (1 7 3)(2 6 4 8)(5) . Pokud pevné body neuvádíme, hovoříme o redukovaném cyklickém zápisu. (14) Každá permutace na konečné množině je složením transpozic. (15) Je-li X konečná množina, π ∈ SX a (x y) ∈ SX, pak počet cyklů v permutaci (x y)π a π se liší o 1 a počet sudých cyklů v permutaci (x y)π a π se rovněž liší o 1. (16) Pro libovolnou permutaci π na konečné množině X nastane jedna z následujících možností: (a) Každý zápis π jako složení transpozic obsahuje sudý počet transpozic. To nastane právě tehdy, když počet cyklů sudé délky v (redukovaném) cyklickém zápisu permutace π je sudý. 248 LIBOR BARTO A JIŘÍ TŮMA (b) Každý zápis π jako složení transpozic obsahuje lichý počet transpozic. To nastane právě tehdy, když počet cyklů sudé délky v (redukovaném) cyklickém zápisu permutace π je lichý. (17) Permutace π na konečné množině X se nazývá sudá, pokud nastane možnost (1) z předchozího bodu. Rovněž říkáme, že znaménko π je 1 a píšeme sgn(π) = 1. V opačném případě je π lichá, má znaménko −1 a píšeme sgn(π) = −1. (18) Nechť X je konečná množina a π, ρ ∈ SX. Pak platí (a) sgn(idX) = 1, (b) sgn(π−1 ) = sgn(π) a (c) sgn(πρ) = sgn(π) sgn(ρ). (19) Pro libovolnou množinu X a permutaci π ∈ SX jsou následující zobrazení vzájemně jednoznačná: (a) f : SX → SX definované předpisem f(ρ) = ρ−1 , (b) g : SX → SX definované předpisem g(ρ) = π ρ, (c) h : SX → SX definované předpisem h(ρ) = ρ π. (20) Důsledkem předchozího bodu je, že počet sudých permutací konečné množině s n ≥ 2 prvky je stejný jako počet lichých permutací a rovná se tedy n!/2. (21) Je-li A = (aij) čtvercová matice nad tělesem T řádu n, pak definujeme determinant matice A předpisem det (A) = π∈Sn sgn(π)aπ(1),1aπ(2),2 . . . aπ(n),n . (22) Je-li A = (aij) horní trojúhelníková matice řádu n, pak det (A) = a11a22 . . . ann. (23) Pro libovolnou čtvercovou matici A platí det (A) = det AT . (24) Pro libovolnou matici A = (aij) řádu n platí det (A) = π∈Sn sgn(π)a1,π(1)a2,π(2) . . . an,π(n) . (25) Pro čtvercovou matici A = (aij) = (a1| · · · |an) řádu n nad T, libovolný vektor b = (b1, . . . , bn)T , každé j ∈ {1, . . . , n} a skalár t ∈ T platí (a) det(a1| · · · |aj−1|aj+b|aj+1| · · · |an) = det(a1|· · ·|aj−1|aj|aj+1|· · ·|an)+ det(a1|· · ·|aj−1|b|aj+1|· · ·|an), (b) det(a1|· · ·|aj−1|taj|aj+1|· · ·|an) = t det(a1|· · ·|aj−1|aj|aj+1|· · ·|an) = t det A. (26) Prohození dvou řádků čtvercové matice A = (aij) změní znaménko det A. Podobně prohození dvou sloupců matice A změní znaménko det A. (27) Má-li matice A = (aij) = (a1| · · · |an) nad T dva stejné sloupce, platí det A = 0. (28) Přičteme-li v matici A = (a1| · · · |an) násobek jednoho řádku (sloupce) k jinému řádku (sloupci), determinant det (A) se nezmění. (29) Pro každou elementární matici E a libovolnou matici A, obě řádu n, platí det(EA) = det(E) · det(A). (30) Čtvercová matice je regulární právě tehdy, když det (A) = 0. (31) Pro libovolné matice A, B řádu n nad stejným tělesem platí det (AB) = det (A) det (B). (32) Je-li A regulární matice, pak det A−1 = det (A) −1 . (33) Cramerovo pravidlo. Je-li A = (a1| . . . |an) regulární matice řádu n a j ∈ {1, 2, . . . , n}, pak j-tá složka vektoru řešení x = (x1, x2, . . . , xn) soustavy LINEÁRNÍ ALGEBRA 249 Ax = b je xj = det (Aj) det (A) , kde Aj je matice, která vznikne z A nahrazením j-tého sloupce vektorem b, tj. Aj = (a1|a2| . . . |aj−1|b|aj+1| . . . |an) . (34) Je-li A = (aij) čtvercová matice řádu n a i, j ∈ {1, 2, . . . , n}, pak algebraickým doplňkem (též kofaktorem) prvku aij matice A rozumíme skalár mij = (−1)i+j det (Mij) , kde Mij je matice řádu n − 1, která vznikne z A vynecháním i-tého řádku a j-tého sloupce. (35) Věta o rozvoji podle sloupce. Je-li A čtvercová matice řádu n a j ∈ {1, 2, . . . , n}, pak det (A) = n i=1 aijmij = a1jm1j + a2jm2j + · · · + anjmnj . (36) Kofaktorová matice ke čtvercové matici A = (aij) je matice M = (mij) tvořená algebraickými doplňky prvků aij. Adjungovaná matice k matici A je matice MT transponovaná ke kofaktorové matici M, značíme ji adj (A) (37) Věta o falešném rozvoji. Je-li A čtvercová matice řádu n a j, k ∈ {1, 2, . . . , n}, j = k, pak 0 = n i=1 aijmik = a1jm1k + a2jm2k + · · · + anjmnk . (38) Pro libovolnou čtvercovou matici A platí adj (A) A = A adj (A) = det (A) In . Speciálně, pokud A je regulární, pak A−1 = adj (A) det (A) . (39) Úloha na nalezení polynomu stupně nejvýše n − 1 s koeficienty v tělese T, který má předepsané hodnoty v n bodech a1, a2, . . . , an ∈ T vede na řešení soustavy lineární rovnic a maticí      1 a1 a2 1 . . . an−1 1 1 a2 a2 2 . . . an−1 2 ... ... ... ... ... 1 an a2 n . . . an−1 n      . (40) Tato matice se nazývá Vandermondova matice a její determinant Vandermondův determinant určený prvky a1, a2, . . . , an. (41) Hodnota Vandermondova determinantu určeného prvky a1, a2, . . . , an je 1≤i 0, takže z odvozeného vztahu vyplývá ai = 0. Ukázali jsme tak, že pouze triviální lineární kombinace prvků vi se rovná nulovému vektoru, takže posloupnost (v1, v2, . . . , vk) je lineárně nezávislá (viz bod (3) tvrzení 5.36). Z tvrzení vyplývá, že ortogonální posloupnost n nenulových vektorů v prostoru dimenze n je ortogonální báze, protože je lineárně nezávislá a lineárně nezávislá posloupnost n vektorů v prostoru dimenze n je báze podle bodu (4) v pozorování 5.67. Příklad 8.41. V prostoru Rn (nebo Cn ) se standardním skalárním součinem je kanonická báze ortonormální. Příklad 8.42. Posloupnost vektorů ((1, 2, 2)T , (−2, −1, 2)T ) v R3 (nebo C3 ) se standardním skalárním součinem je ortogonální, ale není ortonormální. Znormováním dostaneme ortonormální posloupnost 1 3 (1, 2, 2)T , 1 3 (−2, −1, 2)T . Tuto posloupnost lze doplnit na ortonormální bázi – posloupnost 1 3 (1, 2, 2)T , 1 3 (−2, −1, 2)T , 1 3 (2, −2, 1) je ortonormální, takže je to podle poznámky za předchozím tvrzením ortonormální báze. Později budeme pomocí Gram-Schmidtova ortogonalizačního procesu umět každou ortogonální (resp. ortonormální) posloupnost nenulových vektorů v konečně generovaném prostoru doplnit do ortogonální (resp. ortonormální) báze. Příklad 8.43. Odvodíme maticové kritérium na to, kdy je posloupnost sloupcových vektorů reálné nebo komplexní matice A typu m × n ortonormální vzhledem ke standardnímu skalárnímu součinu v Cm . Uvažujme tedy standardní skalární součin na Cm . Posloupnost sloupcových vektorů matice A = (a1| . . . |an) je ortonormální právě tehdy, když ai ·aj = 0 pro každé i = j ∈ {1, . . . , n} a ai · ai = 1 pro každé i ∈ {1, . . . , n}. Skalár ai · aj = a∗ i aj je ale 270 LIBOR BARTO A JIŘÍ TŮMA roven prvku na místě (i, j) v matici A∗ A. A∗ A =      a∗ 1a1 a∗ 1a2 · · · a∗ 1ak a∗ 2a1 a∗ 2a2 · · · a∗ 2ak ... ... ... ... a∗ ka1 a∗ ka2 · · · a∗ kak      =      a1 · a1 a1 · a2 · · · a1 · ak a2 · a1 a2 · a2 · · · a2 · ak ... ... ... ... ak · a1 ak · a2 · · · ak · ak      . Vidíme, že sloupce matice A tvoří ortonormální posloupnost právě tehdy, když A∗ A = In. Matici A∗ A nazveme v definici 8.78 Gramovou maticí posloupnosti vektorů (a1, . . . , an). Podobně, posloupnost řádkových vektorů reálné nebo komplexní matice A je ortonormální vzhledem ke standardnímu skalárnímu součinu právě tehdy, když platí AA∗ = Im. Příklad 8.44. V prostoru R2 se skalárním součinem daným (x1, x2)T , (y1, y2) = (x1, x2) 2 1 1 1 y1 y2 = 2x1y1 + x1y2 + x2y1 + x2y2 (ověřte, že je to skutečně skalární součin) je posloupnost 1 0 , −1 2 ortogonální, protože 1 0 , −1 2 = (1, 0) 2 1 1 1 −1 2 = (2, 1) −1 2 = 0 , tedy tvoří ortogonální bázi. Spočítáme normy vektorů a vytvoříme ortonormální bázi. 1 0 = (1, 0) 2 1 1 1 1 0 = (2, 1) 1 0 = √ 2 −1 2 = (−1, 2) 2 1 1 1 −1 2 = (0, 1) −1 2 = √ 2 Posloupnost 1 √ 2 1 0 , 1 √ 2 −1 2 je tedy ortonormální báze. Pokud si nakreslíme tyto dva vektory jako kolmé vektory jednotkové velikosti a ostatní vektory kreslíme v tomto souřadném systému, pak délky a úhly při daném skalárním součinu jsou běžné eukleidovské délky a úhly na obrázku. Tento fakt dokážeme v tvrzení 8.49. Příklad 8.45. V prostoru spojitých funkcí na intervalu [0, 2π] se skalárním souči- nem f, g = 2π 0 fg je množina {1, sin x, cos x, sin(2x), cos(2x), . . . } ortogonální. Toto je základní fakt Fourierovy analýzy, jedné z velmi důležitých oblastí matematiky. LINEÁRNÍ ALGEBRA 271 1−1 1 2 √ 2 −1√ 2 1√ 2 x y −1 1 1 2 √ 2 −1√ 2 1√ 2 x y Jednoduchým důsledkem definice kolmosti je zobecnění Pythagorovy věty pro libovolný skalární součin. Tvrzení 8.46 (Pythagorova věta). Je-li V vektorový prostor se skalárním součinem , a jsou-li vektory u, v ∈ V kolmé, pak platí u + v 2 = u 2 + v 2 . Důkaz. u + v 2 = u + v, u + v = u, u + u, v + v, u + v, v Díky kolmosti jsou prostřední dva členy nulové, takže výraz je roven u 2 + v 2 . u 2 v 2 u + v 2 u v u + v Indukcí lze Pythagorovu větu zobecnit na libovolný konečný počet prvků. Je-li {v1, v2, . . . , vk} ortogonální množina, pak v1 + v2 + · · · + vk 2 = v1 2 + v2 2 + · · · + vk 2 . Existuje zobecnění Pythagorovy věty na nekonečné ortogonální množiny, tzv. Parsevalova identita. 8.3.2. Souřadnice vzhledem k ortonormální bázi. Souřadnice prvků vektorového prostoru vzhledem k ortonormální bázi se počítají velmi snadno. Tvrzení 8.47. Je-li V vektorový prostor se skalárním součinem , , B = (v1, . . . , vn) nějaká ortonormální báze ve V a u ∈ V , pak platí u = v1, u v1 + v2, u v2 + · · · + vn, u vn . 272 LIBOR BARTO A JIŘÍ TŮMA Jinými slovy, [u]B = ( v1, u , v2, u , . . . , vn, u )T . Důkaz. Označme [u]B = (a1, a2, . . . , an)T , neboli u = a1v1 + a2v2 + · · · + anvn . Podobně jako v důkazu lineární nezávislosti ortogonální posloupnosti nenulových vektorů skalárně vynásobíme obě strany zleva vektorem vi a dostaneme vi, u = vi, a1v1 + a2v2 + · · · + akvk vi, u = a1 vi, v1 + a2 vi, v2 + · · · + ak vi, vk vi, u = ai vi, vi = ai , takže ai = vi, u . Souřadnicím vzhledem k ortonormální bázi se někdy říká Fourierovy koeficienty vzhledem k této bázi. Obecněji z důkazu vidíme, že pro ortogonální bázi B platí [u]B = v1, u v1 2 , v2, u v2 2 , . . . , vn, u vn 2 T . Příklad 8.48. Určíme souřadnice vektoru u = (3 + i, 2, i)T ∈ C3 vzhledem k ortonormální bázi B = (v1, v2, v3) =  1 3   i 2i 2i   , 1 3   −2 −1 2   , 1 3   2 −2 1     prostoru C3 se standardním skalárním součinem. [u]B = (v∗ 1u, v∗ 2u, v∗ 3u) T =  1 3 (−i, −2i, −2i)   3 + i 2 i   , 1 3 (−2, −1, 2)   3 + i 2 i   , 1 3 (2, −2, 1)   3 + i 2 i     T = 1 3 (3 − 7i), − 8 3 , 1 3 (2 + 3i) T . Skutečně   3 + i 2 i   = 1 3 (3 − 7i) · 1 3   i 2i 2i   − 8 3 · 1 3   −2 −1 2   + 1 3 (2 + 3i) · 1 3   2 −2 1   . Vzhledem k ortonormální bázi přechází skalární součin na standardní. Přesněji řečeno, skalární součin dvou vektorů je roven standardnímu skalárnímu součinu souřadnic těchto vektorů vzhledem k ortonormální bázi. Tvrzení 8.49. Je-li V vektorový prostor se skalárním součinem , , B = (v1, v2, . . . , vn) jeho ortonormální báze, a u, w ∈ V , pak u, w = [u]∗ B[w]B . LINEÁRNÍ ALGEBRA 273 Důkaz. Označme [u]B = (a1, a2, . . . , an)T , [w]B = (b1, b2, . . . , bn)T , tedy u = a1v1 + a2v2 + · · · + anvn, w = b1v1 + b2v2 + · · · + bnvn . Pomocí (SL2), (SL1) a ortonormality postupně dostáváme u, w = n i=1 aivi, n i=1 bivi = n i=1 n j=1 aivi, bjvj = n i=1 n j=1 aibj vi, vj = n i=1 aibi = [u]∗ B[w]B . Tvrzení ospravedlňuje poznámku z příkladu 8.44 – pokud si nakreslíme vektory ortonormální báze jako jednotkové navzájem kolmé vektory a ostatní vektory kreslíme v tomto souřadném systému, pak délky a úhly při daném skalárním součinu jsou běžné eukleidovské délky a úhly na obrázku. Příklad 8.50. V prostoru R2 se skalárním součinem (x1, x2)T , (y1, y2) T = (x1, x2) 2 1 1 1 y1 y2 = 2x1y1 + x1y2 + x2y1 + x2y2 je posloupnost B = 1 √ 2 1 0 , 1 √ 2 −1 2 ortonormální báze (viz příklad 8.44). Uvažujme vektory u = (2, 3)T a v = (1, 1)T . Z tvrzení 8.47 spočteme jejich souřadnice vzhledem k B a pak vypočítáme skalární součin podle tvrzení 8.49. [u]B = 1 √ 2 1 0 , u , 1 √ 2 −1 2 , u T = 1 √ 2 7 3 [v]B = 1 √ 2 1 0 , v , 1 √ 2 −1 2 , v T = 1 √ 2 3 1 u, v = [u]B · [v]B = 1 √ 2 (7, 3) 1 √ 2 3 1 = 12 . Stejný výsledek dostaneme přímo ze vzorce definující tento skalární součin. 8.3.3. Kolmost množin. Kolmost mezi prvky vektorového prostoru se skalárním součinem zobecníme na podmnožiny tohoto prostoru. Definice 8.51. Je-li V vektorový prostor se skalárním součinem , a v ∈ V , M, N ⊆ V , pak říkáme, že prvek v je kolmý na M, pokud v je kolmý na každý prvek z množiny M, což zapisujeme v ⊥ M. Říkáme, že M je kolmá na N a zapisujeme M ⊥ N, pokud každý prvek množiny M je kolmý na každý prvek množiny N. Pozor, podle této definice stěna není kolmá na podlahu – ne všechny vektory stěny jsou kolmé k vektorům podlahy. Jako snadné cvičení si rozmyslete, že je-li množina M kolmá na množinu N, pak v jejich průniku může být pouze nulový vektor. Jednoduchým důsledkem definice je následující pozorování. 274 LIBOR BARTO A JIŘÍ TŮMA Tvrzení 8.52. Je-li V vektorový prostor se skalárním součinem , a M, N ⊆ V , pak M ⊥ N právě když M ⊥ LO {N}, a to nastane právě když LO {M} ⊥ LO {N}. Důkaz. Dokážeme ekvivalenci prvních dvou tvrzení. Předpokládáme tedy M ⊥ N. Je-li x ∈ M a y ∈ LO {N}, existuje vyjádření y = a1u1 + a2u2 + · · · + akuk pro nějaké prvky u1, u2, . . . , uk ∈ N a skaláry a1, a2, . . . , ak. Potom x, y = x, a1u1 + a2u2 + · · · + akuk = a1 x, u1 + a2 x, u2 + · · · + ak x, uk = 0 . Proto M ⊥ LO {N}. Opačná implikace je zřejmá. Ekvivalence druhých dvou tvrzení plyne z ekvivalence prvních dvou. Dokázané tvrzení se zejména používá v situaci, kdy chceme ověřit, že nějaký vektor v ∈ V je kolmý na podprostor W ≤ V. Podle tvrzení k tomu stačí ověřit, že v je kolmý na všechny vektory z nějaké množiny generátorů podprostoru W. 8.3.4. Ortogonální doplněk. Největší množina prvků kolmá na danou množinu M ⊆ V v vektorovém prostoru se skalárním součinem se nazývá ortogonální doplněk. Definice 8.53. Je-li V prostor se skalárním součinem , a M ⊆ V , pak ortogonální doplněk M⊥ množiny M je množina všech prvků V kolmých na každý prvek M, tj. M⊥ = {v ∈ V : v ⊥ M} . Podle definice M je kolmá na M⊥ a M⊥ je největší taková množina vzhledem k inkluzi. Další jednoduché vlastnosti ortogonálního doplňku jsou: Tvrzení 8.54. Je-li V prostor se skalárním součinem , a M, N ⊆ V , pak platí (1) M⊥ = (LO {M})⊥ , (2) M⊥ je podprostor V, (3) je-li M ⊆ N, pak N⊥ ⊆ M⊥ . Důkaz. Platí v ∈ M⊥ právě když v ⊥ M což je právě když v ⊥ LO {M} podle tvrzení 8.52, a to je právě když v ∈ (LO {M})⊥ . K důkazu (2) stačí ověřit, že ortogonální doplněk M⊥ je neprázdný a uzavřený na sčítání a násobení skalárem. Je neprázdný, protože obsahuje nulový vektor. Je-li u, v ∈ M⊥ , platí pro každé w ∈ M, že u ⊥ w a v ⊥ w, a tedy w, u + v = w, u + w, v = 0, což dokazuje u + v ∈ M⊥ . Podobně lze dokázat uzavřenost M⊥ na skalární násobky. Stejně snadné je ověřit (3). Je-li v ∈ N⊥ , platí v ⊥ N ⊇ M, tj. také v ⊥ M a tedy v ∈ M⊥ . Příklad 8.55. V R3 se standardním skalárním součinem, je-li (u, v) lineárně nezávislá posloupnost vektorů, pak ortogonální doplněk množiny M = {u, v} je přímka kolmá na rovinu LO {u, v}. Ortogonálním doplňkem nenulového vektoru (nebo jeho lineárního obalu) je rovina. Intuitivně jsou tato trvzení zřejmá, formálně je lze zdůvodnit pomocí věty 8.74. Příklad 8.56. Určíme ortogonální doplněk roviny U = LO (1, 2, 5)T , (0, 1, 1)T ) v prostoru R3 se standardním skalárním součinem. Podle (1) je U⊥ rovná množině LINEÁRNÍ ALGEBRA 275 všech vektorů x kolmých na oba generátory, tj. množině vektorů, pro které (1, 2, 5)x = 0 a (0, 1, 1)x = 0. Maticově 1 2 5 0 1 1 x = 0 0 . Hledáme tedy řešení homogenní soustavy s maticí, jejíž řádkové vektory jsou generátory U, U⊥ = Ker 1 2 5 0 1 1 = LO      −3 −1 1      . V příkladu jsme viděli, že k určení ortogonálního doplňku množiny vektorů M = {v1, v2, . . . , vk} (nebo podprostoru LO {M}) v aritmetickém vektorovém prostoru Rn se standardním skalárním součinem stačí napsat vektory vT 1 , vT 2 , . . . , vT k do řádků matice A a vyřešit příslušnou homogenní soustavu. Toto pozorování lze maticově zapsat {v1, . . . , vk}⊥ = (Im AT )⊥ = Ker A . Vlastně jsme jen zopakovali úvahu z příkladu 8.7, kde jsme nahlédli, že řešení homogenní soustavy rovnic Ax = o jsou právě vektory kolmé na všechny řádky matice A (ekvivalentně na všechny prvky řádkového prostoru matice A). V Cn se standardním skalárním součinem je ještě třeba přidat komplexní sdru- žování: (Im A∗ )⊥ = Ker A . Čili Ker A je rovno ortogonálnímu doplňku komplexně sdružených řádků matice A. Obecněji, počítáme-li vzhledem k ortonormální bázi, pak skalární součin se chová jako standardní (viz tvrzení 8.49), takže ortogonální doplněk množiny vektorů můžeme spočítat podobně. Tvrzení 8.57. Nechť V je konečně generovaný prostor se skalárním součinem , , B jeho ortonormální báze, M = {v1, v2, . . . , vk}. Označíme A matici s řádky [v1]∗ B, [v2]∗ B, . . . , [vk]∗ B. Pak [M⊥ ]B = Ker A . Důkaz. Z definice vyjádření podmnožiny vzhledem k bázi, definice ortogonálního doplňku a tvrzení 8.49 máme [M⊥ ]B = {[u]B : u ∈ M⊥ } = {[u]B : v1, u = v2, u = · · · = vk, u = 0} = {[u]B : [v1]∗ B[u]B = [v2]∗ B[u]B = · · · = [vk]∗ B[u]B = 0} = {x : Ax = o} = Ker A . Příklad 8.58. V C3 je dán skalární součin , takový, že báze B =     1 i i   ,   1 1 + i 0   ,   1 0 0     276 LIBOR BARTO A JIŘÍ TŮMA je ortonormální. Určíme ortogonální doplněk N přímky LO {v}, kde v =   3 1 + 2i i   . Souřadnice vektoru v vzhledem k bázi B je [v]B =   1 1 1   . Z vlastnosti (1) v tvrzení 8.54 vyplývá, že N je rovno ortogonálnímu doplňku množiny {v}. Vyjádření N v bázi B je proto podle tvrzení 8.57 rovno [N]B = Ker (1 1 1) = LO      −1 0 1   ,   −1 1 0      , takže N = LO {v} ⊥ = LO    −   1 i i   +   1 0 0   , −   1 i i   +   1 1 + i 0      = LO      0 −i −i   ,   0 1 −i      = LO      0 1 1   ,   0 1 −i      . K ortogonálnímu doplňku se vrátíme po větě 8.69 o existenci ortonormální báze konečně generovaného prostoru. 8.4. Ortogonální projekce a ortogonalizace. Nyní se seznámíme s pojmem ortogonální (pravoúhlé, kolmé) projekce vektoru na podprostor. Tato projekce je v jistém smyslu nejlepší aproximací daného vektoru v podprostoru, čehož se využívá v aplikacích. Ortogonální projekce je také základem jednoho z nejdůležitějších algoritmů v lineární algebře – Gramovy-Schmidtovy ortogonalizace. Jeho důležitost je srovnatelná s Gaussovou eliminací. 8.4.1. Ortogonální projekce. Definice 8.59. Je-li V vektorový prostor se skalárním součinem , , v ∈ V a W podprostor V, pak prvek w ∈ W nazýváme ortogonální projekce vektoru v na podprostor W, pokud platí (v − w) ⊥ W, ekvivalentně (v − w) ∈ W⊥ . Z definice snadno odvodíme, že pokud v ∈ W, pak ortogonální projekcí w na W je vektor w = v. Platí totiž v − w = o ⊥ W. Vektor v − w budeme někdy nazývat kolmice vektoru v na podprostor W, nebo také chybový vektor aproximace vektoru v v podprostoru W. OBRAZEK Následující věta o aproximaci je jednoduchým, ale velmi důležitým, důsledkem Pythagorovy věty. Dokazuje intuitivně pochopitelný fakt, že ortogonální projekce vektoru na podprostor je, pokud existuje, určená jednoznačně a minimalizuje vzdálenost vektoru v od vektorů podprostoru W. LINEÁRNÍ ALGEBRA 277 Věta 8.60. Je-li W podprostor vektorového prostoru V se skalárním součinem , , v ∈ V a w ortogonální projekce prvku v na podprostor W, pak pro každý prvek w = u ∈ W platí v − w < v − u . Ortogonální projekce vektoru v na podprostor W je určena jednoznačně, pokud existuje. Důkaz. Protože w je ortogonální projekce v na W, je (v −w) ⊥ W, speciálně platí (v − w) ⊥ (w − u), protože vektor w − u leží v W jakožto rozdíl dvou vektorů v W. Podle Pythagorovy věty platí v − u 2 = (v − w) + (w − u) 2 = v − w 2 + w − u 2 > v − w 2 , kde poslední nerovnost plyne z w − u = o. Kdyby oba vektory w, u ∈ W byly ortogonálními projekcemi v na W, platilo by podle právě dokázaného v − w < v − u < v − w , což nelze. Ortogonální projekce v na W je proto určena jednoznačně. Wv w v − u v − w w − u u . . Obrázek 76. Důkaz věty o aproximaci Ve smyslu předchozí věty je ortogonální projekce w vektoru v na podprostor W nejlepší aproximací vektoru v v tomto podprostoru. Má totiž nejmenší normu chybového vektoru v − w mezi všemi možnými vektory z w ∈ W. Kdy ortogonální projekce existuje a jak ji hledat? Následující tvrzení ukazuje, že ortogonální projekce na W existuje, pokud ve W máme konečnou ortonormální bázi. Navíc poskytuje jednoduchý vzorec na její výpočet. Později uvidíme, že každý konečně generovaný prostor se skalárním součinem má (konečnou) ortonormální bázi, takže v libovolném prostoru se skalárním součinem existuje ortogonální projekce libovolného vektoru na libovolný konečně generovaný podprostor. Tvrzení 8.61. Je-li V vektorový prostor se skalárním součinem , , v ∈ V , a W konečně generovaný podprostor prostoru V s ortonormální bází B = (u1, u2, . . . , uk)T , pak prvek w = u1, v u1 + u2, v u2 + · · · + uk, v uk , je ortogonální projekcí vektoru v na podprostor W. 278 LIBOR BARTO A JIŘÍ TŮMA Jinými slovy, ortogonální projekcí vektoru v na podprostor W je vektor w se souřadnicemi [w]B = ( u1, v , u2, v , · · · , uk, v )T . Důkaz. Libovolný prvek w podprostoru W můžeme vyjádřit jako lineární kombinaci prvků ortonormální báze (u1, u2, . . . , uk). Prvek w = a1u1 + a2u2 + · · · + akuk je podle definice ortogonální projekcí prvku v na podprostor W = LO {u1, u2, . . . , uk} právě když je prvek v−w ortogonální ke každému prvku podprostoru W a to podle tvrzení 8.52 nastává právě když je ortogonální ke každému prvku ui. Pro každé i = 1, 2, . . . , k je prvek ui kolmý k prvku v − w právě když 0 = ui, v − w = ui, v − ui, w = ui, v − ui, a1u1 + a2u2 + · · · + akuk = ui, v − a1 ui, u1 − a2 ui, u2 − · · · − ak ui, uk = ui, v − ai ui, ui = ui, v − ai , tj. právě když ai = ui, v . Všimněte si, že vzorec pro výpočet ortogonální projekce na podprostor s ortonormální bází je stejný jako vzorec z tvrzení 8.47 pro souřadnice prvku vzhledem k ortonormální bázi. Tvrzení 8.47 je speciálním případem předešlého tvrzení, kdy V = W. Pokud báze (u1, u2, . . . , uk) v podprostoru W není ortonormální, ale pouze ortogonální, napřed ji normalizujeme u1 u1 , u2 u2 , . . . , uk uk a pak použijeme předchozí tvrzení. Dostaneme tak vyjádření ortogonální projekce w prvku v na podprostor W ve tvaru w = u1 u1 , v u1 u1 + u2 u2 , v u2 u2 + · · · + uk uk , v uk uk = u1, v u1 2 u1 + u2, v u2 2 u2 + · · · + uk, v uk 2 uk . Dokázali jsme tak následující důsledek. Důsledek 8.62. Je-li V vektorový prostor se skalárním součinem , , v ∈ V , a W konečně generovaný podprostor V s ortogonální bází B = (u1, u2, . . . , uk)T , pak prvek w = u1, v u1 2 u1 + u2, v u2 2 u2 + · · · + uk, v uk 2 uk je ortogonální projekcí vektoru v na podprostor W. Pomocí souřadnic vzhledem k ortogonální bázi B poslední důsledek zapíšeme ve tvaru [w]B = u1, v u1 2 , u2, v u2 2 , . . . , uk, v uk 2 . LINEÁRNÍ ALGEBRA 279 V případě podprostoru W = LO {u} dimenze 1 dostáváme projekci w libovolného prvku v ∈ V na podprostor LO {u} jako w = u, v u 2 u . To odpovídá závěru příkladu 8.3. Příklad 8.63. V aritmetickém prostoru R3 se standardním skalárním součinem je ((1, 1, 2)T , (2, 0, −1)T ) ortogonální posloupnost. Ortogonální projekce w vektoru v = (1, 2, 3)T na rovinu W = LO (1, 1, 2)T , (2, 0, −1)T je tedy w = (1, 1, 2)(1, 2, 3)T (1, 1, 2)(1, 1, 2)T   1 1 2   + (2, 0, −1)(1, 2, 3)T (2, 0, −1)(2, 0, −1)T   2 0 −1   = 9 6   1 1 2   − 1 5   2 0 −1   = 1 10   11 15 32   . Jde skutečně o ortogonální projekci vektoru v na podprostor W, protože chybový vektor v−w = 1 10 (−1, 5, −2)T je kolmý na oba dva generátory (1, 1, 2)T , (2, 0, −1)T prostoru W. Vektor w je podle věty 8.60 ten jednoznačně určený vektor v W, pro který je chyba v − w nejmenší možná. Příklad 8.64. V R2 se skalárním součinem (x1, x2)T , (y1, y2) T = (x1, x2) 2 1 1 1 y1 y2 = 2x1y1 + x1y2 + x2y1 + x2y2 je ortogonální projekce vektoru v = (1, 0)T na přímku LO (0, 1)T rovná w = (0, 1) 2 1 1 1 1 0 (0, 1) 2 1 1 1 0 1 0 1 = 0 1 . Skutečně, chybový vektor v − w = (1, −1)T je kolmý na (0, 1)T , protože (1, −1) 2 1 1 1 0 1 = 0 . Příklad 8.65. Najdeme nejlepší aproximaci funkce x2 ve tvaru a + b sin x + c cos x (kde a, b, c ∈ R) ve smyslu, že π −π x2 − (a + b sin x + c cos x) 2 dx je co nejmenší. Protože 0 = π −π sin x dx = π −π cos x dx = π −π sin x cos x dx , 280 LIBOR BARTO A JIŘÍ TŮMA je posloupnost funkcí (1, sin x, cos x) ortogonální. Hledaná nejlepší aproximace je funkce x2 je tedy π −π x2 dx π −π 1 dx · 1 + π −π x2 (sin x) dx π −π (sin x)2 dx · sin x + π −π x2 (cos x) dx π −π (cos x)2 dx · cos x ≈ 3.29 − 4 cos x 8.4.2. Gramova-Schmidtova ortogonalizace. Nyní dokážeme, že v každém konečně generovaném vektorovém prostoru se skalárním součinem existuje ortonormální báze. Existenci ortonormální báze dokážeme pomocí algoritmu, kterému se říká Gramova-Schmidtova ortogonalizace. Tento algoritmus dostane na vstupu nějakou lineárně nezávislou posloupnost (v1, v2, . . . , vk) prvků vektorového prostoru V se skalárním součinem. Na výstupu vydá ortonormální posloupnost (u1, u2, . . . , uk) prvků prostoru V, která splňuje podmínku LO {u1, u2, . . . , ui} = LO {v1, v2, . . . , vi} pro každé i = 1, 2, . . . , k. Popíšeme variantu Gramovy-Schmidtovy ortogonalizace s průběžným normováním. První krok je jednoduchý – normalizujeme vektor v1, tj. položíme u1 = v1 v1 , pak platí také LO {u1} = LO {v1}. Z předpokladu lineární nezávislosti posloupnosti (v1, . . . , vk) vyplývá, že vektor v1 je nenulový, takže normalizaci můžeme provést. V dalších krocích provádíme postupně pro i = 2, 3, . . . , k následující operace. (ia) ortogonalizace: najdeme kolmici vektoru vi na podprostor LO {u1, . . . , ui−1}. Podle tvrzení 8.61 ji můžeme vypočítat vztahem vi − wi = vi − u1, vi u1 − u2, vi u2 − · · · − ui−1, vi ui−1, kde wi značí ortogonální projekci vektoru vi na daný podprostor; (ib) normalizace: položíme ui = vi − wi vi − wi . W = u1, u2 = v1, v2 u1 u2 v3 w3 v3−w3 . Obrázek 77. Krok (3a) LINEÁRNÍ ALGEBRA 281 Ověříme, že algoritmus funguje, tj. že algoritmus proběhne (to v našem případě znamená, že v (ib) nikdy nedělíme nulou) a že výsledná n-tice (u1, . . . , un) je ortonormální posloupnost splňující LO {u1, u2, . . . , ui} = LO {v1, v2, . . . , vi} pro každé i = 1, 2, . . . , k. To dokážeme indukcí. Předpokládejme, že jsme již spočítali prvních i − 1 vektorů u1, . . . , ui−1, které tvoří ortonormální posloupnost takovou, že LO {u1, u2, . . . , ui−1} = LO {v1, v2, . . . , vi−1}. V kroku (ia) je vektor vi −wi kolmý na všechny vektory v LO {u1, . . . , ui−1} podle definice ortogonální projekce a kolmice. Speciálně je tento vektor kolmý na vektory u1, . . . , ui−1, které jsou také navzájem kolmé podle indukčního předpokladu. Posloupnost (u1, . . . , ui−1, vi − wi) je tedy ortogonální. Zdůvodníme, že vektor vi − wi nemůže být nulový. V opačném případě je vi = wi, neboli ortogonální projekce vektoru vi na podprostor LO {u1, . . . , ui−1} = LO {v1, . . . , vi−1} (indukční předpoklad) je rovná vi. To znamená, že vi v tomto podprostoru leží, což je spor s lineární nezávislostí (v1, . . . , vi). Protože je vektor vi −wi nenulový, jeho norma je rovněž nenulová a normalizaci v kroku (ib) můžeme provést. Nyní víme, že (u1, . . . , ui) je ortonormální a zbývá ověřit rovnost LO {u1, u2, . . . , ui} = LO {v1, v2, . . . , vi} . Ověříme nejprve inkluzi ⊆ – stačí ověřit, že vektory u1, . . . , ui leží v lineárním obalu napravo. Z indukčního předpokladu víme, že LO {u1, . . . , ui−1} = LO {v1, . . . , vi−1}. Speciálně, každý z vektorů u1, . . . , ui−1 leží v LO {v1, . . . , vi}. Vektor ui je, jak vidíme z jeho výpočtu, lineární kombinací vi, u1, . . . , ui−1. Leží proto také v LO {u1, . . . , ui−1, vi} ⊆ LO {v1, . . . , vi−1, vi}. Důkaz opačné inkluze je rovněž snadný. Vektory v1, . . . , vi−1 leží v lineárním obalu vlevo díky indukčnímu předpokladu, vektor vi díky vyjádření vi = vi − wi ui+ wi, ve kterém oba vektory ui a wi v lineárním obalu LO {u1, . . . , ui} zřejmě leží. Dokázali jsme následující větu. Věta 8.66. Gramova-Schmidtova ortogonalizace převede libovolnou lineárně nezávislou posloupnost (v1, v2, . . . , vk) prvků vektorového prostoru se skalárním součinem na ortonormální posloupnost (u1, u2, . . . , uk), pro kterou platí LO {u1, u2, . . . , ui} = LO {v1, v2, . . . , vi} pro každé i = 1, 2, . . . , k. Pokud chceme najít pouze ortogonální bázi, stačí vynechat v algoritmu kroky (ib). V takovém případě hledáme ortogonální projekci wi vektoru vi na podprostor LO {u1, u2, . . . , ui−1} s ortogonální bází (u1, u2, . . . , ui−1) a k jejímu výpočtu musíme použít důsledek 8.62 místo tvrzení 8.61. Výpočtu norem vektorů vi − wi se tím ale nevyhneme (s výjimkou toho posledního). Příklad 8.67. V podprostoru W = LO {v1, v2, v3} = LO (1, 2, 0, 1)T , (1, −1, 1, 0)T , (0, 1, 1, 3)T prostoru R4 se standardním skalárním součinem najdeme ortonormální bázi u1, u2, u3. Použijeme Gramovu-Schmidtovou ortogonalizaci na posloupnost vektorů 282 LIBOR BARTO A JIŘÍ TŮMA (v1, v2, v3). Postupně počítáme u1 = v1 v1 = 1 √ 6     1 2 0 1     , w2 = u1, v2 u1 = 1 √ 6 (1, 2, 0, 1)     1 −1 1 0     1 √ 6     1 2 0 1     = − 1 6     1 2 0 1     , v2 − w2 =     1 −1 1 0     + 1 6     1 2 0 1     = 1 6     7 −4 6 1     , u2 = v2 − w2 v2 − w2 = 1 √ 102     7 −4 6 1     . w3 = u1, v3 u1 + u2, v3 u2 = 1 √ 6 (1, 2, 0, 1)     0 1 1 3     1 √ 6     1 2 0 1     + 1 √ 102 (7, −4, 6, 1)     0 1 1 3     1 √ 102     7 −4 6 1     = 5 6     1 2 0 1     + 5 102     7 −4 6 1     = 1 102     120 150 30 90     = 5 17     4 5 1 3     , v3 − w3 =     0 1 1 3     − 5 17     4 5 1 3     = 4 17     −5 −2 3 9     , u3 = v3 − w3 v3 − w3 = 1 √ 119     −5 −2 3 9     . Získali jsme tak ortonormální posloupnost     1 √ 6     1 2 0 1     , 1 √ 102     7 −4 6 1     , 1 √ 119     −5 −2 3 9         , která je ortonormální bází podprostoru W = LO (1, 2, 0, 1)T , (1, −1, 1, 0)T , (0, 1, 1, 3)T . LINEÁRNÍ ALGEBRA 283 Při řešení předchozího příkladu jsem neověřovali předpoklad, že daná posloupnost (v1, v2, v3) je lineárně nezávislá. Není to nutné, protože algoritmus pro GramovuSchmidtovu ortogonalizaci sám pozná, je-li některý z daných prvků vi lineárně závislý na předchozích. Pokud by takový prvek vi existoval, pro první z nich by platilo vi ∈ LO {v1, v2, . . . , vi−1} = LO {u1, u2, . . . , ui−1} . Ortogonální projekce wi prvku vi na podprostor LO {u1, u2, . . . , ui−1} by se rovnala vi a rozdíl vi −wi by byl nulový vektor. V kroku (ib) by se algoritmus ozval, že má dělit číslem 0, a zastavil by se. Gramovu-Schmidtovu ortogonalizaci tak můžeme použít ke zjištění, je-li nějaká posloupnost (v1, v2, . . . , vk) prvků vektorového prostoru se skalárním součinem lineárně závislá nebo nezávislá. Další příklad ukazuje ortogonalizaci v prostoru funkcí. Příklad 8.68. V prostoru reálných polynomů se skalárním součinem f, g = 1 0 fg budeme ortogonalizovat posloupnost (v1, v2, v3) = (1, x, x2 ). Zároveň spočítáme ortogonální projekci vektoru x2 na podprostor LO {1, x}, neboli aproximaci vektoru x2 funkcí tvaru a + bx, která je nejlepší vzhledem k danému skalárnímu součinu. u1 = v1 v1 = 1 1 0 12dx 1 = 1 , w2 = u1, v2 u1 = 1 0 (1 · x) dx · 1 = 1 2 , v2 − w2 = x − 1 2 , u2 = v2 − w2 v2 − w2 = x − 1 2 1 0 (x − 1 2 )2 dx = 2 √ 3x − √ 3 . w3 = u1, v3 u1 + u2, v3 u2 = 1 0 (1 · x2 ) dx 1 + 1 0 2 √ 3x − √ 3 x2 dx 2 √ 3x − √ 3 = x − 1 6 , v3 − w3 = x2 − x + 1 6 , u3 = v3 − w3 v3 − w3 = x2 − x + 1 6 1 0 x2 − x + 1 6 2 dx = x2 − x + 1 6 1 30 = √ 30 x2 − x + 1 6 . Získali jsme tak ortonormální bázi 1, 2 √ 3x − √ 3, √ 30 x2 − x + 1 6 prostoru LO 1, x, x2 polynomů stupně nejvýše 2. Ortogonální projekce (a hledaná aproximace) vektoru v3 = x2 na podprostor LO {1, x} = LO {v1, v2} = LO {u1, u2} je vektor w3 = x − 1/6 . Chybový vektor, tj. rozdíl v3 − w3 je x2 − x + 1 6 , jeho velikost je 1/30. 284 LIBOR BARTO A JIŘÍ TŮMA x y −1 4 1 4 1 2 3 4 1 11 4 1 4 1 2 3 4 1 11 4 Obrázek 78. K příkladu 8.68 Z věty 8.66 dostáváme ihned dva důležité důsledky. Věta 8.69. Je-li W podprostor konečně generovaného vektorového prostoru V se skalárním součinem, pak každou ortonormální (ortogonální) bázi v podprostoru W lze doplnit na ortonormální (ortogonální) bázi celého prostoru V. Speciálně, v každém konečně generovaném vektorovém prostoru se skalárním součinem existuje ortonormální báze. Důkaz. Nechť (u1, u2, . . . , uk) ortonormální báze W. Tuto lineárně nezávislou posloupnost můžeme doplnit vektory vk+1, . . . , vn na bázi V (viz důsledek 5.64). Gramova-Schmidtova ortogonalizace z posloupnosti (u1, u2, . . . , uk, vk+1, . . . , vn) vytvoří ortonormální posloupnost, přičemž prvních k prvků nezmění. (Můžeme ji také „spustit až od (k + 1)-ního cyklu). Totéž uděláme v případě pouhé ortogonální báze (u1, u2, . . . , uk) podprostoru W, Gramovu-Schmidtovu ortogonalizaci použijeme bez normalizačních kroků (ib). Druhým důsledkem je následující věta, která formalizuje intuitivní tvrzení, že každý konečně generovaný vektorový prostor se skalárním součinem je „v podstatě stejný jako aritmetický vektorový prostor se standardním skalárním součinem. Věta 8.70. Je-li V vektorový prostor dimenze n nad R (nebo nad C) se skalárním součinem , , pak existuje izomorfismus f : V → Rn (nebo f : V → Cn ), pro který platí u, v = f(u) · f(v) pro každé dva prvky u, v ∈ V. Důkaz. V prostoru V zvolíme ortonormální bázi B a definujeme f předpisem f(u) = [u]B. Podle tvrzení 6.29 je f izomorfizmus mezi V a Rn (nebo Cn ). Podle tvrzení 8.49 platí u, v = [u]∗ B [v]B = f(u) · f(v) . LINEÁRNÍ ALGEBRA 285 Gramova-Schmidtova ortogonalizace obecně není numericky stabilní. Její stabilitu lze vylepšit tak, že jednotlivé algebraické operace při výpočtu děláme v jiném pořadí, ale tak, aby se výsledek nezměnil. Tomu se říká modifikovaná GramovaSchmidtova ortogonalizace. Existují i jiné numericky stabilní ortogonalizační postupy, například algoritmus využívající Householderovy transformace, nebo algoritmus využívající Givensovy rotace. Příklad 8.71. V aritmetice se zaokrouhlováním na tři platná místa vyjde GramovoSchmidtovou ortogonalizací (vzhledem ke standardnímu skalárnímu součinu v R3 )     1 10−3 10−3   ,   1 10−3 0   ,   1 0 10−3     posloupnost     1 10−3 10−3   ,   0 0 −1   ,   0 −0,709 −0,709     . Druhý a třetí vektor příliš kolmé nevyšly. Je to způsobené tím, že původní vektory jsou skoro rovnoběžné. 8.4.3. QR-rozklad. QR-rozklad je maticová formulace Gramovy-Schmidtovy ortogonalizace v aritmetických vektorových prostorech se skalárním součinem. Ze vzorce pro Gramovu-Schmidtovu ortogonalizaci vidíme, že původní vektory vi lze vyjádřit jako lineární kombinaci vektorů u1, u2, . . . , ui, které jsou navzájem ortogonální a jednotkové. Použijeme-li tento fakt na lineárně nezávislou posloupnost (v1, v2, . . . , vk) reálných (nebo komplexních) n-složkových aritmetických vektorů, získáme vyjádření matice A = (v1|v2| . . . |vk) jako součinu matice (u1|u2| . . . |uk) s ortonormální posloupností sloupců a horní trojúhelníkové matice řádu k. Tomuto vyjádření říkáme QR-rozklad. Později v tvrzení 8.86 ukážeme, že QR-rozklad reguální matice je jednoznačný. Tvrzení 8.72 (o QR-rozkladu). Je-li A reálná nebo komplexní matice typu n × k s lineárně nezávislou posloupností sloupcových vektorů, pak existuje matice Q typu n × k nad stejným tělesem s ortonormální posloupností sloupců (vzhledem ke standardnímu skalárnímu součinu) a horní trojúhelníková matice R řádu k s kladnými reálnými prvky na hlavní diagonále taková, že platí A = QR. Důkaz. Označíme (v1, . . . , vk) posloupnost sloupcových vektorů matice A. Na tuto posloupnost provedeme Gramovu-Schmidtovu ortogonalizaci, tj. označíme pro každé i = 1, 2, . . . k wi = u1, vi u1 + u2, vi u2 + · · · + ui−1, vi ui−1 , ui = vi − wi vi − wi . Z toho získáme vyjádření vi = vi − wi ui + wi = vi − wi ui + u1, vi u1 + u2, vi u2 + · · · + ui−1, vi ui−1 = u1, vi u1 + u2, vi u2 + · · · + ui−1, vi ui−1 + vi − wi ui , 286 LIBOR BARTO A JIŘÍ TŮMA což můžeme maticově zapsat ve tvaru (v1|v2| . . . |vk) = (u1| . . . |uk)      v1 − w1 u1, v2 . . . u1, vk 0 v2 − w2 . . . u2, vk ... ... ... ... 0 0 . . . vk − wk      . Provádíme-li Gramovu-Schmidtovu vzhledem ke standardnímu součinu, dostáváme požadovaný rozklad (v1|v2| . . . |vk) = (u1| . . . |uk)      v1 − w1 u∗ 1v2 . . . u∗ 1vk 0 v2 − w2 . . . u∗ 2vk ... ... ... ... 0 0 . . . vk − wk      . Příklad 8.73. Vypočítáme QR-rozklad reálné matice A = (v1|v2|v3) =     1 1 0 2 −1 1 0 1 1 1 0 3     . Gramovu-Schmidtovu ortogonalizaci posloupnosti sloupcových vektorů (v1, v2, v3) v aritmetickém prostoru se standardním skalárním součinem jsme spočítali už v příkladu 8.67. Našli jsme tam ortonormální posloupnost (u1, u2, u3) =     1 √ 6     1 2 0 1     , 1 √ 102     7 −4 6 1     , 1 √ 119     −5 −2 3 9         . Z výpočtu také můžeme vyčíst všechny prvky matice R z důkazu předchozí věty. Dostaneme     1 1 0 2 −1 1 0 1 1 1 0 3     =     1/ √ 6 7/ √ 102 −5/ √ 119 2/ √ 6 −4/ √ 102 −2/ √ 119 0 6/ √ 102 3/ √ 119 1/ √ 6 1/ √ 102 9/ √ 119       √ 6 −1/ √ 6 5/ √ 6 0 √ 102/6 5/ √ 102 0 0 4 √ 119/17   . QR-rozklad lze použít při řešení reálných (komplexních) soustav lineárních rovnic A x = b s danou regulární maticí A a různými vektory pravých stran b podobným způsobem, jakým lze použít LU-rozklad. Spočteme QR-rozklad matice A = QR. Protože Q má ortonormální posloupnost sloupců, platí Q∗ Q = In (viz příklad 8.43), takže Q∗ = Q−1 , protože Q je čtvercová. Rovnici A x = b přepíšeme do tvaru QR x = b a vynásobíme Q∗ = Q−1 . Soustava R x = Q∗ b má horní trojúhelníkovou matici, můžeme ji proto vyřešit zpětnou substitucí. Algoritmus pro QR-rozklad je numericky stabilnější než Gaussova eliminace, která vede na LU-rozklad. Vyžaduje ale zhruba n3 aritmetických operací, což je třikrát více než výpočet LU-rozkladu. LINEÁRNÍ ALGEBRA 287 8.4.4. Vlastnosti ortogonálního doplňku. Dalšími důsledky existence ortonormální báze konečně generovaných prostorů se skalárním součinem jsou vlastnosti ortogonálního doplňku shrnuté v následující větě. Věta 8.74. Nechť V je vektorový prostor se skalárním součinem , a W je konečně generovaný podprostor V. Pak platí (1) V = W ⊕ W⊥ , (2) (W⊥ )⊥ = W. (3) Každý vektor v ∈ V má jednoznačně určenou ortogonální projekci na W a také jednoznačně určenou ortogonální projekci na W⊥ . (4) Je-li V konečně generovaný prostor dimenze n, pak dim(W⊥ ) = n − dim(W), Důkaz. Podle věty 8.69 existuje ortonormální báze prostoru W (se skalárním součinem zděděným z prostoru V). Zvolme tedy nějakou ortonormální bázi (w1, . . . , wk) prostoru W, tj. dim W = k. (1). Pro každý vektor v ∈ V existuje podle tvrzení 8.61 ortogonální projekce w na podprostor W. V součtu v = w + (v − w) je první vektor z W a druhý vektor z W⊥ . To ukazuje, že V = W + W⊥ . Navíc W je kolmý na W⊥ , takže jejich jediným společným vektorem je o (viz poznámka za definicí 8.51 ortogonálního doplňku). Platí tedy W ∩ W⊥ = {o} a W + W⊥ = V , což zapisujeme jako V = W ⊕ W⊥ . (2). Podprostor W je kolmý na W⊥ , takže W je podmnožinou (W⊥ )⊥ . K důkazu druhé inkluze uvažujme libovolný vektor v ∈ (W⊥ )⊥ a snažme se ukázat v ∈ W. Jako v přechozím bodu, vektor v má ortogonální projekci w na W. Podle definice ortogonální projekce je v − w ∈ W⊥ , speciálně w ⊥ (v − w), protože w ∈ W. Vektor v ∈ (W⊥ )⊥ je kolmý na každý vektor z W⊥ , platí tedy v ⊥ (v − w). Nyní v − w 2 = v − w, v − w = v, v − w − w, v − w = 0 − 0 , z čehož plyne v − w = o, protože skalární součin je pozitivně definitní. Ukázali jsme v = w ∈ W, jak jsme chtěli. (3). Jednoznačnost ortogonální projekce vektoru v ∈ V byla dokázána ve větě 8.60, existence ortogonální projekce w vektoru v na W v tvrzení 8.61. Vektor v − w leží v prostoru W⊥ . Protože v − (v − w) = w ∈ W = (W⊥ )⊥ podle předchozího bodu, je v − w ortogonální projekcí vektoru v na podprostor W⊥ . (4). Z věty o dimenzi součtu a průniku 5.103 a bodu (1) spočítáme dim W⊥ = dim(W + W⊥ ) + dim(W ∩ W⊥ ) − dim W = dim(V) + 0 − k = n − k . Ve větě se předpokládá, že podprostor W je konečně generovaný, ale V být konečně generovaný nemusí. To odpovídá například situaci z příkladu 8.65, kde V je prostor spojitých funkcí a W je podprostor generovaný konečně mnoha spojitými funkcemi. Předpoklad, že W je konečně generovaný nelze vynechat, viz cvičení. Jedno pozorování učiněné v důkazu věty si zaslouží zdůraznit. Ortogonální projekce w vektoru v na prostor W dává rozklad v = w + (v − w), kde w ∈ W a (v − w) ∈ W⊥ , a kolmice – vektor v−w – je zároveň ortogonální projekcí vektoru v na podprostor W⊥ . Dokázaná věta nám také umožňuje zdůvodnit tvrzení v příkladu 8.7 o interpretaci řešení soustavy lineárních rovnic Ax = b nad reálnými čísly. V příkladu jsme 288 LIBOR BARTO A JIŘÍ TŮMA W W⊥ v w v − w si všimli, že vektor x je směrovým vektorem množiny řešení (tj. x ∈ Ker A) právě tehdy, když je kolmý ke všem řádkovým vektorům matice A. To nastane právě tehdy, když je kolmý k řádkovému prostoru. Maticově zapsáno, Ker A = (Im AT )⊥ . Z bodu (2) nyní také máme Im AT = ((Im AT )⊥ )⊥ = (Ker A)⊥ , slovy, vektor je kolmý ke všem prvkům Ker A právě tehdy, když leží v lineárním obalu řádků matice A. Ještě trochu jinak, normálové vektory množiny všech řešení soustavy Ax = o jsou právě lineární kombinace řádků matice A. Bod (1) nám také dává rozklad Ker A ⊕ Im AT = Rn , kde n je počet sloupců matice A. Pro zbylé dva prostory určené maticí platí obdobně (Im A)⊥ = Ker AT , (Ker AT )⊥ = Im A, Ker AT ⊕ Im A = Rm , kde m je počet řádků matice A. Dostaneme je z předchozích rovností (Im AT )⊥ = Ker A a (Ker A)⊥ = Im AT nahrazením matice A transponovanou maticí AT . Nad komplexními čísly vychází stejné vztahy, jen je potřeba transponování nahradit hermitovským sdružováním a reálné prostory Rn , Rm komplexními prostory Cn , Cm . Příklad 8.75. Pro matici A =   1 2 −3 1 −1 2 2 1 −1   máme Ker A = LO (−1, 5, 3)T , Im AT = LO (1, 2, −3)T , (1, −1, 2)T . Přímku Ker A tvoří právě vektory kolmé na rovinu Im AT , rovinu Im AT tvoří právě vektory kolmé na přímku Ker A a platí Ker A ⊕ Im AT = R3 . 8.4.5. Gramova matice. Tvrzení 8.61 dává vzorec na výpočet ortogonální projekce vektoru v ∈ V na konečně generovaný podprostor W, známe-li v W nějakou ortonormální bázi. Odvození vzorce z důkazu tohoto tvrzení lze obecněji použít v případě, že v W máme dánu obecnou množinu generátorů, tj. ne nutně ortogo- nální. LINEÁRNÍ ALGEBRA 289 Tvrzení 8.76. Je-li W konečně generovaný podprostor vektorového prostoru V se skalárním součinem , , v ∈ V a {u1, u2, . . . , uk} množina generátorů prostoru W, pak vektor w = a1u1 + · · · + akuk je ortogonální projekcí vektoru v na W právě tehdy, když je aritmetický vektor (a1, . . . , ak)T řešením soustavy lineárních rovnic      u1, u1 u1, u2 · · · u1, uk u1, v u2, u1 u2, u2 · · · u2, uk u2, v ... ... ... ... uk, u1 uk, u2 · · · uk, uk uk, v      . Důkaz. Definice ortogonální projekce w prvku v na podprostor W říká, že musí platit (v − w) ⊥ W, což platí právě když (v − w) ⊥ ui pro každé i = 1, 2, . . . , k, neboli právě když ui, w = ui, v . Pro každé i = 1, . . . , k je součin ui, w z linearity roven ui, w = ui, a1u1 + · · · + akuk = a1 ui, u1 + a2 ui, u2 + · · · + ak ui, uk . Rovnost ui, w = ui, v je tedy ekvivalentní rovnosti a1 ui, u1 + a2 ui, u2 + · · · + ak ui, uk = ui, v . V případě, že je v přechozím tvrzení posloupnost B = (u1, . . . , uk) lineárně nezávislá (tedy tvoří bázi prostoru W), pak lze závěr formulovat přehledněji tak, že souřadnice [w]B ortogonální projekce w vektoru v na podprostor W jsou řešením uvedené soustavy rovnic. Příklad 8.77. V prostoru reálných polynomů se skalárním součinem f, g = 1 0 fg najdeme ortogonální projekci w polynomu v = x2 na podprostor W = LO {u1, u2} = LO {1, x} polynomů stupně nejvýše 1. Vyřešíme tím znovu část příkladu 8.68. Projekce je w = a+bx s neznámými koeficienty a, b ∈ R, které podle předchozího tvrzení najdeme jako řešení soustavy u1, u1 u1, u2 u1, v u2, u1 u2, u2 u2, v = 1 0 1 1 0 x 1 0 x2 1 0 x 1 0 x2 1 0 x3 = 1 1 2 1 3 1 2 1 3 1 4 . Řešením soustavy dostaneme vektor (a, b)T = (−1 6 , 1)T . Ortogonální projekce polynomu v = x2 je tedy w = au1 + bu2 = − 1 6 + x . Matice soustavy z tvrzení 8.76 si také vysloužila vlastní jméno. Definice 8.78. Jsou-li u1, u2, . . . , uk prvky vektorového prostoru se skalárním součinem , , pak čtvercovou matici      u1, u1 u1, u2 · · · u1, uk u2, u1 u2, u2 · · · u2, uk ... ... ... ... uk, u1 uk, u2 · · · uk, uk      290 LIBOR BARTO A JIŘÍ TŮMA řádu k nazýváme Gramova matice posloupnosti vektorů (u1, u2, . . . , uk). Přeformulujeme si tvrzení 8.76 pro případ aritmetických vektorových prostorů se standardním skalárním součinem. Výhodné je v tomto případě používat maticový jazyk. Uvažujme tedy prostor V = Rn nebo V = Cn , vektor v ∈ V a podprostor W prostoru V generovaný vektory u1, . . . , uk. Označme A = (u1| . . . |uk) – je to reálná nebo komplexní matice typu n × k. Podprostor W je lineární obal sloupců této matice, takže W = Im A. Výraz a1u1 + · · · + akuk můžeme maticově zapsat jako Ax, kde x = (a1, . . . , ak)T . Gramova matice je rovná A∗ A (viz výpočet v příkladu 8.43) a pravá strana soustavy v tvrzení je rovná A∗ v. Tvrzení tedy v této situaci dává následující důsledek. Důsledek 8.79. Nechť A je reálná nebo komplexní matice typu n × k a v ∈ Rn (resp. v ∈ Cn ). Pak vektor Ax (kde x ∈ Rk nebo x ∈ Ck ) je ortogonální projekcí vektoru v na podprostor Im A právě tehdy, když A∗ Ax = A∗ v . Důkaz. Důkaz jsme již provedli výše užitím tvrzení 8.76. Maticově jde důkaz přímo provést velmi rychle: Vektor Ax je ortogonální projekcí vektoru v na Im A právě když (v − Ax) ⊥ Im A, což je právě když každý sloupec matice A je kolmý na (v − Ax), to nastane právě když A∗ (v − Ax) = o, a to je po drobné úpravě ekvivalentní A∗ Ax = A∗ v. Gramovu matici lze vyjádřit ve tvaru A∗ A i v obecném případě: Je-li W konečně generovaný vektorový prostor se skalárním součinem , a B je jeho ortonormální báze, pak Gramova matice posloupnosti (u1, . . . , uk) je rovná A∗ A pro matici A = ([u1]B|[u2]B| · · · |[uk]B) , protože podle tvrzení 8.49 o výpočtu skalárního součinu ze souřadnic vzhledem k ortonormální bázi platí A∗ A =      [u1]∗ B[u1]B [u1]∗ B[u2]B · · · [u1]∗ B[uk]B [u2]∗ B[u1]B [u2]∗ B[u2]B · · · [u2]∗ B[uk]B ... ... ... ... [uk]∗ B[u1]B [uk]∗ B[u2]B · · · [uk]∗ B[uk]B      =      u1, u1 u1, u2 · · · u1, uk u2, u1 u2, u2 · · · u2, uk ... ... ... ... uk, u1 uk, u2 · · · uk, uk      . Základní vlastnosti Gramovy matice shrnuje následující tvrzení. Tvrzení 8.80. Pro Gramovu matici B = ( ui, uj )k×k posloupnosti prvků (u1, u2, . . . , uk) vektorového prostoru V se skalárním součinem , platí (1) matice B je regulární právě když je posloupnost (u1, u2, . . . , uk) lineárně nezávislá, (2) matice B je hermitovská (symetrická v reálném případě), (3) je-li posloupnost (u1, u2, . . . , uk) lineárně nezávislá, pak je B pozitivně de- finitní. LINEÁRNÍ ALGEBRA 291 Důkaz. K důkazu (1) použijeme tvrzení 8.76 na vektor v = o, jehož ortogonální projekce je w = o. Matice soustavy z tvrzení je rovná B a pravá strana je nulová. Víme tedy, že a1u1 +· · ·+akuk = o platí právě tehdy, když (a1, . . . , ak)T je řešením homogenní soustavy rovnic s maticí B. Z toho vyplývá, že a1u1 + · · · + akuk = o pro nějaký nenulový vektor (a1, . . . , ak)T (ekvivalentně (u1, . . . , uk) je lineárně závislá) právě tehdy, když homogenní soustava rovnic s maticí B má netriviální řešení (ekvivalentně B je singulární). Vlastnost (2) plyne ze skorosymetrie (SSS) skalárního součinu. K důkazu (3) označíme W podprostor prostoru V generovaný vektory u1, . . . , uk a zvolíme nějakou ortonormální bázi C prostoru W, což lze podle věty 8.69. Výpočet nad tvrzením ukazuje, že B = A∗ A pro matici A = ([u1]C| · · · |[uk]C). Matice A je regulární, protože je čtvercová a její sloupce tvoří lineárně nezávislou posloupnost. Pozitivní definitnost matic tvaru A∗ A pro regulární matici A jsme ale již ověřili za definicí 8.21 pozitivně definitních matic. Jako cvičení dokažte bod (1) maticově, pomocí rozkladu B = A∗ A z důkazu bodu (3). Tvrzení mimo jiné ukazuje, že Gramova matice jakékoliv báze vektorového prostoru se skalárním součinem je vždy pozitivně definitní. V kapitole o bilineárních formách ukážeme, že každá pozitivně definitní matice je naopak Gramovou maticí nějaké báze. 8.5. Unitární a ortogonální zobrazení a matice. Lineární zobrazení mezi prostory se skalárními součiny se nazývá unitární (v reálném případě ortogonální), pokud zachovává skalární součin a tím pádem i odvozené pojmy jako normu, kolmost, v reálném případě úhel. Představa je taková, že zatímco obecné lineární zobrazení může objekty lineárně deformovat (např. zkosení), nebo dokonce degenerovat (např. projekce na přímku v nějakém směru), ortogonální zobrazení objekty může pouze rotovat nebo ještě překlápět podle nadroviny. Této intuici lze dát přesný smysl, v kapitole o vlastních číslech to provedeme pro ortogonální zobrazení R2 → R2 a R3 → R3 . Nejdůležitějším speciálním případem jsou unitární (ortogonální) zobrazení mezi stejnými prostory, tzv. unitární (ortogonální) operátory. Unitární operátory jsou základní objekty v kvantové mechanice. 8.5.1. Unitární a ortogonální matice. Začneme maticovou verzí unitárních (ortogonálních) operátorů na aritmetických prostorech. Čtvercová matice Q je unitární (ortogonální), pokud příslušné zobrazení fQ je unitární (ortogonální) operátor na aritmetickém vektorovém prostoru se standardním skalárním součinem, viz bod (6) tvrzení 8.82. Takové matice jsme v této kapitole už několikrát potkali v následující formě. Definice 8.81. Čtvercová komplexní (resp. reálná) matice řádu n se nazývá unitární (resp. ortogonální), pokud její sloupce tvoří ortonormální posloupnost vzhledem ke standardnímu skalárnímu součinu v Cn (resp. Rn ). Standardní pojmenování ortogonální matice je poněkud matoucí, smysluplnější by bylo nazývat ji ortonormální. Následující tvrzení shrnuje řadu různých ekvivalentních definic. Tvrzení 8.82. Je-li Q komplexní (resp. reálná) čtvercová matice řádu n, pak jsou následující tvrzení ekvivalentní. 292 LIBOR BARTO A JIŘÍ TŮMA (1) Q je unitární (resp. ortogonální), (2) Q∗ Q = In, (3) Q∗ je unitární (resp. ortogonální), (4) QQ∗ = In, (5) QT je unitární (resp. ortogonální), ekvivalentně, řádky matice Q tvoří ortonormální posloupnost, (6) zobrazení fQ zachovává standardní skalární součin, tj. pro libovolné u, v ∈ Cn (resp. Rn ) platí Qu · Qv = u · v. Speciálně, každá unitární (ortogonální) matice je regulární a platí Q−1 = Q∗ . Důkaz. Ekvivalenci (1) a (2) jsme nahlédli v příkladu 8.43: Q∗ Q = In je maticovým zápisem skutečnosti, že Q má ortonormální posloupnost sloupců. Podobně (3) a (4) jsou také ekvivalentní. Pokud platí Q∗ Q = In nebo QQ∗ = In, pak z věty 4.65 charakterizující regulární matice vyplývá Q−1 = Q∗ a platí tudíž i druhá z rovností. To dokazuje dodatek a ekvivalenci (2) a (4). Body (1), (2), (3), (4) jsou tedy ekvivalentní. Ekvivalence (3) ⇔ (5) je zajímavá jenom v komplexním případě. K důkazu si stačí uvědomit, že pro libovolné u, v ∈ Cn je u · v číslo komplexně sdružené k u · v, kde u značí aritmetický vektor, který je po složkách komplexně sdružený k u. Z toho plyne, že sloupce matice Q∗ tvoří ortonormální posloupnost právě když sloupce matice QT tvoří ortonormální posloupnost. Nakonec ukážeme, že z (2) plyne (6) a z (6) plyne (1). Je-li Q∗ Q = In, pak pro libovolné u, v ∈ Cn (resp. Rn ) platí (Q u) · (Q v) = (Q u)∗ Q v = u∗ Q∗ Q v = u∗ v = u · v . Pokud fQ zachovává standardní skalární součin, pak speciálně (Qei) · (Qej) = ei · ej = δij pro libovolná i, j ∈ {1, . . . , n}. Na levé straně je ale skalární součin i-tého a j-tého sloupce matice Q, tato matice je proto unitární (ortogonální). Příklad 8.83. Intuitivně vidíme, že rotace a zrcadlení podle podprostorů v R2 nebo R3 zachovávají normy a úhly, zachovávají tedy skalární součin. Podle bodu (6) jsou jejich matice vzhledem ke kanonickým bázím ortogonální. Dodatek předchozího tvrzení ukazuje, že unitární a ortogonální matice je velmi snadné invertovat – stačí je hermitovsky sdružit, v reálném případě transponovat. Na příkladě ukážeme trochu sofistikovanější použití. Příklad 8.84. Reálná matice A =   1 0 −13 2 3 2 3 −2 3   sice není ortogonální, ale můžeme vypozorovat, že má ortogonální posloupnost sloupců. To umožňuje rozložit matici A na součin ortogonální a diagonální: A = QR =    1√ 14 0 −13√ 182 2√ 14 3√ 13 2√ 182 3√ 14 −2√ 13 3√ 182      √ 14 0 0 0 √ 13 0 0 0 √ 182   LINEÁRNÍ ALGEBRA 293 Všimněte si, že jde vlastně o QR-rozklad matice A. Nyní máme A−1 = (QR)−1 = R−1 Q−1 = R−1 QT , čili A−1 =    1√ 14 0 0 0 1√ 13 0 0 0 1√ 182       1√ 14 2√ 14 3√ 14 0 3√ 13 −2√ 13 −13√ 182 2√ 182 3√ 182    =   1 14 2 14 3 14 0 3 13 −2 13 −13 182 2 182 3 182   Jsou-li A, B dvě unitární (nebo ortogonální) matice těhož řádu, pak podle bodu (2) tvrzení 8.82 platí (AB)∗ (AB) = B∗ A∗ AB = B∗ B = In, tedy AB je rovněž unitární (ortogonální). Dokázali jsme následující důsledek. Důsledek 8.85. Součin dvou unitárních (resp. ortogonálních) matic téhož řádu je opět unitární (resp. ortogonální) matice. Vlastnosti unitárních a ortogonálních matic pomohou dokázat jednoznačnost QR-rozkladu regulárních matic. Tvrzení 8.86. Je-li A regulární (reálná nebo komplexní) matice řádu n a A = Q1R1 = Q2R2 jsou dva QR-rozklady matice A, pak platí Q1 = Q2 a R1 = R2. Důkaz. Důkaz budeme formulovat pro reálný případ, abychom se vyhnuli nadměrnému závorkování. Jsou-li A = Q1R1 = Q2R2 dva QR-rozklady regulární matice A, plyne odtud Q−1 2 Q1 = R2R−1 1 . Označíme si tento součin C = (c1|c2| · · · |cn) = (cij). Součin Q−1 2 Q1 je ortogonální jakožto součin dvou ortogonálních matic a součin R2R−1 1 je horní trojúhelníková matice s kladnými prvky na hlavní diagonále. Platí proto ci1 = 0 pro i > 1 a tedy 1 = c1 = |c11| a tedy c11 = 1, neboť c11 je kladné reálné číslo. To znamená, že c1 = e1. Dále postupujeme indukcí podle indexu sloupců cj a dokážeme cj = ej pro každé j = 1, 2, . . . , n. Pro j = 1 jsme to právě ověřili. Předpokládejme nyní, že pro nějaké j > 1 a j ≤ n platí ci = ei pro každé i = 1, 2, . . . , j − 1. Z rovností ci · cj = 0 pro i < j (Q je ortogonální) a indukčního předpokladu ci = ei plyne 0 = ei · cj = cij pro každé i < j. Matice (cij) = R2R−1 1 je horní trojúhelníková, proto také cij = 0 pro každé i > j. Z rovnosti cj = 1 (opět ortogonalita matice C) pak plyne c2 jj = 1 a tedy cjj = 1, neboli cj = ej. Indukcí jsme tak dokázali, že Q−1 2 Q1 = R2R−1 1 = In a tedy Q1 = Q2 a R1 = R2. 8.5.2. Unitární a ortogonální zobrazení. Nyní budeme uvažovat lineární zobrazení mezi dvěma potenciálně různými prostory V a W opatřené skalárními součiny. Tyto součiny i indukované normy rozlišíme dolním indexem. V případě unitárních operátorů, tj. v případě V = W, se většinou implicitně rozumí, že se shodují i skalární součiny , V = , W . Definice 8.87. Nechť V a W jsou vektorové prostory nad C (resp. R) se skalárními součiny , V , , W . Lineární zobrazení f : V → W nazýváme unitární (resp. ortogonální), pokud zachovává skalární součin, tj. pro libovolné u, v ∈ V platí f(u), f(v) W = u, v V . 294 LIBOR BARTO A JIŘÍ TŮMA Je snadné si rozmyslet, že ze zachovávání skalárního součinu plyne zachovávání odvozené normy, kolmosti, apod. Zajímavější v následujícím tvrzení jsou opačné implikace. Tvrzení 8.88. Nechť f : V → W je lineární zobrazení mezi komplexními (resp. reálnými) vektorovými prostory V, W se skalárními součiny , V , , W . Pak následující tvrzení jsou ekvivalentní. (1) f je unitární (resp. f je ortogonální), (2) f zachovává normu, tj. pro libovolný vektor v ∈ V platí f(v) W = v V , (3) f zachovává ortonormalitu, tj. je-li (v1, . . . , vn) ortonormální posloupnost ve V, pak (f(v1), . . . , f(vn)) je ortonormální posloupnost v W. (4) f zobrazuje jednotkové vektory ve V na jednotkové vektory v W. Speciálně, každé unitární (ortogonální) zobrazení je prosté. Důkaz. Implikace (1) ⇒ (3) ⇒ (4) a (1) ⇒ (2) ⇒ (4) jsou přímočaré, například (1) ⇒ (2) se dokáže výpočtem f(v) W = f(v), f(v) W = v, v V = v V . Implikace (4) ⇒ (2) plyne z linearity f a vlastností normy: libovolný nenulový vektor v napíšeme ve tvaru v = tu, kde t = v V je kladné reálné číslo a u = v/ v V je jednotkový, a spočítáme f(v) W = f(tu) W = tf(u) W = t f(u) W = t u V = tu V = v V . Zachovávání normy nulového vektoru je zřejmé. Nyní stačí dokázat, že z (2) plyne (1). Tato implikace je důsledkem polarizačních identit, které vyjadřují skalární součin pomocí normy. Na ukázku srovnáme reálné části, podobně by se postupovalo pro imaginární. Re ( f(u), f(v) W ) = 1 2 ( f(u) + f(v) 2 W − f(u) 2 − f(v) 2 ) = 1 2 ( f(u + v) 2 W − f(u) 2 W − f(v) 2 W ) = 1 2 ( u + v 2 V − u 2 V − v 2 V ) = Re ( u, v ) . Z bodu (2) vyplývá, že obrazem nenulového vektoru je opět nenulový vektor. Unitární nebo ortogonální zobrazení má proto triviální jádro, takže je prosté. Zachovávání kolmosti k unitaritě lineárního zobrazení nestačí – stejnolehlost s koeficientem různým od ±1 normu nezachovává, ale kolmost ano. Dokázané tvrzení můžeme použít na aritmetické prostory se standardním součinem a zobrazení fQ určené čtvercovou komplexní nebo reálnou maticí Q. Tím získáme další podmínky ekvivalentní unitaritě (ortogonalitě). Například ekvivalence unitarity se zachováváním normy v této situaci říká, že čtvercová komplexní matice Q je unitární právě tehdy, když pro libovolný vektor v ∈ Cn platí Qv = v . Nakonec si ještě přesně ujasníme vztah unitárních (ortogonálních) zobrazení a unitárních (ortogonálních) matic. Tvrzení 8.89. Nechť V a W jsou konečně generované vektorové prostory nad C (resp. R) se skalárními součiny , V , , W , B = (v1, . . . , vn) a C jsou po řadě ortonormální báze prostorů V a W, a f : V → W je lineární zobrazení. Pak f je LINEÁRNÍ ALGEBRA 295 unitární (resp. ortogonální) právě tehdy, když [f]B C má ortonormální posloupnost sloupců vzhledem ke standardnímu skalárnímu součinu. Speciálně, je-li V = W, pak f je unitární (resp. ortogonální) právě když [f]B C je unitární (resp. ortogonální). Důkaz. Je-li f unitární, pak je posloupnost (f(v1), . . . , f(vn)) ortonormální v W podle předchozího tvrzení. Z tvrzení 8.49 potom vyplývá, že pro i = j platí [f(vi)]C · [f(vj)]C = f(vi), f(vj) W = 0. Posloupnost sloupců matice [f]B C , tj. posloupnost ([f(v1)]C, . . . , [f(vn)]C), je tedy ortonormální vzhledem ke standardnímu skalárnímu součinu. Má-li naopak [f]B C ortonormální posloupnost sloupců, pak obrácením předchozí úvahy dostáváme, že (f(v1), . . . , f(vn)) je ortonormální posloupnost v W. Ověříme třeba, že f zachovává normu, což podle přechozího tvrzení stačí. Libovolný vektor u ∈ V lze psát jako u = a1v1 + · · · + anvn. Podle Pythagorovy věty máme u 2 = a2 1 +· · ·+a2 n, protože posloupnost (v1, . . . , vn) je ortonormální. Ze stejného důvodu je f(u) 2 = a1f(v1) + · · · + anf(vn) 2 = a2 1 + · · · + a2 n. Máme proto f(u) 2 = u 2 , jak jsme chtěli. Dodatek plyne z definice unitární matice a dokázané ekvivalence. 8.6. Aplikace a zajímavosti. 8.6.1. Metoda nejmenších čtverců. Při řešení praktických problémů se často stává, že vedou na soustavu rovnic Ax = b s reálnými nebo komplexními koeficienty, která nemá řešení. Řekněme, že A = (a1|a2| · · · |an) je matice typu m × n nad R nebo C, typicky m >> n. Taková soustava může například vzniknout sestavením rovnic z velkého množství měření, která jsou zatížená chybami. Chceme nalézt „co nejlepší přibližné řešení ˆx v tom smyslu, aby vektor Aˆx byl co nejblíže pravé straně soustavy b, tj. aby norma b − Aˆx byla co nejmenší možná. Metoda nejmenších čtverců je založená na měření normy vektorů pomocí eukleidovské normy (odtud její název), která je určená standardním skalárním součinem v Rn (nebo v Cn ). Definice 8.90. Nechť Ax = b je soustava lineárních rovnic s reálnými (nebo komplexními) koeficienty. Každý vektor ˆx ∈ Rn (nebo ˆx ∈ Cn ), který minimalizuje eukleidovskou normu b − Ax , se nazývá přibližné řešení (nebo aproximace řešení ) soustavy Ax = b metodou nejmenších čtverců. Vektor je tvaru Ax pro nějaké x ∈ Rn (x ∈ Cn ) právě když leží ve sloupcovém prostoru Im A matice A. Podle věty 8.60 o aproximaci je mezi všemi vektory Im A nejblíže k b ortogonální projekce vektoru b na podprostor Im A. Přibližnými řešeními soustavy Ax = b metodou nejmenších čtverců jsou tedy právě ty vektory ˆx, pro které Aˆx je rovno ortogonální projekci vektoru b na podprostor Im A. Jak takové vektory ˆx spočítat nám říká důsledek 8.79 o projekci aritmetických vektorů na podprostor. Tvrzení 8.91. Je-li A matice typu m×n nad R nebo C a b ∈ Rm (resp. Cm ), pak množina všech přibližných řešení soustavy Ax = b metodou nejmenších čtverců je rovna množině všech (přesných) řešení soustavy A∗ Aˆx = A∗ b . Definice 8.92. Soustavu A∗ Aˆx = A∗ b nazýváme soustava normálních rovnic příslušná k soustavě Ax = b. 296 LIBOR BARTO A JIŘÍ TŮMA Im A b Aˆx b−Aˆx . Obrázek 79. Krok (3a) Matice A∗ A je Gramova matice posloupnosti sloupcových vektorů matice A. Podle bodu (1) v tvrzení 8.80 je tedy A∗ A regulární právě když má matice A lineárně nezávislou posloupnost sloupcových vektorů. V takovém případě existuje inverzní matice (A∗ A) −1 a jednoznačně určenou aproximaci ˆx řešení soustavy Ax = b metodou nejmenších čtverců můžeme vyjádřit ve tvaru ˆx = (A∗ A) −1 A∗ b . Všimněme si také, že v tomto případě, kdy je posloupnost sloupcových vektorů matice A lineárně nezávislá, platí (A∗ A) −1 A∗ A = In , což znamená, že matice (A∗ A) −1 A∗ je inverzní zleva k matici A. Nazývá se MooreovaPenroseova pseudoinverze matice A. Mooreovu-Penroseovu pseudoinverzi obecné reálné nebo komplexní matice potkáme v části o singulárním rozkladu v kapitole o unitární diagonalizaci. Příklad 8.93. Řešení reálné soustavy (A|b), kde (A|b) =   2 0 3 1 1 5 −2 −1 −2   , metodou nejmenších čtverců je řešení soustavy AT Aˆx = AT b 2 1 −2 0 1 −1   2 0 1 1 −2 −1   ˆx = 2 1 −2 0 1 −1   3 5 −2   9 3 3 2 ˆx = 15 7 . Eliminací dostaneme ˆx = (x1, x2)T = (1, 2)T . Součin A(1, 2)T = (2, 3, −4) je ortogonální projekcí w vektoru b na podprostor Im A. Rozdíl mezi vektorem pravých stran b a vektorem w = Aˆx je potom b − w = (3, 5, −2)T − (2, 3, −4)T = (1, 2, 2)T a vzdálenost b od Im A je tedy b − w = 12 + 22 + 22 = 3 . LINEÁRNÍ ALGEBRA 297 8.6.2. (Lineární) regrese. Jedním z často využívaných příkladů použití metody nejmenších čtverců je lineární regrese. V této úloze chceme „co nejlépe proložit přímku y = ax + b danými naměřenými hodnotami (x1, y1), (x2, y2), . . . , (xn, yn). Přesněji řečeno, hledáme aproximaci „řešení soustavy      x1 1 y1 x2 1 y2 ... ... ... xn 1 yn      . Vidíme, že posloupnost sloupcových vektorů matice soustavy je lineárně nezávislá, pokud se liší aspoň dvě hodnoty xi pro i = 1, 2, . . . , n. Příklad 8.94. Metodou nejmenších čtverců proložíme body (0, 1), (1, 1), (2, 2), (3, 4), (4, 5) v R2 přímku y = ax+b. Dvojice koeficientů (a, b) je přibližným řešením soustavy lineárních rovnic       0 1 1 1 1 1 2 1 2 3 1 4 4 1 5       metodou nejmenších čtverců. Příslušná soustava normálních rovnic je 0 1 2 3 4 1 1 1 1 1       0 1 1 1 2 1 3 1 4 1       a b = 0 1 2 3 4 1 1 1 1 1       1 1 2 4 5       , 30 10 10 5 a b = 37 13 . Řešením vyjde (a, b)T = (11/10, 2/5) takže hledaná přímka je y = 11 10 x + 2 5 . (x1, y1) (x2, y2) (xn, yn) d1 d2 dn Obrázek 80. Lineární regrese – minimalizujeme d2 i . Daty můžeme prokládat složitější útvary, jako paraboly, polynomy vyššího stupně, elipsy (např. při hledání dráhy planety), apod. Také takové úlohy vedou na hledání řešení soustavy metodou nejmenších čtverců. 298 LIBOR BARTO A JIŘÍ TŮMA Příklad 8.95. Stejnými body proložíme „co nejlépe parabolu y = ax2 + bx + c. Koeficienty jsou řešením soustavy       0 0 1 1 1 1 1 1 4 2 1 2 9 3 1 4 16 4 1 5       metodou nejmenších čtverců. Vyjde (a, b, c)T = 1/70(15, 17, 58)T , y = 3 14 x2 + 17 70 x + 29 35 1 2 3 4 5 x y −1 1 2 3 4 5 1 2 3 4 5 x y −1 1 2 3 4 5 Metodu řešení posledních dvou příkladů můžeme zobecnit následujícím způsobem. Chceme danými daty (x1, y1), (x2, y2), . . . , (xn, yn) „co nejlépe proložit funkci, která je lineární kombinací předem zvolených reálných funkcí f1(x), f2(x), . . . , fq(x), kterým se v některých oborech říká regresory. V prvním z příkladů těmito funkcemi byla konstantní funkce f1(x) = 1 a lineární funkce f2(x) = x. Ve druhém z příkladů jsme si k těmto dvěma funkcím přidali ještě kvadratickou funkci f3(x) = x2 . Hledáme reálná čísla c1, c2, . . . , cq taková, že lineární kombinace ˆf(x) = c1f1(x) + c2f2(x) + · · · + cqfq(x) minimalizuje eukleidovskou vzdálenost mezi vektorem y = (y1, y2, . . . , yn)T a vektorem w = ( ˆf(x1), ˆf(x2), . . . , ˆf(xn))T , tj. eukleidovskou normu vektoru y − w. Označíme aij = fj(xi) pro i = 1, 2, . . . , n a j = 1, 2, . . . , q. Potom pro každé i = 1, 2, . . . , n platí ˆf(xi) = c1f1(xi) + c2f2(xi) + · · · + cqfq(xi) = ai1c1 + ai2c2 + · · · + aiqcq , což můžeme zapsat maticově ve tvaru w = Aˆc, kde ˆc = (c1, c2, . . . , cq)T . Ve sloupcovém prostoru Im A matice A tak hledáme vektor Aˆc, který minimalizuje vzdálenost od vektoru y. Pro hledaný vektor ˆc musí platit, že Aˆc je ortogonální projekcí vektoru y na podprostor Im A. Vektor ˆc tedy najdeme jako přibližné řešení soustavy y = Ac metodou nejmenších čtverců, tj. jako (pravé) řešení soustavy AT Aˆc = AT y . LINEÁRNÍ ALGEBRA 299 8.6.3. Řešení s nejmenší normou. Jiné praktické situace vedou na řešení soustavy Ax = b s reálnými nebo komplexními koeficienty, která je sice řešitelná, ale podurčená – má nekonečně mnoho řešení. Typicky jde o soustavu, která má daleko více neznámých než rovnic, tj. A je typu m × n, m << n. Zajímá nás často řešení, které má co nejmenší normu. Pro eukleidovskou normu indukovanou standardním skalárním součinem lze i tuto úlohu vyřešit našimi prostředky. Množina řešení řešitelné soustavy Ax = b je tvaru u + Ker A, kde u je libovolné řešení dané soustavy. Obrázek ?? vede k domněnce, že řešení s nejmenší normou existuje právě jedno a je rovno ortogonální projekci vektoru u na (Ker A)⊥ = Im A∗ . OBRAZEK Následující tvrzení ukazuje, že tato intuice je správná. Tvrzení 8.96. Nechť Ax = b je soustava lineárních rovnic nad R nebo nad C, která má alespoň jedno řešení u. Pak existuje právě jedno řešení xln soustavy Ax = b, které minimalizuje eukleidovskou normu x . Vektor xln je roven ortogonální projekci vektoru u na podprostor Im A∗ a platí xln = A∗ z, kde z je libovolné řešení soustavy AA∗ z = b. Důkaz. Předpokládejme, že u je řešení soustavy Ax = b a označme xln jeho ortogonální projekci na Im A∗ . Z důsledku 8.79 o projekci v aritmetických prostorech použitého na matici A∗ plyne, že xln = A∗ z, kde z je libovolné řešení soustavy AA∗ z = Au = b (z toho také vidíme, že xln nezávisí na volbě partikulárního řešení u). Zbývá ukázat, že xln je řešením soustavy a že toto řešení jako jediné minimalizuje eukleidovskou normu x . První fakt je jednoduchý – platí Axln = AA∗ z = b. Druhou skutečnost ukážeme podobně jako v důkazu věty 8.60 o aproximaci. Uvažujme libovolné jiné řešení v = xln soustavy Ax = b. Vektor v − xln leží v Ker A (protože je rozdílem dvou řešení soustavy) a je proto kolmý na xln ∈ Im A∗ = (Ker A)⊥ (náležení do Im A∗ plyne z vyjádření xln = A∗ z). Z Pythagorovy věty plyne v = xln 2 + v − xln 2 > xln 2 = xln . Mezi všemi řešeními soustavy Ax = b je tedy xln ten jediný vektor, který minimalizuje normu x . V případě, že A má lineárně nezávislou posloupnost řádků, je matice AA∗ regulární, protože je to Gramova matice komplexně sdružených řádkových vektorů matice A. V takovém případě má rovnice AA∗ z = b právě jedno řešení z = (AA∗ )−1 b a řešení soustavy Ax = b s nejmenší normou je tedy xln = A∗ (AA∗ )−1 b . V tomto případě je matice A∗ (AA∗ )−1 inverzní zprava k matici A. Jde o další speciální případ Mooreovy-Penrosovy pseudoinverze. Příklad 8.97. Najdeme řešení s nejmenší normou pro reálnou soustavu rovnic (A|b) = 1 2 3 18 −1 1 1 7 . 300 LIBOR BARTO A JIŘÍ TŮMA Nejprve najdeme řešení soustavy AAT z = b. Protože (AAT |b) = 14 4 18 4 3 7 , vidíme, že z = (1, 1)T . Hledané řešení s nejmenší normou je xln = AT 1 1 =   0 3 4   Příklad 8.98. TODO: prakticky problem Aproximaci neřešitelné soustavy a hledání řešení s nejmenší normou můžeme zkombinovat a vyřešit problém nalezení aproximace řešení soustavy Ax = b metodou nejmenších čtverců, které má navíc co nejmenší normu (viz cvičení). Cvičení 1. Jsou-li A, B matice nad tělesem C typu m × n, C je matice typu n × p nad C a a ∈ C, pak (1) (A + B)∗ = A∗ + B∗ , (2) (aA)∗ = aA∗ , (3) (A∗ )∗ = A. (4) (BC)∗ = C∗ B∗ . Dokažte. 2. Nechť A je čtvercová matice nad C. Dokažte, že det (A∗ ) = (det (A))∗ . 3. Nechť A je regulární matice nad C. Dokažte, že (A∗ )−1 = (A−1 )∗ . 4. Nechť A je čtvercová matice řádu n nad C. Dokažte, že zobrazení C×C → C definované vztahem u, v = u∗ Av splňuje podmínky (SL1) a (SL2). 5. Nechť A je čtvercová matice řádu n nad C. Dokažte, že zobrazení C×C → C definované vztahem u, v = u∗ Av splňuje podmínku (SSS) právě tehdy, když A je hermitovská (tj. A∗ = A). 6. Nechť B je regulární matice řádu n nad C a A = B∗ B. Dokažte, že zobrazení C×C → C definované vztahem u, v = u∗ Av je skalární součin. 7. Dokažte, že v libovolném vektorovém prostoru se skalárním součinem , platí • Re ( u, v ) = 1 2 ( u 2 + v 2 − u − v 2 ) • Re ( u, v ) = 1 4 ( u + v 2 − u − v 2 ) • Im ( u, v ) = 1 2 ( u − iv 2 − u 2 − v2 2 ) • Im ( u, v ) = 1 2 ( u 2 + v 2 − u + iv 2 ) • Im ( u, v ) = 1 4 ( u − iv 2 − u + iv 2 ) Im (x) značí imaginární část čísla x ∈ C. 8. Nad reálnými čísly lze Cauchyho-Schwarzovu nerovnost dokázat také následujícím způsobem: Výraz u + tv 2 definuje kvadratickou funkci. Protože musí být nezáporná, její diskriminant je nekladný a to dává C-S nerovnost. Doplňte detaily. 9. Kdy nastává v trojúhelníkové nerovnosti rovnost? 10. Dokažte, že norma pochází ze skalárního součinu právě tehdy, když splňuje rovnoběžníkové pravidlo. 11. Dokažte, že platí-li M ⊥ N, pak M ∩ N ⊆ {o}. LINEÁRNÍ ALGEBRA 301 12. Dokažte, že v prostorech nad R se skalárním součinem platí opačná implikace v Pythagorově větě, tj. pokud u + v 2 = u 2 + v 2 , pak u ⊥ v. Platí opačná implikace v prostorech nad C? 13. Nechť f : V → W je lineární zobrazení a U ≤ V je doplněk Ker f, tj. Ker f ⊕ U = V . Dokažte, že zúžení f na U je izomorfismus z U na obraz f. 14. Dokažte, že determinant Gramovy matice vektorů w1, w2, . . . , wn ∈ Rn je rovný druhé mocnině determinantu matice (w1|w2| . . . |wn) . Interpretujte geometricky. 15. Využijte QR-rozklad na důkaz následující nerovnosti pro komplexní matici A = (a1| . . . |an) typu m × n a standardní skalární součin: det (A∗ A) ≤ a1 2 a2 2 . . . an 2 Připomeňme si geometrický význam determinantu det (A∗ A) a interpretujte nerovnost geoemetricky. 16. OG PROJEKCE NA NEKONECNE GENEROVANY NEMUSI EXISTOVAT 17. Dokažte, že každé zobrazení f : Cn → Cn zachovávající standardní skalární součin je lineární. (TODO: DODELAT) 18. Dokažte, že každé zobrazení f : Cn → Cn zachovávající kolmost je skalární násobek unitárního. (TODO: DODELAT) 19. Dokažte, že matice unitárního operátoru na konečně generovaném prostoru vzhledem k ortonormálním bázím je ortonormální. 20. TODO: nejlepsi aproximace s nejlepsi normou. 302 LIBOR BARTO A JIŘÍ TŮMA Shrnutí osmé kapitoly (1) Pro dva n-složkové aritmetické vektory u = (x1, x2, . . . , xn)T , v = (y1, y2, . . . , yn) ∈ Rn definujeme jejich standardní skalární součin jako reálné číslo u · v = x1y1 + x2y2 + · · · + xnyn . (2) Eukleidovská norma nebo také eukleidovská délka vektoru u ∈ Rn je číslo u = √ u · u = √ uT u . Eukleidovskou normu vektoru u = (x1, x2, . . . , xn)T tak spočítáme jako u = x2 1 + x2 2 + · · · + x2 n . (3) Geometrický význam standardního skalárního součinu je vyjádřen vztahem u · v = u v cos α , kde α je úhel, který vektory u a v svírají. (4) Jiný geometrický význam spočívá v tom, že absolutní hodnota součinu v cos α je délkou ortogonální projekce vektoru v do přímky určené vektorem u = o. Projekce má stejný směr jako vektor u v případě, že oba vektory u, v svírají úhel menší než π/2, a má opačný směr, pokud oba vektory svírají úhel větší než π/2. (5) Rovnici přímky v rovině a1x1 + a2x2 = b můžeme přepsat pomocí stanardního skalární součinu do tvaru a1 a2 · x1 x2 = b , a protože v případě rovnice přímky je vektor (a1, a2)T = o, jde o množinu všech bodů (x1, x2) v rovině, jejichž polohové vektory x = (x1, x2)T mají stejnou ortogonální projekci do přímky LO {a}. Vektor a nazýváme normálovým vektorem přímky a1x1 + a2x2 = b. (6) Jsou-li u, v, w ∈ Rn libovolné reálné aritmetické vektory a a ∈ R skalár, pak platí (a) u · v = v · u, (b) u · (v + w) = u · v + u · w, (c) u · (av) = a(u · v), (d) u · u ≥ 0 a u · u = 0 právě když u = o. (7) Pro dva komplexní aritmetické vektory u = (x1, x2, . . . , xn)T a v = (y1, y2, . . . , yn)T definujeme standardní skalární součin u · v předpisem u · v = x1y1 + x2y2 + · · · + xnyn , kde x značí číslo komplexně sdružené k x, tj. a + bi = a − bi. (8) Eukleidovskou délku nebo také eukleidovskou normu aritmetického vektoru u = (x1, x2, . . . , xn)T ∈ Cn definujeme jako u = √ u · u = √ x1x1 + x2x2 + · · · + xnxn = |x1|2 + |x2|2 + · · · + |xn|2 . (9) Hermitovsky sdružená matice k matici A = (aij)m×n je matice A∗ = (bji)n×m, kde bji = aij pro libovolné indexy i ∈ {1, 2, . . . , m} a j ∈ {1, 2, . . . , n}. (10) Pro libovolné tři vektory u, v, w ∈ Cn a komplexní číslo a platí (a) u · v = v · u, LINEÁRNÍ ALGEBRA 303 (b) u · (v + w) = u · v + u · w, (c) u · (a v) = a (u · v), (d) u · u je nezáporné reálné číslo, a u · u = 0 právě když u = o. (11) Pro libovolné tři vektory u, v, w ∈ Cn a komplexní číslo a platí (a) (u + v) · w = u · w + v · w, (b) (au) · v = a (u · v). (12) Je-li V vektorový prostor nad R (resp. nad C), pak se zobrazení , z V ×V do R (resp do C), které dvojici u, v přiřadí skalár u, v , nazývá skalární součin na V, pokud pro libovolné u, v, w ∈ V a a ∈ R (resp. a ∈ C) platí (SSS) u, v = v, u , (SL1) u, av = a u, v , (SL2) u, v + w = u, v + u, w , (SP) u, u je nezáporné reálné číslo, které je nulové právě tehdy, když u = o. (13) Je-li V vektorový prostor nad R (resp. nad C) se skalárním součinem , , pak pro prvky libovolné u, v, w ∈ V a skalár a platí (a) u, o = 0 = o, u (b) au, v = a u, v (c) u + v, w = u, w + v, w . (14) Komplexním maticím A, které splňují rovnost A∗ = A říkáme hermitovské. (15) Hermitovská matice A řádu n se nazývá pozitivně definitní, pokud u∗ Au je nezáporné reálné číslo pro libovolné u ∈ Cn a rovná se 0 právě když u = o. (16) Je-li A pozitivně definitní, pak zobrazení definované u, v = u∗ Av je skalární součin na Cn (nebo na Rn ). (17) Každá matice tvaru A = B∗ B, kde B je regulární, je pozitivně definitní. (18) Nechť V je vektorový prostor se skalárním součinem , . Normou vektoru v ∈ V rozumíme reálné číslo u = u, u . Vektor u se nazývá jednotkový, pokud u = 1. (19) Nechť V je vektorový prostor nad R (resp. C) se skalárním součinem , , u, v ∈ V a t ∈ R (resp. t ∈ C). Pak platí (a) u ≥ 0, přičemž u = 0 právě tehdy, když u = o, (b) tu = |t| u , (c) u + v 2 + u − v 2 = 2 u 2 + 2 v 2 , (rovnoběžníkové pravidlo), (d) Re ( u, v ) = 1 2 ( u + v 2 − u 2 − v 2 ), (polarizační identita), kde Re (x) značí reálnou část x. (20) Cauchyho-Schwarzova nerovnost. Nechť V je vektorový prostor se skalárním součinem , a u, v ∈ V . Pak platí | u, v | ≤ u v , přičemž rovnost nastává právě tehdy, když (u, v) je lineárně závislá po- sloupnost. (21) Trojúhelníková nerovnost. Nechť V je vektorový prostor se skalárním součinem , a u, v ∈ V . Pak platí u + v ≤ u + v . 304 LIBOR BARTO A JIŘÍ TŮMA (22) Nechť V je vektorový prostor nad R se skalárním součinem , a o = u, v ∈ V . Úhlem mezi prvky u a v rozumíme reálné číslo α ∈ 0, π splňující cos α = u, v u v . (23) Kosinová věta. Nechť V je vektorový prostor nad R se skalárním součinem , a o = u, v ∈ V . Pak platí u − v 2 = u 2 + v 2 − 2 u v cos α , kde α je úhel mezi vektory u a v. (24) Je-li V vektorový prostor nad C (nebo nad R), pak zobrazení · , které přiřazuje každému prvku u reálné číslo u nazýváme norma na prostoru V, pokud platí pro kažé dva prvky u, v ∈ V a každý skalár t (a) u ≥ 0, přičemž u = 0 právě tehdy, když u = o, (b) tu = |t| u , (c) u + v ≤ u + v . (25) Nechť V je vektorový prostor se skalárním součinem , . Prvky u, v ∈ V nazýváme kolmé (nebo ortogonální) a píšeme u ⊥ v, pokud u, v = 0. Množina, nebo posloupnost, M prvků V se nazývá ortogonální, pokud u ⊥ v pro libovolné dva různé prvky množiny (nebo posloupnosti) M. Množina (posloupnost) M se nazývá ortonormální, pokud je ortogonální a každý vektor v M je jednotkový. (26) Je-li V vektorový prostor se skalárním součinem , , pak každá ortogonální posloupnost nenulových prvků V je lineárně nezávislá. (27) Pythagorova věta. Je-li V vektorový prostor se skalárním součinem , a jsou-li vektory u, v ∈ V kolmé, pak platí u + v 2 = u 2 + v 2 . (28) Indukcí lze Pythagorovu větu zobecnit na libovolný konečný počet prvků: je-li {v1, v2, . . . , vk} ortogonální množina, pak v1 + v2 + · · · + vk 2 = v1 2 + v2 2 + · · · + vk 2 . (29) Je-li V vektorový prostor se skalárním součinem , , B = (v1, . . . , vn) nějaká ortonormální báze ve V a u ∈ V , pak platí u = v1, u v1 + v2, u v2 + · · · + vn, u vn . Jinými slovy, [u]B = ( v1, u , v2, u , . . . , vn, u )T . (30) Souřadnicím vzhledem k ortonormální bázi se někdy říká Fourierovy koeficienty vzhledem k této bázi. (31) Je-li V vektorový prostor se skalárním součinem , , B = (v1, v2, . . . , vn) jeho ortonormální báze, a u, w ∈ V , pak u, w = [u]∗ B[w]B . (32) Je-li V vektorový prostor se skalárním součinem , a v ∈ V , M, N ⊆ V , pak říkáme, že prvek v je kolmý na M, pokud v je kolmý na každý prvek z množiny M, což zapisujeme v ⊥ M. Říkáme, že M je kolmá na N a zapisujeme M ⊥ N, pokud každý prvek množiny M je kolmý na každý prvek množiny N. LINEÁRNÍ ALGEBRA 305 (33) Je-li V vektorový prostor se skalárním součinem , a M, N ⊆ V , pak M ⊥ N právě když M ⊥ LO {N} což je právě když LO {M} ⊥ LO {N}. (34) Je-li V prostor se skalárním součinem , a M ⊆ V , pak ortogonální doplněk M⊥ množiny M je množina všech prvků V kolmých na každý prvek M, tj. M⊥ = {v ∈ V : v ⊥ M} . (35) Je-li V prostor se skalárním součinem , a M, N ⊆ V , pak platí (a) M⊥ = LO {M} ⊥ , (b) M⊥ je podprostor V , (c) je-li M ⊆ N, pak N⊥ ⊆ M⊥ . (36) Nechť V je konečně generovaný prostor se skalárním součinem , , B jeho ortonormální báze, M = {v1, v2, . . . , vk}. Označíme A matici s řádky [v1]∗ B, [v2]∗ B, . . . , [vk]∗ B. Pak [M⊥ ]B = Ker A . (37) Je-li V vektorový prostor se skalárním součinem , , v ∈ V a W podprostor prostoru V, pak prvek w ∈ W nazýváme ortogonální projekce v na podprostor W, pokud platí (v − w) ⊥ W neboli v − w ∈ W⊥ . (38) Je-li W podprostor vektorového prostoru V se skalárním součinem , , v ∈ V a w ortogonální projekce prvku v na podprostor W, pak pro každý prvek w = u ∈ W platí v − w < v − u . Ortogonální projekce v na podprostor W je určena jednoznačně, pokud existuje. (39) Je-li V vektorový prostor se skalárním součinem , , v ∈ V , a W konečně generovaný podprostor V s ortonormální bází (u1, u2, . . . , uk)T , pak prvek w = u1, v u1 + u2, v u2 + · · · + uk, v uk je ortogonální projekcí vektoru v na podprostor W. (40) Je-li V vektorový prostor se skalárním součinem , , v ∈ V , a W konečně generovaný podprostor V s ortogonální bází B = (u1, u2, . . . , uk)T , pak prvek w = u1, v u1 2 u1 + u2, v u2 2 u2 + · · · + uk, v uk 2 uk je ortogonální projekcí vektoru v na podprostor W. (41) Gramova-Schmidtova ortogonalizace je algoritmus, který dostane na vstupu nějakou lineárně nezávislou posloupnost (v1, v2, . . . , vk) prvků vektorového prostoru V se skalárním součinem. Na výstupu vydá ortonormální posloupnost (u1, u2, . . . , uk) prvků prostoru V, která splňuje podmínku LO {u1, u2, . . . , ui} = LO {v1, v2, . . . , vi} pro každé i = 1, 2, . . . , k. 306 LIBOR BARTO A JIŘÍ TŮMA (42) Gramova-Schmidtova ortogonalizace spočívá v k-násobném iterování cyklu, jehož i-tý průběh sestává ze dvou kroků (ia) ortogonalizace: najdeme kolmici vektoru vi na podprostor LO {u1, . . . , ui−1} vi − wi = vi − u1, vi u1 − u2, vi u2 − · · · − ui−1, vi ui−1, (ib) normalizace: položíme ui = vi − wi vi − wi . (43) Je-li W podprostor konečně generovaného vektorového prostoru V se skalárním součinem, pak každou ortonormální (ortogonální) bázi v podprostoru W lze doplnit na ortonormální (ortogonální) bázi celého prostoru V. Speciálně, v každém konečně generovaném vektorovém prostoru se skalárním součinem existuje ortonormální báze. (44) Je-li V vektorový prostor dimenze n nad R (nebo nad C) se skalárním součinem , , pak existuje izomorfismus f : V → Rn (nebo f : V → Cn ), pro který platí u, v = f(u) · f(v) pro každé dva prvky u, v ∈ V. (45) QR-rozklad. Je-li A reálná nebo komplexní matice typu n × k s lineárně nezávislými sloupci, pak existuje matice Q typu n×k nad stejným tělesem s ortonormálními sloupci a horní trojúhelníková matice R řádu k s kladnými reálnými prvky na hlavní diagonále taková, že platí A = QR. (46) Nechť V je vektorový prostor se skalárním součinem , a W je konečně generovaný podprostor V. Pak platí (a) V = W ⊕ W⊥ , (b) (W⊥ )⊥ = W. (c) Každý vektor v ∈ V má jednoznačně určenou ortogonální projekci na W a také jednoznačně určenou ortogonální projekci na W⊥ . (d) Je-li V konečně generovaný prostor dimenze n, pak dim(W⊥ ) = n − dim(W), (47) Je-li A komplexní matice typu m × n, pak Ker A = (Im A∗ )⊥ , Im A∗ = (Ker A)⊥ a Ker A ⊕ Im A∗ = Cn . (48) Je-li W konečně generovaný podprostor vektorového prostoru V se skalárním součinem , , v ∈ V a {u1, u2, . . . , uk} množina generátorů prostoru W, pak vektor w = a1u1 + · · · + akuk je ortogonální projekcí vektoru v na W právě tehdy, když je aritmetický vektor (a1, . . . , ak)T řešením soustavy lineárních rovnic      u1, u1 u1, u2 · · · u1, uk u1, v u2, u1 u2, u2 · · · u2, uk u2, v ... ... ... ... uk, u1 uk, u2 · · · uk, uk uk, v      . LINEÁRNÍ ALGEBRA 307 (49) Jsou-li u1, u2, . . . , uk prvky vektorového prostoru se skalárním součinem , , pak čtvercovou matici      u1, u1 u1, u2 · · · u1, uk u2, u1 u2, u2 · · · u2, uk ... ... ... ... uk, u1 uk, u2 · · · uk, uk      řádu k nazýváme Gramova matice posloupnosti vektorů (u1, u2, . . . , uk). (50) Nechť A je reálná nebo komplexní matice typu n × k a v ∈ Rn (resp. v ∈ Cn ). Pak vektor Ax (kde x ∈ Rk nebo x ∈ Ck ) je ortogonální projekcí vektoru v na podprostor Im A právě tehdy, když A∗ Ax = A∗ v . (51) Gramova matice je rovná A∗ A, kde A = ([u1]B|[u2]B| · · · |[uk]B) a B je ortonormální báze nějakého konečně generovaného prostoru obsahujícího vektory u1, . . . , uk. (52) Pro Gramovu matici B = ( ui, uj ) posloupnosti prvků (u1, u2, . . . , uk) vektorového prostoru V se skalárním součinem , platí (a) matice B je regulární právě když je posloupnost (u1, u2, . . . , uk) lineárně nezávislá, (b) matice B je hermitovská (symetrická v reálném případě), (c) je-li posloupnost (u1, u2, . . . , uk) lineárně nezávislá, pak je B pozitivně definitní. (53) Čtvercová komplexní (resp. reálná) matice řádu n se nazývá unitární (resp. ortogonální), pokud její sloupce tvoří ortonormální posloupnost vzhledem ke standardnímu skalárnímu součinu v Cn (resp. Rn ). (54) Je-li Q komplexní (resp. reálná) čtvercová matice řádu n, pak jsou následující tvrzení ekvivalentní. (a) Q je unitární (resp. ortogonální), (b) Q∗ Q = In, (c) Q∗ je unitární (resp. ortogonální), (d) QQ∗ = In, (e) QT je unitární (resp. ortogonální), ekvivalentně, řádky matice Q tvoří ortonormální posloupnost, (f) zobrazení fQ zachovává standardní skalární součin, tj. pro libovolné u, v ∈ Cn (resp. Rn ) platí Qu · Qv = u · v. Speciálně, každá unitární (ortogonální) matice je regulární a platí Q−1 = Q∗ . (55) Součin dvou unitárních (resp. ortogonálních) matic téhož řádu je opět unitární (resp. ortogonální) matice. (56) Je-li A regulární (reálná nebo komplexní) matice řádu n a A = Q1R1 = Q2R2 jsou dva QR-rozklady matice A, pak platí Q1 = Q2 a R1 = R2. (57) Nechť V a W jsou vektorové prostory nad C (resp. R) se skalárními součiny , V , , W . Lineární zobrazení f : V → W nazýváme unitární (resp. ortogonální), pokud zachovává skalární součin, tj. pro libovolné u, v ∈ V platí f(u), f(v) W = u, v V . 308 LIBOR BARTO A JIŘÍ TŮMA (58) Nechť f : V → W je lineární zobrazení mezi komplexními (resp. reálnými) vektorovými prostory V, W se skalárními součiny , V , , W . Pak následující tvrzení jsou ekvivalentní. (a) f je unitární (resp. f je ortogonální), (b) f zachovává normu, tj. pro libovolný vektor v ∈ V platí f(v) W = v V , (c) f zachovává ortonormalitu, tj. je-li (v1, . . . , vn) ortonormální posloupnost ve V, pak (f(v1), . . . , f(vn)) je ortonormální posloupnost v W. (d) f zobrazuje jednotkové vektory ve V na jednotkové vektory v W. Speciálně, každé unitární (ortogonální) zobrazení je prosté. (59) Nechť V a W jsou konečně generované vektorové prostory nad C (resp. R) se skalárními součiny , V , , W , B = (v1, . . . , vn) a C jsou pořadě ortonormální báze prostorů V a W, a f : V → W je lineární zobrazení. Pak f je unitární (resp. ortogonální) právě tehdy, když [f]B C má ortonormální posloupnost sloupců vzhledem ke standardnímu skalárnímu součinu. Speciálně, je-li V = W, pak f je unitární (resp. ortogonální) právě když [f]B C je unitární (resp. ortogonální). (60) Nechť Ax = b soustava lineárních rovnic s reálnými (nebo komplexními) koeficienty. Každý vektor ˆx ∈ Rn (nebo ˆx ∈ Cn ), který minimalizuje eukleidovskou normu b − Ax , se na nazývá přibližné řešení (nebo aproximace řešení ) soustavy Ax = b metodou nejmenších čtverců. (61) Je-li A matice typu m×n nad R nebo C a b ∈ Rm (resp. Cm ), pak množina všech přibližných řešení soustavy Ax = b metodou nejmenších čtverců je rovna množině všech (přesných) řešení soustavy A∗ Aˆx = A∗ b . (62) Soustavu A∗ Ax = A∗ b nazýváme soustava normálních rovnic příslušná k soustavě Ax = b. (63) Lineární regrese je přibližné řešení soustavy lineárních rovnic a1xi = b, i = 1, 2, . . . , n s neznámými a, b metodou nejmenších čtverců. Používá se k prokládání přímky množinou bodů (xi, yi), i = 1, 2, . . . , n, získanou obvykle nějakým měřením. (64) Nechť Ax = b je soustava lineárních rovnic nad R nebo nad C, která má alespoň jedno řešení u. Pak existuje právě jedno řešení xln soustavy Ax = b, které minimalizuje eukleidovskou normu x . Vektor xln je roven ortogonální projekci vektoru u na podprostor Im A∗ a platí xln = A∗ z, kde z je libovolné řešení soustavy AA∗ z = b. LINEÁRNÍ ALGEBRA 309 9. Vlastní čísla a vlastní vektory Cíl. Vlastní čísla a vlastní vektory jsou základní nástroj pro zkoumání lineárních operátorů. Poznatky o vlastních číslech a vektorech použijeme ke studiu rozsáhlé třídy problémů shrnutých pod společný název lineární dynamické systémy. V této kapitole pronikneme hlouběji do struktury matic a lineárních operátorů, hlavně na konečně generovaných prostorech. Vyvinutá teorie nám umožní mimo jiné počítat iterace daného operátoru f : V → V, tj. výrazy tvaru fn = f ◦ f ◦ · · · ◦ f n× . Spočítat n-tou mocninu lineárního zobrazení fA : Tn → Tn určeného čtvercovou maticí řádu n nad T znamená spočítat mocninu An , protože (fA)n = fAn . V řeči matic se tedy naučíme počítat n-tou mocninu čtvercové matice A. 9.1. Lineární dynamické systémy. 9.1.1. Diskrétní lineární dynamické systémy. Začneme několika motivujícími pří- klady. Příklad 9.1. Jednoduchým příkladem lineárního dynamického systému je úročení vkladu na účtu. Na účet s úrokem 1%, který banka připisuje jednou za rok, vložíme počáteční vklad x0 = 1000 Kč. Po roce budeme mít na účtě částku x1 = 1000 + 10 = (1 + 0,01)1000 = (1 + 0, 01)x0 . Po dvou letech to bude částka x2 = (1 + 0,01)x1 = (1 + 0,01)2 x0 a po k letech budeme mít xk = (1 + 0,01)xk−1 = (1 + 0,01)2 xk−2 = · · · = (1 + 0,01)k x0 . Jiná banka nám nabídne účet, na kterém každé čtvrtletí připíše úrok 0,25%. U takové banky budeme mít při počátečním vkladu y0 po jednom čtvrtletí částku y1 = 1000 + 2,50 = (1 + 0,0025)y0 , po jednom roce to bude y4 = (1 + 0,0025)4 y0 a po k čtvrtletích to bude yk = (1 + 0,0025)k y0. Vybereme si ještě jinou banku, která každý den připisuje úrok (1/365)%. Při počátečním vkladu z0 budeme mít po roce částku z365 = 1 + 0,01 365 365 z0 . V rámci konkurenčního boje se banky začnou předhánět v tom, kolikrát za rok úrok připisují. U banky, která připisuje úrok (1/n)% n-krát ročně, bude po roce na účtu částka zn = 1 + 0,01 n n z0 . Přechodem k limitě pro n → ∞ nakonec konkurenční boj vyhraje banka FURT s reklamním sloganem „V bance FURT úročíme furt , a poté zkrachuje. V jakémkoliv 310 LIBOR BARTO A JIŘÍ TŮMA čase t, přičemž jednotkou času je 1 rok, u ní bude při počátečním vkladu z0 na účtě částka z(t) = lim n→∞ 1 + 0,01t n n z(0) = e0,01t z0 . Po jednom roce tedy na účtě bude e0,01 z0 korun. Příklad 9.2. Fibonacciho posloupnost je příkladem rekurentní posloupnosti (ak)∞ k=0 definované rekurentním vztahem ak+2 = ak+1 + ak pro každé k = 0, 1, 2, . . . . Celou posloupnost jednoznačně určují první dva prvky a0 a a1. Fibonacciho posloupnost dostaneme volbou a0 = 0 a a1 = 1. V příkladu 4.36 jsme nahlédli, že platí ak+1 ak+2 = C ak ak+1 , kde C = 0 1 1 1 . V terminologii lineárních dynamických systémů nazýváme vektor xk = (ak, ak+1)T stav systému, v tomto případě posloupnosti, v čase k. Vývoj systému je pak určen vztahem xk+1 = C xk = fC(xk) pro každé k ∈ N a počáteční podmínkou x0 = (a0, a1)T . Stav xk v čase k se potom rovná xk = ak ak+1 = Ck a0 a1 = Ck x0 = fk C(x0) . K určení k-tého členu posloupnosti nám tedy stačí umět vypočítat k-tou mocninu matice C (nebo operátoru fC) pro libovolné k ∈ N. Jak běžné připisování úroků za daný časový interval tak lineární rekurentní posloupnosti jsou příklady diskrétních lineárních dynamických systémů. Tento systém je zadán lineárním zobrazením f : V → V na vektorovém prostoru V nad tělesem T a počátečním stavem x0 ∈ V. Vývoj tohoto dynamického systému je dán předpisem xk+1 = f(xk) pro každé k = 0, 1, 2, . . . . To znamená, že např. x2 = f(x1) = f(f(x0)) = f2 (x0). Jednoduchou indukcí podle k ověříme, že pro každé k ≥ 0 platí xk = fk (x0) , kde pro k = 0 definujeme f0 = idV . Je-li vektorový prostor V = Tn a A matice řádu n nad T, pak lineární zobrazení fA : Tn → Tn určené maticí A definuje diskrétní lineární systém předpisem xk+1 = fA(xk) = A xk pro každé k = 0, 1, 2, . . . . Pro každé k ≥ 0 pak platí xk = fk A(x0) = Ak x0 , kde A0 definujeme jako jednotkovou matici. Zkoumáme-li nějaký diskrétní lineární dynamický systém, zajímá nás průběh posloupnosti stavů x0, x1, x2, . . . v závislosti na počátečním stavu x0. Nejsnazší to je, pokud se nám podaří najít explicitní vzorec pro k-tý prvek posloupnosti. Ale i bez explicitního vyjádření stavu xk si můžeme klást otázky, jaké je limitní chování LINEÁRNÍ ALGEBRA 311 posloupnosti (xk)∞ k=0 pro k → ∞, konverguje-li k nějakému limitnímu stavu x∞, pokud ano, jak rychle k němu konverguje, atd. Pro různé počáteční stavy může být limitní chování různé. Jedním počátečním stavem není třeba se zabývat. Pokud je x0 = o, pak xk = o pro každé k (důsledek linearity operátoru f). Vývoj diskrétního lineárního dynamického systému v dimenzi 1, tj. v případě, kdy má stavový prostor V dimenzi 1, je průhledný. V prostoru V zvolíme jakýkoliv nenulový prvek u a jednotlivé stavy xk budeme vyjadřovat pomocí jejich souřadnic vzhledem k bázi B = (u) ve V, tj. pomocí koeficientu xk ∈ T ve vyjádření xk = xku. Lineární operátor f : V → V je jednoznačně určený svojí hodnotou na bázi B, tj. hodnotou f(u) = a u. Takže xk = fk (x0) = fk (x0u) = x0 fk (u) = x0 ak u pro každé k = 0, 1, 2, . . . . Pomocí souřadnic vzhledem k bázi B = (u) vyjádříme xk = xku a dostaneme rovnost xk = ak x0 pro každé k = 0, 1, 2, . . . . Jde tedy o geometrickou posloupnost. Její limitní chování závisí na tom, v jakém tělese T počítáme. Rozebereme si jej v případě tělesa reálných čísel. V tom případě • je-li |a| < 1, posloupnost (xk)∞ k=0 konverguje k 0 pro jakýkoliv počáteční stav x0. • je-li a = 1, je posloupnost (xk)∞ k=0 konstantní rovná x0. • je-li a = −1, posloupnost (xk)∞ k=0 osciluje mezi hodnotami ±x0. • je-li a > 1, posloupnost se blíží k ±∞ v závislosti na znaménku x0. • je-li a < −1, posloupnost (|xk|)∞ k=0 se blíží +∞ a znaménka čísel xk se střídají. Jako cvičení si můžete udělat podobný rozbor v případě tělesa C. Nejzajímavější je případ |a| = 1. Posloupnost (xk)∞ k=0 může být v takovém případě konstantní, periodicky nabývat konečně mnoha hodnot a nebo můžou být její prvky po dvou různé, všechny ale leží na kružnici o poloměru |x0|. 9.1.2. Spojité lineární dynamické systémy. U těchto systémů sledujeme vývoj stavu „spojitě , nikoliv po diskrétních časových intervalech. K popisu spojitých procesů je zásadní pojem derivace reálné funkce f reálné proměnné. Připomeňme význam derivace v případě, že f(t) udává hodnotu nějaké veličiny v čase t, například polohu bodu na přímce, množství nějaké látky, a podobně. Derivace funkce f v čase t, kterou budeme značit f (t), udává okamžitou rychlost změny hodnoty dané veličiny v čase t. Tedy f (11) = 2 znamená, že okamžitá rychlost změny je 2, tj. pokud by rychlost změny veličiny zůstala od času t = 11 konstantní, pak by byla hodnota veličiny v čase t = 12 rovná f(11)+2, v čase t = 11,03 rovná f(11)+2·0,03 a obecně v čase t = 11 + δ rovná f(11) + 2δ. Například je-li f(t) poloha bodu pohybujícího se po přímce v čase t, pak je f (t) jeho okamžitá orientovaná rychlost v čase t; je-li f(t) rychlost bodu v čase t, pak je f (t) jeho okamžité orientované zrychlení. Uvedeme opět několik motivujících příkladů, které vedou na spojité lineární dynamické systémy. Příklad 9.3. Spojité úročení vkladů v bance FURT z příkladu 9.1 je navržené tak, že částka z(t) na účtu v čase t by se za rok zvýšila o 0,01z(t), pokud by v průběhu 312 LIBOR BARTO A JIŘÍ TŮMA roku zůstala rychlost růstu částky konstantní. Jinými slovy, manažerky banky se rozhodly, že částka na účtu se bude řídit vztahem z (t) = 0,01 z(t) . Toto je jednodimenzionální příklad spojitého lineárního dynamického systému. V příkladu 9.1 jsme určili hodnotu z(t) v závislosti na počátečním stavu z(0) limitním výpočtem. Takto lze řešit všechny spojité lineární dynamické systémy, ale my budeme spíše volit přímý postup. V tomto případě stačí použít tvrzení 9.7. Příklad 9.4. Míra radioaktivity jaderného materiálu se měří pomocí rozpadové konstanty k ∈ (0, 1), která udává pravděpodobnost, s jakou se jádro rozpadne během jedné vteřiny. Čím větší rozpadová konstanta, tím vyšší pravděpodobnost a tím vyšší radioaktivita materiálu. Označíme x(t) střední hodnotu počtu radioaktivních jader v čase t (pojem střední hodnoty chápejte intuitivně jako průměrný počet po provedení velkého počtu pokusů). Máme-li x(t) jader a rozpad by probíhal konstantní rychlostí, pak za 1 vteřinu bude o kx(t) jader méně. To znamená, že funkce x splňuje x (t) = −k x(t) pro každé t ∈ R . Opět dostáváme jednoduchý spojitý lineární dynamický systém. Příklad 9.5. Na pružinu s koeficientem pružnosti k zavěsíme závaží o hmotnosti m. Pružina se protáhne o délku l. Jak l spočítáme? l x m m kl mg k(l + x) mg V rovnovážném stavu se vyrovnává gravitační síla mg, která táhne závaží směrem dolů, se silou pružiny, která táhne závaží směrem nahoru. Tato síla je podle Hookeova zákona přímo úměrná prodloužení pružiny a koeficient přímé úměrnosti je koeficient pružnosti k. Síla působící směrem vzhůru má proto velikost kl. V rovnovážném stavu pak platí rovnost mg = kl , ze které plyne velikost prodloužení l = mg/k. LINEÁRNÍ ALGEBRA 313 Když závaží vychýlíme z rovnovážného stavu směrem dolů o x1(0) = b a pustíme je, začne se pohybovat. Stav závaží v čase t zapíšeme pomocí dvojice čísel (x1(t), x2(t))T , kde x1(t) je odchylka od rovnovážného stavu v čase t a x2(t) je okamžitá orientovaná rychlost závaží v čase t (řekněme, že směr dolů je kladný). Směrem dolů na závaží působí konstantní gravitační síla mg, směrem vzhůru síla pružnosti k(l + x1(t)). Celková síla působící na závaží v čase t směrem dolů je potom F(t) = mg − k(l + x1(t)) = (mg − kl) − kx1(t) = −kx1(t) , neboť pro prodloužení l v rovnovážném stavu platí rovnost mg = kl. Podle Newtonova zákona síla F(t) uděluje závaží v čase t okamžité orientované zrychlení a(t), které vypočteme ze vztahu F(t) = a(t) m, neboli a(t) = F(t) m = − k m x1(t) . Okamžitá orientovaná rychlost je derivací polohy a okamžité orientované zrychlení je derivací orientované rychlosti, tj. x1(t) = x2(t), x2(t) = a(t) = − k m x1(t) . Označíme-li x(t) = (x1(t), x2(t))T a x (t) = (x1(t), x2(t))T můžeme odvozené vztahy maticově napsat x (t) = x1(t) x2(t) = x2(t) − k m x1(t) = 0 1 − k m 0 x1(t) x2(t) = 0 1 − k m 0 x(t) Známe ještě počáteční podmínku (x1(0), x2(0))T = (b, 0)T . Příklad 9.6. Přes buněčnou blánu mezi dvěma buňkami se šíří nějaká substance, např. vápník, alkohol, vitamín C, apod. Na počátku v čase t = 0 je do jedné buňky injektováno jednotkové množství substance. Víme, že rychlost šíření substance přes buněčnou blánu z jedné buňky do druhé je přímo úměrná množství substance v buňce, ze které se substance šíří, koeficient rychlosti šíření z buňky 1 do buňky 2 je r > 0, a z buňky 2 do buňky 1 je koeficient rovný s > 0. Máme určit množství substance v obou buňkách v čase t. r s Označíme si x1(t), resp. x2(t), množství substance v buňce 1, resp. 2, v čase t. Rychlost změny množství substance v buňce 1 je sx2(t) (šíření z buňky 2) minus 314 LIBOR BARTO A JIŘÍ TŮMA rx1(t) (šíření do buňky 2). Podobně pro druhou buňku. Dostáváme rovnice x1(t) = −rx1(t) + sx2(t) , x2(t) = rx1(t) − sx2(t) . Označíme-li x(t) = (x1(t), x2(t))T a x (t) = (x1(t), x2(t))T , můžeme proces šíření substance mezi buňkami popsat jako spojitý lineární dynamický systém x (t) = −r s r −s x(t) s počáteční podmínkou že x(0) = (1, 0)T . Nyní k spojitým lineárním dynamickým systémům obecně. Stav spojitého dynamického systému v čase t ∈ R zapíšeme jako prvek x(t) ∈ V, kde V je nějaký vektorový prostor. V případě spojitých dynamických systémů budeme předpokládat, že V je aritmetický prostor nad R nebo nad C. V případě, že x(t) ∈ Rn , můžeme stav systému v čase t zapsat jako x(t) = (x1(t), x2(t), . . . , xn(t))T , tj. x = (x1, . . . , xn)T je uspořádaná n-tice reálných funkcí jedné reálné proměnné. Derivací stavového vektoru v čase t je vektor x (t) = (x1(t), x2(t), . . . , x n(t))T . Vývoj spojitého lineární dynamického systému nad R je definován rovností x (t) = f(x(t)) pro každé t ∈ R , kde f : Rn → Rn je lineární zobrazení, a počátečním stavem x(0) ∈ Rn . Protože každé lineární zobrazení f : Rn → Rn je tvaru fA, kde A = [f]K K je matice f vzhledem ke kanonickým bázím K a K, můžeme vývoj spojitého lineárního dynamického systému nad R zapsat také rovnicí x (t) = A x(t) pro každé t ∈ R , kde A je reálná matice řádu n. Je-li V = Cn , můžeme každý stavový vektor x(t) zapsat jako x(t) = (x1(t) + i y1(t), x2(t) + i y2(t), . . . , xn(t) + i yn(t))T , kde i je imaginární jednotka a funkce xj(t), yj(t) jsou reálné funkce jedné reálné proměnné. Derivací stavového vektoru v čase t je vektor x (t) = (x1(t) + i y1(t), x2(t) + i y2(t), . . . , xn(t) + i yn(t))T . Vývoj spojitého lineárního dynamického systému nad C je definován rovností x (t) = f(x(t)) pro každé t ∈ R , kde f : Cn → Cn je lineární zobrazení a x(0) ∈ Cn je počáteční stav. Také v případě komplexních skalárů můžeme pomocí komplexní matice A = [f]K K systém zapsat jako x (t) = A x(t) pro každé t ∈ R . V mnoha učebnicích bývá derivace stavového vektoru x(t) označována jako ˙x(t). Poznamenejme ještě, že obvyklý název pro spojitý lineární dynamický systém x (t) = Ax(t), x(0) = b LINEÁRNÍ ALGEBRA 315 definovaný maticí A řádu n nad tělesem R (nebo C) a počátečním stavem b ∈ Rn (nebo Cn ), je soustava lineárních diferenciálních rovnic s konstantními koeficienty a s počáteční podmínkou x(0) = b. 9.1.3. Vývoj spojitého lineárního dynamického systému v dimenzi 1. V případě reálného spojitého lineárního dynamického systému v dimenzi 1 hledáme reálnou funkci f, která pro každé reálné číslo t splňuje rovnici f (t) = λ f(t) , kde λ je pevně zvolené reálné číslo, a která splňuje počáteční podmínku f(0) = s. Jednu takovou funkci lze uhádnout (nebo na ní lze přijít jako v příkladu 9.1): f(t) = s eλt , t ∈ R . Je-li g : R → R jakákoliv funkce splňující g (t) = λ g(t) a g(0) = s, spočteme (g(t)e−λt ) = g (t)e−λt − g(t)λe−λt = λg(t)(e−λt − e−λt ) = 0 , což znamená, že funkce g(t)e−λt je konstantní na R. Její hodnotu získáme volbou t = 0, tj. g(0)e−λ0 = g(0) = s . Platí tedy g(t)e−λt = s, neboli g(t) = s eλt . Dokázali jsme tak následující tvrzení. Tvrzení 9.7. Je-li λ reálné číslo, pak existuje právě jedna funkce f : R → R splňující podmínky f (t) = λ f(t) pro každé t ∈ R a f(0) = s: f(t) = s eλt . Příklad 9.8. Využijeme právě nalezeného průběhu reálného spojitého lineárního dynamického systému v dimenzi 1 k porovnání rozpadové konstanty k > 0 radioaktivní látky s jinou běžně používanou mírou radioaktivity, a to poločasem rozpadu T. Ten je definovaný jako doba, za kterou se množství radioaktivních jader průměrně sníží na polovinu. Vývoj střední hodnoty počtu radioktivních jader f(t) v čase t je dán rovnicí f (t) = −k f(t) a počátečním stavem f(0) = s, viz příklad 9.4. Podle předchozího tvrzení tedy platí f(t) = s e−kt pro každé t. Pro poločas rozpadu T potom platí f(T) = s/2, neboli s e−kT = s/2 , což po zkrácení s a přirozeném logaritmování vede na rovnost k T = ln 2 . Reálný spojitý lineární dynamický systém f (t) = λf(t) s počáteční podmínkou f(0) = s = 0 se může vyvíjet v čase třemi různými způsoby v závislosti na hodnotě λ: • je-li λ < 0, platí limt→∞ f(t) = 0, • je-li λ = 0, platí f(t) = s pro každé t ∈ R, • je-li λ > 0, platí limt→∞ f(t) = ±∞ v závislosti na znaménku s. Na závěr úvodní motivační části budeme diskutovat řešení komplexního spojitého dynamického systému v dimenzi 1. Při něm hledáme pro komplexní číslo λ = a+bi komplexní funkci z(t) = f(t) + ig(t) reálné proměnné splňující podmínku z (t) = λz(t) pro každé t ∈ R 316 LIBOR BARTO A JIŘÍ TŮMA spolu s počáteční podmínkou z(0) = s = c + di = 0. Řešení vyjde stejně jako v reálném případě z(t) = seλt , akorát teď jsou s a λt komplexní čísla. Podle Eulerovy formule z části 1.2.11 platí z(t) = se(a+bi)t = seat eibt = seat (cos(bt) + i sin(bt)) . Absolutní hodnota čísla z(t) je rovná |z(t)| = |s||eat || cos(bt) + i sin(bt)| = |s| · |eat | a jeho argument je arg(z(t)) = arg(s) + bt . Z toho vidíme, že pro absolutní hodnotu mohou nastat následující možnosti. • |z(t)| → ∞ v případě, že a = Re λ > 0, • |z(t)| = |s| pro každé t ∈ R, pokud a = Re λ = 0, • |z(t)| → 0, pokud a = Re λ < 0. Pro b = Im λ = 0 bod z(t) „krouží kolem počátku s frekvencí úměrnou b – jeden oběh trvá 2π/b. V případě b = 0 se bod pohybuje po přímce v Gaussově rovině. 9.2. Vlastní čísla a vlastní vektory. 9.2.1. Definice vlastních čísel a vektorů. V dimenzi 1 nad R nebo C umíme předpovědět vývoj jak diskrétních, tak spojitých lineárních dynamických systémů pro jakýkoliv počáteční stav. Podobným způsobem umíme předpovědět vývoj i v dimenzi větší než 1 aspoň pro některé počáteční stavy. Příklad 9.9. Uvažujme lineární operátor fA na R2 určený maticí A = 3 0 1 2 a diskrétní dynamický systém xk+1 = fA(xk) = A xk . Zvolíme-li počáteční stav x0 = (1, 1)T , dostáváme x1 = fA 1 1 = 3 0 1 2 1 1 = 3 1 1 = 3x0 . Dále x2 = fA(x1) = fA(3x0) = 3 fA(x0) = 32 x0 a podobně xk = fk A(x0) = 3k x0 . Formálně bychom poslední vztah dokázali indukcí podle k. Řešení příkladu pro počáteční vektor x0 = (1, 1)T nám umožnila skutečnost, že f(x0) je skalárním násobkem vektoru x0. To vede k velmi důležité definici vlastních čísel a vektorů. LINEÁRNÍ ALGEBRA 317 Definice 9.10. Je-li f : V → V lineární operátor na vektorovém prostoru V nad tělesem T, pak skalár λ ∈ T nazýváme vlastní číslo operátoru f, pokud existuje nenulový vektor x ∈ V , pro který platí f(x) = λx . Je-li λ vlastní číslo operátoru f, pak libovolný prvek x ∈ V , pro který platí f(x) = λx, nazýváme vlastní vektor operátoru f příslušný vlastnímu číslu λ. Vlastní čísla a vektory pro čtvercovou matici řádu n nad T definujeme jako vlastní čísla a vektory příslušného operátoru fA : Tn → Tn . Podobně tomu bude i pro další pojmy v této kapitole. Přeložíme si poslední definici pro případ matic. Definice 9.11. Je-li A čtvercová matice řádu n nad tělesem T, pak skalár λ ∈ T nazýváme vlastní číslo matice A, pokud existuje nenulový vektor x ∈ Tn takový, že Ax = λx . Je-li λ vlastní číslo matice A, pak libovolný vektor x ∈ Tn , pro který platí Ax = λx, nazýváme vlastní vektor matice A příslušný vlastnímu číslu λ. Je důležité uvědomit si geometrický význam definice vlastního čísla operátoru. Číslo λ ∈ T je vlastní číslo operátoru f, pokud existuje nenulový prvek x ∈ V , který operátor f zobrazí na λ-násobek λx prvku x, tj. do směru vektoru x. V případě prostoru nad reálnými čísly tak operátor f vektor x buď „natahuje (pokud λ > 1) nebo „zkracuje (pokud 0 < λ < 1), případně navíc „obrací (pokud λ < 0). x1 x2 x f(x) = 2x Obrázek 81. f má vlastní číslo 2, x je vlastní vektor příslušný 2 Příklad 9.12. Na obrázku 82 je nakresleno zobrazení fA : R2 → R2 určené maticí A = 1,035 0,09 0,135 0,99 tak, že pro některé body x je zobrazena šipka z x do fA(x) = A x. Zobrazení fA (stejně jako matice A) má dvě vlastní čísla 1,125 a 0,9. Vlastní vektory příslušné 1,125 jsou vektory z LO (1, 1)T , což na obrázku vidíme tak, že 318 LIBOR BARTO A JIŘÍ TŮMA tyto vektory zobrazení fA natáhne na 1,125-násobek. Vlastní vektory příslušné 0,9 jsou vektory z LO (−2, 3)T , tyto vektory zobrazení zkrátí na fA 0,9-násobek. Na obrázku je také pěkně kvalitativně vidět chování posloupnosti (fk (x0))∞ k=1 pro různé počáteční vektory. Výsledek v příští části odůvodníme algebraicky. -6 -4 -2 0 2 4 6 -6 -4 -2 0 2 4 6 Obrázek 82. Obrázek zobrazení fA. Šipka vede z bodu x do bodu fA(x). Pro každé číslo λ ∈ T platí, že f(o) = o = λo. To ale neznamená, že λ je vlastní číslo f. K tomu, aby λ bylo vlastní číslo f, je nutná existence nenulového prvku x, pro který platí f(x) = λx. V takovém případě pak i nulový vektor je vlastním vektorem příslušným λ. Číslo 0 může být vlastním číslem operátoru f, k tomu je ale nutná (a stačí) existence vektoru x = o, pro který platí f(x) = 0x = o, což nastává právě když Ker (f) = {o}, neboli právě když operátor f není prostý (viz tvrzení 6.24). Zformulujeme učiněné pozorování. Pozorování 9.13. Operátor f : V → V má vlastní číslo 0 právě tehdy, když f není prostý. Pro čtvercovou matici A je operátor fA prostý právě tehdy, když je A regulární, takže maticová verze předchozího pozorování dává další kriterium regularity. Pozorování 9.14. Čtvercová matice A má vlastní číslo 0 právě tehdy, když A je singulární. Příklad 9.15. Identické zobrazení f : V → V má jediné vlastní číslo 1. Každý vektor z V je vlastním vektorem příslušným vlastnímu číslu 1. Speciálně, identická matice řádu n nad T má jediné vlastní číslo 1 a každý vektor z Tn je vlastním vektorem příslušným vlastnímu číslu 1. Příklad 9.16. Nulové zobrazení 0 : V → V má jediné vlastní číslo 0. Každý vektor z V je vlastním vektorem příslušným vlastnímu číslu 0. Speciálně, nulová matice řádu n nad T má jediné vlastní číslo 0 a každý vektor z Tn je vlastním vektorem příslušným vlastnímu číslu 0. LINEÁRNÍ ALGEBRA 319 Příklad 9.17. V příkladu 9.9 jsme využili toho, že matice A = 3 0 1 2 (a lineární operátor fA) má vlastní číslo 3 a každý vektor z LO (1, 1)T je vlastním vektorem matice A příslušným vlastnímu číslu 3. Příklad 9.18. Osová symetrie f : R2 → R2 určená přímkou generovanou nenulovým vektorem (a, b)T má vlastní číslo 1, neboť všechny vektory na ose symetrie se zobrazí samy do sebe a jsou to tedy vlastní vektory příslušné vlastnímu číslu 1. Vektory na přímce kolmé na osu symetrie (generované např. vektorem (−b, a)T ) se zobrazují do vektorů opačných, jsou to tedy vlastní vektory příslušné vlastnímu číslu −1. Jiná vlastní čísla než −1 a 1 operátor f nemá, jak vidíme z geometrického náhledu. x1 x2 y = f(y) x f(x) Obrázek 83. Vlastní čísla osové symetrie Příklad 9.19. Ortogonální projekce g : R2 → R2 na přímku generovanou (a, b)T má také dvě vlastní čísla. Jedno je opět 1, protože vektory přímky, na kterou projektujeme, se zobrazují na sebe. Druhé vlastní číslo je 0, protože všechny vektory z přímky kolmé na přímku projekce se zobrazují do nulového vektoru. Příklad 9.20. Rotace kolem počátku souřadnic o úhel ϕ nemá žádné reálné vlastní číslo, pokud ϕ není násobkem π, neboť v takovém případě se žádný nenulový vektor nezobrazí na svůj násobek. Příklad 9.21. Stejnolehlost v rovině R2 s koeficientem k, která zobrazuje každý vektor x do jeho k-násobku kx, má jediné vlastní číslo k, každý vektor R2 je vlastním vektorem příslušným vlastnímu číslu k. Mezi stejnolehlosti řadíme i mezní případ k = 0 (konstantní zobrazení do nulového vektoru), k = 1, což je identické zobrazení, a také rotace o úhel 0, a k = −1 neboli středová symetrie (a také rotace o úhel π). 320 LIBOR BARTO A JIŘÍ TŮMA x1 x2 y = f(y) x f(x) = 0 Obrázek 84. Vlastní čísla ortogonální projekce x1 x2 x f(x) φ Obrázek 85. Vlastní čísla rotace V definici vlastních čísel a vektorů nepředpokládáme, že prostor V má konečnou dimenzi. Důležitým „nekonečnědimenzionálním příkladem je operátor derivace. Příklad 9.22. Označíme D lineární operátor definovaný předpisem D(f) = f na prostoru V všech reálných funkcí reálné proměnné, které mají spojité derivace všech řádů. Reálné číslo λ je vlastním číslem operátoru D právě když existuje nenulová funkce f(t) ∈ V, pro kterou platí D(f) = λ f, neboli f (t) = λf(t) pro každé t ∈ R . V části 9.1.3 jsme ukázali, že pro každé λ ∈ R jsou všechny funkce splňující poslední rovnost tvaru f(t) = s eλt , kde s je libovolné reálné číslo – tvrzení 9.7. LINEÁRNÍ ALGEBRA 321 x1 x2 xy z f(x) = kxf(y) = ky f(z) = kz Obrázek 86. Vlastní čísla stejnolehlosti Každé reálné číslo je tedy vlastním číslem operátoru D, vlastní vektory příslušné vlastnímu číslu jsou právě prvky LO eλt . 9.2.2. Výpočet vlastních čísel a vlastních vektorů. Na příkladech jste si mohli všimnout, že množina vlastních vektorů příslušných vlastnímu číslu λ vždy tvořila podprostor. To není náhoda. K důkazu použijeme obrat, který v této kapitole budeme často používat. Uvažujeme lineární operátor f : V → V, vektor x ∈ V a skalár λ. Vztah f(x) = λx lze ekvivalentně upravit f(x) = λx f(x) = (λ idV )(x) f(x) − (λ idV )(x) = o (f − λ idV )(x) = o x ∈ Ker (f − λ idV ) Odtud plyne následující tvrzení. Tvrzení 9.23. Nechť f je lineární operátor na prostoru V nad tělesem T. Pak λ ∈ T je vlastním číslem operátoru f právě tehdy, když operátor (f − λ idV ) není prostý. Je-li λ vlastním číslem operátoru f, pak množina Mλ všech vlastních vektorů operátoru f příslušných vlastnímu číslu λ je podprostorem V a platí Mλ = Ker (f − λ idV ) . Důkaz. Podle předchozích úprav, f(x) = λx platí právě tehdy, když x ∈ Ker (f − λ idV ), takže nenulový vektor x splňující f(x) = λx existuje právě tehdy, když je Ker (f − λ idV ) netriviální, tedy (viz tvrzení 6.24) právě tehdy, když f − λ idV není prostý. Druhá část tvrzení pak plyne ze stejného výpočtu a z toho, že jádro je vždy podprostorem (viz tvrzení 6.25). 322 LIBOR BARTO A JIŘÍ TŮMA Explicitně zformulujeme také maticovou verzi. Odvození má v tomto případě podobu Ax = λx Ax = λInx Ax − λInx = o (A − λIn)(x) = o x ∈ Ker (A − λIn) Tvrzení 9.24. Je-li A čtvercová matice řádu n nad tělesem T, pak λ ∈ T je vlastním číslem matice A právě tehdy, když je matice A − λIn singulární. Je-li λ vlastním číslem matice A, pak množina Mλ všech vlastních vektorů matice A příslušných vlastnímu číslu λ je podprostorem Tn a platí Mλ = Ker (A − λIn) . Důkaz. Plyne opět z výpočtu před formulací tvrzení spolu s tím, že Ker (A − λIn) je netriviální právě tehdy, když A−λIn je singulární (viz větu 4.65 charakterizující regulární matice). K výpočtu vlastních čísel matice A si uvědomíme, že matice A−λIn je singulární právě tehdy, když je její determinant nulový. Pozorování 9.25. Je-li A čtvercová matice řádu n nad tělesem T, pak λ ∈ T je vlastním číslem matice A právě tehdy, když det (A − λIn) = 0. Obecněji, k výpočtu vlastních čísel operátoru f na konečně generovaném prostoru V zvolíme bázi B prostoru V. Pro každý skalár λ ∈ T je vyjádření jádra operátoru f − λ idV vzhledem k B podle tvrzení 6.25 a 6.37 rovno [Ker (f − λ idV )]B = Ker [f − λ idV ]B B = Ker ([f]B B − λ[idV ]B B) = Ker ([f]B B − λIn) . Dostáváme obecnější verzi předchozího pozorování. Pozorování 9.26. Je-li f lineární operátor na konečně generovaném prostoru V dimenze n nad tělesem T a B je báze V, pak λ ∈ T je vlastním číslem operátoru f právě když je λ vlastní číslo matice [f]B B, což nastává právě když det [f]B B − λIn = 0. Pro lineární operátor f na konečně generovaném prostoru V s bází B budeme často používat jeho matici [f]B B vzhledem k bázím B a B. Proto budeme někdy stručněji hovořit o matici f vzhledem k B. Definice 9.27. Nechť f je lineární operátor na konečně generovaném prostoru V a B je báze V. Pak maticí operátoru f vzhledem k B rozumíme matici operátoru f vzhledem k bázím B a B. Příklad 9.28. Určíme vlastní čísla a vlastní vektory matice A (= operátoru fA) z příkladu 9.9. A = 3 0 1 2 . Vypočteme pro obecný skalár λ ∈ R determinant det (A − λI2) = det 3 − λ 0 1 2 − λ = (3 − λ)(2 − λ) − 0 · 1 = (3 − λ)(2 − λ) . LINEÁRNÍ ALGEBRA 323 Podle pozorování 9.25 má matice A dvě vlastní čísla 2 a 3. Podle tvrzení 9.24 tvoří vlastní vektory příslušné vlastnímu číslu 2 podprostor M2 = Ker (A − 2I2) = Ker 1 0 1 0 = LO 0 1 a vlastní vektory příslušné vlastnímu číslu 3 tvoří podprostor M3 = Ker (A − 3I2) = Ker 0 0 1 −1 = LO 1 1 . Příklad 9.29. Známe-li lineárně nezávislou dvojici vlastních vektorů matice A řádu 2, můžeme spočítat jakýkoliv stav xk diskrétního dynamického systému xk+1 = A xk určeného maticí A pro každý počáteční stav x0 = (a, b)T . Ukážeme si jak na matici A = 3 0 1 2 z předchozího příkladu. Tato matice má dvě vlastní čísla 2, 3, k vlastnímu číslu 2 je příslušný vlastní vektor např. u2 = (0, 1)T , k vlastnímu číslu 3 je vlastní vektor například u3 = (1, 1)T . Posloupnost B=(u2, u3) je zjevně lineárně nezávislá a tedy báze v R2 . Předvedeme elementární odvození vztahu pro xk, elegantnější pohled bude diskutován v části o diagonalizovatelných operátorech. Protože u2 je vlastní vektor příslušný vlastnímu číslu 2, platí Ak u2 = 2k u2 a analogicky Ak u3 = 3k u3 . Libovolný počáteční stav x0 ∈ R2 vyjádříme jako lineární kombinaci x0 = au2 +bu3 vlastních vektorů matice A (tj. (a, b)T = [x0]B) a spočítáme xk =Ak x0 = Ak (au2 + bu3) = a Ak u2 + b Ak u3 = a 2k u2 + b 3k u3 =a 2k 0 1 + b 3k 1 1 = b3k a2k + b3k . Koeficienty a, b jsou souřadnice vektoru x0 vzhledem k bázi B, najdeme je jako řešení soustavy lineárních rovnic 0 1 1 1 a b = x0 . Příklad 9.30. Vypočteme vlastní čísla a vektory ortogonální projekce v R2 na přímku určenou vektorem v = (1, 2)T (výsledek předem známe z geometrického náhledu, viz příklad 9.19). Označme tento operátor f. Jedna možnost je najít matici A operátoru f vzhledem ke kanonickým bázím. Pak f = fA a vlastní čísla a vektory f se vypočítají jako v příkladu 9.28 (jako vlastní čísla a vektory matice A). Ukážeme nejprve tento, méně efektivní, postup. 324 LIBOR BARTO A JIŘÍ TŮMA Obrazy vektorů kanonické báze (tedy jejich ortogonálních projekce na danou přímku) jsou f(e1) = vT e1 v 2 v = 1 5 1 2 , f(e2) = vT e2 v 2 v = 1 5 2 4 , takže A = 1 5 1 2 2 4 . Determinant matice A − λI2 je roven det (A − λI2) = det 1/5 − λ 2/5 2/5 4/5 − λ = λ2 − λ . Matice A má tedy dvě vlastní čísla 1 a 0. Vlastní vektory příslušné vlastnímu číslu 1 tvoří podprostor M1 = Ker (A − I2) = Ker −4/5 2/5 2/5 −1/5 = LO 1 2 a vlastní vektory příslušné vlastnímu číslu 0 tvoří podprostor M0 = Ker (A) = LO −2 1 . Výsledek je v souladu z geometrickým náhledem z příkladu 9.19 Početně jednodušší postup je pracovat s maticí vzhledem f vzhledem k jiné bázi. Protože zřejmě f((1, 2)T ) = (1, 2)T a f((−2, 1)T ) = (0, 0)T , je matice f vzhledem k bázi B = ((1, 2)T , (−2, 1)T ) a B rovná C = [f]B B = 1 0 0 0 Determinant matice C −λI2 je (1−λ)(−λ) = λ2 −λ a vlastní čísla jsou 0 a 1 podle pozorování 9.25. Podprostory M1 a M0 vypočítáme nejprve vzhledem k bázi B: [M1]B =[Ker (f − idV )]B = Ker ([f]B B − In) = Ker 0 0 0 −1 = LO 1 0 , [M0]B =Ker 1 0 0 0 = LO 0 1 . Převodem do kanonické báze dostaneme stejný výsledek jako prvním postupem: M1 =[M1]K = LO [id]B K 1 0 = LO 1 1 2 + 0 −2 1 = LO 1 2 , M0 =[M2]K = LO [id]B K 0 1 = LO 0 1 2 + 1 −2 1 = LO −2 1 . Příklad 9.31. Spočítáme vlastní čísla rotace v R2 o úhel π/2 v kladném směru. Matice této rotace vzhledem ke kanonické bázi se rovná A = 0 −1 1 0 , příslušný determinant je det (A − λI2) = λ2 + 1. Vidíme, že matice A nemá žádné reálné vlastní číslo a tedy ani žádný vlastní vektor v R2 . LINEÁRNÍ ALGEBRA 325 Považujeme-li matici A za matici nad komplexními čísly, má dvě vlastní čísla i a −i. Vlastní vektory příslušné vlastnímu číslu i jsou všechny komplexní násobky vektoru (i, 1)T a vlastní vektory příslušné vlastnímu číslu −i jsou všechny komplexní násobky vektoru (i, −1)T . 9.2.3. Charakteristický polynom, podobnost. V předchozích příkladech jsme našli vlastní čísla matice A řádu 2 jako kořeny kvadratického polynomu det(A − λI2). Obecně víme podle pozorování 9.25, že λ ∈ T je vlastní číslo matice A právě když platí det(A − λIn) = 0 V následujícím tvrzení si ukážeme, že det(A − λIn) je polynom stupně n pro každou matici A řádu n a uvedeme nějaké jeho koeficienty. Tvrzení 9.32. Pro každou matici A = (aij) řádu n nad libovolným tělesem T platí (1) det(A − λIn) je polynom stupně n s koeficienty v T, (2) koeficient u λn se rovná (−1)n , (3) koeficient u λn−1 se rovná (−1)n−1 (a11 + a22 + · · · + ann), (4) absolutní člen se rovná det A. Důkaz. První tři body ukážeme najednou. Označíme si prvky matice A − λIn = (bij). Z definice determinantu det(A − λIn) = π∈Sn sgn(π)b1π(1)b2π(2) · · · bnπ(n) vidíme, že každý součin je součinem n prvků matice A−λIn, přičemž bij = aij pokud i = j, a bii = aii − λ pro každé i = 1, 2, . . . , n. Součin odpovídající permutaci π obsahuje tolik činitelů (aii−λ), kolik je prvků i ∈ {1, 2, . . . , n}, pro které platí π(i) = i, tj. kolik je pevných bodů permutace π. Těch je nejvýše n, proto po roznásobení každého součinu dostaneme nějaký polynom stupně nejvýše n v proměnné λ. Jejich součtem je tedy také polynom stupně nejvýše n v proměnné λ. Mocnina λn se může vyskytnout pouze v součinu, ve kterém je všech n činitelů rovných aii − λ, tj. v součinu definovaném identickou permutací na množině {1, 2, . . . , n}. Platí sgn(idn)(a11 − λ)(a22 − λ) · · · (ann − λ) = (−1)n λn + (a11 + a22 + · · · + ann)(−1)n−1 λn−1 + · · · . V jakémkoliv součinu, který je definován neidentickou permutací π ∈ Sn, se musí vyskytnout aspoň dva činitelé bij, které neleží na hlavní diagonále matice B, a proto se v něm vyskytuje nejvýše n − 2 činitelů obsahujícíh λ, po roznásobení můžeme dostat nenulové koeficienty pouze u mocnin λn−2 nebo nižších. Koeficienty u λn a λn−1 pocházejí proto pouze ze součinu určeného identickou permutací. Tím jsou dokázány body (1), (2) a (3). Hodnotu absolutního členu c0 jakéhokoliv polynomu p(λ) = cnλn + cn−1λn−1 + · · · + c1λ + c0 získáme tak, že do něho dosadíme hodnotu proměnné λ = 0. Proto se absolutní člen polynomu det(A − λIn) = det(A − 0 In) = det A. Definice 9.33. Je-li A čtvercová matice řádu n nad tělesem T, pak charakteristický polynom matice A je polynom pA(λ) = det (A − λIn) . 326 LIBOR BARTO A JIŘÍ TŮMA Příklad 9.34. Charakteristický polynom reálné matice A = 3 7 4 5 je podle tvrzení 9.32 roven pA(λ) = (−1)2 λ2 − (3 + 5)λ + (3 · 5 − 7 · 4) = λ2 − 8λ − 13 . Poznámka. Charakteristický polynom chápeme jako formální polynom, tj. jako formální výraz tvaru cnλn + · · · + c1λ + c0, kde ci ∈ T, nikoliv jako polynomiální zobrazení, tj. jako zobrazení T → T tohoto tvaru. Polynomy cnλn + · · · + c0 a dnλn + · · · + d0 tedy považujeme za různé kdykoliv ci = di pro nějaké i. Pro tělesa T = R a T = C je rozdíl zanedbatelný, protože koeficienty polynomu jsou jednoznačně určené příslušnou polynomiální funkcí. Ale například v tělese T = Z2 jsou polynomy 0 a λ + λ2 formálně různé, nicméně určují stejnou polynomiální funkci, protože po dosazení λ = 0 i λ = 1 vyjde v obou případech 0. Z tohoto důvodu není definice 9.33 úplně formálně ukotvená, protože determinant vpravo je potřeba nad obecným tělesem chápat jako determinant matice, jejíž prvky jsou (konstantní nebo lineární) polynomy v proměnné λ. Takové matice jsme neuvažovali, vždy jsme dosud pracovali s maticemi nad tělesy. Podobný problém je také například v důkazu tvrzení 9.32. Čtenář, kterého tyto formální nedostatky trápí a neumí je zatím odstranit, ať vždy uvažuje jen reálná nebo komplexní čísla – nad těmito tělesy se nepřesností nedopouštíme. Tvrzení 9.32 ukazuje, že charakteristický polynom jakékoliv matice A řádu n má stupeň právě n a pozorování 9.25 říká, že vlastní čísla matice A jsou jeho kořeny. Například charakteristický polynom matice A z příkladů 9.9 a 9.28 je det (A − λI2) = det 3 − λ 0 1 2 − λ = (3 − λ)(2 − λ) = λ2 − 5λ + 6 . Charakteristický polynom lineárního operátoru f na konečně dimenzionálním prostoru V definujeme jako charakteristický polynom matice [f]B B, kde B je nějaká báze prostoru V. Musíme ovšem ověřit, že polynom nezávisí na volbě báze, jak jsme v konkrétní situaci viděli v příkladu 9.30. Uvažujme tedy dvě různé báze B, C prostoru V. Podle pravidel o počítání s maticemi zobrazení (viz tvrzení 6.20) je [f]B B = R−1 [f]C CR , kde R je matice přechodu od B k C. Matice svázané takovým vztahem nazýváme podobné. Definice 9.35. Dvě čtvercové matice X, Y téhož řádu nad tělesem T se nazývají podobné, pokud existuje regulární matice R taková, že Y = R−1 XR. Relace podobnosti matic je ekvivalence na množině všech čtvercových matic téhož řádu n nad tělesem T, důkaz ponecháme jako cvičení. Podle diskuze předcházející definici 9.35 jsou matice [f]B B a [f]C C podobné. Tvrzení 9.36. Podobné matice mají stejný charakteristický polynom. LINEÁRNÍ ALGEBRA 327 Důkaz. Jsou-li X, Y dvě podobné matice téhož řádu nad tělesem T, pak existuje regulární matice R taková, že Y = R−1 XR. Potom platí det(Y − λIn) = det(R−1 XR − λIn) = det(R−1 XR − R−1 λInR) = det(R−1 (X − λIn)R) = det(R)−1 det(X − λIn) det(R) = det(X − λIn) podle věty o násobení determinantů a jejím důsledku pro determinant inverzní matice. To opravňuje definici charakteristického polynomu lineární operátoru na konečně generovaném prostoru. Definice 9.37. Je-li f : V → V lineární operátor na konečně generovaném prostoru V dimenze n, pak charakteristický polynom operátoru f je polynom pf (λ) = det [f]B B − λIn , kde B je libovolná báze prostoru V. Charakteristický polynom operátoru na (konečně generovaném prostoru) V je tedy roven charakteristickému polynomu matice [f]B B pro jakoukoliv bázi B prostoru V. Jeho kořeny jsou podle pozorování 9.26 vlastní čísla operátoru f. Příklad 9.38. V příkladu 9.19 jsme spočetli, že charakteristický polynom ortogonální projekce f na přímku LO (1, 2)T je pf (λ) = λ2 − λ. Z druhého postupu nahlédněte, že stejně vyjde charakteristický polynom pro ortogonální projekci na libovolnou přímku, dokonce projekci na libovolnou přímku p ve směru přímky q, pokud p = q. 9.2.4. Kořeny polynomů, algebraická násobnost. K určení vlastních čísel matice nebo operátoru na konečně generovaném prostoru potřebujeme najít kořeny charakteristického polynomu. Uvedeme několik pojmů a tvrzení (bez důkazů), které budeme o kořenech polynomů potřebovat. Důkazy se dozvíte v kurzu algebry nebo je najdete v jakékoliv úvodní knize o algebře. Připomeňme, že polynom stupně n nad tělesem T je výraz p(x) = a0 + a1x + a2x2 + · · · + anxn , kde a0, . . . , an ∈ T, an = 0 . Kořenem takového polynomu je prvek t ∈ T, pro který p(t) = a0 + a1t + a2t2 + · · · + antn = 0. Nulovému polynomu p(x) = 0 předchozí definice nepřidělila stupeň, někdy se říká, že je stupně −1, jindy se stupeň nedefinuje. Nyní směřujeme k pojmu násobnosti kořene. Řekneme, že polynom p(x) dělí polynom s(x) (oba polynomy jsou nad tělesem T), pokud existuje polynom q(x) (nad T) takový, že p(x)q(x) = s(x). Například reálný polynom x − 1 dělí polynom x2 − 1, protože (x − 1)(x + 1) = x2 − 1. Tvrzení 9.39. Nechť p(x) je polynom nad T. Prvek t ∈ T je kořenem polynomu p(x) právě tehdy, když polynom x − t dělí polynom p(x). Největší číslo l takové, že (x − t)l stále dělí polynom p(x) nazýváme násobnost kořene t. Definice 9.40. Nechť p(x) je polynom nad T a t ∈ T je jeho kořen. Násobnost kořene t polynomu p(x) definujeme jako největší přirozené číslo l takové, že polynom (x − t)l dělí polynom p(x). 328 LIBOR BARTO A JIŘÍ TŮMA Tvrzení 9.41. Nechť p(x) je polynom nad T, t1, . . . , tk ∈ T po dvou různé a l1, . . . , lk ∈ N. Pak následující tvrzení jsou ekvivalentní. (1) Pro každé i ∈ {1, . . . , k} je ti kořen násobnosti li. (2) p(x) = (x − t1)l1 . . . (x − tk)lk q(x) pro nějaký polynom q(x) takový, že ani jeden z prvků t1, . . . , tk není jeho kořen. Implikaci (2) ⇒ (1) můžeme použít k hledání násobnosti kořenů. Uhádneme nějaký kořen t polynomu p(x) a polynom p(x) vydělíme polynomem x − t. Dále pokračujeme stejným způsobem s výsledným polynomem. Proces ukončíme, když získáme polynom, který již žádný kořen nemá. Nakonec získáme rozklad jako v části (2) a tvrzení nám dá informace o násobnostech. Příklad 9.42. Určíme kořeny a jejich násobnosti pro reálný polynom p(x) = 2x3 − 8x2 + 10x − 4. Uhádneme kořen t = 1 a vydělíme polynom p(x) polynomem x − 1. q(x) = (2x3 − 8x2 + 10x − 4) : (x − 1) = 2x2 − 6x + 4 . Hledat kořeny reálného polynomu druhé stupně umíme, polynom q(x) má kořeny 1 a 2. Polynom q(x) lze proto zapsat q(x) = 2(x − 1)(x − 2) . Pro původní polynom máme p(x) = (x − 1)q(x) = 2(x − 1)2 (x − 2) . Tedy p(x) má kořen 1 násobnosti 2 a kořen 2 násobnosti 1. Příklad 9.43. Určíme kořeny a násobnosti kořenů reálného polynomu p(x) = x4 + x2 . Ihned vidíme, že x2 dělí polynom p(x). Máme p(x) = x2 (x2 + 1) , Polynom x2 +1 již žádný reálný kořen nemá, tedy p(x) má jediný kořen 0 násobnosti 2. Chápeme-li ovšem p(x) jako polynom nad komplexními čísly, pak x2 + 1 má dva kořeny i a −i a polynom p(x) lze psát p(x) = x2 (x + i)(x − i) Nad komplexními čísly tedy máme kořen 0 násobnosti 2 a kořeny i a −i násobnosti 1. Příklad 9.44. Určíme kořeny polynomu p(x) = x4 + 2x3 + x2 + 2x nad tělesem Z3. Vidíme, že t = 0 je kořen. Dosazením zjistíme, že t = 1 je kořenem a t = 2 kořenem není. K určení násobností vydělíme polynom p(x) polynomem x(x − 1) = x2 − x = x2 + 2x. (x4 + 2x3 + x2 + 2x) : (x2 + 2x) = x2 + 1 . Takže p(x) = x(x + 2)(x2 + 1) . Dosazením prvků tělesa Z3 do polynomu x2 + 1 zjistíme, že x2 + 1 žádné kořeny v Z3 nemá, takže oba kořeny 0 i 1 mají násobnost 1. LINEÁRNÍ ALGEBRA 329 Důsledkem implikace (1) ⇒ (2) v tvrzení 9.32 je, že polynom stupně n ≥ 0 má nejvýše n kořenů, i když počítáme každé tolikrát, kolik je jeho násobnost. Tvrzení 9.45. Polynom stupně n nad libovolným tělesem má nejvýše n kořenů včetně násobností. Obrat „včetně násobností budeme používat pro stručnost vyjadřování. Přesný význam je vysvětlený nad tvrzením, tj. pokud každý kořen počítáme tolikrát, kolik je jeho násobnost, vyjde nejvýše n. Ze základní věty algebry (věta 1.6) lze odvodit, že nad komplexními čísly je kořenů vždy maximální možný počet (opět musíme počítat i s násobnostmi). Věta 9.46. Každý polynom stupně n ≥ 1 nad tělesem C lze napsat jako součin lineárních polynomů (tj. polynomů stupně 1). Speciálně, každý polynom stupně n ≥ 0 nad tělesem C má právě n kořenů včetně násobností. (Na okraj poznamenejme, že každé těleso lze rozšířit do většího tělesa, kde platí obdoba předchozí věty.) Ještě uvedeme jeden pozitivní výsledek pro polynomy nad reálnými čísly, tentokrát výjimečně i s náznakem důkazu. Tvrzení 9.47. Polynom lichého stupně nad tělesem R má alespoň jeden kořen. Důkaz. Připomeňme, že je-li komplexní číslo z kořenem reálného polynomu p(x), pak je jeho kořenem také číslo z komplexně sdružené se z (viz věta 1.9). Kořeny polynomu p(x) tak můžeme uspořádat do dvojic komplexně sdružených kořenů, protože lze ověřit, že je-li kořen z k-násobný, pak je k-násobný i kořen z. Protože ale všech kořenů (spolu s násobnostmi) je lichý počet, existuje aspoň jeden kořen z, pro který platí z = z, tj. aspoň jeden reálný kořen. Alternativně lze tvrzení dokázat analyticky, bez použití komplexních čísel. Je-li koeficent u xn kladný, pak pro x → ∞ je p(x) → ∞ a pro x → −∞ je p(x) → −∞. Ze spojitosti funkce p(x) pak vidíme, že nutně existuje číslo z, splňující p(z) = 0. (Je-li koefcient u xn záporný, důkaz je obdobný.) Nyní se vrátíme k vlastním číslům. Ty lze spočítat jako kořeny charakteristického polynomu, jejich násobnosti jsou důležitou informací, proto si zaslouží samostatný pojem. Definice 9.48. Nechť f je lineární operátor na konečně generovaném prostoru a λ je jeho vlastní číslo. Algebraickou násobností vlastního čísla λ rozumíme jeho násobnost jako kořene charakteristického polynomu operátoru f. Definice 9.49. Nechť A je čtvercová matice a λ je její vlastní číslo. Algebraickou násobností vlastního čísla λ rozumíme jeho násobnost jako kořene charakteristického polynomu matice A. Příklad 9.50. Najdeme vlastní čísla a jejich algebraické násobnosti pro lineární operátor f : R3 → R3 definovaný předpisem f   x y z   =   −y + z −3x − 2y + 3z −2x − 2y + 3z   . 330 LIBOR BARTO A JIŘÍ TŮMA Matice operátoru f vzhledem ke kanonické bázi je A = [f]K K =   0 −1 1 −3 −2 3 −2 −2 3   . Charakteristický polynom operátoru f se rovná det(A−λI3) = det   0 − λ −1 1 −3 −2 − λ 3 −2 −2 3 − λ   = −λ3 +λ2 +λ−1 = −(λ−1)2 (λ+1) . Operátor má tedy 2 různá vlastní čísla: vlastní číslo 1 algebraické násobnosti 2 a vlastní číslo −1 algebraické násobnosti 1. (Takže dohromady máme 3 vlastní čísla včetně násobností.) Zformulujeme důsledky tvrzení 9.45, věty 9.46 a tvrzení 9.47 pro vlastní čísla operátorů. Důsledek 9.51. • Každý lineární operátor f : V → V na konečně generovaném prostoru dimenze n nad tělesem T má nejvýše n vlastních čísel včetně násobností. • Lineární operátor f : V → V má právě n vlastních čísel včetně násobností právě tehdy, když je jeho charakteristický polynom součinem lineárních po- lynomů. • Každý lineární operátor f : V → V na konečně generovaném prostoru dimenze n nad tělesem C má právě n vlastních čísel včetně násobností. • Každý lineární operátor f : V → V na konečně generovaném vektorovém prostoru liché dimenze nad R má aspoň jedno (reálné) vlastní číslo. V řeči matic: Důsledek 9.52. • Každá čtvercová matice řádu n nad tělesem T má nejvýše n vlastních čísel včetně algebraických násobností. • Čtvecová matice řádu n nad tělesem T má právě n vlastních čísel včetně násobností právě tehdy, když je její charakteristický polynom součinem lineárních polynomů. • Každá čtvercová matice řádu n nad tělesem C má právě n vlastních čísel včetně algebraických násobností. • Každá čtvercová matice lichého řádu nad tělesem R má alespoň jedno reálné vlastní číslo. 9.3. Diagonalizovatelné operátory. 9.3.1. Definice diagonalizovatelnosti. Má-li operátor f (resp. matice A) „dostatek vlastních vektorů, můžeme diskrétní dynamický systém xk = f(xk−1) (resp. xk = Axk−1) snadno vyřešit. K ilustraci poslouží opět operátor z příkladů 9.9 a 9.28. Důležitou roli v této části budou hrát diagonální matice, proto si pro ně zavedeme speciální označení. Diagonální matici D = (dij) řádu n budeme zapisovat diag(d11, d22, · · · , dnn). Diagonální matice umíme snadno umocnit, neboť platí diag(t1, t2, . . . , tn)k = diag(tk 1, tk 2, . . . , tk n) pro každý exponent k = 0, 1, 2, . . . . LINEÁRNÍ ALGEBRA 331 Příklad 9.53. Uvažujme operátor fA na R2 určený maticí A = 3 0 1 2 . V příkladu 9.28 jsme vypočítali, že vlastní čísla tohoto operátoru jsou 2 a 3 a příslušné podprostory vlastních vektorů jsou M2 = LO 0 1 , M3 = LO 1 1 . Vektory v1 = (0, 1)T , v2 = (1, 1)T tvoří lineárně nezávislou posloupnost B = (v1, v2), tedy bázi prostoru R2 . (To, že posloupnost je lineárně nezávislá, není náhoda – viz věta 9.62.) Platí fA(v1) = 2v1 a fA(v2) = 3v2. Z toho vidíme, že matice operátoru fA vzhledem k bázi B je [fA]B B = diag(2, 3) = 2 0 0 3 . Diagonální matice ale mocnit umíme! Pro libovolné přirozené k proto umíme vypočítat matici operátoru (fA)k vzhledem k bázi B: [(fA)k ]B B = ([fA]B B)k = 2 0 0 3 k = diag(2k , 3k ) = 2k 0 0 3k . Nyní můžeme odpovědět na řadu otázek o operátoru fA a matici A. • Řešení diskrétního dynamického systému xk = fA(xk−1) „v bázi B . Platí [xk]B = [(fA)k (x0)]B = [(fA)k ]B B [x0]B = 2k 0 0 3k [x0]B . Jsou-li tedy souřadnice [x0]B počátečního stavu x0 vzhledem k bázi B rovny [x0]B = r s , pak souřadnice stavu xk v bázi B jsou [xk]B = 2k 0 0 3k r s = r2k s3k . • Kvalitativní chování diskrétního dynamického systému xk = fA(xk−1). Pokud r = 0 a s = 0, pak se pro k → ∞ budou obě souřadnice vzhledem k B v absolutní hodnotě blížit nekonečnu. Přitom první složka bude pro velká k zanedbatelná vzhledem ke složce druhé. • Řešení diskrétního dynamického systému xk = fA(xk−1) „v kanonické bázi . Z matice [(fA)k ]B B můžeme určit matici (fA)k vzhledem ke kanonickým bázím pomocí matic přechodu (opakujeme výpočet v tvrzení 6.20): [(fA)k ]K K = [id]B K [(fA)k ]B B [id]K B = 0 1 1 1 2k 0 0 3k 0 1 1 1 −1 = 0 1 1 1 2k 0 0 3k −1 1 1 0 = 3k 0 3k − 2k 2k 332 LIBOR BARTO A JIŘÍ TŮMA Z toho dostáváme xk = (fA)k (x0) = [(fA)k ]K K x0 = 3k 0 3k − 2k 2k x0 . Tedy pokud x0 = (a, b)T , pak xk = (fA)k (x0) = 3k a (3k − 2k )a + 2k b . • Výpočet k-té mocniny Ak matice A pro k ≥ 1. Protože [(fA)k ]K K = [fAk ]K K = Ak máme z předchozího bodu Ak = 3k 0 3k − 2k 2k . Příklad nás vede k definici diagonalizovatelného operátoru. Definice 9.54. Lineární operátor f : V → V na konečně generovaném prostoru V nazýváme diagonalizovatelný, pokud má vzhledem k nějaké bázi diagonální matici. Tvrzení 9.55. Je-li f : V → V lineární operátor na konečně generovaném prostoru V a je-li B = (v1, . . . , vn) báze prostoru V, pak [f]B B = diag(λ1, . . . , λn) platí právě tehdy, když pro každé i ∈ {1, 2, . . . , n} je vi vlastní vektor příslušný vlastnímu číslu λi. Důkaz. Rovnost [f]B B = diag(λ1, . . . , λn) platí právě když pro každé i ∈ {1, . . . , n} se i-tý sloupec matice [f]B B rovná i-tému sloupci matice diag(λ1, . . . , λn), tj. právě když [f(vi)]B = λiei (použili jsme definici matice lineárního zobrazení). Rovnost [f(vi)]B = λiei je ekvivalentní vztahu f(vi) = λivi podle definice souřadnic prvku vzhledem k bázi. Protože vi = o, vztah f(vi) = λivi je ekvivalentní tomu, že vi je vlastní vektor příslušný vlastnímu číslu λi. Důsledek 9.56. Lineární operátor f : V → V na konečně generovaném prostoru V je diagonalizovatelný právě tehdy, když existuje báze prostoru V tvořená vlastními vektory operátoru f. Ekvivalentně můžeme diagonalizovatelnost charakterizovat pomocí podobnosti matice operátoru (vzhledem k libovolné bázi) s diagonální maticí. Tvrzení 9.57. Je-li f : V → V lineární operátor na konečně generovaném prostoru V dimenze n nad tělesem T a C báze prostoru V, pak operátor f je diagonalizovatelný právě tehdy, když je matice [f]C C podobná diagonální matici. Důkaz. Je-li operátor f diagonalizovatelný, pak existuje báze B prostoru V taková, že [f]B B je diagonální matice. Podle tvrzení 6.20 jsou matice [f]C C a [f]B B podobné. Naopak, je-li matice [f]C C podobná diagonální matici D, pak existuje regulární matice R = (r1|r2| · · · |rn) taková, že D = R−1 [f]C C R. Protože je matice R regulární, je posloupnost sloupcových vektorů (r1, r2, . . . , rn) lineárně nezávislá a proto báze v Tn . Zvolíme vektory vi ∈ V tak, aby platilo [vi]C = ri pro každé i = 1, 2, . . . , n. Posloupnost B = (v1, v2, . . . , vn) je pak báze prostoru V a platí pro ni [id]B C = R. Opět podle tvrzení 6.20 pak platí [f]B B = R−1 [f]C C R = D. Přeformulujeme si definici a tvrzení o diagonalizovatelnosti operátorů pro matice. LINEÁRNÍ ALGEBRA 333 Definice 9.58. Čtvercová matice A řádu n nad tělesem T se nazývá diagonalizovatelná, pokud je operátor fA : Tn → Tn diagonalizovatelný. Pro maticovou formulaci tvrzení 9.55 si opět připomeneme, že pro čtvercovou matici A řádu n nad T a bázi B = (v1, . . . vn) prostoru Tn platí [fA]B B = [id]K B [fA]K K [id]B K = R−1 AR, kde R = [id]B K = (v1| . . . |vn) . Tvrzení 9.59. Je-li A čtvercová matice řádu n nad tělesem T, B = (v1, . . . , vn) báze prostoru Tn a R = [id]B K = (v1| . . . |vn), pak matice [fA]B B = R−1 AR se rovná diagonální matici diag(λ1, . . . , λn) právě tehdy, když pro každé i ∈ {1, 2, . . . , n} je vi vlastní vektor příslušný vlastnímu číslu λi. Důsledek 9.60. Čtvercová matice A řádu n nad tělesem T je diagonalizovatelná právě tehdy, když existuje báze prostoru Tn tvořená vlastními vektory matice A. V situaci, kdy [f]B B = [id]K B [fA]K K [id]B K = R−1 AR = diag(λ1, . . . , λn), umíme matici A umocnit stejně jako v příkladu 9.53: Ak = [(fA)k ]K K = [id]B K [(fA)k ]B B [id]K B = R ([fA]B B)k R−1 = R diag(λ1, . . . , λn)k R−1 = R diag(λk 1, . . . , λk n) R−1 . Výpočet mocniny Ak můžeme nahlédnout také algebraicky. Označíme D = diag(λ1, . . . , λn) a vztah R−1 AR = D přepíšeme na A = RDR−1 . Pak Ak = (RDR−1 )(RDR−1 ) . . . (RDR−1 ) k× = R DD · · · D k× R−1 = RDk R−1 = R diag(λk 1, . . . , λk n) R−1 . Použitím tvrzení 9.57 na kanonickou bázi C = Kn dostaneme následující maticovou verzi. Tvrzení 9.61. Čtvercová matice A řádu n nad tělesem T je diagonalizovatelná právě tehdy, když je podobná diagonální matici. 9.3.2. Lineární nezávislost vlastních vektorů. Chceme nalézt nutné a postačující podmínky pro to, aby byl lineární operátor f : V → V na konečně generovaném prostoru V diagonalizovatelný. Základem je následující věta, která platí zcela obecně, není nutné předpokládat, že prostor V má konečnou dimenzi. Věta 9.62. Je-li f : V → V lineární operátor a (v1, v2, . . . , vk) posloupnost nenulových vlastních vektorů operátoru f příslušných navzájem různým vlastním číslům λ1, . . . , λk, pak je posloupnost (v1, v2, . . . , vk) lineárně nezávislá. Důkaz. Použijeme indukci podle k. Je-li k = 1, tvrzení platí, protože v1 = o. Předpokládejme, že k > 1 a tvrzení platí pro k−1, tj. že posloupnost (v1, . . . , vk−1) je lineárně nezávislá. Uvažujme skaláry a1, . . . , ak ∈ T takové, že platí o = a1v1 + a2v2 + · · · + ak−1vk−1 + akvk . Aplikujeme na obě strany operátor (f − λk idV ) a upravíme. V prvních dvou úpravách používáme linearitu operátoru (f − λk idV ). (f − λk idV )(a1v1 + · · · + ak−1vk−1 + akvk) = (f − λk idV )(o) (f − λk idV )(a1v1) + · · · + (f − λk idV )(ak−1vk−1) + (f − λk idV )(akvk) = o a1(f − λk idV )(v1) + · · · + ak−1(f − λk idV )(vk−1) + ak(f − λk idV )(vk) = o . 334 LIBOR BARTO A JIŘÍ TŮMA K poslední úpravě využijeme toho, že pro každé i = 1, 2, . . . , k platí (f − λk idV )(vi) = f(vi) − (λk idV )(vi) = λivi − λkvi = (λi − λk)vi , a dostaneme o = a1(λ1 − λk)v1 + · · · + ak−1(λk−1 − λk)vk−1 . Posloupnost vektorů (v1, . . . , vk−1) je lineárně nezávislá podle indukčního předpokladu. Odtud plyne a1(λ1 − λk) = a2(λ2 − λk) = · · · = ak−1(λk−1 − λk) = 0 . Protože vlastní čísla λ1, . . . , λk−1, λk jsou navzájem různá, vyplývá odtud, že a1 = a2 = · · · = ak−1 = 0. Po dosazení do rovnosti a1v1 + a2v2 + · · · + ak−1vk−1 + akvk = o dostaneme akvk = o a tedy také ak = 0, protože vk = o. Tím je dokázáno, že posloupnost (v1, . . . , vk−1, vk) je lineárně nezávislá. Důsledek 9.63. Má-li lineární operátor f : V → V na vektorovém prostoru V dimenze n nad tělesem T celkem n navzájem různých vlastních čísel, pak je diago- nalizovatelný. Důkaz. Má-li operátor f celkem n navzájem různých vlastních čísel λ1, . . . , λn, existuje pro každé i = 1, . . . , n nenulový vlastní vektor vi příslušný λi. Podle předchozí věty je posloupnost vlastních vektorů (v1, . . . , vn) lineárně nezávislá a tedy je to báze prostoru V. Operátor f má tak bázi složenou z vlastních vektorů operátoru f, je proto diagonalizovatelný podle důsledku 9.56. Důsledek 9.64. Má-li matice A řádu n nad tělesem T celkem n navzájem různých vlastních čísel, pak je diagonalizovatelná. Operátor v příkladu 9.53 a operátor v motivačním příkladu o Fibonacciho posloupnosti 9.2 splňují předpoklad důsledku 9.63. Příklad 9.65. Ještě jednou spočítáme, jak vypadá k-tý prvek Fibonacciho posloupnosti. Najdeme vlastní čísla a vlastní vektory matice C. Charakteristický polynom matice C je (podle tvrzení 9.32 o koeficientech charakteristického polynomu) roven pC(λ) = λ2 − λ − 1 Vlastní čísla matice C, neboli kořeny rovnice pC(λ) = 0, jsou λ1 = 1 + √ 5 2 , λ2 = 1 − √ 5 2 = 1 − λ1 . Všechny vlastní vektory příslušné vlastnímu číslu λ1 jsou právě všechna řešení homogenní soustavy s maticí 0 − λ1 1 1 1 − λ1 , což jsou všechny vektory v Mλ1 = LO (1, 1/2 + √ 5/2)T = LO (1, λ1)T . Podobně jsou všechny vlastní vektory příslušné vlastnímu číslu λ2 = 1 − λ1 právě vektory z lineárního obalu vektoru (1, λ2)T . Posloupnost B = (v1, v2) = 1 λ1 , 1 λ2 LINEÁRNÍ ALGEBRA 335 je (i podle věty 9.62) lineárně nezávislá, takže je bází R2 , a platí [fC]B B = diag(λ1, λ2), [(fC)k ]B B = diag(λk 1, λk 2) . Chceme znát Ck (a0, a1)T = (fC)k (a0, a1)T . Teď máme více možností, jak výpočet dokončit. Můžeme přejít ke kanonické bázi (tj. spočítat [(fC)k ]K K = Ck ), nebo pracovat přímo v bázi B. Zvolíme druhý přístup. Vyjádříme vektor (a0, a1)T = (0, 1)T vzhledem k bázi B. Vyjde 0 1 B = 1 √ 5 1 −1 . Odtud dostáváme pro každé celé číslo k ≥ 0 ak ak+1 B = [(fC)k ]B B 0 1 B = λk 1 0 0 λk 2 1 √ 5 1 −1 = 1 √ 5 λk 1 −λk 2 . Z toho vyplývá ak ak+1 = 1 √ 5 λk 1 1 λ1 − λk 2 1 λ2 = 1 √ 5 λk 1 − λk 2 λk+1 1 − λk+1 2 . Srovnáním prvních složek dostáváme ak = λk 1 √ 5 − λk 2 √ 5 . Všimněme si také, že |λk 2| < 1, druhý sčítanec se proto pro k → ∞ blíží 0, takže ak ≈ λk 1/ √ 5 = 1 √ 5 1 + √ 5 2 k . K vzorci pro k-tý člen Fibonacciho posloupnosti se lze dopočítat rychleji, jak vyplyne z následující diskuze. Uvažujme diskrétní lineární dynamický systém xk+1 = Axk, kde A je diagonalizovatelná matice nad libovolným tělesem. Matici A lze psát ve tvaru A = R diag(λ1, . . . , λn)R−1 , kde λ1, . . . , λn jsou vlastní čísla, a platí xk = Ak x0 = R diag(λk 1, . . . , λk n)R−1 x0 . Z uvedeného vztahu vyplývá, že všechny složky vektoru xk jsou výrazy tvaru c1λk 1 + · · · + cnλk n pro vhodné konstantní skaláry c1, . . . , ck ∈ T. Skutečně, označíme-li (d1, . . . , dn)T = R−1 x0, pak diag(λk 1, . . . , λk n)R−1 x0 = (d1λk 1, d2λk 2, . . . , dnλk n)T a i-tá složka výsledného vektoru je potom ri1d1λk 1 + ri2d2λk 2 + · · · + rindnλk n. Příklad 9.66. Efektivněji spočítáme vzorec pro k-tý člen Fibonacciho posloupnosti z příkladu 9.65. Protože vlastní čísla matice C jsou λ1,2 = (1 ± √ 5)/2, víme, že k-tý člen lze zapsat ve tvaru ak = c1λk 1 + c2λk 2 . Dosazením k = 0, 1 získáme 0 = a0 = c1λ0 1 + c2λ0 2 = c1 + c2 1 = a1 = c1λ1 1 + c2λ1 2 = c1λ1 + c2λ2 336 LIBOR BARTO A JIŘÍ TŮMA Vyřešením této soustavy lineárních rovnic o dvou neznámých získáme c1 = 1/ √ 5 a c2 = −1/ √ 5 a tím i odvozený vzorec. 9.3.3. Geometrická násobnost, charakterizace diagonalizovatelných operátorů. Pokud chceme operátor f na konečně generovaném prostoru dimenze n diagonalizovat, musíme najít n-prvkovou lineárně nezávislou posloupnost B složenou z vlastních vektorů operátoru f. Každý z vektorů v B musí ležet v podprostoru Mλ vlastních vektorů příslušných nějakému vlastnímu číslu λ. Z něho může báze B obsahovat nanejvýš dim Mλ prvků. Této dimenzi říkáme geometrická násobnost vlastního čísla λ. Definice 9.67. Geometrickou násobností vlastního čísla λ operátoru f na konečně generovaném prostoru (nebo čtvercové matice A) rozumíme dimenzi podprostoru Mλ vlastních vektorů operátoru f (nebo matice A) příslušných vlastnímu číslu λ. Geometrická násobnost každého vlastního čísla λ operátoru f je aspoň 1 (jinak by λ nebylo vlastní číslo). V tvrzení 9.69 dokážeme, že je menší nebo rovná algebraické násobnosti λ. K důkazu budeme potřebovat následující tvrzení o determinantech. Tvrzení 9.68. Pro čtvercovou blokovou matici A = B C 0 D se čtvercovými diagonálními bloky B, D platí det A = (det B) (det D) . Důkaz. Označíme n řád matice A = (aij) a k < n řád matice B. Důkaz uděláme indukcí podle k. Je-li k = 1, je B = (a11) a všechny ostatní prvky v prvním sloupci jsou 0. Rozvineme det A podle prvního sloupce a dostaneme det A = a11 det M11 = (det B) (det D) . Nyní předpokládáme, že k > 1. Indukční předpoklad je, že determinant blokově horní trojúhelníkové matice se dvěma diagonálními bloky se rovná součinu determinantů diagonálních bloků kdykoliv má diagonální blok vlevo nahoře řád k − 1. Opět rozvineme det A podle prvního sloupce, tentokrát ai1 = 0 pro každé i > k. Dostaneme det A = (−1)1+1 a11 det M11 + (−1)2+1 a21 det M21 + · · · + (−1)k+1 ak1 det Mk1 , kde Mi1 je minor matice A vzniklý vynecháním prvního sloupce a i-tého řádku. Pro každé i = 1, 2, . . . , k je minor Mi1 = Bi1 Ci 0 D , kde Bi1 je minor v diagonálním bloku B vzniklý vynechnáním i-tého řádku a prvního sloupce, a Ci je matice, kterou dostaneme z bloku C vynecháním i-tého řádku. Minor Mi1 je blokově horní trojúhelníková matice a podle indukčního předpokladu platí det Mi1 = (det Bi1) (det D) . LINEÁRNÍ ALGEBRA 337 Dostáváme tak det A =(−1)1+1 a11 det M11 + (−1)2+1 a21 det M21 + · · · + (−1)k+1 ak1 det Mk1 =(−1)1+1 a11(det B11) (det D) + · · · + (−1)k+1 ak1(det Bk1) (det D) = (−1)1+1 a11(det B11) + · · · + (−1)k+1 ak1(det Bk1) (det D) =(det B) (det D) , podle věty o rozvoji determinantu podle sloupce použité na diagonální blok B. Tvrzení 9.69. Pro každé vlastní číslo µ lineárního operátoru f : V → V na konečně generovaném prostoru V (čtvercové matice A) nad tělesem T platí, že geometrická násobnost µ je menší nebo rovná algebraické násobnosti µ. Důkaz. Buď k geometrická násobnost vlastního čísla µ operátoru f. Zvolíme nějakou bázi (v1, . . . , vk) podprostoru Mµ vlastních vektorů příslušných µ a doplníme ji vektory vk+1, . . . , vn na bázi B = (v1, . . . , vn) celého prostoru V. Protože pro každé i = 1, . . . , k platí [f(vi)]B = [µvi]B = µei, matice [f]B B má blokově diagonální tvar µIk C 0 D , kde C je vhodný blok typu k × (n − k) a D vhodný čtvercový blok řádu n − k. Charakteristický polynom pf (λ) operátoru f se tedy rovná determinantu matice [f]B B − λIn = (µ − λ)Ik C 0 D − λIn−k . Determinant této blokově horní trojúhelníkové matice se podle předchozího tvrzení rovná součinu determinantů diagonálních bloků. Proto pf (λ) = det ((µ − λ)Ik) det(D − λIn−k) = (µ − λ)k det(D − λIn−k) . Číslo µ je tedy aspoň k-násobným kořenem charakteristického polynomu operátoru f, jeho algebraická násobnost je proto aspoň k. Příkladem kdy nastane rovnost, je jednotková matice I2, která má jediné vlastní číslo 1, které má geometrickou i algebraickou násobnost 2. Dále samozřejmě rovnost algebraické a geometrické násobnosti platí pro každé vlastní číslo s algebraickou násobností 1. V jistém smyslu typický případ, kdy je nerovnost ostrá, ukazuje následující příklad. Příklad 9.70. Reálná matice A = 3 1 0 3 má charakteristický polynom det A − λI2 = (λ−3)2 a tedy jediné vlastní číslo λ = 3 algebraické násobnosti 2. Podprostor vlastních vektorů příslušných vlastnímu číslu λ = 3 je M3 = Ker (A − 3I2) = Ker 0 1 0 0 = LO 1 0 . geometrická násobnost vlastního čísla λ = 3 je proto 1. Tato matice není diagonalizovatelná, protože z M3 zřejmě nelze vybrat dvoučlennou lineárně nezávislou posloupnost. 338 LIBOR BARTO A JIŘÍ TŮMA Nediagonalizovatelnost operátoru nebo matice může mít dvě příčiny – nedostatek vlastních čísel (jako rotace o π/2 v příkladu 9.31) nebo nedostatek vlastních vektorů (jako v předchozím příkladu). Tím se dostáváme k charakterizaci diagonalizovatelných operátorů. Věta 9.71. Buď f : V → V lineární operátor na konečně generovaném vektorovém prostoru V dimenze n (resp. buď A čtvercová matice řádu n) nad tělesem T. Pak jsou následující tvrzení jsou ekvivalentní. (1) Operátor f je diagonalizovatelný (resp. matice A je diagonalizovatelná). (2) Operátor f (resp. matice A) má • n vlastních čísel včetně algebraických násobností a • geometrická násobnost každého vlastního čísla operátoru f (resp. matice A) je rovná jeho algebraické násobnosti. Důkaz. (1) ⇒ (2). Předpokládáme, že je f diagonalizovatelný. Existuje tedy báze B = (v1, . . . , vn) prostoru V složená z vlastních vektorů operátoru f. Označme λ1, . . . , λk všechna navzájem různá vlastní čísla operátoru V, l1, . . . , lk jejich algebraické násobnosti a m1, . . . , mk jejich geometrické násobnosti. Každý z vektorů v B leží v jednom z podprostorů Mλ1 , . . . , Mλk , přičemž z každého podprostoru Mλi může v bázi B ležet nejvýše dim(Mλi ) = mi vektorů (protože pouze nejvýše tolik vektorů může tvořit lineárně nezávislou posloupnost v Mλi ). Z toho vyplývá nerovnost n ≤ m1 + · · · + mk. Podle tvrzení 9.69 je geometrická násobnost menší nebo rovná algebraické násobnosti, tedy mi ≤ li (pro každé i ∈ {1, . . . , k}). Součet algebraických násobností je přitom nejvýše n (viz první bod důsledku 9.51). Dohromady máme n ≤ m1 + · · · + mk ≤ l1 + · · · + lk ≤ n a mi ≤ li pro každé i = 1, 2, . . . , k . To znamená, že l1 + . . . lk = n a současně mi = li pro každé i ∈ {1, 2 . . . , k}, jak jsme chtěli dokázat. (2) ⇒ (1). Předpokládejme naopak, že podmínky na násobnosti jsou splněné. Označíme λ1, . . . , λk vlastní čísla operátoru a l1, . . . , lk jejich algebraické (= geometrické) násobnosti. Pro každé i ∈ {1, . . . , k} má Mλi dimenzi li, vezmeme jeho libovolnou bázi Bi = (vi 1, vi 2, . . . , vi li ) . Ukážeme, že posloupnost B = (v1 1, v1 2, . . . , v1 l1 , v2 1, v2 2, . . . , v2 l1 , . . . , vk 1 , vk 2 , . . . , vk lk ) vytvořená ze všech vektorů všech bází podprostorů Mλi tvoří bázi prostoru V. Počet prvků této posloupnosti je l1 + l2 + · · · + lk = n = dim V, stačí proto ukázat, že B je lineárně nezávislá posloupnost. Předpokládejme tedy, že pro nějaké skaláry ai j, i = 1, . . . , k a j = 1, . . . , li, platí a1 1v1 1 + a1 2v1 2 + · · · + a1 l1 v1 l1 + · · · + ak 1vk 1 + ak 2vk 2 + · · · + ak lk vk lk = o . Pro každé i = 1, 2, . . . , k je vektor wi = ai 1vi 1 + ai 2vi 2 + · · · + ai li vi li vlastní vektor operátoru f příslušný vlastnímu číslu λi. Dále platí w1 + w2 + · · · + wk = o. LINEÁRNÍ ALGEBRA 339 Pokud by některý z vektorů wi byl nenulový, vynechali bychom z poslední rovnosti všechny nulové vektory na levé straně a zůstal by nám součet, tj. lineární kombinace s koeficienty 1, wi1 + wi2 + · · · + wil = o nenulových vlastních vektorů příslušných různým vlastním číslům λi1 , λi2 , . . . , λil . To ale není možné podle věty 9.62 o lineární nezávislosti posloupnosti nenulových vlastních vektorů příslušných různým vlastním číslům. Pro každé i = 1, 2, . . . , k tedy platí wi = o, čili o = ai 1vi 1 + ai 2vi 2 + · · · + ai li vi li . Posloupnost vektorů Bi = (vi 1, . . . , vi li ) je ale lineárně nezávislá neboť tvoří bázi Mλi . Dostáváme tak, že ai 1 = ai 2 = · · · = ai li = 0 pro každé i = 1, 2, . . . , k. Posloupnost B je tedy lineárně nezávislá a tvoří proto bázi prostoru V složenou z vlastních vektorů operátoru f. Z důkazu vidíme, že v případě diagonalizovatelných operátorů bude v nalezené bázi B počet vlastních vektorů příslušných vlastnímu číslu λ roven algebraické ( = geometrické) násobnosti λ. Proto [f]B B bude mít na diagonále každé vlastní číslo tolikrát, kolik je jeho algebraická násobnost. Rovněž si všimněte, že podmínku (2) lze ekvivalentně vyjádřit tak, že součet geometrických násobností všech vlastních čísel je n. Příklad 9.72. V příkladu 9.50 jsme spočítali vlastní čísla a jejich algebraické násobnosti pro operátor f : R3 → R3 definovaný předpisem f   x y z   =   −y + z −3x − 2y + 3z −2x − 2y + 3z   . Zjistíme je-li diagonalizovatelný, a pokud ano, najdeme bázi v R3 složenou z vlastních vektorů operátoru f. Operátor f je roven fA pro matici A = [f]K K =   0 −1 1 −3 −2 3 −2 −2 3   . Charakteristický polynom operátoru f vyšel −(λ−1)2 (λ+1), takže operátor f má vlastní číslo λ1 = 1 algebraické násobnosti 2 a vlastní číslo λ2 = −1 algebraické násobnosti 1. Splňuje tedy první podmínku pro diagonalizovatelnost. Zbývá ověřit rovnost algebraické a geometrické násobnosti obou vlastních čísel λ1 = 1 a λ2 = −1. Algebraická násobnost vlastního čísla λ1 = 1 je 2. Jeho geometrická násobnost se rovná dimenzi jádra matice A − λ1I3 = A − I3 =   −1 −1 1 −3 −3 3 −2 −2 2   . Hodnost této matice se rovná 1, dimenze jádra je proto 2. Geometrická násobnost vlastního čísla λ1 = 1 je rovná jeho algebraické násobnosti. Algebraická násobnost vlastního čísla λ2 = −1 je 1 a rovná se tak jeho geometrické násobnosti, protože ta je aspoň 1 pro jakékoliv vlastní číslo. Operátor f je tedy diagonalizovatelný. 340 LIBOR BARTO A JIŘÍ TŮMA Najdeme ještě bázi R3 , vzhledem ke které je matice operátoru f diagonální. Bázi jádra matice A − λ1I3 = A − I3, které má dimenzi 2, můžeme zvolit například (1, 0, 1)T , (0, 1, 1)T . Bázi jádra matice A − λ2I3 = A + I3 =   1 −1 1 −3 −1 3 −2 −2 4   ∼ 1 −1 1 0 −4 6 můžeme zvolit například (1, 3, 2)T . Posloupnost B = ((1, 0, 1)T , (0, 1, 1)T , (1, 3, 2)T ) tak tvoří bázi prostoru R3 tvořenou vlastními vektory operátoru f a platí [f]B B = diag(1, 1, −1). 9.3.4. Lineární operátory na reálném vektorovém prostoru dimenze 2. Probereme možnosti, které mohou nastat pro diagonalizovatelný lineární operátor f na vektorovém prostoru V nad R dimenze 2. • Operátor f má dvě různá vlastní čísla λ1, λ2. Pak je diagonalizovatelný. Pro představu o vývoji diskrétního dynamického systému xk+1 = f(xk) se podívejte na následující obrázek. Stejně jako v příkladu 9.12 vedou šipky z bodu x do bodu f(x). -6 -4 -2 0 2 4 6 -6 -4 -2 0 2 4 6 -6 -4 -2 0 2 4 6 -6 -4 -2 0 2 4 6 -6 -4 -2 0 2 4 6 -6 -4 -2 0 2 4 6 Obrázek 87. Dvě různá vlastní čísla. Vlevo λ1 > 1 > λ2 > 0, uprostřed λ1, λ2 > 1, vpravo 0 < λ1, λ2 < 1 • Operátor f má jedno vlastní číslo algebraické násobnosti 2 a geometrické násobnosti 2. Pak je diagonalizovatelný, dokonce Mλ se rovná V, tj. f(x) = λx pro každé x. Vývoj diskrétního dynamického systému xk+1 = f(xk) si můžeme představit pomocí dalšího obrázku. • Operátor f má jedno vlastní číslo λ algebraické násobnosti 2 a geometrické násobnosti 1. Pak není diagonalizovatelný. Takovými operátory se budeme nyní zabývat v části o Jordanovu tvaru. Ilustrace je na obrázku 89. • Operátor f nemá žádné vlastní číslo. Pak není diagonalizovatelný, ale můžeme si pomoci komplexními čísly, jak je diskutováno hned v následujícím odstavci. Příklady vývoje dynamického systému xk+1 = fA(xk) jsou zobrazeny na obrázku 90. 9.3.5. Operátory na prostorech nad R, které jsou „diagonalizovatelné nad C . Rozebereme situaci, kdy reálná matice A řádu n není diagonalizovatelná, ale stejná matice, chápaná jako matice nad C, již diagonalizovatelná je. Podrobněji rozebereme případ n = 2. Diskuzi budeme provádět pouze pro matice (nebo operátory fA), abychom nemuseli používat pojem komplexního rozšíření reálného vektorového prostoru a operátoru na něm. LINEÁRNÍ ALGEBRA 341 -3 -2 -1 0 1 2 3 -3 -2 -1 0 1 2 3 -3 -2 -1 0 1 2 3 -3 -2 -1 0 1 2 3 Obrázek 88. Jedno vlastní číslo algebraické násobnosti 2 a geometrické násobnosti 2. Vlevo λ > 1, vpravo 1 > λ > 0. -6 -4 -2 0 2 4 6 -6 -4 -2 0 2 4 6 -6 -4 -2 0 2 4 6 -6 -4 -2 0 2 4 6 Obrázek 89. Jedno vlastní číslo algebrické násobnosti 2 a geometrické násobnosti 1. Vlevo λ > 1, vpravo 1 > λ > 0. -6 -4 -2 0 2 4 6 -6 -4 -2 0 2 4 6 -6 -4 -2 0 2 4 6 -6 -4 -2 0 2 4 6 Obrázek 90. Žádné reálné vlastní číslo. Charakteristický polynom pA(λ) má v tom případě reálné koeficienty a spolu s každým komplexním vlastním číslem λ má matice A také komplexně sdružené vlastní číslo λ. Následující jednoduché tvrzení ukazuje, že také komplexní vlastní vektory matice A můžeme sdružit do párů. Pro komplexní matici A = (aij) označíme A = (aij) matici, ve které každý prvek aij matice A nahradíme číslem aij komplexně sdruženým k aij. (Poněkud bizarní alternativní definice by byla A = (A∗ )T .) Matice A má všechny prvky reálné právě když A = A. 342 LIBOR BARTO A JIŘÍ TŮMA Tvrzení 9.73. Je-li x ∈ Cn vlastní vektor reálné matice A = (aij) příslušný vlastnímu číslu λ, pak x je vlastní vektor matice A příslušný vlastnímu číslu λ. Důkaz. Je-li x = (x1, x2, . . . , xn)T vlastní vektor reálné matice A příslušný vlastnímu číslu λ, platí Ax = λx. To znamená, že pro každé i = 1, 2, . . . , n platí ai1x1 + ai2x2 + · · · + ainxn = λxi . Rovnají se tedy také čísla komplexně sdružená k oběma stranám, tj. ai1x1 + ai2x2 + · · · + ainxn = λxi a tedy také ai1 x1 + ai2 x2 + · · · + ain xn = λ xi . Protože A je reálná matice, platí aij = aij pro každé i, j = 1, 2, . . . , n a tedy ai1x1 + ai2x2 + · · · + ainxn = λxi . pro každé i = 1, 2, . . . , n, což dokazuje rovnost Ax = λx. Na konkrétním příkladu ukážeme přímočarý, ale nepříliš efektivní postup pro mocnění reálné matice, která nemá žádné reálné vlastní číslo. Příklad 9.74. Najdeme vzorec pro k-tou mocninu reálné matice A = 1 −1 1 1 . Charakteristický polynom matice A je pA(λ) = λ2 − 2λ + 2 . Tento polynom nemá reálné kořeny. Budeme proto považovat A za matici nad C. Nyní má pA(λ) dva komplexně sdružené kořeny λ = 1 + i, λ = 1 − i, matice je tedy nad C diagonalizovatelná. Vlastní vektory příslušné vlastnímu číslu λ tvoří podprostor M1+i = Ker (A − (1 + i)I2) = Ker −i −1 1 −i = LO 1 −i . Protože A je reálná matice, platí podle předchozího tvrzení 9.73, že v je vlastní vektor matice A příslušný komplexnímu λ právě tehdy, když je v vlastní vektor matice A příslušný vlastnímu číslu λ. Proto bez počítání víme, že M1−i = LO 1 i . Bázi v C2 z vlastních vektorů matice A zvolíme například B = 1 −i , 1 i . Pak Ak =[(fA)k ]K K = [id]B K [(fA)k ]B B [id]K B = 1 1 −i i (1 + i)k 0 0 (1 − i)k 1 1 −i i −1 . Vyjde Ak = 1 2 (1 + i)k + (1 − i)k i(1 + i)k − i(1 − i)k −i(1 + i)k + i(1 − i)k (1 + i)k + (1 − i)k . LINEÁRNÍ ALGEBRA 343 To je vcelku komplikovaný výraz, navíc obsahuje imaginární čísla, i když výsledek musí zřejmě být reálná matice. Proto je v tomto případě lepší počítat s goniometrickým tvarem komplexních čísel. Je 1 + i = √ 2eiπ/4 = √ 2(cos(π/4) + i sin(π/4)) a 1 − i = √ 2e−iπ/4 =√ 2(cos(π/4) − i sin(π/4)). Dosazením a využitím Moivreovy věty vyjde daleko přijatelnější výsledek Ak = 1 1 −i i (1 + i)k 0 0 (1 − i)k 1 1 −i i −1 = 1 1 −i i ( √ 2)k eikπ/4 0 0 ( √ 2)k e−ikπ/4 1 2i i −1 i −i = √ 2 k cos(kπ/4) − sin(kπ/4) sin(kπ/4) cos(kπ/4) . Stejného výsledku bychom docílili, kdybychom si hned na začátku všimli, že A = √ 2 cos(π/4) − sin(π/4) sin(π/4) cos(π/4) . Tedy že A je matice složení rotace o π/4 a stejnolehlosti s koeficientem √ 2. Mocninu Ak pak vidíme geometricky okamžitě. Nyní budeme uvažovat obecnou reálnou matici A řádu 2, která nemá žádné reálné vlastní číslo. Zároveň budeme matici A chápat jako matici nad C. Charakteristický polynom matice A má tedy dva různé komplexně sdružené kořeny λ, λ, takže operátor fA : C2 → C2 má dvě různá komplexní vlastní čísla λ, λ. Jako operátor fA : R2 → R2 diagonalizovatelný není (nemá žádné reálné vlastní číslo), jako operátor fA : C2 → C2 diagonalizovatelný je (dvě různá vlastní čísla). Vlastní čísla si vyjádříme v goniometrickém tvaru: λ = reiϕ = r(cos ϕ + i sin ϕ), λ = re−iϕ = r(cos ϕ − i sin ϕ) . Ukážeme, že existuje báze B prostoru R2 (!!) taková, že [fA]B B = r cos ϕ − sin ϕ sin ϕ cos ϕ , tj. „vzhledem k bázi B se operátor fA : R2 → R2 rovná rotaci o ϕ složené se stejnolehlostí s koeficientem r. (Ve skutečnosti můžeme dokonce nalézt ortogonální bázi B, vzhledem ke které má operátor uvedenou matici, nemůžeme ale obecně požadovat ortonormální bázi. Výpočet je složitější, nebudeme jej provádět nyní, ale až v příští kapitole.) Označme v ∈ C2 nějaký nenulový vlastní vektor operátoru fA : C2 → C2 příslušný vlastnímu číslu λ. Podle tvrzení 9.73 víme, že v je vlastní vektor operátoru fA : C2 → C2 příslušný vlastnímu číslu λ. Posloupnost vektorů C = (v, v) je báze C2 a vzhledem k bázi C máme [fA]C C = diag(λ, λ) . Označíme w1 = v + v, w2 = i(v − v) . Vektory w1, w2 jsou reálné vektory, vektor w1 je dvojnásobek reálné části vektoru v, vektor w2 je (−2)-násobek jeho imaginární části. Z definice vektorů w1, w2 plyne [w1]C = (1, 1)T , [w2]C = (i, −i)T . Z toho vidíme, že B = (w1, w2) je lineárně 344 LIBOR BARTO A JIŘÍ TŮMA nezávislá posloupnost (v C2 i v R2 ) a tvoří tedy bázi prostoru C2 i R2 . Vzhledem k této bázi máme [fA]B B = [id]C B [fA]C C [id]B C = 1 i 1 −i −1 r(cos ϕ + i sin ϕ) 0 0 r(cos ϕ − i sin ϕ) 1 i 1 −i Výpočtem získáme [f]B B = r cos ϕ − sin ϕ sin ϕ cos ϕ , což jsme chtěli ukázat. Dokázali jsme tak následující tvrzení. Tvrzení 9.75. Je-li A reálná matice řádu 2, která nemá reálná vlastní čísla, a λ = r(cos ϕ + i sin ϕ) je její komplexní vlastní číslo s nenulovým vlastním vektorem v, pak platí (1) vektory w1 = v + v a w2 = i(v − v) tvoří bázi B = (w1, w2) prostoru R2 , (2) lineární zobrazení fA : R2 → R2 určené maticí A má vzhledem k bázi B matici [fA]B B = r cos ϕ − sin ϕ sin ϕ cos ϕ . (To je matice složení rotace o úhel ϕ se stejnolehlostí s koeficientem r > 0.) Na obrázku 90 je znázorněn vývoj dynamického systému xk+1 = fA(xk) v této situaci, vlevo pro |λ| > 1, vpravo pro 1 > |λ|, obojí v případě kdy B je ortonormální báze. 9.3.6. Vývoj reálného spojitého dynamického systému s diagonalizovatelnou maticí. Uvažujme spojitý dynamický systém x (t) = Ax(t), kde A je reálná matice řádu n. Vektor x(t) ∈ Rn může například udávat polohu pohybujícího se objektu v čase t a rovnice x (t) = Ax(t) pak říká, že vektor rychlosti tohoto objektu je v bodě x(t) roven Ax(t). Dobrou představu o řešení si můžeme udělat tak, že si do několika bodů x nakreslíme šipku z bodu x do bodu x + Ax, neboli vektor Ax s počátečním bodem x, jako na následujícím obrázku. -2 -1 0 1 2 -2 -1 0 1 2 Obrázek 91. K příkladu 9.76. Šipky jsou pro přehlednost zkráceny. . LINEÁRNÍ ALGEBRA 345 Pokud je matice A diagonalizovatelná, můžeme soustavu vyřešit následujícím způsobem. V prostoru Rn existuje báze B = (u1, u2, . . . , un) tvořená vlastními vektory matice A, přičemž vektor ui je příslušný vlastnímu číslu λi matice A. Matice R = (u1|u2| · · · |un) je regulární a rovná se matici přechodu [id]B K od báze B ke kanonické bázi K. Platí pro ni R−1 AR = D = diag(λ1, λ2, . . . , λn) . Úpravou dostaneme A = RDR−1 a dosadíme do rovnice x (t) = Ax(t). Dostaneme tak x (t) = RDR−1 x(t) R−1 x (t) = DR−1 x(t) Položíme y(t) = R−1 x(t). Snadno se pak ověří, že y (t) = R−1 x (t). Stačí si uvědomit, že každá složka yj(t) vektoru y(t) je lineární kombinací funkcí xi(t) a tedy derivace yj(t) je lineární kombinací derivací xi(t) se stejnými koeficienty. Dosazením dostáváme y (t) = Dy(t) Tuto soustavu vyřešíme užitím příkladu 9.22 o řešení diferenciální rovnice f (t) = λf(t). Původní funkce x(t) pak dopočteme ze vztahu x(t) = Ry(t). Příklad 9.76. Vyřešíme soustavu x1(t) x2(t) = A x1(t) x2(t) = −2 1 1 −2 x1(t) x2(t) s počáteční podmínkou x1(0) = 5, x2(0) = 7. Charakteristický polynom matice A je pA(λ) = λ2 + 4λ + 3, který má dva různé reálné kořeny λ1 = −1 a λ2 = −3. Vlastní vektory příslušné vlastnímu číslu λ1 = −1 tvoří lineární obal LO (1, 1)T . Vlastní vektory příslušné vlastnímu číslu λ2 = −3 tvoří linerání obal LO (1, −1)T . Položíme B = ((1, 1)T , (1, −1)T ). Pak R = 1 1 1 −1 . a D = R−1 AR = λ1 0 0 λ2 . Původní soustavu si přepíšeme do tvaru R−1 x1(t) x2(t) = λ1 0 0 λ2 R−1 x1(t) x2(t) . Označíme y1(t) y2(t) = R−1 x1(t) x2(t) . Obě funkce yi(t) jsou lineární kombinace funkcí x1(t), x2(t) s konstantními koeficienty v i-tém řádku matice R−1 . Platí proto y1(t) y2(t) = R−1 x1(t) x2(t) . Dvojice funkcí y1(t), y2(t) tak splňuje soustavu lineárních diferenciálních rovnic y1(t) y2(t) = λ1 0 0 λ2 y1(t) y2(t) = λ1y1(t) λ2y2(t) . 346 LIBOR BARTO A JIŘÍ TŮMA Tu už umíme řešit: y1(t) = y1(0)e−t a y2(t) = y2(0)e−3t , kde y1(0) y2(0) = R−1 x1(0) x2(0) . Spočítáme původní funkce: x1(t) x2(t) = R y1(t) y2(t) = R y1(0)eλ1t y2(0)eλ2t = R eλ1t 0 0 eλ2t y1(0) y2(0) = R eλ1t 0 0 eλ2t R−1 x1(0) x2(0) = 1 1 1 −1 eλ1t 0 0 eλ2t 1 2 1 1 1 −1 5 7 = 6e−t − e−3t 6e−t + e−3t . Z postupu při řešení předchozího příkladu můžeme nahlédnout, že pro obecnou diagonalizovatelnou matici A můžeme řešení spojitého dynamického systému x (t) = Ax(t) vyjádřit ve tvaru řešením soustavy x(t) = R diag(eλ1t , . . . , eλnt )R−1 x(0) , kde A = R diag(λ1, . . . , λn) R−1 . Pro zajímavost uveďme, že matice R diag(eλ1t , . . . , eλnt )R−1 je rovna tzv. exponenciále matice tA a značí se etA . To dává smysl, protože „dosadíme-li matici tA do Taylorovy řady funkce ex máme In + tA + t2 A2 2! + t3 A3 3! + · · · + tk Ak k! + · · · = In + tRDR−1 + t2 RD2 R−1 2! + t3 RD3 R−1 3! + · · · + tk RDk R−1 k! + · · · = R In + tD + (tD)2 2! + (tD)3 3! + · · · + (tD)k k! + · · · R−1 = R diag(eλ1t , . . . , eλnt )R−1 . Řešení soustavy x (t) = Ax(t) pak můžeme psát ve tvaru x(t) = etA x(0) , zcela analogicky k vyjádření f(t) = etλ f(0) jako řešení diferenciální rovnice f = λf. Příklad 9.77. Vyřešíme ještě spojitý dynamický systém z příkladu 9.6 popisující přechod substance přes buněčnou blánu. Ten vede k soustavě u1(t) = −ru1(t) + su2(t) , u2(t) = ru1(t) − su2(t) . s počáteční podmínkou u1(0) = 1, u2(0) = 0. Matice soustavy A = −r s r −s má charakteristický polynom p(λ) = λ2 + (r + s)λ a tudíž dvě různá vlastní čísla λ1 = 0 a λ2 = −(r + s), odtud plyne její diagonalizovatelnost. LINEÁRNÍ ALGEBRA 347 Vlastní vektory příslušné vlastnímu číslu λ1 = 0 tvoří jádro matice A − 0I2 = −r s r −s , který se rovná lineárnímu obalu LO (s, r)T . Vlastní vektory příslušné vlastnímu číslu λ2 = −(r + s) tvoří jádro matice A + (r + s)I2 = s s r r , který se rovná lineárnímu obalu LO (1, −1)T . Zvolíme bázi B = ((s, r)T , (1, −1)T )). Pak R = [id]B K = s 1 r −1 , R−1 = −1 r + s −1 −1 −r s . Soustava má řešení u1(t) u2(t) = s 1 r −1 e0t 0 0 e−(r+s)t −1 r + s −1 −1 −r s 1 0 = 1 r + s s + re−(r+s)t r − re−(r+s)t . Vidíme, že pro t → ∞ hodnota u1(t) konverguje k s r+s a hodnota u2(t) konverguje k r r+s . V následujícím příkladu si ukážeme, jak se vyvíjí spojitý dynamický systém x (t) = Ax(t) v dimenzi 2 v případě, že reálná matice A nemá žádné reálné vlastní číslo. Příklad 9.78. Spočítáme vlastní kmity pružiny se závažím. V příkladu 9.5 jsme odvodili, že vlastní kmity jsou popsané spojitým dynamickým systémem x (t) = x1(t) x2(t) = 0 1 − k m 0 x1(t) x2(t) = 0 1 − k m 0 x(t) , kde k označuje koeficient pružnosti pružiny a m hmotnost závaží. Proto k/m > 0 existuje jednoznačně určené reálné číslo ω > 0, pro které platí k/m = ω2 . Řešíme tedy spojitý dynamický systém s maticí A = 0 1 −ω2 0 s libovolným počátečním stavem x(0) = (p1, p2)T . Charakteristický polynom matice A je pAλ = λ2 + ω2 a má imaginární kořeny λ1,2 = ± i ω. Matice A je tedy diagonalizovatelná pouze nad C, nikoliv nad R. Množina všech vlastních vektorů matice A příslušných vlastnímu číslu λ = iω se rovná Miω = Ker −iω 1 −ω2 −iω = LO 1 iω a podle tvrzení 9.73 je M−iω = LO 1 −iω . Pro matici R = 1 1 iω −iω 348 LIBOR BARTO A JIŘÍ TŮMA pak platí R−1 AR = iω 0 0 −iω . Dynamický systém x (t) = Ax(t) upravíme do tvaru R−1 x (t) = iω 0 0 −iω R−1 x(t) . a vyřešíme pro nový neznámý vektor y(t) = (y1(t), y2(t))T = R−1 x(t) s novým počátečním stavem y0 = (y1(0), y2(0))T = R−1 x0. Spojitý dynamický systém y1(t) y2(t) = iω 0 0 −iω y1(t) y2(t) se rozpadá na dva komplexní spojité dynamické systémy y1(t) = (iω)y1t y2(t) = (−iω)y2t v dimenzi 1 a v závěru úvodní motivační části 9.1 jsme si ukázali, že má řešení y1(t) = y1(0)eiωt y2(t) = y2(0)e−iωt , což můžeme přepsat do tvaru y1(t) y2(t) = eiωt 0 0 e−iωt y1(0) y2(0) . Spočteme ještě matici R−1 = 1 2ω ω −i ω i a vyjádříme řešení původního spojitého dynamického systému x (t) = Ax(t) s počáteční podmínkou x(0) = (p1, p2)T ve tvaru x(t) = Ry(t) = 1ω 1 iω −iω eiωt 0 0 e−iωt 1 2ω ω −i ω i p1 p2 . Po delším počítání s využitím Eulerovy formule eiωt = cos(ωt)+i sin(ωt) dostaneme výsledek x1(t) x2(t) = p1 cos(ωt) + (1/ω)p2 sin(ωt) −ωp1 sin(ωt) + p2 cos(ωt) . Abychom pochopili trajektorii bodu (x1(t), x2(t))T v rovině R2 , vynásobíme první složku x1(t) číslem ω a spočteme součet čtverců (ωx1(t)) 2 + (x2(t))2 = (ωp1 cos(ωt) + p2 sin(ωt))2 + (−ωp1 sin(ωt) + p2 cos(ωt))2 = ω2 p2 1 cos2 (ωt) + p2 2 sin2 (ωt) + 2ωp1p2 cos(ωt) sin(ωt) + ω2 p2 1 sin2 (ωt) + p2 2 cos2 (ωt) − 2ωp1p2 cos(ωt) sin(ωt) = ω2 p2 1 + p2 2 . Vidíme tedy, že bod (x1(t), x2(t))T se pohybuje po elipse se středem v počátku a poloosami délky ω2p2 1 + p2 2/ω ve směru osy x1 a délky ω2p2 1 + p2 2 ve směru osy x2. Ve speciálním případě, kdy ω = 1, se bod (x1, x2)T pohybuje po kružnici se středem v počátku o poloměru p2 1 + p2 2 s konstantní úhlovou rychlostí ω = −1, tj. po LINEÁRNÍ ALGEBRA 349 směru hodinových ručiček. Směr pohybu a fázový posun zjistíme nejsnáze pomocí komplexních čísel. Použijeme goniometrický tvar p1 + ip2 = reiϕ pro počáteční podmínku a spočteme x1(t) + ix2(t) = p1 cos t + p2 sin t − ip1 sin t + ip2 cos t = (p1 + ip2)(cos t − i sin t) = r eiϕ e−it = r ei(−t+ϕ) . Spočítali jsme tak, že fázový posun se rovná ϕ. 9.4. Jordanův kanonický tvar. Jak jsme dokázali ve větě 9.71, lineární operátor na prostoru dimenze n může být nediagonalizovatelný ze dvou důvodů – součet algebraických násobností vlastních čísel je menší než n nebo geometrická násobnost nějakého vlastního čísla je menší než jeho algebraická násobnost. První příčinu lze obejít tím, že pracujeme ve větším tělese (například místo R v C). Druhá příčina takto obejít nejde, musíme slevit z požadavku diagonalizovatelnosti. Naštěstí lze v případě splnění první podmínky na algebraické násobnosti vždy najít bázi, vzhledem ke které má operátor „téměř diagonální matici, přesněji tzv. matici v Jordanově tvaru. Mocninu takové matice stále lze explicitně vypočítat, tedy lze také spočítat libovolnou mocninu příslušného operátoru. 9.4.1. Nediagonalizovatelné operátory v dimenzi 2. V odstavci 9.3.4 jsme probrali možnosti, jaké mohou nastat pro operátory na reálném vektorovém prostoru dimenze 2. Zbyl jediný případ, který nyní podrobně rozebereme. Diskuze také snad poslouží k orientaci v obecnějších pojmech a tvrzeních. Uvažujme tedy operátor f na vektorovém prostoru V dimenze 2 nad tělesem T, který má jedno vlastní číslo λ algebraické násobnosti 2 a geometrické násobnosti 1. Ukážeme, že v takovém případě existuje báze B = (u, v) prostoru V, vzhledem ke které má operátor f matici [f]B B = λ 1 0 λ . To je nejjednodušší příklad matice v tzv. Jordanově tvaru, která není diagonální. Takovou matici umíme umocnit, platí totiž λ 1 0 λ m = λm mλm−1 0 λm . Když takovou bázi B najdeme, budeme umět spočítat [fm ]B B = ([f]B B)m a tím pádem například vyřešit diskrétní dynamický systém xm = f(xm−1). Obecně je Jordanův tvar a mocnění rozebráno v odstavci 9.4.2. Hledání báze B začneme přeformulováním podmínky na matici [f]B B. Podle definice matice f vzhledem k B a B potřebujeme, aby platilo [f(u)]B = λ 0 , [f(v)]B = 1 λ . Podle definice souřadnic vzhledem k bázi tedy chceme, aby f(u) = λu, f(v) = u + λv . Označíme-li g operátor f − λ idV můžeme tyto podmínky zapsat g(u) = 0, g(v) = u , schematicky v g −−−−→ u g −−−−→ o . 350 LIBOR BARTO A JIŘÍ TŮMA Potřebujeme tedy, aby u byl vlastní vektor operátoru f příslušný vlastnímu číslu λ a aby g(v) = u. Obecně je toto přeformulování provedeno v odstavci 9.4.3. Dále ukážeme, že kdykoliv máme vektory u, v splňující podmínky g(v) = u, g(u) = o a vektor u je nenulový, pak B = (u, v) je lineárně nezávislá posloupnost, tedy báze V. Skutečně, je-li av + bu = o , pak aplikací operátoru g na obě strany dostaneme g(av + bu) = g(o) ag(v) + bg(u) = o au = o . Protože je u nenulový vektor, plyne odsud a = 0. Dosazením do původního vztahu získáme bu = o, takže i b = 0. Obecné tvrzení je dokázáno v odstavci 9.4.4 V odstavci 9.4.5 probereme, jak takové vektory obecně hledat za předpokladu, že existují (v odstavcích 9.4.6, 9.4.7, 9.4.8, 9.4.9 ukážeme postup na řadě příkladů). Důkaz, že skutečně existují, využívá pojem invariantního podprostoru diskutovaného v odstavci 9.4.10, samotný důkaz je pak obsažen v odstavci 9.4.11. V našem případě označme W = Im g. Tento prostor je invariantní ve smyslu, že g(x) ∈ W kdykoliv x ∈ W. Skutečně, g(x) leží v Im g pro jakýkoliv vektor x ve V , nejen pro vektory z W. Podprostor Ker g ≤ V je tvořen všemi vlastními vektory operátoru f příslušnými vlastnímu číslu λ. Protože geometrická násobnost vlastního čísla λ je podle předpokladu 1, je dim Ker g = 1. Podle věty o dimenzi jádra a obrazu je dim(Im g) = dim W = 1. Vezmeme libovolný nenulový vektor u ∈ W. Protože W má dimenzi 1, je vektor g(u) ∈ W násobkem vektoru u, tj. g(u) = au pro nějaký skalár a ∈ T. Pak ale (f − λ idV )u = au, takže f(u) = (λ + a)u. Protože f má jediné vlastní číslo λ, musí být nutně a = 0, platí tedy g(u) = o. Vektor u leží ve W = Im g, existuje proto vektor v ∈ V takový, že g(v) = u, a důkaz je hotov – nalezli jsme vektory u, v ∈ V takové, že g(v) = u, g(u) = o a u = o, což znamená, že pro bázi B = (u, v) v prostoru V platí [f]B B = λ 1 0 λ . 9.4.2. Matice v Jordanově tvaru. Matice v Jordanově tvaru je blokově diagonální matice, jejíž bloky tvoří Jordanovy buňky. Jordanova buňka je matice, která má všechny diagonální prvky rovny nějakému λ ∈ T a všechny prvky o jednu pozici nad diagonálou rovny 1. Definice 9.79. Jordanova buňka řádu k ≥ 1 nad tělesem T příslušná prvku λ ∈ T je čtvercová matice Jλ,k =          λ 1 0 0 0 0 λ 1 . . . 0 0 0 0 λ 0 0 ... ... ... ... 0 0 0 . . . λ 1 0 0 0 . . . 0 λ          . LINEÁRNÍ ALGEBRA 351 Příklad 9.80. Reálné matice 2 1 0 2 , 0 1 0 0 ,   3 1 0 0 3 1 0 0 3   , (4) jsou Jordanovy buňky J2,2, J0,2, J3,3, J4,1 (příslušné po řadě číslům 2, 0, 3, 4). Definice 9.81. Matice J nad tělesem T je v Jordanově kanonickém tvaru (nebo stručněji v Jordanově tvaru), pokud J je blokově diagonální matice, jejíž každý diagonální blok je Jordanova buňka (nějakého řádu příslušná nějakému číslu), tj. J = diag(Jλ1,k1 , . . . , Jλs,ks ) =      Jλ1,k1 0 . . . 0 0 Jλ2,k2 . . . 0 ... ... ... ... 0 0 . . . Jλs,ks      , kde λ1, . . . , λs ∈ T a k1, . . . , ks jsou kladná celá čísla. (Nuly v matici v tomto případě značí nulové matice vhodných typů.) Příklad 9.82. Diagonální matice diag(λ1, . . . , λn) je v Jordanově tvaru. Je složená z Jordanových buněk Jλ1,1, . . . , Jλn,1 řádu 1. Příklad 9.83. Matice         0 1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 2 1 0 0 0 0 0 2 1 0 0 0 0 0 2         je v Jordanově tvaru. Je složená z Jordanových buněk J0,2, J0,1, J2,3. Nyní najdeme vzorec pro mocninu Jordanovy matice. Matici J =      J1 0 . . . 0 0 J2 . . . 0 ... ... ... ... 0 0 . . . Js      v blokově diagonálním tvaru můžeme mocnit po diagonálních blocích: Jm =      J1 0 . . . 0 0 J2 . . . 0 ... ... ... ... 0 0 . . . Js      m =      Jm 1 0 . . . 0 0 Jm 2 . . . 0 ... ... ... ... 0 0 . . . Jm s      . Stačí se proto zaměřit pouze na mocnění Jordanových buněk. Jednoduchý je speciální případ Jordanových buněk příslušných prvku 0. Tvrzení 9.84. Pro libovolná přirozená čísla m < k platí Jm 0,k = (o| · · · |o m× |e1|e2| · · · |ek−m) Pro m ≥ k je Jm 0,k = 0. 352 LIBOR BARTO A JIŘÍ TŮMA Důkaz. Indukcí podle m < k, případ m = 1 je zjevný, neboť J0,k = (o|e1|e2| · · · |ek−1). Platí-li tvrzení pro nějaké m menší než k, máme ze sloupcového pohledu na násobení Jm+1 0,k = Jm 0,kJ0,k = (o| . . . |o m× |e1|e2| . . . |ek−m)(o|e1|e2| . . . |ek−1) = (o| . . . |o (m+1)× |e1| . . . |ek−(m+1)) . Pro m ≥ k je indukční krok zřejmý, neboť Jm 0,k = 0. Příklad 9.85. J2 0,4 =     0 0 1 0 0 0 0 1 0 0 0 0 0 0 0 0     , J3 0,4 =     0 0 0 1 0 0 0 0 0 0 0 0 0 0 0 0     . Jordanovu buňku Jλ,k můžeme rozepsat Jλ,k = λIk + J0,k Pokud dvě čtvercové matice A, B komutují, tj. platí-li AB = BA, pak pro ně platí obdoba binomické věty (cvičení) (A + B)m = m 0 Am + m 1 Am−1 B + m 2 Am−2 B2 + · · · + m m Bm . Použitím na matice λIk a J0,k dostaneme vzorec v následujícím tvrzení. Používáme konvenci, že binomické číslo m j = 0 pokud m < j. Dále pro i ∈ {0, 1, . . . } a prvek t v tělese T definujeme it jako t + t + · · · + t i× . Tvrzení 9.86. Je-li J = Jλ,k Jordanova buňka, pak pro každé kladné m platí Jm λ,k =           λm m 1 λm−1 m 2 λm−2 . . . m k−1 λm−k+1 0 λm m 1 λm−1 . . . m k−2 λm−k+2 ... ... ... ... ... ... ... ... ... ... 0 0 . . . λm m 1 λm−1 0 0 . . . 0 λm           . Důkaz. Jeden z možných výpočtů byl naznačen před tvrzením, ukážeme alternativní důkaz. Prvek na místě (i, j) v mocnině Jm λ,k zapsat jako m j−i λm−(j−i) . K důkazu lze použít indukci podle m, případ m = 1 je zjevný. Pokud formulka platí pro m ≥ 1, spočítáme Jm+1 λ,k = Jλ,kJm λ,k. Obě matice, které násobíme, jsou horní trojúhelníkové, součin je proto také horní trojúhelníkový. Zbývá spočítat prvky na místě (i, j) v součinu Jλ,kJm λ,k pro i ≤ j. Prvek na místě (i, j) v matici Jm λ,k se podle indukčního předpokladu rovná m j−i λm−(j−i) . Prvek na místě (i, j) v matici Jλ,kJm λ,k se pak LINEÁRNÍ ALGEBRA 353 rovná λ m j − i λm−(j−i) + 1 m j − (i + 1) λm−(j−i−1) = m j − i λm+1−(j−i) + m j − i − 1 λm+1−(j−i) = m + 1 j − i λm+1−(j−i) , použili jsme vztah mezi kombinačními čísly m l + m l−1 = m+1 l . 9.4.3. Operátory s Jordanovým tvarem. Chceme zjistit, zda daný operátor f na konečně generovaném prostoru má vzhledem k nějaké bázi B matici v Jordanově tvaru, jak takovou bázi najít, a z jakých buněk se matice [f]B B skládá. Formulujeme obdobu definice 9.54 diagonalizovatelnosti. Pojem „jordanizovatelnost se nepoužívá, raději říkáme, že pro operátor existuje Jordanův kanonický tvar. Definice 9.87. Říkáme, že pro lineární operátor f : V → V na konečně generovaném prostoru V existuje Jordanův kanonický tvar, pokud má vzhledem k nějaké bázi matici v Jordanově kanonickém tvaru. Odvodíme obdobu tvrzení 9.55. Nejprve pro samotné buňky. Kdy má operátor f : V → V vzhledem k nějaké bázi B = (v1, . . . , vk) matici [f]B B = Jλ,k? Podle definice matice operátoru musí platit (a stačí) [f(v1)]B =        λ 0 0 ... 0        , [f(v2)]B =        1 λ 0 ... 0        , . . . , [f(vk)]B =        0 ... 0 1 λ        , neboli f(v1) = λv1, f(v2) = λv2 + v1, f(v3) = λv3 + v2, . . . , f(vk) = λvk + vk−1 . Úpravou (podobně jako v části 9.2.2) dostaneme ekvivalentně (f − λ idV )(v1) = o, (f − λ idV )(v2) = v1, (f − λ idV )(v3) = v2, . . . , (f − λ idV )(vk) = vk−1 , schematicky vk f−λ idV −−−−→ vk−1 f−λ idV −−−−→ . . . f−λ idV −−−−→ v3 f−λ idV −−−−→ v2 f−λ idV −−−−→ v1 f−λ idV −−−−→ o . Vidíme, že v tom případě je λ vlastní číslo operátoru f, a že v1 je vlastní vektor příslušný λ. Posloupnosti (v1, . . . , vk) budeme říkat Jordanův řetízek, vektorům v2, . . . , vk se někdy říká zobecněné vlastní vektory příslušné vlastnímu číslu λ. Definice 9.88. Je-li f lineární operátor na vektorovém prostoru V nad tělesem T a λ vlastní číslo operátoru f, pak posloupnost (v1, . . . , vk) vektorů z V nazýváme Jordanův řetízek operátoru f délky k příslušný vlastnímu číslu λ s počátkem v1, pokud platí (f − λ idV )(v1) = o, (f − λ idV )(v2) = v1, (f − λ idV )(v3) = v2, . . . , (f − λ idV )(vk) = vk−1 . 354 LIBOR BARTO A JIŘÍ TŮMA Před definicí jsme odvodili následující tvrzení. Tvrzení 9.89. Je-li f : V → V lineární operátor na konečně generovaném prostoru V a B = (v1, . . . , vk) báze prostoru V, pak [f]B B = Jλ,k právě tehdy, když (v1, . . . , vk) je Jordanův řetízek operátoru f příslušný vlastnímu číslu λ s počátkem v1. Snadno se tvrzení zobecní na obecné matice v Jordanově tvaru. Budeme říkat, že posloupnost vektorů B je spojením posloupností B1 = (v1 1, . . . , v1 k1 ), B2 = (v2 1, . . . , v2 k2 ), . . . , Bs = (vs 1, . . . , vs ks ) , pokud B = (v1 1, . . . , v1 k1 , v2 1, . . . , v2 k2 , . . . , vs 1, . . . , vs ks ) . Budeme také používat zápis B = B1, . . . , Bs . Tvrzení 9.90. Je-li f : V → V lineární operátor na konečně generovaném prostoru V a B báze prostoru V, pak [f]B B = diag(Jλ1,k1 , . . . , Jλs,ks ) platí právě tehdy, když B je spojením posloupností B1, . . . , Bs, kde pro každé i ∈ {1, . . . , s} je Bi Jordanův řetízek operátoru f délky ki příslušný vlastnímu číslu λi s počátkem vi 1. Důsledek 9.91. Pro lineární operátor f : V → V na konečně generovaném prostoru V existuje Jordanův tvar právě tehdy, když existuje báze prostoru V vzniklá spojením Jordanových řetízků operátoru f. Nakonec formulujeme obdobu tvrzení 9.57. Důkaz je stejný. Tvrzení 9.92. Nechť f : V → V je lineární operátor na konečně generovaném prostoru V a C je báze prostoru V. Pak pro operátor f existuje Jordanův tvar právě tehdy, když je matice [f]C C podobná matici v Jordanově tvaru. Maticové verze definic a tvrzení přenecháme k rozmyšlení čtenáři. 9.4.4. Lineární nezávislost zobecněných vlastních vektorů. Chceme-li najít bázi, vzhledem ke které má operátor na prostoru dimenze n matici v Jordanově tvaru, musíme najít Jordanovy řetízky celkové délky n, tak aby jejich spojení byla lineárně nezávislá posloupnost. Následující věta, která zobecňuje větu 9.62 o lineární nezávislosti vlastních vektorů příslušných různým vlastním číslům, říká že stačí zaručit, aby pro každé vlastní číslo λ tvořily počáteční vektory řetízků příslušných vlastnímu číslu λ lineárně nezávislou posloupnost. Věta 9.93. Předpokládáme, že f : V → V je lineární operátor a B1, . . . , Bs jsou Jordanovy řetízky operátoru f příslušné vlastním číslům λ1, . . . , λs. Předpokládejme dále, že pro každé λ ∈ {λ1, . . . , λs} je posloupnost počátečních vektorů těch řetízků z B1, . . . , Bs, které přísluší vlastnímu číslu λ, lineárně nezávislá. Pak spojení B = B1, . . . , Bs je lineárně nezávislá posloupnost. Důkaz. Použijeme indukci podle celkového počtu k vektorů v řetízcích B1, . . . , Bs. Pro k = 1 je tvrzení zřejmé, neboť v tom případě máme jediný řetízek délky 1 a jeho počáteční vektor je nenulový. Předpokládáme nyní, že součet délek řetízků B1, B2, . . . , Bs je k > 1. Indukční předpoklad je, že kdykoliv máme nějaké Jordanovy řetízky C1, C2, . . . , Ct operátoru f o celkové délce menší než k a takové, že počáteční vektory těch řetízků mezi LINEÁRNÍ ALGEBRA 355 C1, C2, . . . , Ct, které přísluší stejnému vlastnímu číslu, tvoří lineárně nezávislou posloupnost, pak je spojení řetízků C1, C2, . . . , Ct lineárně nezávislá posloupnost. Označíme r počet řetízků příslušných vlastnímu číslu λ1 a uspořádáme si řetízky tak, že všechny řetízky příslušející vlastnímu číslu λ1 jsou na začátku, tj. řetízky B1, . . . , Br přísluší vlastnímu číslu λ1 a zbylé přísluší jiným vlastním číslům. Označme pro i = 1, . . . , s Bi = (vi 1, vi 2, . . . , vi ki ) . Uvažujme skaláry ai j ∈ T (i ∈ {1, . . . , s}, j ∈ {1, . . . , ki}) takové, že (2) o =a1 1v1 1 + a1 2v1 2 + · · · + a1 k1 v1 k1 +a2 1v2 1 + a2 2v2 2 + ... + a2 k2 v2 k2 ... +as 1vs 1 + as 2vs 2 + · · · + as ks vs ks . Potřebujeme ukázat, že všechny skaláry ai j jsou nulové. Aplikujeme na obě strany operátor f − λ1 idV . Využitím linearity, podobně jako v důkazu věty 9.62, získáme (3) o =a1 1(f − λ1 idV )(v1 1) + a1 2(f − λ1 idV )(v1 2) + · · · + a1 k1 (f − λ1 idV )(v1 k1 ) +a2 1(f − λ1 idV )(v2 1) + a2 2(f − λ1 idV )(v2 2) + · · · + a2 k2 (f − λ1 idV )(v2 k2 ) ... +as 1(f − λ1 idV )(vs 1) + as 2(f − λ1 idV )(vs 2) + · · · + as ks (f − λ1 id)(vs ks ) . Definujeme pro pohodlí vi 0 = o. Z definice Jordanova řetízku platí pro i ∈ {1, . . . , r}, j ∈ {1, . . . , ki} vztah (f − λ1 idV )(vi j) = vi j−1 . Pro i > r, j ∈ {1, . . . , ki} máme (f − λ1 idV )(vi j) = f(vi j) − λ1vi j = f(vi j) − λivi j + λivi j − λ1vi j = (f − λi idV )(vi j) + (λi − λ1)vi j = vi j−1 + (λi − λ1)vi j . Důležité je pro nás pouze to, že výraz je lineární kombinací vektorů v řetíku Bi . Dosazením do (3) tedy získáme o = a1 2v1 1 + a1 3v1 2 + · · · + a1 k1 v1 k1−1 ... + ar 2vr 1 + ar 3vr 2 + · · · + ar k1 vr kr−1 + br+1 1 vr+1 1 + br+1 2 vr+1 2 + · · · + br+1 kr+1 vr+1 kr+1 + bs 1vs 1 + bs 2vs 2 + · · · + bs ks vs ks , kde bi j jsou skaláry, které pochází ze součtu lineárních kombinací vektorů v řetízku Bi z výrazů pro (f − λ1 idV )(vi j). 356 LIBOR BARTO A JIŘÍ TŮMA Tento výraz je lineární kombinací vektorů v řetízcích B1, B2 . . . , Br, Br+1, . . . , Bs, kde řetízek Bi vznikne z Bi odebráním posledního vektoru v řetízku Bi, může tak vzniknout i prázdný řetízek, pokud měl některý z řetízků Bi pro i = 1, 2, . . . , r délku 1. Počáteční vektory v řetízcích B1, B2 . . . , Br, Br+1, . . . , Bs jsou podposloupností počátečních vektorů v řetízcích B1, B2, . . . , Bs a ty z nich, které jsou příslušné stejnému vlastnímu číslu λ, proto tvoří lineárně nezávislou posloupnost podle předpokladu věty. Celková délka řetízků B1, B2 . . . , Br, Br+1, . . . , Bs je o r ≥ 1 menší než celková délka řetízků B1, B2, . . . , Bs, a tedy je menší než k. Z indukčního předpokladu proto vyplývá, že všechny koeficienty v poslední lineární kombinaci jsou nutně nulové, tj. speciálně a1 2 = a1 3 · · · = a1 k1 = a2 2 = · · · a2 k2 = · · · = ar 2 = · · · = ar kr = 0 . Aplikací operátorů (f − λ idV ) na rovnost (2) pro další vlastní čísla λ obdobně získáme ai j = 0 kdykoliv i ∈ {1, . . . s}, j ∈ {2, . . . , ki}. Po dosazení do (2) nyní zbývají na pravé straně potenciálně nenulové koefcienty jen u počátků řetízků: (4) o = a1 1v1 1 + a2 1v2 1 + · · · + as 1vs 1 . Seskupíme členy odpovídající stejným vlastním číslům a příslušnou část součtu odpovídající vlastnímu číslu λ označíme wλ, tj. (5) wλ = i:vi 1∈Mλ ai 1vi 1 . Protože wλ je vlastní vektor příslušný vlastnímu číslu λ a součet těchto vektorů je podle (4) nulový, jsou tyto vektory všechny nutně nulové díky větě 9.62 o lineární nezávislosti nenulových vlastních vektorů příslušných různým vlastním číslům. Z (5) a z předpokladu lineární nezávislosti počátků řetízků B1, B2, . . . , Br příslušných stejnému vlastnímu číslu získáme konečně i a1 1 = a2 1 = · · · = as 1 = 0 . 9.4.5. Výpočet řetízků. Uvažujme operátor f : V → V na konečně generovaném prostoru V dimenze n a bázi B = B1, . . . , Bs složenou ze Jordanových řetízků B1, . . . , Bs délek k1, . . . , ks příslušných vlastním číslům λ1, . . . , λs. Pro přehlednost si je uspořádáme tak, aby řetízky příslušné stejným číslům byly pohromadě. Řekněme, že prvních r odpovídá stejnému vlastnímu číslu λ, tj. λ = λ1 = λ2 = · · · = λr a λi = λ pro i > r. Označme Bi = (vi 1, vi 2, . . . , vi ki ) pro i ∈ {1, . . . , s}. Schematicky: v1 k1 f−λ idV −−−−→ v1 k1−1 −→ . . . −→ v1 2 f−λ idV −−−−→ v1 1 f−λ idV −−−−→ o ... vr k1 f−λ idV −−−−→ vr k1−1 −→ . . . −→ vr 2 f−λ idV −−−−→ vr 1 f−λ idV −−−−→ o ... vs ks f−λs idV −−−−→ vs ks−1 −→ . . . −→ vs 2 f−λs idV −−−−→ vs 1 f−λs idV −−−−→ o LINEÁRNÍ ALGEBRA 357 a [f]B B = J = diag(Jλ1,k1 , Jλ2,k2 , . . . , Jλs,ks ) . Za této situace spočítáme charakteristický polynom operátoru f, vlastní čísla a vektory, geometrické násobnosti a navíc jádra a obrazy operátorů (f − λi idV )l pro l = 1, 2, . . . . (Zaměříme se na vlastní číslo λ1 = · · · = λr, přičemž výsledky přirozeně budou platit pro všechna další vlastní čísla.) Tyto poznatky nám pak umožní hledat Jordanovy řetízky i v situaci, kdy je předem neznáme. Charakteristický polynom pf (λ) operátoru f je roven determinantu matice J − λIn. Tato matice je horní trojúhelníková a na diagonále má postupně k1-krát výraz (λ1 − λ), k2-krát výraz (λ2 − λ), atd. Charakteristický polynom je proto roven (λ1 − λ)k1 (λ2 − λ)k2 . . . (λs − λ)ks . Důsledkem je, že operátor f má n vlastních čísel včetně násobností a algebraická násobnost vlastního čísla λ1 je rovna součtu délek Jordanových řetízků příslušných vlastnímu číslu λ1 (to jest k1 + k2 + · · · + kr). Dále vypočítáme jádro a obraz operátoru f − λ1 idV . (Pro představu je dobré sledovat výpočet na konkrétní situaci, viz např. příklad 9.94). Jeho matice [f − λ1 idV ]B B vzhledem k bázi B je J − λ1In = diag(J0,k1 , . . . , J0,kr , Jλr+1−λ1,kr+1 , . . . , Jλs−λ1,ks ) Tato matice má nulové řádky, které odpovídají pozici koncových vektorů řetízků B1, . . . , Br v bázi B. Vynecháme-li je, dostaneme matici v řádkově odstupňovaném tvaru s (n−r) nenulovými řádky. Dimenze jádra matice J −λ1In je r a také vidíme, že množina všech řešení homogenní soustavy rovnic s maticí J − λ1In je Ker (J − λ1In) = LO {ei1 , . . . , eir }, kde indexy i1, . . . , ir odpovídají pozicím počátečních vektorů řetízků B1, . . . , Br v bázi B, tj. i1 = 1, i2 = 1 + k1, i3 = 1 + k1 + k2, . . . , ir = 1 + k1 + · · · + kr−1. Je tedy [Ker (f − λ1 idV )]B = Ker (J − λ1In) = LO {ei1 , . . . , eir } , takže Ker (f − λ1 idV ) = LO v1 1, v2 1, . . . , vr 1 . Geometrická násobnost r vlastního čísla λ1 je tedy rovná počtu řetízků příslušných vlastnímu číslu λ1 a jádro operátoru (f − λ1 idV ) je rovno lineárnímu obalu počátečních vektorů těchto řetízků. Přejdeme k výpočtu obrazu (tj. oboru hodnot) Im (f − λ1 idV ) operátoru f − λ1 idV . Obor hodnot matice J − λ1In = [f − λ1 idV ]B B se rovná lineárnímu obalu sloupcových vektorů. Sloupce odpovídající pozicím počátečních vektorů řetízků B1, . . . , Br jsou nulové a zbylé sloupce příslušné kterékoliv z buněk J0,ki pro i = 1, 2, . . . , r obsahují vektory kanonické báze. Ostatní buňky (příslušné vlastním číslům různým od λ1) jsou horní trojúhelníkové matice s nenulovými prvky na hlavní diagonále, můžeme je tedy elementárními sloupcovými úpravami (které nemění obraz) převést na jednotkové matice. Obraz matice J − λ1In je tedy roven lineárnímu obalu těch vektorů kanonické báze, které neodpovídají pozicím koncových vektorů řetízků B1, . . . , Br. Protože [Im (f − λ1 idV )]B = Im (J − λ1In), je obraz operátoru f − λ1 idV roven lineárnímu obalu všech vektorů v B kromě koncových vektorů řetízků B1, . . . , Br. Můžeme si představovat, že umažeme jeden vektor z konce každého řetízku příslušného vlastnímu číslu λ1. 358 LIBOR BARTO A JIŘÍ TŮMA Příklad 9.94. Pro λ = λ1 = λ2 = λ3 = 7, λ4 = 9, k1 = 1, k2 = 2, k3 = 3, k4 = 2 máme řetízky v1 1 f−7 idV −−−−→ o v2 2 f−7 idV −−−−→ v2 1 f−7 idV −−−−→ o v3 3 f−7 idV −−−−→ v3 2 f−7 idV −−−−→ v3 1 f−7 idV −−−−→ o v4 2 f−9 idV −−−−→ v4 1 f−9 idV −−−−→ o Operátor f má charakteristický polynom pf (λ) = (7 − λ)6 (9 − λ)2 , vlastní číslo 7 algebraické násobnosti 6 a vlastní číslo 9 algebraické násobnosti 2. Matice operátoru f − 7 idV vzhledem k B je J−7I8 =             7 0 0 0 0 0 0 0 0 7 1 0 0 0 0 0 0 0 7 0 0 0 0 0 0 0 0 7 1 0 0 0 0 0 0 0 7 1 0 0 0 0 0 0 0 7 0 0 0 0 0 0 0 0 9 1 0 0 0 0 0 0 0 9             −7I8 =             0 0 0 0 0 0 0 0 0 0 1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1 0 0 0 0 0 0 0 0 1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 2 1 0 0 0 0 0 0 0 2             . Jádro matice J − 7I8 je Ker       0 0 1 0 0 0 0 0 0 0 0 0 1 0 0 0 0 0 0 0 0 1 0 0 0 0 0 0 0 0 2 1 0 0 0 0 0 0 0 2       = LO {e1, e2, e4} a tudíž jádro operátoru f − 7 idV je Ker (f − 7 idV ) = LO v1 1, v2 1, v3 1 (lineární obal počátečních vektorů příslušných vlastnímu číslu 7), jeho dimenze je 3 a je rovná geometrické násobnost vlastního čísla 7, která udává počet řetízků příslušných tomuto vlastnímu číslu. Obraz matice J − 7I8 je Im             0 0 0 0 0 1 0 0 0 0 0 0 0 0 0 0 1 0 0 0 0 0 1 0 0 0 0 0 0 0 0 0 0 2 1 0 0 0 0 2             = Im             0 0 0 0 0 1 0 0 0 0 0 0 0 0 0 0 1 0 0 0 0 0 1 0 0 0 0 0 0 0 0 0 0 1 0 0 0 0 0 1             = LO {e2, e4, e5, e7, e8} a tudíž obraz operátoru f−7 idV je Im (f−7 idV ) = LO v2 1, v3 1, v3 2, v4 1, v4 2 (lineární obal všech vektorů v řetízcích kromě koncových vektorů příslušných vlastnímu číslu 7). Nakonec obecněji vypočteme jádro a obraz operátoru (f − λ1 idV )l pro l ≥ 2. Jeho matice vzhledem k B je (J − λ1In)l = diag(Jl 0,k1 , . . . , Jl 0,kr , Jl λr+1−λ1,kr+1 , . . . , Jl λs−λ1,ks ) LINEÁRNÍ ALGEBRA 359 Tvar prvních r diagonálních buněk jsme spočítali v tvrzení 9.84, tvar ostatních v tvrzení 9.86, ten ale teď nebudeme potřebovat, stačí vědět, že v případě buněk příslušných vlastním číslům různým od λ1 vyjdou regulární matice (horní trojúhelníkové s nenulovými prvky na hlavní diagonále). Matice (J − λ1In)l má nulové řádky odpovídající pozici l koncových prvků řetízků B1, . . . , Br v bázi B (pokud má některý z těchto řetízků délku nejvýše l, pak uvažujeme všechny jeho prvky). Vynecháme-li je, dostaneme matici v řádkově odstupňovaném tvaru a jádro Ker (J − λ1In)l matice (J − λ1In)l je rovno lineárnímu obalu LO {ei1 , . . . , }, kde indexy i1, . . . , odpovídají pozicím l počátečních vektorů řetízků B1, . . . , Br v bázi B. To znamená, že Ker (f − λ1 idV )l = LO v1 1, . . . , v1 l , v2 1, . . . , v2 l , . . . , vr 1, . . . , vr l . (Pro řetízky Bi délky menší než l nejsou vektory vi ki+1, . . . , vi l definované.) Jádro operátoru (f − λ1 idV )l se rovná lineárnímu obalu l počátečních vektorů z každého řetízku příslušného vlastnímu číslu λ1 (z řetízků délky menší než l bereme všechny vektory.) Z toho také vyplývá důležité pozorování – počet řetízků příslušných vlastnímu číslu λ, které mají délku aspoň l, se rovná dim Ker (f − λ1 idV )l − dim Ker (f − λ1 idV )l−1 . Obraz operátoru (f − λ1 idV )l také spočteme obdobně jako v případu l = 1. Příklad 9.95. Vrátíme se k příkladu 9.94. Operátory (f − 7 id)2 , (f − 7 id)3 mají vzhledem k B matici (J−7I8)2 =             0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 4 4 0 0 0 0 0 0 0 4             , (J−7I8)3 =             0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 16 12 0 0 0 0 0 0 0 16             . Jádra jsou Ker (J−7I8)2 = LO {e1, . . . , e5} , Ker (J−7I8)3 = Ker (J−7I8)4 = · · · = LO {e1, . . . , e6} a proto Ker (f−7 id)2 = LO v1 1, v2 1, v2 2, v3 1, v3 2 , Ker (f−7 id)3 = LO v1 1, v2 1, v2 2, v3 1, v3 2, v3 3 . Obrazy jsou Im (J − 7I8)2 = LO {e4, e7, e8} , Im (J − 7I8)3 = Im (J − 7I8)4 = · · · = LO {e7, e8} a proto Im (f − 7 id)2 = LO v3 1, v4 1, v4 2 , Im (f − 7 id)3 = LO v4 1, v4 2 . Shrneme získané poznatky. Tvrzení 9.96. Je-li f : V → V lineární operátor na prostoru V dimenze n a B báze vzniklá spojením Jordanových řetízků operátoru f, pak platí (1) operátor f má n vlastních čísel včetně násobností, 360 LIBOR BARTO A JIŘÍ TŮMA (2) pro libovolné vlastní číslo λ operátoru f je jeho algebraická násobnost rovna součtu délek Jordanových řetízků v B příslušných vlastnímu číslu λ, (3) pro libovolné vlastní číslo λ operátoru f a libovolné l ∈ N je jádro operátoru (f−λ idV )l rovno lineárnímu obalu l počátečních vektorů z každého řetízku v B příslušného vlastnímu číslu λ (z řetízků délky menší než l bereme všechny vektory), (4) pro libovolné vlastní číslo λ operátoru f a libovolné l ∈ N je obraz operátoru (f − λ idV )l , roven lineárnímu obalu všech vektorů v B kromě l koncových vektorů z řetízků příslušných vlastnímu číslu λ (z řetízků příslušných vlastnímu číslu λ délky menší než l nebereme žádný vektor). Speciálně pro libovolné vlastní číslo λ operátoru f platí (5) geometrická násobnost vlastního čísla λ se rovná počtu řetízků v B příslušných vlastnímu číslu λ a prostor Mλ = Ker (f − λ idV ) je roven lineárnímu obalu počátečních vektorů těchto řetízků, (6) počet řetízků příslušných vlastnímu číslu λ délky alespoň l je roven zl = dim Ker (f − λ idV )l − dim Ker (f − λ idV )l−1 , (aby měl výraz smysl i pro l = 1 definujeme (f − λ idV )0 = idV ), (7) počet řetízků příslušných vlastnímu číslu λ délky právě l je zl − zl+1. Z prvního bodu vyplývá nutná podmínka pro existenci Jordanova kanonického tvaru – operátor musí mít dostatek vlastních čísel (včetně násobností). Tato podmínka je i dostačující podle následující veledůležité věty. Věta 9.97 (o Jordanově kanonickém tvaru). Je-li f : V → V lineární operátor na konečně generovaném vektorovém prostoru V dimenze n, pak jsou následující tvrzení ekvivalentní. (1) Pro operátor f existuje Jordanův kanonický tvar. (2) Operátor f (resp. matice A) má n vlastních čísel včetně algebraických ná- sobností. Důsledek 9.98. Pro každý operátor f : V → V na konečně generovaném prostoru V nad tělesem komplexních čísel C existuje Jordanův kanonický tvar. Důkaz chybějící implikace odložíme na později. Poznamenejme, že Jordanův tvar operátoru je určen jednoznačně v tom smyslu, že jsou-li matice [f]B B a [f]C C obě v Jordanově tvaru, pak se mohou lišit pouze pořadím Jordanových buněk. To vyplývá z tvrzení 9.96, protože matice je určena vlastními čísly λ operátoru, jejich algebraickou násobností, a dimenzemi podprostorů Ker (f −λ idV )l . Těmto číselným charakteristikám operátoru f říkáme algebraické invarianty operátoru f. Algoritmus pro hledání Jordanova tvaru je možné odvodit z tvrzení 9.96. Obecná diskuze by byla dost nepřehledná, proto ukážeme postup na konktétních příkladech. 9.4.6. Jordanův tvar v dimenzi 2. Jediný případ, kdy má operátor f na prostoru dimenze 2 dvě vlastní čísla včetně násobností a není diagonalizovatelný, je případ kdy f má vlastní číslo λ algebraické násobnosti 2 a geometrické násobnosti 1. V tom případě máme jeden Jordanův řetízek délky 2. Příklad 9.99. Uvažujme operátor fA na R2 určený maticí A = 1 −1 4 −3 . LINEÁRNÍ ALGEBRA 361 Charakteristický polynom je pA(λ) = λ2 +2λ+1 = (λ+1)2 . Operátor fA má vlastní číslo −1 algebraické násobnosti 2, existuje pro něj proto Jordanův kanonický tvar. Spočítáme M−1 = Ker (fA + id). M−1 = Ker 2 −1 4 −2 = LO 1 2 . Geometrická násobnost vlastního čísla −1 je 1. Operátor není diagonalizovatelný a budeme proto hledat Jordanův řetízek délky 2 v2 fA+id −−−−→ v1 fA+id −−−−→ o . Vektor v1 zvolíme jako libovolný nenulový vlastní vektor, například v1 = (1, 2)T . Podle tvrzení 9.96 je Im (fA + id) = Ker (fA + id) = LO {v1}, takže speciálně v1 ∈ Im (fA + id), proto můžeme vždy počáteční vektor v1 doplnit vektorem v2 tak, aby platilo (fA + id)(v2) = v1. Pro takový vektor v2 platí (A + id)v2 = v1, 2 −1 4 −2 v2 = 1 2 , zvolíme např. v2 = 0 −1 Podle věty 9.93 o lineární nezávislosti zobecněných vlastních vektorů je B = (v1, v2) báze (v takto malém případě to vidíme okamžitě, ve větších dimenzích už to tak zřejmé není). Matice operátoru fA vzhledem k bázi B je [fA]B B = −1 1 0 −1 9.4.7. Jordanův tvar v dimenzi 3. Pro nediagonalizovatelný operátor na prostoru dimenze 3 s třemi vlastními čísly včetně násobností můžou nastat následující mož- nosti. (1) Operátor f má dvě různá vlastní čísla λ1, λ2, kde λ1 má algebraickou (i geometrickou) násobnost 1 a λ2 má algebraickou násobnost 2, zatímco geometrickou násobnost 1. V tom případě máme jeden řetízek délky 1 příslušný λ1 a jeden řetízek délky 2 příslušný λ2: v1 1 f−λ1 idV −−−−→ o v2 2 f−λ2 idV −−−−→ v2 1 f−λ2 idV −−−−→ o . (2) Operátor f má vlastní číslo λ algebraické násobnosti 3 a geometrické násobnosti 2. Pak máme dva řetízky příslušné vlastnímu číslu λ a tím pádem nutně jeden z nich má délku 1 a druhý má délku 2: v1 1 f−λ idV −−−−→ o v2 2 f−λ idV −−−−→ v2 1 f−λ idV −−−−→ o . (3) Operátor f má vlastní číslo λ algebraické násobnosti 3 a geometrické násobnosti 1. Pak máme jede řetízek délky 3: v3 f−λ idV −−−−→ v2 f−λ idV −−−−→ v1 f−λ idV −−−−→ o . 362 LIBOR BARTO A JIŘÍ TŮMA Příklad 9.100. Uvažujme operátor fA : R3 → R3 určený maticí A =   −1 0 1 0 −1 0 −4 0 3   . Charakteristický polynom operátoru fA je pA(λ) = −λ3 + λ2 + λ − 1 = −(λ − 1)2 (λ + 1). Vlastní čísla operátoru A jsou 1 (algebraická násobnost je 2) a −1 (s algebraickou násobností 1), existuje pro něj Jordanův tvar. Příslušné prostory vlastních vektorů jsou M1 = Ker (fA − id) = Ker   −2 0 1 0 −2 0 −4 0 2   = LO      1 0 2      , M−1 = Ker (fA + id) = LO      0 1 0      . Geometrická násobnost vlastního čísla 1 je 1, takže operátor není diagonalizovatelný a Jordanovy řetízky budou tvaru v1 1 fA+id −−−−→ o v2 2 fA−id −−−−→ v2 1 fA−id −−−−→ o Za vektor v1 1 zvolíme libovolný nenulový vektor z M−1, např. v1 1 = (0, 1, 0)T . Za vektor v2 1 zvolíme libovolný nenulový vektor z M1, např. v2 1 = (1, 0, 2)T , protože (podobně jako v příkladu 9.99) z tvrzení 9.96 plyne, že v2 1 ∈ Im (fA − id), takže řetízek můžeme doplnit. Řešením soustavy (A − I3)v2 2 = v1 1, tj.   −2 0 1 0 −1 0 −4 0 2   v2 2 =   1 0 2   najdeme například vektor v2 2 = (0, 0, 1)T . Podle věty 9.93 je B = (v1 1, v2 1, v2 2) bází prostoru R3 . Matice operátoru fA vzhledem k B je [fA]B B =   −1 0 0 0 1 1 0 0 1   . Příklad 9.101. Uvažujme operátor fA : R3 → R3 určený maticí A =   2 2 −4 0 0 0 1 1 −2   . Charakteristický polynom operátoru fA vyjde pA(λ) = −λ3 . Operátor fA má vlastní číslo 0 algebraické násobnosti 3, existuje pro něj Jordanův tvar. Prostor vlastních vektorů příslušných nule je M0 = Ker (fA − 0 id) = Ker fA = Ker A = LO      2 0 1   ,   −1 1 0      . LINEÁRNÍ ALGEBRA 363 Geometrická násobnost vlastního čísla 0 je 2, proto operátor není diagonalizovatelný, budeme mít dva Jordanovy řetízky tvaru v1 1 fA −−−−→ o v2 2 fA −−−−→ v2 1 fA −−−−→ o . Podle tvrzení 9.96 je Im fA = LO v2 1 a Ker fA = LO v1 1, v2 1 . Při hledání vektorů v řetízku postupujeme od počátku nejdelšího řetízku. Vektor v2 1 zvolíme v Im fA, např. v2 1 = (2, 0, 1)T . Pak je v2 1 ∈ Ker fA. Doplníme v2 1 na bázi (v2 1, v1 1) prostoru Ker fA, třeba vektorem v1 1 = (−1, 1, 0)T . Nakonec najdeme v2 2 tak, aby fA(v2 2) = v2 1. To musí jít, protože v2 1 ∈ Im fA. Řešením rovnice Av2 2 = v2 1 je například vektor v2 2 = (1, 0, 0)T . Počátky řetízků tvoří lineárně nezávislou posloupnost (tak jsme je zvolili), takže podle věty 9.93 je B = (v1 1, v2 1, v2 2) báze prostoru R3 . Matice operátoru fA vzhledem k B je [fA]B B =   0 0 0 0 0 1 0 0 0   . Příklad 9.102. Uvažujme operátor fA : R3 → R3 určený maticí A =   −1 0 0 1 1 −4 1 1 −3   . Charakteristický polynom operátoru fA je pA(λ) = −(λ + 1)3 , máme jedno vlastní číslo −1 algebraické násobnosti 3. M−1 = Ker (fA + id) = Ker (A + I3) = LO      0 2 1      . Geometrická násobnost vlastního čísla −1 je 1. Operátor fA není diagonalizovatelný, existuje pro něj Jordanův tvar a příslušná báze B bude obsahovat jeden řetízek v3 fA+id −−−−→ v2 fA+id −−−−→ v1 fA+id −−−−→ o . Prodle tvrzení 9.96 je Ker (fA + id) = Im (fA + id)2 = LO {v1}, takže za počátek můžeme zvolit libovolný nenulový vektor v tomto prostoru, například v1 = (0, 2, 1)T . Vektor v2 musíme zvolit tak, aby (fA + id)(v2) = v1 a aby ležel v Im (fA + id), abychom pak mohli nalézt vektor v3. První podmínka je (A + id)v2 = v1,   0 0 0 1 2 −4 1 1 −2   v2 =   0 2 1   Řešením soustavy je (0, 1, 0)T + LO (0, 2, 1)T = (0, 1, 0)T + Ker (A + id). Některý z takových vektorů leží v Im (fA + id), protože ale Ker (fA + id) ⊆ Im (fA + id) (viz opět tvrzení 9.96), každý z těchto vektorů leží v Im (fA + id). Druhá podmínka je splněná v tomto případě automaticky a můžeme zvolit třeba v2 = (0, 1, 0)T . (Pokud bychom měli více řetízků, neplatilo by Ker (f − λ id) ⊆ Im (f − λ id), takže volba 364 LIBOR BARTO A JIŘÍ TŮMA by nemohla být libovolná.) Nakonec najdeme vektor v3, aby (fA + id)v3 = v2. Můžeme vzít například v3 = (−1, 1, 0)T . Podle věty 9.93 je B = (v1, v2, v3) báze prostoru R3 . Matice operátoru fA vzhledem k B je [fA]B B =   −1 1 0 0 −1 1 0 0 −1   . 9.4.8. Jordanův tvar ve vyšších dimenzích. Do dimenze 3 je možné o počtu a délkách řetízků rozhodnout pouze z algebraických a geometrických násobností. Stejně je tomu v dimenzi 4 kromě případu, že má operátor vlastní číslo λ algebraické násobnosti 4 a geometrické násobnosti 2. Pak má bázi ze dvou Jordanových řetízků, nevíme ale, jsou-li oba délky 2, nebo jeden z nich délky 1 a druhý délky 3. Příklad 9.103. Uvažujme operátor fA : R4 → R4 pro matici A =     1 0 −1 0 0 1 0 −1 1 0 −1 0 0 1 0 −1     . Výpočtem charakteristického polynomu zjistíme, že fA má jediné vlastní číslo 0 algebraické násobnosti 4. Prostor vlastních vektorů příslušných vlastnímu číslu 0 je M0 = LO        0 1 0 1     ,     1 0 1 0        . Geometrická násobnost nuly je 2, takže hledaná báze B, vzhledem ke které je [f]B B v Jordanově tvaru, bude spojením dvou řetízků příslušných vlastnímu číslu 0. Nevíme, ale budou-li jejich délky 1, 3 nebo 2, 2. Vypočteme proto ještě jádro operátoru (fA − 0 id)2 . Ker (fA − 0 id)2 = Ker A2 = Ker 04×4 = R4 . Dimenze jádra operátoru (fA + 0 id)2 je o 2 vyšší než dimenze jádra operátoru (fA + 0 id), takže podle tvrzení 9.96 budou v B právě 2 řetízky délky alespoň 2. Tím pádem je B spojením řetízků v1 2 fA −−−−→ v1 1 fA −−−−→ o v2 2 fA −−−−→ v2 1 fA −−−−→ o . Protože (opět podle tvrzení 9.96) je Im fA = Ker fA = LO v1 1, v2 1 , můžeme za v1 1, v2 1 zvolit libovolnou bázi Ker fA, například v1 1 = (0, 1, 0, 1), v2 1 = (1, 0, 1, 0), a pak nalézt vektory v1 2 a v2 2 tak, aby fA(v1 2) = v1 1 a fA(v2 2) = v2 1, třeba v1 2 = (0, 1, 0, 0)T a v2 2 = (1, 0, 0, 0)T . Pak B = (v1 1, v1 2, v2 1, v2 2) je podle věty 9.93 báze prostoru R4 a platí [f]B B =     0 1 0 0 0 0 0 0 0 0 0 1 0 0 0 0     . LINEÁRNÍ ALGEBRA 365 Příklad 9.104. Uvažujme operátor fA : R4 → R4 pro matici A =     5 0 0 −1 1 4 0 −1 0 1 3 0 0 1 −1 4     Charakteristický polynom vyjde pA(λ) = (λ − 4)4 , operátor fA má vlastní číslo 4 algebraické násobnosti 4. M4 = Ker (fA−4 id) = Ker (A−4I4) = Ker     1 0 0 −1 1 0 0 −1 0 1 −1 0 0 1 −1 0     = LO        1 0 0 1     ,     0 1 1 0        . Geometrická násobnost vlastního čísla 4 je 2. Operátor bude mít dva řetízky. Abychom zjistili jejich délky, spočítáme Ker (fA − 4 id)2 . Ker (fA−4 id)2 = Ker     1 −1 1 −1 1 −1 1 −1 1 −1 1 −1 1 −1 1 −1     = LO        1 0 0 1     ,     −1 0 1 0     ,     1 1 0 0        . Dimenze je o 1 vyšší než dimenze Ker (A − 4I4), takže počet řetízků délky alespoň 2 je 1. Hledaná báze B je tedy spojením řetízku délky 1 a řetízku délky 3. v1 1 fA−4 id −−−−→ o v2 3 fA−4 id −−−−→ v2 2 fA−4 id −−−−→ v2 1 fA−4 id −−−−→ o . Protože Im (f − 4 id)2 = LO v2 1 , zvolíme vektor v2 1 v tomto prostoru, např. v2 1 = (1, 1, 1, 1)T . Je Ker (f − 4 id) = LO v1 1, v2 1 , doplníme vektor v2 1 na bázi prostoru Ker (f − 4 id), například vektorem v1 1 = (1, 0, 0, 1)T . Vektor v2 2 musíme zvolit tak, aby (fA − 4 id)(v2 2) = v2 1 a aby v2 2 ∈ Im (fA − 4 id) (druhou podmínku již nemůžeme ignorovat jako v předcházejícím příkladu). Množina všech řešení soustavy (A − 4I4)v2 2 = (1, 1, 1, 1)T je     1 1 0 0     + LO        1 0 0 1     ,     0 1 1 0        . Obraz operátoru fA − 4 id je lineární obal sloupců matice A − 4I4, který se rovná LO (1, 1, 0, 0)T , (0, 0, 1, 1)T . Oběma podmínkám vyhovuje například vektor v2 2 = (1, 1, 0, 0)T . Nyní už stačí vzít libovolný vektor v2 3 tak, aby platilo (fA−4 id)v2 3 = v2 2, např. v2 3 = (1, 0, 0, 0)T . Podle věty 9.93 je B = (v1 1, v2 1, v2 2, v2 3) báze. Vzhledem k B má operátor f matici [f]B B =     4 0 0 0 0 4 1 0 0 0 4 1 0 0 0 4     366 LIBOR BARTO A JIŘÍ TŮMA Na příkladu si rozmyslíme postup v ještě vyšší dimenzi. Příklad 9.105. Operátor f : V → V na prostoru V dimenze 15 splňuje následující podmínky. (1) f má vlastní číslo 31 algebraické násobnosti 11 a vlastní číslo 47 algebraické násobnosti 4, (2) dim Ker (f − 31 id) = 4, dim Ker (f − 47 id) = 2, (3) dim Ker (f − 31 id)2 = 7, dim Ker (f − 47 id)2 = 3, (4) dim Ker (f − 31 id)3 = 9, (5) dim Ker (f − 31 id)4 = 11. Rozmyslíme si, že existuje báze B, pro které je [f]B B v Jordanově tvaru, z jakých blolů se [f]B B skládá a jak bychom takovou bázi hledali. Z první podmínky vidíme, že pro f existuje Jordanův kanonický tvar, celkový počet vektorů v řetízcích příslušným vlastnímu číslu 31 je 11 a celkový počet vektorů v řetízcích příslušných vlastnímu číslu 47 je 4. Zaměříme se nejprve na vlastní číslo 47 a příslušné řetízky. Z druhé podmínky vyplývá, že řetízky jsou 2, takže zbývají dvě možnosti: délky 1, 3, nebo délky 2,2. Ze třetí podmínky máme dim Ker (f −47 id)2 −dim Ker (f −47 id) = 1, takže máme právě jeden řetízek délky alespoň 2, což vylučuje první možnost. Řetízky příslušné vlastnímu číslu 47 tedy budou v1 1 f−47 id −−−−→ o v2 3 f−47 id −−−−→ v2 2 f−47 id −−−−→ v2 1 f−47 id −−−−→ o Počet řetízků pro vlastní číslo 31 je podle druhé podmínky 4. Ze třetí podmínky máme dim Ker (f − 31 id)2 − dim Ker (f − 31 id) = 3, takže tři řetízky mají délku alespoň 2. Možnosti délek jsou 1+2+2+6, 1+2+3+5, 1+2+4+4, 1+3+3+4. Z předposlední podmínky víme, že počet řetízků délky alespoň 3 je 2 (protože dim Ker (f −31 id)3 −dim Ker (f −31 id)2 = 2). Zbývají dvě možnosti 1+2+3+5 a 2 + 4 + 4, první možnost vylučuje poslední podmínka. Řetízky příslušné vlastnímu číslu 31 jsou v3 1 f−31 id −−−−→ o v4 2 f−31 id −−−−→ v4 1 f−31 id −−−−→ o v5 4 f−31 id −−−−→ v5 3 f−31 id −−−−→ v5 2 f−31 id −−−−→ v5 1 f−31 id −−−−→ o v6 4 f−31 id −−−−→ v6 3 f−31 id −−−−→ v6 2 f−31 id −−−−→ v6 1 f−31 id −−−−→ o Vzhledem k bázi B složené z těchto řetízků bude [f]B B = diag(J47,1, J47,3, J31,1, J31,2, J31,4, J31,4) . Řetízky bychom opět hledali od počátků. Zaměříme se na vlastní číslo 31. Protože Im (f−31 id)3 ∩Ker (f−31 id) = LO v5 1, v6 1 , vektory v5 1, v6 1 bychom zvolili tak, aby tvořili bázi tohoto průniku. Tyto dva vektory bychom doplnili vektorem v4 1 do báze prostoru Ker (f − 31 id) ∩ Im (f − 31 id). A vektory v4 1, v5 1, v6 1 doplnili vektorem v3 1 do báze prostoru Ker (f −31 id). Pak bychom pro každý počáteční vektor postupně LINEÁRNÍ ALGEBRA 367 doplnili zbylé vektory do řetízku. Rozmyslíme si třetí z řetízků. Vektor v5 2 bychom zvolili tak, aby (f −31 id)(v5 2) = v5 1 a zároveň v5 2 ∈ Im (f −31 id)2 (druhá podmínka je nutná, abychom mohli pokračovat). Dále vektor v5 3 bychom zvolili tak, aby (f − 31 id)(v5 3) = v5 2 a v5 3 ∈ Im (f − 31 id). Konečně vektor v5 4 bychom zvolili tak, aby (f − 31 id)(v5 4) = v5 3. Podobně bychom posupovali pro další řetízky a druhé vlastní číslo 47. 9.4.9. Řešení spojitého dynamického systému. V odstavci 9.3.6 jsme ukázali, jak vyřešit spojitý dynamický systém x (t) = Ax(t) v případě, že A je diagonalizovatelná matice. Řešení spočívalo v tom, že jsme původní soustavu převedli na soustavu y (t) = Dy(t), kde D je diagonální matice, a takovou soustavu již umíme řešit. Stejný postup lze použít pro matici podobnou matici v Jordanově tvaru, získáme soustavu y (t) = Jy(t), kde J je v Jordanově tvaru. Zopakujeme tento postup. Předpokládejme, že pro fA existuje Jordanův kanonický tvar. Pak umíme najít matici J v Jordanově tvaru a regulární matici R takovou, že J = R−1 AR. (Připomeňme, že R je matice přechodu od báze B tvořené spojením Jordanových řetízků matice A ke kanonické bázi a J = [fA]B B.) Úpravou dostaneme A = RJR−1 a rovnici můžeme ekvivalentně přepsat x (t) = RJR−1 x(t) R−1 x (t) = JR−1 x(t) . Definujeme y(t) = R−1 x(t) a dostaneme y (t) = Jy(t) . Původní funkce x(t) dopočteme ze vztahu x(t) = Ry(t). Stačí tedy umět řešit spojité dynamické systémy tvaru y (t) = Jy(t), kde J je matice v Jordanově kanonickém tvaru. Pro diagonální matici J jsme v 9.3.6 ukázali, že řešením      y1(t) y2(t) ... yn(t)      =      λ1 0 . . . 0 0 λ2 . . . 0 ... ... 0 0 . . . λn           y1(t) y2(t) ... yn(t)      . funkce      y1(t) y2(t) ... yn(t)      =      y1(0)eλ1t y2(0)eλ2t ... yn(0)eλnt      =      eλ1t 0 . . . 0 0 eλ2t . . . 0 ... ... 0 0 . . . eλnt           y1(0) y2(0) ... yn(0)      . Ukážeme si řešení v případě Jordanovy buňky řádu 2 y1(t) y2(t) = λ 1 0 λ y1(t) y2(t) . Řešíme tedy spojitý dynamický systém y1(t) = λy1(t) + y2(t) y2(t) = λy2(t) . (V řeči operátorů, y2(t) je vlastním vektorem operátoru derivování, y1(t) je zobecněným vlastním vektorem.) Z druhé rovnice máme y2(t) = y2(0)eλt . Dosazením do 368 LIBOR BARTO A JIŘÍ TŮMA první rovnice dostáváme y1(t) = λy1(t) + y2(0)eλt , což přepíšeme do tvaru y1(t) − λy1(t) = y2(0)eλt . Funkci y1(t) najdeme pomocí následujícího triku – napíšeme si ji jako součin y1(t) = u(t)v(t) dvou jiných funkcí. Po dosazení do předchozí rovnosti a použití vzorečku pro derivaci součinu dvou funkcí dostaneme u (t)v(t) + u(t)v (t) − λu(t)v(t) = y2(0)eλt neboli u (t)v(t) + u(t)(v (t) − λv(t)) = y2(0)eλt . Funkci v(t) zvolíme tak, aby byla závorka na levé straně rovná 0, tj. tak aby platilo v (t) = λv(t) pro každé t ∈ R. Jednou z možností je zvolit v(t) = eλt . Tím se poslední rovnice redukuje na u (t)eλt = y2(0)eλt a tedy u (t) = y2(0) . Pro libovolnou konstantu d funkce u(t) = y2(0)t + d splňuje poslední rovnici, takže y1(t) = u(t)v(t) = (y2(0)t + d)eλt = y2(0)teλt + deλt . Dosazením t = 0 vyjde y1(0) = d. Dostali jsem tak, že musí platit y1(t) = y2(0)teλt + y1(0)eλt . Řešením spojitého dynamického systému y1(t) = λy1(t) + y2(t) y2(t) = λy2(t) jsou tedy funkce y1(t) y2(t) = y2(0)teλt + y1(0)eλt y2(0)eλt = eλt teλt 0 eλt y1(0) y2(0) . Uvedeným postupem jsme našli všechna možná řešení (y1(t), y2(t))T . Jednoznačnost funkce y2(t) = y2(0)eλt jsme si ukázali už v tvrzení 9.7. Pokud jde o jednoznačnost funkce y1(t), můžeme se o ní přesvědčit také přímo podobně jako v tvrzení 9.7. Stačí spočítat, že pro každou funkci f(t) splňující rovnost f (t) = λf(t) + y2(0)eλt a f(0) = y1(0) je derivace funkce (f(t) − y2(0)teλt )e−λt rovná 0. Příklad 9.106. Vyřešíme spojitý dynamický systém x1(t) x2(t) = A x1(t) x2(t) = 1 −1 4 −3 x1(t) x2(t) s počáteční podmínkou x1(0) = 3, x2(0) = 4. V příkladu 9.99 jsme vypočetli, že vzhledem k bázi B = ((1, 2)T , (0, −1)T ) je [f]B B = J−1,2, tj. platí J = RAR−1 , kde J = −1 1 0 −1 a R = [id]B K = 1 0 2 −1 . LINEÁRNÍ ALGEBRA 369 Původní soustavu si připíšeme do tvaru R−1 x1(t) x2(t) = −1 1 0 −1 R−1 x1(t) x2(t) . Označíme-li y1(t) y2(t) = R−1 x1(t) x2(t) , platí y1(t) y2(t) = −1 1 0 −1 y1(t) y2(t) . Řešením je y1(t) y2(t) = e−t te−t 0 e−t y1(0) y2(0) , takže x1(t) x2(t) = R y1(t) y2(t) = R e−t te−t 0 e−t y1(0) y2(0) = R e−t te−t 0 e−t R−1 x1(0) x2(0) = 1 0 2 −1 e−t te−t 0 e−t 1 0 2 −1 3 4 = = 3e−t + 2te−t 4e−t + 4te−t . Příklad 9.107. Tři chemikálie E, F, G spolu reagují podle schématu E−→F−→G . To znamená, že E se při reakci mění na F a F se mění na G. Rychlost přeměny je přímo úměrná koncentraci, pro jednoduchost bude v naší reakci koeficient úměrnosti rovný 1. Na začátku, v čase t = 0, bude přítomná pouze chemikálie E. Zajímá nás, jak se budou koncentrace všech tří chemikálií vyvíjet v čase. Označme x(t) = (xE(t), xF (t), xG(t))T vektor koncentrací v čase t. Z popisu reakce vyplývá, že koncentrace splňují xE(t) = −xE(t) xF (t) = xE(t) − xF (t) xG(t) = xF (t) . Navíc víme, že x(0) = (1, 0, 0)T . Maticově zapsáno máme x (t) = Ax(t), kde A =   −1 0 0 1 −1 0 0 1 0   , x(0) =   1 0 0   . Nyní již stačí aplikovat probraný postup. Zjistíme, že matice A se rovná A = RJR−1 , kde R =   0 −1 0 −1 1 0 1 0 1   , J =   −1 1 0 0 −1 0 0 0 0   . 370 LIBOR BARTO A JIŘÍ TŮMA (R je matice přechodu od báze B tvořené spojením Jordanových řetízků ke kanonické bázi a J = [fA]B B.) Označíme y(t) = R−1 x(t) a původní soustavu přepíšeme do tvaru y (t) = Jy(t) =   −1 1 0 0 −1 0 0 0 0   y(t) . Podle předchozího příkladu dostáváme řešení y(t) =   e−t te−t 0 0 e−t 0 0 0 e0t   y(0) . Z toho x(t) = R   e−t te−t 0 0 e−t 0 0 0 e0t   R−1 x(0) =   e−t te−t −e−t − te−t + 1   . Koncentrace chemikálií E, F, G v čase t tedy bude xE(t) = e−t , xF (t) = te−t , xG(t) = −e−t − te−t + 1. ã-t ã-t t -ã-t - tã-t + 1 0 2 4 6 8 10 0.0 0.2 0.4 0.6 0.8 1.0 t xHtL Obrázek 92. Grafy průběhu koncentrací jednotlivých chemikálií. Poznamejme, že obecněji pro Jordanovu buňku Jλ,n jsou řešením spojitého dynamického systému y (t) = Jλ,ny(t) funkce        y1(t) y2(t) ... yn−1(t) yn(t)        =         eλt t 1! eλt t2 2! eλt . . . tn n! eλt 0 eλt t 1! eλt . . . tn−1 (n−1)! eλt ... ... ... ... ... 0 0 . . . eλt t 1! eλt 0 0 . . . 0 eλt                y1(0) y2(0) ... yn−1(0) yn(0)        . Stačí k tomu použít indukci podle n a v indukčním kroku stejný trik jako v případě Jordanovy buňky řádu 2. LINEÁRNÍ ALGEBRA 371 9.4.10. Invariantní podprostory. Invariantní podprostory operátoru f jsou podprostory, které operátor f zachovává v následujícím smyslu. Definice 9.108. Je-li f : V → V lineární operátor na vektorovém prostoru V, pak podprostor W ≤ V nazýváme invariantní podprostor operátoru f, pokud platí pro každý vektor x ∈ W, že také f(x) ∈ W. Invariantní podprostor čtvercové matice A definujeme jako invariantní podprostor operátoru fA určeného maticí A. Příklad 9.109. Každý operátor má dva triviální invariantní podprostory {o} a V. Z geometrického náhledu vidíme, že rotace v R2 o úhel α, který není násobkem π, má pouze triviální invariantní podprostory. Osová souměrnost v R2 podle přímky LO {v} má kromě triviálních podprostorů ještě dva invariantní podprostory: LO {v} a v⊥ (ortogonální doplněk je vzhledem ke standardnímu skalárnímu součinu.) Pro rotaci v R3 kolem přímky LO {p} jsou LO {p} a p⊥ invariantní podprostory. Rotace o π má ještě další invariantní podprostory. Každý podprostor prostoru V je invariantním podprostorem operátoru id a také operátoru λ id pro libolný skalár λ. Tvrzení 9.110. Pro každý lineární operátor f : V → V jsou následující podprostory V invariantní podprostory operátoru f: (1) Ker (f), (2) Im (f), (3) podprostor LO {u} generovaný libovolným nenulovým vlastním vektorem u operátoru f, (4) obecněji, podprostor LO {v1, . . . , vk} generovaný Jordanovým řetízkem (v1, . . . , vk) operátoru f příslušným vlastnímu číslu λ. Důkaz. Body (1) a (2) jsou triviální. Bod (3) je speciálním případem bodu (4). Pro důkaz (4) uvažujme libovolný vektor x = a1v1 + · · · + akvk. Jeho obraz je po úpravě f(x) = a1f(v1)+a2f(v2)+· · ·+akf(vk) = a1λv1+a2(λv2+v1)+· · ·+ak(λvk+vk−1) . Výraz na pravé straně jde vyjádřit jako lineární kombinaci vektorů v1, . . . , vk, takže skutečně f(x) ∈ LO {v1, . . . , vk}. Další invariantní podprostory můžeme získat průniky a součty invariantních pod- prostorů. Tvrzení 9.111. Jsou-li U a W dva invariantní podprostory operátoru f : V → V, pak jsou podprostory U ∩ W a U + W rovněž invariantními podprostory operátoru f. Důkaz. Je-li x ∈ U ∩ W, pak f(x) ∈ U, protože U je invariatní, a f(x) ∈ W, protože W je invariantní. Z toho plyne f(x) ∈ U ∩ W. Je-li x ∈ U + W, pak existují vektory u ∈ U, w ∈ W takové, že x = u + w. Z invariance U a W víme, že f(u) ∈ U a f(w) ∈ W, proto f(x) = f(u + w) = f(u) + f(w) ∈ U + W. 372 LIBOR BARTO A JIŘÍ TŮMA Z předchozích dvou tvrzení vyplývá, že lineární obal spojení libovolného počtu Jordanových řetízků nějakého operátoru je jeho invariantním podprostorem. Je-li W invariantní podprostor operátoru f, pak zúžení g = f|W operátoru f na podprostor W je lineární operátor na prostoru W. Je zřejmé, že každé vlastní číslo operátoru g = f|W je vlastním číslem operátoru f a každý vlastní vektor operátoru g je také vlastním vektorem operátoru f (příslušný stejnému vlastnímu číslu). Dokážeme silnější tvrzení. Metodu důkazu jsme použili už v důkazu věty o tom, že geometrická násobnost libovolného vlastního čísla operátoru f je nejvýše rovná jeho algebraické násobnosti. Tvrzení 9.112. Buď f : V → V lineární operátor na konečně dimenzionálním prostoru V nad tělesem T a W ≤ V invariantní podprostor operátoru f. Potom charakteristický polynom zúžení g = f|W operátoru f na podprostor W dělí charakteristický polynom operátoru f. Důkaz. Zvolme nějakou bázi C = (v1, . . . , vk) podprostoru W a doplňme ji na bázi B = (v1, . . . , vk, vk+1, . . . , vn) prostoru V. Pro každý vektor vj, j = 1, . . . , k platí f(vj) ∈ W, neboť W je invariantní podprostor operátoru f. Vyjádření [f(vj)]B vektoru f(vj) v bázi B proto bude mít složky k + 1, . . . , n nulové a vektor tvořený prvními k složkami bude rovný [g(vj)]C. Matice [f]B B operátoru f vzhledem k bázi B má potom blokový tvar [f]B B = A E 0 F , kde A = [g]C C, F je nějaká čtvercová matice řádu n−k a E je matice typu k×(n−k). Potom [f]B B − λIn = A − λIk E 0 F − λIn−k , pf (λ) = det([f]B B −λIn) = det(A−λIk) det(F −λIn−k) a pg(λ) = det([f]C C −λIn) = det(A − λIk). Takže pg(λ) skutečně dělí pf (λ). Formulujeme důležitý důsledek. Důsledek 9.113. Nechť f : V → V je operátor na prostoru V dimenze n a W je invariantní podprostor operátoru f dimenze k. Pokud má operátor f právě n vlastních čísel včetně násobností, pak má operátor g = f|W : W → W právě k vlastních čísel včetně násobností. Důkaz. Bez důkazu použijeme tvrzení, které dokážete v kurzu algebry – pokud se polynom rozkládá na lineární faktory, pak se na lineární faktory rozkládá i libovolný jeho dělitel. Pokud má operátor f právě n vlastních čísel včetně násobností, pak se jeho charakteristický polynom pf (λ) rozkládá na lineární faktory. Polynom pg(λ) podle předchozího tvrzení dělí polynom pf (λ), z toho vyplývá, že se pg(λ) rovněž rozkládá na lineární faktory, operátor g má tedy k vlastních čísel včetně násobností. Příklad 9.114. Uvažujme operátor f = fA : R3 → R3 určený maticí A =   −1 0 1 0 −1 0 −4 0 3   LINEÁRNÍ ALGEBRA 373 Ukážeme, že W = LO {u, v} = LO (0, 1, 0)T , (1, 1, 2)T je jeho invariatní podprostor. Platí f(u) = (0, −1, 0)T a f(v) = (1, −1, 2)T . Obrazy obou generátorů jsou lineární kombinace vektorů u, v: f(u) = −u, f(v) = −2u + v . Z toho vyplývá, že každý vektor z W se zobrazí do W: Je-li totiž x = au + bv, pak f(x) = af(u)+bf(v). Podprostor W je tedy invariantní podprostor operátoru f. (Operátor fA je shodný s operátorem v příkladu 9.100, podprostor W je rovný lineárnímu obalu vlastních vektorů.) Podívejme se ještě na operátor g = f|W . Jeho matice vzhledem k bázi C = (u, v) je [g]C C = −1 −2 0 1 Charakteristický polynom operátoru g je pg(λ) = (λ − 1)(λ + 1) a příslušné vlastní podprostory jsou [M1]C = LO −1 1 , [M−1]C = LO 1 0 , neboli M1 = LO {−u + v} = LO (1, 0, 2)T , M−1 = LO {u} = LO (0, 1, 0)T Matice operátoru g vzhledem k bázi D = ((1, 0, 2)T , (0, 1, 0)T ) je [g]D D = 1 0 0 −1 . Geometricky, operátor g je reflexe podle přímky LO (1, 0, 2)T ve směru přímky LO (0, 1, 0)T . To nám dává představu, jak operátor f „vypadá v rovině W. Pro ilustraci předchozího tvrzení ještě uveďme, že pf (λ) = −(λ − 1)2 (λ + 1). Polynom pg(λ) skutečně dělí polynom pf (λ). Na závěr si ještě všimneme, že množina operátorů, pro které je daný podprostor W prostoru V invariantní, je uzavřená na sčítání a násobení skalárem. Tvrzení 9.115. Nechť V je vektorový prostor, W jeho podprostor, f, g lineární operátory na V a t ∈ T. Pak platí: (1) Je-li W invariantní podprostor operátorů f i g, pak je W invariantní podprostor operátoru f + g. (2) Je-li W invariantní podprostor operátoru f, pak je W invariantní podprostor operátoru tf. Důkaz. (1). Je-li x ∈ W a f(x) ∈ W, g(x) ∈ W, pak (f +g)(x) = f(x)+g(x) ∈ W. (2). Je-li x ∈ W a f(x) ∈ W, pak (tf)(x) = t(f(x)) ∈ W. Například, je-li W invariatní podprostor operátoru f, pak je také invariantním podprostorem operátoru f − λ id pro libovolné λ ∈ T. 374 LIBOR BARTO A JIŘÍ TŮMA 9.4.11. Důkaz věty o Jordanově kanonickém tvaru. Nyní dokážeme chybějící implikaci ve větě 9.97 o Jordanově kanonickém tvaru. Předpokládejme, že V je konečně generovaný prostor dimenze n a f : V → V je lineární operátor, který má n vlastních čísel včetně algebraických násobností. Chceme dokázat, že pro operátor f existuje Jordanův kanonický tvar. Větu dokážeme tak, že najdeme bázi V, která je spojením Jordanových řetízků operátoru V. Postupovat budeme indukcí podle dimenze n. Je-li n = 1, matice f vzhledem k jakékoliv bázi B prostoru V má řád 1 a je tedy Jordanovo buňkou a báze B je tvořena jedním Jordanovým řetízkem délky 1. Předpokládejme, že n > 1 a že tvrzení platí pro všechna menší n. Označme λ libovolné vlastní číslo operátoru f a pro přehlednost označme g = f − λ id. Pak dim(Ker g) > 0 (protože prostor Ker g je tvořen vlastními vektory operátoru f příslušnými vlastními číslu λ) a podle věty o dimenzi jádra a obrazu je dim(Im g) = n − dim(Ker g) < n. Podprostor Im g je podle tvrzení 9.110 invariantním podprostorem operátoru g, takže také operátoru f = g + λ id (viz tvrzení 9.115). Charakteristický polynom zúžení h operátoru f na Im g dělí charakteristický polynom operátoru f, a ten má n vlastních čísel včetně násobností. Podle důsledku 9.113 má operátor h dim Im g vlastních čísel čísel včetně násobností, takže na prostor Im g můžeme použít indukční předpoklad. Existuje tedy báze C prostoru Im g, která je složením Jordanových řetízků operátoru h (ty jsou samořejmě rovněž Jordanovými řetízky operátoru f). Jordanovy řetízky příslušné vlastnímu číslu λ označíme podle schématu v1 k1 g −−−−→ . . . g −−−−→ v1 2 g −−−−→ v1 1 g −−−−→ o ... vr kr g −−−−→ . . . g −−−−→ vr 2 g −−−−→ vr 1 g −−−−→ o (V bázi C mohou být ještě řetízky příslušné jiným vlastním číslům.) Počáteční vektory v1 1, . . . , vr 1 tvoří lineárně nezávislou posloupnost v Ker g, doplníme tyto vektory na bázi (v1 1, . . . , vs 1) prostoru Ker g. Pro každé i = 1, . . . , r leží koncový vektor vi ki v prostoru Im g, existují proto vektory vi ki+1 takové, že g(vi ki+1) = vi ki . Tím nám vznikne soubor řetízků v1 k1+1 g −−−−→ v1 k1 g −−−−→ . . . g −−−−→ v1 2 g −−−−→ v1 1 g −−−−→ o ... vr kr+1 g −−−−→ vr kr g −−−−→ . . . g −−−−→ vr 2 g −−−−→ vr 1 g −−−−→ o vr+1 1 g −−−−→ o ... vs 1 g −−−−→ o LINEÁRNÍ ALGEBRA 375 plus řetízky v bázi C, které přísluší jiným vlastním číslům. Zkonstruovali jsme novou posloupnost B, která je spojením Jordanových řetízků operátoru f. Zbývá ukázat, že B je báze. Podle věty 9.93 je B lineárně nezávislá, protože počáteční vektory příslušné vlastnímu číslu λ tvoří z konstrukce lineárně nezávislou posloupnost a pro jiná vlastní čísla jsme nic nezměnili. Nyní stačí spočítat, že počet vektorů v B je n. V bázi C je dim Im g vektorů k nim jsme doplnili dim Ker g −r vektorů z Ker g a poté jsme k existujícím řetízkům doplnili r vektorů, ke každému z r řetízků jeden. Dohromady je v B dim Im g + (dim Ker g − r) + r = dim Im g + dim Ker g = n vektorů. Tím je důkaz ukončen. 9.4.12. Cayleyho-Hamiltonova věta. Uvažujme čtvercovou matici A řádu n nad tělesem T (nebo operátor f na prostoru V dimenze n). Posloupnost matic (In, A, A2 , A3 , . . . , An2 ) (resp. operátorů (id, f, f2 , . . . , fn2 )) je lineárně závislá posloupnost v prostoru Tn×n (resp. Hom(V, V)), protože tento prostor má dimenzi n2 . Existují proto skaláry a0, a1, . . . takové, že a0In + a1A + a2A2 + · · · + an2 An2 = 0n×n (resp. a0 id +a1f + · · · + an2 fn2 = 0). Cayleyho-Hamiltonova věta říká, že taková závislost existuje mnohem dříve – stačí prvních n + 1 členů posloupnosti, přičemž za koeficienty lze vzít koeficenty charakteristického polynomu matice A (resp. polynomu f). Zhruba řečeno, každá matice (resp. každý operátor) je „kořenem svého charakteristického polynomu. Definujeme dosazení matice (operátoru) do polynomu. Definice 9.116. Nechť T je těleso, p(t) = a0 + a1t + a2t2 + · · · + antn polynom s koeficienty a0, . . . , an v T, A čtvercová matice řádu k nad T a f lineární operátor na prostoru V nad tělesem T. Dosazením matice A do polynomu p(t) rozumíme matici p(A) = a0Ik + a1A + a2A2 + · · · + anAn . Dosazením operátoru f do polynomu p(t) rozumíme operátor p(f) = a0 idV +a1f + a2f2 + · · · + anfn . Příklad 9.117. Je-li f operátor na V, pak dosazením operátoru f do polynomu p(t) = t − 3 je operátor p(f) = f − 3 id. Příklad 9.118. Uvažujme reálnou matici A = 1 3 2 4 . Její charakteristický polynom je pA(λ) = λ2 − 5λ − 2 . Dosazením matice A do tohoto polynomu získáme matici pA(A) = A2 −5A−2I2 = 7 15 10 22 + −5 −15 −10 −20 + −2 0 0 −2 = 02×2 . 376 LIBOR BARTO A JIŘÍ TŮMA Před důkazem Cayleyho-Hamiltonovy věty si všimneme, že dosazování do součinu polynomů lze provádět po jednotlivých činitelích. Je-li p(t) = p1(t)p2(t) . . . pi(t), pak p(A) = p1(A)p2(A) . . . pi(A). Důvodem je, že při roznásobení maticového výrazu p1(A) . . . pi(A) je koeficient u Aj stejný jako koeficient u tj při roznásobování výrazu p1(t)p2(t) . . . pi(t) (pro každé j ∈ {0, . . . , i}). Podobně pro operátory p(f) = p1(f)p2(f) . . . pi(f). Věta 9.119 (Cayleyho-Hamiltonova věta). Je-li f lineární operátor na konečně generovaném prostoru V dimenze n nad tělesem T (resp. je-li A čtvercová matice řádu n nad T), pak pf (f) = 0 (resp. pA(A) = 0). Důkaz. Dokážeme si operátorovou verzi, maticovou přenecháme čtenáři. Větu dokážeme pouze v případě, že f má n vlastních čísel včetně násobností. V případě, že tomu tak není, je nutné napřed rozšířit těleso T do většího tělesa tak, aby v tom větším tělese měl charakteristický polynom dostatek kořenů. To lze udělat vždy a bude to v kursu algebry ve druhém ročníku. Označme λ1, . . . , λm vlastní čísla operátoru f a l1, . . . , lm jejich násobnosti. Podle předpokladu je l1 + · · · + lm = n a charakteristický polynom je proto pf (λ) = (−1)n (λ − λ1)l1 (λ − λ2)l2 · · · (λ − λm)lm . Podle věty 9.97 o Jordanově kanonickém tvaru existuje báze B taková, že J = [f]B B je v Jordanově tvaru. Podle pozorování nad větou platí pf (f) = (−1)n (f − λ1 id)l1 (f − λ2 id)l2 · · · (f − λm id)lm a tedy [pf (f)]B B = [(−1)n (f − λ1 id)l1 (f − λ2 id) · · · (f − λm id)lm ]B B = (−1)n ([f − λ1 id]B B)l1 · · · ([f − λm id]B B)lm = (−1)n (J − λ1In)l1 · · · (J − λmIn)lm . Matice v součinu jsou blokově diagonální (bloky odpovídají Jordanovým buňkám matice J), můžeme je násobit po blocích. Uvažujme libovolný blok K. Ten odpovídá nějaké Jordanově buňce Jλi,k, přičemž k je nejvýše li, protože velikost žádné buňky příslušné vlastnímu číslu λi nemůže být větší než jeho algebraická násobnost (viz tvrzení 9.96). Pak je ale (J −λiIn)li = Jli 0,ki nulová matice podle tvrzení 9.84, takže v celém součinu bude blok K nulový. Dokázali jsme, že [pf (f)]B B = 0n×n, takže pf (f) = 0. Příklad 9.120. Ukážeme si použití Cayleyho-Hamiltonovy věty v teorii řízení. Diskrétní dynamický systém xk+1 = Axk dimenze n nad tělesem T s počáteční podmínkou x0 = o má řešení xk = o pro každé k, systém zůstává stále v počátečním stavu. Přidáme si k němu možnost lineárního „řízení xk+1 = Axk + Buk , kde B = (b1|b2| · · · , bn) je matice stejného řádu jako A. Můžeme si ji představit jako „joystick nebo „knipl , kterým systém uvedeme do pohybu a pak jej řídíme volbou vstupů u0, u1, . . . , uk, . . . . Chceme vědět, jakých stavů xk můžeme dosáhnout v čase k. Pro k = 1 dostáváme x1 = Ax0 + Bu0 = Bu0 ∈ Im B LINEÁRNÍ ALGEBRA 377 a protože vstup u0 můžeme zvolit libovolně, tvoří možné stavy v čase k = 1 sloupcový prostor Im B „řídící matice B. Pro k = 2 dostáváme x2 = Ax1 + Bu1 = ABu0 + Bu1 ∈ Im (AB|B) a protože vstupy u0, u1 ∈ Tn můžeme volit libovolně, tvoří možné stavy v čase k = 2 celý sloupcový prostor Im (AB|B) matice (AB|B) typu n × (2n). Jednoduchou indukcí podle k odvodíme, že v čase k tvoří možné stavy xk sloupcový prostor Im (Ak−1 B|Ak−2 B| · · · |AB|B) matice (Ak−1 B|Ak−2 B| · · · |AB|B) typu n × (nk). Porovnáme množiny možných stavů v časech k = n a k = n + 1, tj. sloupcové prostory Im (An−1 B|An−2 B| · · · |AB|B), Im (An B|An−1 B|An−2 B| · · · |AB|B) . Zřejmě platí Im (An−1 B|An−2 B| · · · |AB|B) ⊆ Im (An B|An−1 B| · · · |AB|B) , protože každý sloupec matice vlevo je mezi sloupci matice vpravo. Podle CayleyhoHamiltonovy věty můžeme matici An vyjádřit jako lineární kombinaci An = cn−1An−1 + · · · + c1A + c0In pro nějaké koeficienty ci, které se rovnají +/− koeficientům charakteristického polynomu matice A, protože koeficient u λn v charakteristickém polynomu pA(λ) je (−1)n . V každém případě koeficienty ci leží v T. Poslední rovnost přenásobíme zprava maticí B a dostaneme An B = cn−1An−1 B + · · · + c1AB + c0B . Každý sloupec An bj matice An B, tj. každý nový sloupec matice (An B|An−1 B|An−2 B| · · · |AB|B) se tedy rovná lineární kombinaci An bj = cn−1An−1 bj + · · · + c1Abj + c0bj nějakých sloupců v matici (An−1 B|An−2 B| · · · |AB|B). Každý nový sloupec matice (An B|An−1 B| · · · |AB|B) proto už leží ve sloupcovém prostoru matice Im (An−1 B|An−2 B| · · · |AB|B). Dostali jsme tak, že každého možného stavu xn+1 už můžeme dosáhnout po k = n krocích, rovná se nějakému z možných stavů xn. 9.5. Google. Ukážeme si jednu moderní aplikaci vlastních čísel a vlastních vektorů. Myšlenku uspořádání webových stránek podle důležitosti si napřed předvedeme na jednoduchém příkladu. Poté odvodíme obecnou formulaci problému. Představme si malou síť šesti webových stránek, které na sebe odkazují. Odkazy si zapíšeme do matice A = (aij), kde aij = 1 právě když stránka j odkazuje na stránku i. Naše síť je zadána maticí A =         0 0 1 0 0 0 1 0 1 0 0 0 1 0 0 0 0 0 0 0 0 0 1 1 0 0 1 1 0 0 0 0 0 1 1 0         . 378 LIBOR BARTO A JIŘÍ TŮMA Protože a21 = 1, stránka 1 odkazuje na stránku 2. Dále a23 = 1, také stránka 3 odkazuje na stránku 2. Žádná jiná stránka na stránku 2 neodkazuje. Takto si můžeme nakreslit graf sítě. 1 2 3 4 5 6 Obrázek 93. Google Z vrcholu j vede šipka do i právě když stránka j odkazuje na stránku i. Matice A je tak maticí incidence grafu sítě. Z prvního semestru víme, že prvek na místě (i, j) v mocnině Ak říká, kolik orientovaných cest délky k vede z vrcholu j do vrcholu i. Základní myšlenka vyhledávače Google spočívá v tom, že měří důležitost stránky pravděpodobností, s jakou se na stránku dostaneme náhodným klikáním. Důležitosti stránky se dopracujeme tak, že na začátku přiřadíme všem stránkám stejnou důležitost 1/6. Počáteční aproximací vektoru důležitosti stránek tak bude vektor r0 = (1/6, 1/6, 1/6, 1/6, 1/6, 1/6)T , i-tá složka je důležitost i-té stránky. Nyní musíme matici incidence webu upravit tak, aby její hodnoty říkali, s jakou pravděpodobností klikneme na link ze stránky j na stránku i. Pokud ze stránky j vede více odkazů, řekněme k, pak na každý z nich klikneme s pravděpodobností 1/k. Matici A si upravíme tak, že každou jednotku v j-tém sloupci nahradíme číslem 1/k, kde k je počet prvků rovných 1 v j-tém sloupci matice A. Dostaneme tak matici H =         0 0 1/3 0 0 0 1/2 0 1/3 0 0 0 1/2 0 0 0 0 0 0 0 0 0 1/2 1 0 0 1/3 1/2 0 0 0 0 0 1/2 1/2 0         . Všechny prvky matice H jsou nezáporné a součet každého sloupce se rovná buď 1 nebo 0. Druhá možnost nastane v případě, že z příslušné stránky nevede žádný odkaz. Jako třeba ze stránky s pdf souborem těchto přednášek. První iteraci vektoru důležitosti stránek v naší síti pak získáme jako r1 = Hr0. Složka i tohoto vektoru říká, s jakou pravděpodobností se na stránku i dostaneme z náhodně vybrané stránky po jednom kliknutí. Platí r1 = Hr0 =         0 0 1/3 0 0 0 1/2 0 1/3 0 0 0 1/2 0 0 0 0 0 0 0 0 0 1/2 1 0 0 1/3 1/2 0 0 0 0 0 1/2 1/2 0                 1/6 1/6 1/6 1/6 1/6 1/6         =         1/18 5/36 1/12 1/4 5/36 1/6         . Druhou iteraci vektoru důležitosti r2 dostaneme jako Hr1. Můžeme ji slovně popsat tak, že uvádí, s jakou pravděpodobností se na i-tou stránku dostaneme jedním LINEÁRNÍ ALGEBRA 379 kliknutím z nějaké stránky, přičemž počáteční stránky volíme s pravděpodobnostmi danými vektorem r1. Stránka je tedy tím „důležitější , čím „důležitější stránky na ni odkazují. Vyjde r2 = Hr1 =         0 0 1/3 0 0 0 1/2 0 1/3 0 0 0 1/2 0 0 0 0 0 0 0 0 0 1/2 1 0 0 1/3 1/2 0 0 0 0 0 1/2 1/2 0                 1/18 5/36 1/12 1/4 5/36 1/6         =         1/36 1/18 1/36 17/72 11/72 14/72         . Hledání vektoru důležitosti jednotlivých stránek tak vede na diferenční rovnici rk = Hrk−1, která jak víme má řešení rk = Hk r0. Tento vektor můžeme interpretovat tak, že udává, s jakou pravděpodobností se dostaneme na danou stránku po k náhodných kliknutích. Pro porovnávání důležitosti všech webových stránek bychom museli uvažovat matici celého webu, tedy matici řádu n, kde n je číslo v současnosti větší než třicet miliard. Každá iterace navíc vyžaduje spočítat součin matice tohoto řádu s jedním n-složkovým vektorem, počet aritmetických operací je tak řádu n2 . To všechno se zdá být zhola nemožné. Nicméně matice H je velmi řídká, naprostá většina jejích prvků se rovná 0. Pro ty jsou vypracované efektivní metody ukládání. Dále v každém sloupci matice H je v průměru 10 odkazů na jiné stránky, aspoň tak je jejich počet odhadován. Takže součin matice s vektorem vyžaduje pouze 10n operací. A to už je v současnosti výpočetně zvládnutelné. Popsaná diferenční rovnice vyvolává řadu důležitých otázek: • Konverguje posloupnost vektorů rk k nějakému vektoru nebo je celý proces nestabilní? • Může se stát, že posloupnost vektorů osciluje kolem několika různých limitních vektorů? • Za jakých podmínek na matici H proces konverguje k jedinému vektoru? • Pokud konverguje, dává výsledný limitní vektor dobrou míru důležitosti jednotlivých webových stránek? • Závisí konvergence na počáteční aproximaci r0? • Pokud proces konverguje, kolik iterací musíme provést, abychom dostali dobrou aproximaci limitního vektoru? Už při prvním hraní si s naším malých příkladem zjistíme jeden problém tohoto přístupu. Díky tomu, že v našem příkladu ze stránky 2 nevede žádný odkaz, důležitost této stránky se nijak neprojeví na důležitosti jiných stránek. Na druhou stranu při každé iteraci do sebe nasaje něco z důležitosti jiných stránek a celková suma důležitostí všech stránek se postupně snižuje. Stránkou 2 tak důležitost „odtéká . Mnohem závažnější je skutečnost, že klastr stránek 4,5,6 odkazuje pouze na stránky 4,5,6, a žádná z nich neodkazuje na žádnou ze stránek 1,2,3, zatímco stránka 3 odkazuje na stránku 5 z tohoto klastru. Klastr stránek 4,5,6 tak bude akumulovat důležitost stránek z celé sítě. Skutečně, již třináctá iterace r13 má první tři složky zanedbatelně malé a zbylé tři složky v poměru (2/3) : (1/3) : (1/5). Problém se stránkami, ze kterých nevede žádný odkaz, vyřešíme předpokladem, že z takové stránky můžeme náhodně přeskočit na jakoukoliv jinou stránku, na všechny se stejnou pravděpodobností. V našem malém příkladu je takovou stránkou stránka 2, nulový sloupec v matici H nahradíme sloupcem ze samých hodnot 1/6. 380 LIBOR BARTO A JIŘÍ TŮMA Dostaneme tak matici S =         0 1/6 1/3 0 0 0 1/2 1/6 1/3 0 0 0 1/2 1/6 0 0 0 0 0 1/6 0 0 1/2 1 0 1/6 1/3 1/2 0 0 0 1/6 0 1/2 1/2 0         . V obecném případě bychom matici H nahradili maticí S = H + 1 n eaT , kde e je sloupcový vektor se všemi složkami rovnými 1 a a je vektor, jehož j-tá složka je rovna 1, pokud z j-té stránky nevede žádný odkaz, a rovná se 0, pokud z j-té stránky nějaký odkaz na jinou stránku vede. Matice S je markovovská matice, to znamená, že její prvky jsou nezáporné a každý sloupec má součet rovný 1. O takových maticích už víme, že číslo 1 je jejich vlastním číslem. Problém klastru stránek, které akumulují důležitost všech ostatních stránek, touto úpravou nevyřešíme. V našem příkladu bude pořád platit, že mezi klastrem stránek 1,2,3 a klastrem stránek 4,5,6 vedou odkazy pouze jednosměrně, ze stránek 1,2,3 na stránky 4,5,6. Naše brouzdání po webu upravíme ještě jedním způsobem. Zvolíme si nějaké číslo α ∈ (1/2, 1). Toto číslo je pravděpodobnost, se kterou volíme následující krok při prohlížení webu tak, že klikneme na nějaký odkaz. Pravděpodobnost 1 − α je pak pravděpodobnost, že skočíme náhodně na jakoukoliv jinou stránku webu. Dostaneme tak další matici G = αS + 1 n (1 − α)eeT . Tato Google matice je matice, kterou zakladatelé firmy Google Larry Page a Sergey Brin uvedli ve svém prvním článku o jejich algoritmu PageRank na porovnávání důležitosti webových stránek. Všimněme si, že všechny prvky matice G jsou kladné a součet prvků v každém sloupci zůstává rovný 1. Náš malý příklad vede při volbě α = 0, 9 na matici G = 0, 9 · S + 0, 1 · 1 6 eeT =         1/60 1/6 19/60 1/60 1/60 1/60 7/15 1/6 19/60 1/60 1/60 1/60 7/15 1/6 1/60 1/60 1/60 1/60 1/60 1/6 1/60 1/60 7/15 11/12 1/60 1/6 19/60 7/15 1/60 1/60 1/60 1/6 1/60 7/15 7/15 1/60         . Diferenční rovnice rk = Grk−1 s počátečním vektorem r0 má pak řešení rk = Gk r0, které konverguje k jednoznačně určenému vektoru r =         0, 03721 0, 05396 0, 04151 0, 3751 0, 206 0, 2862         . LINEÁRNÍ ALGEBRA 381 Tento limitní vektor interpretujeme tak, že náhodný brouzdal po webu řídící se našimi pravidly stráví v průměru 3, 721% času na stránce 1, 5, 396% času na stránce 2, 37, 51% času na stránce 4, atd. Vlastnosti vlastních čísel matice G plynou z Perronovy věty, kterou dokázal již v roce 1907 německý matematik Oskar Perron. Uvedeme si bez důkazu její důsledky pro Google matici G. Věta 9.121. Pro Google matici G platí (1) Číslo 1 je vlastním číslem matice G, (2) geometrická i algebraická násobnost vlastního čísla 1 se rovná jedné, (3) existuje vlastní vektor r příslušný vlastnímu číslu 1, který má všechny složky kladné, (4) pro jakékoliv jiné vlastní číslo λ matice G platí |λ| < 1. Pokud kladný vlastní vektor r splňuje navíc podmínku r = 1, nazývá se Perronův vektor matice G. První vlastnost jsme si už ukázali dříve, protože matice G je markovovská (tj. nezáporná a součet každého sloupce se rovná 1) a 1 je proto vlastní číslo G. Můžeme si také ověřit, že z dalších uvedených vlastností matice G plyne konvergence vektorů rk = Gk r0. Pokud si matici G převedeme do Jordanova kanonického tvaru J = R−1 GR pomocí nějaké regulární matice R, můžeme předpokládat, že první Jordanova buňka J1 = J1,1 odpovídá vlastnímu číslu 1 a Perronův vektor r je prvním sloupcem matice R, jejíž sloupce tvoří bázi B = (r = u1, u2, . . . , un) aritmetického prostoru Rn složenou ze Jordanových řetízků. Potom pro matici J = diag(J1, J2, . . . , Js) platí rk = RJk R−1 r0 = R diag(Jk 1 , Jk 2 , . . . , Jk s )R−1 r0 . Protože |λ| < 1 pro jakékoliv vlastní číslo matice G různé od 1, platí Jk i → O pro jakoukoliv Jordanovu buňku různou od J1. Matice Jk tak konverguje k matici, která má na místě (1, 1) prvek 1 a všechny ostatní prvky nulové. Odtud plyne, že posloupnost vektorů rk = RJk R−1 r0 = R diag(Jk 1 , Jk 2 , . . . , Jk s )R−1 r0 konverguje k nějakému skalárnímu násobku vektoru r. Protože začínáme s vektorem r0, který má součet složek rovný 1, a násobíme jej markovovskou maticí, každý vektor rk má součet složek rovný 1 a tedy jej má rovný 1 i limita posloupnosti vektorů rk. Posloupnost vektorů rk tak komverguje k nějakému kladnému násobku Perronova vektoru r, který má všechny složky kladné. Tento výpočet ukazuje, že vhodný násobek Perronova vektoru odpovídá na všechny otázky spojené s řešením diferenční rovnice rk = Gk rk−1 s výjimkou rychlosti konvergence. Rychlost konvergence posloupnosti rk závisí na tom, jak rychle konvergují k O mocniny Jordanovy buňky příslušné vlastním číslům λ = 1. Nejpomaleji z nich konvergují buňky odpovídající vlastnímu číslu λ = 1, který má co největší absolutní hodnotu |λ|. Rychlost konvergence tak závisí nejvíce na |λ2|, kde λ2 je druhé největší (pokud jde o absolutní hodnotu) vlastní číslo matice G. Pokud jde o volbu parametru α, autoři algoritmu uvádějí α = 0, 85. Na volbě α závisí rychlost konvergence a numerická stabilita výpočtů. Z odhadů absolutní hodnoty druhého největšího vlastního čísla matice G vyplývá, že při této volbě α stačí k přesnosti na tři desetinná místa zhruba 50 iterací, tj. stačí spočítat vektor r50. Rychlost konvergence výpočtu také závisí na volbě počátečního vektoru r0. Otázka volby r0 je teoreticky podrobně zkoumána, žádné definitivní výsledky zatím 382 LIBOR BARTO A JIŘÍ TŮMA nejsou. Firma Google uvádí, že každý výpočet začíná vždy od stejného počátečního vektoru r0 = (1/n)e. Zatím se nepodařilo najít způsob, jak využít předchozích masivních výpočtů při výpočtu nové aktualizace vektoru důležitosti stránek. Uvedené použití Jordanova kanonického tvaru pro důkaz konvergence posloupnosti vektorů rk dobře ilustruje význam teoretických výsledků. Při vlastním výpočtu iterací rk = Grk−1 jej nepotřebujeme, součin počítáme přímo. Jordanův kanonický tvar nám umožňuje dokázat, že uvedený numerický postup vede k očekávanému výsledku. Poslední poznámka se týká rychlosti násobení matice s vektorem. Matice G už není řídká, všechny její prvky jsou nenulové. Její tvar je G = αS + (1 − α) 1 n eeT = H + αeaT + (1 − α) 1 n eeT . Matice H je řídká, s naprostou většinou prvků rovných 0. Matice G se od ní liší přičtením dvou matic s hodností rovnou 1. Násobíme-li maticí G libovolný vektor x, počítáme Gx = (αS + (1 − α) 1 n eeT )x = Hx + αeaT x + (1 − α) 1 n eeT x . Člen αeaT x vyžaduje pouze výpočet standardního skalárního součinu aT x, což je n násobení, doplněného o jedno další násobení α(aT x). Stejný počet násobení vyžaduje výpočet třetího členu. Celá složitost výpočtu Gx tak závisí na složitosti výpočtu součinu velmi řídké matice H s vektorem x. Tento tvar matice G tak stále umožňuje řadu optimalizací výpočtů vytvořených pro počítání s řídkými maticemi. Označíme-li E = 1 n eeT matici, jejíž všechny prvky jsou rovné 1/n, můžeme rovnici definující vektor r napsat ve tvaru (αS + (1 − α)E)r = r . Její jednoduchost a elegance vede některé autory k názoru, že by měla být zařazena do příštího vydání knihy It Must Be Beautiful: Great Equations of Modern Science, jejíž první vydání vyšlo v roce 2002. Cvičení 1. Dokažte, že relace podobnosti matic je ekvivalence na množině všech čtvercových matic téhož řádu n nad tělesem T. 2. Nechť V je vektorový prostor dimenze n nad tělesem T, B = (u,u2, . . . , un) je báze V, f : V → V lineární operátor na V a R = (rij) regulární matice řádu n nad T. Najděte bázi C = (v1, v2, . . . , vn) ve V, pro kterou platí [f]C C = R−1 [f]B BR. 3. Dokažte, že číslo 0 je vlastní číslo lineárního operátoru f : V → V právě když Ker (f) = {o}. 4. Dokažte, že jediné vlastní číslo jednotkové matice In je 1. 5. Dokaže, že je-li λ vlastní číslo matice A, je λ2 vlastní číslo matice A2 . 6. Dokažte, že je-li A regulární matice a λ vlastní číslo A, pak λ−1 je vlastní číslo inverzní matice A−1 . 7. Nechť V je konečně generovaný prostor nad T, C = (u1, u2, . . . , un) je báze V a matice [f]C C je podobná matici A. Dokažte, že existuje báze D ve V, pro kterou platí A = [f]D D. LINEÁRNÍ ALGEBRA 383 8. Spočítejte vlastní čísla a vlastní vektory matice ortogonální projekce na přímku určenou nenulovým vektorem (a, b)T ∈ R2 . 9. Najděte matici osové souměrnosti určené přímkou – lineárním obalem nenulového vektoru (a, b)T ∈ R2 vzhledem ke kanonické bázi R2 a spočítejte její vlastní čísla a vlastní vektory. 10. Dokažte, že rotace kolem počátku souřadnic o úhel ϕ má reálná vlastní čísla právě když ϕ je násobkem π. 11. Spočítejte vlastní čísla a vlastní vektory projekce na obecnou přímku v R3 . Napřed odhadněte výsledek z geometrického významu vlastních čísel a vektorů. 12. Jaké kořeny má v tělese Z2 polynom x2 + 1? Jaké kořeny má v tělesech Z3 a Z5? 384 LIBOR BARTO A JIŘÍ TŮMA Shrnutí deváté kapitoly (1) Je-li V vektorový prostor nad tělesem T, f : V → V lineární zobrazení, a x0 ∈ V, pak diskrétní lineární dynamický systém je definovaný rovností xk = f(xk−1) pro každé k ∈ N a počátečním stavem x0. Prvek xk ∈ V nazýváme stav systému v čase k. Má-li prostor V konečnou dimenzi n, říkáme také, že dynamický systém má dimenzi n. (2) Vývoj diskrétního lineárního dynamického systému je popsán vztahem xk = fk (x0) pro každé k ≥ 0. Speciálně, je-li dim V = 1 a f(x) = ax pro každé x ∈ T, pak stav diskrétního lineárního dynamického systému xk = f(xk−1) v čase k se rovná xk = ak x0 pro každé k ≥ 0. (3) Je-li V = Rn (nebo V = Cn ) a x(t) = (x1(t), x2(t), . . . , xn(t))T ∈ V pro každé t ∈ R, pak definujeme derivaci x (t) stavového vektoru x(t) jako vektor x (t) = (x1(t), x2(t), . . . , xn(t))T . (4) Spojitý lineární dynamický systém je definovaný rovností x (t) = f(x(t)) pro každé t ∈ R a počátečním stavem x(0) ∈ Rn (nebo x(0) ∈ Cn ). (5) Je-li n = 1, pak v čase t se stav spojitého lineárního dynamického systému x (t) = ax(t) s počátečním stavem x(0) ∈ R (nebo x(0) ∈ Cn ) rovná x(t) = x(0) eat . (6) Příklady diskrétních lineárních dynamických systémů - úročení, Fibonacciho posloupnost. Příklady spojitých lineárních dynamických systémů - rozpad radioaktivních jader, vlastní kmity pružiny, přechod substance přes buněčnou bránu. (7) Je-li f : V → V lineární operátor na vektorovém prostoru V nad tělesem T, pak skalár λ ∈ T nazýváme vlastní číslo operátoru f, pokud existuje nenulový vektor x ∈ V , pro který platí f(x) = λx . Je-li λ vlastní číslo operátoru f, pak libovolný prvek x ∈ V , pro který platí f(x) = λx, nazýváme vlastní vektor operátoru f příslušný vlastnímu číslu λ. (8) Je-li A čtvercová matice řádu n nad tělesem T, pak skalár λ ∈ T nazýváme vlastní číslo matice A, pokud existuje nenulový vektor x ∈ Tn takový, že Ax = λx . Je-li λ vlastní číslo matice A, pak libovolný vektor x ∈ Tn , pro který platí Ax = λx, nazýváme vlastní vektor matice A příslušný vlastnímu číslu λ. (9) Operátor f : V → V má vlastní číslo 0 právě tehdy, když f není prostý. Čtvercová matice A má vlastní číslo 0 právě tehdy, když A je singulární. (10) Geometrický význam vlastních čísel a vektorů v případě jednoducgých geometrických zobrazení v R2 . (11) Nechť f je lineární operátor na prostoru V nad tělesem T. Pak λ ∈ T je vlastním číslem operátoru f právě tehdy, když operátor (f − λ idV ) není prostý. Je-li λ vlastním číslem operátoru f, pak množina Mλ všech vlastních vektorů operátoru f příslušných vlastnímu číslu λ je podprostorem V a platí Mλ = Ker (f − λ idV ) . LINEÁRNÍ ALGEBRA 385 (12) Je-li A čtvercová matice řádu n nad tělesem T, pak λ ∈ T je vlastním číslem matice A právě tehdy, když je matice A − λIn singulární. Je-li λ vlastním číslem matice f, pak množina Mλ všech vlastních vektorů matice A příslušných vlastnímu číslu λ je podprostorem Tn a platí Mλ = Ker (A − λIn) . (13) Je-li A čtvercová matice řádu n nad tělesem T, pak λ ∈ T je vlastním číslem matice A právě tehdy, když det (A − λIn) = 0. Je-li f lineární operátor na konečně generovaném prostoru V dimenze n nad tělesem T a B je báze V, pak λ ∈ T je vlastním číslem operátoru f právě když je λ vlastní číslo matice [f]B B vzhledem k bázím B a B, což nastává právě když det [f]B B − λIn = 0. (14) Pro každou matici A = (aij) řádu n nad libovolným tělesem T platí (a) det(A − λIn) je polynom stupně n s koeficienty v T, (b) koeficient u λn se rovná (−1)n , (c) koeficient u λn−1 se rovná (−1)n−1 (a11 + a22 + · · · + ann), (d) absolutní člen se rovná det A. (15) Je-li A čtvercová matice řádu n nad tělesem T, pak charakteristický polynom matice A je polynom pA(λ) = det (A − λIn) . (16) Dvě čtvercové matice X, Y téhož řádu nad tělesem T se nazývají podobné, pokud existuje regulární matice R taková, že Y = R−1 XR. (17) Podobné matice mají stejný charakteristický polynom. (18) Je-li f : V → V lineární operátor na konečně generovaném prostoru V dimenze n, pak charakteristický polynom operátoru f je polynom pf (λ) = det [f]B B − λIn , kde B je libovolná báze prostoru V. (19) Nechť p(x) je polynom nad T. Prvek t ∈ T je kořenem polynomu p(x) právě tehdy, když polynom x − t dělí polynom p(x). (20) Nechť p(x) je polynom nad T a t ∈ T je jeho kořen. Násobnost kořene t polynomu p(x) definujeme jako největší přirozené číslo l takové, že polynom (x − t)l dělí polynom p(x). (21) Nechť p(x) je polynom nad T, t1, . . . , tk ∈ T po dvou různé a l1, . . . , lk ∈ N. Pak následující tvrzení jsou ekvivalentní. (1) Pro každé i ∈ {1, . . . , k} je ti kořen násobnosti li. (2) p(x) = (x − t1)l1 . . . (x − tk)lk q(x) pro nějaký polynom q(x) takový, že ani jeden z prvků t1, . . . , tk není kořen. (22) Polynom stupně n nad libovolným tělesem má nejvýše n kořenů včetně násobností. (23) Každý polynom stupně n ≥ 1 nad tělesem C lze napsat jako součin lineárních polynomů (tj. polynomů stupně 1). Speciálně, každý polynom stupně n ≥ 0 nad tělesem C má právě n kořenů včetně násobností. Polynom lichého stupně nad tělesem R má alespoň jeden kořen. 386 LIBOR BARTO A JIŘÍ TŮMA (24) Nechť f je lineární operátor na konečně generovaném prostoru a λ je jeho vlastní číslo. Algebraickou násobností vlastního čísla λ rozumíme jeho násobnost jako kořene charakteristického polynomu operátoru f. Nechť A je čtvercová matice a λ je její vlastní číslo. Algebraickou násobností vlastního čísla λ rozumíme jeho násobnost jako kořene charakteristického polynomu matice A. (25) • Každý lineární operátor f : V → V na konečně generovaném prostoru dimenze n nad tělesem T má nejvýše n vlastních čísel včetně násobností. • Lineární operátor f : V → V má právě n vlastních čísel včetně násobností právě tehdy, když je jeho charakteristický polynom součinem lineárních polynomů. • Každý lineární operátor f : V → V na konečně generovaném prostoru dimenze n nad tělesem C má právě n vlastních čísel včetně násobností. • Každý lineární operátor f : V → V na konečně generovaném vektorovém prostoru liché dimenze nad R má aspoň jedno (reálné) vlastní číslo. (26) • Každá čtvercová matice řádu n nad tělesem T má nejvýše n vlastních čísel včetně algebraických násobností. • Čtvecová matice řádu n nad tělesem T má právě n vlastních čísel včetně násobností právě tehdy, když je její charakteristický polynom součinem lineárních polynomů. • Každá čtvercová matice řádu n nad tělesem C má právě n vlastních čísel včetně algebraických násobností. • Každá čtvercová matice lichého řádu nad tělesem R má alespoň jedno reálné vlastní číslo. (27) Lineární operátor f : V → V na konečně generovaném prostoru V nazýváme diagonalizovatelný, pokud má vzhledem k nějaké bázi diagonální matici. (28) Je-li f : V → V lineární operátor na konečně generovaném prostoru V a je-li B = (v1, . . . , vn) báze prostoru V, pak [f]B B = diag(λ1, . . . , λn) platí právě tehdy, když pro každé i ∈ {1, 2, . . . , n} je vi vlastní vektor příslušný vlastnímu číslu λi. (29) Lineární operátor f : V → V na konečně generovaném prostoru V je diagonalizovatelný právě tehdy, když existuje báze prostoru V tvořená vlastními vektory operátoru f. (30) Je-li f : V → V lineární operátor na konečně generovaném prostoru V dimenze n nad tělesem T a C báze prostoru V, pak operátor f je diagonalizovatelný právě tehdy, když je matice [f]C C podobná diagonální matici. (31) Čtvercová matice A řádu n nad tělesem T se nazývá diagonalizovatelná, pokud je operátor fA : Tn → Tn diagonalizovatelný. (32) Je-li A čtvercová matice řádu n nad tělesem T, B = (v1, . . . , vn) báze prostoru Tn a R = [id]B K = (v1| . . . |vn), pak matice [fA]B B = R−1 AR se rovná diagonální matici diag(λ1, . . . , λn) právě tehdy, když pro každé i ∈ {1, 2, . . . , n} je vi vlastní vektor příslušný vlastnímu číslu λi. (33) Čtvercová matice A řádu n nad tělesem T je diagonalizovatelná právě tehdy, když existuje báze prostoru Tn tvořená vlastními vektory matice A. LINEÁRNÍ ALGEBRA 387 (34) Čtvercová matice A řádu n nad tělesem T je diagonalizovatelná právě tehdy, když je podobná diagonální matici. (35) Je-li f : V → V lineární operátor a (v1, v2, . . . , vk) posloupnost nenulových vlastních vektorů operátoru f příslušných navzájem různým vlastním číslům λ1, . . . , λk, pak je posloupnost (v1, v2, . . . , vk) lineárně nezávislá. (36) Má-li lineární operátor f : V → V na vektorovém prostoru V dimenze n nad tělesem T celkem n navzájem různých vlastních čísel, pak je diagona- lizovatelný. (37) Má-li matice A řádu n nad tělesem T celkem n navzájem různých vlastních čísel, pak je diagonalizovatelná. (38) Celé odvození vztahu pro k-tý člen Fibonacciho posloupnosti. (39) Geometrickou násobností vlastního čísla λ operátoru f na konečně generovaném prostoru (nebo čtvercové matice A) rozumíme dimenzi podprostoru Mλ vlastních vektorů operátoru f (nebo matice A) příslušných vlastnímu číslu λ. (40) Pro čtvercovou blokovou matici A = B C 0 D se čtvercovými diagonálními bloky B, D platí det A = (det B) (det D) . (41) Pro každé vlastní číslo µ lineárního operátoru f : V → V na konečně generovaném prostoru V (čtvercové matice A) nad tělesem T platí, že geometrická násobnost µ je menší nebo rovná algebraické násobnosti λ. (42) Buď f : V → V lineární operátor na konečně generovaném vektorovém prostoru V dimenze n (resp. buď A je čtvercová matice řádu n) nad tělesem T. Pak jsou následující tvrzení jsou ekvivalentní. (a) Operátor f je diagonalizovatelný (resp. matice A je diagonalizova- telná). (b) Operátor f (resp. matice A) má • n vlastních čísel včetně algebraických násobností a • geometrická násobnost každého vlastního čísla operátoru f (resp. matice A) je rovná jeho algebraické násobnosti. (43) Je-li x ∈ Cn vlastní vektor reálné matice A = (aij) příslušný vlastnímu číslu λ, pak x je vlastní vektor matice A příslušný vlastnímu číslu λ. (44) Je-li A reálná matice řádu 2, která nemá reálná vlastní čísla, a λ = r(cos ϕ+ i sin ϕ) je komplexní vlastní číslo s nenulovým vlastním vektorem v, pak platí (a) vektory w1 = v + v a w2 = i(v − v) tvoří bázi B = (w1, w2) prostoru R2 , (b) lineární zobrazení fA : R2 → R2 určené maticí A má vzhledem k bázi B matici [fA]B B = r cos ϕ − sin ϕ sin ϕ cos ϕ a je tedy složením rotace o úhel ϕ se stejnolehlostí s koeficientem r > 0 (45) Vývoj spojitého lineárního dynamického systému s diagonalizovatelnou ma- ticí. 388 LIBOR BARTO A JIŘÍ TŮMA (46) Jordanova buňka řádu k ≥ 1 nad tělesem T příslušná prvku λ ∈ T je čtvercová matice Jλ,k =          λ 1 0 0 0 0 λ 1 . . . 0 0 0 0 λ 0 0 ... ... ... ... 0 0 0 . . . λ 1 0 0 0 . . . 0 λ          . (47) Matice J nad tělesem T je v Jordanově kanonickém tvaru (nebo stručněji v Jordanově tvaru), pokud J je blokově diagonální matice, jejíž každý diagonální blok je Jordanova buňka (nějakého řádu příslušná nějakému číslu), tj. J = diag(Jλ1,k1 , . . . , Jλs,ks ) =      Jλ1,k1 0 . . . 0 0 Jλ2,k2 . . . 0 ... ... ... ... 0 0 . . . Jλs,ks      , kde λ1, . . . , λs ∈ T a k1, . . . , ks jsou kladná celá čísla. (48) Pro libovolná přirozená čísla m < k platí Jm 0,k = (o| . . . |o m× |e1|e2|ek−m) Pro m ≥ k je Jm 0,k = 0. (49) Je-li J = Jλ,k Jordanova buňka, pak pro každé kladné m platí Jm λ,k =           λm m 1 λm−1 m 2 λm−2 . . . m k−1 λm−k+1 0 λm m 1 λm−1 . . . m k−2 λm−k+2 ... ... ... ... ... ... ... ... ... ... 0 0 . . . λm m 1 λm−1 0 0 . . . 0 λm           . (50) Říkáme, že pro lineární operátor f : V → V na konečně generovaném prostoru V existuje Jordanův kanonický tvar, pokud má vzhledem k nějaké bázi matici v Jordanově kanonickém tvaru. (51) Je-li f lineární operátor na vektorovém prostoru V nad tělesem T a λ vlastní číslo operátoru f, pak posloupnost (v1, . . . , vk) vektorů z V nazýváme Jordanův řetízek operátoru f délky k příslušný vlastnímu číslu λ s počátkem v1, pokud platí (f − λ idV )(v1) = o, (f − λ idV )(v2) = v1, (f − λ idV )(v3) = v2, . . . , (f − λ idV )(vk) = vk−1 . (52) Je-li f : V → V lineární operátor na konečně generovaném prostoru V a B = (v1, . . . , vk) báze prostoru V, pak [f]B B = Jλ,k právě tehdy, když (v1, . . . , vk) je Jordanův řetízek operátoru f příslušný vlastnímu číslu λ s počátkem v1. LINEÁRNÍ ALGEBRA 389 (53) Je-li f : V → V lineární operátor na konečně generovaném prostoru V a B báze prostoru V, pak [f]B B = diag(Jλ1,k1 , . . . , Jλs,ks ) platí právě tehdy, když B je spojením posloupností B1, . . . , Bs, kde pro každé i ∈ {1, . . . , s} je Bi Jordanův řetízek operátoru f délky ki příslušný vlastnímu číslu λi s počátkem vi 1. (54) Pro lineární operátor f : V → V na konečně generovaném prostoru V existuje Jordanův tvar právě tehdy, když existuje báze prostoru V vzniklá spojením Jordanových řetízků operátoru f. (55) Nechť f : V → V je lineární operátor na konečně generovaném prostoru V a C je báze prostoru V. Pak pro operátor f existuje Jordanův tvar právě tehdy, když je matice [f]C C podobná matici v Jordanově tvaru. (56) Předpokládáme, že f : V → V lineární operátor a B1, . . . , Bs jsou Jordanovy řetízky operátoru f příslušné vlastním číslům λ1, . . . , λs. Předpokládejme dále, že pro každé λ ∈ {λ1, . . . , λs} je posloupnost počátečních vektorů těch řetízků z B1, . . . , Bs, které přísluší vlastnímu číslu λ, lineárně nezávislá. Pak spojení B = B1, . . . , Bs je lineárně nezávislá posloupnost. (57) Je-li f : V → V lineární operátor na prostoru V dimenze n a B báze vzniklá spojením Jordanových řetízků operátoru f, pak platí (a) operátor f má n vlastních čísel včetně násobností, (b) pro libovolné vlastní číslo λ operátoru f je jeho algebraická násobnost rovna součtu délek Jordanových řetízků v B příslušných vlastnímu číslu λ, (c) pro libovolné vlastní číslo λ operátoru f a libovolné l ∈ N je jádro operátoru (f − λ idV )l rovno lineárnímu obalu l počátečních vektorů z každého řetízku v B příslušného vlastnímu číslu λ (z řetízků délky menší než l bereme všechny vektory), (d) pro libovolné vlastní číslo λ operátoru f a libovolné l ∈ N je obraz operátoru (f − λ idV )l , roven lineárnímu obalu všech vektorů v B kromě l koncových vektorů z řetízků příslušných vlastnímu číslu λ (z řetízků příslušných vlastnímu číslu λ délky menší než l nebereme žádný vek- tor). Speciálně pro libovolné vlastní číslo λ operátoru f platí (5) geometrická násobnost vlastního čísla λ se rovná počtu řetízků v B příslušných vlastnímu číslu λ a prostor Mλ = Ker (f − λ idV ) je roven lineárnímu obalu počátečních vektorů těchto řetízků, (6) počet řetízků příslušných vlastnímu číslu λ délky alespoň l je roven zl = dim Ker (f − λ idV )l − dim Ker (f − λ idV )l−1 , (aby měl výraz smysl i pro l = 1 definujeme (f − λ idV )0 = idV ), (7) počet řetízků příslušných vlastnímu číslu λ délky právě l je zl − zl+1. (58) Je-li f : V → V lineární operátor na konečně generovaném vektorovém prostoru V dimenze n, pak jsou následující tvrzení ekvivalentní. (a) Pro operátor f existuje Jordanův kanonický tvar. (b) Operátor f (resp. matice A) má n vlastních čísel včetně algebraických násobností. (59) Pro každý operátor f : V → V na konečně dimenzionálním prostoru V nad tělesem komplexních čísel C existuje Jordanův kanonický tvar. (60) Řešení spojitého lineárního dynamického systému s maticí rovnou Jordanově buňce řádu 2. 390 LIBOR BARTO A JIŘÍ TŮMA (61) Nechť T je těleso, p(t) = a0 + a1t + a2t2 + · · · + antn polynom s koeficienty a0, . . . , an v T, A čtvercová matice řádu k nad T a f lineární operátor na prostoru V nad tělesem T. Dosazením matice A do polynomu p(t) rozumíme matici p(A) = a0Ik + a1A + a2A2 + · · · + anAn . Dosazením operátoru f do polynomu p(t) rozumíme operátor p(f) = a0 idV +a1f + a2f2 + · · · + anfn . (62) Cayleyho-Hamiltonova věta. Je-li f lineární operátor na konečně generovaném prostoru V dimenze n nad tělesem T (resp. je-li A čtvercová matice řádu n nad T), pak pf (f) = 0 (resp. pA(A) = 0). LINEÁRNÍ ALGEBRA 391 10. Unitární diagonalizace Cíl. V této kapitole se zaměříme na operátory a lineární zobrazení mezi konečně generovanými reálnými a komplexními vektorovými prostory se skalárním součinem. Speciální typy operátorů, tzv. operátory normální, jdou ortogonálně (unitárně) diagonalizovat, tj. lze najít ortonormální bázi tvořenou vlastními vektory. Pro obecné lineární zobrazení najdeme ortonormální báze, vzhledem ke kterým má toto zobrazení obdélníkovou diagonální matici. Tomuto procesu se říká singulární rozklad. Má-li operátor f vzhledem k nějaké bázi diagonální matici, máme docela dobrou představu, co operátor “dělá”. Víme-li například, že operátor f na prostoru R2 má vzhledem k bázi B = (v1, v2) matici D = diag(1, 2), víme, že f zachovává vektor v1 a dvakrát prodlužuje vektor v2. Tím je díky linearitě operátor f zcela určen. Informace, že matice f je vzhledem k bázi B prostoru R2 diagonální, ale není úplně uspokojivá. Jedním z důvodů je, že vektory báze B můžou být „téměř rovnoběžné , takže hrozí nebezpečí numerické nestability výpočtů, jak jsme viděli u soustav lineárních rovnic. Další důvod je, že nedokážeme zodpovědět na jemnější metrické otázky, jako například, jaký je obraz jednotkové kružnice. Z obrázku můžeme odhadovat, že jde o elipsu. Proč tomu tak je a jak přesně je elipsa umístěná? Obecně nejsou délky a směry poloos v jednoduchém vztahu s bází B a maticí D. OBRAZEK - obraz jednotkove kruznice operatorem Pokud ale najdeme v R2 ortonormální bázi B = (v1, v2) (vzhledem ke standardnímu skalárnímu součinu) takovou, že [f]B B = diag(1, 2), pak vektory B jsou „maximálně nerovnoběžné a také vidíme, že obraz jednotkové kružnice je elipsa s osami LO {v1}, LO {v2}, délkou poloosy 1 ve směru LO {v1} a délkou poloosy 2 ve směru LO {v2}. OBRAZEK - obraz jednotkove kruznice operatorem vzhledem k ortonormalni bazi V prvních dvou oddílech této kapitoly se budeme zabývat otázkou, kdy pro operátor f na prostoru V se skalárním součinem existuje ortonormální báze B prostoru V taková, že [f]B B je diagonální. Chceme tedy, aby matice operátoru byla co nejjednodušší (tak jako v kapitole o vlastních číslech), ale také, aby báze B byla co nejhezčí – ortonormální. Abychom mohli mluvit o kolmosti, musí být V lineární prostor se skalárním součinem. Z technických důvodů se budeme věnovat pouze aritmetickým vektorovým prostorům Rn a Cn se standardním skalárním součinem, operátory jsou tedy tvaru fA pro nějakou čtvercovou reálnou nebo komplexní matici A. Ve třetím a čtvrtém oddíle využijeme poznatky o unitární (ortogonální) diagonalizaci na obecné reálné nebo komplexní matice. 10.1. Unitární a ortogonální diagonalizovatelnost. 392 LIBOR BARTO A JIŘÍ TŮMA 10.1.1. Definice a základní vlastnosti. Definice 10.1. Říkáme, že komplexní (resp. reálná) čtvercová matice A řádu n je unitárně diagonalizovatelná (resp. ortogonálně diagonalizovatelná), pokud existuje ortonormální báze B prostoru Cn (resp. Rn ) taková, že [fA]B B je diagonální. Připomeňme, že v Rn a Cn budeme v této kapitole vždy uvažovat standardní skalární součin. Takto také chápeme ortonormalitu v předchozí definici. Definici unitární (ortogonální) diagonalizovatelnosti přeformulujeme podobně jako jsme v důsledku 9.60 a tvrzení 9.61 přeformulovali definici diagonalizovatelnosti. K obdobě důsledku 9.60 si stačí připomenout, že vztah [fA]B B = D = diag(λ1, . . . , λn) platí právě tehdy, když B je tvořená vlastními vektory; λi jsou pak příslušná vlastní čísla. Obdoba tvrzení 9.61 o podobnosti je důsledkem vztahu [fA]B B = ([id]B Kn )−1 [fA]Kn Kn [id]B Kn = ([id]B Kn )−1 A[id]B Kn . Báze B je ortonormální právě když [id]B Kn je unitární (ortogonální). To vede k definici unitární (ortogonální) podobnosti. Definice 10.2. Dvě čtvercové matice X, Y téhož řádu nad tělesem C (resp. R) se nazývají unitárně (resp. ortogonálně) podobné, pokud existuje unitární (resp. ortogonální) matice U taková, že Y = U−1 XU (což je rovno U∗ XU, protože U je unitární nebo ortogonální matice). Dostáváme následující charakterizace unitární (ortogonální) diagonalizovatel- nosti. Tvrzení 10.3. Nechť A je komplexní (resp. reálná) čtvercová matice řádu n. Pak následující tvrzení jsou ekvivalentní. (i) Matice A je unitárně (resp. ortogonálně) diagonalizovatelná. (ii) Aritmetický prostor Cn (resp. Rn ) má ortonormální bázi tvořenou vlastními vektory matice A. (iii) Matice A je unitárně (resp. ortogonálně) podobná diagonální matici (přičemž na diagonále jsou vlastní čísla matice A, každé tolikrát kolik je jeho algebraická=geometrická násobnost). Následující tvrzení je obdobou věty 9.71, která charakterizujíce diagonalizovatelné operátory pomocí algebraických a geometrických násobností vlastních čísel. Věta 10.4. Je-li A komplexní (resp. reálná) čtvercová matice řádu n, pak jsou následující tvrzení ekvivalentní. (1) Matice A je unitárně (resp. ortogonálně) diagonalizovatelná. (2) Matice A • má n vlastních čísel včetně algebraických násobností, • geometrická násobnost každého vlastního čísla matice A se rovná jeho algebraické násobnosti a • pro libovolná dvě různá vlastní čísla λi, λj matice A platí Mλi ⊥ Mλj . Důkaz. Důkaz je podobný jako ve větě 9.71. Předpokládáme, že λ1, . . . , λk jsou všechna navzájem různá vlastní čísla operátoru f. Pro důkaz (2) ⇒ (1) vybereme v každém z prostorů Mλi ortonormální bázi Bi a spojení B bází B1, B2, · · · , Bs bude báze v Cn (resp. Rn ). Stejně jako v důkazu věty 9.71 k tomu stačí první dva z předpokladů na operátor f v bodě (2). Báze B je navíc ortonormální. Všechny prvky báze B mají normu 1, protože LINEÁRNÍ ALGEBRA 393 Bi je ortonormální báze v Mλi , a z téhož důvodu jsou libovolné dva různé prvky Bi kolmé. Je-li i = j, pak každý prvek Bi ⊆ Mλi je kolmý na každý prvek Bj ⊆ Mλj podle třetího z předpokladů. Přepodkládejme naopak, že B je ortonormální báze příslušného aritmetického prostoru taková, že matice [fA]B B je diagonální. To znamená, že každý z prvků báze B je nenulový vlastní vektor matice A. Stejně jako v důkazu implikace (1) ⇒ (2) ve větě 9.71 z toho vyplývá, že báze B je složená z bází prostorů Mλ1 , . . . , Mλk . Protože všechny vektory v B jsou navzájem kolmé, jsou navzájem kolmé i podprostory Mλi = LO Bi a Mλj = LO Bj (viz tvrzení 8.52 o kolmosti lineárního obalu). Jinými slovy věta říká, že matice je unitárně (ortogonálně) diagonalizovatelná právě tehdy, když je diagonalizovatelná a vlastní vektory příslušné různým vlastním číslům jsou na sebe kolmé. Na rozdíl od diagonalizovatelnosti, unitární (ortogonální) diagonalizovatelnost lze charakterizovat velmi jednoduchou rovností, kterou lze snadno ověřit bez znalosti vlastních čísel. To je obsahem spektrální věty pro normální matice dokázané v další části. 10.1.2. Hermitovsky sdružené matice. Důležitou roli v celé kapitole bude hrát hermitovské sdružování, v reálném případě transponování. Připomeňme, že matice hermitovsky sdružená k A je matice komplexně sdružená k AT . Následující tvrzení shrnuje některé jednoduché vlastnosti sdružování, které budeme používat automa- ticky. Tvrzení 10.5. Nechť A, B jsou komplexní matice a t ∈ C. Pak platí (1) A∗∗ = A, (2) má-li A + B smysl, pak (A + B)∗ = A∗ + B∗ , (3) (tA)∗ = tA∗ , (4) má-li AB smysl, pak (AB)∗ = B∗ A∗ , (5) je-li A regulární, pak je A∗ regulární a platí (A−1 )∗ = (A∗ )−1 . Další jednoduchý vztah, který budeme často využívat, ukazuje jeden z geometrických významů hermitovského sdružování: Je-li A komplexní matice typu m × n a x ∈ Cm , y ∈ Cn , pak A∗ x · y = x · Ay , kde na levé straně značí · standardní skalární součin v Cn , na pravé straně v Cm . Formulku lze ověřit jednoduchým výpočtem A∗ x · y = (A∗ x)∗ y = x∗ Ay = x · Ay . Tento vztah hermitovsky sdruženou matici k A charakterizuje ve smyslu, že A∗ je jediná taková matice B, pro kterou platí formulka Bx · y = x · Ay, jak se přesvědčíme dosazením všech dvojic vektorů kanonické báze. Pro reálné matice a reálné aritmetické vektory můžeme hermitovské sdružování samozřejmě všude nahradit transponováním. Pomocí vztahu f∗ (x), y = x, f(y) se obecně definuje sdružené lineární zobrazení. Na aritmetické prostory se standardním součinem jsme se v této kapitole omezili právě proto, abychom se vyhli abstraktní definici sdruženého zobrazení. Důkazy jsou ale podány tak, aby zobecnění šlo udělat přímočaře. 394 LIBOR BARTO A JIŘÍ TŮMA Důležitou vlastností hermitovsky sdružené matice ke čtvercové matici je, že její vlastní čísla jsou komplexně sdružená k vlastním číslům původní matice. Tvrzení 10.6. Nechť A komplexní čtvercová matice řádu n. Pak λ ∈ C je vlastní číslo matice A právě tehdy, když je λ vlastní číslo matice A∗ . Speciálně, reálná čtvercová matice A a transponovaná matice AT mají stejná reálná vlastní čísla. Důkaz. Díky vlastnosti A∗∗ = A stačí dokázat jednu implikaci. Předpokládejme, že λ je vlastní číslo matice A. Pak matice A−λIn je singulární. Potom i (A−λIn)∗ = A∗ − λIn je singulární, tedy λ je vlastní číslo matice A∗ . Alternativně lze tvrzení dokázat pomocí toho, že charakteristický polynom matice A∗ je komplexně sdružený polynom k charakteristickému polynomu matice A, viz cvičení. Tvrzení nedává žádnou informaci o příslušných vlastních vektorech, žádný jednoduchý vztah totiž obecně neplatí. Příklad 10.7. Reálná matice A = −3 −1 4 2 má vlastní čísla 1 a −2 a příslušné podprostory vlastních čísel M1 = LO (−1, 4)T , M−2 = LO (−1, 1)T . Matice transponovaná má stejná vlastní čísla a M1 = LO (1, 1)T , M−2 = LO (4, 1)T . 10.1.3. Normální matice. Normální matice lze definovat jednoduchým, ale poněkud neprůhledným vztahem. Jak uvidíme, jsou to právě unitárně diagonalizovatelné komplexní matice. Vysvětlení názvu „normální uvidíme v tvrzení 10.11. Definice 10.8. Komplexní nebo reálná čtvercová matice A se nazývá normální, pokud A∗ A = AA∗ (v reálném případě můžeme psát AT A = AAT ). Příklady komplexních normálních matic jsou unitární matice a hermitovské matice, dále například diagonální matice a antihermitovské matice, tj. matice splňující −A∗ = A. Příklady reálných normálních matic zahrnují všechny ortogonální, symetrické, diagonální a antisymetrické matice. Příklad 10.9. Reálná matice A =   1 1 0 0 1 1 1 0 1   je normální, protože AT A = AAT =   2 1 1 1 2 1 1 1 2   . Matice A není symetrická, antisymetrická, ani ortogonální. Skalární násobek normální matice je rovněž normální a sdružená matice normální matici je normální (cvičení). Navíc libovolná matice unitárně podobná normální matici je rovněž normální. Součet ani součin normálních matic nemusí být normální, ale stačí, aby operátory komutovaly. Budeme potřebovat pouze následující speciální případy: LINEÁRNÍ ALGEBRA 395 Tvrzení 10.10. Je-li A normální komplexní matice řádu n, pak (i) pro libovolné t ∈ C je matice A − tIn normální, (ii) libovolná matice X unitárně podobná A je normální. Důkaz. Pro důkaz (i) spočítáme (A − tIn)∗ (A − tIn) = (A∗ − (tIn)∗ )(A − tIn) = (A∗ − tIn)(A − tIn) = A∗ A − tA∗ − tA + ttIn Stejně vyjde i (A − tIn)(A − tIn)∗ . Je-li X = U−1 AU, kde U je unitární, pak U−1 = U∗ a tudíž XX∗ = U∗ AU(U∗ AU)∗ = U∗ AUU∗ A∗ U∗∗ = U∗ AA∗ U . Protože A∗ A = AA∗ , stejně vychází X∗ X. Normální operátory se vyznačují tím, že se normy fA-obrazu a fA∗ -obrazu libovolného vektoru rovnají. Tvrzení 10.11. Nechť A je normální matice řádu n a v ∈ Cn . Pak platí Av = A∗ v . Důkaz. Protože norma je vždy nezáporné reálné číslo, stačí dokázat rovnost druhých mocnin norem. Av 2 = Av · Av = A∗ Av · v = AA∗ v · v = A∗∗ A∗ v · v = A∗ v · A∗ v = A∗ v 2 Pomocí polarizační identity lze dokázat (viz cvičení), že vlastnost v předchozím tvrzení normální matice charakterizuje. To vysvětluje jejich pojmenování. Z tvrzení 10.6 víme, že λ je vlastní číslo čtvercové komplexní matice A právě tehdy, když je λ vlastní číslo matice A∗ . Příslušné vlastní vektory ale nejsou obecně v jednoduchém vztahu. Pro normální matice je situace daleko přehlednější. Tvrzení 10.12. Nechť A je normální komplexní matice řádu n, λ ∈ C a v ∈ Cn . Pak v je vlastní vektor matice A příslušný vlastnímu číslu λ právě tehdy, když je v vlastní vektor matice A∗ příslušný vlastnímu číslu λ. Důkaz. Předpokládejme, že v je vlastní vektor matice A příslušný vlastnímu číslu λ. Z tvrzení 10.6 již víme, že λ je vlastní číslo matice A∗ , zbývá dokázat, že v je příslušný vlastní vektor. Platí (A−λIn)v = o, tedy také (A − λIn)v = 0. Protože A je normální, je podle tvrzení 10.10 normální také matice A−λIn. Z tvrzení 10.11 o normách vyplývá (A − λIn)∗ v = (A∗ − λIn)v = 0. Z toho (A∗ − λIn)v = o, tedy v je skutečně vlastní vektor matice A∗ příslušný vlastnímu číslu λ. Pro důkaz druhé implikace stačí připomenout, že A∗ je normální operátor a A∗∗ = A. 10.2. Spektrální věty. V této části dokážeme slíbenou charakterizaci unitárně diagonalizovatelných matic jako matic normálních. Dále se budeme věnovat charakterizacím speciálních typů normálních matic, hlavní výsledky jsou schematicky znázorněné na obrázku zvlášť v komplexním a reálném případě. Nakonec využijeme poznatky k popisu všech ortogonálních operátorů R2 → R2 a R3 → R3 . 396 LIBOR BARTO A JIŘÍ TŮMA OBRAZEK - vlevo komplexní, vpravo reálné TODO: analogie ke komplexním číslům 10.2.1. Normální matice. Věta 10.13 (Spektrální věta pro normální matice). Nechť A je čtvercová komplexní matice. Pak následující tvrzení jsou ekvivalentní. (1) Matice A je unitárně diagonalizovatelná. (2) Matice A je normální. Důkaz. (1) ⇒ (2). Je-li A unitárně diagonalizovatelná, pak je unitárně podobná diagonální matici D = diag(λ1, . . . , λn) (viz tvrzení 10.3). Diagonální matice je normální, protože D∗ D = DD∗ = diag(|λ1|2 , . . . , |λn|2 ). Ale každá matice unitárně podobná normální je normální podle tvrzení 10.10. (2) ⇒ (1). Tvrzení dokážeme indukcí podle řádu n matice A. Pro n = 1 tvrzení zřejmě platí. Předpokládejme, že A je normální a každá normální matice řádu n−1 je unitárně diagonalizovatelná. Každá komplexní čtvercová matice má vlastní číslo λ1 (viz důsledek 9.51). Vezmeme libovolný nenulový vlastní vektor příslušný vlastnímu číslu λ, znormujeme jej a označíme v1. Vektor v1 doplníme na ortonormální bázi B = (v1, . . . , vn) prostoru Cn , což lze podle věty 8.69. Ukážeme, že matice X = [fA]B B je blokově diagonální tvaru X = [fA]B B = ([fA(v1)]B| · · · |[fA(vn)]B) =     λ 0 0 . . . 0 0 0 0 Y 0     . Pro první sloupec plyne tvrzení z volby v1, protože [fA(v1)]B = [Av1]B = [λv1]B = (λ, 0, . . . , 0)T . Podle tvrzení 8.47 o souřadnicích vzhledem k ortonormální bázi je první složka vektoru [fA(vi)]B = [Avi]B rovná v1·Avi. Pro i > 1 dostáváme užitím tvrzení 10.12 o vlastních vektorech normální matice a kolmosti vektorů v1 a vi v1 · Avi = A∗ v1 · vi = λv1 · vi = λ(v1 · vi) = 0 . První složka i-tého sloupce matice [fA]B B je tedy pro i > 1 skutečně nulová. Důkaz dokončíme maticovým výpočtem využitím indukčního předpokladu. Předně X = [fA]B B je unitárně podobná normální matici A = [fA]K K: X = U∗ AU , kde U = [id]B K . Speciálně, X je také normální matice (viz tvrzení 10.10). Platí proto |λ|2 0 0 Y ∗ Y = λ 0 0 Y ∗ λ 0 0 Y = X∗ X = XX∗ = |λ|2 0 0 Y Y ∗ , a tudíž Y je rovněž normální. Podle indukčního předpokladu je Y unitárně diagonalizovatelná, takže podle jedné z ekvivalentních formulací z tvrzení 10.3 existuje unitární matice V řádu n − 1 taková, že V ∗ Y V je diagonální. Položíme-li W = 1 0 0 V , LINEÁRNÍ ALGEBRA 397 vidíme, že W je unitární, UW je rovněž unitární jakožto součin unitárních matic, a platí (UW)∗ A(UW) = W∗ U∗ AUW = W∗ XW = 1 0 0 V ∗ λ 0 0 Y 1 0 0 V = λ 0 0 V ∗ Y V Výsledná matice je diagonální, matice A je tudíž unitárně podobná diagonální matici, takže je unitárně diagonalizovatelná opět podle tvrzení 10.3. Speciálně, normální reálná matice je unitárně diagonalizovatelná, chápeme-li ji jako matici nad C. Není pravda, že je nutně ortogonálně diagonalizovatelná nad R! Reálné matice, které jsou ortogonálně diagonalizovatelné, charakterizujeme v důsledku 10.16, jsou to přesně symetrické matice. Pro danou normální matici by bylo neefektivní hledat ortonormální bázi vlastních vektorů postupem z důkazu spektrální věty. Je lepší postupovat obdobně jako u diagonalizace, podle důkazu věty 10.4, tj. v každém z prostorů vlastních vektorů najít ortonormální bázi, viz příklad 10.17. Příklad 10.14. V příkladu 10.9 jsme viděli, že reálná matice A =   1 1 0 0 1 1 1 0 1   je normální. Její charakteristický polynom je pA(t) = −t3 + 3t2 − 3t + 2 = −(t − 2)(t2 − t + 1) . Tento polynom má pouze jeden reálný kořen λ = 2 násobnosti 1, matice A tedy není ortogonálně diagonalizovatelná. Chápejme nyní A jako matici nad C. Podle spektrální věty je unitárně diagonalizovatelná. Má tři vlastní čísla λ1 = 2, λ2 = 1 2 + √ 3 2 i, λ3 = λ2 = 1 2 − √ 3 2 i , prostory vlastních vektorů mají tedy dimenzi 1 a stačí v každém z nich zvolit jednotkový vektor. v1 = 1 √ 3   1 1 1   , v2 = 1 √ 3    −1+ √ 3i 2 −1− √ 3i 2 1    , v3 = v2 = 1 √ 3    −1− √ 3i 2 −1+ √ 3i 2 1    Vzhledem k bázi B = (v1, v2, v3) je matice operátoru fA : C3 → C3 rovná [fA]B B =    2 0 0 0 1+ √ 3i 2 0 0 0 1− √ 3i 2    . 398 LIBOR BARTO A JIŘÍ TŮMA To nám také dává maticový rozklad A = [fA]K K = [id]B K[fA]B B[id]K B = [id]B K[fA]B B([id]B K)−1 = [id]B K[fA]B B([id]B K)∗ = 1 √ 3    1 −1+ √ 3i 2 −1− √ 3i 2 1 −1− √ 3i 2 −1+ √ 3i 2 1 1 1       2 0 0 0 1+ √ 3i 2 0 0 0 1− √ 3i 2    1 √ 3    1 1 1 −1− √ 3i 2 −1+ √ 3i 2 1 −1+ √ 3i 2 −1− √ 3i 2 1    . 10.2.2. Hermitovské a symetrické matice. Připomeňme, že matice A se nazývá hermitovská, pokud A∗ = A (v reálném případě AT = A). Hermitovské matice tvoří podtřídu normálních matic. Následující věta ukazuje, že jsou to ve skutečnosti právě ty normální matice, jejichž vlastní čísla jsou reálná. Věta 10.15 (Spektrální věta pro hermitovské matice). Nechť A je komplexní čtvercová matice. Pak následující tvrzení jsou ekvivalentní. (1) Matice A je unitárně diagonalizovatelná a všechna její vlastní čísla jsou reálná. (2) Matice A je hermitovská. Důkaz. (1) ⇒ (2). Je-li A unitárně diagonalizovatelná a všechna její vlastní čísla jsou reálná, pak můžeme podle tvrzení 10.3 psát A = UDU∗ , kde U je unitární a D je reálná diagonální. Reálná diagonální matice je zřejmě hermitovská, takže A = UDU∗ = UD∗ U∗ = (UDU∗ )∗ = A∗ . (2) ⇒ (1). Protože každý hermitovský operátor je normální, stačí podle spektrální věty o normálních operátorech (věta 10.13) ukázat, že všechna vlastní čísla matice A jsou reálná. To nahlédneme z tvrzení 10.12 o vlastních vektorech normálních matic: Je-li λ ∈ C vlastní číslo matice A a v nenulový vlastní vektor příslušný λ, pak v je vlastní vektor operátoru A∗ = A příslušný vlastnímu číslu λ. Jeden nenulový vektor nemůže příslušet více vlastním číslům, platí tedy λ = λ, neboli λ ∈ R. Důsledek 10.16 (Spektrální věta pro symetrické matice). Nechť A je reálná čtvercová matice. Pak následující tvrzení jsou ekvivalentní. (1) Matice A je ortogonálně diagonalizovatelná. (2) Matice A je symetrická. Důkaz. Důkaz (1) ⇒ (2) se udělá stejně jako v předchozí větě. Pro důkaz opačné implikace předpokládejme, že A je reálná symetrická matice. Chápejme nyní A jako matici nad C. Protože je A hermitovská, podle předchozí věty je unitárně diagonalizovatelná a všechna vlastní čísla jsou reálná. Z toho vyplývá (viz větu 10.4), že A má n reálných vlastních čísel včetně násobností, geometrická násobnost každého vlastního čísla je rovná jeho algebraické násobnosti a prostory Mλ jsou navzájem kolmé. Algebraická (geometrická) násobnost nad C je rovná algebraické (geometrické) násobnosti nad R, takže chápeme-li A opět jako reálnou matici, bude splňovat podmínky z věty 10.4, a bude proto ortogonálně diagonali- zovatelná. LINEÁRNÍ ALGEBRA 399 Příklad 10.17. Jako ilustraci spektrální věty pro reálné symetrické matice najdeme pro operátor fA určený maticí A =   0 1 0 1 0 0 0 0 1   ortonormální bázi složenou z vlastních vektorů. Operátor fA má charakteristický polynom p(λ) = (1 − λ)(λ2 − 1) a tedy vlastní čísla 1 a −1. Příslušné prostory vlastních vektorů jsou M1 = LO (1, 1, 0)T , (0, 0, 1)T , M−1 = LO (1, −1, 0)T V prostoru M1 je ortonormální báze například (v1, v2), kde v1 = √ 2 2   1 1 0   , v2 =   0 0 1   . V prostoru M−1 tvoří ortonromální bázi například vektor v3 = √ 2 2   1 −1 0   . Báze B = (v1, v2, v3) je ortonormální báze prostoru V a [fA]B B = diag(1, 1, −1). Zapíšeme ještě výsledek maticově. Označme Q = [id]B K =    √ 2 2 0 √ 2 2√ 2 2 0 − √ 2 2 0 1 0    . Matice Q je ortogonální, takže Q−1 = QT a můžeme psát diag(1, 1, −1) = [fA]B B = [id]K B [fA]K K[id]B K = Q−1 AQ = QT AQ , nebo ve formě rozkladu matice A A = Q diag(1, 1, −1)Q−1 = Q diag(1, 1, −1)QT . 10.2.3. Pozitivně (semi)definitní matice. Je-li A hermitovská matice řádu n, pak pro libovolný vektor x ∈ Cn platí x · Ax = A∗ x · x = Ax · x = x · Ax . Z toho plyne, že x · Ax = x∗ Ax je vždy reálné číslo. Pro x = o je rovno 0. Ty matice, pro které je jinak toto číslo vždy kladné (resp. nezáporné) nazýváme pozitivně definitní (resp. semidefinitní). Definice 10.18. Čtvercová matice A řádu n nad C (resp. R) se nazývá • pozitivně definitní, pokud je hermitovská (resp. symetrická) a pro všechna o = x ∈ Cn (resp. o = x ∈ Rn ) platí x∗ Ax > 0; • pozitivně semidefinitní, pokud je hermitovská (resp. symetrická) a x∗ Ax ≥ 0. 400 LIBOR BARTO A JIŘÍ TŮMA Pozitivně definitní matice jsme již potkali v kapitole o skalárním součinu. Jsou to podle pozorování 8.22 právě ty matice A, pro které rovnost u, v = u∗ Av definuje skalární součin na Cn . Rovněž jsme si již uvědomili, že pozitivně definitní matice jsou regulární. Všimněte si také geometrického významu nerovnosti x∗ Ax = x · Ax > 0. Říká, že vektor x a jeho obraz při zobrazení fA svírají ostrý úhel. Pozitivně definitní matice lze ekvivalentně definovat tak, že jsou hermitovské (symetrické) a všechna vlastní čísla jsou kladná; podobně pro semidefinitnost. Z toho také vyplývají příslušné spektrální věty. Tvrzení 10.19. Nechť A je hermitovská (nebo symetrická) matice řádu n. Pak A je pozitivně definitní (resp. semidefinitní) právě tehdy, když jsou všechna vlastní čísla matice A kladná (resp. nezáporná). Důkaz. Dokážeme pouze verzi pro pozitivně definitní komplexní matice. Zbylá tvrzení se dokážou podobně. Je-li A pozitivně definitní a λ je vlastní číslo matice A (to je nutně reálné), pak pro nenulový vlastní vektor v příslušný λ platí 0 < v · Av = v · λv = λ v 2 . Protože norma je kladná, plyne odsud λ > 0. Jsou-li naopak všechna vlastní čísla matice A kladná, existuje podle spektrální věty pro hermitovské matice (věta 10.15) ortonormální báze B prostoru Cn taková, že [fA]B B = D = diag(λ1, . . . , λn), kde λi jsou reálná vlastní čísla operátoru f, tj. λi > 0 pro všechna i ∈ {1, . . . , n}. Pak užitím tvrzení 8.49 o skalárním součinu vzhledem k ortonormální bázi dostáváme pro libovolný vektor x vztah x · Ax = [x]B · [Ax]B = ([x]B)∗ [Ax]B = ([x]B)∗ [fA]B B[x]B = ([x]B)∗ D[x]B . Označíme-li [x]B = (x1, . . . , xn) je výraz roven λ1|x1|2 + · · · + λn|xn|2 , což je ostře větší než 0, kdykoliv x = 0. Věta 10.20 (Spektrální věta pro pozitivně (semi)definitní matice). Nechť A je komplexní čtvercová matice. Pak následující tvrzení jsou ekvivalentní. (1) Matice A je unitárně diagonalizovatelná a všechna její vlastní čísla jsou kladná reálná (resp. nezáporná reálná). (2) Matice A je pozitivně definitní (resp. semidefinitní). Důkaz. Věta je důsledkem spektrální věty pro hermitovské matice a předchozího tvrzení. Drobnou úpravu formulace spektrální věty pro reálný případ přenecháme čtenáři. Příklad 10.21. Reálná matice A = 1 2 2 1 není pozitivně definitní ani semidefinitní, protože má záporné vlastní číslo −1. Reálná matice A = 1 2 2 4 má vlastní čísla 0, 5, je proto pozitivně semidefinitní, ale není pozitivně definitní. Reálná matice A = 1 2 2 5 LINEÁRNÍ ALGEBRA 401 je pozitivně definitní. Pro libovolný nenulový vektor (a, b) ∈ R2 je proto číslo (a, b)A a b = a2 + 4ab + 5b2 kladné. Mnoho soustav lineárních rovnic vzniklých přeformulováním úloh z přírodních věd má pozitivně (semi)definitní matici. Je to často způsobeno tím, že matice soustavy je tvaru A∗ A pro nějakou obdélníkovou matici, nebo obecněji A∗ DA pro matici A typu m × n a diagonální matici D = diag(d1, . . . , dm) řádu m s nezápornými reálnými prvky na diagonále. To, že matice tvaru A∗ A jsou pozitivně semidefinitní jsme již vlastně zdůvodnili v kapitole o skalárním součinu (mimo jiné je A∗ A Gramova matice posloupnosti sloupcových vektorů matice A), odvození zopakujeme v důkazu následujícího tvrzení. Matice tvaru A∗ DA, kde D = diag(d1, . . . , dm), di ≥ 0, lze psát ve tvaru A∗ DA = A∗ √ D √ DA = A∗ √ D ∗√ DA = ( √ DA)∗ ( √ DA) , kde √ D značí matici diag( √ d1, . . . , √ dm), jsou tedy také pozitivně semidefinitní. Tvrzení 10.22. Pro libovolnou komplexní matici A typu m×n je matice A∗ A pozitivně semidefinitní. Je-li navíc A čtvercová regulární matice, pak A∗ A je pozitivně definitní. Naopak, každou pozitivně semidefinitní komplexní matici B lze psát ve tvaru B = A∗ A, kde A je čtvercová matice. V případě, že B je pozitivně definitní, je nutně A regulární. Důkaz. Matice A∗ A je hermitovská, protože (A∗ A)∗ = A∗ A∗∗ = A∗ A. Pro libovolný vektor x ∈ Cn platí x∗ A∗ Ax = (Ax)∗ (Ax) = Ax 2 ≥ 0, takže A∗ A je pozitivně semidefinitní. Je-li navíc A regulární a x = o, pak Ax 2 > 0, a A je proto pozitivně definitní. Naopak, nechť B je pozitivně semidefinitní komplexní matice. Podle spektrální věty a tvrzení 10.3 lze B psát ve tvaru B = U∗ DU, kde U je unitární matice a D diagonální matice s nezápornými prvky na diagonále. Využitím obratu nad tvrzením dostáváme rozklad B = ( √ DU)∗ ( √ DU), takže stačí položit A = √ DU. Je-li B pozitivně definitní, je B = A∗ A regulární. Pak je ale nutně i matice A regulární. 10.2.4. Unitární a ortogonální matice. Další podtřídou normálních matic jsou matice unitární, v reálném případě ortogonální. Věta 10.23 (Spektrální věta pro unitární matice). Nechť A je komplexní čtvercová matice. Pak následující tvrzení jsou ekvivalentní. (1) Matice A je unitárně diagonalizovatelná a pro všechna vlastní čísla λ ∈ C platí |λ| = 1. (2) Matice A je unitární. Důkaz. (1) ⇒ (2). Je-li A unitárně diagonalizovatelná a všechna její vlastní čísla jsou jednotková, pak můžeme podle tvrzení 10.3 psát A = UDU∗ , kde U je unitární a D je diagonální s jednotkovými prvky na diagonále. Pak ale D∗ D = In, takže platí A∗ A = (UDU∗ )∗ (UDU∗ ) = UD∗ U∗ UDU∗ = UD∗ DU∗ = UU∗ = In . 402 LIBOR BARTO A JIŘÍ TŮMA Matice A je tedy unitární. (2) ⇒ (1). Protože každá unitární matice je normální, stačí podle věty 10.13 ukázat, že pro všechna vlastní čísla λ matice A platí |λ| = 1. Vezmeme libovolný nenulový vlastní vektor v příslušný vlastnímu číslu λ. Protože fA zachovává normu (viz bod (6) tvrzení 8.82 a bod (2) 8.88), platí v = Av = λv = |λ| v . Z toho plyne |λ| = 1, jak jsme chtěli. Spektrální větu využijeme v následujících odstavcích k popisu ortogonálních operátorů na prostorech R2 a R3 . Upozorňujeme, že pro ortogonální matice nemůžeme ve spektrální větě nahradit unitární diagonalizovatelnost ortogonální. Ne všechny ortogonální matice jsou totiž ortogonálně diagonalizovatelné, pouze ty symetrické. Při studiu ortogonálních matic nebo operátorů se proto většinou komplexním číslům nevyhneme. 10.2.5. Ortogonální operátory v dimenzi 2. Nechť f : R2 → R2 je ortogonální operátor. Obrazy vektorů nějaké ortonormální báze (např. kanonické) jsou jednotkové a na sebe kolmé. Z toho lze geometricky nahlédnout, že f je buď rotace nebo reflexe (osová souměrnost). Toto pozorování teď dokážeme algebraicky, jako rozcvičku pro vyšší dimenze. Označme si A matici f vzhledem ke kanonické bázi, tj. f = fA. Někdy budeme A chápat jako komplexní matici a f = fA jako operátor na C2 . Podle spektrální věty pro unitární matice pro všechna vlastní čísla matice A platí |λ| = 1. Protože má charakteristický polynom matice A reálné koeficienty, jsou obě vlastní čísla buď reálná nebo je tvoří dvojice komplexně sdružených čísel cos ϕ + i sin ϕ = eiϕ a cos ϕ − i sin ϕ = e−iϕ . Označme C = (v1, v2) nějakou ortonormální bázi prostoru C2 složenou z vlastních vektorů matice A. Nejdříve probereme případ, kdy vlastní čísla matice A jsou reálná. Pak můžeme zvolit oba vlastní vektory v1, v2 reálné. Zde máme tři možnosti. • Obě vlastní čísla se rovnají 1. Matice [f]C C se pak rovná I2 a operátor f se rovná identickému zobrazení. • Obě vlastní čísla se rovnají −1. Matice [f]C C se pak rovná −I2 a operátor f se rovná středové symetrii – stejnolehlosti s koeficientem −1. • Jedno vlastní číslo se rovná 1 a druhé −1. Matice [f]C C se pak při vhodném uspořádání bázových vektorů rovná 1 0 0 −1 . Zobrazení f je reflexe (osová souměrnost) vzhledem k přímce generované vektorem v1. Zbývá případ komplexních vlastních čísel, která nejsou reálná. Označme v = (a + bi, c + di) vlastní vektor příslušný číslu λ = cos ϕ + i sin ϕ. V části 9.3.5 jsme ukázali, že v je vlastní vektor příslušný vlastnímu číslu λ a vzhledem k bázi C = (w1, w2) = (v + v, i(v − v)) = (2Re(v), −2Im(v)) má operátor matici rovnou matici rotace o úhel ϕ. Protože v a v jsou na sebe kolmé, platí v∗ v = (a − ib, c − id) a − ib c − id = a2 − b2 + c2 − d2 − 2i(ab + cd) = 0 . Z imaginární části výrazu vidíme, že ab + cd = 0 a reálné vektory w1 = 2Re v = (2a, 2c)T a w2 = −2Im v = (−2b, −2d) jsou na sebe kolmé. Z reálné části výrazu LINEÁRNÍ ALGEBRA 403 vidíme, že oba vektory w1, w2 mají stejnou normu e = √ 4a2 + 4c2 = √ 4b2 + 4d2. Báze B = (w1/e, w2/e) je ortonormální báze prostoru R2 . Protože vznikla vynásobením vektorů báze C stejným skalárem je [f]B B = [f]C C = cos ϕ − sin ϕ sin ϕ cos ϕ a zobrazení f je tedy rotace. Pokud vezmeme do úvahy, že středová symetrie je rotace o úhel π a identické zobrazení je rotace o úhel 0, dokázali jsme následující klasifikaci ortogonálních zobrazení v R2 . Tvrzení 10.24. Každý ortogonální operátor f na R2 je buď rotace nebo reflexe. Rotace je to právě když det[f]B B = 1 a reflexe je to právě když det[f]B B = −1, kde B je libovolná báze R2 . Protože složení dvou ortogonálních zobrazení je opět ortogonální zobrazení, dostáváme s použitím věty o součinu determinantů tento důsledek. Důsledek 10.25. Složení dvou rotací v R2 je opět rotace, složení dvou reflexí je rotace a složení rotace s reflexí (v libovolném pořadí) je opět nějaká reflexe. 10.2.6. Ortogonální operátory v dimenzi 3. Rozšíříme klasifikaci ortogonálních zobrazení na aritmetické prostory dimenze 3. Nechť f : R3 → R3 je ortogonální operátor na prostoru R3 se standardním skalárním součinem a A = [f]K K jeho matice vzhledem ke kanonické bázi v R3 . Podobně jako v dimenzi 2 budeme A někdy chápat jako komplexní matici. Charakteristický polynom má všechna vlastní čísla rovná v absolutní hodnotě 1 a existuje ortonormální báze C = (v1, v2, v3) prostoru C3 složená z vlastních vektorů matice A. Protože charakteristický polynom má reálné koeficienty, jsou buď všechna vlastní čísla reálná (rovná ±1) a nebo je jedno reálné a zbylá dvě jsou komplexně sdružená čísla eiϕ a e−iϕ pro nějaký úhel ϕ. Předpokládejme, že pouze jedno vlastní číslo je reálné. K němu příslušný vlastní vektor v1 můžeme proto také zvolit reálný. Chápeme-li A jako komplexní matici, podprostor v⊥ 1 = LO {v2, v3} prostoru C3 je invariantním podprostorem operátoru fA, protože je lineárním obalem vlastních vektorů. Tím spíše je i W = v⊥ 1 (tentokrát chápáno reálně) invariatním podprostorem v R3 operátoru f. Označme g = f|W zúžení f na tento podprostor dimenze 2. Operátor g na prostoru W je zřejmě ortogonální. Podle tvrzení 9.112 charakteristický polynom operátoru g dělí charakteristický polynom operátoru f. Z toho vyplývá, že pg(λ) má komplexní vlastní čísla eiϕ a e−iϕ . Z diskuze v dimenzi 2 nyní vyplývá (viz poznámku), že g má vzhledem k ortonormální bázi (a Re v2, −a Im v2) tohoto podprostoru, kde a = Re v2 −1 , matici cos ϕ − sin ϕ sin ϕ cos ϕ . Poznámka. Zde se projevuje jedna z nevýhod práce s aritmetickými prostory místo abstraktních. Diskuzi v části 10.2.5 jsme prováděli pro operátory na R2 , nyní bychom ale potřebovali výsledek pro dvoudimenzionální podprostor R3 , což 404 LIBOR BARTO A JIŘÍ TŮMA není aritmetický prostor. Doplnit argument ale můžeme užitím libovolné ortonormální báze C prostoru W. Potřebujeme ukázat, že vektory Re v2 a Im v2 jsou na sebe kolmé a mají stejnou normu. Víme, že v2 · v2 = 0, takže také [v2]C · [v2]C = [v2]C · [v2]C = 0 podle tvrzení 8.49. Výpočet v části 10.2.5 ukazuje, že pak [Re v2]C a [Im v2]C jsou na sebe kolmé a mají stejnou normu, a tedy totéž platí pro Re v2 a Im v2, opět podle tvrzení 8.49. (V právě provedeném argumentu opět poněkud neformálně kombinujeme reálná a komplexní čísla, formální doladění ale již přenecháme čtenáři.) Je-li reálné vlastní číslo rovné 1, má potom f vzhledem k ortonormální bázi B = (v1, a Re v2, −a Im v2) prostoru R3 matici [f]B B =   1 0 0 0 cos ϕ − sin ϕ 0 sin ϕ cos ϕ   . a jde tedy o rotaci kolem osy generované vektorem v1 o úhel ϕ. Je-li jediné reálné vlastní číslo operátoru f rovné −1, platí [f]B B =   −1 0 0 0 cos ϕ − sin ϕ 0 sin ϕ cos ϕ   =   −1 0 0 0 1 0 0 0 1     1 0 0 0 cos ϕ − sin ϕ 0 sin ϕ cos ϕ   a zobrazení f je tedy složením rotace kolem osy generované v1 o úhel ϕ s reflexí (zrcadlením) určenou rovinou kolmou na vektor v1. Jsou-li všechna vlastní čísla matice A reálná, můžeme zvolit ortonormální bázi C3 složenou z reálných vektorů a matice [f]B B má (až na pořadí prvků na hlavní diagonále) jeden ze tvarů   1 0 0 0 1 0 0 0 1   ,   1 0 0 0 1 0 0 0 −1   ,   1 0 0 0 −1 0 0 0 −1   ,   −1 0 0 0 −1 0 0 0 −1   . V prvním případě jde o identické zobrazení (tj. rotaci o úhel 0), ve druhém případě jde o zrcadlení vzhledem k rovině LO {v1, v2} = {v3}⊥ , ve třetím případě jde o rotaci kolem osy generované v1 o úhel π a ve čtvrtém případě jde o složení této rotace s reflexí (zrcadlením) určenou rovinou LO {v2, v3}. Platí proto následující tvrzení. Tvrzení 10.26. Každé ortogonální zobrazení v euklidovském prostoru R3 je buď rotace kolem nějaké osy, reflexe vzhledem k nějaké rovině a nebo složení rotace s reflexí. Rotace je to právě tehdy, když determinant matice tohoto zobrazení vzhledem k jakékoliv bázi je rovný 1. Důsledek 10.27. Složení dvou rotací v R3 je zase rotace v R3 , složení dvou reflexí je rotace (osa rotace je rovná průniku rovin reflexí). 10.3. Singulární rozklad. Pro některé operátory určené čtvercovými komplexními nebo reálnými maticemi umíme najít ortonormální bázi, vzhledem ke které má daný operátor diagonální matici. V komplexním případě jsou to právě operátory určené normální maticí, v reálném případě symetrickou maticí. Když slevíme z požadavku, že báze pro vzory a obrazy jsou stejné, lze „unitárně diagonalizovat každou komplexní nebo reálnou matici, která ani nemusí být čtvercová. Navíc na diagonále budou v tomto diagonálním tvaru nezáporná reálná čísla. LINEÁRNÍ ALGEBRA 405 10.3.1. Tři pohledy na singulární rozklad. Začneme příkladem, který ilustruje tři pohledy na tuto zobecněnou unitární diagonalizaci. Příklad 10.28. Uvažujme „zkosení fA : R2 → R2 , kde A = 1 1 0 1 . Budeme umět spočítat, že vzhledem k bázím B a C, kde B = (v1, v2) ≈ 0,526 0,851 , −0,851 0,526 , C = (u1, u2) ≈ 0,851 0,526 , −0,526 0,851 , má f matici [fA]B C = σ1 0 0 σ2 ≈ 1,618 0 0 0,618 . Z toho vidíme, že vektor v1 se při zobrazení fA zobrazí na přibližně 1,618-násobek vektoru u1 a vektor v2 se zobrazí na přibližně 0,618-násobek vektoru u2. Obecněji, obraz vektoru x o souřadnicích [x]B = (x1, x2)T vzhledem k bázi B je vektor Ax o souřadnicích [Ax]C ≈ (1,618x1, 0,618x2)T vzhledem k bázi C. OBRAZEK Z této informace například snadno určíme obraz jednotkového kruhu O = {x : x ≤ 1}. Protože B je ortonormální báze, platí x = [x]B . Vektor x proto leží v O právě tehdy, když jeho souřadnice [x]B = (x1, x2)T vzhledem k bázi B splňují x2 1 + x2 2 ≤ 1. Obrazem vektoru x je vektor Ax o souřadnicích [Ax]C = (y1, y2)T ≈ (1,618x1, 0,618x2)T . V obrazu kruhu O tedy budou právě ty body, jejichž souřadnice vzhledem k C splňují y1 1,618 2 + y2 0,618 2 ≤ 1 Z toho vidíme, že obrazem je elipsa s délkami poloos (přibližně) 1,618, 0,618. Směry poloos jsou určeny vektory u1, u2 báze C. Užitečná je také maticová verze. Označíme-li U = [id]C K a V = [id]B K, dostaneme z [fA]B C = D vztah A = UDV −1 . Protože V je ortogonální matice, platí V −1 = V T , takže také můžeme psát A = UDV T . A = UDV T ≈ 0,851 −0,526 0,526 0,851 1,618 0 0 0,618 0,526 0,851 −0,851 0,526 Na tento rozklad se také můžeme dívat tak, že zobrazení fA vyjadřujeme jako složení fA = fU fDfV T , kde fU a fV T jsou ortogonální zobrazení a fD je zobrazení určené diagonální maticí. Zobrazení fA je tak v našem případě složením zobrazení fV T = fV −1 , což je rotace o přibližně −58,28◦ , zobrazení fD, které natahuje vektory 1,618-krát ve směru první osy a zkracuje 0,618-krát ve směru druhé osy, a zobrazení fU , což je rotace o přibližně 31,72◦ . I z tohoto pohledu vidíme obraz jednotkového kruhu: Zobrazení fV T = fV −1 zobrazí O na O (přičemž vektor v1 se zobrazí na e1 a vektor v2 na e2). Zobrazení fD kružnici deformuje ve směru souřadnicových os, čímž vznikne elipsa s osami LO {e1}, LO {e2}. Tuto elipsu zobrazení fU otočí. OBRAZEK 406 LIBOR BARTO A JIŘÍ TŮMA Použijeme-li pohled na násobení matic systémem “sloupec krát řádek”, můžeme vztah A = (UD)V T napsat ve tvaru dyadického rozvoje A = σ1u1v∗ 1 + σ2u2v∗ 2 . Matici A jsme vyjádřili jako součet matic hodností 1. Uvidíme, že první sčítanec σ1u1v∗ 1 ≈ 0,724 1,171 0,447 0,724 je vlastně v jistém smyslu nejlepší aproximace matice A maticí hodnosti 1. 10.3.2. Singulární rozklad. Uvažujme obdélníkovou matici typu m×n nad C (resp. R) a příslušné lineární zobrazení fA : Cn → Cm (resp. fA : Rn → Rm ). Chceme najít ortonormální bázi B prostoru Cn (resp. Rn ) a ortonormální bázi C prostoru Cm (resp. Rm ) tak, aby [fA]B C byla „diagonální s nezápornými reálnými čísly na diagonále. Tato matice nemusí být čtvercová, pojem diagonální matice proto rozšíříme. Říkáme, že matice D = (dij) typu m × n je obdélníková diagonální matice, pokud dij = 0, kdykoliv i = j (kde i ∈ {1, . . . , m}, j ∈ {1, . . . , n}). Obdélníkovou diagonální matici budeme zapisovat D = diag(d11, . . . , drr) nebo obšírněji D = diagm×n(d11, . . . , drr) , chceme-li zvýraznit typ matice D. Budeme často vypisovat pouze nenulové prvky, tj. je-li r < min(m, n), rozumí se, že zbylé diagonální prvky jsou nulové. Klíčové pozorování k nalezení bází B a C je následující. Pokud [fA]B C = D = diagm×n(d11, . . . , drr), dii ∈ R , pak matice lineárního zobrazení fA∗ vzhledem k bázím C a B je D∗ , protože [fA∗ ]C B = [id]Kn B [fA∗ ]Km Kn [id]C Km = ([id]B Kn )∗ A∗ ([id]Km C )∗ = ([id]Km C A[id]B Kn )∗ = ([fA]B C )∗ = D∗ , kde ve druhé úpravě jsme využili ([id]B K)−1 = ([id]B K)∗ a ([id]K C )−1 = ([id]K C )∗ , což platí, protože obě matice jsou unitární. Z toho vyplývá, že matice operátoru fA∗A vzhledem k ortonormální bázi B je [fA∗A]B B = [fA∗ ◦ fA]B B = [fA∗ ]C B[fA]B C = D∗ D = diagn×n(d2 11, . . . , d2 rr) . Všimněte si, že jsme vlastně unitárně zdiagonalizovali matici A∗ A. Nyní vidíme, že prvky na diagonále matice [fA]B C jsou nutně druhé odmocniny vlastních čísel matice A∗ A a báze B musí sestávat z vlastních vektorů této matice. Navíc ze vztahu [fA]B C = D vidíme, že obraz i-tého vektoru báze B při zobrazení fA musí být dii-násobkem i-tého vektoru v bázi C (pro i ≤ min(m, n)). Tato pozorování dávají návod k důkazu věty o singulárním rozkladu. Věta 10.29. [o singulárním rozkladu] Nechť A je komplexní (resp. reálná) matice typu m × n hodnosti r. Pak existují ortonormální báze B = (v1, . . . , vn), C = (u1, . . . , um) prostorů Cn , Cm (resp. Rn , Rm ) takové, že (i) (singulární rozklad, geometrická verze) [fA]B C je obdélníková diagonální ma- tice [fA]B C = D = diagm×n(σ1, . . . , σr) , kde σ1, . . . , σr > 0 , LINEÁRNÍ ALGEBRA 407 (ii) (singulární rozklad, algebraická verze) platí A = UDV −1 = UDV ∗ , kde U, V jsou unitární (resp. ortogonální) matice U = [id]C Km = (u1| . . . |um), V = [id]B Kn = (v1| . . . |vn) a (iii) (dyadický rozvoj) platí A = σ1u1v∗ 1 + · · · + σrurv∗ r . Navíc v této situaci (iv) σ1, . . . , σr jsou druhé odmocniny vlastních čísel matice A∗ A, (v) pro každé i ∈ {1, . . . , r} je vi vlastní vektor matice A∗ A příslušný vlastnímu číslu σ2 i , (vi) Ker A = LO {vr+1, . . . , vn} = LO {v1, . . . , vr} ⊥ , (vii) Im A = LO {u1, . . . , ur} = LO {ur+1, . . . , um} ⊥ . Důkaz. Matice A∗ A řádu n je podle tvrzení 10.22 pozitivně semidefinitní, takže podle spektrální věty pro hermitovské (resp. v reálném případě symetrické) operátory (věta 10.15 nebo důsledek 10.16) existuje ortonormální báze B = (v1, . . . , vn) prostoru Cn (resp. Rn ) složená z vlastních vektorů matice A∗ A a [fA∗A]B B = diag(λ1, . . . , λn), kde λ1, . . . , λn jsou nezáporná reálná vlastní čísla matice A∗ A. Vektory v bázi B uspořádáme tak, aby λ1 ≥ λ2 ≥ · · · ≥ λn. Řekněme, že prvních r vektorů je nenulových. Nakonec uvidíme, že r je skutečně rovno hodnosti matice A. Pro i ∈ {1, . . . , r} označíme σi = √ λi a ui = σ−1 i Avi. Pak pro libovolná i, j ∈ {1, . . . , r} platí ui · uj = σ−1 i Avi · σ−1 j Avj = σ−1 i σ−1 j (Avi · Avj) = σ−1 i σ−1 j (A∗ Avi · vj) = σ−1 i σ−1 j λi(vi · vj) . Z toho vyplývá, že pro i = j jsou vektory ui, uj na sebe kolmé a navíc ui · ui = σ−2 i λi = 1, takže každý z vektorů u1, . . . , ur má jednotkovou normu. Můžeme tedy tuto posloupnost doplnit na ortonormální bázi C = (u1, . . . , um) prostoru Cm (resp. Rm ). Nyní pro i ∈ {1, . . . , r} je Avi = σiui, neboli [fA(vi)]C = σiei, a pro i > r je [fA(vi)]C = o. Matice lineárního zobrazení fA vzhledem k bázím B a C je tedy skutečně [fA]B C = D = diagm×n(σ1, . . . , σr) . Bod (ii) nyní plyne z výpočtu A = [f]K K = [id]C K[f]B C [id]K B = UDV −1 = UDV ∗ a výraz z bodu (iii) je součin (UD)V ∗ rozepsaný systémem “sloupec krát řádek”. Body (iv) a (v) plynou z diskuze před větou. Konečně, podle tvrzení 6.25 o výpočtu jádra a obrazu máme [Ker fA]B = Ker D = LO {er+1, . . . , en} , [Im fA]C = Im D = LO {e1, . . . , er} takže Ker A = LO {vr+1, . . . , vn} = LO {v1, . . . , vr} ⊥ Im A = LO {u1, . . . , ur} = LO {ur+1, . . . , um} ⊥ . Speciálně, hodnost matice A je dim Im A = r. 408 LIBOR BARTO A JIŘÍ TŮMA Je zvykem vektory v bázích B a C uspořádat tak, že na diagonále matice [f]B C jsou prvky uspořádány sestupně podle velikosti. Nenulové prvky na diagonále se nazývají singulární hodnoty matice A. Definice 10.30. Nechť A je komplexní nebo reálná matice. Kladné reálné číslo σ nazýváme singulární hodnota matice A, pokud σ2 je vlastní číslo matice A∗ A. Z pozorování nad větou 10.29 také vyplývá, že nenulová hodnota σ je na diagonále matice D tolikrát, kolik je násobnost σ2 jako vlastního čísla matice A∗ A. Příklad 10.31. Spočítáme singulární rozklad matice zkosení fA : R2 → R2 diskutovaného v příkladu 10.28. A = 1 1 0 1 Postupujeme podle důkazu věty 10.29. Najdeme ortonormální bázi B = (v1, v2) prostoru R2 se standardním skalárním součinem takovou, že matice operátoru fA∗A = fAT A vzhledem k B je diagonální. Vlastní čísla matice AT A = 1 1 1 2 jsou λ1,2 = (3 ± √ 5)/2, singulární hodnoty jsou proto σ1,2 = 3 ± √ 5 2 , σ1 ≈ 1,618, σ2 ≈ 0,618 . Příslušné prostory vlastních vektorů matice AT A jsou jednodimenzionální, vybereme v nich vektory jednotkové velikosti. Vyjde přibližně v1 ≈ 0,526 0,851 ∈ Mλ1 , v2 ≈ −0,851 0,526 ∈ Mλ2 . Vektory u1, u2 vypočteme ze vzorce ui = σ−1 i Avi. u1 ≈ 0,851 0,526 , u2 ≈ −0,526 0,851 . Vzhledem k bázím B = (v1, v2) a C = (u1, u2) má fA matici D = [fA]B C ≈ 1,618 0 0 0,618 . 10.3.3. Interpretace geometrické verze. Rozmyslíme si podrobněji, co vztah [fA]B C = D = diagm×n(σ1, . . . , σr) říká o lineárním zobrazení fA. Označme B = (v1, . . . , vn) a C = (u1, . . . , um). Podle definice matice lineárního zobrazení je fA(v1) = σ1u1, . . . , fA(vr) = σrur. Pro zbylé vektory v bázi B je fA(vr+1) = · · · = fA(vn) = o. Obecněji, obraz vektoru x spočítáme vzorcem [fA(x)]C = [fA]B C [x]B, tedy obrazem vektoru x, jehož souřadnice vzhledem k bázi B jsou [x]B = (x1, . . . , xn)T , je vektor fA(x), jehož souřadnice vzhledem k bázi C jsou [fA(x)]C = D(x1, . . . , xn)T = (σ1x1, . . . , σrxr, 0, . . . , 0)T m složek LINEÁRNÍ ALGEBRA 409 Podobně jako v příkladu 10.28 z toho v případě reálných matic malých typů vidíme, že obrazem jednotkové koule v Rn je zobecněný elipsoid v Rm s poloosami σ1u1, . . . , σrur velikostí σ1, . . . , σr. Pokud r = 1 je zobecněný elipsoid úsečka, pro r = 2 elipsa (i s vnitřkem) a pro r = 3 elipsoid (opět s vnitřkem). OBRAZEK V některých situacích můžeme vektory v1, . . . , vn interpretovat jako význačné směry v Cn (Rn ), vektory u1, . . . , um jako význačné směry pro obrazy a čísla σ1, . . . , σr jako velikosti vlivů jednotlivých složek na výsledný vektor. Příklad 10.32. Předpokládejme dim V = 5, dim U = 4, B = (v1, . . . , v5), C = (u1, . . . , u4) a [f]B C = diag4×5(10, 9, 0,1). Vektor x s vyjádřením [x]B = (x1, x2, x3, x4, x5)T se zobrazí na vektor f(x) s vyjádřením [f(x)]C = (10x1, 9x2, 0,1x3, 0), čili vektor f(x) = 10x1u1 + 9x2u2 + 0,1x3u3. To lze interpretovat tak, že největší vliv na f(x) mají první dvě složky x1, x2 odpovídající vektorům v1, v2. Tyto složky se přibližně zdesetinásobí, f(x) bude „blízko roviny LO {u1, u2} a bude mít přibližně desetkrát větší normu (pokud není třetí složka příliš velká). Vliv třetí složky x3 je malý a další složky nemají na výsledek žádný vliv. Jádrem f je prostor Ker f = LO {v4, v5} = LO {v1, v2, v3} ⊥ a obrazem f je prostor LO {u1, u2, u3} = u⊥ 4 . 10.3.4. Geometrická interpretace algebraické verze. Rozklad A = UDV T = UDV −1 můžeme geometricky interpretovat jako fA = fU fDfV −1 . V případě reálné čtvercové matice řádu n je tedy fA : Rn → Rn složením pořadě ortogonálního zobrazení fV −1 , zobrazení fD, které natahuje nebo zkracuje souřadnicové osy a ortogonálního zobrazení fU . Pro zobrazení fA = fU fDfV T : Rn → Rm sledujme postupně obraz n-dimenzionální koule O = {x : x ≤ 1}. Zobrazení fV T je ortogonální, proto zobrazí O opět na O, přičemž vektor vi se zobrazí na ei. Zobrazení fD pak kruh O natáhne nebo smrští ve směru souřadnicových os (případně ještě ubere nebo přidá složky pokud m = n), tím vznikne zobecněný elipsoid s poloosami σ1e1, σ2e2, . . . . Nakonec se na vzniklou množinu aplikuje zobrazení fU , které vektor ei zobrazí na vektor ui. Tím vznikne zobecněný elipsoid s polosami σ1u1, σ2u2, . . . velikostí σ1, σ2, . . . . 10.3.5. Příklady. Příklad 10.33. Spočítáme singulární rozklad pro reálnou čtvercovou matici A =   1 1 0 0 1 1 1 0 1   . Tato matice je normální, v příkladu 10.14 jsme ji unitárně diagonalizovali. V následujícím odstavci si rozmyslíme, jak spočítat singulární rozklad přímo z unitární diagonalizace, pokud nám nevadí komplexní aritmetické vektory v bázích B a C. Nyní ale budeme postupovat přímo podle důkazu věty 10.29. Najdeme ortonormální bázi B = (v1, v2, v3) prostoru R3 se standardním skalárním součinem takovou, že matice operátoru fAT A vzhledem k B a B je diagonální. Matice AT A =   2 1 1 1 2 1 1 1 2   410 LIBOR BARTO A JIŘÍ TŮMA má vlastní číslo λ1 = 4 násobnosti 1 a vlastní číslo λ2 = λ3 = 1 násobnosti 2. Singulární hodnoty matice A jsou σ1 = 2 a σ2 = σ3 = 1. Příslušné prostory vlastních vektorů jsou M4 = LO      1 1 1      , M1 = LO      −1 1 0   ,   −1 0 1      , V nich najdeme ortonormální báze. V prostoru M1 je ortonormální báze třeba (v2, v3) =   1 √ 2   −1 1 0   , 1 √ 6   1 1 −2     , v prostoru M4 v1 = 1 √ 3   1 1 1   . Vektory báze C = (u1, u2, u3) vypočteme ze vztahu ui = σ−1 i fA(vi). u1 = 2−1 Av1 = 2−1   1 1 0 0 1 1 1 0 1   1 √ 3   1 1 1   = 1 √ 3   1 1 1   . u2 = Av2 = 1 √ 2   0 1 −1   , u3 = Av3 = 1 √ 6   2 −1 −1   , Vzhledem k ortonormálním bázím B a C je D = [fA]B C =   2 0 0 0 1 0 0 0 1   . To nám dává rozklad (U = [id]C K, V = ([id]B K)T ) A = UDV T =    1√ 3 0 2√ 6 1√ 3 1√ 2 − 1√ 6 1√ 3 − 1√ 2 − 1√ 6      2 0 0 0 1 0 0 0 1      1√ 3 1√ 3 1√ 3 − 1√ 2 1√ 2 0 1√ 6 1√ 6 − 2√ 6    nebo také následující rozklad na matice hodnosti 1 A = 2u1vT 1 +u2vT 2 +u3vT 3 = 1 3   2 2 2 2 2 2 2 2 2  + 1 2   0 0 0 −1 1 0 1 −1 0  + 1 6   2 2 −4 −1 −1 2 −1 −1 2   Obrazem jednotkové koule při zobrazení fA je elipsoid s poloosami 2u1, u2, u3 velikostí 2, 1, 1. Protože velikosti druhé a třetí poloosy jsou stejné, je tento elipsoid rotačně symetrický podle osy LO {u1}. OBRAZEK Příklad 10.34. Spočítáme singulární rozklad pro reálnou matici A =   1 2 2 4 1 2   . LINEÁRNÍ ALGEBRA 411 Vlastní čísla matice AT A = 6 12 12 24 jsou 30 a 0, singulární hodnota matice A je tedy σ1 = √ 30. Příslušné normované vlastní vektory jsou v1 = 1 √ 5 1 2 , v2 = 1 √ 5 −2 1 . Vektor u1 = σ−1 1 Av1 = 1 √ 6   1 2 1   doplníme do ortonormální báze R3 například vektory u2 = 1 √ 2   −1 0 1   , u3 = 1 √ 3   1 −1 1   . Vzhledem k bázím B = (v1, v2) a C = (u1, u2, u3) máme [fA]B C =   √ 30 0 0 0 0 0   , což nám dává rozklady A = σ1u1v∗ 1 a A =    1√ 6 − 1√ 2 1√ 3 2√ 6 0 − 1√ 3 1√ 6 1√ 2 1√ 3      √ 30 0 0 0 0 0   1√ 5 2√ 5 − 2√ 5 1√ 5 Obrazem jednotkového kruhu při zobrazení fA je úsečka spojující − √ 30u1 a √ 30u1. OBRAZEK 10.3.6. Singulární rozklad unitárně diagonalizovatelných matic. Jaká je souvislost unitární nebo ortogonální diagonalizace matic a singulárního rozkladu? Uvažujme normální matici A řádu n a ortonormální bázi B = (v1, . . . , vn) prostoru Cn (Rn ) takovou, že [fA]B B = D = diag(λ1, . . . , λn). Vektory v B si uspořádáme tak, aby λ1, . . . , λr = 0 a λr+1 = · · · = λn = 0. Jsou-li λ1, . . . , λn nezáporná reálná čísla, což nastane právě když A je pozitivně semidefinitní, pak máme přímo singulární rozklad, kde C = B a D = D . V obecném případě si nejprve rozmyslíme, jaké jsou singulární hodnoty matice A, a pak nalezneme příslušnou bázi C. Singulární hodnoty matice A jsou druhé odmocniny nenulových vlastních čísel matice A∗ A, které můžeme spočítat jako (nenulová) vlastní čísla matice [fA∗A]B B = (D )∗ D = diag(|λ1|2 , . . . , |λn|2 ) . Proto platí: Pozorování 10.35. Singulární hodnoty normálního operátoru jsou rovny absolutním hodnotám jeho nenulových vlastních čísel. 412 LIBOR BARTO A JIŘÍ TŮMA Proto definujeme D = diagn×n(|λ1|, . . . , |λn|) . Pro i ≤ r položíme ui = (λi/|λi|)vi. Posloupnost (u1, . . . , ur) je ortonormální, protože vznikla vynásobením vektorů v1, . . . , vr komplexními čísly s absolutní hodnotou 1. Tyto vektory doplníme na ortonormální bázi (u1, . . . , un). Protože pro i ≤ r je fA(vi) = λivi = |λi|ui a pro i > r je fA(vi) = o = λiui, platí [fA]B C = D a nalezli jsme singulární rozklad. Příklad 10.36. Vrátíme se k normální matici z příkladu 10.33. Budeme ji chápat jako komplexní matici a spočítáme její singulární rozklad. A =   1 1 0 0 1 1 1 0 1   . V příkladu 10.14 jsme spočítali, že A má vlastní čísla λ1 = 2, λ2 = 1 2 + √ 3 2 i, λ3 = λ2 = 1 2 − √ 3 2 i , a ortonormální báze tvořená příslušnými vlastními vektory je B = (v1, v2, v3), kde v1 = 1 √ 3   1 1 1   , v2 = 1 √ 3    −1+ √ 3i 2 −1− √ 3i 2 1    , v3 = v2 = 1 √ 3    −1− √ 3i 2 −1+ √ 3i 2 1    Singulární hodnoty matice A jsou proto σ1 = |λ1| = 2, σ2 = |λ2| = 1, σ3 = |λ3| = 1 a vektory v bázi C = (u1, u2, u3) vypočteme ze vztahu ui = (λi/σi)vi. u1 = λ1 σ1 v1 = 1 √ 3   1 1 1   , u2 = λ2 σ2 v2 = 1 √ 3    −1 1− √ 3i 2 1+ √ 3i 2    , u3 = λ3 σ3 v3 = 1 √ 3    −1 1+ √ 3i 2 1− √ 3i 2    . Vyšel nám singulární rozklad komplexní matice A. Tento postup ale nemůžeme použít, chceme-li singulární rozklad A jakožto reálné matice. Ten jsme našli v příkladu 10.33. 10.4. Použití singulárního rozkladu. 10.4.1. Spektrální norma. Singulární rozklad matice A nám umožňuje odpovědět na otázku, jaký nejvýše (nejméně) může být podíl Ax / x pro x = o. Jinými slovy, jak nejvíc se může změnit délka vektoru při zobrazení fA. Pro které vektory se tohoto maxima (minima) nabývá? Nejprve si všimneme, že Ax x = A x x , takže se stačí zabývat otázkou, jaká je největší, nebo nejmenší hodnota Ax pro vektory x jednotkové velikosti (tj. pro vektory na jednotkové sféře). Geometricky je v případě reálných matic malých typů odpověď patrná z diskuze o obrazu jednotkové koule. Ukážeme algebraické odvození v obecném případě. LINEÁRNÍ ALGEBRA 413 Nechť B, C jsou ortonormální báze takové, že [f]B C = diagm×n(σ1, . . . , σr), σ1 ≥ · · · ≥ σr > 0. Označme [x]B = (x1, . . . , xn). Protože x = 1 a B je ortonormální, je [x]B = 1, čili |x1|2 + |x2|2 + · · · + |xn|2 = 1 . Norma vektoru f(x) je potom f(x) = [f(x)]C = (σ1x1, . . . , σrxr, 0, . . . , 0)T = σ2 1|x1|2 + · · · + σ2 r |xr|2 . Protože σ1 ≥ σ2 ≥ · · · ≥ σr > 0 je tento výraz menší nebo roven σ2 1(|x1|2 + · · · + |xn|2) = σ1 , přičemž rovnost nastává právě tehdy, když |xi| = 0 pro každé i takové, že σi < σ1, neboli právě pro vektory x v lineárním obalu vektorů báze B příslušných singulární hodnotě σ1, neboli právě pro vlastní vektory matice A∗ A příslušné vlastnímu číslu σ2 1. Odvodili jsme následující tvrzení Tvrzení 10.37. Nechť A je komplexní (resp. reálná) matice typu m × n. Pak pro libovolný vektor o = x ∈ Cn (resp. o = x ∈ Rn ) platí Ax x ≤ σ1 , kde σ1 je největší singulární hodnota matice A. Rovnost nastává právě tehdy, když x je nenulový vlastní vektor matice A∗ A příslušný vlastnímu číslu σ2 1. Maximu výrazu Ax / x se také říká spektrální norma matice A. Je rovná největší singulární hodnotě. Budeme ji značit resp. A . Podle definice je Ax ≤ A x . Obdobné tvrzení lze odvodit pro minima, viz cvičení. Příklad 10.38. Matice A =   1 1 0 0 1 1 1 0 1   z příkladů 10.33, 10.36 má spektrální normu A = 2, tj. pro libovolný vektor x ∈ C3 platí Ax x ≤ 2 . Rovnost nastává právě tehdy, když o = x ∈ M4 = LO {v1} = LO (1, 1, 1)T (značení přebíráme z příkladu 10.33). Příklad 10.39. Pro matici A =   1 2 2 4 1 2   z příkladu 10.34 platí Ax x ≤ √ 30 . Rovnost nastává pro o = x ∈ LO {v1} = LO (1, 2)T . Spektrální norma matice A je A = √ 30. 414 LIBOR BARTO A JIŘÍ TŮMA 10.4.2. Numerická stabilita řešení soustavy lineárních rovnic s regulární maticí. Uvažujme soustavu Ax = b, kde A je reálná regulární matice, jejíž řešení je, jak víme, x = A−1 b. Řekněme, že vektor b získáme měřením, které je zatíženo chybou δb (výraz δb chápejte jako označení vektoru, nikoliv jako součin). Ve skutečnosti tedy neznámé hodnoty x budou zatížené chybou δx, kde A(x + δx) = b + δb , tj. δx = A−1 δb . Velikost chyby bude δx = A−1 δb ≤ A−1 δb . (Přičemž rovnost může nastat.) Pokud je spektrální norma A−1 vysoká, např. 106 , velikost chyby neznámých hodnot může být až 106 -krát větší než velikost chyby naměřených hodnot. To je neuspokojivé a je nejspíše potřeba změnit model. Všimněte si, že norma A−1 je rovná převrácené hodnotě nejmenší singulární hodnoty matice A (cvičení). V praxi nás spíše bude zajímat odhad na velikost relativní chyby δx / x neznámých hodnot v závislosti na velikosti relativní chyby δb / b měření. K tomu si všimneme b = Ax ≤ A x , takže δx x ≤ A−1 δb 1 x ≤ A−1 δb A b = A A−1 δb b . Číslu A A−1 se říká číslo podmíněnosti matice A, je rovno podílu největší a nejmenší singulární hodnoty. Relativní chybu řešení lze tedy odhadnout relativní chybou měření krát číslo podmíněnosti. Příklad 10.40. Číslo podmíněnosti matice A =   1 1 0 0 1 1 1 0 1   z příkladu 10.33 je 2/1 = 2. Relativní chyba řešení soustavy Ax = b bude tedy nejvýše dvakrát větší než relativní chyba měření pravé strany. 10.4.3. Aproximace maticí nižší hodnosti. Uvažujme komplexní nebo reálnou matici A typu m × n hodnosti r. Chceme najít matici ˆA stejného typu nad stejným tělesem dané hodnosti s < r, která co nejlépe aproximuje A ve smyslu, že spektrální norma A − ˆA je co nejmenší. To se nám může hodit při komprimaci dat nebo při zjednodušování matematických modelů. Nechť B = (v1, . . . , vn), C jsou ortonormální báze Cn a Cm (resp. Rn a Rm ) takové, že [fA]B C = diagm×n(σ1, . . . , σr), kde σ1 ≥ σ2 ≥ · · · ≥ σr > 0. Ukážeme, že hledaná nejlepší aproximace ˆA matice A je určená vztahem [f ˆA]B C = diagm×n(σ1, . . . , σs) . Při této volbě je [A − ˆA]B C = diagm×n(0, . . . , 0, σs+1, . . . , σr) . LINEÁRNÍ ALGEBRA 415 To znamená, že největší singulární číslo matice A − ˆA je σs+1, takže A − ˆA = σs+1 . Zbývá ukázat, že lepší normy nelze dosáhnout. Předpokládejme, že Q je matice stejného typu jako A nad stejným tělesem, jejíž hodnost je nejvýše s. Protože dim LO {v1, . . . , vs+1} = s + 1 a dim Ker Q = n − dim Im Q ≥ n − s, plyne z věty o dimenzi součtu a průniku, že se tyto dva prostory protínají. Uvažujme libovolný nenulový vektor x v jejich průniku a označme [x]B = (x1, . . . , xn), tj. Qx = o a xs+2 = · · · = xn = 0. Pak A − Q ≥ (A − Q)(x) x = Ax x = [Ax]C [x]B = (σ1x1, . . . , σs+1xs+1, 0, . . . , 0)T (x1, . . . , xs+1, 0, . . . , 0)T ≥ (σs+1x1, . . . , σs+1xs+1, 0, . . . , 0)T (x1, . . . , xs+1, 0, . . . , 0)T = σs+1 , Tedy norma je skutečně alespoň σs+1. V maticovém pohledu můžeme výsledek formulovat následujícím způsobem. Je-li singulární rozklad matice A roven A = UDV ∗ = U diagm×n(σ1, . . . , σr)V ∗ = σ1u1v∗ 1 + · · · + σrurv∗ r , kde σ1 ≥ · · · ≥ σr, pak nejlepší aproximace ˆA matice A maticí hodnosti s je ˆA = U diagm×n(σ1, . . . , σs)V ∗ = σ1u1v∗ 1 + · · · + σsusv∗ s . K uložení matice A typu m × n v počítači potřebujeme mn skalárů. K uložení aproximace ˆA stačí s(m+n+1) skalárů, protože máme s sčítanců a každý sčítanec obsahuje skalár σi, m-složkový vektor ui a n-složkový vektor vi. Toho lze využít pro komprimaci dat. Příklad 10.41. Nejlepší aproximace matice A =   1 1 0 0 1 1 1 0 1   z příkladu 10.33 maticí hodnosti 1 je ˆA = σ1u1v∗ 1 = 2 1 √ 3   1 1 1   1 √ 3 (1 1 1) = 2 3   1 1 1 1 1 1 1 1 1   . Aproximace je nejlepší v tom smyslu, že A − ˆA = σ2 = 1 a pro žádnou matici B hodnosti 1 neplatí A − B < 1. Aproximovat A maticí hodnosti 2 se nevyplatí, protože norma rozdílu A − ˆA by byla také rovna σ3 = 1, takže bychom v tomto smyslu nedosáhli žádného zlepšení. 10.4.4. Pseudoinverze. Uvažujme soustavu rovnic Ax = b, kde A je komplexní nebo reálná matice typu m × n. Soustava nemusí mít žádné řešení. V tom případě z tvrzení 8.91 víme, že aproximace řešení metodou nejmenších čtverců jsou právě všechna řešení příslušné soustavy normálních rovnic A∗ Aˆx = A∗ b . 416 LIBOR BARTO A JIŘÍ TŮMA Takových řešení může být více, z tvrzení 8.96 víme, že mezi nimi existuje právě jedno řešení z ˆxln s nejmenší normou. Je tvaru ˆxln = A∗ Az, kde z je libovolné řešení soustavy A∗ AA∗ Az = A∗ b . Pomocí spektrálního rozkladu najdeme vektor ˆxln jiným způsobem. Uvažme nejprve speciální případ, kdy A = D = diagm×n(σ1, . . . , σr), kde σ1, . . . , σr jsou nenulová reálná čísla. Chceme najít řešení soustavy D∗ Dx = D∗ b , s nejmenší normou. Označme x = (x1, . . . , xn) a b = (b1, . . . , bm). Pak D∗ Dx = diagn×n(σ1σ1, . . . , σrσr)(x1, . . . , xn)T = (σ1σ1x1, . . . , σrσrxr, 0, . . . , 0)T a D∗ b = diagn×m(σ1, . . . , σr)(b1, . . . , bm)T = (σ1b1, . . . , σrbr, 0, . . . , 0)T . Řešení x s nejmenší normou bude tedy (x1, . . . , xn)T = (b1σ−1 1 , . . . , brσ−1 r , 0, . . . , 0)T . Označíme-li D† = diagn×m(σ−1 1 , . . . , σ−1 r ) , můžeme vztah maticově zapsat ˆxln = D† b . Pomocí singulárního rozkladu A = UDV ∗ teď tento výsledek zobecníme na obecnou matici. Hledáme x s nejmenší normou, aby A∗ Ax = A∗ b V D∗ U∗ UDV ∗ x = V D∗ U∗ b V D∗ DV ∗ x = V D∗ U∗ b D∗ DV ∗ x = D∗ U∗ b . Protože V ∗ x = x (matice V ∗ je unitární nebo ortogonální), pro hledané x podle předchozího výsledku platí V ∗ ˆxln = D† U∗ b a vynásobením maticí V zleva získáme ˆxln = V D† U∗ b Matice A† = V D† U∗ je tzv. Mooreova-Penroseova pseudoinverze matice A. Při použití zápisu A = σ1u1v∗ 1 + · · · + σrurv∗ r můžeme psát A† = σ−1 1 v1u∗ 1 + · · · + σ−1 r vru∗ r . Ukázali jsme, že pro soustavu Ax = b je vektor ˆxln = A† b nejkratším vektorem, který je zároveň aproximací řešení metodou nejmenších čtverců. Speciálně, pokud Ax = b má právě jedno řešení, pak je tímto řešením vektor x = A† b (tj. pro regulární matice A je A† = A−1 ). Má-li soustava Ax = b více řešení, pak je x = A† b řešením s nejmenší normou. LINEÁRNÍ ALGEBRA 417 Příklad 10.42. Uvažujme soustavu Ax = b, A =   1 2 2 4 1 2   , b =   2 2 0   . Aproximace soustavy metodou nejmenších čtverců jsou řešení soustavy AT Ax = AT b: 6 12 12 24 x = 6 12 x ∈ 1 0 + LO −2 1 OBRAZEK Z obrázku je vidět, že aproximace s nejmenší normou má směr LO (1, 2)T a snadno vypočteme x = (1/5, 2/5)T . Toto řešení můžeme vypočítat pomocí pseudoinverze. V příkladu 10.34 jsme nalezli singulární rozklad A = σ1u1v∗ 1 = √ 30    1√ 6 2√ 6 1√ 6    1 √ 5 2 √ 5 . Pseudoinverze je A† = σ−1 1 v1u∗ 1 = 1 √ 30 1√ 5 2√ 5 1 √ 6 2 √ 6 1 √ 6 = 1 30 1 2 1 2 4 2 , takže hledaná aproximace je x = A† b = 1 30 1 2 1 2 4 2   2 2 0   = 1 5 1 2 . 418 LIBOR BARTO A JIŘÍ TŮMA Shrnutí desáté kapitoly (1) Komplexní (resp. reálná) čtvercová matice řádu n je unitárně diagonalizovatelná (resp. ortogonálně diagonalizovatelna), pokud existuje ortonormální báze B prostoru Cn (resp. Rn ) taková, že [fA]B B je diagonální matice. (2) Dvě čtvercové matice X, Y téhož řádu nad tělesem C (resp. R) se nazývají unitárně (resp. ortogonálně) podobné, pokud existuje unitární (resp. ortogonální) matice U taková, že Y = U−1 XU (což je rovno U∗ XU, protože U je unitární nebo ortogonální matice). (3) Nechť A je komplexní (resp. reálná) čtvercová matice řádu n. Pak následující tvrzení jsou ekvivalentní. (i) Matice A je unitárně (resp. ortogonálně) diagonalizovatelná. (ii) Aritmetický prostor Cn (resp. Rn ) má ortonormální bázi tvořenou vlastními vektory matice A. (iii) Matice A je unitárně (resp. ortogonálně) podobná diagonální matici (přičemž na diagonále jsou vlastní čísla matice A, každé tolikrát kolik je jeho algebraická=geometrická násobnost). (4) Je-li A komplexní (resp. reálná) čtvercová matice řádu n, pak jsou následující tvrzení ekvivalentní. (a) Matice A je unitárně (resp. ortogonálně) diagonalizovatelná. (b) Matice A • má n vlastních čísel včetně algebraických násobností, • geometrická násobnost každého vlastního čísla matice A se rovná jeho algebraické násobnosti a • pro libovolná dvě různá vlastní čísla λi, λj matice A platí Mλi ⊥ Mλj . (5) Je-li A komplexní matice typu m × n a x ∈ Cm , y ∈ Cn , pak A∗ x · y = x · Ay , (6) Nechť A komplexní čtvercová matice řádu. Pak λ ∈ C je vlastní číslo matice A právě tehdy, když je λ vlastní číslo matice A∗ . Speciálně, reálná čtvercová matice A a transponovaná matice AT mají stejná reálná vlastní čísla. (7) Komplexní nebo reálná čtvercová matice A se nazývá normální, pokud A∗ A = AA∗ (v reálném případě můžeme psát AT A = AAT ). Příklady komplexních normálních matic jsou unitární matice a hermitovské matice, dále například diagonální matice a antihermitovské matice, tj. matice splňucí −A∗ = A. Příklady reálných normálních matic zahrnují všechny ortogonální, symetrické, diagonální a antisymetrické matice. (8) Je-li A normální komplexní matice řádu n, pak (i) pro libovolné t ∈ C je matice A − tIn normální, (ii) libovolná matice X unitárně podobná A je normální. (9) Nechť A je normální matice řádu n a v ∈ Cn . Pak platí Av = A∗ v . (10) Nechť A je normální komplexní matice řádu n, λ ∈ C a v ∈ Cn . Pak v je vlastní vektor matice A příslušný vlastnímu číslu λ právě tehdy, když je v vlastní vektor matice A∗ příslušný vlastnímu číslu λ. (11) Spektrální věta pro normální matice. Nechť A je čtvercová komplexní matice. Pak následující tvrzení jsou ekvivalentní. LINEÁRNÍ ALGEBRA 419 (a) Matice A je unitárně diagonalizovatelná. (b) Matice A je normální. (12) Spektrální věta pro hermitovské matice. Nechť A je komplexní čtvercová matice. Pak následující tvrzení jsou ekvivalentní. (a) Matice A je unitárně diagonalizovatelná a všechna její vlastní čísla jsou reálná. (b) Matice A je hermitovská. (13) Spektrální věta pro symetrické matice. Nechť A je reálná čtvercová matice. Pak následující tvrzení jsou ekvivalentní. (a) Matice A je ortogonálně diagonalizovatelná. (b) Matice A je symetrická. (14) Čtvercová matice A řádu n nad C (resp. R) se nazývá • pozitivně definitní, pokud je hermitovská (resp. symetrická) a pro všechna o = x ∈ Cn (resp. o = x ∈ Rn ) platí x∗ Ax > 0; • pozitivně semidefinitní, pokud je hermitovská (resp. symetrická) a x∗ Ax ≥ 0. (15) Nechť A je hermitovská (nebo symetrická) matice řádu n. Pak A je pozitivně definitní (resp. semidefinitní) právě tehdy, když jsou všechna vlastní čísla matice A kladná (resp. nezáporná). (16) Spektrální věta pro pozitivně (semi)definitní matice. Nechť A je komplexní čtvercová matice. Pak následující tvrzení jsou ekvivalentní. (a) Matice A je unitárně diagonalizovatelná a všechna její vlastní čísla jsou kladná reálná (resp. nezáporná reálná). (b) Matice A je pozitivně definitní (resp. semidefinitní). (17) Pro libovolnou komplexní matici A typu m × n je matice A∗ A pozitivně semidefinitní. Je-li navíc A čtvercová regulární matice, pak A∗ A je pozitivně definitní. Naopak, každou pozitivně semidefinitní komplexní matici B lze psát ve tvaru B = A∗ A, kde A je čtvercová matice. V případě, že B je pozitivně definitní, je nutně A regulární. (18) Spektrální věta pro unitární matice. Nechť A je komplexní čtvercová matice. Pak následující tvrzení jsou ekvivalentní. (a) Matice A je unitárně diagonalizovatelná a pro všechna vlastní čísla λ ∈ C platí |λ| = 1. (b) Matice A je unitární. (19) Každé ortogonální operátor f na R2 je buď rotace nebo reflexe. Rotace je to právě když det[f]B B = 1 a reflexe je to právě když det[f]B B = −1, kde B je libovolná báze R2 . Složení dvou rotací v R2 je opět rotace, složení dvou reflexí je rotace a složení rotace s reflexí (v libovolném pořadí) je opět nějaká reflexe. (20) Každé ortogonální zobrazení v euklidovském prostoru R3 je buď rotace kolem nějaké osy, reflexe vzhledem k nějaké rovině a nebo složení rotace s reflexí. Rotace je to právě tehdy, když determinant matice tohoto zobrazení vzhledem k jakékoliv bázi je rovný 1. Složení dvou rotací v R3 je zase rotace v R3 , složení dvou reflexí je rotace (osa rotace je rovná průniku rovin reflexí). 420 LIBOR BARTO A JIŘÍ TŮMA (21) Věta o singulárním rozkladu. Nechť A je komplexní (resp. reálná) matice typu m×n hodnosti r. Pak existují ortonormální báze B = (v1, . . . , vn), C = (u1, . . . , um) prostorů Cn , Cm (resp. Rn , Rm ) takové, že (i) (singulární rozklad, geometrická verze) [fA]B C je obdélníková diagonální matice [fA]B C = D = diagm×n(σ1, . . . , σr) , kde σ1, . . . , σr > 0 , (ii) (singulární rozklad, algebraická verze) platí A = UDV −1 = UDV ∗ , kde U, V jsou unitární (resp. ortogonální) matice U = [id]C Km = (u1| . . . |um), V = [id]B Kn = (v1| . . . |vn) a (iii) (dyadický rozvoj) platí A = σ1u1v∗ 1 + · · · + σrurv∗ r . Navíc v této situaci (iv) σ1, . . . , σr jsou druhé odmocniny vlastních čísel matice A∗ A, (v) pro každé i ∈ {1, . . . , r} je vi vlastní vektor matice A∗ A příslušný vlastnímu číslu σ2 i , (vi) Ker A = LO {vr+1, . . . , vn} = LO {v1, . . . , vr} ⊥ , (vii) Im A = LO {u1, . . . , ur} = LO {ur+1, . . . , um} ⊥ . (22) Nechť A je komplexní nebo reálná matice. Kladné reálné číslo σ nazýváme singulární hodnota matice A, pokud σ2 je vlastní číslo matice A∗ A. (23) Singulární hodnoty normálního operátoru jsou rovny absolutním hodnotám jeho nenulových vlastních čísel. (24) Nechť A je komplexní (resp. reálná) matice typu m × n. Pak pro libovolný vektor o = x ∈ Cn (resp. o = x ∈ Rn ) platí Ax x ≤ σ1 , kde σ1 je největší singulární hodnota matice A. Rovnost nastává právě tehdy, když x je nenulový vlastní vektor matice A∗ A příslušný vlastnímu číslu σ2 1. (25) Maximu výrazu Ax / x se říká spektrální norma matice A. Je rovná největší singulární hodnotě. Značí se resp. A . Platí Ax ≤ A x . (26) Máme-li soustavu Ax = b, kde A je reálná regulární matice, jejíž vektor b je zatíženo chybou δb, pak pro velikost chyby δx platí δx ≤ A−1 δb . a pro velikost relativní chyby platí δx x = A A−1 δb b . Číslu A A−1 se říká číslo podmíněnosti matice A, je rovno podílu největší a nejmenší singulární hodnoty. LINEÁRNÍ ALGEBRA 421 (27) Je-li dyadický rozvoj reálné nebo komplexní matice A hodnosti r A = σ1u1v∗ 1 + · · · + σrurv∗ r , pak pro s < r je ˆA = σ1u1v∗ 1 + · · · + σsusv∗ s je nejlepší aproximace matice A maticí hodnosti nejvýše s. (28) Je-li A = UDV ∗ singulární rozklad komplexní nebo reálné matice A, pak Matice A† = V D† U∗ je Mooreova-Penroseova pseudoinverze matice A. (29) Pro soustavu Ax = b je vektor A† b nejkratším vektorem, který je zároveň aproximací řešení soustavy Ax = b metodou nejmenších čtverců. 422 LIBOR BARTO A JIŘÍ TŮMA 11. Bilineární formy a kvadratické formy Cíl. Bilineární formu lze chápat jako zobecnění skalárního součinu. Ponecháme pouze vlastnosti linearity v každé složce a vzdáme se symetrie a pozitivní definitnosti. Taková zobecnění skalárního součinu se používají například ve fyzice, konkrétně ve speciální teorii relativity. Naší hlavní motivací pro studium bilineárních forem je porozumění kvadratickým formám, které určují „kvadratické útvary . Ukážeme, že kvadratické formy vzájemně jednoznačně odpovídají symetrickým bilineárním formám. Hlavní náplní bude nalezení báze, vzhledem ke které má symetrická bilineární forma, a tím i příslušná kvadratická forma, jednoduchý tvar. To nám umožní analyzovat tvar kvadratických útvarů. Bilineární forma je zobrazení přiřazující každé dvojici vektorů prvek tělesa, které je lineární v obou složkách. Definice 11.1. Nechť V je vektorový prostor nad tělesem T. Bilineární forma na prostoru V je zobrazení f : V × V → T, které je lineární v obou složkách, tj. pro libovolné u, v, w ∈ V , t ∈ T platí (1) f(u + v, w) = f(u, w) + f(v, w), f(w, u + v) = f(w, u) + f(w, v) a (2) f(tv, w) = t f(v, w), f(v, tw) = tf(v, w). Příklad 11.2. Bilineární formou na R3 je například zobrazení f((x1, x2, x3)T , (y1, y2, y3)T ) = 2x1y1 − 3x1y2 + 5x1y3 + 6x2y1 + x2y3 + 10x3y2 = (x1 x2 x3)   2 −3 5 6 0 1 0 10 0     y1 y2 y3   . Příklad 11.3. Obecněji, pro libovolnou čtvercovou matici A řádu n nad T je zobrazení Tn × Tn → T definované vztahem f(x, y) = xT Ay bilineární forma na Tn . Uvidíme, že každá bilineární forma na Tn je tohoto tvaru. Příklad 11.4. Libovolný skalární součin na reálném vektorovém prostoru V je bilineární forma na V (která je navíc symetrická a pozitivně definitní). Bilineární formy tedy můžeme chápat jako zobecnění skalárního součinu. Axiomy (1) a (2) jsme využili k odvození formulky pro standardní skalární součin. Obecněji, pro libovolný operátor g na reálném prostoru V se skalárním součinem , je f(x, y) = x, g(y) bilineární forma. Můžeme se na ní dívat jako na skalární součin zdeformovaný v druhé složce operátorem. Pro standardní skalární součin na V = Rn a g = fA máme x, g(y) = x · Ay = xT Ay, což je stejná bilineární forma jako v předchozím příkladu. Vyjádření ve tvaru x · Ay bylo důležité v předchozí kapitole o unitární diagonalizaci. Pozor! Skalární součin na komplexním vektorovém prostoru bilineární forma není — vlastnost f(tu, v) = tf(u, v) bychom museli nahradit vlastností f(tu, v) = tf(u, v). Takovým formám se říká seskvilineární a nebudeme se jimi podrobněji zabývat. LINEÁRNÍ ALGEBRA 423 Příklad 11.5. Zobrazení T2 × T2 → T definované vztahem f(x, y) = det (x|y) je bilineární forma na T2 . Axiomy (1) a (2) byly také základní vlastnosti použité při odvození vzorce pro determinant matic 2 × 2. Pro matice vyšších řádů je determinant příkladem tzv. multilineární formy, tedy zobrazení V × V × · · · × V → T lineární v každé složce. My využijeme bilineární formy hlavně při studiu kvadratických forem. Definice 11.6. Je-li f bilineární forma na vektorovém prostoru V nad tělesem T, pak zobrazení f2 : V → T definované předpisem f2(v) = f(v, v) pro každé v ∈ V nazýváme kvadratickou formou vytvořenou bilineární formou f. Rovněž říkáme, že f2 je kvadratická forma příslušná bilineární formě f. Příklad 11.7. Pro bilineární formu na R3 z příkladu 11.2 platí f2((x1, x2, x3)T ) = 2x2 1 − 3x1x2 + 5x1x3 + 6x2x1 + x2x3 + 10x3x2 = 2x2 1 + 3x1x2 + 5x1x3 + 11x2x3 . Maticově, f2(x) = xT Ax , kde A je matice řádu 3 ze stejného příkladu. Příklad 11.8. Je-li f skalární součin na reálném vektorovém prostoru V (tj. f(x, y) = x, y ), pak f2(x) = x 2 . Kvadratické formy se vyskytují při analýze funkcí více proměnných. Například nás zajímá, jak vypadá daná hladká funkce h : R2 → R v okolí nějakého bodu d ∈ R2 , řekněme d = (0, 0)T . Velmi hrubá aproximace je nahradit funkci její funkční hodnotou c = h(d) h(x1, x2) ≈ c . Přesnější je lineární aproximace, kdy nahradíme funkci její tečnou rovinou h(x1, x2) ≈ c + b1x1 + b2x2 . Nekonstantní část g(x1, x2) = b1x1 +b2x2 je lineární forma na R2 , koeficienty b1, b2 se vypočtou pomocí parciálních derivací. Ještě přesnější je aproximace polynomem stupně 2: h(x1, x2) ≈ c + b1x1 + b2x2 + a11x2 1 + 2a12x1x2 + a22x2 2 Kvadratická část f(x1, x2) = a11x2 1 + 2a12x1x2 + a22x2 2 je kvadratická forma na R2 (koeficienty se vypočtou z druhých parciálních derivací). Tato aproximace je důležitá například při hledání extrémů. Proto nás zajímá, jak vypadá graf kvadratické funkce více proměnných. Obecněji nás zajímá, jak vypadá implicitně zadaný kvadratický útvar, například množina bodů v R3 splňujících rovnici 10x2 1 + 13x2 2 + 13x2 3 + 4x1x2 + 4x1x3 + 8x2x3 = 9 . Základní myšlenka na řešení takových problémů je stejná jako u lineárních operátorů: najít bázi, vzhledem ke které je bilineární forma přehledná. 424 LIBOR BARTO A JIŘÍ TŮMA 11.1. Matice. Podobně jako v úvodu do determinantů spočítáme, že každá bilineární forma je určena obrazy dvojic prvků libovolné báze. To nám dává maticovou reprezentaci bilineárních forem a tzv. analytické vyjádření. Nechť f je bilineární forma na V a B = (v1, v2, . . . , vn) je báze prostoru V. Vezmeme dva vektory x, y ∈ V a vyjádříme f(x, y) pomocí souřadnic vektorů x, y v bázi B a pomocí hodnot aij = f(vi, vj): [x]B = (x1, x2, . . . , xn)T , [y]B = (y1, y2, . . . , yn)T . f(x, y) = f(x1v1 + · · · + xnvn, y1v1 + · · · + ynvn) = f n i=1 xivi, n i=1 yivi = n i=1 xif  vi, n j=1 yjvj   = n i=1 n j=1 xiyjf(vi, vj) = n i=1 n j=1 xiyjaij = (x1 x2 . . . xn)      a11 a12 . . . a1n a21 . . . . . . . . . ... ... an1 an2 . . . ann           y1 y2 ... yn      To vede k pojmu matice bilineární formy vzhledem k bázi. Definice 11.9. Nechť B = (v1, . . . , vn) je báze vektorového prostoru V nad tělesem T a f je bilineární forma na V. Maticí bilineární formy f vzhledem k B rozumíme čtvercovou matici řádu n nad T, která má na pozici (i, j) prvek f(vi, vj). Tuto matici značíme [f]B. Tvrzení 11.10. Je-li B báze konečně generovaného prostoru V, f bilineární forma na V a x, y ∈ V , pak f(x, y) = [x]T B[f]B[y]B . Jsou-li souřadnice vektorů [x]B = (x1, . . . , xn)T , [y]B = (y1, . . . , yn)T a [f]B = (aij)n×n, pak f(x, y) = n i=1 n j=1 aijxiyj . Tomuto vyjádření také říkáme analytické vyjádření bilineární formy f. Naopak, každou bilineární formu na konečně generovaném prostoru můžeme vztahem f(x, y) = [x]T BA[y]B definovat a matice A je tímto určená jednoznačně: Tvrzení 11.11. Nechť V je konečně generovaný prostor nad tělesem T, B = (v1, . . . , vn) je jeho báze a A je čtvercová matice nad T řádu n. Pak zobrazení f : V × V → T definované vztahem f(x, y) = [x]T BA[y]B pro každé x, y ∈ V je bilineární forma na V a platí [f]B = A. LINEÁRNÍ ALGEBRA 425 Důkaz. Pro libovolné u, v, w platí f(u + v, w) = [u + v]T BA[w]B = ([u]T B + [v]T B)A[w]B = [u]T BA[w]B + [v]T BA[w]B = f(u, w) + f(v, w) . Ostatní axiomy se ověří podobně. Dosazením x = vi a y = vj získáme f(vi, vj) = [vi]T BA[vj]B = eT i Aej , což je prvek na místě (i, j) v matici A, takže skutečně [f]B = A. Při pevně zvolené bázi B tedy takto bilineární formy na V vzájemně jednoznačně odpovídají čtvercovým maticím nad T řádu n. Příklad 11.12. Zobrazení f : R2 × R2 → R definované předpisem f((x1, x2)T , (y1, y2)T ) = 2x1y1 + 4x2y1 = (x1 x2) 2 0 4 0 y1 y2 je bilineární forma na R2 . Jeho matice vzhledem ke kanonické bázi je [f]K2 = 2 0 4 0 . Vezmeme jinou bázi R2 , například B = 1 −1 , 2 0 . Matice f vzhledem k B je podle definice [f]B = f((1, −1)T , (1, −1)T ) f((1, −1)T , (2, 0)T ) f((2, 0)T , (1, −1)T ) f((2, 0)T , (2, 0)T ) = −2 −4 4 8 , kde například prvek na místě (1, 2) spočteme f((1, −1)T , (2, 0)T ) = (1, −1) 2 0 4 0 2 0 = (1, −1) 4 8 = −4 . Matice bilineární formy f vzhledem k B nám umožňuje rychle spočítat f((x1, x2)T , (y1, y2)T ) známe-li vyjádření vektorů vzhledem k bázi B: [(x1, x2)T ]B = (x1, x2)T , [(y1, y2)T ]B = (y1, y2)T , f((x1, x2)T , (y1, y2)T ) = (x1 x2) −2 −4 4 8 y1 y2 = −2x1y1 − 4x1y2 + 4x2y1 + 8x2y2 . Matici [f]B spočítáme ještě jedním způsobem, který nám zároveň ukáže, jak se obecně mění matice bilineární formy při přechodu od báze k bázi. Označme X matici přechodu od B ke kanonické bázi K2. X = [id]B K2 = 1 2 −1 0 426 LIBOR BARTO A JIŘÍ TŮMA Pro libovolný vektor z ∈ V platí [z]K2 = X[z]B a transponováním získáme [z]T K2 = [z]T BXT . Pak f(x, y) = (x1 x2) 2 0 4 0 y1 y2 = (x1, x2) 1 −1 2 0 2 0 4 0 1 2 −1 0 y1 y2 = (x1, x2) −2 −4 4 8 y1 y2 Z jednoznačnosti maticového vyjádření f nyní plyne, že matice f vzhledem k B je stejná jako u předchozího výpočtu. Zobecněním výpočtu v předchozím příkladu dostáváme vztah o změně matice při přechodu od báze k bázi. Tvrzení 11.13. Nechť f je bilineární forma na vektorovém prostoru V, B a C jsou báze V a X = [id]C B je matice přechodu od C k B. Pak [f]C = XT [f]BX. Důkaz. Pro libovolné vektory x, y ∈ V platí f(x, y) = [x]T B[f]B[y]B = ([id]C B[x]C)T [f]B([id]C B[y]C) = [x]T CXT [f]BX[y]C . Z jednoznačnosti matice bilineární formy vzhledem k bázi nyní plyne [f]C = XT [f]BX. Čtvercová matice A řádu n má teď pro nás dva geometrické významy: lineární operátor fA na Tn a bilineární forma xT Ay na Tn . Všimněte si rozdílu při změně báze. Je-li R matice přechodu od B ke kanonické bázi, pak matice příslušného lineárního operátoru vzhledem k B je R−1 AR, zatímco matice příslušné bilineární formy vzhledem k B je RT AR. 11.2. Symetrické a antisymetrické formy. Kvadratická forma může být vytvořena různými bilineárními formami, například bilineární formy f((x1, x2)T , (y1, y2)T ) = 2x1y1+3x1y2+x2y1, g((x1, x2)T , (y1, y2)T ) = 2x1y1+4x2y1 vytváří stejnou kvadratickou formu f2((x1, x2)T ) = g2((x1, x2)T ) = 2x2 1 + 4x1x2 V této části si, v případě těles charakteristiky různé od dva, jednoznačně rozložíme každou bilineární formu na součet symetrické a antisymetrické, a ukážeme, že vytvořená kvadratická forma je určena symetrickou částí. Definice 11.14. Bilineární forma f na vektorovém prostoru V se nazývá • symetrická, pokud pro libovolné x, y ∈ V platí f(x, y) = f(y, x); • antisymetrická, pokud pro libovolné x, y ∈ V platí f(x, y) = −f(y, x). Příkladem symetrické formy je skalární součin na reálném vektorovém prostoru. Zda je forma symetrická (antisymetrická) poznáme snadno z matice vzhledem k libovolné bázi. Tvrzení 11.15. Nechť V je konečně generovaný vektorový prostor, B je báze V a f je bilineární forma na V. Pak • f je symetrická právě tehdy, když je [f]B symetrická matice; • f je antisymetrická právě tehdy, když je [f]B antisymetrická matice. LINEÁRNÍ ALGEBRA 427 Důkaz. Dokážeme první ekvivalenci, druhá se dokáže podobně. Označme B = (v1, . . . , vn). Prvek na místě (i, j) v matici [f]B je podle definice rovný f(vi, vj). Je-li tedy f symetrická, pak prvek na místě (i, j) je stejný jako prvek na místě (j, i), takže [f]B je symetrická matice. Je-li naopak [f]B symetrická matice, pak pro libovolné vektory x, y ∈ V platí f(x, y) = [x]T B[f]B[y]B = [x]T B[f]T B[y]B = ([x]T B[f]T B[y]B)T = [y]T B[f]B[x]B = f(y, x) , kde ve třetí rovnosti jsme využili, že (t)T = t pro libovolný skalár t ∈ T. Bilineární formy můžeme přirozeným způsobem sčítat a násobit skalárem. Jsou-li f, g dvě bilineární formy na V a t ∈ T pak definujeme (f + g)(x, y) = f(x, y) + g(x, y), (tf)(x, y) = tf(x, y). S těmito operacemi tvoří množina všech bilineárních forem na V vektorový prostor. Je-li B konečná báze V, snadno se ověří vztahy [f + g]B = [f]B + [g]B, [tf]B = t[f]B . Zamyslíme se nyní, jak rozložit danou bilineární formu f na prostoru V nad tělesem T na součet symetrické formy fs a antisymetrické formy fa. Pro konečně generované prostory je tento úkol ekvivalentní rozkladu čtvercové matice na součet symetrické a antisymetrické. Pro libovolné dva vektory x, y ∈ V chceme, aby platilo f(x, y) = fs(x, y) + fa(x, y) f(y, x) = fs(y, x) + fa(y, x) = fs(x, y) − fa(x, y) Dostali jsme pro fs(x, y) a fa(x, y) soustavu dvou rovnic s řešením fs(x, y)) = 1 2 (f(x, y) + f(y, x)), fa(x, y)) = 1 2 (f(x, y) − f(y, x)) . Je snadné nahlédnout, že bilineární forma fs definovaná tímto předpisem je symetrická a fa je antisymetrická. Problém je pouze v případě, kdy soustava má singulární matici, tj. v případě, že 1 = −1, ekvivalentně, charakteristika tělesa T je 2. V opačném případě z postupu vyplývá, že fs, fa jsou určeny jednoznačně. Dokázali jsme tak následující tvrzení. Tvrzení 11.16. Nechť V je vektorový prostor nad tělesem T charakteristiky různé od 2. Pak každou bilineární formu f na V lze psát jako součet f = fs + fa, kde fs je symetrická a fa je antisymetrická. Tento rozklad je jednoznačný a platí fs(x, y) = 1 2 (f(x, y) + f(y, x)), fa(x, y) = 1 2 (f(x, y) − f(y, x)) . Množina symetrických bilineárních forem na V i množina antisymetrických bilineárních forem na V tvoří podprostory prostoru všech bilineárních forem na V (cvičení). Tvrzení lze formulovat také tak, že vektorový prostor všech bilineárních forem na V je direktním součtem těchto dvou podprostorů. Příklad 11.17. Bilineární forma f na R2 f((x1, x2)T , (y1, y2)T ) = 2x1y1 + 4x2y1 + 2x1y2 = (x1 x2) 2 2 4 0 y1 y2 428 LIBOR BARTO A JIŘÍ TŮMA je součtem fs((x1, x2)T , (y1, y2)T ) = 2x1y1 + 3x2y1 + 3x1y2 = (x1 x2) 2 3 3 0 y1 y2 fa((x1, x2)T , (y1, y2)T ) = −x1y2 + x2y1 = (x1 x2) 0 −1 1 0 y1 y2 To odpovídá maticovému vztahu 2 2 4 0 = 2 3 3 0 + 0 −1 1 0 Pro tělesa charakteristiky dva, například T = Z2, je teorie bilineárních forem odlišná, ale tímto případem se nebudeme zvlášť zabývat. Poznamenejme jen, že pojmy symetrická a antisymetrická v tomto případě splývají (cvičení). Bilineární formy využíváme mimo jiné ke studiu příslušných kvadratických forem. Tato kvadratická forma závisí pouze na symetrické části bilineární formy: Tvrzení 11.18. Nechť f, g jsou bilineární formy na vektorovém prostoru V nad tělesem charakteristiky různé od 2. Pak f2 = g2 právě tehdy, když fs = gs. Navíc fs(x, y) = 1 2 (f2(x + y) − f2(x) − f2(y)) . Důkaz. Je-li g antisymetrická forma, pak pro libovolný vektor x ∈ V platí g(x, x) = −g(x, x). Pokud je charakteristika tělesa různá od dva, vyplývá z tohoto vztahu g2(x) = g(x, x) = 0. Pro libovolnou bilineární formu f pak máme f2(x) = f(x, x) = fs(x, x) + fa(x, x) = fs(x, x) . Vytvořená kvadratická forma tedy závisí jen na symetrické části. Odtud plyne implikace zprava doleva. Vzorec z tvrzení ověříme přímočarým výpočtem. 1 2 (f2(x + y) − f2(x) − f2(y)) = 1 2 (fs(x + y, x + y) − fs(x, x) − fs(y, y)) = 1 2 (fs(x, x) + fs(x, y) + fs(y, x) + fs(y, y) − fs(x, x) − fs(y, y)) = 1 2 (2fs(x, y)) = fs(x, y) Implikace zleva doprava je nyní zřejmá. Vztah v předchozí větě je varianta polarizační identity z tvrzení 8.32. Dává explicitní vzorec na výpočet hodnoty symetrické bilineární formy pomocí příslušné formy kvadratické. Tuto jednoznačně určenou symetrickou bilineární formu také nazýváme symetrická forma příslušná dané kvadratické formě. Příklad 11.19. Uvažujme kvadratickou formu f2((x1, x2)T ) = 2x2 1 + 7x1x2 + 5x2 2 Pro nalezení symetrické formy fs není třeba používat vzorec z předchozího tvrzení, stačí si uvědomit z jakých členů bilineární formy pochází členy f2. Je-li f((x1, x2)T , (y1, y2)T ) = a11x1y1 + a12x1y2 + a21x2y1 + a22x2y2 LINEÁRNÍ ALGEBRA 429 a f2((x1, x2)T ) = f((x1, x2)T , (x1, x2)T ), pak koeficient u x2 1 v kvadratické formě f2 musí pocházet ze členu a11x1y1, tedy a11 = 2. Podobně a22 = 5. Koeficient u x1x2 vznikne součtem a12 + a21 a kvůli symetrii je a12 = a21 = 7/2. Takže je fs((x1, x2)T , (y1, y2)T ) = 2x2 1+3,5x1y2+3,5x2y1+5x2y2 = (x1 x2) 2 3,5 3,5 5 y1 y2 . 11.3. Ortogonální báze. V celém zbytku kapitoly se budeme věnovat pouze symetrickým formám nad tělesy charakteristiky různé od 2. Budeme se snažit najít bázi vzhledem k níž má daná bilineární forma co nejjednodušší matici, ideálně diagonální. Narozdíl od lineárních operátorů to vždy lze provést. Symetrické bilineární formy vzájemně jednoznačně odpovídají kvadratickým. Všechny pojmy a výsledky pro symetrické bilineární pojmy budeme proto používat i pro příslušné kvadratické formy. Co pro bilineární formu f znamená, že matice vzhledem k bázi B = (v1, v2, . . . , vn) je diagonální? Podle definice musí pro dva různé vektory vi, vj, i = j platit f(vi, vj) = 0. To motivuje pojem ortogonality vektorů. Definice 11.20. Nechť f je symetrická bilineární forma na V a x, y ∈ V . Říkáme, že x a y jsou f-ortogonální, pokud f(x, y) = 0. Zapisujeme x ⊥f y. Báze B = (v1, . . . vn) prostoru V se nazývá f-ortogonální, pokud je [f]B diagonální, tj. pro libovolné i, j ∈ {1, 2, . . . , n}, i = j, jsou vektory vi, vj f-ortogonální. (Pokud je f zřejmé z kontextu, říkáme někdy pouze ortogonální.) V případě, že f je skalární součin na reálném vektorovém prostoru, se pojmy shodují s již zavedenými. Na hledání ortogonální báze v takovém případě můžeme použít například Gram-Schmidtův ortogonalizační proces. Pro obecnou symetrickou bilineární formu lze zavést obdoby dalších pojmů z kapitoly o skalárním součinu (jako například ortogonální doplněk), teorie je ale o něco složitější a nebudeme se jí věnovat. Má-li f vzhledem k B diagonální matici diag(a1, . . . , an), pak pro příslušnou kvadratickou formu platí f2(x) = a1x2 1 + · · · + anx2 n, [x]B = (x1, . . . , xn) Z takového vyjádření lépe vidíme, jak daná kvadratická forma vypadá. Na obrázku jsou znázorněny grafy několika kvadratických forem na R2 . OBRAZEK 11.3.1. Hodnost. Je-li f bilineární forma na konečně generovaném prostoru V a B, C jsou báze prostoru V, pak podle tvrzení 11.13 platí [f]C = XT [f]BX, kde X je matice přechodu od C k B. Protože X je regulární, podle důsledku 5.93 o hodnosti součinu s regulární maticí platí r([f]C) = r([f]B). To nám umožňuje zavést hodnost bilineární formy. Definice 11.21. Hodností bilineární formy f na konečně generovaném prostoru V rozumíme hodnost její matice vzhledem k libovolné bázi, značíme r(f). Je-li matice symetrické bilineární formy f vzhledem k B diagonální matice D = [f]B, pak hodnost r(D) je rovná počtu nenulových prvků na diagonále. Počet nul tedy nezávisí na volbě f-ortogonální báze. 430 LIBOR BARTO A JIŘÍ TŮMA 11.3.2. Metoda symetrických úprav. Předpokládejme, že f je bilineární forma na vektorovém prostoru V dimenze n nad tělesem T, C je báze V a A = [f]C. Vytvoříme matici typu n×2n tak, že vedle A napíšeme jednotkovou matici, tj. (A|In). S touto maticí provádíme tzv. symetrické úpravy. Jedna symetrická úprava sestává z elementární řádkové úpravy a následné „stejné úpravy na sloupce. Máme tedy tři typy symetrických úprav: • prohození i-tého a j-tého řádku, následné prohození i-tého a j-tého sloupce, • vynásobení i-tého řádku nenulovým prvkem t ∈ T, následné vynásobení i-tého sloupce prvkem t, • přičtení t-násobku i-tého řádku k j-tému, kde t ∈ T a i = j, následné přičtení t-násobku i-tého sloupce k j-tému. Řádkové úpravy provádíme s celými řádky (vektory z T2n ), sloupcové úpravy se vždy týkají jen levého bloku matice. Odvodíme maticový popis symetrické úpravy matice (X|Y ) typu n × 2n. Označíme E matici příslušné řádkové úpravy. Po provedení řádkové úpravy vznikne matice E(X|Y ) = (EX|EY ). Příslušná sloupcová úprava odpovídá násobení maticí ET zprava, takže po provedení obou úprav máme matici (EXET |EY ). Začneme-li tedy s maticí (A|In) a provedeme několik symetrických úprav, dostaneme posloupnost matic (A|In), (E1AET 1 |E1), (E2E1AET 1 ET 2 |E2E1), . . . , (Ek . . . E1AET 1 . . . ET k |Ek . . . E1) . Z maticového popisu je vidět, že sloupcové úpravy příslušné řádkovým úpravám není nutné provádět okamžitě. Můžeme je provést kdykoliv, musíme ale zachovat pořadí. Rovněž si všimněte, že po každém kroku je levý blok symetrická matice. Označme F = (Ek . . . E1)T , tj. poslední matice je (FT AF|FT ). Matice F je regulární, protože je transponovaným součinem elementárních matic. Označme B bázi V takovou, že [id]B C = F, tj. vyjádření vektorů báze B vzhledem k bázi C je ve sloupcích matice F, neboli v řádcích pravého bloku výsledné matice (FT AF|FT ). Podle tvrzení 11.13 o změně matice bilineární formy při změně báze je matice FT AF v levém bloku matice (FT AF|FT ) rovná matici f vzhledem k B. Tyto úvahy vedou na metodu diagonalizace bilineární formy f. Symetrickými úpravami převedeme matici (A|In) do tvaru (D|G), kde D je diagonální. V řádcích matice G pak máme vyjádření vektorů jisté báze B v původní bázi C a platí [f]B = D, tj. speciálně B je f-ortogonální. Jak převod do diagonálního tvaru provádět ukážeme na příkladě. Příklad 11.22. Najdeme f-ortogonální bázi pro bilineární formu f na Z3 5. [f]K3 = A =   0 1 2 1 0 1 2 1 0   Upravujeme matici (A|In) symetrickými úpravami do tvaru (D|G), kde D je dia- gonální.   0 1 2 1 0 0 1 0 1 0 1 0 2 1 0 0 0 1   ∼   1 1 3 1 1 0 1 0 1 0 1 0 2 1 0 0 0 1   ∼   2 1 3 1 1 0 1 0 1 0 1 0 3 1 0 0 0 1   ∼   2 1 3 1 1 0 0 2 2 2 3 0 0 2 3 1 1 1   ∼   2 0 0 1 1 0 0 2 2 2 3 0 0 2 3 1 1 1   LINEÁRNÍ ALGEBRA 431 ∼   2 0 0 1 1 0 0 2 2 2 3 0 0 0 1 4 3 1   ∼   2 0 0 1 1 0 0 2 0 2 3 0 0 0 1 4 3 1   Komentář k úpravám: V prvním kroku potřebujeme na pivotní pozici (1, 1) nenulový prvek, docílíme toho přičtením druhého řádku k prvnímu (a následnou symetrickou úpravou – přičtení druhého sloupce k prvnímu). Všimněte si, že prohozením řádků v tomto případě ničeho nedocílíme. Kdybychom například prohodili první a druhý řádek, a následně symetricky první a druhý sloupec, na pozici (1, 1) by byla stále nula. Po této úpravě jsme přičetli 2-násobek prvního řádku ke druhému a první řádek ke třetímu, a symetricky se sloupci (tím se pouze vynulují pozice (1, 2) a (1, 3)). Nakonec jsme přičetli 4-násobek druhého řádku ke třetímu, a symetricky se sloupci. Z diskuze nad příkladem vyplývá, že B = ((1, 1, 0)T , (2, 3, 0)T , (4, 3, 1)T ) je fortogonální báze a [f]B = diag(2, 2, 1). Věta 11.23. Každá symetrická bilineární forma f na konečně generovaném vektorovém prostoru nad tělesem charakteristiky různé od 2 má f-ortogonální bázi. Důkaz. Podle diskuze nad příkladem se zbývá přesvědčit, že každou čtvercovou matici A řádu n nad tělesem T lze symetrickými úpravami převést na diagonální tvar. Budeme postupně elimovat řádky a sloupce – po provedení i kroků bude mít matice blokově diagonální tvar A = D 0 0 X , kde D je diagonální matice řádu i. Předpokládejme, že jsme již provedli i−1 kroků a provededeme i-tý. Jsou-li všechny prvky v i-tém sloupci nulové (a tím i prvky v i-tém řádku), nemusíme nic dělat. Je-li pivot, tj. prvek na místě (i, i) v matice A nulový a nějaký prvek na místě (j, j), j > i, nenulový, pak prohodíme i-tý a j-tý řádek a následně i-tý a j-tý sloupec. Tím převedeme matici do tvaru, kdy je prvek na místě (i, i) nenulový. Jsou-li všechny prvky na místech (j, j), j ≥ i, nulové a prvek na místě (j, i), j > i, nenulový, řekněme b ∈ T, přičteme j-tý řádek k i-tému a následně j-tý sloupec k i-tému. Tím převedeme matici do tvaru, kdy prvek na místě (i, i) je roven 2b. Tento prvek není nulový díky tomu, že charakteristika tělesa není 2. Konečně, je-li prvek na místě (i, i) nenulový, přičteme vhodné násobky i-tého řádku k ostatním řádkům, aby prvky na místech (j, i), j = i, byly nulové. Příslušné sloupcové úpravy pak pouze vynulují prvky na místech (i, j), j = i. 11.3.3. Bez nulových pivotů. Jak je vidět z důkazu předchozí věty, při převodu symetrické matice A symetrickými úpravami na diagonální tvar si v řadě případů vystačíme jen s jedním typem symetrických úprav, a to (*) přičtení t-násobku i-tého řádku k j-tému, kde t ∈ T a j > i (!) (a následná symetrická sloupcová úprava). Nastane to v případě, že v každém kroku máme nenulový pivot nebo je celý sloupec (a řádek) nulový. V takovém případě vlastně provádíme Gaussovu eliminaci bez prohazování řádků s tím, že po vyeliminování sloupce vynulujeme také nediagonální hodnoty v příslušném řádku. 432 LIBOR BARTO A JIŘÍ TŮMA Po provedení úprav dostaneme diagonální matici D = Ek . . . E1AET 1 . . . ET k složenou z pivotů. Matice Ei řádkové úpravy typu (*) je dolní trojúhelníková s jedničkami na diagonále, součinem takových matic je opět dolní trojúhelníková matice s jedničkami na diagonále a rovněž invertování tuto vlastnost zachovává. To nám dává následující rozklad. Tvrzení 11.24. Je-li A symetrická matice taková, že při Gaussově eliminaci nemusíme prohazovat řádky, pak existuje dolní trojúhelníková matice L s jedničkami na diagonále a diagonální matice D (složená z pivotů) tak, že A = LDLT . Důkaz. Stačí položit L = (Ek . . . E1)−1 . Podle diskuze výše je L dolní trojúhelníková s jedničkami na diagonále a platí D = L−1 A(L−1 )T , neboli LDLT = A. Příklad 11.25. Najdeme rozklad A = LDLT pro reálnou symetrickou matici A =   1 1 2 1 2 1 2 1 3   Symetrickými úpravami typu (*) převedeme matici (A|I3) na tvar (D|G). A =   1 1 2 1 0 0 1 2 1 0 1 0 2 1 3 0 0 1   ∼   1 1 2 1 0 0 0 1 −1 −1 1 0 0 −1 −1 −2 0 1   ∼   1 0 0 1 0 0 0 1 −1 −1 1 0 0 −1 −1 −2 0 1   ∼   1 0 0 1 0 0 0 1 −1 −1 1 0 0 0 −2 −3 1 1   ∼   1 0 0 1 0 0 0 1 0 −1 1 0 0 0 −2 −3 1 1   Nyní platí D = GAGT . Položíme-li L = G−1 =   1 0 0 1 1 0 2 −1 1   , platí A = LDLT . Kvadratickou formu lze také diagonalizovat tzv. Langrangovou metodou doplňování na čtverce. Tato metoda úzce souvisí s metodou symetrických úprav. Ukážeme si princip na příkladu kvadratické formy na R3 , jejíž příslušná symetrická bilineární forma má matici A = (aij), tj. f2(x) = f2(x1, x2, x3) = a11x2 1 + a22x2 2 + a33x2 3 + 2a12x1x2 + 2a13x1x2 + 2a23x2x3 . Pokud a11 = 0, smíšených členů x12, x13 se můžeme zbavit doplněním na čtverec f2(x) = a11 x1 + a12 a11 x2 + a13 a11 x3 2 + a22 − a2 12 a11 x2 2 + a33 − a2 13 a11 x2 3 + 2a23 − 2 a12a13 a11 x2x3 . LINEÁRNÍ ALGEBRA 433 Zvolíme-li novou bázi B tak, aby [x]B = (x1, x2, x3), kde x1 = x1 + a12 a11 x2 + a13 a11 x3, x2 = x2, x3 = x3 , pak analytické vyjádření f2 vzhledem k B je f2(x) = a11(x1)2 + a22 − a2 12 a11 (x2)2 + a33 − a2 13 a11 (x3)2 + 2a23 − 2 a12a13 a11 (x2)(x3) a matice příslušné symetrické bilineární formy vzhledem k B je    a11 0 0 0 a22 − a2 12 a11 a23 − a12a13 a11 0 a23 − a12a13 a11 a33 − a2 13 a11    . To je tatáž matice jako po provedení jednoho kroku metodou důkazu věty 11.23. Vyelimování sloupce (a řádku) metodou symetrických úprav můžeme tedy chápat jako maticový zápis doplnění na čtverce. Symetrické úpravy jsou flexibilnější v tom, že máme více možňostí úprav a snadnou kontrolu změn bází. 11.4. Ortogonální báze nad R. 11.4.1. Setrvačnost, signatura. Ortogonální báze ani matice vzhledem k této bázi není určená jednoznačně. Uvažme bilineární formu f na prostoru V nad tělesem T a f-ortogonální bázi B = (v1, . . . , vn) prostoru V. Matice [f]B je diagonální, řekněme [f]B = diag(a1, . . . , an). Vynásobíme i-tý vektor báze B prvkem ti ∈ T. Vzniklá báze C = (t1v1, . . . , tnvn) je stále f-ortogonální (protože f(tivi, tjvj) = titjf(vi, vj) = 0 pro i = j) a na diagonále matice [f]C jsou prvky f(tivi, tivi) = t2 i f(vi, vi) = t2 i ai, tj. [f]C = diag(a1t2 1, . . . , ant2 n). V případě, že T = C z provedené úvahy vyplývá, že pro každou bilineární formu na V můžeme najít bázi takovou, že [f]C = diag(1, 1, . . . , 1, 0, 0, . . . , 0), protože zřejmě pro každé nenulové ai ∈ C můžeme najít ti ∈ C tak, že ait2 i = 1. Pro T = R můžeme volbou ti = |ai| −1 docílit toho, že [f]C má na diagonále pouze čísla 1, −1, 0, tj. při vhodném uspořádání bázových vektorů je [f]C = diag(1, 1, . . . , 1, −1, −1, . . . , −1, 0, 0, . . . , 0). Počet jedniček je roven počtu kladných prvků na diagonále [f]B, apod. Víme, že počet nenulových prvků nezávisí na volbě báze, je roven hodnosti bilineární formy f. Na první pohled ale není jasné, že počet jedniček a minus jedniček také na volbě báze nezávisí. Věta 11.26, tzv. zákon setrvačnosti kvadratických forem říká, že tomu tak skutečně je. Věta 11.26 (Zákon setrvačnosti kvadratických forem). Nechť f je symetrická bilineární forma na reálném vektorovém prostoru V dimenze n a C, C báze V takové, že [f]C = diag(1, 1, . . . , 1 k× , −1, −1, . . . , −1 l× , 0, 0, . . . , 0 m× ) [f]C = diag(1, 1, . . . , 1 k × , −1, −1, . . . , −1 l × , 0, 0, . . . , 0 m × ) Pak k = k , l = l , m = m . 434 LIBOR BARTO A JIŘÍ TŮMA Důkaz. Již víme, že m = m = n − r(f). Předpokládejme pro spor, že k > k . Označme C = (u1, . . . , uk, v1, . . . , vl, w1, . . . , wm) C = (u1, . . . , uk , v1, . . . , vl , w1, . . . , wm ) a definujme U = LO {u1, . . . , uk} , W = LO {v1, . . . , vl , w1, . . . , wm } . Platí dim U = k, dim W = l +m = n−k a dim(U +W) ≤ n. Podle věty o dimenzi součtu a průniku je dim(U ∩ W) = dim U + dim W − dim(U + W) ≥ k + n − k − n > 0 , takže průnik U ∩ W obsahuje nenulový vektor x ∈ U ∩ W. Protože x ∈ U, ve vyjádření [x]C = (a1, . . . , ak, b1, . . . , bl, c1, . . . , cm)T máme b1 = · · · = bk = c1 = · · · = cm = 0. Platí tedy f2(x) = [x]T C[f]C[x]C = 1a2 1 + . . . 1a2 k + (−1)b2 1 + · · · + (−1)b2 l + 0c2 1 + · · · + 0c2 m = a2 1 + · · · + a2 k > 0. (Nerovnost je ostrá, protože x = 0, takže alespoň jedno ai je nenulové.) Podobně, z x ∈ W plyne, že ve vyjádření [x]C = (a1, . . . , ak , b1, . . . , bl , c1, . . . , cm )T je a1 = · · · = ak = 0 a proto f2(x) = 1(a1)2 + . . . 1(ak )2 + (−1)(b1)2 + · · · + (−1)(bl )2 + 0(c1)2 + · · · + 0(cm )2 = −(b1)2 + . . . − (bl )2 ≤ 0 , spor. Obdobně se ukáže, že nemůže platit k < k . Dokázali jsme, že m = m a k = k , tedy také l = l . Definice 11.27. Nechť f je symetrická bilineární forma na reálném konečně generovaném vektorovém prostoru V. Číslo k (resp. l) z předchozí věty nazýváme pozitivní (resp. negativní) index setrvačnosti formy f, značíme n+(f) (resp. n−(f)). Číslo m nazývýme nulita formy f a značíme n0(f). Signaturou formy f rozumíme trojici (n0(f), n+(f), n−(f)). Příklad 11.28. Určíme signaturu bilineární formy f na R3 , jejíž matice vzhledem ke kanonické bázi je A = [f]K =   2 1 1 1 0 1 1 1 0   . Symetrickými úpravami převedeme matici do diagonálního tvaru.   2 1 1 1 0 1 1 1 0   ∼   2 1 1 0 −1 2 1 2 0 1 2 −1 2   ∼   2 0 0 0 −1 2 1 2 0 1 2 −1 2   ∼   2 0 0 0 −1 2 1 2 0 0 0   ∼   2 0 0 0 −1 2 0 0 0 0   Vzniklá matice je maticí stejné bilineární formy f vzhledem k nějaké bázi (která nás teď nezajímala). Signatura f je proto (1, 1, 1). LINEÁRNÍ ALGEBRA 435 Příklad 11.29. Určíme signaturu kvadratické formy f2(x1, x2) = 4x1x2 + x2 2 na prostoru R2 . Příslušná symetrická bilineární forma má vzhledem ke kanonické bázi matici A = 0 2 2 1 . Symetrickými úpravami získáme 0 2 2 1 ∼ 2 1 0 2 ∼ 1 2 2 0 ∼ 1 2 0 −4 ∼ 1 0 0 −4 . (V úpravách jsme tentokrát nepostupovali podle důkazu věty 11.23 – v první úpravě jsme pro pohodlí prohodili první a druhý řádek a následně první a druhý sloupec.) Signatura kvadratické formy f2 je (0, 1, 1). 11.4.2. Pozitivní definitnost. Má-li bilineární forma nenulový pouze index n+(f) = n, mluvíme o pozitivně definitní formě. Obdobně se zavádí pozitivně semidefinitní a negativně (semi)definitní bilineární formy, o těch však mluvit nebudeme. Definice 11.30. Symetrická bilineární forma f na reálném vektorovém prostoru V je pozitivně definitní, pokud f2(x) > 0 pro libovolný vektor o = x ∈ V . Tvrzení 11.31. Symetrická bilineární forma f na reálném vektorovém prostoru V dimenze n je pozitivně definitní právě tehdy, když n+(f) = n. Důkaz. Je-li B ortogonální báze a [f]B = diag(a1, . . . , an), pak pro libovolný vektor x ∈ V je f2(x) = f(x, x) rovno f2(x) = a1x2 1 + · · · + anx2 n, kde [x]B = (x1, . . . , xn) . Z toho se snadno vidí obě implikace. Je-li f2(x) > 0 pro libovolné o = x ∈ V , pak volbou [x]B = ei získáme ai > 0 pro každé i ∈ {1, . . . , n}, čili n+(f) = n. Naopak, pokud n+(f) = n, neboli a1, . . . , an > 0, pak je zřejmě f2(x) > 0 pro libovolný nenulový vektor x. Pro reálný vektorový prostor V je pozitivně definitní symetrická bilineární forma totéž jako skalární součin. Vlastnosti (SL1), (SL2) a (SL3) z definice 8.15 skalárního součinu říkají, že skalární součin je symetrická bilineární forma, a vlastnost (SP) je pozitivní definitnost. Názvy se používají podle toho, jak se na bilineární formu díváme. Pozitivní definitnost je definovaná v souladu se stejným pojmem pro matice ve smyslu, že reálná matice A řádu n je pozitivně definitní ve smyslu definice 10.18 právě tehdy, když je pozitivně definitní bilineární forma f(x, y) = xT Ay na aritmetickém prostoru Rn . Navíc platí: Pozorování 11.32. Symetrická bilineární forma f na reálném konečně generovaném prostoru V je pozitivně definitní právě tehdy, když je pozitivně definitní její matice vzhledem k libovolné bázi B. Důkaz. Vztah f2(x) > 0 platí právě tehdy, když [x]T B[f]B[x]B > 0. Z toho vyplývá, že f2(x) > 0 pro každý nenulový vektor x ∈ V platí právě tehdy, když yT [f]By > 0 platí pro každý nenulový vektor y ∈ Rdim V . 436 LIBOR BARTO A JIŘÍ TŮMA Z části o unitární diagonalizovatelnosti víme, že pozitivně definitní matice jsou právě ty symetrické matice, jejichž vlastní čísla jsou kladná. Charakterizaci nyní můžeme doplnit o další kriteria. Hlavním minorem matice A řádu n rozumíme matici tvořenou prvními i řádky a i sloupci matice A pro nějaké i ∈ {1, . . . , n}. Věta 11.33. Nechť A je reálná symetrická matice řádu n. Následující tvrzení jsou ekvivalentní. (1) A je pozitivně definitní. (2) (Sylvestrovo kritérium) Všechny hlavní minory matice A mají kladný de- terminant. (3) Gaussova eliminace použitá na matici A může proběhnout bez prohazování řádků a všechny pivoty vyjdou kladné. (4) A = LDLT pro nějakou dolní trojúhelníkovou matici L s jedničkami na diagonále a nějakou diagonální matici D s kladnými čísly na diagonále. (5) (Choleského rozklad) A = RRT pro nějakou regulární dolní trojúhelníkovou matici R. Důkaz. (1) ⇒ (2). Nejprve dokážeme, že každý minor Ai matice A tvořený prvními i řádky a i sloupci je pozitivně definitní. Vezmeme libovolný nenulový vektor y ∈ Ri a doplníme jej nulami na vektor x ∈ Rn . Protože A je pozitivně definitní, platí xAx > 0. Pak ale yT Aiy = xT Ax > 0 . Matice Ai je podle důsledku 10.16 ortogonálně diagonalizovatelná, má proto i vlastních čísel λ1, . . . , λi včetně násobností a podle tvrzení 10.19 jsou všechna vlastní čísla kladná. Charakteristický polynom pAi (t) = (λ1 − t) . . . (λi − t) má podle tvrzení 9.32 absolutní člen rovný det (Ai). Roznásobením výrazu pro pAi (t) ale také vidíme, že absolutní člen je rovný λ1λ2 . . . λi > 0, takže det (Ai) > 0. (2) ⇒ (3). Indukcí podle i dokážeme, že před eliminací i-tého sloupce jsou všechny pivoty (prvky na místech (1, 1), . . . , (i, i)) kladné (speciálně, Gaussova eliminace bude používat pouze úpravy typu přičtení násobku řádku k jinému řádku). Pro i = 1 není co dokazovat, předpokládejme, že tvrzení platí pro i − 1. Před eliminací i-tého sloupce má matice tvar B = X Y 0 Z , kde X je horní trojúhelníková matice řádu i − 1 s kladnými prvky na diagonále. Všechny dosud použité úpravy byly typu přičtení násobku řádku k jinému. Takové úpravy nemění determinant žádného minoru, pro i-tý minor Bi matice B tedy platí det (Bi) = x11 . . . xi−1,i−1z11 = det (Ai) > 0 . Z toho vyplývá, že z11 > 0, takže pivot před eliminací i-tého sloupce bude skutečně kladný. Implikace (3) ⇒ (4) je důsledkem v tvrzení 11.24. (4) ⇒ (5). Je-li A = LDLT , kde D = diag(d1, . . . , dn), d1, . . . , dn > 0, pak položíme R = L √ D, kde √ D = diag( √ d1, . . . , √ dn). Matice R je regulární a dolní trojúhelníková, protože je součinem dvou regulárních dolních trojúhelníkových matic, a platí RRT = (L √ D)(L √ D)T = L √ D √ D T LT = L( √ D √ D)LT = LDLT = A . LINEÁRNÍ ALGEBRA 437 (5) ⇒ (1). Pro libovolný nenulový vektor x ∈ Rn platí RT x = o, protože RT je regulární. Potom xT Ax = xT RRT x = (RT x)T RT x = RT x 2 > 0 . 11.4.3. Ortonormální diagonalizace. Pro geometrické aplikace se hodí najít f-ortogonální bázi symetrické bilineární formy, která je navíc ortonormální vzhledem k nějakému skalárnímu součinu. Takovou bázi můžeme vždy najít (ale nemůžeme vyžadovat, aby koeficienty u kvadratických členů byly z množiny {−1, 0, 1}). Tvrzení 11.34. Nechť V je reálný vektorový prostor dimenze n se skalárním součinem , a f je symetrická bilineární forma na V. Pak existuje báze B prostoru V, která je f-ortogonální a zároveň ortonormální vzhledem k , . Důkaz. Pro skalární součin , existuje podle věty 8.69 ortonormální báze C prostoru V. Označme A = [f]C. Matice A je symetrická, takže podle spektrální věty pro symetrické matice je ortogonálně diagonalizovatelná. To znamená, že existuje ortonormální báze (u1, . . . , un) prostoru Rn (ortonormalita je zde vzhledem ke standardnímu skalárnímu součinu!) složená z vlastních vektorů matice A. Maticově napsáno, označíme-li U = (u1| . . . |un), je U ortogonální matice a U−1 AU = UT AU = D je diagonální. Vezmeme B = (v1, . . . , vn), aby [vi]C = ui, tj. báze B je zvolená tak, že U je matice přechodu od B k C. Podle tvrzení 11.13 o změně báze je matice f vzhledem k B rovná UT AU = D, takže B je f-ortogonální báze. Protože vyjádření vektorů v1, . . . , vn v bázi C tvoří ortonormální bázi vzhledem ke standardnímu skalárnímu součinu a C je ortonormální báze vzhledem k , , dostáváme, že v1, . . . , vn tvoří ortonormální bázi vzhledem ke skalárnímu součinu , (viz tvrzení 8.49). Z tvrzení vyplývá, že jsou-li f, g dvě symetrické bilineární formy na reálném konečně generovaném prostoru V, z nichž alespoň jedna je pozitivně definitní, pak existuje báze B, která je zároveň f-ortogonální a g-ortogonální. To obecně neplatí, vynecháme-li zvýrazněný požadavek, že alespoň jedna z forem je pozitivně definitní, viz cvičení. 11.5. Příklady. Podíváme se na aplikace nabytých poznatků na určení tvaru „kvadratického útvaru . Příklad 11.35. Podíváme se na množinu bodů (x1, x2, x3)T ∈ R3 splňujících x3 = −x2 1 + x1x2 − 3x2 2. Je to graf kvadratické formy f2((x1, x2)T ) = −x2 1 + x1x2 − 3x2 2. Příslušná symetrická bilineární forma f na R2 je f((x1, x2)T , (y1, y2)T ) = −x1y1 + 1/2x1y2 + 1/2x2y1 − 3x2y2 a její matice vzhledem ke kanonické bázi je [f]K2 = A = −1 1/2 1/2 −3 ∼ −1 0 0 −3 + (1/4) . Signatura je tedy (0, 0, 2). Analytické vyjádření f2 vzhledem k jisté bázi B je proto f2((x1, x2)T ) = −(x1)2 − (x2)2 , kde [(x1, x2)T ]B = (x1, x2)T . Grafem x3 = −x2 1 − x2 2 je rotační paraboloid otevřený směrem dolů (viz obrázek). Tak vypadá graf vzhledem k bázi B. To nám dává představu, jak vypadá původní útvar – jde o „lineárně zdeformovaný rotační paraboloid. Ve skutečnosti je to eliptický paraboloid (ale není to zřejmé). 438 LIBOR BARTO A JIŘÍ TŮMA Abychom přesněji určili tvar útvaru, museli bychom najít f-ortogonální bázi, která je zároveň ortonormální vzhledem ke standardnímu skalárnímu součinu. Příklad 11.36. Uvažujme množinu bodů (x1, x2, x3)T ∈ R3 splňujících 10x2 1 + 13x2 2 + 13x2 3 + 4x1x2 + 4x1x3 + 8x2x3 = 9 . Levá strana je kvadratická forma f2 na R3 . Příslušná symetrická bilineární forma f má matici [f]K3 = A =   10 2 2 2 13 4 2 4 13   Signatura f je (0, 3, 0). Vzhledem k jisté bázi B má tedy útvar rovnici (x1)2 + (x2)2 + (x3)2 = 9, takže jde o „lineárně zdeformovanou sféru. OBRAZEK Ve skutečnosti jde o elipsoid, ale opět to není zřejmé. Abychom určili útvar přesněji, najdeme ortonormální bázi (vzhledem ke standardnímu skalárnímu součinu), LINEÁRNÍ ALGEBRA 439 která je zároveň f-ortogonální. Jako ortonormální bázi C v tvrzení 11.34 zvolíme kanonickou, tj. [f]K3 = A =   10 2 2 2 13 4 2 4 13   Najdeme ortonormální bázi složenou z vlastních vektorů. Vlastní čísla vyjdou λ1 = λ2 = 9 (dvojnásobné) a λ3 = 18. V příslušných podprostorech vybereme ortonormální bázi, v M9 je to např. (v1, v2) a v M18 (v3). (v1, v2, v3) =  1 3   2 −2 1   , 1 3   2 1 −2   , 1 3   1 2 2     Matice f vzhledem k (ortonormální) bázi B = (v1, v2, v3) je [f]B = diag(9, 9, 18), takže vzhledem k B je rovnice našeho útvaru 9(x1)2 + 9(x2)2 + 18(x3)2 = 9 a po drobné úpravě (x1) 2 1 + (x2) 2 1 + (x3) 2 1√ 2 2 = 1 . Vidíme, že jde o elipsoid s poloosami v1, v2, 1√ 2 v3, viz obrázek. OBRAZEK - skutecny (tj. otoceny) elipsoid Příklad 11.37. Budeme analyzovat následující útvar v R2 : U = {(x1, x2)T ∈ R2 : 3x2 1 + 2x1x2 + 3x2 2 − 10x1 − 14x2 + 7 = 0} Výraz z definice je součtem kvadratické formy f2((x1, x2)T ) = 3x2 1 + 2x1x2 + 3x2 2, lineární formy h((x1, x2)T ) = −10x1 − 14x2 a konstanty 7. Najdeme nejprve ortonormální f-ortogonální bázi R2 , kde f je symetrická bilineární příslušná f2: [f]K2 = 3 1 1 3 Vlastní čísla matice [f]K2 jsou 2 a 4 a příslušné znormované vlastní vektory jsou√ 2 2 (1, −1) a √ 2 2 (1, 1). Hledaná báze B a je tedy B = (v1, v2) = √ 2 2 1 −1 , √ 2 2 1 1 . Vyjádříme útvar U v bázi B. Matice f vzhledem k bázi B je diag(2, 4), matice lineární formy h vzhledem k B je [h]B K1 = [h]K2 K1 [id]B K2 = (−10, −14) √ 2 2 1 1 −1 1 = √ 2(2, −12) , takže U má vzhledem k B vyjádření [U]B = {(x1, x2)T ∈ R2 : 2(x1)2 + 4(x2)2 + 2 √ 2x1 − 12 √ 2x2 + 7 = 0} . 440 LIBOR BARTO A JIŘÍ TŮMA Doplněním na čtverce a drobnými úpravami získáme [U]B =    (x1, x2)T ∈ R2 : 2 x1 + √ 2 2 2 + 4 x2 − 3 √ 2 2 2 = 12    =    (x1, x2)T ∈ R2 : x1 + √ 2 2 √ 6 2 + x2 − 3 √ 2 2 √ 3 2 = 1    Z toho vidíme, že vzhledem k B je útvar elipsa se středem (− √ 2 2 , 3 √ 2 2 )T a velikostmi poloos √ 6 a √ 3. x1 x2 −3 −2 −1 1 2 1 3 4 2 √ 3 √ 6 v1 v2 Přepočteme střed do původních souřadnic: − √ 2 2 v1 + 3 √ 2 2 v2 = (1, 2)T . Vidíme, že U je elipsa se středem v bodě (1, 2)T , hlavní poloosou ve směru LO {v1} a velikostí√ 6 a vedlejší poloosou ve směru LO {v2} a velikostí √ 3. x1 x2 −1 1 2 3 1 2 3 4 √ 3 √ 6 v1 v2 LINEÁRNÍ ALGEBRA 441 Shrnutí jedenácté kapitoly (1) Je-li V lineární prostor nad tělesem T, pak bilineární forma na prostoru V je zobrazení f : V × V → T, které je lineární v obou složkách, tj. pro libovolné u, v, w ∈ V a každý skalár t ∈ T platí (1) f(u + v, w) = f(u, w) + f(v, w), f(w, u + v) = f(w, u) + f(w, v) a (2) f(tv, w) = t f(v, w), f(v, tw) = tf(v, w). (2) Skalární součin na reálném lineárním prostoru je bilineární forma, skalární součin na komplexním lineárním prostoru není bilineární forma. (3) Je-li f bilineární forma na lineárním prostoru V nad tělesem T, pak zobrazení f2 : V → T definované předpisem f2(v) = f(v, v) pro každé v ∈ V nazýváme kvadratickou formou vytvořenou bilineární formou f. Rovněž říkáme, že f2 je kvadratická forma příslušná bilineární formě f. (4) Je-li B = (v1, . . . , vn) báze lineárního prostoru V nad tělesem T a f bilineární forma na V, pak maticí bilineární formy f vzhledem k B rozumíme čtvercovou matici řádu n nad T, která má na pozici (i, j) prvek f(vi, vj). Tuto matici značíme [f]B. (5) Je-li B báze konečně generovaného lineárního prostoru V a x, y ∈ V , pak f(x, y) = [x]T B[f]B[y]B . (6) Jsou-li souřadnice vektorů [x]B = (x1, . . . , xn)T , [y]B = (y1, . . . , yn)T a [f]B = (aij)n×n, pak f(x, y) = n i=1 n j=1 aijxiyj . Tomuto vyjádření také říkáme analytické vyjádření bilineární formy f. (7) Je-li V konečně generovaný lineární prostor nad tělesem T, B = (v1, . . . , vn) jeho báze a A čtvercová matice řádu n nad T, pak zobrazení f : V ×V → T definované vztahem f(x, y) = [x]T BA[y]B pro každé x, y ∈ V je bilineární forma na V a platí [f]B = A. (8) Je-li f bilineární forma na lineárním prostoru V, jsou-li B a C báze V a X = [id]C B matice přechodu od C k B, pak [f]C = XT [f]BX. (9) Bilineární forma f na lineárním prostoru V se nazývá • symetrická, pokud pro libovolné x, y ∈ V platí f(x, y) = f(y, x); • antisymetrická, pokud pro libovolné x, y ∈ V platí f(x, y) = −f(y, x). (10) Je-li V konečně generovaný lineární prostor, B báze V a f bilineární forma na V, pak • f je symetrická právě tehdy, když je [f]B symetrická matice; • f je antisymetrická právě tehdy, když je [f]B antisymetrická matice. (11) Je-li V lineární prostor nad tělesem T charakteristiky různé od 2, pak každou bilineární formu f na V lze psát jako součet f = fs + fa, kde fs je symetrická a fa je antisymetrická. Tento rozklad je jednoznačný a platí fs(x, y) = 1 2 (f(x, y) + f(y, x)), fa(x, y) = 1 2 (f(x, y) − f(y, x)) . 442 LIBOR BARTO A JIŘÍ TŮMA (12) Jsou-li f, g bilineární formy na lineárním prostoru V nad tělesem charakteristiky různé od 2, pak f2 = g2 právě tehdy, když fs = gs. Navíc fs(x, y) = 1 2 (f2(x + y) − f2(x) − f2(y)) . (13) Je-li f symetrická bilineární forma na V a x, y ∈ V , pak říkáme, že x a y jsou f-ortogonální, pokud f(x, y) = 0. Zapisujeme x ⊥f y. Báze B = (v1, . . . vn) prostoru V se nazývá f-ortogonální, pokud je [f]B diagonální, tj. pro libovolné i, j ∈ {1, 2, . . . , n}, i = j, jsou vektory vi, vj f-ortogonální. (14) Hodností bilineární formy f na konečně generovaném lineárním prostoru V rozumíme hodnost její matice vzhledem k libovolné bázi, značíme r(f). (15) Každá symetrická bilineární forma f na konečně generovaném vektorovém prostoru nad tělesem charakteristiky různé od 2 má f-ortogonální bázi. (16) Je-li A symetrická matice taková, že při Gaussově eliminaci nemusíme prohazovat řádky, pak existuje dolní trojúhelníková matice L s jedničkami na diagonále a diagonální matice D (složená z pivotů) tak, že A = LDLT . (17) Je-li f symetrická bilineární forma na reálném lineárním prostoru V dimenze n a C, C báze V takové, že [f]C = diag(1, 1, . . . , 1 k× , −1, −1, . . . , −1 l× , 0, 0, . . . , 0 m× ) [f]C = diag(1, 1, . . . , 1 k × , −1, −1, . . . , −1 l × , 0, 0, . . . , 0 m × ), pak k = k , l = l , m = m . (18) Je-li f symetrická bilineární forma na reálném konečně generovaném lineárním prostoru V, pak číslo k (resp. l) z předchozí věty nazýváme pozitivní (resp. negativní) index setrvačnosti formy f, značíme n+(f) (resp. n−(f)). Signaturou formy f rozumíme trojici (n0(f), n+(f), n−(f)). (19) Symetrická bilineární forma f na reálném lineárním prostoru V se nazývá pozitivně definitní, pokud f2(x) > 0 pro libovolný nenulový prvek x ∈ V . (20) Symetrická bilineární forma f na reálném lineárním prostoru V dimenze n je pozitivně definitní právě tehdy, když n+(f) = n. (21) Symetrická bilineární forma f na reálném konečně generovaném prostoru V je pozitivně definitní právě tehdy, když je pozitivně definitní její matice vzhledem k libovolné bázi B. (22) Pro reálnou symetrickou matici A řádu n jsou následující podmínky ekvi- valentní (a) A je pozitivně definitní, (b) (Sylvestrovo kritérium) v šechny hlavní minory matice A mají kladný determinant, (c) Gaussova eliminace použitá na matici A může proběhnout bez prohazování řádků a všechny pivoty vyjdou kladné, (d) A = LDLT pro nějakou dolní trojúhelníkovou matici L s jedničkami na diagonále a nějakou diagonální matici D s kladnými čísly na diagonále, (e) (Choleského rozklad) A = RRT pro nějakou regulární dolní trojúhelníkovou matici R. LINEÁRNÍ ALGEBRA 443 (23) Je-li V reálný vektorový prostor dimenze n se skalárním součinem , a f symetrická bilineární forma na V, pak existuje báze B prostoru V, která je f-ortogonální a zároveň ortonormální vzhledem k , . 12. Afinní prostory Cíl. Až dosud byl pro nás základní pojem vektorového prostoru. V případě aritmetického vektorového prostoru R3 jsme nějaký aritmetický vektor x = (x1, x2, x3)T geometricky interpretovali podle potřeby buď jako bod o souřadnicích (x1, x2, x3) ve třídimenzionálním prostoru s nějakým systémem souřadnic nebo jako (geometrický) vektor se souřadnicemi (x1, x2, x3). V této kapitole se budeme zabývat afinními prostory, kde body a vektory rozlišujeme. V této kapitole se budeme blíže zaobírat geometrií. Zkoumanými objekty jsou množiny bodů, například množina bodů v prostoru, a množiny vektorů. Vektory si představujeme jako „šipky určené dvěma body, přičemž dva vektory považujeme za stejné, pokud se liší jenom umístěním. S vektory můžeme provádět známé operace sčítání a násobením skalárem. Další přirozenou geometrickou operací je přičtení bodu a vektoru. To provedeme umístěním počátku vektoru do daného bodu, výsledkem je koncový bod. OBRAZEK (pricteni bodu a vektoru) Tento pohled je přirozenější lidskému vnímání. Prostor se skládá z bodů a bod je tedy základním objektem, vektor je pojem odvozený. Doposud jsme tento nedostatek řešili tak, že jsme si v prostoru zvolili počátek a vektory umísťovali do počátku. Bod jsme pak ztotožňovali s jeho polohovým vektorem. Tento pohled má několik nedostatků. Jedním z nich je, že prostor nemá apriori žádný význačný bod, takže volba nějakého počátku je nepřirozená. Podstatnější nevýhoda vynikne, když si připomeneme, že lineární algebru lze chápat jako studium „rovných útvarů (přímky, roviny, atd.) a „rovných zobrazení mezi nimi. Odpovídající objekty ve vektorových prostorech jsou podprostory a lineární zobrazení. Podprostory ale nepopisují všechny rovné útvary, pouze rovné útvary procházející počátkem, i když jiné rovné útvary se přirozeně objevily, například jako množiny řešení nehomogenní soustavy rovnic. Podobně, lineární zobrazení popisují jen rovná zobrazení zachovávající počátek, tedy například žádné posunutí o nenulový vektor nebylo objektem studia. Nyní tedy začneme rozlišovat body a vektory. Poznamenejme, že tzv. projektivní prostory umožňují chápat body a vektory jako různé instance stejného geometrického objektu, a tím se poněkud paradoxně lze vrátit ke studiu rovných útvarů pouze pomocí vektorů. Tento přístup přináší řadu výhod, ale v úvodním kurzu se k němu již bohužel nedostaneme. V celé kapitole budeme pracovat výhradně s prostory konečné dimenze, které jsou bližší geometrickému náhledu. Řada pojmů a tvrzení se přirozeně přenáší na prostory, které nejsou konečně generované. 444 LIBOR BARTO A JIŘÍ TŮMA 12.1. Definice afinního prostoru. Jak jsme předeslali v úvodu, afinní prostor je tvořen množinou bodů a množinou vektorů. Na množině vektorů máme operace sčítání a násobení skalárem, které mají všechny doposud používané vlastnosti, tedy množina vektorů tvoří spolu s těmito operacemi vektorový prostor. Přibude operace sčítání bodu a vektoru. Požadované axiomy jsou opět ve shodě s geometrickou představou. Definice 12.1. Nechť T je těleso. Afinním prostorem A nad T rozumíme množinu A, jejíž prvky nazýváme body, spolu s vektorovým prostorem V nad T a operací + : A × V → A, která bodu a ∈ A a vektoru v ∈ V přiřadí bod a + v ∈ A, splňující axiomy: (aS1) Pro libovolný bod a ∈ A platí a + o = a. (aS2) Pro libovolný bod a ∈ A a libovolné vektory v, w ∈ V platí a + (v + w) = (a + v) + w. (aM) Ke každé dvojici bodů a, b ∈ A existuje právě jeden vektor v ∈ V , pro který a + v = b. Tento vektor značíme b − a. a a + v a + v + w v w v + w Axiom (aS2) a b v b − a Axiom (aM) Sčítat můžeme dva vektory a bod s vektorem. Sčítání dvou bodů nedává (zatím) žádný geometrický smysl. Pro body budeme používat stejně jako v definici malá písmena abecedy. Z axiomu (aS2) vidíme, že ve výrazech tvaru a+v1 +v2 +· · ·+vn nemusíme psát závorky. Axiom (aS1) je nadbytečný, plyne ze zbylých dvou axiomů. Při popisu afinního prostoru A budeme většinou zdůrazňovat jen množinu bodů A s tím, že vektorový prostor a sčítání je zřejmé z kontextu. Vektorový prostor V budeme někdy nazývat prostor vektorů afinního prostoru A. Pokud v afinním prostoru zvolíme nějaký bod a ∈ A, pak každému bodu b ∈ A můžeme podle (aM) přiřadit vektor b − a a naopak, každému vektoru v můžeme přiřadit bod a + v. Jak se snadno ověří (cvičení), tato zobrazení jsou navzájem inverzní bijekce bodů a vektorů (bijekce nejsou přirozené, závisí na volbě bodu a). V tomto smyslu si body a vektory vzájemně jednoznačně odpovídají, proto například dává smysl mluvit o dimenzi afinního prostoru. Definice 12.2. Dimenzí afinního prostoru A rozumíme dimenzi jeho prostoru vek- torů. Afinní prostor dimenze 0 tvoří jediný bod A = {a}. Afinní prostor dimenze 1 nazýváme afinní přímka, nebo jen přímka, afinní prostor dimenze 2 nazýváme afinní rovina, nebo jen rovina. Mechanickým cvičením jsou následující vlastnosti operací, které platí pro libovolné body a, b, c, d ∈ A a vektory u, v ∈ V . Geometrický význam je jasný z ob- rázku. • a − b = −(b − a) • (a + u) − (b + v) = (a − b) + u − v • (a − b) + (c − d) = (a − d) + (c − b) LINEÁRNÍ ALGEBRA 445 • (a − b) + (b − c) = a − c Tyto a podobné vlastnosti budou podrobněji diskutovány v části o lineárních kombinacích bodů. a b a + ub + v a + u − v a − b (a + u) − (b + v) u v −v (a − b) + u − v a b c a − b b− c a − c Příklad 12.3. • Pro libovolný vektorový prostor V tvoří A = V spolu se sčítáním ve V afinní prostor. Množiny bodů a vektorů jsou tedy stejné, rozdíl je jen v pohledu – na prvky A se díváme jako na body, na prvky V jako na vektory. Rozdílný bude také například pojem podprostoru, jak jsme diskutovali v úvodu. • Speciálně pro V = Tn dostáváme aritmetický afinní prostor. Budeme jej značit stejně jako aritmetický vektorový prostor, tj. Tn , jeho dimenze je n. • Trochu jiným příkladem je A = (1, 2, 3)T + (2, 3, 4)T , (6, 7, 8)T , V = (2, 3, 4)T , (6, 7, 8)T . Vektorový prostor V je podprostor R3 generovaný vektory (2, 3, 4)T a (6, 7, 8)T a A je rovina v R3 se „směrem V procházející bodem (1, 2, 3)T . (Sčítání bodu a vektoru probíhá po složkách.) V tomto případě A není vektorovým podprostorem R3 . Bod v A můžeme sečíst s vektorem ve V , ale součet dvou bodů, pokud bychom ho počítali jako v R3 , v A obecně neleží. Toto je příklad podprostoru afinního prostoru R3 . Jeho dimenze je 2, je to afinní rovina. • Obecněji, pro libovolný afinní prostor A s prostorem směrů V je každá množina bodů tvaru a+W, kde W ≤ V se zděděnými operacemi afinní prostor, jehož prostor směrů je W. Tento prostor je podprostorem A. Takové podprostory aritmetických prostorů vznikají například při řešení soustavy lineárních rovnic. Podrobněji se podprostory budeme zabývat zanedlouho, zatím jsme ani přesně nepopsali, co je podprostor. Vystačíme s intuitivní představou. Chceme-li ještě pracovat s metrickými vlastnostmi, jako velikosti vektorů, vzdálenosti bodů, atd., potřebujeme na V mít ještě dán skalární součin. V tomto případě musí být T = R nebo T = C. Definice 12.4. Afinním eukleidovským prostorem (resp. afinním unitárním prostorem) rozumíme afinní prostor A nad tělesem R (resp. C) spolu se skalárním součinem , na jeho prostoru vektorů. Nejjednodušším příkladem afinního eukleidovského prostoru je Rn se standardním skalárním součinem. Nejjednodušším příkladem afinního unitárního prostoru je Cn se standardním skalárním součinem. V této kapitole budeme uvažovat pouze 446 LIBOR BARTO A JIŘÍ TŮMA afinní prostory a afinní eukleidovské prostory. Přímočaré rozšíření na komplexní případ si čtenář může rozmyslet sám. Již víme, co pro afinní eukleidovský prostor znamená velikost vektoru, úhel dvou vektorů, kolmost, apod. Vzdálenost bodů definujeme opět ve shodě s intuicí. Definice 12.5. Vzdáleností dvou bodů a, b ∈ A v afinním eukleidovském prostoru A rozumíme číslo a − b . 12.1.1. Soustava souřadnic. Na bázi vektorového prostoru lze nazírat jako na jeho soustavu souřadnic – zvolíme-li bázi, můžeme vektory vyjadřovat jako n-tice skalárů (prvky Tn ) a počítat s nimi jako v Tn (viz odstavec 5.4.2). Soustava souřadnic v afinním prostoru má podobnou roli. Sestává z bodu, tzv. počátku soustavy souřadnic, a n-tice vektorů, které si představujeme umístěné do počátku. Máme-li zadanou soustavu, můžeme přirozeným způsobem vyjadřovat body i vektory jako n-tice prvků tělesa a počítání pak probíhá jako v aritmetickém afinním prostoru Tn . Definice 12.6. Soustavou souřadnic v afinním prostoru A dimenze n s prostorem vektorů V rozumíme (n+1)-tici S = (a, u1, u2, . . . , un), kde a ∈ A je bod nazývaný počátek soustavy souřadnic a B = (u1, . . . , un) je báze V. Je-li S soustava souřadnic jako výše, b ∈ A je bod a w ∈ V je vektor, pak souřadnice vektoru w v soustavě souřadnic S definujeme jako souřadnice w vzhledem k bázi B a značíme [w]S, tj. [w]S = [w]B a souřadnice bodu b v soustavě souřadnic S definujeme jako souřadnice vektoru b − a v bázi B, tj. [b]S = [b − a]S = [b − a]B . Souřadnice bodu jsou definovány ve shodě s geometrickou intuicí. To je možná ještě lépe vidět s následujícího přeformulování definice: Souřadnice bodu b v soustavě S je rovno té jednoznačně určené n-tici prvků (t1, . . . , tn) ∈ Tn , pro kterou platí b = a + t1u1 + · · · + tnun . OBRAZEK Souřadnice počátku a vzhledem k S jsou [a]S = (0, 0, . . . , 0)T a [a + ui]S = ei. Příklad 12.7. V aritmetickém afinním prostoru R2 je S = (a, u1, u2) = 3 2 , 1 1 , −2 −1 soustava souřadnic, protože (u1, u2) je bází aritmetického vektorového prostoru R2 . Určíme souřadnice vektoru w = (−1, 3)T a bodu b = (−1, 3)T v S. K tomu potřebujeme nalézt vyjádření vektoru (−1, 3)T a vektoru (−1, 3)T − (3, 2)T = (−4, 1)T v bázi (u1, u2). To vede na řešení dvou soustav rovnic se stejnou maticí. Vyřešíme je současně. 1 −2 −1 −4 1 −1 3 1 ∼ 1 −2 −1 −4 0 1 4 5 Z toho dopočteme řešení [w]S = 7 4 , [b]S = 6 5 . Pro kontrolu můžeme ověřit, že skutečně w = 7u1 + 4u2 a b = a + 6u1 + 5u2. LINEÁRNÍ ALGEBRA 447 Příklad 12.8. V aritmetických afinních prostorech máme význačnou soustavu souřadnic, budeme jí nazývat kanonická: S = ((0, 0, . . . , 0)T , e1, e2, . . . , en) . Je charakterizovaná tím, že [a]S = a a [w]S = w pro libovolný bod a a libovolný vektor w. V afinním eukleidovském prostoru jsou „nejlepší soustavy souřadnic kartézské. Definice 12.9. Soustava souřadnic S = (a, u1, . . . , un) v afinním eukleidovském prostoru se nazývá kartézská, pokud (u1, . . . , un) je ortonormální báze. V kartézské soustavě souřadnic jsou tedy vektory u1, . . . , un jednotkové a navzájem kolmé. V aritmetickém afinním prostoru se standardním skalárním součinem (budeme mu říkat aritmetický afinní eukleidovský prostor) je kanonická soustava souřadnic kartézská. Volba soustavy souřadnic převádí počítání v afinním prostoru na počítání v aritmetickém vektorovém prostoru, podobně jako báze pro vektorové prostory (viz tvrzení 5.75). Je-li prostor afinní eukleidovský, tak v kartézské soustavě souřadnic se skalární součin převádí na standardní (viz tvrzení 8.49). Tvrzení 12.10. Je-li S soustava souřadnic afinního prostoru A s prostorem vektorů V nad tělesem T, pak pro libovolné v1, v2 ∈ V , b, c ∈ A, t ∈ T platí [v1+v2]S = [v1]S+[v2]S, [tv1]S = t[v1]S, [b+v1]S = [b]S+[v1]S, [b−c]S = [b]S−[c]S . Je-li navíc A afinní eukleidovský prostor a soustava S je kartézská, pak v1, v2 = [v1]S · [v2]S . Důkaz. cviceni Nyní spočítáme, jak se změní souřadnice bodů a vektorů při změně soustavy souřadnic. Uvažujme dvě soustavy S = (a, u1, . . . , un) a S = (a , u1, . . . , un). Označme X matici přechodu od báze B = (u1, . . . , un) k bázi B = (u1, . . . , un). Přepočítávat souřadnice vektorů už umíme: pro libovolný vektor v ∈ V máme [v]S = X[v]S . Pro bod b ∈ A využijeme vztahu b − a = (b − a) + (a − a ) a dostaneme [b]S = [b − a ]S = [b − a]S + [a − a ]S = X[b − a]S + [a − a ]S = X[b]S + [a]S . Shrneme výsledek do tvrzení. Tvrzení 12.11. Nechť S = (a, u1, . . . , un) a S = (a , u1, . . . , un) jsou soustavy souřadnic v afinním prostoru A s prostorem vektorů V a X je matice přechodu od (u1, . . . , un) k (u1, . . . , un). Pak pro každé b ∈ A, v ∈ V platí [v]S = X[v]S, [b]S = X[b]S + [a]S . Příklad 12.12. Ilustrujeme přechodové vztahy na soustavách souřadnic S, S aritmetického afinního prostoru R2 . S = (a, u1, u2) = −4 5 , 5 3 , −7 14 S = (a , u1, u2) = 1 1 , 1 2 , −2 3 , 448 LIBOR BARTO A JIŘÍ TŮMA Najdeme matici přechodu X od báze B = (u1, u2) k bázi B = (u1, u2). [id]B B = [id]K2 B [id]B K2 = 1 −2 2 3 −1 5 −7 3 14 = 1 7 3 2 −2 1 5 −7 3 14 = 3 1 −1 4 Najdeme ještě [a]S = [a − a ]S . [a − a ]S = −5 4 S = [id]K2 S −5 4 = 1 7 3 2 −2 1 −5 4 = −1 2 Pro libovolný bod b ∈ A nyní máme [b]S = 3 1 −1 4 [b]S + −1 2 Abychom ještě lépe viděli tvar přechodových vztahů, označíme [b]S = (x, y)T a [b]S = (x , y )T a vztahy přepíšeme. x y = 3 1 −1 4 x y + −1 2 = 3x + y − 1 −x + 4y + 2 Nové souřadnice jsou tedy lineární výrazy ve starých souřadnicích (tj. výrazy tvaru lineární forma + konstanta). Pro vektory dostaneme stejné výrazy bez konstantních členů. 12.2. Lineární kombinace bodů. Tvořit „lineární kombinace bodů nedává obecně žádný geometrický smysl, i když na některé smysluplné výrazy (např. vektor b − a a bod a + (b − a) = b) lze nazírat jako na lineární kombinace. Abychom nahlédli, že všem výrazům skutečně nelze dát v afinním prostoru geometrický smysl, podívejme se na výraz a + b, kde a, b jsou body nějakého afinního prostoru A s prostorem vektorů V. Přirozenou myšlenkou je zvolit v A soustavu souřadnic S a definovat a + b jako ten bod, jehož souřadnice vzhledem k S jsou [a]S + [b]S. Problém je, že výsledný bod závisí na volbě soustavy souřadnic. Například pro A = R2 , a = (0, 0)T , b = (1, 0)T by vzhledem ke kanonické soustavě souřadnic vyšlo a + b = (1, 0)T , ale vzhledem k soustavě souřadnic S = ((2, 3)T , (1, 0)T , (0, −1)T ) bychom měli [a]S = −2 3 , [b]S = −1 3 , [a + b]S = −3 6 , takže a + b = (2, 3)T + −3(1, 0)T + 6(0, −1)T = (−1, −3)T . Ještě by nás mohlo napadnout, že a+b je nějaký vektor, ale ani v tom případě bychom neuspěli – našli bychom dvě soustavy souřadnic, ve které se výsledky liší. 12.2.1. Afinní kombinace. Některým lineárním kombinacím ale smysl lze dát. Pokud bychom například počítali 1 2 a + 1 2 b stejným postupem vyšel by nám v obou případech stejný bod (1 2 , 0)T . Je to proto, že tento bod lze vyjádřit jako a+ 1 2 (b−a) (= b+ 1 2 (a−b)) a tento výraz je definován – je to součet bodu a a 1 2 -násobku vektoru b − a. Geometricky, je to střed úsečky a, b. Následující tvrzení zodpovídá přesně na otázku, kdy lze definovat bod jako lineární kombinace bodů. Tvrzení 12.13. Nechť A je afinní prostor nad T dimenze alespoň 1, a1, . . . , ak ∈ A body a λ1, . . . , λk ∈ T skaláry. Pak následující tvrzení jsou ekvivalentní. (1) Bod b o souřadnicích [b]S = λ1[a1]S+· · ·+λk[ak]S nezávisí na volbě soustavy souřadnic S. LINEÁRNÍ ALGEBRA 449 (2) λ1 + · · · + λk = 1. Důkaz. Snazší je dokázat implikaci (2) ⇒ (1). Je-li λ1 + · · · + λk = 1, stačí si uvědomit, že v libovolné soustavě souřadnic S díky této podmínce a tvrzení 12.10 o souřadnicích a operacích máme λ1[a1]S + · · · + λk[ak]S = [a1]S + λ2([a2]S − [a1]S) + · · · + λk([ak]S − [a1]S) = [a1 + λ2(a2 − a1) + · · · + λk(ak − a1)]S Protože body jsou jednoznačně určené svými souřadnicemi, bod b v (1) je nutně roven (korektně definovanému) bodu a1 + λ2(a2 − a1) + · · · + λk(ak − a1), který samozřejmě na S nezávisí. (1) ⇒ (2). TODO To nám umožňuje zavést afinní kombinaci bodů. Definice 12.14. Nechť A je afinní prostor nad T, a1, . . . , ak ∈ A body a λ1, . . . , λk ∈ T skaláry takové, že λ1+· · ·+λk = 1. Afinní kombinací bodů a1, . . . , ak s koeficienty λ1, . . . , λk rozumíme bod b ∈ A takový, že [b]S = λ1[a1]S + · · · + λk[ak]S kde S je libovolná soustava souřadnic prostoru A. Značíme b = λ1a1 + · · · + λkak. Afinní kombinaci jsme zavedli pomocí (libovolně zvolené) soustavy souřadnic, přičemž definice dává smysl díky předchozímu tvrzení. Z důkazu tohoto tvrzení také plyne, že afinní kombinaci lze zavést bez volby soustavy, například vztahem λ1a1 + · · · + λkak = a1 + λ2(a2 − a1) + · · · + λk(ak − a1) . Tento výraz je ale poněkud nesymetrický. Alternativní, symetrická definice a geometrický význam asi nejlépe vynikne z fyzikálního pohledu (i když ten můžeme uplatnit pouze pro reálné afinní prostory malých dimenzí a pouze pro afinní kombinace s nezápornými koeficienty). Afinní kombinaci λ1a1 + · · · + λkak totiž můžeme chápat jako těžiště soustavy hmotných bodů a1, . . . , ak s hmotnostmi λ1, . . . , λk. To je lépe vidět z následující charakteri- zace. Tvrzení 12.15. Nechť A je afinní prostor nad T, a1, . . . , ak ∈ A body a λ1, . . . , λk ∈ T skaláry takové, že λ1 + · · · + λk = 1. Pak bod λ1a1 + · · · + λkak je roven tomu jednoznačně určenému bodu b, pro který λ1(a1 − b) + λ2(a2 − b) + · · · + λk(ak − b) = o . Důkaz. V A zvolíme libovolnou soustavu souřadnic S s počátkem λ1a1 +· · ·+λkak. Pak pro libovolný bod b jsou souřadnice vektoru na levé straně vzhledem k S rovny [λ1(a1 − b) + λ2(a2 − b) + · · · + λk(ak − b)]S = [λ1a1 + λ2a2 + · · · + λkak]S − [λ1b + · · · + λkb]S = −[b]S (Používáme definici afinní kombinace a tvrzení 12.10 o počítání v souřadnicích.) Vidíme, že vektor na levé straně je nulový právě tehdy, když b = λ1a1+· · ·+λkak, což jsme měli dokázat. OBRAZEK (ruzne afin. kombinace dvou bodu, trojuhelnik, 4.bod v rovnobez- niku) 450 LIBOR BARTO A JIŘÍ TŮMA 12.2.2. Barycentrické souřadnice. Podíváme se blíže na afinní kombinace dvou bodů na afinní přímce. Mějme tedy afinní prostor A s prostorem vektorů V nad tělesem T, kde dim A(= dim V) = 1. Konkrétně například R nebo podprostor R2 nebo R3 tvaru A = c + LO {v}, v = o. Jsou-li a, b ∈ A dva různé body, pak každý bod c ∈ A lze vyjádřit právě jedním způsobem jako jejich afinní kombinace. Existenci takového vyjádření můžeme zdůvodnit například následujícím způsobem. Protože b − a je nenulový vektor a dim V = 1, je každý vektor ve V jeho násobkem. Existuje proto λ ∈ T takové, že c − a = λ(b − a). Nyní můžeme psát c = a + λ(b − a) = (1 − λ)a + λb (rovnost dokážeme například pomocí souřadnic a tvrzení 12.10). Jednoznačnost se nahlédne například z jednoznačnosti λ ve vyjádření c − a = λ(b − a). Důkaz obecnějšího tvrzení provedeme za okamžik. Bod c = λ1a + λ2b „dělí body a, b v poměru λ2 : λ1. Přesněji, λ1(c − a) = λ2(b − c). Pokud A je eukleidovský tak tento vztah znamená, že poměr „orientovaných vzdáleností c od a a c od b je λ2 : λ1, tj. v případě, že c leží na úsečce ab (ekvivalentně λ1, λ2 ≥ 0) je poměr vzdáleností λ2 : λ1 a vektory c − a, c − b jsou nesouhlasně orientované, v opačném případě je poměr vzdáleností |λ2| : |λ1| a vektory c − a, c − b jsou souhlasně orientované. a1, a2 a1 a2 (1 3 , 2 3 ) (−1, 2) Obrázek 94. Souřadnice dvou bodů vzhledem k barycentrické soustavě souřadnic (a1, a2). Afinní obal a1, a2 . Příklad 12.16. Vyjádříme bod c = (2, 3)T ∈ R2 jako afinní kombinaci bodů a = (1, 2)T a b = (5, 6)T . Úloha dává smysl, protože všechny tři body leží na afinní přímce (0, 1)T + LO (1, 1)T . Srovnáním prvních složek ve vztahu c = λ1a + λ2b získáme λ1 + 5λ2 = 2, což spolu s λ1 + λ2 = 1 dává λ1 = 3 4 , λ2 = 1 4 . Tedy c = 3 4 a + 1 4 b. Skutečně, bod c dělí body a, b v poměru 1 4 : 3 4 = 1 : 3. Fyzikální interpretace je taková, že má-li bod a hmotnost 3 4 a bod b hmotnost 1 4 , pak je jejich těžištěm bod c. Dvojice (λ1, λ2) tvoří tzv. barycentrické souřadnice bodu c vzhledem k (a, b). Vyjadřují, jakým způsobem musíme body a, b zatížit, aby jejich těžištěm byl bod c. Podobným způsobem lze definovat barycentrické souřadnice bodu v rovině vzhledem ke třem bodům neležících na jedné přímce, apod. Tvrzení 12.17. Nechť A je afinní prostor dimenze n s prostorem vektorů V a a1, . . . , ak ∈ A jsou body. Pak následující tvrzení jsou ekvivalentní. (1) Každý bod b ∈ A lze jednoznačným způsobem zapsat jako afinní kombinaci bodů a1, . . . , ak. (2) Posloupnost vektorů (a2 − a1, a3 − a1, . . . , ak − a1) tvoří bázi prostoru V (speciálně k = n + 1). Důkaz. K důkazu obou implikací si všimneme, že pro libovolný bod b ∈ A a skaláry λ1, . . . , λk, λ1 + · · · + λk = 1 vztah b = λ1a1 + · · · + λkak , LINEÁRNÍ ALGEBRA 451 platí právě tehdy, když platí vztah b − a1 = λ2(a2 − a1) + λ3(a3 − a1) + · · · + λk(ak − a1) . (1) ⇒ (2). Pro libovolný vektor v najdeme vyjádření bodu b = a1 + v jako afinní kombinaci bodů a1, . . . , ak a druhá ekvivalentní rovnost nám dává vyjádření vektoru b−a1 = v jako lineární kombinaci vektorů a2 −a1, . . . , ak −a1. To dokazuje, že posloupnost generuje V. Je-li o = λ2(a2 − a1) + · · · + λk(ak − a1) netriviální lineární kombinace a položíme-li λ1 = 1 − λ2 − . . . − λk, b = a1 dostáváme z první rovnosti vyjádření bodu b = a1 jako afinní kombinaci bodů a1, . . . , ak rozdílnou od a1 = 1a1 +0a2 +· · ·+0ak. Tento spor dokazuje, že posloupnost (a2 −a1, . . . , ak −a1) je lineárně nezávislá, takže je to báze. (2) ⇒ (1). Důkaz je rovněž přímočarý užitím výše uvedené ekvivalence. První podmínka nezávisí na pořadí bodů a1, . . . , ak, tedy lineární nezávislost posloupnosti v druhé části rovněž nezávisí na pořadí těchto bodů. Jako cvičení dokažte toto pozorování přímo. Jsou-li splněny ekvivalentní podmínky v tvrzení, říkáme, že Z = (a1, . . . , an+1) je barycentrická soustava souřadnic a (n + 1)-tici koeficientů (λ1, . . . , λn+1)T ve vyjádření bodu b ∈ A nazýváme barycentrické souřadnice bodu b vzhledem Z. Definice 12.18. Nechť A je afinní prostor dimenze n s prostorem vektorů V. Barycentrická soustava souřadnic je (n + 1)-tice bodů (a1, . . . , an+1), které splňují ekvivalentní podmínky v tvrzení 12.17. Je-li Z = (a1, . . . , an+1) barycentrická soustava souřadnic afinního prostoru A a b ∈ A, pak (n + 1)-tici skalárů (λ1, . . . , λn+1)T nazýváme barycentrické souřadnice bodu b vzhledem k Z, pokud b = λa1 + · · · + λn+1an+1. Podle tvrzení je Z = (a1, . . . , an+1) barycentrická soustava souřadnic právě tehdy, když je S = (a1, a2 − a1, a3 − a1, . . . , an+1 − a1) soustava souřadnic prostoru A. V důkazu jsme si všimli, že pokud známe souřadnice bodu b vzhledem k S, řekněme [b]S = (λ2, . . . , λn+1)T , pak snadno spočítáme barycentrické souřadnice bodu b: (1 − λ2 − . . . − λk, λ2, . . . , λn+1). Příklad 12.19. V afinním prostoru R2 vyjádříme b v barycentrické soustavě souřadnic (a1, a2, a3). b = 0 −1 , a1 = 2 7 , a2 = 8 1 , a3 = −6 −5 Protože vektory a2 − a1 = (6, −6)T a a3 − a1 = (−8, −12)T jsou lineárně nezávislé, posloupnost (a1, a2, a3) je skutečně barycentrickou soustavou souřadnic. Hledáme λ1, λ2, λ3 takové, že b = λ1a1 +λ2a2 +λ3a3 a λ1 +λ2 +λ3 = 1. Přepsáním do složek dostaneme soustavu tří rovnic o třech neznámých. Druhou možností je vypočítat [b]S = (λ2, λ3)T , kde S = (a1, a2 − a1, a3 − a1), a dopočítat λ1. Zvolíme druhou alternativu. Dostáváme soustavu (a2 − a1|a3 − a1|b − a1) = 6 −8 −2 −6 −12 −8 ∼ 6 −8 −2 0 −20 −10 Vychází λ3 = 1 2 , λ2 = 1 3 a λ1 = 1 − λ2 − λ3 = 1 6 . Barycentrické souřadnice bodu b vzhledem k (a1, a2, a3) jsou tedy (1 6 , 1 3 , 1 2 )T . 452 LIBOR BARTO A JIŘÍ TŮMA 12.2.3. Afinní kombinace pomocí dvojic. Afinní kombinaci více bodů v afinním prostoru A nad T lze, v případě, že charakteristika T není 2, získat pomocí afinních kombinací dvojic. Například pro T = R, λ1, λ2, λ3 = 0, λ1 +λ2 +λ3 = 1, λ1 +λ2 = 0 můžeme psát λ1a + λ2b + λ3c = (λ1 + λ2) λ1 λ1 + λ2 a + λ2 λ1 + λ2 b + λ3c . Výraz v závorce je afinní kombinací bodů a, b a celkově se jedná o afinní kombinaci této kombinace a bodu c, celý výraz tedy dává smysl. Fyzikální interpretace je taková, že těžiště soustavy hmotných bodů a, b, c s hmotnostmi λ1, λ2, λ3 můžeme určit tak, že nejprve určíme těžiště hmotných bodů a, b a pak těžiště výsledného bodu (o hmotnosti λ1 + λ2) a bodu c. Uvažujme nyní konkrétní situaci trojice bodů a, b, c v reálné afinní rovině, které neleží na jedné přímce a položme λ1 = λ2 = λ3 = 1 3 . Bod t = 1 3 a+1 3 b+1 3 c je těžištěm trojúhelníka s vrcholy a, b, c. Označíme-li tc = 1 2 a + 1 2 b, tj. tc je střed úsečky ab (co je úsečka jde formálně definovat pomocí konvexních kombinací diskutovaných níže). Podle vyjádření v předchozím odstavci máme t = 2 3 tc + 1 3 c, tj. t leží na úsečce ctc (těžnice) a tuto úsečku dělí v poměru 2 : 1. Podobně se ukáže, že t leží na úsečkách ata a btb (kde ta a tb jsou středy stran bc a ac) a dělí tyto úsečku ve stejném poměru 2 : 1. Přirozeným způsobem jsme mimochodem nahlédli, že úsečky spojující vrcholy a středy protilehlých stran se protínají v jednom bodě a tento bod je dělí v poměru 2 : 1! Podobným způsobem lze dokázat řadu podobných geometrických poznatků (viz cvičení). a b c tc ta tb t 12.2.4. Konvexní kombinace. Krátkou neformální poznámku věnujeme tzv. konvexním kombinacím v reálných afinních prostorech. Afinní kombinace λ1a1 +· · ·+λkak se nazývá konvexní, pokud jsou všechny koeficienty nezáporné (a tím pádem také menší než 1). Konvexní kombinace souvisí s konvexními útvary. Množinu bodů nazveme konvexní, pokud s každými dvěma body obsahuje celou úsečku, která je spojuje. Není těžké ukázat, že každá konvexní množina je uzavřená na konvexní kombinace (cvičení). Množina všech konvexních kombinací daných bodů a1, . . . , ak je proto nejmenším konvexní množinou obsahující tyto body. Této množině říkáme konvexní obal. Rozmyslete si, že konvexním obalem dvojice bodů a, b jsou právě body ležící na úsečce ab a že konvexním obalem trojice bodů a, b, c je trojúhelník (i se svým vnitřkem) s vrcholy a, b, c. Naopak, tento geometrický názor můžeme využít k formální definici úsečky ab jako konvexního obalu bodů a, b. Příklad 12.20. Ukážeme, jak lze barycentrické souřadnice použít při zjišťování zda daný bod leží uvnitř daného trojúhelníka. V příkladu 12.19 jsme zjistili, že barycentrické souřadnice bodu b = (0, −1)T vzhledem k (a1, a2, a3) = ((2, 7)T , (8, 1)T , (−6, −5)T ) jsou (1 6 , 1 3 , 1 2 ). Bod b je tedy LINEÁRNÍ ALGEBRA 453 afinní kombinací bodů (a1, a2, a3) s kladnými koeficienty, proto leží uvnitř trojúhelníka s vrcholy a1, a2, a3. Konvexní množiny vznikají například při řešení soustavy lineárních nerovnic. Řešení takových soustav se týká řada důležitých teoretických i praktických pro- blémů. 12.2.5. Lineární kombinace odpovídající vektorům. V tvrzení 12.13 jsme ukázali, kdy lineární kombinace bodů určuje bod nezávisle na volbě soustavy souřadnic, a to nám umožnilo definovat afinní kombinaci bodů. Výraz b − a napovídá, kdy lze lineární kombinaci bodů smysluplně interpretovat jako vektor. Tvrzení 12.21. Nechť A je afinní prostor nad T, a1, . . . , ak ∈ A body a λ1, . . . , λk ∈ T skaláry. Pak následující tvrzení jsou ekvivalentní. (1) Vektor v o souřadnicích [v]S = λ1[a1]S + · · · + λk[ak]S nezávisí na volbě soustavy souřadnic S. (2) λ1 + · · · + λk = 0. Důkaz. Důkaz je obdobný jako u tvrzení 12.13 a přenecháme jej do cvičení. Podobně jako u afinním kombinací nyní můžeme v případě, že λ1 + · · · + λk = 0, definovat vektor λ1a1 + . . . λkak předpisem [λ1a1 + · · · + λkak]S = λ1[a1]S + · · · + λk[ak]S kde S je libovolná soustava souřadnic prostoru A, nebo například vztahem λ1a1 + · · · + λkak = λ2(a2 − a1) + · · · + λk(ak − a1) . Obecněji, pro libovolný bod b ∈ A platí λ1a1 + · · · + λkak = λ1(a1 − b) + λ2(a2 − b) + · · · + λk(ak − b) . 12.3. Podprostory. Podprostory afinních prostorů definujeme analogicky jako podprostory vektorových prostorů. Definice 12.22. Nechť A je afinní prostor nad tělesem T s prostorem vektorů V. Afinní prostor B nad tělesem T s prostorem vektorů W se nazývá (afinní) podprostor prostoru A, pokud B ⊆ A, W ≤ V a sčítání bodu a vektoru v B je zúžením sčítání bodu a vektoru v A. Je-li A afinní eukleidovský prostor pak B nazýváme (afinním eukleidovským) podprostorem A, pokud je B afinním podprostorem A a navíc je skalární součin v B zúžením skalárního součinu v A. Již jsme se setkali s jedním typem podprostorů: Pro libovolný bod a ∈ A a (vektorový) podprostor W ≤ V tvoří množina bodů a+W (spolu se sčítáním zděděným z A) afinní podprostor prostoru A, jehož prostor vektorů je W. Následující tvrzení ukazuje, že takto získáme všechny podprostory. Tvrzení 12.23. Nechť A je afinní prostor nad tělesem T s prostorem vektorů V a B je jeho podprostor s prostorem vektorů W. Pak pro libovolný bod b ∈ B platí B = b + W. Navíc platí W = {c − b : c ∈ B} = {d − c : c, d ∈ B}. Poznámka: Sčítání bodu z b a vektoru z W můžeme provádět v libovolném z prostorů A nebo B, protože se podle definice shodují. Tím pádem se rovněž shoduje odčítání: Jsou-li c, d ∈ B dva body v B, pak vektor c − d ve W je definován jako ten jednoznačně určený vektor w ∈ W, pro který platí d + w = c. Protože sčítání v 454 LIBOR BARTO A JIŘÍ TŮMA A a B se shodují, vztah d + w = c platí i v A, takže d − c = w v A podle definice odčítání v A. Shodují se také jakékoliv další operace, které jsou odvozené z operací afinního prostoru, například afinní kombinace. Důkaz. Pro libovolný vektor w ∈ W platí b + w ∈ B, protože B je uzavřená na sčítání bodu a vektoru. Proto platí b + W ⊆ B. Naopak, pro libovolný bod c ∈ B máme c − b ∈ W, takže c = b + (c − b) ∈ b + W, což dokazuje opačnou inkluzi. Dodatek je rovněž snadný, plyne například z korespondence bodů a vektorů diskutované za definicí afinního prostoru. Příklad 12.24. Podprostory afinního prostoru R3 jsou čtyř typů: • body, tj. podprostory tvaru B = b + W, dim(W) = 0, čili W = {o} a B = {b}; • přímky, tj. podprostory tvaru B = b + W, dim(W) = 1, čili W = LO {v}, kde v = o, a B = b + LO {v} • roviny, tj. podprostory tvaru B = b+W, dim(W) = 2, čili W = LO {v, w}, kde (v, w) je lineárně nezávislá posloupnost, a B = b + LO {v, w} • celý prostor B = R3 Zavedli jsme názvy pro prostory dimenze 0 (body), 1 (přímky) a 2 (roviny). Ještě se používá pojem nadrovina, to je podprostor dimenze n − 1 v prostoru dimenze n. Například nadroviny v R1 jsou body, nadroviny v R2 jsou přímky a nadroviny v R3 jsou roviny. Podle tvrzení je prostor vektorů W podprostoru B prostoru A jednoznačně určen množinou bodů B, protože W je množina všech rozdílů bodů v B (jeden z bodů můžeme libovolně zafixovat). Proto při zadávání podprostoru často uvádíme jenom množinu bodů B a říkáme, že B je podprostor A. K tomu, aby neprázdná množina B ⊆ A byla podprostorem afinního prostoru A je nutné a stačí, aby množina vektorů W = {c − b : c ∈ B} (kde b ∈ B je libovolný bod) tvořila podprostor vektorového prostoru V. Podprostory lze také charakterizovat jako množiny bodů uzavřené na afinní kombinace. Tvrzení 12.25. Nechť A je afinní prostor a B ⊆ A, B = ∅. Pak B je podprostorem A právě tehdy, když každá afinní kombinace bodů z B leží v B. Důkaz. Je-li B podprostorem afinního prostoru A, pak triviálně každá afinní kombinace bodů z B leží v B. Předpokládejme naopak, že každá afinní kombinace bodů z B leží v B a zvolme libovolný bod b ∈ B. Je potřeba ukázat, že množina W = {c − b : c ∈ B} je podprostorem prostoru vektorů V afinního prostoru A. K tomu je potřeba ověřit, že W je uzavřená na sčítání a násobení skalárem. Jsou-li c, c dva body z B, pak (c − b) + (c − b) = (c + c − b) − b , kde c+c −b je afinní kombinací bodů z B, která v B podle předpokladu leží, takže (c − b) + (c − b) ∈ W a množina W je proto uzavřená na sčítání. Je-li c ∈ B a t ∈ T, pak t(c − b) = (tc + (1 − t)b) − b . Závorka na pravé straně je opět afinní kombinace bodů z B a dostáváme uzavřenost W na násobení skalárem. LINEÁRNÍ ALGEBRA 455 Podprostory vektorových prostorů často zadáváme pomocí množiny generátorů. Podobně, podprostory afinního prostoru A často zadáváme pomocí „generující množiny bodů X, říkáme například přímka určená body a, b nebo rovina určená body a, b, c, atd. Definice 12.26. Nechť X je neprázdná podmnožina bodů afinního prostoru A nad tělesem T. Afinním obalem množiny X rozumíme množinu AO {X} všech afinních kombinací bodů z X, tj. AO {X} = {λ1a1 + · · · + λkak : a1, . . . , ak ∈ X, λ1, . . . , λk ∈ T, λ1 + · · · + λk = 1} Tvrzení 12.27. Nechť X je neprázdná podmnožina bodů afinního prostoru A nad tělesem T. Pak AO {X} je podprostor afinního prostoru A a pro jeho prostor vektorů W platí W = {λ1a1 + · · · + λkak : a1, . . . , ak ∈ X, λ1, . . . , λk ∈ T, λ1 + · · · + λk = 0} = LO {{c − b : c ∈ X}} , kde b je libovolný bod v X. Důkaz. Protože afinní kombinace afinních kombinací je afinní kombinace, je AO {X} je podprostorem A podle charakterizace podprostorů pomocí afinních kombinací v tvrzení 12.25. Zvolme b ∈ X libovolně. Prostor vektorů W podprostoru AO {X} je roven (viz tvrzení 12.23) W = {c − b : c ∈ AO {X}}. Každý bod c v AO {X} je tvaru c = λ1a1 +· · ·+λkak, kde λ1 +· · ·+λk = 1, takže každý vektor c−b je tvaru λ1a1 + · · · + λkak + (−1)b, kde λ1 + · · · + λk + (−1) = 0. To dokazuje inkluzi ⊆ v první rovnosti. Naopak, každý vektor tvaru λ1a1 +· · ·+λkak, kde λ1 +· · ·+λk = 0, lze psát ve tvaru (λ1a1 + · · · + λkak + 1 · b) − b, kde λ1 + · · · + λk + 1 = 1, což dokazuje druhou inkluzi. Druhou část přenecháme do cvičení. Každý podprostor je uzavřený na afinní kombinace bodů. Proto každý podprostor afinního prostoru A obsahující množinu X musí obsahovat také AO {X}. V tomto smyslu je AO {X} „nejmenší podprostor A obsahující X. Příklad 12.28. Afinním obalem dvojice bodů X = {a, b}, a = b je přímka AO {X} = {λ1a + λ2b : λ1 + λ2 = 1} = a + W = b + W , kde W = {λ1a + λ2b : λ1 + λ2 = 0} = LO {b − a} Konkrétně, pro body a = (1, 2)T , b = (4, 6)T v afinním prostoru R2 je AO {X} = λ1 1 2 + λ2 4 6 : λ1 + λ2 = 1 = 1 2 + λ1 1 2 + λ2 4 6 : λ1 + λ2 = 0 = 1 2 + LO 3 4 = 4 6 + LO 3 4 456 LIBOR BARTO A JIŘÍ TŮMA 12.3.1. Bodový, parametrický a rovnicový popis podprostoru. Podprostor afinního prostoru A dimenze n můžeme popsat následujícími způsoby: • Bodově, zadáním množiny bodů X = {a1, . . . , al}. Množina X určuje podprostor B = AO {X} tvořený všemi afinními kombinacemi bodů z X. Prostor vektorů W je roven lineárnímu obalu LO {a2 − a1, . . . , al − a1}, takže na zadání prostoru dimenze k potřebujeme alespoň k + 1 bodů. Naopak, máme-li prostor B dimenze k a zvolíme a1, . . . , ak+1 ∈ B tak, aby (a2 − a1, . . . , ak+1 − a1) byla lineárně nezávislá posloupnost, pak je (a1, . . . , ak+1) barycentrická soustava souřadnic prostoru B, tj. každý bod lze jednoznačným způsobem zapsat jako afinní kombinaci bodů a1, . . . , ak+1 (viz tvrzení 12.17). • Parametricky, zadáním bodu b a množiny vektorů {v1, . . . , vl}. Daný bod a dané vektory určují podprostor B = b+W = b+LO {v1, . . . , vl}. Na zadání prostoru dimenze k potřebujeme bod a alespoň k vektorů. Naopak, máme-li prostor B dimenze k s prostorem vektorů W, zvolíme b ∈ B libovolně a zvolíme k-tici lineárně nezávislých vektorů z W, pak B = b + W a každý bod lze jednoznačným způsobem vyjádřit ve tvaru b + t1v1 + · · · + tkvk. Máme-li B zadán parametricky jako B = b + LO {v1, . . . , vl} a S je soustava souřadnic prostoru A, pak vyjádření B v soustavě souřadnic S je afinní podprostor [B]S = [b]S + LO {[v1]S, . . . , [vl]S} ≤ Tn . Takové podprostory aritmetických afinních prostorů vznikají při řešení soustav lineárních rovnic. To nám dává další možný popis podprostorů. • Rovnicově, zadáním soustavy souřadnic S prostoru A a soustavy lineárních rovnic Rx = c o n neznámých. Řešení soustavy je afinní podprostor [B]S = {x ∈ Tn : Rx = c} prostoru Tn , ten určuje podprostor B = b + W. Souřadnice [b]S bodu b jsou partikulárním řešením soustavy a [W]S = Ker R. Máme-li l rovnic, pak jádro matice soustavy má dimenzi alespoň n−l, takže dim(W) ≥ n−l. Pokud má matice soustavy plnou hodnost l, pak dim(W) = n − l. K zadání prostoru dimenze k proto potřebujeme alespoň n − k rovnic. Přechod od rovnicového popisu k parametrickému spočívá ve vyřešení soustavy lineárních rovnic. Jak z parametrického popisu vytvořit rovnicový popisuje důkaz následujícího tvrzení. Tvrzení 12.29. Nechť b + W je podprostor dimenze k aritmetického afinního prostoru Tn . Pak existuje matice R typu (n − k) × n nad T a bod c ∈ Tk takový, že množina řešení soustavy rovnic Rx = c je rovná b + W. Důkaz. Označme v1, . . . , vk nějakou bázi W, tj. W = LO {v1, . . . , vk} a uvažujme matici C = (v1| . . . |vk)T . Podle věty o dimenzi jádra a obrazu je dim Ker C = n−k. Označme (w1, . . . , wn−k) nějakou bázi Ker C, R = (w1| . . . |wn−k)T a c = Rb. Jádro matice R má dimenzi n − (n − k) = k a obsahuje každý z vektorů vi, protože pro libovolné j ∈ {1, . . . , n − k} platí wT j vi = vT i wj = 0 z volby vektorů w1, . . . , wn−k. Platí proto Ker R = W. Protože b je podle volby c partikulárním řešením soustavy Rx = c, je množina všech řešení soustavy Rx = c rovna b + Ker R = b + W. V důkazu máme zároveň návod jak hledat rovnicový popis podprostoru zadaného parametricky. Pokud vzhledem k soustavě souřadnic S je [B]S = b + W, LINEÁRNÍ ALGEBRA 457 napíšeme nějakou bázi W (nebo množinu generátorů W) do řádků matice a vyřešíme homogenní soustavu rovnic s touto maticí. Bázi množiny řešení napíšeme do řádků matice R a určíme pravou stranu c = Rb. Tím získáme rovnicový popis [B]S = {x ∈ Tn : Rx = c}. Navíc, je-li A afinní eukleidovský prostor a S jeho kartézská soustava, pak řádky matice R generují prostor ([W]S)⊥ = [W⊥ ]S, tj. generují vyjádření ortogonálního doplňku prostoru W vzhledem k S. Prvkům ortogonálního doplňku W říkáme normálové vektory. Příklad 12.30. Určíme parametricky podprostor B prostoru R5 daný rovnicovým popisem vzhledem ke kanonické bázi: 1 2 −1 0 2 2 4 0 1 −1       x1 x2 x3 x4 x5       = 1 4 Na tomto místě si rovněž můžeme uvědomit, že každá netriviální rovnice určuje nadrovinu v A (v našem případě nadrovinu v R5 ), takže rovnicové vyjádření podprostoru můžeme chápat jako vyjádření pomocí průniku nadrovin. Soustavu vyřešíme Gaussovou eliminační metodou 1 2 −1 0 2 1 2 4 0 1 −1 4 ∼ 1 2 −1 0 2 1 0 0 2 1 −5 2 B = b + W =       2 0 1 0 0       + LO          −2 1 0 0 0       ,       −1 0 −1 2 0       ,       1 0 5 0 2          Vidíme, že B je podprostor dimenze 3. Nyní si představme, že B je zadaný parametricky a zapomeňme na původní rovnicové vyjádření. Chceme nalézt soustavu (R|c), aby jejím řešením byl podprostor B = b+W. Napíšeme generátory prostoru W do řádků matice a najdeme její jádro. Ker   −2 1 0 0 0 −1 0 −1 2 0 1 0 5 0 2   = Ker   1 0 5 0 2 0 1 10 0 4 0 0 4 2 2   = LO          5 10 −1 2 0       ,       1 2 −1 0 2          Matici R tedy zvolíme takto: R = 1 2 −1 0 2 5 10 −1 2 0 . 458 LIBOR BARTO A JIŘÍ TŮMA Zbývá zvolit pravou stranu c tak, aby bod b byl partikulárním řešením. Dosazením získáme c = Rb = (1, 9)T . Rovnicový popis prostoru B je tedy například 1 2 −1 0 2 5 10 −1 2 0       x1 x2 x3 x4 x5       = 1 9 Vyšel jiný rovnicový popis než původní. To není překvapivé, podprostor můžeme parametricky i rovnicově zpravidla vyjádřit mnoha způsoby. Z rovnicového popisu vidíme také normálové vektory – lineární obal řádků matice A tvoří právě vektory kolmé na W vzhledem ke standardímu skalárnímu součinu. Shrňme různé způsoby vyjádření přímek a rovin v afinního eukleidovském prostoru R3 se standardním skalárním součinem. • Přímku můžeme popsat jako afinní obal dvojice různých bodů, parametricky ve tvaru b + LO {v} , v = o, nebo dvěma rovnicemi a11x1 + a12x2 + a13x3 = c1, a21x1 + a22x2 + a23x3 = c2, přičemž normálové vektory této přímky jsou právě vektory v LO (a11, a12, a13)T , (a21, a22, a23)T . • Rovinu můžeme popsat jako afinní obal trojice bodů neležících na jedné přímce, parametricky ve tvaru b + LO {v1, v2}, kde (v1, v2) je lineárně nezávislá posloupnost, nebo rovnicí a11x1 + a12x2 + a13x3 = c1, přičemž normálové vektory této roviny jsou právě vektory v LO (a11, a12, a13)T . OBRAZEK Stejná diskuze platí pro libovolný afinní eukleidovský prostor dimenze 3, kde rovnicový popis bereme vzhledem k nějaké kartézské soustavě souřadnic. Vynecháme-li poznámky o normálových vektorech, pak diskuze platí v libovolném afinním prostoru dimenze 3, kde rovnicový popis bereme vzhledem k libovolné soustavě sou- řadnic. 12.3.2. Vzájemná poloha podprostorů. Definice 12.31. Nechť A je afinní prostor a B = b + U, C = c + W jeho podprostory. Říkáme, že B a C jsou • rovnoběžné, pokud U ≤ W nebo W ≤ U, • různoběžné, pokud nejsou rovnoběžné a B ∩ C = ∅, • mimoběžné, pokud nejsou rovnoběžné ani různoběžné. Při naší definici totožné prostory jsou rovnoběžné. Rovněž podprostory B, C takové, že B ⊆ C, nazýváme rovnoběžné. Rovnoběžnost rozhodneme snadno z parametrického vyjádření: Pozorování 12.32. Podprostory B = b+U a C = c+W afinního prostoru A jsou rovnoběžné právě tehdy, když dim(U + W) = max{dim(U), dim(W)} Důkaz. U je podprostor W právě tehdy, když U + W je podprostor W, což nastane, právě když dim(W) = dim(U + W) (protože W je vždy podprostor U + W, takže W = U + W platí, právě když se rovnají dimenze těchto prostorů podle tvrzení 5.69). Podobně, W je podprostor U právě tehdy, když dim(U) = dim(U + W). Z toho vyplývá, že B a C jsou rovnoběžné právě tehdy, když dim(U + W) = max{dim(U), dim(W)}. LINEÁRNÍ ALGEBRA 459 Příklad 12.33. Zjistíme, zda jsou podprostory B = b + U a C = c + W aritmetického afinního prostoru Z3 5 rovnoběžné. B =   1 2 3   + LO      1 0 4      , C =   3 0 1   + LO      1 4 3   ,   2 4 2      Nejprve určíme dimenze B (= dimenze U) a C. Zřejmě dim(U) = 1, takže B je afinní přímka. Řádkovými úpravami množiny generátorů prostoru W zjistíme dim(W). 1 4 3 2 4 2 ∼ 1 4 3 0 1 1 Takže dim C = dim W = 2 a C je afinní rovina. K určení dimenze součtu U + W využijeme již provedenou úpravu   1 0 4 1 4 3 0 1 1   ∼   1 0 4 0 4 4 0 1 1   ∼ 1 0 4 0 1 1 Dimenze U+W je 2, což je rovno dimenzi W, takže prostory B a C jsou rovnoběžné. K rozhodnutí, zda jsou dva nerovnoběžné prostory různoběžné můžeme použít následující pozorování. Pozorování 12.34. Průnik dvou podprostorů B = b + U a C = c + W afinního prostoru A je neprázdný právě tehdy, když b − c ∈ U + W. Důkaz. Pokud d ∈ B ∩ C, pak ve vyjádření b − c = (b − d) + (d − c) je b − d ∈ U a d − c ∈ W, takže b − c ∈ U + W. Naopak, pokud b − c ∈ U + W pak existují vektory u ∈ U a w ∈ W takové, že b − c = u + w. Pak bod b − u = c − w leží zároveň v B i v C, takže B a C mají neprázdný průnik. Zda platí b − c ∈ U + W můžeme v parametrickém vyjádření opět rozhodnout pomocí dimenzí, protože b−c ∈ U +W je ekvivalentní s dim(LO {b − c}+U +W) = dim(U + W). Příklad 12.35. Určíme vzájemnou polohu podprostorů B, C v afinním prostoru A nad tělesem R dimenze 4. Roviny B, C jsou dané parametricky vzhledem k nějaké soustavě souřadnic S. [B]S = [b]S + [U]S =     3 1 1 1     + LO        2 −1 0 3     ,     3 1 3 7        , [C]S = [c]S + [W]S =     2 0 −1 1     + LO        1 2 3 4     ,     2 0 −1 5        460 LIBOR BARTO A JIŘÍ TŮMA Vidíme, že generátory [U]S a [W]S jsou lineárně nezávislé, takže dimenze obou prostorů jsou 2, tj. B a C jsou afinní roviny. Spočítáme dimenzi U + W:     1 2 3 4 2 0 −1 5 2 −1 0 3 3 1 3 7     ∼     1 2 3 4 0 −4 −7 −3 0 −5 −6 −5 0 −5 −6 −5     ∼   1 2 3 4 0 4 7 3 0 −20 −24 −20   ∼   1 2 3 4 0 4 7 3 0 0 11 −5   Dimenze U + W je tedy 3. Prostory proto nejsou rovnoběžné. Přidáním vektoru [c − b]S = (1, 1, 2, 0)T dopočítáme dimenzi LO {c − b} + U + W.     1 1 2 0 1 2 3 4 0 4 7 3 0 0 11 −5     ∼     1 1 2 0 0 1 1 4 0 4 7 3 0 0 11 −5     ∼     1 1 2 0 0 1 1 4 0 0 3 −9 0 0 11 −5     ∼     1 1 2 0 0 1 1 4 0 0 3 −9 0 0 0 1     Dimenze LO {b − a}+U +W je 4, což je více než dimenze U +W, takže B ∩C = ∅. Protože navíc B a C nejsou rovnoběžné, jsou mimoběžné. V rovnicovém vyjádření je rozhodnutí, zda se prostory protínají snadné, zjistíme prostě, zda sjednocení soustav má řešení. Rozebereme si vzájemné polohy přímek a rovin v afinním prostoru A dimenze 3. Nad tělesem R vše vidíme, učiněná pozorování umožňují formální zdůvodnění a rovněž dokazují, že situace nad libovolným jiným tělesem je stejná. • Vzájemná poloha přímek B = b + LO {u} a C = c + LO {w}. – B a C jsou rovnoběžné právě tehdy, když LO {u} = LO {w}. V případě, že b ∈ C (ekvivalentně c ∈ B) jsou B a C totožné. – B a C jsou různoběžné právě tehdy, když nejsou rovnoběžné a dim LO {b − c, u, w} = 2: Pokud B a C nejsou rovnoběžné, pak dimenze LO {u, w} je nutně 2 (vektory u, w jsou v tomto případě lineárně nezávislé) a vztah dim LO {b − c, u, w} = 2 potom podle pozorování 12.34 platí právě tehdy, když se B a C pro- tínají. – B a C jsou mimoběžné právě tehdy, když dim LO {b − c, u, w} = 3: Plyne z předchozích dvou bodů, když si uvědomíme, že dimenze LO {b − c, u, w} může být 3 jen tehdy, když B a C nejsou rovnoběžné. • Vzájemná poloha přímky B = b + LO {u} a roviny C = c + LO {w1, w2}. – B a C jsou rovnoběžné právě tehdy, když u ∈ LO {w1, w2}, ekvivalentně, dim LO {u, w1, w2} = 2. Plyne z pozorování 12.32. V případě, že b ∈ C leží přímka B v rovině C (tj. B ⊆ C). – B a C jsou různoběžné právě tehdy, když dim LO {u, w1, w2} = 3: Pokud B a C nejsou rovnoběžné, pak LO {u, w1, w2} má nutně dimenzi alespoň 3, takže lineární obal je roven celému prostoru vektorů a má dimenzi 3. Vektor b − c pak v tomto lineárním obalu samozřejmě leží, takže B a C nikdy nemohou být mimoběžné. • Vzájemná poloha dvou rovin B = b + LO {u1, u2} a C = c + LO {w1, w2}. – B a C jsou rovnoběžné právě tehdy, když LO {u1, u2} = LO {w1, w2}, ekvivalentně, dim LO {u1, u2, w1, w2} = 2. – B a C jsou různoběžné právě tehdy, když dim LO {u1, u2, w1, w2} = 3. V dimenzi 3 tedy nemohou existovat dvě mimoběžné roviny, dokonce ani přímka mimoběžná s rovinou. V dimenzi 4 již taková situaci může nastat, v příkladu 12.35 jsme LINEÁRNÍ ALGEBRA 461 viděli dvě mimoběžné roviny. Jednodušším příkladem jsou roviny B = (0, 0, 0, 0)T + LO {e1, e2} a C = (0, 0, 0, 1)T + LO {e1, e3} v T4 . 12.3.3. Průnik a součet podprostorů. Pokud se dva afinní podprostory protínají, tzn. mají neprázdný průnik, pak je jejich průnikem podprostor. Tomuto podprostoru také říkáme průsečík, zejména v situaci, kdy je průnikem jediný bod. Tvrzení 12.36. Průnikem libovolné množiny podprostorů afinního prostoru A je buď prázdná množina, nebo podprostor prostoru A. Důkaz. Použijeme charakterizaci podprostorů pomocí afinních kombinací (viz tvrzení 12.25). Pokud je průnik C = ∩i∈IBi podprostorů Bi neprázdný, pak libovolná afinní kombinace bodů z C leží ve všech podprostorech Bi, takže leží i v C. Průnik je tedy uzavřen na afinní kombinace a je proto podprostorem prostoru A. Jako cvičení si rozmyslete následující pozorování. Pozorování 12.37. Průnik dvou podprostorů b + W, b + W afinního prostoru A je buď prázdný, nebo je roven c + (W ∩ W ), kde c je libovolný bod v průniku. Příklad 12.38. Ukážeme několik možností jak určit průnik D dvou rovin B, C v afinním prostoru A dimenze 3. Roviny B, C jsou dané parametricky vzhledem k nějaké soustavě souřadnic S: [B]S =   0 1 1  +LO      −7 2 1   ,   1 1 −1      , [C]S =   1 1 2  +LO      1 1 0   ,   1 3 1      Nejpřímočařejší je asi následující postup. Bod d leží v průniku D = B ∩ C právě tehdy, když [d]S lze vyjádřit ve tvaru [d]S = (0, 1, 1)T + t1(−7, 2, 1)T + t2(1, 1, −1) a zároveň ve tvaru [d]S = (1, 1, 2)T + t3(1, 1, 0)T + t4(1, 3, 1)T . Pro souřadnice [d]S = (d1, d2, d3)T tak dostáváme rovnice d1 = 0 − 7t1 + t2 = 1 + t3 + t4 d2 = 1 + 2t1 + t2 = 1 + t3 + 3t4 d3 = 1 + t1 − t2 = 2 + t4 Uvažujeme-li pouze rovnosti mezi t1, . . . , t4, dostaneme po úpravě soustavu čtyř rovnic o čtyřech neznámých   −7 1 −1 −1 1 2 1 −1 −3 0 1 −1 0 −1 1   ∼   1 −1 0 −1 1 0 −6 −1 −8 8 0 3 −1 −1 −2   ∼   1 −1 0 −1 1 0 3 −1 −1 −2 0 0 −3 −10 4   ∼ Řešením je (1, −5, −18, 5)T + LO (2, −7, −30, 9)T . Čtveřice (t1, . . . , t4)T , které řeší soustavu, jsou tedy právě čtveřice tvaru (t1, t2, t3, t4) = (1, −5, −18, 5)+r(2, −7, −30, 9) = (1 + 2r, −5 − 7r, −18 − 30r, 5 + 9r)T . Trojice (d1, d2, d3)T splňující vztahy výše pak jsou právě (d1, d2, d3)T = (−7(1 + 2r) + (−5 − 7r), 1 + 2(1 + 2r) + (−5 − 7r), 1 + (1 + 2r) − (−5 − 7r))T = (−12 − 21r, −2 − 3r, 7 + 9r) = (−12, −2, 7)T + r(−21, −3, 9)T Průnik je tedy roven [D]S = (−12, −2, 7)T +LO (−21, −3, 9)T = (−12, −2, 7)T + LO (7, 1, −3)T . 462 LIBOR BARTO A JIŘÍ TŮMA Uvedený postup je pracný. Lepší je vypočítat rovnicové vyjádření prostorů. Pro prostor B je potřeba vyřešit homogenní soustavu rovnic −7 2 1 1 1 −1 ∼ 1 1 −1 0 9 −6 Řešením je LO {(1, 2, 3)} a rovnicové vyjádření B vzhledem k S je x1+2x2+3x3 = c. Dosazením bodu (0, 1, 1)T získáme c = 5, takže rovnicové vyjádření B vzhledem k S je x1 + 2x2 + 3x3 = 5 . Rovnicové vyjádření C vzhledem k S vypočteme podobně vyřešením soustavy 1 1 0 1 3 1 ∼ 1 1 0 0 2 1 a dopočítáním pravé strany. Vychází x1 − x2 + 2x3 = 4 Rovnicové vyjádření průniku je nyní 1 2 3 5 1 −1 2 4 Vyřešením soustavy dostaneme parametrické vyjádření 1 2 3 5 1 −1 2 4 ∼ 1 2 3 5 0 3 1 1 . Dostáváme [D]S = (2, 0, 1)T + LO (7, 1, −3)T Možný je také kombinovaný postup, kdy jeden prostor máme vyjádřený rovnicově a druhý parametricky, který může být výhodný, například když jeden z prostorů má malou dimenzi (a tím pádem má krátké parametrické vyjádření) a druhý z prostorů má velkou dimenzi (takže je kratší jej popsat rovnicově). Sjednocení podprostorů afinního prostoru je zřídkakdy podprostorem, například sjednocení dvou různých přímek není nikdy podprostorem. Proto definujeme součet podprostorů jako nejmenší afinní podprostor obsahující sjednocení, tj. jeho afinní obal. Definice 12.39. Součtem podprostorů B1, . . . , Bk afinního prostoru A rozumíme afinní obal jejich sjednocení, značíme B1 + · · · + Bk: B1 + · · · + Bk = AO {B1 ∪ · · · ∪ Bk} . Z parametrického vyjádření podprostorů lze jednoduše získat parametrické vyjádření jejich součtu. Toto pozorování formulujeme pro jednoduchost pouze pro dva podprostory. Pozorování 12.40. Součet podprostorů b+U a c+W afinního prostoru A je roven (b + U) + (c + W) = b + (LO {c − b} + U + W) . LINEÁRNÍ ALGEBRA 463 Důkaz. Prostory b+U a c+W jsou zřejmě podprostory pravé strany, takže i jejich afinní obal je podprostorem (viz poznámku za tvrzením 12.27 o afinním obalu). To dokazuje ⊆. Prostor vektorů součtu (b + U) + (c + W) obsahuje U i W, protože b + U a c + W jsou jeho podprostory, a také vektor c − b, protože body c a b součtu leží. To dokazuje ⊇. Příklad 12.41. Součtem přímek B = b + LO {u} a C = c + LO {w} je buď • přímka b + LO {u} v případě, že B = C, nebo • rovina b + LO {c − b, u} v případě, že B a C jsou rovnoběžné, ale nikoliv totožné, nebo • rovina b + LO {u, w} v případě, že B a C jsou různoběžné, nebo • podprostor b + LO {c − b, u, w} dimenze 3 v případě, že B a C jsou mi- moběžné. Pozorného čtenáře asi napadne, zda platí nějaká obdoba věty o dimenzi součtu a průniku. V afinních prostorech je ale situace komplikovanější. Jako ilustraci uvažujme dvě přímky v R3 , které se neprotínají. Dimenze obou přímek je 1 a oba prostory mají prázdný průnik. (Prázdnou množinu za afinní prostor nepovažujeme. Někdy se prázdná množina povoluje a dimenze se definuje −1.) Součet ale může mít dimenzi 2 nebo 3, podle toho, zda jsou přímky rovnoběžné nebo mimoběžné. Projektivní prostory odstraní i tento nedostatek, v nich se rovnoběžné přímky přece jen protnou, a to v „bodě v nekonečnu . 12.3.4. Vzdálenost podprostorů. V afinním eukleidovském prostoru A máme definovanou vzdálenost bodů b, c ∈ A jako normu vektoru b−c. Vzdálenost libovolných dvou podmnožin X, Y ⊆ A definujeme přirozeně jako infimum vzdáleností bodů z X a bodů z Y . Definice 12.42. Vzdáleností dvou množin bodů X, Y ⊆ A v afinním eukleidovském prostoru A rozumíme číslo dist(X, Y ) = inf{ x − y : x ∈ X, y ∈ Y } . Infimum v definici nemůžeme obecně nahradit miminem, protože to nutně nemusí existovat (podívejte se například na polorovinu v R2 bez hraniční přímky a bod, který v ní neleží). Ukážeme, že v případě podprostorů se minima nabývá a naučíme se vzdálenost a „nejkratší příčku hledat. Nejkratší příčkou rozumíme dva body, jejichž vzdálenost je rovná vzdálenosti podprostorů. Je zřejmé, že pokud se podprostory protínají, je jejich vzdálenost 0. Z odvození vyplyne i opačná implikace – prostory, které se neprotínají, mají kladnou vzdálenost. Uvažujme tedy dva podprostory B = b + U a C = c + W afinního eukleidovského prostoru A, dim A = n. K získání geometrického náhledu si představte dvě mimoběžné přímky v R3 a přímku a rovnoběžnou rovinu v R3 . Chceme najít body d ∈ B a e ∈ C takové, že d − e je nejmenší možná. Tyto body vyjádříme ve tvaru d = b + u, e = c + w, kde u ∈ U a w ∈ W. Výraz d − e lze napsat ve tvaru d − e = (b + u) − (c + w) = (b − c) − (w − u) . Vektor x = w − u leží v U + W. Nyní si vzpomeneme na větu 8.60 o nejlepší aproximaci vektoru v podprostoru: Vektor (b − c) − x, x ∈ U + W má nejmenší možnou normu právě tehdy, když je x rovno ortogonální projekci vektoru b − c na podprostor U+W. To ukazuje, že pro libovolné dva body d ∈ B a e ∈ C je d − e 464 LIBOR BARTO A JIŘÍ TŮMA větší nebo rovná normě kolmice z vektoru b − c na podprostor U + W, což nám dává dolní odhad pro vzdálenost B od C. Na druhou stranu, ortogonální projekce x vektoru b − c na podprostor U + W je tvaru x = u + w pro u ∈ U, w ∈ W. Položíme-li d = b − u ∈ B a e = c + w ∈ C máme d − e = (b − c) − (u + w) = (b − c) − x. Nalezli jsme dva body, pro které d − e je rovno normě kolmice z vektoru b − c na podprostor U + W, to nám dává horní odhad. Ještě si všimneme, že kolmice z vektoru b−c na podprostor U +W je nulová (to nastane právě když je jeho norma nulová) právě tehdy, když b − c leží v U + W, tedy právě tehdy, když se prostory B a C protínají (viz pozorování 12.34). Prostory, které se neprotínají tedy mají kladnou vzdálenost. Odvodili jsme: Tvrzení 12.43. Vzdálenost podprostorů B = b+U a C = c+W afinního eukleidovského prostoru A dimenze n je rovná normě kolmice z vektoru b − c na podprostor U + W. Je-li ortogonální projekce x vektoru b − c vyjádřená ve tvaru x = u + w, u ∈ U a w ∈ W a položíme-li d = b − u, e = c + w, pak dist(B, C) = d − e . Vzdálenost B a C je nulová právě tehdy, když B ∩ C = ∅. OBRAZEK (dve mimobezky, rovina a rovnobezna primka) K výpočtu ortogonální projekce x vektoru b − c na podprostor U + W můžeme použít tvrzení ?? o výpočtu ortogonální projekce pomocí Gramovy matice: Označme u1, . . . , uk nějakou množinu generátorů vektorového prostoru U a w1, . . . , wl nějakou množinu generátorů vektorového prostoru W. Pak U+W = LO {u1, . . . , uk, w1, . . . , wl} a podle tvrzení je x = s1u1 + · · · + skuk + t1w1 + · · · + tlwl , kde (s1, . . . , sk, t1, . . . , tl)T je libovolné řešení soustavy rovnic, jejíž matice je rovna Gramově matici vektorů u1, . . . , uk, . . . , w1, . . . , wl a pravá strana je tvořená skalárními součiny vektoru b−c s vektory u1, . . . , wl. Pak body d = b−s1u1 −. . .−skuk ∈ B a e = c + t1w1 + · · · + tlwl tvoří nejkratší příčku prostorů B a C. Nejkratších příček může být samozřejmě více, třeba v případě dvou rovnoběžných prostorů. Příklad 12.44. V afinním eukleidovském prostoru R3 se standardním skalárním součinem spočítáme vzdálenost a nejkratší příčku přímek B a C. B = b+u =   1 −8 11  +LO      2 3 −6      , C = c+w =   8 3 13  +LO      6 −1 12      Nejkratší příčka je tvořena body d = b − su a e = c + tw, kde (s, t)T je libovolné řešení soustavy u · u u · w u · (b − c) v · u w · w w · (b − c) = 49 −63 −35 −63 181 −55 ∼ 7 −9 −5 −63 181 −55 ∼ 7 −9 −5 0 100 −100 LINEÁRNÍ ALGEBRA 465 Řešení je (s, t)T = (−2, −1)T , takže body d = b − (−2)u = (5, −2, −1)T a e = c + (−1)w = (2, 4, 1)T tvoří nejkratší příčku. Vzdálenost B a C je dist(B, C) = d − e = 3, −6, −2 = √ 49 = 7. Dále víme, že ortogonální projekce vektoru b−c na prostor LO {u, v} je su+tv = (−10, −5, 0). Pro kontrolu si můžeme spočítat, že vektor (b − c) − (−10, −5, 0)T = (−7, −11, −2)T − (−10, −5, 0)T = (3, −6, −2)T je rovný d − e a je skutečně kolmý na LO {u, v}. Pro jiný než standardní skalární součin by se výpočet lišil pouze ve výpočtu skalárních součinů při sestavování soustavy. 12.4. Afinní zobrazení. Lineární zobrazení mezi vektorovými prostory je zobrazení zachovávající součet a násobení skalárem, ekvivalentně, zobrazení zachovávající lineární kombinace. Obdobně zavedeme afinní zobrazení mezi afinními prostory jako zobrazení zachovávající afinní kombinace bodů. Definice 12.45. Nechť A a B jsou afinní prostory nad stejným tělesem T. Zobrazení F : A → B nazýváme afinní zobrazení z A do B, značíme F : A → B, pokud zachovává afinní kombinace, tj. pro libovolné k ∈ N, a1, . . . , ak ∈ A, λ1, . . . , λk ∈ T, λ1 + · · · + λk = 1 platí F(λ1a1 + · · · + λkak) = λ1F(a1) + · · · + λkF(ak) . Slovy, obraz afinní kombinace je afinní kombinace obrazů se stejnými koeficienty. Fyzikální interpretace: těžiště soustavy hmotných bodů se musí zobrazit na těžiště obrazů se stejnými hmotnostmi. Podíváme se podrobněji na případ k = 2 v definici. Zvolíme pevně dva různé body a1, a2 ∈ A a označíme b1 = F(a1), b2 = F(a2). Každý bod c na přímce AO {a1, a2} lze zapsat jako afinní kombinaci c = λ1a1 + λ2a2. Jeho obrazem musí být bod F(c) = λ1b1 + λ2b2. Obrazem je tedy bod v AO {b1, b2}, který má stejné poměry „orientovaných vzdáleností od bodů b1, b2 jako má bod c od bodů a1, a2. V degenerovaném případě kdy b1 = b2 se všechny body přímky AO {a1, a2} zobrazí do b1. V části 12.2.3 (viz cvičení ??) jsme diskutovali, že v případě, že těleso má charakteristiku různou od dva, lze každou afinní kombinaci napsat pomocí afinní kombinace dvojic. Rozmyslete si (cvičení), že tím pádem by pro taková tělesa stačilo v definici požadovat zachovávání afinních kombinací dvojic. Jinými slovy, afinní zobrazení je takové zobrazení, které zobrazuje přímky na přímky nebo body a zachovává poměry „orientovaných vzdáleností bodů na přímce (opět předpokládáme charakteristiku různou od dva). a1, a2 a1 a2 1 3 a1 + 2 3 a2 −a1 + 2a2 F → b1, b2 b1 b2 1 3 b1 + 2 3 b2 −b1 + 2b2 Obrázek 95. Afinní zobrazení F, kde bi = F(ai). 466 LIBOR BARTO A JIŘÍ TŮMA Dobrou představu o afinních zobrazeních z prostoru A dimenze n do B (libovolné dimenze) si vytvoříme, uvážíme-li nějakou barycentrickou soustavu souřadnic (a1, . . . , an+1) v A a obrazy bi = F(ai). Každý bod a ∈ A lze zapsat jednoznačně jako afinní kombinaci a = λ1a1 + · · · + λn+1an+1 a obraz je pak nutně F(a) = λ1b1 + · · · + λn+1bn+1. Naopak, na barycentrické soustavě souřadnic si můžeme obrazy předepsat libovolně a to jednoznačně určuje afinní zobrazení. Tyto skutečnosti jsou obdobou tvrzení 6.4 o určení lineárního zobrazení na bázi. OBRAZEK (v R2) Tvrzení 12.46. Nechť A a B jsou afinní prostory nad tělesem T, dim A = n, (a1, . . . , an+1) je barycentrická soustava souřadnic prostoru A a b1, . . . , bn+1 ∈ B. Pak existuje právě jedno afinní zobrazení F : A → B splňující F(ai) = bi pro každé i ∈ {1, 2, . . . , n + 1}. Důkaz. Jednoznačnost plyne z definice. Abychom dokázali existenci, definujeme F jak si vynucuje definice, tj. pro bod a ∈ A položíme F(a) = λ1b1 + · · · + λn+1bn+1, kde (λ1, . . . , λn+1)T jsou barycentrické souřadnice bodu a vzhledem k dané barycentrické soustavě. Je potřeba ověřit, že vzniklé zobrazení je afinní, tj. podmínka z definice platí pro libovolné k a libovolné body. To přenecháme do cvičení. Konkrétní příklady afinních zobrazení: • Konstantní zobrazení F : A → B, které každému bodu v A přiřazuje pevně zvolený bod b ∈ B. • Posunutí o vektor v (který leží v prostoru směrů prostoru A) je afinní zobrazení F : A → A. Posunutím o vektor v přirozeně myslíme zobrazení definované F(c) = c + v. • Rotace o nějaký úhel, zrcadlení podle přímky, zkosení, projekce na přímku v nějakém směru, posunutí a každé složení těchto zobrazení je afinním zobrazením F : R2 → R2 . • Zobrazení přiřazující bodu A jeho souřadnice vzhledem ke zvolené soustavě souřadnic je afinní zobrazení F : A → Tn . 12.4.1. Afinní a lineární zobrazení. Afinní zobrazení mezi afinními prostory určuje přirozeným způsobem lineární zobrazení mezi prostory vektorů. Naopak, lineární zobrazení mezi jejich prostory vektorů a obraz jednoho bodu určují jednoznačně afinní zobrazení. Podrobněji. Uvažujme afinní prostor A s prostorem vektorů V, afinní prostor B s prostorem vektorů W (oboje nad tělesem T) a afinní zobrazení F : A → B. Zvolíme libovolný bod a ∈ A a definujeme zobrazení f : V → W vztahem f(v) = F(a + v) − F(a) pro každý vektor v ∈ V . Alternativně můžeme stejnou definici psát f(c − a) = F(c) − F(a) pro každý bod c ∈ A . Ukážeme, že takto definované zobrazení f nezávisí na volbě bodu a. Z definice afinního zobrazení dostaneme, že pro libovolný bod a ∈ A a vektor v ∈ V platí F(a + v) = F((a + v) − a + a ) = F(a + v) − F(a) + F(a ) , což po úpravě dává F(a + v) − F(a ) = F(a + v) − F(a) , LINEÁRNÍ ALGEBRA 467 takže f skutečně nezávisí na volbě bodu a. Jednoduchou úpravou definice f zjistíme, že zobrazení F je určené f a obrazem libovolného bodu a ∈ A vztahem F(c) = F(a) + f(c − a) pro libovolný bod c ∈ A nebo F(a + v) = F(a) + f(v) pro libovolný vektor v ∈ V . Jsou-li a1, . . . , ak ∈ A libovolné body a λ1, . . . , λk ∈ T skaláry takové, že λ1 + · · ·+λk = 0, pak „lineární kombinace λ1a1 +· · ·+λkak odpovídá nějakému vektoru ve V. Podíváme se na jeho obraz při zobrazení f. Podle definice f a definice afinního zobrazení je f(λ1a1 + · · · + λkak) = F(a + λ1a1 + · · · + λkak) − F(a) = F(a) + λ1F(a1) + · · · + λkF(ak) − F(a) = λ1F(a1) + · · · + λkF(ak) . Ještě nahlédneme, že f je skutečně lineární zobrazení: Pro libovolné dva vektory u, v ∈ V a skalár λ ∈ T označíme b = a + u, c = a + u + v a spočítáme f(u + v) = f(c − a) = F(c) − F(a) = (F(c) − F(b)) + (F(b) − F(a)) = f(c − b) + f(b − a) = f(u) + f(v) f(λu) = f(λb − λa) = λF(b) − λF(a) = λ(F(b) − F(a)) = λf(b − a) = λf(u) Naopak, je-li f : V → W lineární zobrazení a a ∈ A, b ∈ B, pak zobrazení F : A → B definované vztahem F(c) = b + f(c − a) pro každé c ∈ A ekvivalentně F(a + v) = b + f(v) pro každé v ∈ V je afinní zobrazení F : A → B (pro které F(a) = b), protože pro libovolnou afinní kombinaci λ1a1 + · · · + λkak ( k 1 λi = 1) máme F(λ1a1 + · · · + λkak) = b + f(λ1a1 + · · · + λkak − a) = b + f(λ1(a1 − a) + · · · + λk(ak − a)) = b + λ1f(a1 − a) + · · · + λkf(ak − a) = λ1(b + f(a1 − a)) + · · · + λk(b + f(ak − a)) = λ1F(a1) + · · · + λkF(ak) Shrneme učiněná pozorování. Tvrzení 12.47. Nechť A, B jsou afinní prostory nad stejným tělesem T a V, W jsou jejich prostory vektorů. Pak platí: (1) Pro libovolné afinní zobrazení F : A → B zobrazení f : V → W definované pro v ∈ V vztahem f(v) = F(a + v) − F(a) nezávisí na volbě bodu a a je lineárním zobrazením V → W. Pro libovolné a, c ∈ A platí F(c) = F(a)+f(c−a) a pro libovolnou kombinaci λ1a1 +. . . λkak, λ1 +· · ·+λk = 0 platí f(λ1a1 + · · · + λkak) = λ1F(a1) + · · · + λkF(ak) . (2) pro libovolné lineární zobrazení f : V → W a body a ∈ A, b ∈ B je zobrazení F : A → B definované vztahem F(c) = b + f(c − a) afinní zobrazení A → B. 468 LIBOR BARTO A JIŘÍ TŮMA V situaci předchozího tvrzení říkáme, že afinní zobrazení F vytváří lineární zobrazení f nebo, že f je lineární zobrazení příslušné F, apod. Například afinní zobrazení F : A → A vytvořená identitou jsou právě posunutí, zobrazení vytvořená rotací jsou rotace složené s posunutím. Následující pozorování shrnuje některé jednoduché, ale důležité vlastnosti afinních zobrazení a příslušných lineárních. Pozorování 12.48. Nechť F : A → B je afinní zobrazení a f : V → W příslušné lineární zobrazení. Pak platí: (1) F je prosté právě tehdy, když f je prosté, (2) F je na právě tehdy, když f je na. (3) Obrazem podprostoru B = b + U prostoru A při zobrazení F je podprostor F(B) = F(b) + f(U) prostoru B. (4) Je-li G : B → C afinní zobrazení a g příslušné lineární zobrazení, pak složené zobrazení G ◦ F je afinním zobrazením A → C a jemu příslušné lineární zobrazení je g ◦ f. Důkaz. Cvičení. 12.4.2. Afinní zobrazení v souřadnicích. Na příkladu ukážeme jak popsat afinní zobrazení mezi konečně dimenzionálními prostory v souřadnicích. Příklad 12.49. Popíšeme zobrazení, které zobrazuje trojici bodů a1, a2, a3 ∈ R2 na trojici bodů b1, b2, b3 ∈ R3 (v tomto pořadí). a1 = 1 1 , a2 = −1 1 , a3 = 2 −1 , b1 =   5 3 2   , b2 =   3 −1 4   b3 =   0 3 −1   Protože D = (a2 − a1, a3 − a1) = ((−2, 0)T , (1, −2)T ) je báze R2 , tvoří trojice (a1, a2, a3) barycentrickou soustavu souřadnic, takže afinní zobrazení F : R2 → R3 je podmínkami jednoznačně určené (viz tvrzení 12.46). Určíme příslušné lineární zobrazení f : R2 → R2 . Obrazem vektoru a2 − a1 je vektor f(a2 − a1) = F(a2) − F(a1) = b2 − b1 = (−2, −4, 2)T a obrazem a3 − a1 je f(a3 − a1) = b3 − b1 = (−5, 0, −3)T . Matice f vzhledem k D a K3 je proto [f]D K3 =   −2 −5 −4 0 2 −3   takže vzhledem ke kanonickým bázím je [f]K2 K3 = [f]D K3 [id]K2 D =   −2 −5 −4 0 2 −3   −2 1 0 −2 −1 =   −2 −5 −4 0 2 −3   1 4 −2 −1 0 −2 =   1 3 2 1 −1 1   . Nyní pro libovolný bod c ∈ R2 a vektor v ∈ R2 je F(c+v) = F(c)+f(v). Použijeme tento vztah pro c = (0, 0)T a v = (x1, x2)T a dostáváme obraz bodu (x1, x2)T : F x1 x2 = F 0 0 + f x1 x2 = F 0 0 +   1 3 2 1 −1 1   x1 x2 LINEÁRNÍ ALGEBRA 469 Místo určování F((0, 0)T ) přímo, můžeme do vztahu dosadit například bod a1 a dopočítat. F 1 1 = F 0 0 +   1 3 2 1 −1 1   1 1   5 3 2   = F 0 0 +   4 3 0   F 0 0 =   1 0 2   Celkově dostáváme F x1 x2 =   1 0 2   +   1 3 2 1 −1 1   x1 x2 =   1 + x1 + 3x2 2x1 + x2 2 − x1 + x2   Jako zkoušku ověříme, že skutečně F(ai) = bi, i = 1, 2, 3. Obecněji, máme-li afinní zobrazení F : A → B, soustavu souřadnic S = (a, v1, . . . , vn) v prostoru A a soustavu souřadnic Q = (b, w1, . . . , wm) v prostoru B, pak souřadnice obrazu bodu c, který máme zadaný v soustavě S, vzhledem k Q spočítáme [F(c)]Q = [F(a)]Q + [f(c − a)]Q = [F(a)]Q + X[c]S , kde X je matice f vzhledem k bázím (v1, . . . , vn) a (w1, . . . , wm). Heslovitě, obraz je tvaru „bod plus matice krát vzor . Když na okamžik přestaneme rozlišovat body a vektory (zvolíme počátek a bod ztotožňujeme z jeho polohovým vektorem), pak lineární zobrazení jsou „rovná zobrazení , která zachovávají počátky, a afinní zobrazení jsou všechna rovná zobrazení. Vzniknou z lineárních složením s posunutím. 12.4.3. Izometrie. Izometrie mezi afinními eukleidovskými prostory je zobrazení, které zachovává vzdálenosti. Používá se také název shodnost, zejména v případě zobrazení mezi stejnými prostory. Definice 12.50. Nechť A, B jsou afinní eukleidovské prostory. Zobrazení F : A → B nazýváme izometrie, pokud zachovává vzdálenosti, tzn. pro libovolné a, c ∈ A platí a − c = F(a) − F(c) . Intuice napovídá, že izometrie je „rovné , tj. afinní zobrazení, a příslušné lineární zobrazení mezi prostory vektorů je ortogonální. Intuice se nemýlí, jak ukazuje následující věta. Věta 12.51. Nechť A a B jsou afinní eukleidovské prostory konečné dimenze a F : A → B je zobrazení. Pak následující tvrzení jsou ekvivalentní. (1) F je izometrie. (2) F je afinní zobrazení A → B a příslušné lineární zobrazení mezi prostory vektorů je ortogonální. Důkaz. Označíme V,W prostory vektorů afinních prostorů A, B. Implikace (2) ⇒ (1) je jednoduchá: Jsou-li a, c ∈ A libovolné body, pak F(a) − F(c) = f(a − c) = a − c . 470 LIBOR BARTO A JIŘÍ TŮMA Zajímavá je opačná implikace (1) ⇒ (2). Ukážeme myšlenku důkazu a některé technické detaily přenecháme do cvičení. • Pro libovolné dva body a1, a2 ∈ A a jejich afinní kombinaci a = λ1a1 +λ2a2 platí F(a) = λ1F(a1) + λ2F(a2). K důkazu si všimneme, že vztah „bod je afinní kombinací dvojice bodů s koeficienty λ1, λ2 můžeme charakterizovat pomocí jejich vzájemných vzdáleností (cvičení). • Protože F zachovává afinní kombinace dvojic, je F afinní zobrazení podle cvičení ??. Označme f příslušné lineární zobrazení mezi prostory vektorů. • Zobrazení f zachovává normy: Pro libovolný vektor v ∈ V a bod a ∈ A platí f(v) = f((a + v) − a) = F(a + v) − F(a) = a + v − a = v • Protože f zachovává normu, je podle tvrzení 8.88 ortogonální. V oddílech 10.2.5, 10.2.6 z kapitoly o vlastních číslech jsme popsali všechna ortogonální zobrazení R2 → R2 a R3 → R3 . Z dokázané věty tak získáme v těchto případech popis všech izometrií. Izometrie F : R2 → R2 jsou rotace složené s posunutím a ortogonální reflexe složené z posunutím. Izometrie F : R3 → R3 jsou rotace kolem osy složené z posunutím a rotace kolem osy složené s ortogonální reflexí vzhledem k rovině a posunutím. Obdobné výsledky samozřejmě platí pro izometrie mezi dvěma libovolnými eukleidovskými prostory dimenze 2 nebo 3, stačí vše převést do R2 nebo R3 pomocí kartézských soustav souřadnic. LINEÁRNÍ ALGEBRA 471 Shrnutí dvanácté kapitoly (1) Afinním prostorem A nad tělesem T rozumíme množinu A, jejíž prvky nazýváme body, spolu s vektorovým prostorem V nad T a operací + : A × V → A, která bodu a ∈ A a vektoru v ∈ V přiřadí bod a + v ∈ A, splňující axiomy: (aS2) Pro libovolný bod a ∈ A a libovolné vektory v, w ∈ V platí a + (v + w) = (a + v) + w. (aS1) Pro libovolný bod a ∈ A platí a + o = a. (aM) Ke každé dvojici bodů a, b ∈ A existuje právě jeden vektor v ∈ V , pro který a + v = b. Tento vektor značíme b − a. (2) Dimenzí afinního prostoru A rozumíme dimenzi jeho prostoru vektorů. (3) Některé důsledky axiomů: • a − b = −(b − a) • (a + u) − (b + v) = (a − b) + u − v • (a − b) + (c − d) = (a − d) + (c − b) • (a − b) + (b − c) = a − c (4) Afinním eukleidovským prostorem (resp. afinním unitárním prostorem) rozumíme afinní prostor A nad tělesem R (resp. C) spolu se skalárním součinem , na jeho prostoru vektorů. (5) Vzdáleností dvou bodů a, b ∈ A v afinním eukleidovském prostoru A rozumíme číslo a − b . (6) Soustavou souřadnic v afinním prostoru A dimenze n s prostorem vektorů V rozumíme (n+1)-tici S = (a, u1, u2, . . . , un), kde a ∈ A je bod nazývaný počátek soustavy souřadnic a B = (u1, . . . , un) je báze V. Je-li S soustava souřadnic jako výše, b ∈ A je bod a w ∈ V je vektor, pak souřadnice vektoru w v soustavě souřadnic S definujeme jako souřadnice w vzhledem k bázi B a značíme [w]S, tj. [w]S = [w]B a souřadnice bodu b v soustavě souřadnic S definujeme jako souřadnice vektoru b − a v bázi B, tj. [b]S = [b − a]S = [b − a]B . (7) Souřadnice bodu b v soustavě S jsou rovny té jednoznačně určené n-tici prvků (t1, . . . , tn) ∈ Tn , pro kterou platí b = a + t1u1 + · · · + tnun . (8) Soustava souřadnic S = (a, u1, . . . , un) v afinním eukleidovském prostoru se nazývá kartézská, pokud (u1, . . . , un) je ortonormální báze. (9) Je-li S soustava souřadnic afinního prostoru A s prostorem vektorů V nad tělesem T, pak pro libovolné v1, v2 ∈ V , b, c ∈ A, t ∈ T platí [v1+v2]S = [v1]S+[v2]S, [tv1]S = t[v1]S, [b+v1]S = [b]S+[v1]S, [b−c]S = [b]S−[c]S . Je-li navíc A afinní eukleidovský prostor a soustava S je kartézská, pak v1, v2 = [v1]S · [v2]S . 472 LIBOR BARTO A JIŘÍ TŮMA (10) Nechť S = (a, u1, . . . , un) a S = (a , u1, . . . , un) jsou soustavy souřadnic v afinním prostoru A s prostorem vektorů V a X je matice přechodu od (u1, . . . , un) k (u1, . . . , un). Pak pro každé b ∈ A, v ∈ V platí [v]S = X[v]S, [b]S = X[b]S + [a]S . (11) Nechť A je afinní prostor nad T dimenze alespoň 1, a1, . . . , ak ∈ A body a λ1, . . . , λk ∈ T skaláry. Pak následující tvrzení jsou ekvivalentní. (a) Bod b o souřadnicích [b]S = λ1[a1]S + · · · + λk[ak]S nezávisí na volbě soustavy souřadnic S. (b) λ1 + · · · + λk = 1. (12) Nechť A je afinní prostor nad T, a1, . . . , ak ∈ A body a λ1, . . . , λk ∈ T skaláry takové, že λ1 + · · · + λk = 1. Afinní kombinací bodů a1, . . . , ak s koeficienty λ1, . . . , λk rozumíme bod b ∈ A takový, že [b]S = λ1[a1]S + · · · + λk[ak]S kde S je libovolná soustava souřadnic prostoru A. Značíme b = λ1a1 +· · ·+ λkak. (13) Afinní kombinaci lze zavést bez volby soustavy, například vztahem λ1a1 + · · · + λkak = a1 + λ2(a2 − a1) + · · · + λk(ak − a1) . (14) Nechť A je afinní prostor nad T, a1, . . . , ak ∈ A body a λ1, . . . , λk ∈ T skaláry takové, že λ1 + · · · + λk = 1. Pak bod λ1a1 + · · · + λkak je roven tomu jednoznačně určenému bodu b, pro který λ1(a1 − b) + λ2(a2 − b) + · · · + λk(ak − b) = o . (15) Nechť A je afinní prostor dimenze n s prostorem vektorů V a a1, . . . , ak ∈ A jsou body. Pak následující tvrzení jsou ekvivalentní. (a) Každý bod b ∈ A lze jednoznačným způsobem zapsat jako afinní kombinaci bodů a1, . . . , ak. (b) Posloupnost vektorů (a2 − a1, a3 − a1, . . . , ak − a1) tvoří bázi prostoru V (speciálně k = n + 1). (16) Nechť A je afinní prostor dimenze n s prostorem vektorů V. Barycentrická soustava souřadnic je (n + 1)-tice bodů (a1, . . . , an+1), které splňují ekvivalentní podmínky v tvrzení 12.17. Je-li Z = (a1, . . . , an+1) barycentrická soustava souřadnic afinního prostoru A a b ∈ A, pak (n + 1)-tici skalárů (λ1, . . . , λn+1)T nazýváme barycentrické souřadnice bodu b vzhledem k Z, pokud b = λa1 +· · ·+λn+1an+1. (17) Nechť A je afinní prostor nad T, a1, . . . , ak ∈ A body a λ1, . . . , λk ∈ T skaláry. Pak následující tvrzení jsou ekvivalentní. (a) Vektor v o souřadnicích [v]S = λ1[a1]S + · · · + λk[ak]S nezávisí na volbě soustavy souřadnic S. (b) λ1 + · · · + λk = 0. (18) Podobně jako u afinním kombinací nyní můžeme v případě, že λ1+· · ·+λk = 0, definovat vektor λ1a1 + . . . λkak předpisem [λ1a1 + · · · + λkak]S = λ1[a1]S + · · · + λk[ak]S kde S je libovolná soustava souřadnic prostoru A, nebo například vztahem λ1a1 + · · · + λkak = λ2(a2 − a1) + · · · + λk(ak − a1) . LINEÁRNÍ ALGEBRA 473 Obecněji, pro libovolný bod b ∈ A platí λ1a1 + · · · + λkak = λ1(a1 − b) + λ2(a2 − b) + · · · + λk(ak − b) . (19) Nechť A je afinní prostor nad tělesem T s prostorem vektorů V. Afinní prostor B nad tělesem T s prostorem vektorů W se nazývá (afinní) podprostor prostoru A, pokud B ⊆ A, W ≤ V a sčítání bodu a vektoru v B je zúžením sčítání bodu a vektoru v A. Je-li A afinní eukleidovský prostor pak B nazýváme (afinním eukleidovským) podprostorem A, pokud je B afinním podprostorem A a navíc je skalární součin v B zúžením skalárního součinu v A. (20) Nechť A je afinní prostor nad tělesem T s prostorem vektorů V a B je jeho podprostor s prostorem vektorů W. Pak pro libovolný bod b ∈ B platí B = b + W. Navíc platí W = {c − b : c ∈ B} = {d − c : c, d ∈ B}. (21) Nechť A je afinní prostor a B ⊆ A, B = ∅. Pak B je podprostorem A právě tehdy, když každá afinní kombinace bodů z B leží v B. (22) Nechť X je neprázdná podmnožina bodů afinního prostoru A nad tělesem T. Afinním obalem množiny X rozumíme množinu LO {X} všech afinních kombinací bodů z X, tj. LO {X} = {λ1a1 + · · · + λkak : a1, . . . , ak ∈ X, λ1, . . . , λk ∈ T, λ1 + · · · + λk = 1} (23) Nechť X je neprázdná podmnožina bodů afinního prostoru A nad tělesem T. Pak LO {X} je podprostor afinního prostoru A a pro jeho prostor vektorů W platí W = {λ1a1 + · · · + λkak : a1, . . . , ak ∈ X, λ1, . . . , λk ∈ T, λ1 + · · · + λk = 0} = LO {{c − b : c ∈ X}} , kde b je libovolný bod v X. (24) Podprostor afinního prostoru A dimenze n můžeme popsat následujícími způsoby: • Bodově, zadáním množiny bodů X = {a1, . . . , al}. Množina X určuje podprostor B = LO {X} tvořený všemi afinními kombinacemi bodů z X. • Parametricky, zadáním bodu b a množiny vektorů {v1, . . . , vl}. Daný bod a dané vektory určují podprostor B = b+W = b+LO {v1, . . . , vl}. • Rovnicově, zadáním soustavy souřadnic S prostoru A a soustavy lineárních rovnic Rx = c o n neznámých. Řešení soustavy je afinní podprostor [B]S = {x ∈ Tn : Rx = c} prostoru Tn , ten určuje podprostor B = b + W. (25) Nechť b + W je podprostor dimenze k aritmetického afinního prostoru Tn . Pak existuje matice R typu (n − k) × n nad T a bod c ∈ Tk takový, že množina řešení soustavy rovnic Rx = c je rovná b + W. (26) Nechť A je afinní prostor a B = b + U, C = c + W jeho podprostory. Říkáme, že B a C jsou • rovnoběžné, pokud U ≤ W nebo W ≤ U, • různoběžné, pokud nejsou rovnoběžné a B ∩ C = ∅, • mimoběžné, pokud nejsou rovnoběžné ani různoběžné. (27) Podprostory B = b + U a C = c + W afinního prostoru A jsou rovnoběžné právě tehdy, když dim(U + W) = max{dim(U), dim(W)} 474 LIBOR BARTO A JIŘÍ TŮMA (28) Průnik dvou podprostorů B = b + U a C = c + W afinního prostoru A je neprázdný právě tehdy, když b−c ∈ U +W (ekvivalentně dim(LO {b − c}+ U + W) = dim(U + W)). (29) Průnikem libovolné množiny podprostorů afinního prostoru A je buď prázdná množina, nebo podprostor prostoru A. Průnik dvou podprostorů b + W, b + W afinního prostoru A je buď prázdný, nebo je roven c + (W ∩ W ), kde c je libovolný bod v průniku. (30) Součtem podprostorů B1, . . . , Bk afinního prostoru A rozumíme afinní obal jejich sjednocení, značíme B1 + · · · + Bk: B1 + · · · + Bk = LO {B1 ∪ · · · ∪ Bk} . (31) Součet podprostorů b + U a c + W afinního prostoru A je roven (b + U) + (c + W) = b + (LO {c − b} + U + W) . (32) Vzdáleností dvou množin bodů X, Y ⊆ A v afinním eukleidovském prostoru A rozumíme číslo dist(X, Y ) = inf{ x − y : x ∈ X, y ∈ Y } . (33) Vzdálenost podprostorů B = b + U a C = c + W afinního eukleidovského prostoru A dimenze n je rovná normě kolmice z vektoru b−c na podprostor U + W. Je-li ortogonální projekce x vektoru b−c vyjádřená ve tvaru x = u+w, u ∈ U a w ∈ W a položíme-li d = b − u, e = c + w, pak dist(B, C) = d − e . Vzdálenost B a C je nulová právě tehdy, když B ∩ C = ∅. (34) Nechť A a B jsou afinní prostory nad stejným tělesem T. Zobrazení F : A → B nazýváme afinní zobrazení z A do B, značíme F : A → B, pokud zachovává afinní kombinace, tj. pro libovolné k ∈ N, a1, . . . , ak ∈ A, λ1, . . . , λk ∈ T, λ1 + · · · + λk = 1 platí F(λ1a1 + · · · + λkak) = λ1F(a1) + · · · + λkF(ak) . (35) Nechť A a B jsou afinní prostory nad tělesem T, dim A = n, (a1, . . . , an+1) je barycentrická soustava souřadnic prostoru A a b1, . . . , bn+1 ∈ B. Pak existuje právě jedno afinní zobrazení F : A → B splňující f(ai) = bi pro každé i ∈ {1, 2, . . . , n + 1}. (36) Nechť A, B jsou afinní prostory nad stejným tělesem T a V, W jsou jejich prostory vektorů. Pak platí: (a) Pro libovolné afinní zobrazení F : A → B zobrazení f : V → W definované pro v ∈ V vztahem f(v) = F(a + v) − F(a) nezávisí na volbě bodu a a je lineárním zobrazením V → W. Pro libovolné a, c ∈ A platí F(c) = F(a)+f(c−a) a pro libovolnou kombinaci λ1a1+. . . λkak, λ1 + · · · + λk = 0 platí f(λ1a1 + · · · + λkak) = λ1F(a1) + · · · + λkF(ak) . (b) pro libovolné lineární zobrazení f : V → W a body a ∈ A, b ∈ B je zobrazení F : A → B definované vztahem F(c) = b + f(c − a) afinní zobrazení A → B. (37) Nechť F : A → B je afinní zobrazení a f : V → W příslušné lineární zobrazení. Pak platí: LINEÁRNÍ ALGEBRA 475 (a) F je prosté právě tehdy, když f je prosté, (b) F je na právě tehdy, když f je na. (c) Obrazem podprostoru B = b + U prostoru A při zobrazení F je podprostor F(B) = F(b) + f(U) prostoru B. (d) Je-li G : B → C afinní zobrazení a g příslušné lineární zobrazení, pak složené zobrazení G◦F je afinním zobrazením A → C a jemu příslušné lineární zobrazení je g ◦ f. (38) Máme-li afinní zobrazení F : A → B, soustavu souřadnic S = (a, v1, . . . , vn) v prostoru A a soustavu souřadnic Q = (b, w1, . . . , wm) v prostoru B, pak souřadnice obrazu bodu c, který máme zadaný v soustavě S, vzhledem k Q spočítáme [F(c)]Q = [F(a)]Q + [f(c − a)]Q = [F(a)]Q + X[c]S , kde X je matice f vzhledem k bázím (v1, . . . , vn) a (w1, . . . , wm). (39) Nechť A, B jsou afinní eukleidovské prostory. Zobrazení F : A → B nazýváme izometrie, pokud zachovává vzdálenosti, tzn. pro libovolné a, c ∈ A platí a − c = F(a) − F(c) . (40) Nechť A a B jsou afinní eukleidovské prostory konečné dimenze a F : A → B je zobrazení. Pak následující tvrzení jsou ekvivalentní. (a) F je izometrie. (b) F je afinní zobrazení A → B a příslušné lineární zobrazení mezi prostory vektorů je ortogonální. 476 LIBOR BARTO A JIŘÍ TŮMA Obsah 1. Opakování 1 1.1. Analytická geometrie v rovině a prostoru 1 1.2. Komplexní čísla 10 2. Řešení soustav lineárních rovnic 26 2.1. Úlohy vedoucí na soustavy lineárních rovnic 26 2.2. Soustavy lineárních rovnic a aritmetické vektory 29 2.3. Ekvivalentní a elementární úpravy 31 2.4. Gaussova eliminační metoda 38 2.5. Geometrie soustav lineárních rovnic 43 2.6. Praktické problémy při numerickém řešení velkých soustav rovnic 48 2.7. Jak dlouho to bude trvat 50 3. Tělesa 58 3.1. Motivace 58 3.2. Definice tělesa 60 3.3. Tělesa Zp 63 3.4. Charakteristika 69 3.5. Další příklady těles 70 4. Matice 77 4.1. Matice, jednoduché operace, typy matic 78 4.2. Součin matic 81 4.3. Matice jako zobrazení 95 4.4. Regulární matice 107 4.5. Soustavy lineárních rovnic podruhé 116 5. Vektorové prostory 137 5.1. Definice, příklady a základní vlastnosti 137 5.2. Podprostory 141 5.3. Lineární závislost a nezávislost 149 5.4. Báze 156 5.5. Hodnost matice 168 5.6. Průnik a součet podprostorů 176 5.7. Prostory nekonečné dimenze 180 5.8. Samoopravné kódy 181 6. Lineární zobrazení 200 6.1. Definice a příklady 200 6.2. Matice lineárního zobrazení 202 6.3. Skládání lineárních zobrazení 207 6.4. Typy lineárních zobrazení 209 6.5. Prostor lineárních zobrazení 214 7. Determinant 222 7.1. Motivace 222 7.2. Permutace 224 7.3. Definice determinantu a základní vlastnosti 230 7.4. Rozvoj, adjungovaná matice 239 7.5. Vandermondův determinant 244 8. Skalární součin 251 8.1. Standardní skalární součin v Rn a Cn 251 8.2. Obecný skalární součin 259 LINEÁRNÍ ALGEBRA 477 8.3. Kolmost 268 8.4. Ortogonální projekce a ortogonalizace 276 8.5. Unitární a ortogonální zobrazení a matice 291 8.6. Aplikace a zajímavosti 295 9. Vlastní čísla a vlastní vektory 309 9.1. Lineární dynamické systémy 309 9.2. Vlastní čísla a vlastní vektory 316 9.3. Diagonalizovatelné operátory 330 9.4. Jordanův kanonický tvar 349 9.5. Google 377 10. Unitární diagonalizace 391 10.1. Unitární a ortogonální diagonalizovatelnost 391 10.2. Spektrální věty 395 10.3. Singulární rozklad 404 10.4. Použití singulárního rozkladu 412 11. Bilineární formy a kvadratické formy 422 11.1. Matice 424 11.2. Symetrické a antisymetrické formy 426 11.3. Ortogonální báze 429 11.4. Ortogonální báze nad R 433 11.5. Příklady 437 12. Afinní prostory 443 12.1. Definice afinního prostoru 444 12.2. Lineární kombinace bodů 448 12.3. Podprostory 453 12.4. Afinní zobrazení 465 Obsah 476