Lineaarialgebra b, kevät 2019 Harjoitusta 4 Maplella with(linearalgebra); (1) Tehtävä 1. Lineaarisia funktioita? a) Asetelma on kelvollinen: lähtö- ja maalijoukko on R-kertoiminen lineaariavaruus ja L on todella funktio --. Määritellään funktio L ja testivektorit x ja y sekä (varmuuden vuoksi) skalaari c määrätään reaaliseksi L := x - Vector([x[2], 2*x[1]]); (1.1) L(x); (1.2) x := Vector(2,[x1,x2]); (1.3)
(1.3) y := Vector(2,[y1,y2]); (1.4) x + y; (1.5) assume(c, real); Sitten testataan lineaarisuusehdot. (i) summan säilyminen lineaarikuvauksessa. Huomaa, että tässä relaatio = (siis "yhtäkuin merkki") vain erottaa vasemman ja oikean puolen toisistaan ja annetut käskyt (kuten laskea L(x+y)) toteutetaan erikseen niihin molempiin: L(x+y) = L(x) + L(y); # (i) toteutuu? (1.6) (ii) skaalauksen säilyminen lineaarikuvauksessa: L(c*x) = c*l(x); # (ii) toteutuu? (1.7) Siis L on lineaarinen. b) Kuten edellä, asetelma on kelvollinen (käy samat testivektorit ja skalaari), osoitetaan lineaariseksi: Määritellään kuvaus L := x - Vector([ x[1]*cos(alpha)+x[2]*sin(alpha), -x[1]*sin(alpha)+x[2]*cos(alpha)]); (1.8) (i) Summan säilyminen: L(x + y) = L(x) + L(y); (1.9) (ii) Samoin skaalaus: L(c*x) = c*l(x); (1.10)
(1.10) c) Asetelma on kelvollinen: ja ovat R-kertoimisia lineaariavaruuksia ja L on todella funktio --. Edelleen kelpaavat samat testivektorit ja skalaari. Tämäkin on lineaarinen: L := x - Vector([x[1]-x[2], x[2]+2*x[1], x[2]]); (1.11) (i) Summalle: L(x + y) = L(x) + L(y); # sieventyvät identtisiksi: (1.12) (ii) Skaalaukselle: L(c*x) = c*l(x); # nämäkin todetaan helposti samoiksi: (1.13) d) Tässäkin on kyseessä R-kertoimisten lineaariavaruuksien välinen funktio. Uudet testivektorit Käytetään vaihteeksi yhdistettyä lineaarisuusehtoa (iii): restart: with(linearalgebra): x := Vector([x1,x2,x3]); (1.14) y := Vector([y1,y2,y3]); (1.15) assume(c,real): assume(d,real); L := x - Vector( [1 - x[1] - 4*x[3], x[1] + x[2] + x[3] ]); (1.16) L(x + y) = L(x) + L(y);
(1.17) Mutta nyt havaitaan, etteivät nämä ehken olekaan samat kaikilla x, y. Vastaesimerkki X := Vector([1,2,3]); Y := Vector([-2,3,6]); C := 2; Summalle ja skaalaukselle saadaankin nyt jopa molemmille eri tulosvektorit: L(X + Y) = L(X) + L(Y); (1.18) (1.19) L(C*X) = C*L(X); # edellinenkin olisi jo riittänyt (1.20) Siis ei ole lineaarinen. Kohdassa a) on kyseessä peilaus suoran suhteen ja venytys pystysuuntaan (tuplaus), tai yhtä hyvin ensin tuplaus vaakasuunnassa ja sitten se peilaus. Tehtävä 2. Lineaaristen yhdistetty kuvaus on lineaarinen Ensinnäkin, tehtävänannon ja yhdistetyn funktion määritelmän mukaan yhdistetty funktio MoL : U - - W on määritelty. (i) Olkoot u, v joukosta U mielivaltaisia. Silloin yhdistetyn funktion määritelmän ja lineaarisuuksien mukaan (niitä sopivasti käyttäen, merkitse =-merkkien kohdille): (MoL)(u + v) = M(L(u + v)) = M(L(u) + L(v)) = M(L(u)) + M(L(v)) = (MoL)(u) + (MoL)(v). (ii) Olkoon skalaari ja u vektori joukosta U. Silloin (MoL)( u) = (M(L( u)) = (M( L(u)) = M(L(u)) = (MoL)(u). Siis MoL on lineaarinen. Tehtävä 3. Lineaarikuvausten potenssit Koska L on funktio V -- V, ovat olemassa yhdistetyt kuvaukset = LoL : V -- V, = Lo : V - - V jne... Lähtö- ja maalijoukot ovat samakertoimisia lineaariavaruuksia!
Lineaarisuus induktiolla: (n = 1, 2) Tosi arvolla n = 1 (oletus) ja arvolla n = 2 (tehtävä 2). (n = k) Oletetaan, että on lineaarinen jollakin. (n = k+1) Silloin = Lo on myös lineaarinen oletuksen ja induktio-oletuksen sekä tehtävän 2 nojalla. Induktioperiaatteen mukaan väite on tosi kaikilla luonnollisilla luvuilla k. Tehtävä 4. Injektio ja riippumattomuuden säilyminen Olkoon L : V -- W lineaarinen injektio ja U = { u1, u2,..., uk } lineaarisesti riippumaton joukko. Silloin L(U) = { L(u1), L(u2),..., L(uk) } on vektorijoukko avaruudessa W ja ne kaikki ovat eri alkioita, miksipä? Oletetaan, että c1 L(u1) + c2 L(u2) +... + ck L(uk) = 0 (avaruudessa W). Lineaarisuuden (tai oikeammin yleistyksen, ks. tehtävä 2) nojalla siis c1 L(u1) + c2 L(u2) +... + ck L(uk) = L(c1 u1 + c2 u2 +... + ck uk) = 0. Lineaarikombinaatio u := c1 u1 + c2 u2 +... + ck uk kuvautuu siis nollalle, ja koska L oli lineaarinen ja injektio, on oltava u = 0. Mutta joukko U oli oletettu lineaarisesti riippumattomaksi, joten kaikki skalaarit c1, c2,..., ck ovat nollia. Täten L(U) on lineaarisesti riippumaton. Jatkotehtävä: Miten lineaarinen riippuvuus siirtyy lineaarikuvauksissa? Tehtävä 5. Lineaarisuus, ytimen ja kuva-avaruuden dimensiot Ilmeinen valinta R-kertoimisiksi lähtö- ja maaliavaruuksiksi ovat R^4 ja R^3. Kuvaus L: R^4 - R^3 on lineaarinen matriisin A määräämänä, kun A := Matrix([[2,4,1,1],[1,-3,1,2],[1,7,0,-1]]); (5.1) Tarkastetaan tämä vielä: määritellään 4-vektori x := Vector([x1,x2,x3,x4]); (5.2) Multiply(A,x); (5.3) HUOMAUTUS: Toki voimme laskea matriisin A_L myös matriisiesityslauseen avulla: määritellään L: L := x - Vector( [2*x[1] + 4*x[2] + x[3] + x[4], x[1] - 3*x[2] + x[3] + 2*x[4], x[1] + 7*x[2] - x[4]]); (5.4)
Matriisin sarakkeet saadaan R^4:n luonnollisen kannan kuvista: sarakkeet := L(Vector([1,0,0,0])), L(Vector([0,1,0,0])), L(Vector([0,0,1,0])), L(Vector([0,0,0,1])); (5.5) AL := Matrix([sarakkeet]); (5.6) Viedään matriisi AL redusoituun porrasmuotoon: ReducedRowEchelonForm(AL); (5.7) Tiedetään: lineaarikuvauksen ydin = sen matriisin nolla-avaruus ja kuva-avaruus = matriisin sarakeavaruus. Dimensiot saadaan viereisestä porrasmuodosta; tässä se on redusoitu porrasmuoto. Matriisin aste eli riviavaruuden dimensio (nollasta poikkeavien rivien määrä) on siis 2. Se on samalla sarakeavaruuden dimensio, joten lineaarikuvauksen kuva-avaruuden dimensio dim(l(r^4)) = 2. Vastaavan lineaarisen homogeenisen yhtälöryhmän Ax = 0 ratkaisussa taas on kaksi vapaasti valittavaa tuntematonta, joten (matriisin nolla-avaruuden eli) matriisin määräämän lineaarikuvauksen ytimen ker L dimensio = 2. Sama voitaisiin todeta suoraan dimensiolauseesta, dim(ker L) = dim V - dim L(V) = 4-2 = 2. Lauseen 15.2.4 mukaan kuvaus L ei ole injektio. Koska kuva-avaruus L(R^4) on vain kaksiulotteinen ja maalijoukko on kolmiulotteinen R^3, ei L voi olla surjektio eikä siis myöskään bijektio. Tehtävä 6. Kuvausten matriisit Lasketaan yhdistetty kuvaus NoM, joka selvästikin on määritelty ja on funktio R^3 -- R^5. x := Vector([x1,x2,x3]); (6.1) Määritellään M := x - Vector([ x[1] + 3*x[2] + 2*x[3], -x[1] - 2*x[3], x[2] + 3*x[3]]); (6.2)
N := x - Vector([ 2*x[1] + 2*x[3], -x[1] - x[2] - 2*x[3], x[1] + 2*x[2] + 3*x[3], x[2] - x[3], 3*x[1] + 5*x[3]]); (N @ M)(x); # funktioiden yhdistäminen Maplessa on @ (6.3) (6.4) N(M(x)); # toki näinkin! (6.5) Matriisit voidaan poimia funktioiden esityksistä: AM := Matrix([[1,3,2],[-1,0,-2],[0,1,3]]); (6.6) AN := Matrix([[2,0,2],[-1,-1,-2],[1,2,3],[0,1,-1],[3,0,5]]); (6.7) (tai saadaan luonnollisen kannan kuvat sarakkeinaan kuten tehtävässä 6). Yhdistetyn kuvauksen N o M matriisi on näiden tulo (tai sekin voitaisiin poimia yllä olevasta N @ M:n esityksestä) print(an, AM, Multiply(AN,AM)); (6.8)
(6.8) Tehtävä 7. Tehtävän 6 M ja N: a) injektio, b) bijektio, c) käänteiskuvauksen matriisi? Määritellään (varmuuden vuoksi) matriisit uudelleen ja lasketaan redusoidut porrasmuodot: AM := Matrix([[1,3,2],[-1,0,-2],[0,1,3]]); (7.1) AN := Matrix([[2,0,2],[-1,-1,-2],[1,2,3],[0,1,-1],[3,0,5]]); (7.2) ReducedRowEchelonForm(AM), ReducedRowEchelonForm(AN); (7.3) M on injektio, ja koska lähtö- ja maaliavaruuksien dimensiot ovat samat, M on myös bijektio (Lause 15.4.2). Käänteiskuvauksen matriisi on kuvauksen matriisin käänteismatriisi: MatrixInverse(AM); (7.4) Kuvauksen N kuva-avaruuden dimensio on 3 = dim, joten N on injektio. Koska maaliavaruus on, N ei voi olla surjektio eikä siis bijektio. Käänteiskuvausta ei ole.