> 2*4 + 5*3; (2*4) + (5*3); > A := [2,5]; B := [4,3]; $ käytä ISOJA ja pieniä > A + B; $ kirjaimia harkiten! > A(1); A(2); B(1); B(2); > [A(1) + B(1), A(2) + B(2)]; > Vs := |X,Y -> [X(1) + Y(1), X(2) + Y(2)]|; > Vs(A,B); A .Vs B; B .Vs A; > [5,-6] .Vs [-7,-2]; $ tulos:________________Mitä tekee operaattori Vs ?
> A; B; A * B; > A(1)*B(1) + A(2)*B(2); > Vk := |X,Y -> X(1)*Y(1) + X(2)*Y(2)|; > Vk(A,B); A .Vk B = B .Vk A; > [4,6] .Vk [-5,2]; $ tulos:________________Mitä tekee operaattori Vk ?
> C := [[3,4],[2,5]]; D := [[2,4],[3,1]]; C; D; > C(1); C(2); > C(1)(1); C(1)(2); C(2)(1); C(2)(2); > > Ms := func(X,Y); >> return >> [[X(1)(1) + Y(1)(1), X(1)(2) + Y(1)(2)], >> [X(2)(1) + Y(2)(1), X(2)(2) + Y(2)(2)]]; >> end func; > C; D; C .Ms D; D .Ms C; $ tulos:________________Mitä tekee Ms ?
> Mk := func(X,Y); >> return >> [[X(1)(1)*Y(1)(1) + X(1)(2)*Y(2)(1), >> X(1)(1)*Y(1)(2) + X(1)(2)*Y(2)(2)], >> [X(2)(1)*Y(1)(1) + X(2)(2)*Y(2)(1), >> X(2)(1)*Y(1)(2) + X(2)(2)*Y(2)(2)]]; >> end func; > C; D; C .Mk D; D .Mk C; $ tulos:________________Mitä tekee Mk ?
http://www.joensuu.fi/matemluonto/matematiikka/kurssit/algebra/Materiaalia/index.html
Lataa ne sitten ISETLW:n muistiin !include:lla.
> A; B; > Vs6 := |X,Y -> [X(1) .s6 Y(1), X(2) .s6 Y(2)]|; > A .Vs6 B; B .Vs6 A;
Mitä tekee operaattori Vs6 ?Mitä tästä opimme?
> 2 .k6 4 .s6 5 .k6 3; > (2 .k6 4) .s6 (5 .k6 3);
> Vk6 := |X,Y -> (X(1) .k6 Y(1)) .s6 (X(2) .k6 Y(2))|; > A; B; A .Vk6 B; B .Vk6 A;Mitä tekee operaattori Vk6 ?
|
> A := [[3,6], [7,5]];niin A(1)(2) viittaa ensimmäisen rivin toiseen alkioon 6 ja A(2)(1) toisen TUPLEN ensimmäiseen alkioon 7.
Tarkastellaan nyt 2×2-matriiseja, joiden alkiot ovat jostakin
renkaasta (R,+,·). Merkitään niiden joukkoa M(R)
(ISETLissä MR).
Kuten aikaisemminkin, matriisien yhteenlaskussa matriisit lasketaan
alkioittain yhteen, nyt siis renkaan R yhteenlaskulla:
|
|
Tiedostosta ryhma.ise lienee latautunut ISETL-proseduuri matrengas, katso
> !pp matrengasSille annetaan parametreina joukko (R) ja kaksi laskutoimitusta (''yhteenlasku'' ensin!), ja se tallettaa muuttujaan MR 2×2-matriisien joukon
|
Huomaa, että kertolaskut on ympäröitävä (tavallisilla) sulkeilla. Käyttäjän määrittelemistä operaatioista ei ISETL tiedä, kumpi laskutoimitus on voimakkaampi!Suorita komennot (älä laita suuria joukkoja Zn, miksi?)
> matrengas(Z2,s2,k2); > MR; > [[0,0],[1,0]] .Ms [[1,1],[0,0]]; > [[0,0],[1,0]] .Mk [[1,1],[0,0]]; > neutraali(MR,Mk); > vaihdannainenko(MR,Mk); > onko_rengas(MR,Ms,Mk);Vastaa seuraaviin edellistä matriisisysteemiä koskeviin kysymyksiin ja väitteisiin:
a) (MR,Ms,Mk) on rengas.
Tosi Epätosi
b) Matriisikertolasku on vaihdannainen.
Tosi Epätosi
c) Matriisikertolaskulla on neutraalialkio.
Tosi Epätosi
d) Mikä on yhteenlaskun neutraalialkio?
> !pp nimea_rengas > nimea_rengas(Z12, s12, k12); > R; nolla; yksi; vasta(8); > > nimea_rengas(MR,Ms,Mk); > R; nolla; yksi; > vasta([[0,1],[1,1]]);
b) Kirjoita ISETL-funktio onko_alirengas, joka tutkii, onko S renkaan R alirengas. Voit olettaa, että nimea_rengas on suoritettu, jolloin tarvitset funktion onko_alirengas syötteeksi vain joukon S. Funktio saa siis käyttää proseduurilla nimea_rengas luotuja ''globaaleja muuttujia'', kuten R, Rs, nolla jne.
Triviaali menetelmä, jossa tsekataan onko osajoukko rengas on hyvin työläs ja siis hidas. Mitä renkaan määritelmän ehtoja tämän funktion ei enää tarvitse uudelleen tutkia?
|
c) T3 on niiden matriisien joukko, joille on
olemassa käänteisalkio matriisikertolaskun Mk suhteen.
On Ei
Miksi?