%% 30   Lösa linjära ekvationssystem
% Innehåll
% 30.1   Radekvivalenta system
% 30.2   Antalet lösningar
% 30.3   Linjärt ekvationssystem som en vektorekvation
% 30.4   Linjärt ekvationssystem som en matrisekvation
% 30.5   Beskrivning av lösningsmängden till homogena ekvationssystem
% 30.6   Beskrivning av lösningsmängden till inhomogena ekvationssystem
% 30.7   Linjärt (o)beroende vektorer i
%% 30.1   Radekvivalenta system
%
% En linjär ekvation i de obekanta variablerna  x_1,\,x_2,\, \ldots ,\, x_n  är en ekvation av formen
% a_1x_1 +a_2x_2+\cdots + a_nx_n = b\qquad(1)
% där koefficienterna a_1,\,a_2,\, \ldots,\, a_n och högerledet b är kända tal. Att lösa ekvationen betyder att beskriva alla möjliga värden på variablerna som löser evationen. Normalt har ekvationen oändligt många lösningar när n\geq 2\,. Enda undantaget är när alla koefficienter är 0\, och b\not=0\,. Ordet "beskriva" är därför avgörande.
% Om a_1\not=0 i (1) kan lösningarna beskrivas som
% x_1 = b/a_1 +(-a_2/a_1)x_2+(-a_3/a_1)x_3+\cdots + (-a_n/a_1)x_n\,,
% där vi kan välja värden på x_2,\, x_3,\,\ldots,\, x_n fritt (godtyckligt), medan x_1 då är bestämd. I sammanhanget kallas då variablerna x_2,\,x_3,\, \ldots,\, x_n för fria variabler och x_1 för en basvariabel (eng. basic variable).
% Ett linjärt ekvationssystem i variablerna x_1,\,x_2,\, \ldots ,\, x_n består av ett antal (m) linjära ekvationer i dessa variabler:
%   \left\{
%   \begin{array}{rcrcccrcr}
%     a_{11}x_1 & \!+\! & a_{12}x_2 & \!+\! & \ldots & \!+\ & a_{1n}x_n
%     &\!=\!& b_1\\
%     a_{21}x_1 & \!+\! & a_{22}x_2 & \!+\! & \ldots & \!+\ & a_{2n}x_n
%     &\!=\!& b_2\\
%          & & & & & &  &\vdots& \\
%     a_{m1}x_1 & \!+\! & a_{m2}x_2 & \!+\! & \ldots & \!+\ & a_{mn}x_n
%     &\!=\!& b_m\\
%   \end{array}
%   \right.\,.\qquad(2)
% Lägg märke till att första indexet på koefficienterna anger vilken rad de tillhör och andra anger vilken variabel de hör ihop med. Att lösa systemet betyder att beskriva alla värden på variablerna som samtidigt löser alla ekvationerna.
% Ett system kan utsättas för radoperationer. Du får då ett nytt ekvationssystem med samma lösningar som det tidigare. Radoperationerna är
% Addera en multipel av en ekvation till en annan,
% Multiplicera en ekvation med en konstant c\not=0\,,
% Byt plats på två rader.
% Om du har utsatt ett system för en radoperation kan du genom att göra en "omvänd" radoperation komma tillbaka till det utsprungliga systemet.
% I praktiken blir det ganska bökigt att (med handräkning) utföra radoperationer på ekvationssystem eftersom du måste släpa med information som inte ändras: variabler, räkneoperationer och likheter. Därför samlas det som är av vikt i en koefficientmatris eller en utökad koefficientmatris (eng. augmented coefficient matrix) och radoperationerna görs på den. Ekvationsystemet (2) har koefficientmatris (KM) respektiv utökad sådan (UKM) som är
%   \left(
%     \begin{array}{rrrr}
%       a_{11}&a_{12}&\cdots&a_{1n}\\
%       a_{21}&a_{22}&\cdots&a_{2n}\\
%       \vdots & \vdots & &\vdots \\
%       a_{m1}&a_{m2}&\cdots&a_{mn}\\
%     \end{array}\right)\,,\qquad
%     \left(
%     \begin{array}{rrrr|r}
%       a_{11}&a_{12}&\cdots&a_{1n}&b_1\\
%       a_{21}&a_{22}&\cdots&a_{2n}&b_2\\
%       \vdots & \vdots & &\vdots & \vdots\\
%       a_{m1}&a_{m2}&\cdots&a_{mn}&b_m\\
%     \end{array}\right)\,.
% Ibland separeras den sista kolonnen i den utökade koefficientmatrisen från de övriga med ett lodrätt streck för att påminna om att sista kolonnen är ett högerled i ett ekvationssystem.
% Målet med radoperationer är att överföra systemet (systemets UKM) till ett vars lösningar är enkla att  beskriva. För ett system vars UKM är på trappstegsform (TF) är det lätt att beskriva lösningarna.
% Metod när UKM är på TF:
% Om sista kolonnen är pivotkolonn saknar systemet lösningar, eftersom det då innehåller en ekvation av form  0 = b, (alla koefficienter är 0) där b\not=0.
% Börja annars med nedersta raden som inte enbart är består av nollor och lös ut variabeln som hör till radens ledande element med de övriga. En sådan variabel kallas en basvariabel, övriga kallas fria variabler och kan väljas fritt (godtyckligt) i lösningar.
% Forsätt sedan uppåt i matrisen och lös ut basvariabler med hjälp av fria variabler.
% Pröva nu detta på systemet
%  \left\{\begin{array}{rcrcrcrcrcrcr}
%  -x_1 & \!+\! & 2x_2 & \!+\! & x_3 & \!+\!& x_4 & & &\!-\! & 2x_6 &\!=\!& -3\\
%  3x_1 &\!-\!& 6x_2 & \!+\! & 2x_3 & \!-\!&  13x_4 & \!-\!& 2x_5 & \!+\!&5x_6
%       & \!=\! & 12\\
%  3x_1 & \!-\! & 6x_2 & \!+\! & 3x_3 & \!-\! & 15x_4 & \!+\! & 2x_5
%       & \!+\! & 18x_6 &\!=\! & -5\\
%  -x_1 & \!+\! & 2x_2 & \!+\! & 3x_3 & \!-\! & 3x_4 & \!-\! & 2x_5
%       & \!-\! & 6x_6 & \!=\! & 3
%         \end{array}\right.\quad.



% Här har du nått TF och kan lösa ut basvariabler med hjälp av fria:
%  \left\{\begin{array}{rcrcrcrcrcrcr}
%  -x_1 & \!+\! & 2x_2 & \!+\! & x_3 & \!+\!& x_4 & & &\!-\! & 2x_6 &\!=\!& -3\\
%   & & &  & x_3 & \!-\!&  2x_4 & \!+\!& 2x_5 & \!+\!&7x_6
%       & \!=\! & -9\\
%   &  &  &  &  &  &  &  & x_5
%       & \!+\! & 3x_6 &\!=\! & -4\\
%   &  &  &  &  &  &  &  &
%       &  & 0 & \!=\! & 0
%         \end{array}\right.\quad.
% Du får
%  \begin{array}{rcl}
%    x_5 &=&-3x_6-4\\
%    x_3 &=& 2x_4-2x_5-7x_6-9 =\\
%        &=& 2x_4-2(-3x_6-4)-7x_6-9 =\\
%        &=& 2x_4-x_6-1\\
%    x_1 &=& 2x_2+x_3+x_4-2x_6+3 =\\
%        &=& 2x_2+(2x_4-x_6-1)+x_4-2x_6+3=\\
%        &=& 2x_2+3x_4-3x_6+2  \,,
%  \end{array}
% där x_2,\,x_4,\, x_6  kan väljas fritt.
% Vid handräkning kan det leda till en hel del extra arbete för att överföra UKM till reducerad trappstegsform (RTF), men gör du det får du ett system som gör det är ännu enklare att beskriva lösningarna. Med Matlab får du lätt RTF med kommandot  rref .
% Pröva detta nu med  systemet ovan.



%  Systemet blir nu
%  \left\{\begin{array}{rcrcrcrcrcrcr}
%  x_1 & \!-\! & 2x_2 &  &  & \!-\!& 3x_4 & & &\!+\! & 3x_6 &\!=\!& 2\\
%   & & &  & x_3 & \!-\!&  2x_4 & &  & \!+\!& x_6
%       & \!=\! & -1\\
%   &  &  &  &  &  &  &  & x_5
%       & \!+\! & 3x_6 &\!=\! & -4\\
%   &  &  &  &  &  &  &  &
%       &  & 0 & \!=\! & 0
%         \end{array}\right.\quad.
% Du får nu
%       \begin{array}{rcl}
%         x_5 &=& -3x_6 -4 \\
%         x_3 &=& 2x_4 -x_6 -1\\
%         x_1 &=& 2x_2 +3x_4 -3x_6 +2\,,
%       \end{array}
% där x_2,\,x_4,\, x_6  kan väljas fritt.
%
%% 30.2   Antalet lösningar
%
% Variabler som hör till pivotkolonner till ett systems KM kallas systemets basvariabler, övriga är fria variabler. För att beskriva lösningarna till ett system löser du ut basvariablerna med hjälp av de fria (om lösning finns). Varje val av värden på fria variabler ger sen lösningar till systemet.
% Följande gäller
% Systemet saknar lösning (är inkonsisten) precis när sista kolonnen i systemets UKM är pivotkolonn. När systemet överförs till TF har det resulterande systemet då en ekvation av formen 0=b där b\not=0\,.
% Om systemet är konsitent finns det precis én lösning när varje kolonn utom den sista i UKM är pivotkolonn. Då är alla variabler basvariabler.
% Annars finns det oädligt många lösningar. Då finns fri(a) variabel/variabler.
% Ett  ekvationssystem där alla högerleden är 0 (b_1 = b_2=\ldots=b_m=0) kallas homogent. Ett sånt system är alltid konsistent för x_1=x_2=\ldots= x_n=0 är en lösning. Denna lösning kallas den triviala lösningen.
% Ett konsistent system med fler variabler än rader har alltid oändligt många lösningar. Pivopositioner finns på olika rader och varje pivotkolonn innehåller precis én pivotposition, så basvariablerna är färre än eller lika många som raderna.
% Uppgift   30.1
% Bestäm basvariabler och antalet lösningar till ekvationssystemen
% (a)
% \left\{\begin{array}{rcrcrcrcrcr}
%  3x_1 & \!+\! & 15x_2 & \!+\! & 6x_3 & \!-\!& 3x_4 &\!-\!& x_5 & \!=\!& -25\\
%  x_1 &\!+\!& 5x_2 &\!+\!& 2x_3 &\!+\!& 3x_4 &\!-\!& 3x_5 & \!=\!& 17\\
%  3x_1 &\!+\!& 15x_2 &\!+\!& 6x_3 &\!+\!& x_4 &\!-\!& 2x_5 &\!=\!& -3\\
%  x_1 &\!+\!& 5x_2 &\!+\!& 2x_3 &\!+\!& 3x_4 &\!+\!& 2x_5 & \!=\!& 7\\
%  x_1 & \!+\!& 5x_2 &\!+\!& 2x_3 &\!+\!& x_4 &\!-\!& 2x_5 &\!=\!& 5 \end{array}\right.\,,



% (b)
% \left\{\begin{array}{rcrcrcrcr}
%  x_1 &\!+\!& 5x_2 &\!+\!& 2x_3 &\!+\!& 3x_4 &\!=\!& -2\\
%  3x_1 &\!+\!& 15x_2 &\!+\!& 6x_3 &\!+\!&x_4 &\!=\!& -1\\
%  x_1 &\!+\!& 5x_2 &\!+\!& 2x_3 &\!+\!& x_4 &\!=\!& -3\\
%  x_1 &\!+\!& 5x_2 &\!+\!& 2x_3 & & &\!=\!& 2
%       \end{array}\right.\,,



% (c)
% \left\{\begin{array}{rcrcrcrcr}
%  5x_1 &\!-\!& x_2 &\!+\!& 2x_3 &\!-\!& x_4 &\!=\!& 0\\
%  -4x_1 &\!+\!& 4x_2 &\!-\!& 3x_3 &\!-\!& 5x_4 &\!=\!& 0\\
%  -x_1 &\!-\!& 2x_2 &\!+\!& 4x_3 &\!-\!& 4x_4 &\!=\!& 0\\
%   2x_1 &\!-\!& 4x_2 &\!+\!& 3x_3 &\!-\!& 2x_4 &\!=\!& 0
% \end{array}\right.\,.



%
%% 30.3   Linjärt ekvationssystem som en vektorekvation
% Takeaways
%
% Om  \mathbf u  och  \mathbf v är (kolonn)vektorer i  \mathbb R^n (dvs de har båda n koordinater) defineras summan och multiplikation med skalären  c  av
% \mathbf u + \mathbf v =
% \left(
%   \begin{array}{c}
%     u_1 \\ u_2\\ \vdots\\ u_n
%   \end{array}\right) +
% \left(
%   \begin{array}{c}
%     v_1 \\ v_2\\ \vdots\\ v_n
%   \end{array}\right) =
% \left(
%   \begin{array}{c}
%     u_1 +v_1 \\ u_2 +v_2\\ \vdots\\ u_n+v_n
%   \end{array}\right)\qquad
% c\mathbf u =
% \left(
%   \begin{array}{c}
%    cu_1 \\ cu_2\\ \vdots\\ cu_n
%   \end{array}\right)\,.
% Det betyder att vektorer summeras och multipliceras med skalärer koordinatvis. Vektorn vars samtliga koordinater är 0  betecknas  \mathbf 0\, och kallas nollvektorn (eng. zero vector).
% Nu kan det linjära ekvationssystemet
%   \left\{
%   \begin{array}{rcrcccrcr}
%     a_{11}x_1 & \!+\! & a_{12}x_2 & \!+\! & \ldots & \!+\ & a_{1n}x_n
%     &\!=\!& b_1\\
%     a_{21}x_1 & \!+\! & a_{22}x_2 & \!+\! & \ldots & \!+\ & a_{2n}x_n
%     &\!=\!& b_2\\
%          & & & & & &  &\vdots& \\
%     a_{m1}x_1 & \!+\! & a_{m2}x_2 & \!+\! & \ldots & \!+\ & a_{mn}x_n
%     &\!=\!& b_m\\
%   \end{array}
%   \right.\, \qquad (2)
% skrivas som en ekvation med vektorer
% \begin{array}{ccccccccc}
% x_1\left(
%   \begin{array}{c}
%     a_{11} \\ a_{21} \\ \vdots \\a_{m1}
%   \end{array}\right) &\!+\! &
% x_2\left(
%   \begin{array}{c}
%     a_{12} \\ a_{22} \\ \vdots \\a_{m2}
%   \end{array}\right) &\!+\!&  \cdots &\!+\!&
% x_n\left(
%   \begin{array}{c}
%     a_{1n} \\ a_{2n} \\ \vdots \\a_{mn}
%   \end{array}\right) &\!=\!&
%   \left(
%   \begin{array}{c}
%     b_1 \\ b_2 \\ \vdots \\b_{m}
%   \end{array}\right)\\
%   \\
%   x_1\mathbf a_1 & \!+\! &x_2\mathbf a_2 &\!+\!&\cdots &\!+\!&  x_n\mathbf a_n &    \!=\! & \mathbf b
% \end{array} \qquad (3)
% där \mathbf a_1,\, \mathbf a_2,\, \ldots,\,\mathbf a_n och \mathbf b är vektorerna i \mathbb R^m som tillsammans utgör kolonnerna i  systemets utökade koefficientmatris
% \left(\begin{array}{rrrrr}
% \mathbf a_1 & \mathbf a_2 & \ldots &
%    \mathbf a_n & \mathbf b \end{array}\right).
% När x_1,\, x_2,\,\ldots,\, x_n sätts till specifika värden kallas vänstra ledet i (3)  för en linjärkombination av vektorerna  \mathbf a_1,\, \mathbf a_2,\,\ldots,\,\mathbf a_n\,.Talen x_1,\, x_2,\,\ldots,\, x_n kallas i detta samanhang för linjärkombinationens vikter.
% Att hitta en lösning till (2) blir nu det samma som att hitta en linjärkombination av \mathbf a_1,\, \mathbf a_2,\,\ldots,\,\mathbf a_n\, som blir \mathbf b\,. Att bestämma alla lösningar till ekvationssystemet blir det samma som att bestämma alla vikter så att linjärkombinationen av \mathbf a_1,\, \mathbf a_2,\,\ldots,\,\mathbf a_n\, blir  \mathbf b\,.
% Om \mathbf v_1,\,\mathbf v_2,\,\ldots,\, \mathbf v_p är vektorer i \mathbb R^n kallas mängden av alla linjärkombinationer av dem för vektorerna linjära hölje (eng. span). Den är en delmängd till  \mathbb R^n och betecknas
% \mbox{Span}\{\mathbf v_1,\, \mathbf v_2,\,\ldots,\, \mathbf v_p\}\,.
% Vektorerna \mathbf v_1,\,\mathbf v_2,\,\ldots,\, \mathbf v_p  sägs spänna (ut) sitt linjära hölje \mbox{Span}\{\mathbf v_1,\, \mathbf v_2,\,\ldots,\, \mathbf v_p\}\,.
% Uppgift 30.2   Låt
% \mathbf v_1=
% \left(\begin{array}{r}
% 7 \\ 2 \\ -3 \\ -4
% \end{array}\right),\quad
% \mathbf v_2 =
% \left(\begin{array}{r}
% -1 \\ 8 \\ 8 \\ 0
% \end{array}\right),\quad
% \mathbf v_3 =
% \left(\begin{array}{r}
% 2 \\ 4 \\ -9 \\ 1
% \end{array}\right),\quad
% \mathbf b =
% \left(\begin{array}{r}
% 16\\ 8 \\ -15 \\ -7
% \end{array}\right)\,.
% $$
% (a)   Avgör om  \mathbf b ligger i \mbox{Span}\{\mathbf v_1,\,\mathbf v_2\}, \mbox{Span}\{\mathbf v_3,\,\mathbf v_2\}, \mbox{Span}\{\mathbf v_1,\,\mathbf v_3\}, eller \mbox{Span}\{\mathbf v_1,\,\mathbf v_2,\mathbf v_3\}\,.
% (b)   Bestäm i så fall vikter som ger \mathbf b.
% (c)   Finns det flera vikter som duger?



% Uppgift 30.3  Ett kraftvärmeverk kan köras på två olika typer av kol: antracit och bituminit. Vid förbränning av av ett ton antracit produceras  27.92 GJ (giga Joule) värme, 3.12 kg svaveloxid och 0.25 kg luftburna partiklar. Vid förbränning av ett ton bituminit är motsvarande tal 30.51 GJ, 6.43 kg respektive  0.36 kg.
% Under en viss tidsperiod producerade verket 163.806 GJ värme, 23.742 kg svaveloxid och 1.623 kg luftburna partiklar. Hur mycket kol av vardera sort hade använts?



% Uppgift 30.4
% (a)   Spänner kolonnerna i matrisen
% A  =\left(\begin{array}{rrrrrr}
%  -2 & -4 & 8 & 5 & 5 & 5\\
%  4 & 2 & 2 & -5 & 7 & 3\\
%  -3 & 5 & -21 & 5 & -17 & 5\\
%  1 & 3 & -7 & 4 & 2 & -2
%  \end{array}\right)\,.
% hela  \mathbb R^4\,? Plocka i så fall ut så få kolonner som möjligt ur matrisen som spänner \mathbb R^4\,.
% (b)   Ligger fjärde kolonnen i linjära höljet till första, tredje och femte kolonnerna? Vilka vikter kan i så fall användas?



%
%% 30.4   Linjärt ekvationssystem som en matrisekvation
%
% Definition:  Om  A  är en m\times n-matris och \mathbf x en kolonnvektor i \mathbb R^n definieras produkten A\mathbf x  som en linjärkombination av kolonnerna i A  med vikter från \mathbf x:
% A\mathbf x =
% \left(
%   \begin{array}{cccc}
%     \mathbf a_1& \mathbf a_2 & \ldots & \mathbf a_n
%   \end{array}\right)
% \left(
%   \begin{array}{c}
%     x_1 \\ x_2 \\ \vdots \\ x_n
%   \end{array}\right)
% = x_1\,\mathbf a_1 + x_2\,\mathbf a_2 + \cdots +x_n\,\mathbf a_n\,.
% Resultatet är en vektor i \mathbb R^m eftersom A:s kolonner har m rader.
% Om \mathbf r är en radvektor i \mathbb R^n  ger definitionen att
% \mathbf r\,\mathbf x =
% \left(
%   \begin{array}{cccc}
%     r_1&  r_2 & \ldots &  r_n
%   \end{array}\right)
% \left(
%   \begin{array}{c}
%     x_1 \\ x_2 \\ \vdots \\ x_n
%   \end{array}\right)
% = x_1r_1 + x_2r_2 + \cdots + x_nr_n
% vilket är det samma som skalärprodukten mellan  \mathbf r^\top  och  \mathbf x\,.
% Ett annat sätt att tänka på produkten  A\mathbf x  är därför som
% A\mathbf x =
% \left(
%   \begin{array}{c}
%     \mathbf r_1\\ \mathbf r_2 \\ \vdots \\ \mathbf r_m
%   \end{array}\right)
% \mathbf x
% =
% \left(
%   \begin{array}{c}
%     \mathbf r_1\mathbf x \\ \mathbf r_2 \mathbf x \\ \vdots \\\mathbf
%     r_m\mathbf x
%   \end{array}\right)\,,
% där \mathbf r_1,\,\mathbf r_2,\,\ldots,\,\mathbf r_m är radern i A\,. Detta är det vanligast sättet att genomföra multiplikationen vid handräkning.
% I Matlab utförs multiplikationen  A\mathbf x genom kommandot
% A * x
% Den koordinatvisa multiplikationen mellan två listor (rad- eller kolonnvektorer) utförs med operationen  .*  (punktvis  (kooordinatvis) multiplikation):
%  b .* c = [b1, b2,..., bn] .* [c1, c2,..., cn]
% =[b1*c1, b2*c2,..., bn*cn]
% Om  \mathbf a_1,\, \mathbf a_2,\, \ldots,\, \mathbf a_n  är kolonnerna i A och x_1,\,x_2,\ldots,\,x_n koordinaterna i kolonnvektorn  \mathbf x  ger därför
% [ a1  a2  ...  an] .* x'
% resultatet
% [x1*a1  x2*a2  ...  xn*an]
% som är en m\times n-matris. För att summera kolonnerna i en matris B koordinatvis kan du använda kommandot
% sum( B , 2 )
% där 2 anger andra riktningen dvs i kolonnled (andra riktningen). Talet 1 ger istället summan i radled (första riktningen).
%
% Pröva nu att beräkna  A\mathbf x  på tre sätt:
% (a)   som en linjärkombo av kolonner i A,\,
% (b)   som en kolonnvektor som fås som produkter mellan rader och \mathbf x,
% (c)   med Matalbs * ,
% när  A och \mathbf x är slumpmässigt valda  4\times 5- och 5\times 1-matriser med heltalselement i intervallet [-9,\,9]\,.



% Du har nu två alternativa sätt att tänka på ekvationssystemet
%   \left\{
%   \begin{array}{rcrcccrcr}
%     a_{11}x_1 & \!+\! & a_{12}x_2 & \!+\! & \ldots & \!+\ & a_{1n}x_n
%     &\!=\!& b_1\\
%     a_{21}x_1 & \!+\! & a_{22}x_2 & \!+\! & \ldots & \!+\ & a_{2n}x_n
%     &\!=\!& b_2\\
%          & & & & & &  &\vdots& \\
%     a_{m1}x_1 & \!+\! & a_{m2}x_2 & \!+\! & \ldots & \!+\ & a_{mn}x_n
%     &\!=\!& b_m\\
%   \end{array}
%   \right.\, \qquad (2)
% Ett är att se det som ekvation med vektorer
% \begin{array}{ccccccccc}
% x_1\left(
%   \begin{array}{c}
%     a_{11} \\ a_{21} \\ \vdots \\a_{m1}
%   \end{array}\right) &\!+\! &
% x_2\left(
%   \begin{array}{c}
%     a_{12} \\ a_{22} \\ \vdots \\a_{m2}
%   \end{array}\right) &\!+\!&  \cdots &\!+\!&
% x_n\left(
%   \begin{array}{c}
%     a_{1n} \\ a_{2n} \\ \vdots \\a_{mn}
%   \end{array}\right) &\!=\!&
%   \left(
%   \begin{array}{c}
%     b_1 \\ b_2 \\ \vdots \\b_{m}
%   \end{array}\right)\\
%   \\
%   x_1\mathbf a_1 & \!+\! &x_2\mathbf a_2 &\!+\!&\cdots &\!+\!&  x_n\mathbf a_n &    \!=\! & \mathbf b
% \end{array} \qquad (3)
% ett annat är att se det som en ekvation med matriser
% \begin{array}{rcc}
% \left(
%   \begin{array}{rrrr}
%     a_{11}& a_{21} & \ldots & a_{1n}\\
%     a_{21}& a_{22} & \ldots & a_{2n}\\
%     \vdots & \vdots &       & \vdots\\
%     a_{m1}& a_{m1} & \ldots & a_{mn}\\
%   \end{array}\right)
% \left(
%   \begin{array}{r}
%     x_1 \\ x_2 \\ \vdots \\ x_n
%   \end{array}\right) &=&
% \left(
%   \begin{array}{r}
%     b_1 \\ b_2 \\ \vdots \\ b_m
%   \end{array}\right)\\
%   & & \\
%   A\mathbf x & = & \mathbf b
% \end{array}\qquad (4)
%
%% 30.5   Beskrivning av lösningsmängden till homogena ekvationssystem
%
% Ett homogent ekvationssystem är ett av formen A\mathbf x = \mathbf 0\,. Ett sånt är alltid konsistent eftersom det  har den triviala lösningen \mathbf x = \mathbf 0 .
% Problemet är nu att så ekonomiskt som möjligt beskriva lösningsmängden. Ett sätt att göra det är att bestämma ett antal vektorer (helst så få som möjligt)\mathbf v_1,\, \mathbf v_2,\,\ldots,\, \mathbf v_p så att lösningarna är alla linjärkombinationer av dessa, dvs så att lösningsmängden är precis
% \mbox{Span}\{\mathbf v_1,\, \mathbf v_2,\ldots,\mathbf v_p\}\,.
% Hur hittar du då dessa vektorer? Ett sätt du kan göra det är att lösa ekvationssystemet genom att uttrycka basvariabler med de fria varaiblerna och sedan se resultet som en linjärkombination av vektorer där de fria variblerna agerar vikter.
% Här är ett exempel hur detta går till
% Uppgift 30.5   Bestäm vektorer som spänner ut lösningsmängden till ekvationen  A\mathbf x=\mathbf 0  när
% A = \left(\begin{array}{rrrrrr}
%  2 & 1 & 1 & 2 & 8 & 3\\
%  3 & -2 & 12 & -3 & 13 & -5\\
%  2 & 3 & -5 & -1 & 1 & 5\\
%  -1 & -3 & 7 & 1 & 3 & 3
% \end{array}\right)\,.



% Systemet har därför samma lösningar som systemet
% \left\{\begin{array}{rcrcrcrcrcrcr}
%          x_1 & &  &\!+\!& 2x_3 & & &\!+\! & 4x_5 & & & \!=\! & 0\\
%           & & x_2 & \!-\! &  3x_3 & & &\!-\! & 2x_5 & & & \!=\! & 0\\
%           & & & & &  & x_4 & \!+\! & x_5  & & &\!=\! & 0\\
%         & & & & & & & & & & x_6 & \!=\!&0
%  \end{array}\right.\,,
% med basvariabler x_1,\,x_2,\,x_4 och x_6 och fria variabler x_3,\, x_5. Lösningarna är
% \mathbf x =
% \left(
%   \begin{array}{r}
%     x_1 \\ x_2 \\ x_3 \\ x_4 \\ x_5 \\ x_6
%   \end{array}\right) =
% \left(
%   \begin{array}{r}
%       -2x_3 - x_5 \\ 3x_3 + 2 x_5 \\ x_3 \\ -x_5 \\ x_5 \\ 0
%   \end{array}\right) =
% x_3
% \left(
%   \begin{array}{r}
%     -2 \\ 3 \\ 1 \\ 0 \\ 0 \\0
%   \end{array}\right) +
% x_5
% \left(
%   \begin{array}{r}
%     -4 \\ 2 \\ 0 \\ -1 \\ 1 \\ 0
%   \end{array}\right)
% där x_1 och x_5 är godtyckliga. Det betyder att lösningsmängden är alla linjärkombinationer av vektorerna
% \mathbf v_1 =
% \left(
%   \begin{array}{r}
%     -2 \\ 3 \\ 1 \\ 0 \\ 0 \\0
%   \end{array}\right),\quad
% \mathbf v_2=
% \left(
%   \begin{array}{r}
%     -4 \\ 2 \\ 0 \\ -1 \\ 1 \\ 0
%   \end{array}\right)
% dvs
% \mbox{Span}\{\mathbf v_1,\, \mathbf v_2\}\,.
% Om du nu kollar på de kolonner i
% U = rref( A )  = [ 1  0   2  0   4  0 ;
%                    0  1  -3  0  -2  0 ;
%                    0  0   0  1   1  0 ;
%                     0  0   0  0   0  1  ]
% som inte är pivotkolonner känner du (i stort sett ) igen koefficienterna i de båda vektorerna -\mathbf v_1 och -\mathbf v_2\. . (som har samma linjära hölje som \mathbf v_1 och \mathbf v_2\,). Det betyder att du bör kunna avläsa dem direkt från  rref( A ).
% Metod för att bestämma vektorer som spänner lösningsmängden till A\mathbf x = \mathbf 0:
% Överför  A  till  U  på RTF,
% välj en icke-piovtkolonn i  U och skriv  -1  ovan för den och  0  ovanför övriga såna kolonnner (röda i figuren nedan).
% Fyll på den extra raden med de element som står i den valda icke-pivotkolonnen (violetta)
% Avläs en radvektor vars transponant är en av de önskade vektorerna (översta raden)
% Gör detta för varje icke-pivotkolonn i  U\,.
%
%
% Pröva nu att bestämma vektorer som spänner lösningsmängden till ekvationen A\mathbf x= \mathbf 0  när
% A=\left(\begin{array}{rrrrrrr}
%  -1 & -6 & 5 & -13 & -3 & -1 & -32\\
%  -3 & -18 & 5 & -1 & -1 & 5 & -10\\
%   0 & 0 & -5 & 16 & 1 & -2 & 7\\
%  -2 & -12 & 3 & 6 & 5 & 2 & -1
% \end{array}\right)\,.



% Antag nu att  lösningsmängden till A\mathbf x = \mathbf 0  är  \mbox{Span}\{\mathbf v_1,\,\mathbf v_2,\, \ldots,\,\mathbf v_k\}\,. Allmänna lösningen (alla lösningar) ges då av (indexet h för homogen )
% \mathbf v_h = t_1\mathbf v_1 + t_2\mathbf v_2 +\cdots +t_k\mathbf v_k
% där t_1,\,t_2,\,\ldots,\,t_k\, är godtyckliga skalärer (dvs reella tal). Detta kallas att göra en parameterframställning av lösningsmängden till A\mathbf x = \mathbf 0\,.
%
%% 30.6   Beskrivning av lösningsmängden till inhomogena ekvationssystem
%
% Antag nu att du vill beskriva lösningarna till  en inhomogen ekvation A\mathbf x = \mathbf b\, där \mathbf b \not=\mathbf 0\,. Ett sån ekvation kan vara inkonsistent, dvs sakna lösning överhuvudtaget.
% Antag att ekvationen torts allt är konsistent och att \mathbf p är én (partikulär)lösning till ekvationen så att A\mathbf p =\mathbf b\,.
% Sats: Om \mathbf p är én lösning till A\mathbf x = \mathbf b\, ges samtliga lösningar av \mathbf x = \mathbf p +\mathbf v_h, där \mathbf v_h är allmänna lösningen till den homogena ekvationen A\mathbf x = \mathbf 0\,.
% Om \mbox{Span}\{\mathbf v_1,\,\mathbf v_2,\,\ldots,\,\mathbf v_k\}\, är lösningmängden till A\mathbf x=\mathbf 0\, kan därför lösningarna till
% A\mathbf x =\mathbf b\,
% beskrivas som
% \mathbf x = \mathbf p+t_1\mathbf v_1+t_2\mathbf v_2 +\cdots+t_k\mathbf v_k\,
%  där t_1,\,t_2,\,\ldots,\,t_k\, är godtyckliga skalärer och \mathbf p en partikulärlösning till ekvationen. Detta kallas att göra en parameterframställning av lösningsmängden till A\mathbf x = \mathbf p\,.
% Hur ska du då hitta en partikulärlösning? Ett sätt är att imitera proceduren som ger dig vektorerna som spänner ut lösningarna till A\mathbf x =\mathbf 0\,:
% Överför  UKM (\,A\ \mathbf b\,) till U på RTF,
% Är sista kolonnen i  U är det kört. Lösning saknas.
% Skriv annas en ny rad ovanför  U med nollor ovanför icke-pivotkolonner utom ovanför samtliga utom den sista där du inte skriver nåt alls.
% Fyll sedan på de tomma platserna med elementen i sista kolonnen.
% Du kan också använda U\, med sista kolonnen struken för att bestämma vektorer som spänner ut lösningsmängden till den homogena ekvationen  A\mathbf x =\mathbf 0\,.
% Pröva detta nu med A\mathbf x=\mathbf b\, när
% A=
% \left(\begin{array}{rrrrrr}
%  1 & -2 & -1 & -1 & -2 & -4 \\
%  1 & -2 & -2 & 1 & 1 & 4 \\
%  2 & -4 & 3 & -12 & 3 & 18 \\
%  1 & -2 & -1 & -1 & 2 & 8
% \end{array}\right)\,,
% \qquad
% \mathbf b =
% \left(\begin{array}{r}
%  11\\
%  0\\
%  -11\\
%  -5
% \end{array}\right)\,.



% Matlab har ett inbyggt kommando för att hitta en lösning till A\mathbf x =\mathbf b\,. Du hittar en lösning till ekvationen genom att "dela med A från vänster":
% p = A\b
% Ett krux med detta är att kommandot ger ett förslag på lösning även om ekvationen är inkonsistent! Vad den lösningen i så fall betyder återkommer du till senare i kursen. Kolla därför först att ekvationen är konsistent  med  rref([A  b])  när du använder detta kommando.
% Det finns också ett inbyggt kommando för att bestämma vektorer som spänner ut lösningsmängden till den homogena ekvationen A\mathbf x = \mathbf 0:
% V = null( A )
% sätter  V  till en matris vars kolonner spänner ut lösningsmängden. Kolonnerna i  V  är har koordinater som är approximativa. Det är inte säkert att de är exakta lösningar till A\mathbf x =\mathbf 0\,.
% Pröva dessa komandon med ekvationen ovan.
%



%
%% 30.7   Linjärt (o)beroende vektorer i \mathbb R^n
%
% OK, du kan nu beskriva lösningsmängden såväl till en homogen ekvation A\mathbf x = \mathbf 0\,, som till en konsistent inhomogen sån A\mathbf x = \mathbf b, där \mathbf b \not=\mathbf 0\,, med hjälp av linjära höljet till ett antal vektorer (och en partikulärlösning). Det är najs!
% Anta nu att du löst A\mathbf x=\mathbf 0\, genom att bestämma att lösningsmängden är
% \mbox{Span}\{\mathbf v_1,\,\mathbf v_2,\,\ldots,\,\mathbf v_k\}
% Du vill vara ekonomisk och inte ha med nån av vektorerna i onödan. Hur ska du avgöra om nån av vektorerna är överflödig dvs om
% \mbox{Span}\{\mathbf v_1,\, \mathbf v_2,\, \ldots,\,\mathbf v_{i-1},\, \mathbf v_{i+1},\,\ldots,\, \mathbf v_k\}\,=\,\mbox{Span}\{\mathbf v_1,\,\mathbf v_2,\,\ldots,\,\mathbf v_k\}
% för nåt i\, eller inte?
% Eftersom  \mathbf v_i  i så fall är med i mängden i högra ledet är den då också med i mängden i vänstra ledet, dvs \mathbf v_i är då en linjärkombination av vektorerna i vänstra ledet. Anta nu å andra sidan att \mathbf v_i är en linjärkombination av vektorerna \mathbf v_1,\,\mathbf v_2,\,\ldots,\,\mathbf v_{i-1},\,\mathbf v_{i+1},\,\ldots,\,\mathbf v_k\, och att \mathbf w\in\mbox{Span}\{\mathbf v_1,\, \mathbf v_2,\,\ldots,\, \mathbf v_k\}\,så att
% \begin{array}{rcl}
% s_1\,\mathbf v_1+\cdots+s_{i-1}\mathbf v_{i-1}+s_{i+1}\mathbf
% v_{i+1}+\cdots + s_{k}\mathbf v_k &=&\mathbf v_i\\
%   \left(
%   \begin{array}{rrrrrr}
%     \mathbf v_1 & \ldots & \mathbf v_{i-1} & \mathbf v_{i+1} & \ldots
%     & \mathbf v_k
%   \end{array}\right)\mathbf s &=&  \mathbf v_i\\
%  V \mathbf s &=& \mathbf v_i
% \end{array}
% och
% \begin{array}{rcl}
% t_1\,\mathbf v_1+\cdots+t_{i-1}\mathbf v_{i-1}+t_i\mathbf v_i+t_{i+1}\mathbf
%                    v_{i+1}+\cdots + t_{k}\mathbf v_k &=& \mathbf w\\
% t_1\,\mathbf v_1+\cdots+t_{i-1}\mathbf v_{i-1}+t_{i+1}\mathbf
%       v_{i+1}+\cdots + t_{k}\mathbf v_k &=& \mathbf w - t_i\mathbf v_i\\
%   \left(
%    \begin{array}{rrrrrr}
%     \mathbf v_1 & \ldots & \mathbf v_{i-1} & \mathbf v_{i+1} & \ldots
%     & \mathbf v_k
%   \end{array}\right)\mathbf t &=& \mathbf w -t_i \mathbf v_i\\
%   V\mathbf t &=& \mathbf w -  t_i\mathbf v_i
% \end{array}
% för några vikter s_1,\,\ldots,s_{i-1},\,s_{i+1},\ldots,\,s_k och t_1,\,\ldots,\, t_{i-1},\,t_i,\,t_{i+1},\,\ldots,\,t_k. Detta ger
% V(\mathbf t+t_i\,\mathbf s) = V\mathbf t +t_i \,V\mathbf s =(\mathbf w-t_i\mathbf v_i) + t_i\mathbf v_i=\mathbf w\,
% Detta visat att \mathbf w då även ligger i  \mbox{Span}\{\mathbf v_1,\, \mathbf v_2,\, \ldots,\,\mathbf v_{i-1},\, \mathbf v_{i+1},\,\ldots,\, \mathbf v_k\}\,.
% Sats   Det gäller att
% \mbox{Span}\{\mathbf v_1,\, \mathbf v_2,\, \ldots,\,\mathbf v_{i-1},\, \mathbf v_{i+1},\,\ldots,\, \mathbf v_k\}\,=\,\mbox{Span}\{\mathbf v_1,\,\mathbf v_2,\,\ldots,\,\mathbf v_k\}
% precis när \mathbf v_i är en linjärkombination av  \mathbf v_1,\,\mathbf v_2,\,\ldots,\,\mathbf v_{i-1},\,\mathbf v_{i+1},\,\ldots,\,\mathbf v_k\,.
% Definition   En uppsättning vektorer \mathbf v_1,\,\mathbf v_2,\, \ldots,\,\mathbf v_k är linjärt beroende om nån av dem är en linjärkombination av övriga. Är de inte linjärt beroende är de linjärt oberoende.
% Ingen av vektorerna \mathbf v_1,\,\mathbf v_2,\,\ldots,\, \mathbf v_k\,är alltså överflödig i \mbox{Span}\{\mathbf v_1,\,\mathbf v_2,\,\ldots,\,\mathbf v_k\} precis när vektorerna är linjärt oberoende.
% Det blev ju bara ytterligar ett ord att lägga på minnet, men hur avgör du operativt om \mathbf v_1,\,\mathbf v_2,\, \ldots,\,\mathbf v_k är linjärt beroende eller oberoende?
% Anta att de är linjärt beroende. Då finns nåt index i och några skalärer t_1,\,\ldots,\, t_{i-1},\,t_{i+1},\,\ldots,\, t_k så att
% t_1\mathbf v_1+\cdots t_{i-1}\mathbf v_{i-1}+t_{i+1}\mathbf v_{i+1}+\cdots t_k\mathbf v_k = \mathbf v_i
% eller, efter subtraktion med \mathbf v_i\,,
% \begin{array}{rcl}
%   t_1\mathbf v_1+\cdots t_{i-1}\mathbf v_{i-1}-\mathbf
%   v_i+t_{i+1}\mathbf v_{i+1}+\cdots t_k\mathbf v_k &=& \mathbf 0\\
%   \left(
%   \begin{array}{rrrrrr}
%     \mathbf v_1 & \ldots & \mathbf v_{i-1} & \mathbf v_i
%     & \mathbf v_{i+1} & \ldots & \mathbf v_k
%   \end{array}\right)\mathbf t &=& \mathbf 0\\
%   V\mathbf t &=& \mathbf 0
% \end{array}
% där \mathbf t\not=\mathbf 0, eftersom koordinat i är -1\,.
% Anta å andra sidan att ekvationen V\mathbf t=\mathbf 0 har en icke-trival lösning \mathbf t\not= \mathbf 0. För nåt index  i gäller då att t_i\not=0. Det ger
% \begin{array}{rcl}
%   V \mathbf t &=& \mathbf 0\\
%     \left(
%   \begin{array}{rrrrrrr}
%     \mathbf v_1 & \ldots & \mathbf v_{i-1} & \mathbf v_i
%     & \mathbf v_{i+1} & \ldots & \mathbf v_k
%   \end{array}\right)\mathbf t &=& \mathbf 0\\
%   t_1\mathbf v_1 + \cdots +t_{i-1}\mathbf v_{i-1}+t_i\mathbf
%   v_i+t_{i+1}\mathbf v_{i+1}+\cdots +t_k\mathbf v_k &=& \mathbf 0\\
%     t_1\mathbf v_1 + \cdots +t_{i-1}\mathbf v{i-1}+t_{i+1}\mathbf
%   v_{i+1}+\cdots +t_k\mathbf v_k &=& -t_i\mathbf v_i \\
%       -(t_1/t_i)\mathbf v_1 - \cdots - (t_{i-1}/t_i)\mathbf v_{i-1}-(t_{i+1}/t_i)\mathbf
%   v_{i+1}-\cdots (t_k/t_i)\mathbf v_k &=& \mathbf v_i \\
% \end{array}
% där divisionen med -t_i  funkar eftersom t_i\not=0.
% Nu är du hemma:
% Sats   Vektorerna \mathbf v_1,\,\mathbf v_2,\,\ldots,\, \mathbf v_k\, är linjärt oberoende precis när ekvationen
% V\,\mathbf t = \mathbf 0\quad \mbox{där } V = \left(\begin{array}{rrrr}
% \mathbf v_1 & \mathbf v_2 & \ldots & \mathbf v_k
% \end{array}\right)\,
% bara har den triviala lösningen.
% Sen tidigare vet du att V\,\mathbf t = \mathbf 0 bara har den triviala lösningen \mathbf t = \mathbf 0 precis när varje kolonn i V är pivotkolonn (inga fria variabler).
% Det ger följande metod för att avgöra om \mathbf v_1,\,\mathbf v_2,\,\ldots,\, \mathbf v_k\, är linjärt oberoende eller ej:
% Metod:
% Sätt  V =
% \left(\begin{array}{rrrr}
% \mathbf v_1 & \mathbf v_2 & \ldots & \mathbf v_k
% \end{array}\right)\,,
% Överför  V till RTF (eller TF),
% Avgör om varje kolonn är pivotkolonn eller ej
% Om "ja" är vektorerna linjärt oberoende, annars är de linjärt beroende.
%
% Uppgift 30.6   Låt \mathbf v_1,\,\mathbf v_2,\,\ldots,\,\mathbf v_8 vara kolonnerna i matrisen
% A=  \left(\begin{array}{rrrrrrrrr} 4 & 24 & -4 & -5 & 3 & -3 & 27 & -30\\ 5 & 30 & -3 & -19 & -3 & -3 & 18 & -34\\ 1 & 6 & 4 & -12 & 5 & 1 & 9 & 22\\ -4 & -24 & -3 & 27 & -2 & 0 & -19 & -6 \end{array}\right)\,.
% Avgör om
% (a)    om nån av vektorerna \mathbf v_3,\, \mathbf v_7,\,\mathbf v_8 är en linjärkombination av de övriga två.
% (b)   om vektorerna \mathbf v_2,\, \mathbf v_3,\,\mathbf v_4,\,\mathbf v_5,\,\mathbf v_6\, är linjärt oberoende. Om inte skriv en av vektorerna som en linjärkombination av övriga.
% (c)   om \mbox{Span}\{\mathbf v_1,\,\mathbf v_2,\mathbf v_5,\,\mathbf v_6 \} = \mbox{Span}\{\mathbf v_1,\,\mathbf v_6\}



%
% För att "gallra" ut onödig(a) vektor(er) i en uppsättning vektorer \mathbf v_1,\,\mathbf v_2,\,\ldots,\,\mathbf v_k\,  till linjärt oberoende vektorer med samma linjära hölje har du följande:
% Metod:
% Sätt V=\left(\begin{array}{rrrr}
% \mathbf v_1 & \mathbf v_2 & \ldots & \mathbf v_k
% \end{array}\right)\,och överför V\, till U\, på trappstegsform.
% Avläs vilka kolonner i V\, som är pivotkolonner (samma som i U\,).
% Pivotkolonnerna i V\, är linjärt oberoende och har samma linjära hölje som de givna vektorerna.
% Säg nu att du har hittat vektorer \mathbf v_1,\,\mathbf v_2,\,\ldots,\,\mathbf v_k\, i \mathbb R^n\, så att \mbox{Span}\{\mathbf v_1,\,\mathbf v_2,\,\ldots,\,\mathbf v_k\} = \mathbb R^n\,. Kan du då säga nåt om förhållandet mellan k och n\,?
% Matrisen V = \left(\begin{array}{rrrr}{\mathbf v_1 & \mathbf v_2 &\ldots & \mathbf v_k\end{array}\right)\, har då typen n\times k\,.  Eftersom vektorernas linjära hölje är \mathbb R^n\, är ekvationen V\,\mathbf x= \mathbf b konistent (lösbar) för varje val av \mathbf b\in \mathbb R^n\,. Överför du UKM \left(\begin{array}{rr} V & \mathbf b\end{array}\right) till TF får du då aldrig pivotkolonn i sista kolonnen. Det betyder att varje rad i V\, har en pivotposition så n\leq k\,.
% Om vektorerna dessutom är linjärt oberoende är varje kolonnn en pivotkolonn så n=k\,.
% Sats   Om \mathbf v_1,\,\mathbf v_2,\,\ldots,\,\mathbf v_k\, är linjert oberoende vektoer i \mathbb R^n såna att \mbox{Span}\{\mathbf v_1,\,\mathbf v_2,\,\ldots,\,\mathbf v_k\} = \mathbb R^n\, så är n=k\,.
%
% Uppgift 30.7   Låt
%  A = \left(\begin{array}{rrrrrrr} 14 & -9 & -7 & -8 & 9 & 13 & 11\\ 17 & -3 & 20 & 1 & -11 & 12 & -11\\ -8 & 6 & 19 & 18 & 16 & 0 & -3\\ 18 & 19 & 4 & 14 & 18 & 9 & -11\\ 8 & 19 & 14 & 19 & 10 & -7 & -9 \end{array}\right)\,.
% (a)  Spänner kolonnerna i A\, ut \mathbb R^5\,?
% (b)   Välj i så fall ut så få kolonner i A\, som möjligt som spänner ut och skriv de återstående kolonnerna som linjärkombinationer av dessa.

