2. ZÁKLADY MATICOVÉHO POČTU Jan Paseka Masarykova univerzita Brno 2. října 2006 □ S Abstrakt V této kapitole se seznámíme s maticemi, t.j. obdélníkovými tabulkami, s jejichž pomocí budeme kódovat nejrůznější důležité údaje o vektorových prostorech, a naučíme se s nimi pracovat. Obsah přednášky I ► Matice nad danou množinou Typy matic, řádky a sloupce matice. ►• Transponovaná matice, blokové matice. ► Matice nad daným tělesem ►• Vektorový prostor matic. ►• Násobení matic, operace s blokovými maticemi. ► Matice nad daným vektorovým prostorem n 3 - = ■= -00*0 Matice nad danou množinou I Nechť X je libovolná množina a m, n G N. Matici typu m x n, nebo též m x n-rozměrnou maticí nad množinou X rozumíme obdélníkovou tabulku Matice nad danou množinou II ( 3n 3i2 a21 ^22 3\n \ a2n \ 3ml 3m2 ■ ■ ■ 3mn / sestávající z prvků množiny X. □ g - = Matice nad danou množinou III Prvky a,j E X, kde 1 < /< m, 1 < j' < n, se nazývají prvky matice A. Prvek a/j, který se nachází v /-tém řádku a 7-tém sloupci matice A nazýváme též prvek v místě (na pozici) (i,j), resp. (ij)-tý prvek matice A. Množinu všech m x n-rozměrných matic nad množinou X značíme Xmx" (též Matm>n(X)). Pokud m = n, mluvíme o čtvercových maticích řádu n nad množinou X. n 3 - = ■= -00*0 22 Matice nad danou množinou IV Poznamenejme, že v případě, když některé z čísel m, n je 0, množina Xmx" sestává z jediné a to prázdné matice 0. Dále se budeme vždy bavit jen o maticích kladných rozměrů m x n. Dvě matice nad množinou X považujeme za navzájem stejné neboli totožné, pokud mají stejné rozměry a stejné prvky na příslušných místech. Matice nad danou množinou V To znamená, že pro matice A = (a//)mxn, B = (b;j)pxq nad X klademe A = B právě tehdy, když m = p, n = q a pro všechny / = 1,..., m, j = 1,..., n platí a/}- = bl}. Množina matic typu 1 x n nad X splývá s množinou X", pokud uspořádané n-tice prvků z X zapisujeme do řádku. Podobně, pokud uspořádané m-tice prvků z X zapisujeme do sloupce, tak množina matic typu m X 1 nad X splývá s množinou Xm. Matice nad danou množinou VI Nechť A = (3,7) G Xmxn. Uspořádanou n-tici r/(A) = (a/i,a/2,...,a/n) G Xlxn, kde 1 < /< m, nazýváme i-tým řádkem matice A. Matice nad danou množinou VII Podobně, uspořádanou m-tici s;(A) 32j , kde 1 < j' < n \ 3mj J nazýváme j-tým sloupcem matice A. n S - = ■= -00*0 Matice nad danou množinou VIII Matici A tak můžeme ztotožnit jak se sloupcem složeným z jejích řádků tak s řádkem složeným z jejích sloupců, t.j. A = (Sl(A), s2(A), ..., s„(A) ), Matice nad danou množinou IX f 3n 3i2 a21 ^22 3ln \ a2n f ri(A) \ r2(A) V ami am2 • • • 3mn / V rm(A) / □ s Matice nad danou množinou X Matici, kterou získáme z matice A = (a,j)mxn záměnou jejích řádků a sloupců, nazývame transponovanou maticí k matici A a značíme ji A . Matice nad danou množinou XI Ar ( all a21 3l2 322 3ml \ 3m2 \ 3\n Bin ■ ■ ■ 3mn / □ g - = Matice nad danou množinou XI ( all a21 • • • 3mi ^ 3l2 322 • • • 3m2 J \ 3in 32n ... To znamená, že A G X"xm a prvek na pozici (i, j) matice A je □ g - = Matice nad danou množinou XI Zřejmě pro libovolnou matici A G Xmx" platí (Ar)r = A. Transpozicí matic-řádků z Xlxn dostaneme matice-sloupce z X" a transpozicí matic-sloupců z Xmxl matice-řádky z Xlxm. Matice nad danou množinou XII Na základě této poznámky lze snadno vidět, že pro libovolnou matici A G Xmxn a 1 < / < m, 1 < j < n platí s/(Ar) = r/(A)r, rJ(Ar) = sJ(A)r Matice nad danou množinou XIII Čtvercová matice A G Xnxn se nazývá symetrická, pokud A = A , t.j. pokud a,j = ay, pro všechny indexy i J = 1,... , n Posloupnost prvků (an, 322, • • • , 3nn) nazýváme diagonálou čtvercové matice A. Transponovanou matici k čtvercové matici A zřejmě získáme "osovou souměrností" jejich prvků podle diagonály. Matice nad danou množinou XIV Někdy bude užitečné spojit dvě matice A G Xmxn\ B G Xmx"2 se stejným počtem řádků do jedné matice tak, že příslušné tabulky jednoduše napíšeme vedle sebe. Výsledná matice je typu m x (/?i + n2) a značíme ji (A, B), případně (A | B). Matice nad danou množinou XV Podobně můžeme spojit dvě matice A G XmiXn, B G Xm2Xn se stejným počtem sloupců do jedné matice tak, že příslušné tabulky napíšeme pod sebe. Výsledná matice je typu (mi + m2) x n a značíme ji A B , případně . ß □ S Matice nad danou množinou XVI Právě popsané konstrukce jsou příklady tzv. blokových matic. Původní matice, ze kterých takto vytváříme blokovou matici, potom nazývame jejími bloky. Samozřejmě můžeme vedle sebe resp. pod sebe zařadit větší počet bloků než pouze dva. Naopak, někdy může být účelné vyznačit v dané matici nějaké menší obdélníkové části jako její bloky. Matice nad danou množinou XVII Pak mluvíme o tzv. blokovém tvaru dané matice. Příkladem toho byl zápis matice A G Xmx" jako řádku složeného z jejích sloupců, případně jako sloupce složeného z jejích řádků. Uvedená dvě schemata vytváření blokových matic "vedle sebe" a "pod sebe" můžeme kombinovat. n 3 - = ■= -00*0 22 Matice nad danou množinou XVIII Např. z matic An G XmiX"\ A12 G XmiX"2, A2i G Xm2X"\ A22 £ Xm2X"2 můžeme vytvořit blokovou matici An Ai2 \ A21 A22 J typu (mi + m2) x (ni + n2). Matice nad danou množinou XIX Tuto konstrukci můžeme zřejmým způsobem zevšeobecnit i na větší systémy matic a zapsat ve tvaru /An ■ ■ ■ Ai/ A = (A,7)fcx/ = V Aw ... Aki □ S Matice nad danou množinou XX přičemž jednotlivé bloky A/,- jsou matice nad X rozměrů m,- x rij, kde (mi,... , m^), (ni,..., n/) jsou nějaké konečné posloupnosti přirozených čísel. Matici nad množinou X z této "matice matic" dostaneme tak, že si v A odmyslíme vnitřní závorky oddělující její jednotlivé bloky A//. Matice nad daným tělesem I Na množině X, nad kterou jsme vytvářeli příslušné matice, jsme doposud nepředpokládali žádnou další strukturu. Na množinách matic Xmx" sa nám poměrně bohatá struktura přirozeným způsobem objevila. Matice nad daným tělesem II Všechny doposud zavedené maticové operace a vlastnosti však měly výlučně poziční charakter - zakládaly sa na reprezentaci každé matice jako příslušné obdélníkové tabulky. Další maticové operace a vlastnosti, které hodláme zavést a později využívat, už budou podmíněné přítomností jisté struktury na množině X. n 3 - = ■= -00*0 Matice nad daným tělesem III Nejdůležitější a, až na pár výjimek, vlastně jediný druh matic, jimiž se budeme zabývat, tvoří matice nad nějakým tělesem. V celém odstavci K označuje pevně zvolené, jinak však libovolné těleso. V souladu s předešlým odstavcem Kmx", kde m, n E N, označuje množinu všech matic typu m x n nad číselným tělesem K. Matice nad daným tělesem IV Pro pevné m, n G N budeme na množině matic Kmxn definovat po složkách operace součtu a skalárního násobku. Tedy pro matice A = (a//)mXn, B = (bjj)mxn nad K a c G K A + B = (aij + bjj)mxn, Cf\ = \Cdjj)mxn. Matice nad daným tělesem V Součet matic A + B je definovaný jen pro matice A, B stejného typu a samotná matice A + B je téhož typu jako A a B. Neutrálním prvkem operace sčítání na Kmx" je matice typu m x n, jejíž všechny prvky jsou nulové; nazýváme ji nulová matice typu m x n a označujeme ji 0m>n, resp. 0, je-li její rozměr jasný z kontextu nebo na něm nezáleží. Matice nad daným tělesem VI Opačným prvkem k matici A = (a,j)mxn je zřejmě matice " = \ ^ijjmxn- Matice pevného typu m x n nad tělesem K s takto definovanými operacemi součtu a skalárního násobku tvoří vektorový prostor nad tělesem K tj. Kmx" bude dále označovat příslušný vektorový prostor. Matice nad daným tělesem VII Nejprve sa naučíme násobit některé dvojice vektorů. Součinem x y řádkového vektoru x = (xi,... , x„) G Klxn a sloupcového vektoru y = (yi,... ,yn)T G Knxl rozumíme skalár x-y = Eľ=i*/y/- Matice nad daným tělesem VIII r1 xy = (xi,...,x„)- I j V Y n = xiyi + ... + xnyn = Y,"=i xiYi ■ V tomto případě jde o běžný " skalární součin" vektorů x, y G K". □ g - = Matice nad daným tělesem VIII Snadno se ověří, že pre všechna n G N, c G K a x,x' G Klxn, y,y'G Knxl platí x-(y + y') = = x- y + x- y', (x + x') • y = = x • y + x' • y, x • cy = c(x • y) = xy = = ex-y, = yrxr. □ s Matice nad daným tělesem IX Pro takto definovaný součin vektorů jsou splněné dobře známé vlastnosti "skalárního součinu". Říkáme, že násobení řádkových a sloupcových vektorů je distributivní (z obou stran) vzhledem ke sčítání a komutuje, t.j. je zaměnitelné s operací skalárního násobku. Poslední rovnost můžeme chápat jako "komutativitu" tohoto součinu; vděčíme za ni komutativitě násobení v tělese K. Matice nad daným tělesem X Nechť m, n, p e N a A = (a//)mxn, B = (bjk)nxp. Součinem matic A, B rozumíme matici A • B = (r,(A) • sk(B))mxp. Všimněme si, že součin matic A, B je definovaný, pouze pokud se počet sloupců matice A rovná počtu řádků matice B, t.j. právě tehdy, když řádky matice A a sloupce matice B mají stejný rozměr. Matice nad daným tělesem XI Součin matic typů mx na «xpje matice typu m x p, což si můžeme lehce zapamatovat v symbolickém tvaru [m x n] ■ [n x p] = [m x p], připomínajícím rozměrové vztahy ve fyzice. Součin dvou čtvercových matic typu n x n je tedy opět matice typu n x n. Matice nad daným tělesem XII Prvek na pozici (/', k) matice A • B dostaneme jako součin /-tého řádku matice A a /c-tého sloupce matice B, tedy jako výraz / blk r/(A)-sfc(B)=(a/i,...,a/n)- \ bnk ■ a/i bi k + ... + ainbnk = YJ]=\ aijbjk ■ □ S Matice nad daným tělesem XIII Snadno pak ověříme následující rovnosti r,(A • B) = r,(A) • B, s,(A B) = A-s,(B). □ S - = -e -0<\(y Matice nad daným tělesem XIV Násobení matic je (z obou stran) distributivní vzhledem ke sčítání. To znamená, že pro libovolné m, n G N a matice A, A' G Kmxn, B, B' G Knxp platí A(B + B') = A B + A B', (A + A') B = A • B + A' • B. □ S - = -e -0<\(y Matice nad daným tělesem XV Z distributivity součinu vektorů vzhledem k jejich součtu je totiž jasné, že (;', k)-tý prvek matice A • (B + B') je r,(A) • s,(B + B') = r,(A) • (s,(B) + s,(B')) = r/(A)-s,(B) + r/(A)-s,(B/), tedy sa rovná (;', k)-tému prvku matice A • B + A • B . Podobně pro druhou rovnost. n 3 - = ■= -00*0 Matice nad daným tělesem XVI Podobně, s využitím zaměnitelnosti součinu vektorů a skalárního násobku můžeme dokázat, že pre libovolný skalár c G K a všech matice A G Kmxn, B G KnxP platí A • cB = c(A • B) = cA • B. Říkáme pak, že násobení matic komutuje, t.j. je zaměnitelné s operací skalárního násobku. □ s Matice nad daným tělesem XVII Násobení matic je též asociativní: pro m, n, p, g G N a A G K' B G Knxp, C G Kpxq platí A(BC) = (AB)C. Pro důkaz toho si stačí uvědomit, že pro libovolné vektory x = (xi,... ,xn) G Klx", y = (yi,... ,yp)T G K"*1 platí: □ s - = -E -o^o Matice nad daným tělesem XVIII ELl hkYk x (B y) = (xi,...,x„) ELi bnkYk E"=i xj (ELl bJkVk) = ELl (E"=i Xjbjk) yk y\ Ej=iXJbjl,...,Ej=iXJbJP -\ : =(x-B).y yP □ s - = -e -o<\(y Matice nad daným tělesem XIX Pak pro 1 < / < m, 1 < / < q, je (;', /)-tý prvek na pozici (;', /) matice A • (B • C) r,(A) • s,(B • C) = r,-(A) • (B • s,(C)) = (r,(A) • B) • s,(C) = r/(A-B)-s/(C), tedy sa rovná (;', /)-tému prvku matice (AB)- C. Matice nad daným tělesem XX Čtvercovou matici řádu n, která má všechny prvky na diagonále rovné 1 a mimo diagonálu 0, označujeme \n a nazývame jednotková matice řádu n. S použitím tzv. Kroneckerova symbolu íl, pro i=j, d«-\ 0, pro/Vi, □ S - = -E -0<\(y Matice nad daným tělesem XXI můžeme psát /l O O 1 'n = \Vij)nxn = : : O o V o o o o \ o o 1 o O 1/ □ s Matice nad daným tělesem XXII Jednotkové matice hrají úlohu neutrálních prvků pro násobení matic. Pro každou matici A e Kmxn platí 'm " — " — " 'n- Množina Knxn všech čtvercových matic řádu n je kromě struktury vektorového prostoru vybavená asociativní operací násobení, která je (z obou stran) distributivní vzhledem ke sčítání matic, komutuje s operací skalárního násobku a jednotková matice \n je její neutrální prvek. n 3 - = ■= -00*0 Matice nad daným tělesem XXIII To nám, podobně jako pro prvky tělesa K, umožňuje zavést i mocniny čtvercových matic. Pro A G Knxn, klademe A0 = l„ a A* = A • ... • A , /c-krát pro 0 < k G N; tedy A1 = A, A2 = A A, A3 = A A A, atd. □ S Matice nad daným tělesem XXIII To nám, podobně jako pro prvky tělesa K, umožňuje zavést i mocniny čtvercových matic. Pro A G Knxn, klademe A0 = l„ a A* = A • ... • A , /c-krát pro 0 < k G N; □ s - = -e -o<\(y Matice nad daným tělesem XXIII To nám, podobně jako pro prvky tělesa K, umožňuje zavést i mocniny čtvercových matic. Pro A G Knxn, klademe A0 = l„ a A* = A • ... • A , /c-krát pro 0 < k G N; tedy A1 = A, A2 = A A, A3 = A A A, atd. □ S Matice nad daným tělesem XXIV Uvědomme si, že pro n > 1 - na rozdíl od komutativity násobení v tělese K - násobení matic z pozičních důvodů není komutativní na Knxn. Například 1 1 + 1 1 1 0 1 1 1 + 1 0 1 0 1 1 1 0 1 1 1 1 1 0 1 □ s Matice nad daným tělesem XXV Naproti tomu komutativita násobení v tělese K má za důsledek, že pre všechna m, n, p a matice A G Kmxn, B G Knxp platí rovnost (AB)r = BrAr. Totiž r,(A) • sfc(B) = s,(B)r • r,(A)r = r,(Br) • S/(Ar). Matice nad daným tělesem XXVI Operace maticového součtu a skalárního násobku můžeme na blokových maticích rozložit na jednotlivé bloky. Jsou-li A = {k-,j)kxh B = (Bij)kxl blokové matice nad číselným tělesem K a odpovídající si si bloky A//, By- se stejným typem m,- x rij, tak jejich součet je opět Matice nad daným tělesem XXVII bloková matice A + B = (Aij + Bij)kxi s bloky stejných typů. S operací skalárního násobku je to ještě jednodušší, totiž nemusíme se starat o shodnost rozměrů jednotlivých bloků. cA = (cAij)kxi. □ S - = -e -0<\(y Matice nad daným tělesem XXVIII Bloková struktura sa přenáší i na součin matic za podmínky, že sloupce první matice jsou ve stejném pořadí rozděleny na stejný počet stejně velkých skupin, řekněme ni + n2 + ■ ■ ■ + nv, jako sloupce druhé matice. Tedy pokud A = (Aý)^^, B = {&jk)vx-& jsou blokové matice nad K, přičemž blok A// je typu m-, x nj a blok Bjk typu nj x p^, tak jejich součin je bloková matice tvaru A • B = (Cik)ßXl9, kde blok C/fc = A/l • Bifc + A/2 • B2k + ... + A/n • Bnk je typu m-, x p^. Matice nad daným tělesem XXIX Blokové matice násobíme stejně jako "obyčejné" matice, jen s tím rozdílem, že součet resp. součin v číselném tělese K nahradíme součtem resp. součinem matic. Jednotkové matice l„ jsou příkladem tzv. diagonálních matic. Čtvercovou matici A = {a;j)nxn nazýváme diagonální, pokud a,j = 0 pro všechy ;' ^j, t.j. pokud všechny její prvky mimo diagonálu jsou nuly. Matice nad daným tělesem XXX Diagonální matici, která má na diagonále postupně prvky di, c/2,..., dn G K značíme diag(c/i, c/2, • • • , dn). Tedy např. I„ = diag(l,...,l). n-krát Podobně můžeme definovat i tzv. blokově diagonální matice. □ s Matice nad daným tělesem XXXI Pokud Ai, A2,..., A^ jsou čtvercové matice řádů a?i, a?2, ..., n^, tak blokově diagonální maticí s bloky Ai, A2,..., A^ nazýváme čtvercovou blokovou matici diag(Ai,A2, ...,Afc) /Ai 0 ... 0 \ 0 A2 ... 0 V 0 0 ... Ak ) kde 0 nacházející se na pozici (/,_/) označuje nulovou matici 0^.. □ s Matice nad daným tělesem XXXII Pravidlo o součinu blokových matic se redukuje na zvlášť jednoduchý tvar pro blokově diagonální matice - násobení funguje diagonálně po složkách. Pokud A = diag(Ai,..., A/J, B = diag(Bi,..., B/J jsou blokově diagonální matice, přičemž odpovídající si bloky A/, B, jsou čtvercové matice stejného řádu n,, jejich součin je blokově diagonální matice tvaru A-B = diag(Ai-Bi,...,Afc-Bfc) s čtvercovými bloky řádů n\,...,n^. n 3 - = ■= -00*0 Matice nad daným tělesem XXXIII Speciálně, pro "obyčejné" diagonální matice platí diag(ai,..., an) ■ diag(Z>i,..., bn) = diag(ai6i,... ,anbn). Platí analogická pravidla pro součet a skalární násobek (blokově) diagonálních matic. A + B = diag(Ai + Bi,...,Afc + Bfc) cA = diag(cAi,..., cAfc) Matice nad vektorovým prostorem I Matice typu m x n nad tělesem K jsou speciálním druhem blokových matic. Matici A = (a/,-) G Kmxn můžeme považovat jednak za blokovou matici s bloky a,j typu lxl, jednak se na ni můžeme dívat jako na řádek jejich sloupců resp. jako na sloupec jejích řádků. n 3 - = ■= -00*0 Matice nad vekt. prostorem II A pak chápeme jako matici typu m x 1 nad vektorovým prostorem Klxn, resp. jako matici typu 1 x n nad vektorovým prostorom Pro libovolné m, n G N a libovolný (abstraktní) vektorový prostor V máme definovanou množinu Vmxn všech matic nad množinou V. Na množině Vmxn můžeme zavést operace součtu a skalárního násobku po složkách. Vmxn s těmito operacemi tvoří vektorový prostor nad tělesem K. Matice nad vekt. prostorem III Zobecníme nyní operaci skalárního násobku K x V —> V na operaci součinu mezi maticemi vhodných typů nad K a nad V. Pro matice A = (a,7) G Kmx", a = (ujk) G Vnxp klademe A a = (v/fc) G \/mxp, kde Matice nad vekt. prostorem IV Tedy součin A • a definujeme z formálního hlediska stejně jako součin matic nad tělesem K, jen s tím rozdílem že operace součtu v K je nahrazená operací součtu ve V a operace součinu v K je nahrazená operací skalárního násobku K x V —> V. Pro násobení matic nad V maticemi nad K platí distributivita (z obou stran) vzhledem ke sčítání, zaměnitelnost s operací skalárního násobku, asociativita a postavení jednotkových matic jako neutrálních prvků. n 3 - = ■= -00*0 Matice nad vekt. prostorem V To znamená, že pro všechna /, m, n, p G N, c G K, A, B G K C G Klxm ex, ß G Vnxp platí: A • (a + /3) = A • a + A • ß, (A + B) o; = A a + B a, A • (ca) = c(A • a) = (cA) • a, C • (A • a) = (C • A) ■ a, ln • a = a. Matice nad vekt. prostorem VI Dle úmluvy, že xc = cx pro c G K, x G U, lze definovat i součin matic /3 = (vý) G \/mx", B = (bjk) G K"xp v obráceném pořadí jako matici ß B = (w,*) G \/mxp takovou, že n n \Nik = ^vijbjk = ^bjkvij. j=i j=i □ s - = -E -o^o Matice nad vekt. prostorem VII S využitím poslední definice můžeme pro A G Kmxn, a G Vnxp, ß G Vmxn, B G KnxP dokázat rovnosti (A-a)7" = a7"-Ar, (ß ■ B)T = BT ■ ßT. Tedy i pro násobení matic nad K maticemi nad V platí distributivita (z obou stran) vzhledem ke sčítání, zaměnitelnost s operací skalárního násobku, asociativita a postavení jednotkových matic jako neutrálních prvků. Matice nad vekt. prostorem VIII To znamená, že pre všechna m, n, p, q G N, c G K, a, ß G K A, B G V/"xp, C G Kpxq platí: (a + 3) ■ A = o; • A + ß ■ A, a • (A + B) = a • A + a • B, ct • (cA) = c(ai • A) = (ca) • A, a ■ (A • C) = (a ■ A) ■ C, en • \n = a. Matice nad vekt. prostorem IX Vztahy pro řádky a sloupce součinu z odstavce 2.2.2 zůstávají zachované pre oba typu součinů matic nad K a V, t.j. r,(A • ex) = r,(A) • a, S/((A ol) = A s^ol) r,(/3 • B) = r,(/3) • B, sk(ß • B) = ß • s,(B) pre všechny A G Kmxn, a G Vnxp ß G Vmxn, B G K"xp. □ S Matice nad vekt. prostorem X Definice součinů A a, ß B jsou ve shodě s původním násobením matic. Chápeme-li matici A G Kmxn jakožto řádek, t.j. jakožto matici typu 1 x n nad prostorem sloupcových vektorů Km, tak pro B G Knxp splývá matice (si(A),... , s„(A)) • B vypočítaná podle "nové" definice s blokovým tvarem (A • Si(B),... , A • sp(B)) matice A • B. n 3 - = ■= -00*0 Matice nad vekt. prostorem XI Podobně, chápeme-li B jako sloupec, t.j. jako matici typu n x 1 nad prostorem řádkových vektorů Kp, tak AB. □ S Matice nad vekt. prostorem XII Speciálně, lineární kombinaci a\X\ + ... anxn vektorů xi,..., x„ € V s koeficienty a\,..., an G K můžeme s využitím vektorových matic zapsat ve tvaru součinů Xl (ai,... ,an) ■ □ s