Anteckningar i Inledande Matematik
notes-2016-08-30
notes-2016-08-30
You also want an ePaper? Increase the reach of your titles
YUMPU automatically turns print PDFs into web optimized ePapers that Google loves.
<strong>Anteckningar</strong> i<br />
<strong>Inledande</strong> <strong>Matematik</strong><br />
Anders Logg<br />
Chalmers tekniska högskola<br />
(Utkast, version 30 augusti 2016)
Copyright © 2016 Anders Logg
Förord och läsanvisningar<br />
Dessa anteckningar är avsedda att användas som kompletterande material i kursen <strong>Inledande</strong><br />
matematik på M (TMV225) på Chalmers. Vi kommer i huvudsak att använda oss av boken<br />
Calculus (Adams & Essex) men läsvecka 1 och 6 kommer vi att läsa kapitel 1 respektive 6 i<br />
dessa anteckningar som täcker ämnen som inte tas upp i Adams & Essex.<br />
Kapitel 1 behandlar grundläggande matematisk notation, talföljder, konvergens, Cauchyföljder<br />
och konstruktionen av de reella talen R. Detta kommer vi att få stor användning för under<br />
de kommande veckorna.<br />
Kapitel 6 behandlar metoder (algoritmer) för lösning av ekvationer: bisektionsalgoritmen,<br />
fixpunktsalgoritmen och Newtons metod.<br />
Synpunkter och korrigeringar mottages tacksamt, på Twitter (@professorlogg) eller på<br />
email (logg@chalmers.se)!<br />
Anders Logg<br />
Göteborg, 30 augusti 2016<br />
Tack!<br />
Stort tack till Niklas Ericsson och Stig Larsson för många bra kommentarer och synpunkter<br />
på texten! Stort tack också till övningsledare på TMV225 för korrekturläsning av bokens facit:<br />
Robert Forslund, Felix Held, Carl Lundholm, Raad Salman och Joel Sjögren.
Innehåll<br />
0 Ekvationen f (x) = 0 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 7<br />
1 Reella tal . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 11<br />
1.1 Mängdlära 11<br />
1.2 Matematisk logik 12<br />
1.3 Rationella tal 16<br />
1.4 Talföljder och konvergens 19<br />
1.5 Reella tal 24<br />
1.6 ⋆ Datorrepresentation av reella tal 31<br />
2 Funktioner (I) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 39<br />
2.1 Introduktion 39<br />
3 Gränsvärde och kontinuitet . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 41<br />
3.1 Introduktion 41<br />
4 Derivata och linjärisering . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 43<br />
4.1 Introduktion 43<br />
5 Approximation och serieutveckling . . . . . . . . . . . . . . . . . . . . . . . . . . 45<br />
5.1 Introduktion 45<br />
6 Ekvationslösning . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 47<br />
6.1 Introduktion 47
7 Tillämpningar . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 49<br />
7.1 Introduktion 49<br />
8 Repetition . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 51<br />
8.1 Introduktion 51<br />
Facit . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 53<br />
Bibliografi . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 63
0. Ekvationen f (x) = 0<br />
I detta inledande kapitel funderar vi på hur man löser skalära ickelinjära ekvationer på<br />
formen f (x) = 0 och på vad det egentligen innebär att lösa en ekvation. Vi presenterar ett<br />
par exempel på till synes enkla ekvationer som visar sig vara mycket svårlösta och ser hur<br />
dessa kan lösas med generella metoder.<br />
Symbolisk ekvationslösning<br />
Hur löser man ekvationen f (x) = 0? Denna fråga kommer att gå som en röd tråd genom första<br />
delen av den här boken.<br />
Vi är vana vid att lösa enkla algebraiska ekvationer som till exempel andragradsekvationen<br />
x 2 + bx + c = 0. Vi kan direkt skriva upp lösningen (lösningsskaran) som<br />
x = − b 2 ± √b 2 /4 − c. (1)<br />
Men låt oss för en stund fundera på ekvationen x 2 = 2, det vill säga b = 0 och c = −2. Lösningarna<br />
ges då av<br />
x = ± √ 2. (2)<br />
Men vad är √ 2? Har vi verkligen löst ekvationen x 2 = 2 genom att skriva x = √ 2, eller har vi i<br />
själva verket bara hittat på en symbol ( √ ) för lösningen? Och hur vet vi alls att ekvationen<br />
har en lösning? Finns talet √ 2? Dessa frågor kommer vi att besvara redan i kapitel 1 när vi ger<br />
mening åt symbolen √ .<br />
Detta med att ge mening åt olika symboler är centralt inom matematiken och vi kommer i<br />
de följande kapitlen att ge mening åt symboler som √<br />
d<br />
, lim n→∞ ,<br />
dx och ∑∞ n=1 och, inte minst,<br />
hitta användning för dessa verktyg.<br />
Men även om man kan ge mening åt symboler som √ så räcker det inte långt om man<br />
vill lösa allmänna ekvationer på formen f (x) = 0. För vad är till exempel lösningsformeln för<br />
följande till synes enkla ekvation?<br />
x = cos(x) (Ekvationen kan alternativt skrivas som f (x) = x − cos(x) = 0.) (3)<br />
Denna ekvation saknar en enkel lösningsformel. Vi skulle kunna hitta på en symbol för ekvationens<br />
lösning (ty ekvationen har en lösning), men vi kommer istället att se hur lösningen enkelt<br />
kan beräknas med en generell lösningsalgoritm.
8 Kapitel 0. Ekvationen f (x) = 0<br />
Generella lösningsalgoritmer<br />
I kapitel 6 kommer vi att konstruera kraftfulla lösningsalgoritmer som, under vissa milda antaganden,<br />
kan lösa alla tänkbara ekvationer skrivna på formen f (x) = 0, till exempel f (x) =<br />
x 2 + bx + c = 0, f (x) = x 2 − 2 = 0 eller f (x) = x − cos(x) = 0: bisektionsalgoritmen, fixpunktsalgoritmen<br />
och Newtons metod.<br />
Gemensamt för dessa algoritmer är att lösningsprocessen är iterativ; lösningen konstrueras<br />
genom att steg för steg beräkna allt noggrannare approximationer av lösningen, vilket kan göras<br />
med ett enkelt datorprogram. Ingen av algoritmerna ger en explicit formel för lösningen. Som en<br />
försmak på detta undersöker vi hur ekvationerna x = cos(x) och x 2 = 2 kan lösas iterativt.<br />
Exempel 0.1 — Lösning av ekvationen x = cos(x) med fixpunktsiteration. För att lösa<br />
ekvationen x = cos(x) gissar vi att lösningen är x = 1, vilket faktiskt inte är en helt orimlig<br />
gissning. Låt oss kalla denna gissning för x 0 och låt oss testa vad som händer om vi nu sätter in<br />
denna gissning i högerledet och beräknar x 1 = cos(x 0 ) = cos(1) ≈ 0.54. Detta värde tar vi som<br />
vår nya gissning. Varför detta skulle vara en bättre gissning återkommer vi till i senare kapitel,<br />
men låt oss för stunden se på detta som en lyckosam chansning. . . Vi upprepar förfarandet och<br />
stoppar nu in x 1 i högerledet och får x 2 = cos(x 1 ) ≈ 0.86. Om vi upprepar detta ett antal gånger<br />
ser vi att talen x 0 ,x 1 ,x 2 ,... ser ut att närma sig ett tal i närheten av 0.73908513321516:<br />
x 0 = 1<br />
x 1 = cos(x 0 ) ≈ 0.54030230586814<br />
x 2 = cos(x 1 ) ≈ 0.85755321584639<br />
x 3 = cos(x 2 ) ≈ 0.65428979049778<br />
x 4 = cos(x 3 ) ≈ 0.79348035874257<br />
x 5 = cos(x 4 ) ≈ 0.70136877362276<br />
.<br />
x n = cos(x n−1 )<br />
.<br />
x 79 = cos(x 78 ) ≈ 0.73908513321515<br />
x 80 = cos(x 79 ) ≈ 0.73908513321517<br />
x 81 = cos(x 80 ) ≈ 0.73908513321516<br />
x 82 = cos(x 81 ) ≈ 0.73908513321516<br />
x 83 = cos(x 82 ) ≈ 0.73908513321516<br />
Detta förfarande kallas fixpunktsiteration och ger, i detta fall, en följd av tal som ser ut att<br />
närma sig (konvergera mot) ett tal ¯x ≈ 0.73908513321516. Vilket är då detta tal ¯x? Jo, eftersom<br />
uppenbarligen också cos( ¯x) ≈ 0.73908513321516 (se sista raden i följden av tal ovan) så drar vi<br />
slutsatsen att talföljden närmar sig det tal ¯x som löser just ekvationen x = cos(x)!<br />
I figur 1 åskådliggörs detta grafiskt. Vi ser att iterationerna snabbt närmar sig ett värde<br />
i närheten av 0.73908513321516. Vid närmare undersökning finner man att i varje iteration<br />
minskar avståndet mellan x n och lösningen ¯x med en faktor 0.67 ≈ sin( ¯x). I senare kapitel<br />
kommer vi att förstå varför. Vi kommer också att förstå hur vi skall göra för att lösningen skall<br />
konvergera (mycket!) snabbare.<br />
<br />
Exempel 0.2 — Lösning av ekvationen x 2 = 2 med fixpunktsiteration. Inspirerade av det<br />
förra exemplet försöker vi nu lösa ekvationen x 2 = 2 med fixpunktsiteration. Vi gissar återigen<br />
att lösningen ges av x = 1 och sätter x 0 = 1. Till skillnad mot ekvationen x = cos(x) så kan vi<br />
inte direkt sätta in x 0 i högerledet och få ut en ny gissning. Vi måste därför på något sätt lösa ut x<br />
ur ekvationen. Vi resonerar då på följande sätt. Om vår gissning x 0 är för liten (vilket den ju är,<br />
vi vet att √ 2 ≈ 1.41) så bör 2/x 0 vara för stor. Omvänt, om x 0 är för stor, så bör 2/x 0 vara för
9<br />
Figur 1: Iterativ lösning av ekvationen x = cos(x). Till vänster talen x 0 ,x 1 ,x 2 ,... som funktion<br />
av iterationsnumret n. Till höger “felet” |x n − 0.73908513321516|.<br />
liten. Och om x 0 är precis rätt, det vill om säga x 0 = √ 2 så är 2/x 0 = 2/ √ 2 = √ 2 = x 0 . Vi kan<br />
då hoppas på att medelvärdet av x 0 och 2/x 0 är en bättre gissning. Vi sätter därför<br />
x n = x n−1 + 2/x n−1<br />
. (4)<br />
2<br />
Om vi upprepar (itererar) detta förfarande får vi en följd av tal som ser ut att mycket snabbt<br />
närma sig ett tal i närheten av 1.4142135623731:<br />
x 0 = 1<br />
x 1 = (x 0 + 2/x 0 )/2 ≈ 1.5<br />
x 2 = (x 1 + 2/x 1 )/2 ≈ 1.4166666666667<br />
x 3 = (x 2 + 2/x 2 )/2 ≈ 1.4142156862745<br />
x 4 = (x 3 + 2/x 3 )/2 ≈ 1.4142135623747<br />
x 5 = (x 4 + 2/x 4 )/2 ≈ 1.4142135623731<br />
x 6 = (x 5 + 2/x 5 )/2 ≈ 1.4142135623731<br />
x 7 = (x 6 + 2/x 6 )/2 ≈ 1.4142135623731<br />
x 8 = (x 7 + 2/x 7 )/2 ≈ 1.4142135623731<br />
x 9 = (x 8 + 2/x 8 )/2 ≈ 1.4142135623731<br />
x 10 = (x 9 + 2/x 9 )/2 ≈ 1.4142135623731<br />
I figur 2 ser vi att lösningen redan efter fem iterationer har konvergerat mot lösningen ¯x ≈<br />
1.4142135623731. I kapitel 6 kommer vi att förstå varför denna iteration konvergerar så mycket<br />
snabbare än iterationen för x = cos(x) i exempel 0.1. Innan vi lämnar ekvationen x 2 = 2 för<br />
stunden noterar vi att ekvationen<br />
x = x + 2/x<br />
2<br />
(5)
10 Kapitel 0. Ekvationen f (x) = 0<br />
Figur 2: Iterativ lösning av ekvationen x 2 = 2. Till vänster talen x 0 ,x 1 ,x 2 ,... som funktion av<br />
iterationsnumret n. Till höger “felet” |x n − 1.4142135623731|.<br />
är en omskrivning av ekvationen x 2 = 2, vilket indikerar att när iterationen har konvergerat så<br />
har vi funnit lösningen ¯x = √ 2 eftersom då vänsterled är lika med högerled i ekvation (5). <br />
Beräkning och matematisk analys<br />
Vi ser att ekvationerna x = cos(x) och x 2 = 2 enkelt kan lösas med hjälp av fixpunktsiteration<br />
(en dator kan utföra iterationerna på en bråkdel av en mikrosekund). Men vad är det som gör att<br />
fixpunktsiterationen fungerar? Varför närmar sig talföljden mystiskt lösningen till ekvationen?<br />
Vi kommer att kunna besvara dessa frågor i detalj och inte bara kunna förklara när och varför<br />
iterationen fungerar, utan också hur snabbt iterationen kan väntas ge ett svar.<br />
För att förstå och analysera fixpunktsiteration och andra generella tekniker för ekvationslösning<br />
kommer vi i de följande kapitlen att i detalj konstruera och studera det matematiska<br />
teoribygge som går under namnet matematisk analys. Vi kommer att behöva studera grundläggande<br />
begrepp från den matematiska analysen: de reella talen, funktionsbegreppet, gränsvärden,<br />
kontinuitet, derivata och serieutveckling (kapitel 1–5). Med hjälp av dessa verktyg kommer vi<br />
i kapitel 6 att kunna konstruera och analysera kraftfulla generella algoritmer för lösning av<br />
allmänna ekvationer på formen f (x) = 0.<br />
Redan i bokens första kapitel kommer vi att definiera de reella talen och finna att ekvationen<br />
x 2 = 2 faktiskt har en lösning x = √ 2 och att den lösningen är ett reellt tal.
Mängdlära<br />
Matematisk logik<br />
Rationella tal<br />
Talföljder och konvergens<br />
Reella tal<br />
⋆ Datorrepresentation av reella tal<br />
1. Reella tal<br />
I detta kapitel introducerar vi de reella talen som är själva byggstenen för den matematiska<br />
analysen. Att konstruera de reella talen är en högst icketrivial uppgift, men vi tar oss an<br />
uppgiften med gott mod och kommer att bli rikligt belönade i senare kapitel; vi kommer<br />
inte bara att kunna sova bättre — trygga i vetskapen att de kalkyler och beräkningar vi gör<br />
vilar på en solid matematisk grund — utan vi kommer också att se hur konstruktionen av<br />
de reella talen återkommer i konstruktionen och analysen av de beräkningsalgoritmer vi<br />
använder för att lösa ekvationer, allt från den enkla ekvationen x 2 = 2 till kopplade system<br />
av ickelinjära partiella differentialekvationer.<br />
1.1 Mängdlära<br />
För att effektivt kunna resonera om tal, funktioner och andra centrala objekt inleder vi med att<br />
sammanfatta grundläggande notation och resultat från mängdlära och logik. Vår första definition<br />
är mängdbegreppet.<br />
Definition 1.1 — Mängd. En mängd X är en samling av objekt. Om x är ett objekt i mängden<br />
X säger vi att x är ett element i mängden X och skriver x ∈ X, vilket utläses “x tillhör X”. Om<br />
x inte tillhör X skriver vi x /∈ X, vilket utläses “x tillhör inte X”.<br />
Detta är en högst informell definition (för vad är egentligen en “samling av objekt”?) men vi<br />
kommer att nöja oss med denna intuitiva definition. 1 En mängd skrivs ofta med klammerparentes<br />
som i följande exempel:<br />
A = {1,2,3,4,5}, (1.1)<br />
B = {1,2,3}, (1.2)<br />
C = {3,4,5,☺,♫}, (1.3)<br />
D = {5,☺,♫,3,4}, (1.4)<br />
E = {1,{1},{1,2,3}}, (1.5)<br />
F = {}. (1.6)<br />
Vi noterar direkt två viktiga punkter. För det första är en mängd oordnad, vilket innebär att<br />
elementens ordning saknar betydelse. Således är mängden C samma mängd som mängden D.<br />
1 En mer rigorös definition kan göras utifrån Zermelo–Fraenkels axiom; se till exempel [Tao06].
12 Kapitel 1. Reella tal<br />
För det andra kan elementen i en mängd också vara mängder såsom mängden E bestående av<br />
de tre elementen 1 (talet 1), {1} (mängden vars enda element är talet 1) och mängden {1,2,3}.<br />
Slutligen noterar vi att en mängd kan vara tom (mängden F). Det finns bara en sådan mängd.<br />
Den kallas tomma mängden och betecknas /0.<br />
När vi nu har definierat mängdbegreppet är det dags att definiera ett antal viktiga relationer<br />
och operationer på mängder: inklusion, likhet, union, snitt, differens och produkt. Vi ger följande<br />
informella definitioner.<br />
Definition 1.2 — Relationer mellan mängder. Låt A och B vara mängder.<br />
(Inklusion) A är en delmängd av B omm 2 alla element i A också är element i B;<br />
skrivs A ⊆ B.<br />
(Likhet) A och B är lika omm A ⊆ B och B ⊆ A; skrivs A = B.<br />
(Strikt inklusion) A är en strikt delmängd av B om A ⊆ B och A ≠ B; skrivs A ⊂ B.<br />
Definition 1.3 — Operationer på mängder. Låt A och B vara mängder.<br />
(Union) Unionen av A och B är mängden av alla objekt som är element i<br />
A eller B; skrivs A ∪ B.<br />
(Snitt) Snittet av A och B är mängden av alla objekt som är element i<br />
A och B; skrivs A ∩ B.<br />
(Differens) Differensen av A och B är mängden av alla element i A som inte<br />
också är element i B; skrivs A \ B.<br />
(Produkt) Produkten av A och B är mängden av alla ordnade par (a,b)<br />
där a är ett element i A och b är ett element i B; skrivs A × B.<br />
Exempel 1.1 — Relationer och operationer på mängder. Låt A-F vara mängderna definierade<br />
i (1.1–1.6). Då gäller (exempelvis) följande relationer:<br />
B ⊆ A (B är delmängd av A.) (1.7)<br />
B ⊂ A (B är strikt delmängd av A, mer precist.) (1.8)<br />
C = D (C och D är lika.) (1.9)<br />
F ⊆ A (/0 är delmängd av alla mängder.) (1.10)<br />
F ⊂ A (/0 är strikt delmängd av alla icke-tomma mängder.) (1.11)<br />
Vi kan också bilda nya mängder med hjälp av operationerna union, snitt, differens och produkt:<br />
A ∪ B = {1,2,3,4,5} (1.12)<br />
A ∪C = {1,2,3,4,5,☺,♫} (1.13)<br />
A ∩ B = {1,2,3} (1.14)<br />
A ∩C = {3,4,5} (1.15)<br />
A \ B = {4,5} (1.16)<br />
A \C = {1,2} (1.17)<br />
A × B = {(1,1),(1,2),(1,3),(2,1),(2,2),...,(5,3)} (1.18)<br />
<br />
1.2 Matematisk logik<br />
Logik är matematikens språk och mängdläran kan anses vara en del av den matematiska logiken.<br />
Vi kommer inte att ge några formella definitioner av logiken utan sammanfattar istället den<br />
2 “omm” = “om och endast om”.
1.2 Matematisk logik 13<br />
grundläggande notationen: ¬ (negation), ∧ (konjunktion — och), ∨ (disjunktion — eller), ⇒<br />
(implikation) och ⇔ (ekvivalens). Vi ser på dessa symboler som mer precisa och kompakta<br />
skrivsätt för motsvarande uttryck på svenska språket.<br />
De logiska operatorerna ¬, ∧, ∨, ⇒ och ⇔ opererar på logiska utsagor. En logisk utsaga<br />
är ett uttryck som kan vara antingen sant (T) eller falskt (F), aldrig båda. Exempel på sådana<br />
uttryck är:<br />
P = Solen är en stjärna. (1.19)<br />
Q = (1 + 1 = 2) (1.20)<br />
R = (5 ∈ {1,2,3}) (1.21)<br />
De första två utsagorna är sanna (har värdet T) och den tredje utsagan är falsk (har värdet<br />
F). Notera att inte alla uttryck är utsagor. Exempelvis är 1 + 1 ett uttryck men inte en utsaga.<br />
(Uttrycket har värdet 2, inte sant eller falskt.) Notera också att ett uttryck kan se skenbart logiskt<br />
ut men ändå inte vara en giltig logisk utsaga. Exempelvis är<br />
0<br />
0 = 1 (1.22)<br />
inte en logisk utsaga eftersom division med noll inte är väldefinierat.<br />
De fem grundläggande logiska operatorerna ¬, ∧, ∨, ⇒ och ⇔ kombineras med utsagor<br />
för att bilda nya utsagor (uttryck som har värdet T eller F). Den första operatorn ¬ är en unär<br />
operator, vilket innebär att den opererar på en enda utsaga (operand). Om P är en utsaga betyder<br />
¬P detsamma som “icke P”, det vill säga den logiska motsatsen. (“Solen är inte en stjärna.”)<br />
De övriga fyra logiska operatorerna är binära och opererar på två utsagor (operander). Om P<br />
och Q är utsagor så betyder P ∧ Q detsamma som “P och Q” (att både P och Q är sanna); P ∨ Q<br />
betyder detsamma som “P eller Q” (att någon eller bådadera av P och Q är sanna); P ⇒ Q<br />
betyder detsamma som “P implicerar Q” (att Q måste vara sann om P är sann); och P ⇔ Q<br />
betyder detsamma som “P är ekvivalent med Q” (att P och Q alltid har samma sanningsvärde).<br />
Vi inför också symbolen för uteslutande eller; P Q är sann om och endast om exakt en av<br />
utsagorna P och Q är sanna.<br />
Eftersom logiska utsagor måste vara antingen sanna (T) eller falska (F) kan vi definiera<br />
de logiska operatorerna fullständigt genom att räkna upp alla tänkbara värden som de kan ta<br />
i en tabell, vilket vi gör i följande definition. Att på motsvarande sätt försöka skriva upp alla<br />
värden som x + y (operatorn +) kan ta om x och y är reella tal skulle generera en betydligt längre<br />
tabell. . .<br />
Definition 1.4 — Logiska operatorer. Låt P och Q vara logiska utsagor. Då definieras de<br />
fem grundläggande logiska operatorerna enligt följande sanningstabeller:<br />
¬ P<br />
P ∧ Q<br />
P ∨ Q<br />
P ⇒ Q<br />
P ⇔ Q<br />
F T<br />
T F<br />
T T T<br />
T F F<br />
F F T<br />
F F F<br />
T T T<br />
T T F<br />
F T T<br />
F F F<br />
T T T<br />
T F F<br />
F T T<br />
F T F<br />
T T T<br />
T F F<br />
F F T<br />
F T F<br />
Sanningstabellerna utläses så att om exempelvis P är sann och Q falsk, så är ¬P falsk, ¬Q<br />
sann, P ∧ Q falsk, P ∨ Q sann, P ⇒ Q falsk och P ⇔ Q falsk. Sanningstabellerna är intuitiva och<br />
behöver inte memoreras, förutom möjligtvis P ⇒ Q i fallet när P är falsk då implikationen alltid<br />
är sann, oavsett sanningsvärdet för Q.<br />
Vi kommer senare i boken att bevisa ett stort antal satser. En matematisk sats är en logisk<br />
utsaga och ett bevis är en serie logiska slutledningar som visar att utsagan (satsen) är sann. Vi
14 Kapitel 1. Reella tal<br />
kommer då att ha användning för ett antal grundläggande regler för logisk algebra och slutledning.<br />
Vi presenterar och bevisar några viktiga sådana regler som vår första sats.<br />
Sats 1.1 — Logisk algebra. Låt P, Q och R vara logiska utsagor (sanna eller falska). Då är<br />
följande utsagor sanna:<br />
P ∧ Q ⇔ Q ∧ P P ∨ Q ⇔ Q ∨ P (kommutativa lagar)<br />
(P ∧ Q) ∧ R ⇔ P ∧ (Q ∧ R) (P ∨ Q) ∨ R ⇔ P ∨ (Q ∨ R) (associativa lagar)<br />
P ∧ (Q ∨ R) ⇔ (P ∧ Q) ∨ (P ∧ R) P ∨ (Q ∧ R) ⇔ (P ∨ Q) ∧ (P ∨ R) (distributiva lagar)<br />
¬(P ∧ Q) ⇔ ¬P ∨ ¬Q ¬(P ∨ Q) ⇔ ¬P ∧ ¬Q (De Morgans lagar)<br />
Bevis. Vi bevisar den första av De Morgans lagar och lämnar de övriga utsagorna som övningsuppgifter.<br />
Vi sätter upp en sanningstabell och för in alla möjliga värden på utsagorna P och Q.<br />
Vardera av dessa kan vara antingen sanna eller falska:<br />
¬ (P ∧ Q) ⇔ ¬ P ∨ ¬ Q<br />
T T T T<br />
T F T F<br />
F T F T<br />
F F F F<br />
Vi använder därefter definitionerna av de logiska operatorerna och fyller i sanningsvärdet för alla<br />
delutsagor (inifrån och ut):<br />
¬ (P ∧ Q) ⇔ ¬ P ∨ ¬ Q<br />
F T T T T F T F F T<br />
T T F F T F T T T F<br />
T F F T T T F T F T<br />
T F F F T T F T T F<br />
Enligt sanningstabellen är utsagan (ekvivalensen ⇔) alltid sann (en tautologi), vilket bevisar<br />
satsen.<br />
<br />
Sats 1.2 — Logisk slutledning. Låt P och Q vara logiska utsagor (sanna eller falska). Då är<br />
följande utsagor sanna:<br />
((P ⇒ Q) ∧ P) ⇒ Q<br />
((P ⇒ Q) ∧ ¬Q) ⇒ ¬P<br />
(Modus ponens)<br />
(Modus tollens)<br />
Dessa båda utsagor är sanna oavsett sanningsvärdena för P och Q men vi kommer framförallt<br />
att använda dem då vi vet att P är sann respektive Q falsk:<br />
Modus ponens<br />
Modus tollens<br />
P ⇒ Q (P implicerar Q är sann) P ⇒ Q (P implicerar Q är sann)<br />
P (P är sann) ¬Q (Q är falsk)<br />
∴ Q (därför är Q sann) ∴ ¬P (därför är P falsk)<br />
Symbolen ∴ uttyds “därför”.<br />
Bevis. Se problem 1.2.
1.2 Matematisk logik 15<br />
Slutligen skall vi införa beteckningar för kvantorer, som används för att konstruera logiska<br />
utsagor om variabler, det vill säga logiska uttryck vars sanningsvärde beror av värdet på en eller<br />
flera variabler. Speciellt kommer vi att uttala oss om utsagor som gäller för antingen alla eller<br />
något (minst ett) möjligt värde på en variabel som i följande exempel:<br />
(a + b) 2 = a 2 + 2ab + b 2 , (1.23)<br />
x 2 = 2. (1.24)<br />
Sanningsvärdet för dessa båda utsagor beror (potentiellt) på vilka värden variablerna a, b och x<br />
har. Genom att komplettera utsagorna med “för alla” eller “för något” får vi kompletta logiska<br />
utsagor som är antingen sanna eller falska:<br />
(a + b) 2 = a 2 + 2ab + b 2 , för alla reella tal a och b, (1.25)<br />
x 2 = 2, för något reellt tal x. (1.26)<br />
Vi ger följande definitioner för kvantorerna ∀ (för alla) och ∃ (för något).<br />
Definition 1.5 — Logiska kvantorer. Låt X vara en mängd och låt P(x) vara en logisk utsaga<br />
vars sanningsvärde beror av variabeln x ∈ X.<br />
Uttrycket ∀x ∈ X : P(x) (“för alla x i X är P(x) sann”) definieras som<br />
x ∈ X ⇒ P(x); (1.27)<br />
det vill säga “om x är ett element i mängden X så är P(x) sann”.<br />
Uttrycket ∃x ∈ X : P(x) (“det finns minst ett x i mängden X sådant att P(x) är sann”) definieras<br />
som<br />
¬(∀x ∈ X : ¬P(x)); (1.28)<br />
det vill säga “P(x) är inte falsk för alla x i X”.<br />
Vi kommer också att använda symbolen ∃! som betyder samma sak som ∃ med tillägget att det<br />
bara finns ett möjligt värde på variabeln x. Satsen ∃!x ∈ X : P(x) utläses då: “det finns ett unikt<br />
(ett enda) x i mängden X sådant att P(x) är sann”.<br />
Vi inför också symbolen | som används för att definiera mängder. Notationen {x ∈ X |P(x)}<br />
utläses “mängden av alla x i X som uppfyller P(x)” eller “mängden av alla x i X för vilka P(x) är<br />
sann”.<br />
Exempel 1.2 — Logiska kvantorer och konstruktion av mängder. Med hjälp av de logiska<br />
kvantorerna kan vi formulera följande (sanna) utsagor:<br />
∀a,b ∈ R : (a + b) 2 = a 2 + 2ab + b 2 , (1.29)<br />
∃x ∈ R : x 2 = 2, (1.30)<br />
∃!x ∈ R : x 2 = 2 ∧ x > 0. (1.31)<br />
I dessa exempel har vi använt beteckningen R för mängden av reella tal som vi ännu inte har<br />
konstruerat. Vi kan också definiera mängder:<br />
{x ∈ R|x > 2}, (1.32)<br />
{a ∈ R|∀x ∈ R : a + x(1 − x) < 1} (1.33)<br />
Den första av dessa mängder kan enklare uttryckas som intervallet (2,∞) och den andra mängden<br />
kan uttryckas som intervallet (−∞, 3 /4).
16 Kapitel 1. Reella tal<br />
∈<br />
⊆<br />
⊂<br />
Mängdrelationer<br />
tillhör<br />
är delmängd av<br />
är strikt delmängd av<br />
Logik<br />
¬ icke<br />
∧ och (konjunktion)<br />
∨ eller (disjunktion)<br />
⇒ implicerar<br />
⇔ är ekvivalent med<br />
uteslutande eller<br />
Mängdoperationer<br />
∪ union<br />
∩ snitt<br />
\ differens<br />
× produkt<br />
Kvantorer<br />
∀ för alla<br />
∃ existerar<br />
∃! existerar unikt<br />
Tabell 1.1: Liten matematisk ordlista.<br />
Vi har nu infört all den grundläggande notation vi kommer att använda för att uttrycka<br />
matematik i resten av boken. Notationen sammanfattas i tabell 1.1. Vid en första anblick kan<br />
kanske mängden av nya definitioner och symboler kännas skrämmande, men betänk då att (i)<br />
man vänjer sig snabbt och (ii) listan av symboler vi redan nu har träffat på är relativt komplett; vi<br />
kommer inte att införa många fler symboler i senare kapitel.<br />
1.3 Rationella tal<br />
Vår huvuduppgift i det här kapitlet är att konstruera de reella talen R som är grunden för den<br />
matematiska analysen. Vår utgångspunkt är de rationella talen Q, det vill säga alla tal x som kan<br />
skrivas på formen x = p/q där p och q är heltal och q ≠ 0:<br />
Q = {p/q| p,q ∈ Z, q ≠ 0} (de rationella talen) (1.34)<br />
Vi erinrar oss också de naturliga talen N och de hela talen Z som kan ses som delmängder av de<br />
rationella (och de reella) talen:<br />
N = {0,1,2,3,...} (de naturliga talen 3 ) (1.35)<br />
Z = {0,1,−1,2,−2,3,−3,...} (de hela talen) (1.36)<br />
Vi kommer inte att ge någon formell definition av dessa talmängder men vi erinrar oss om att N,<br />
Z och Q har de välkända algebraiska 4 operationerna addition (x + y) och multiplikation (xy). De<br />
rationella talen har följande viktiga och välkända algebraiska egenskaper (räkneregler).<br />
3 De naturliga talen definieras ibland med, ibland utan, talet 0. Vi väljer här att låta 0 ∈ N och betecknar de positiva<br />
hela talen med Z + .<br />
4 Algebra är läran om räkning med symboler.
1.3 Rationella tal 17<br />
Sats 1.3 — Algebraiska egenskaper för Q. Låt x,y,z ∈ Q. Då gäller följande algebraiska<br />
lagar:<br />
x + y ∈ Q<br />
xy ∈ Q<br />
x + y = y + x<br />
xy = yx<br />
(sluten under addition)<br />
(sluten under multiplikation)<br />
(kommutativ lag)<br />
(kommutativ lag)<br />
(x + y) + z = x + (y + z) (associativ lag)<br />
(xy)z = x(yz)<br />
x(y + z) = xy + xz<br />
x + 0 = x<br />
1x = x<br />
∃−x ∈ R : x + (−x) = 0<br />
x ≠ 0 ⇒ ∃x −1 ∈ R : xx −1 = 1,<br />
(associativ lag)<br />
(distributiv lag)<br />
(additiv identitet)<br />
(multiplikativ identitet)<br />
(existens av additiv invers)<br />
(existens av multiplikativ invers)<br />
Operationerna subtraktion (x − y) och division (x/y) definieras utifrån existensen av additiv<br />
respektive multiplikativ invers. Talet −y är det rationella tal som uppfyller att y + (−y) = 0 och<br />
vi kan därefter definiera x − y = x + (−y). På samma sätt kan vi, om y ≠ 0 definiera x/y = xy −1<br />
där y −1 är det rationella tal som uppfyller att yy −1 = 1.<br />
Notera att de naturliga talen N och de hela talen Z saknar några av dessa egenskaper. 5<br />
Speciellt saknar de hela talen Z multiplikativ invers; x = 3 ∈ Z men det finns inget tal x −1 ∈ Z<br />
som uppfyller xx −1 = 1. Talet x −1 = 1/3 måste istället definieras som ett rationellt tal. De<br />
naturliga talen N saknar också additiv invers; x = 3 ∈ N men det finns inget tal −x ∈ N som<br />
uppfyller x + (−x) = 0. Talet −x = −3 måste istället definieras som ett heltal. Notera också att<br />
de naturliga talen och de hela talen kan anses vara delmängder av Q; varje tal x ∈ N eller x ∈ Z<br />
kan skrivas x/1 ∈ Q. Vi har alltså N ⊂ Z ⊂ Q.<br />
Vi konstaterar också att de rationella talen har följande välkända ordningsegenskaper. Dessa<br />
egenskaper, liksom de algebraiska, kan relativt enkelt visas från motsvarande egenskaper för de<br />
naturliga talen.<br />
Sats 1.4 — Ordningsegenskaper för Q. Låt x,y,z ∈ Q. Då gäller följande ordningslagar:<br />
x = y x < y x > y<br />
x < y ⇔ y > x<br />
x < y ∧ y < z ⇒ x < z<br />
x < y ⇒ x + z < y + z<br />
x < y ∧ z > 0 ⇒ xz < yz<br />
(trikotomi)<br />
(antisymmetri)<br />
(transitivitet)<br />
(addition bevarar ordning)<br />
(positiv multiplikation bevarar ordning)<br />
Liksom de hela talen kan rationella tal vara positiva och negativa. Absolutbeloppet av ett rationellt<br />
tal definieras som talets storlek (avstånd till x = 0) utan tecken.<br />
5 De egenskaper som listas i sats 1.3 gör de rationella talen Q till en så kallad kropp (engelska field). De hela talen<br />
Z — i avsaknad av multiplikativ invers — är inte en kropp men däremot en ring medan de naturliga talen N — i<br />
avsaknad också av en additiv invers — är en semiring.
18 Kapitel 1. Reella tal<br />
Definition 1.6 — Absolutbelopp. Absolutbeloppet |x| av ett rationellt tal x är<br />
{ x, x ≥ 0,<br />
|x| =<br />
−x, x < 0.<br />
(1.37)<br />
För absolutbeloppet gäller den mycket viktiga triangelolikheten.<br />
Sats 1.5 — Triangelolikheterna. Låt x,y ∈ Q. Då gäller följande olikheter:<br />
|x ± y| |x| + |y| (triangelolikheten)<br />
||x| − |y|| |x ± y|<br />
(omvända triangelolikheten)<br />
Bevis. Se problem 1.3.<br />
<br />
De rationella talen räcker långt, men inte till allt. Speciellt uppstår en del märkliga situationer<br />
inom geometrin. Vad är till exempel längden av diagonalen på en kvadrat med sidlängd 1? Vad<br />
är förhållandet mellan omkretsen och diametern av en cirkel? Svaren är som bekant √ 2 och π.<br />
Båda dessa tal är irrationella, det vill säga √ 2 /∈ Q och π /∈ Q. Vi visar först att √ 2 inte är ett<br />
rationellt tal och återkommer i ett senare kapitel (när vi har definierat det reella talet π) till ett<br />
bevis för att π /∈ Q.<br />
Sats 1.6 — √ 2 är inte ett rationellt tal. Det finns inget tal x ∈ Q som uppfyller x 2 = 2.<br />
Bevis. Vi bevisar att det inte finns något x /∈ Q som löser x 2 = 2 genom att först anta att x ∈ Q<br />
och x 2 = 2. Detta leder till en motsägelse, vilket visar att antagandet är falskt, det vill säga<br />
¬(x ∈ Q ∧ x 2 = 2).<br />
Antag att x 2 = 2 och att x = p/q ∈ Q för p,q ∈ Z. Förkorta bråket p/q så långt som möjligt<br />
så att x = p ′ /q ′ för p ′ ,q ′ ∈ Z där p ′ och q ′ saknar gemensamma faktorer. Vi har då<br />
x 2 = 2 (1.38)<br />
(p ′ /q ′ ) 2 = 2 (1.39)<br />
(p ′ ) 2 = 2(q ′ ) 2 . (1.40)<br />
Därmed måste (p ′ ) 2 vara ett jämnt tal, varför också p ′ måste vara ett jämnt tal (ty kvadraten av<br />
ett udda tal är udda). Vi kan då skriva p ′ = 2k för något k ∈ Z. Vi har då<br />
(2k) 2 = 2(q ′ ) 2 (1.41)<br />
4k 2 = 2(q ′ ) 2 (1.42)<br />
2k 2 = (q ′ ) 2 . (1.43)<br />
Därmed måste (q ′ ) 2 vara ett jämnt tal, varför också q ′ måste vara ett jämnt tal. Både p ′ och q ′ är<br />
alltså jämna tal, vilket motsäger att p ′ och q ′ saknar gemensamma faktorer (de innehåller ju båda<br />
faktorn 2). Detta är en motsägelse 6 (), vilket bevisar satsen.<br />
<br />
Satsen bevisar att det finns “hål” i det rationella talsystemet; Q saknar viktiga tal som √ 2 och<br />
π. I själva verket finns det oändligt många hål i Q. Därför behöver vi utvidga Q och fylla igen<br />
hålen. Resultatet av vår utvidgning kommer att vara mängden R som består av just Q med hålen<br />
ifyllda.<br />
6 Denna bevisteknik kallas ibland reductio ad absurdum; motsatsen till det som skall bevisas reduceras till en<br />
uppenbarligen falsk utsaga.
1.4 Talföljder och konvergens 19<br />
Innan vi gör detta noterar vi att vi kan beräkna godtyckligt bra approximationer av √ 2. I<br />
kapitel 0 såg vi ett exempel på en algoritm som beräknar allt noggrannare approximationer av<br />
√<br />
2. Samma sak gäller för alla reella tal; varje reellt tal kan approximeras godtyckligt väl med<br />
rationella tal. Vi skulle kunna stoppa här och säga att det finns tal som är irrationella och dem<br />
kan vi endast approximera. Exempelvis skulle vi kunna säga att √ 2 representeras av algoritmen<br />
från exempel 0.2. Detta är i princip vad vi kommer att göra — vi kommer att definiera reella tal<br />
med utgångspunkt i approximerande talföljder — men vi kommer att formalisera de reella talen<br />
så att vi enkelt kan utföra kalkyler med dem, såsom<br />
x = √ 2 (1.44)<br />
x 2 = 2. (1.45)<br />
1.4 Talföljder och konvergens<br />
Talföljder spelar en central roll i den matematiska analysen och vi kommer att använda dem för<br />
att definiera de reella talen. De beräkningsalgoritmer som vi i senare kapitel skall studera kommer<br />
också att generera talföljder, precis som de algoritmer vi såg exempel på i kapitel 0.<br />
Definition 1.7 — Talföljd. En talföljd (x n ) ∞ n=0 är en regel7 som för varje naturligt tal n =<br />
0,1,2,3,... bestämmer ett entydigt värde x n i en mängd X.<br />
Följande exempel visar olika sätt att generera talföljder.<br />
Exempel 1.3 — Jämna tal. Regeln x n = 2n genererar en naturlig talföljd, nämligen de jämna<br />
talen 0,2,4,6,...<br />
<br />
Exempel 1.4 — Udda tal. Regeln x n = 2n + 1 genererar en naturlig talföljd, nämligen de<br />
udda talen 1,3,5,7,...<br />
<br />
Exempel 1.5 — Fibonaccital. Regeln x 0 = x 1 = 1 och x n = x n−1 + x n−2 för n ≥ 2 genererar<br />
en naturlig talföljd, nämligen Fibonaccitalen 1,1,2,3,5,8,13,21,...<br />
<br />
Exempel 1.6 — Gyllene snittet. Låt (x n ) ∞ n=0 vara talföljden från föregående exempel (Fibonaccitalen).<br />
Regeln y n = x n+1 /x n genererar då en rationell talföljd, nämligen<br />
y 0 = 1<br />
y 1 = 2 = 2<br />
y 2 = 3/2 = 1.5<br />
y 3 = 5/3 ≈ 1.6666666666667<br />
y 4 = 8/5 = 1.6<br />
y 5 = 13/8 = 1.625<br />
y 6 = 21/13 ≈ 1.6153846153846<br />
y 7 = 34/21 ≈ 1.6190476190476<br />
y 8 = 55/34 ≈ 1.6176470588235<br />
y 9 = 89/55 ≈ 1.6181818181818<br />
y 10 = 144/89 ≈ 1.6179775280899.<br />
Talföljden närmar sig (konvergerar mot) talet φ = ( √ 5+1)/2, det gyllene snittet. Vi återkommer<br />
till denna talföljd i problem 1.7.<br />
<br />
Exempel 1.7 — Harmonisk talföljd. Regeln x n = 1/(n + 1) genererar en rationell talföljd,<br />
nämligen den harmoniska talföljden 1, 1 /2, 1 /3, 1 /4, 1 /5,... Talföljden närmar sig (konvergerar mot)<br />
0. <br />
7 När vi i nästa kapitel har definierat funktionsbegreppet kommer vi att kunna säga att en talföljd är en funktion<br />
f : N → X.
20 Kapitel 1. Reella tal<br />
Exempel 1.8 — Roten ur två. Regeln x 0 = 1 och x n = x n−1 − (xn−1 2 − 2)/2 genererar en<br />
rationell talföljd, nämligen<br />
x 0 = 1<br />
x 1 = 3/2 = 1.5<br />
x 2 = 11/8 = 1.375<br />
x 3 = 183/128 = 1.4296875<br />
x 4 = 46127/32768 ≈ 1.4076843261719<br />
x 5 = 3042762591/2147483648 ≈ 1.4168967450969<br />
x 6 = 13033533669502966463/9223372036854775808 ≈ 1.4130985519638.<br />
Talföljden närmar sig (konvergerar mot) √ 2. Precis som i exempel 0.2 från kapitel 0 är detta<br />
ett exempel på en fixpunktsiteration för lösning av ekvationen x 2 = 2, men en betydligt mindre<br />
effektiv sådan. Vi återkommer till denna talföljd i datorövning 1.10.<br />
<br />
Några av talföljderna från dessa exempel utmärker sig från de andra. Talföljderna från<br />
exempel 1.6, 1.7 och 1.8 skiljer sig från de första tre exemplen på två viktiga punkter (förutom<br />
att de är rationella).<br />
För det första ser talen ut att närma sig något. I fallet med den harmoniska talföljden som<br />
ges av x n = 1/(n+1) är det lätt att se att talen x n närmar sig 0. I de andra två fallen är det svårare<br />
att se att talen närmar sig just ( √ 5 + 1)/2 och √ 2 men med hjälp av en miniräknare kan vi<br />
misstänka att så är fallet och med papper och penna faktiskt också bevisa att talföljderna måste<br />
konvergera mot just dessa tal (se problem 1.7 och 1.8).<br />
För det andra ser talen ut att stabiliseras; ju större n blir, desto mer lika blir talen. Denna<br />
aspekt, att talföljderna stabiliseras, är intimt förknippad med den första aspekten, att talföljderna<br />
närmar sig något. Intuitivt verkar det rimligt att om talföljderna stabiliseras, så måste de också<br />
närma sig något, och omvänt, om talföljderna närmar sig något, så måste de också stabiliseras.<br />
Vi kommer strax att formulera detta som en sats — att en talföljd stabiliseras om och endast om<br />
den konvergerar mot något — men först måste vi precisera exakt vad vi menar med att närma sig<br />
och att stabiliseras. Vi börjar med att definiera begreppet konvergent talföljd.<br />
Definition 1.8 — Konvergent rationell talföljd. En konvergent rationell talföljd med gränsvärde<br />
¯x ∈ Q är en rationell talföljd (x n ) ∞ n=0 sådan att<br />
∀ε ∈ Q + ∃N ∈ N : n ≥ N ⇒ |x n − ¯x| < ε. (1.46)<br />
Med andra ord för varje (litet) rationellt tal ε > 0 finns det ett (stort) naturligt tal N sådant att<br />
avståndet |x n − ¯x| mellan x n och ¯x är mindre än ε om n är större än eller lika med N.<br />
Vi säger då att talföljden (x n ) ∞ n=0 konvergerar mot gränsvärdet ¯x och skriver<br />
alternativt<br />
lim x n = ¯x, (1.47)<br />
n→∞<br />
x n → ¯x då n → ∞. (1.48)<br />
Denna definition försöker fånga vad det betyder att en talföljd närmar sig något och säger att<br />
avståndet |x n − ¯x| kan göras hur litet som helst (ε ∈ Q + , ett positivt rationellt tal) om bara n är<br />
tillräckligt stort. Vi kan tänka på denna definition som ett vattentätt argument som måste hålla i<br />
en rättegång där en skicklig åklagare anklagar en talföljd för att inte vara konvergent (en förseelse<br />
som normalt leder till stränga påföljder). Försvararen inleder då med att hävda att talföljden<br />
faktiskt är konvergent eftersom skillnaden |x n − ¯x| kan göras hur liten som helst. Åklagaren tror
1.4 Talföljder och konvergens 21<br />
naturligtvis inte på detta och begär att skillnaden skall göras mindre än ε = 10 −6 . Försvararen<br />
måste då konkret kunna svara med ett stort tal N sådant att skillnaden |x n − ¯x| är mindre än 10 −6<br />
för alla n ≥ N. Beroende på vilken talföljd man har att göra med blir svaret annorlunda, men<br />
kanske svaret blir att så länge n ≥ N = 1000 så är faktiskt |x n − ¯x| < ε = 10 −6 . Åklagaren låter<br />
sig inte nöjas utan begär helt fräckt att skillnaden skall göras mindre än 10 −100 ! Återigen måste<br />
försvararen kunna ange ett tal N sådant att skillnaden garanterat är mindre än 10 −100 för n ≥ N.<br />
Om försvararen alltid kan ge svar på tal, oavsett vilket ε som åklagaren väljer, så är det bevisat<br />
att talföljden är konvergent; för varje litet ε (men större än noll!) måste försvararen kunna säga<br />
ett N som garanterar att |x n − ¯x| < ε för alla n ≥ N. Och detta är exakt vad definition 1.8 säger:<br />
∀ε > 0, ε ∈ Q ∃N ∈ N : n ≥ N ⇒ |x n − ¯x| < ε. (1.49)<br />
Notera att talföljden mycket väl kan vara konvergent, även om försvararen inte lyckas bevisa det<br />
i en rättegång. Det är vår uppgift som matematiker (försvarare) att konstruera vattentäta bevis<br />
men det är inte alltid vi lyckas. I nästa exempel ges ett vattentätt bevis för att den harmoniska<br />
talföljden, x n = 1/(n + 1), från exempel 1.7 är konvergent.<br />
Exempel 1.9 — Den harmoniska talföljden är konvergent. Den harmoniska talföljden<br />
1, 1 /2, 1 /3, 1 /4, 1 /5,... definieras av x n = 1/(n+1). För att kunna hävda att den är konvergent måste<br />
vi för varje givet (rationellt) ε > 0 kunna bestämma ett N sådant att |x n − ¯x| < ε om n ≥ N. Till<br />
att börja med konstaterar vi att gränsvärdet ¯x bör vara 0. Vår uppgift är nu att bevisa det utifrån<br />
definitionen 1.8. Vi gör detta genom att bestämma en formel för N som gör att vi enkelt kan<br />
räkna ut N för varje givet ε. Vi noterar först att avståndet mellan x n och ¯x ges av<br />
|x n − ¯x| = |x n − 0| = |x n | = |1/(n + 1)| = 1/(n + 1). (1.50)<br />
Vi vill att denna skillnad skall vara mindre än ε och sätter därför upp och löser olikheten:<br />
1/(n + 1) < ε (1.51)<br />
1/ε < n + 1 (1.52)<br />
n + 1 > 1/ε (1.53)<br />
n > 1/ε − 1. (1.54)<br />
Vi måste alltså bestämma ett naturligt tal N sådant att denna olikhet är uppfylld så snart n ≥ N.<br />
Eftersom 1/ε inte nödvändigtvis är ett naturligt tal (om till exempel ε = 2 /3) och för att olikheten<br />
måste gälla då n ≥ N väljer vi<br />
N = ⌈1/ε⌉ − 1 + 1 = ⌈1/ε⌉. (1.55)<br />
Beteckningen ⌈x⌉ betyder avrundning uppåt till närmaste större heltal (det minsta heltal som inte<br />
är mindre än x). Motsvarande notation för avrundning nedåt är ⌊x⌋. Givet ett tal ε > 0 kan vi då<br />
garantera att |x n − ¯x| < ε så länge n ≥ N = ⌈1/ε⌉. Vi har därför garanterat svar på tal om någon<br />
kommer och begär att |x n − ¯x| skall göras mindre än ett visst ε > 0, hur litet detta ε än må vara.<br />
Speciellt vet vi att |x n − ¯x| < 10 −100 om n ≥ N = ⌈1/10 −100 ⌉ = 10 100 .<br />
För att dubbelkolla vår kalkyl ser vi hur nära x n är ¯x = 0 om n ≥ N = ⌈1/ε⌉. Vi får<br />
|x n − ¯x| = 1/(n + 1) ≤ 1/(N + 1) < 1/N = 1<br />
⌈1/ε⌉ ≤ 1<br />
1/ε<br />
= ε, (1.56)<br />
det vill säga |x n − ¯x| < ε, vilket känns betryggande.
22 Kapitel 1. Reella tal<br />
Begreppet konvergens kan också illustreras grafiskt. I figur 1.1 illustreras talföljden som<br />
genereras av formeln<br />
x n = (−1) n /(n + 1). (1.57)<br />
Denna talföljd liknar den harmoniska talföljden från exempel 1.7 med skillnaden att talen växlar<br />
tecken. Figur 1.1 visar att talföljden närmar sig gränsvärdet 0 och att talföljden håller sig innanför<br />
den “kanal” som definieras av x = ±ε = ±0.1 om n ≥ N = ⌈1/ε⌉ = 10.<br />
Figur 1.1: Talföljden definierad i ekvation (1.57) konvergerar mot ¯x = 0. För n ≥ N = 10 gäller<br />
att |x n − ¯x| < ε = 1/10.<br />
Vi noterade tidigare att talföljderna från exempel 1.6, 1.7 och 1.8 har två viktiga egenskaper:<br />
de ser alla ut att närma sig ett visst tal, och de ser alla ut att stabiliseras då n växer. Den första<br />
egenskapen, att närma sig något, har vi definierat som konvergens. De tre talföljderna konvergerar<br />
mot ( √ 5 + 1)/2, 0 respektive √ 2. Detta kan vi strikt talat ännu inte uttala oss om eftersom vi<br />
varken har definierat √ 2, √ 5 eller konvergens för reella tal, men vi har åtminstone bevisat att<br />
den harmoniska talföljden konvergerar mot det rationella talet 0. Den andra egenskapen, att<br />
stabiliseras, innebär att istället för att närma sig något, så närmar sig talen varandra. Talföljder<br />
med den egenskapen kallas Cauchy-följder och vi ger följande definition som påminner mycket<br />
om definitionen av konvergent talföljd.<br />
Definition 1.9 — Rationell Cauchy-följd. En rationell Cauchy-följd är en rationell talföljd<br />
(x n ) ∞ n=0 sådan att<br />
∀ε ∈ Q + ∃N ∈ N : m,n ≥ N ⇒ |x m − x n | < ε. (1.58)<br />
Med andra ord för varje (litet) rationellt tal ε > 0 finns det ett (stort) tal N sådant att avståndet<br />
|x m − x n | mellan x m och x n är mindre än ε om både m och n är större än eller lika med N.
1.4 Talföljder och konvergens 23<br />
Vi ser att begreppet Cauchy-följd definieras på nästan samma sätt som begreppet konvergent<br />
talföljd med den skillnaden att istället för att närma sig ett visst tal, så närmar sig talen varandra.<br />
På samma sätt som tidigare gäller det att för varje ε > 0 säga precis vilket N som gör att avståndet<br />
|x m − x n | blir mindre än ε så snart m ≥ N och n ≥ N. Och på precis samma sätt gäller det att<br />
kunna bevisa detta med ett vattentätt argument. I följande exempel ges ett bevis för att den<br />
harmoniska talföljden som vi tidigare visat är konvergent också är en Cauchy-följd (vilket vi<br />
snart skall se att den måste vara).<br />
Exempel 1.10 — Den harmoniska talföljden är en Cauchy-följd. Den harmoniska talföljden<br />
definieras som tidigare av x n = 1/(n + 1). För att visa att den är en Cauchy-följd betraktar vi<br />
avståndet |x m − x n | som alltså måste göras litet:<br />
|x m − x n | = |1/(m + 1) − 1/(n + 1)| 1/(m + 1) + 1/(n + 1) < 1/m + 1/n (1.59)<br />
≤ 1/N + 1/N = 2/N < ε, (1.60)<br />
förutsatt att m,n ≥ N och 2/N < ε, det vill säga<br />
N > 2/ε. (1.61)<br />
Detta villkor är garanterat uppfyllt om vi väljer<br />
N = ⌈2/ε⌉ + 1. (1.62)<br />
För alla ε > 0 gäller alltså att om m,n ≥ N = ⌈2/ε⌉ + 1 så är |x m − x n | < ε, vilket visar att<br />
(x n ) ∞ n=0 är en Cauchy-följd. <br />
Vi återvänder nu till de tre talföljderna i exempel 1.6 (gyllene snittet), 1.7 (harmonisk talföljd)<br />
och 1.8 (Roten ur två). Vi har sett att den harmoniska talföljden är såväl konvergent som Cauchy,<br />
men vad gäller för de andra två talföljderna? Vi kommer i kapitel 6 att kunna visa att dessa<br />
båda talföljder faktiskt är Cauchy-följder. Däremot är de inte konvergenta enligt definition 1.9<br />
eftersom deras potentiella gränsvärden φ = ( √ 5 + 1)/2 och √ 2 inte är rationella tal. Vi har ju<br />
tidigare visat att √ 2 inte är ett rationellt tal och på liknande sätt kan man visa att √ 5 inte är ett<br />
rationellt tal. Slutsatsen är att en rationell Cauchy-följd inte behöver vara konvergent (mot ett<br />
rationellt tal). Däremot måste en konvergent rationell talföljd alltid vara en Cauchy-följd, vilket<br />
följande sats visar.<br />
Sats 1.7 — En konvergent rationell talföljd är alltid en rationell Cauchy-följd. Låt<br />
(x n ) ∞ n=0 vara en rationell talföljd. Om (x n) ∞ n=0 är konvergent så är den också en Cauchy-följd.<br />
Bevis. Vi skall i detta bevis använda oss av två knep som vi kommer att ha stor nytta av i många<br />
bevis och övningar. Det första är att “lägga till och dra ifrån” och det andra är triangelolikheten<br />
som vi redan har träffat på.<br />
Vi vet att (x n ) ∞ n=0 är konvergent, vilket innebär att det finns ett gränsvärde ¯x sådant att<br />
skillnaden |x n − ¯x| kan göras godtyckligt liten, så länge n görs tillräckligt stort. Vi vill nu visa att<br />
skillnaden |x m − x n | också kan göras godtyckligt liten. Vi argumenterar för detta genom att säga<br />
att eftersom både x m och x n ligger mycket nära ¯x, så måste de också ligga mycket nära varandra.<br />
Rent konkret uttrycker vi detta genom att lägga till och dra ifrån ¯x och använda triangelolikheten:<br />
|x m − x n | = |x m − ¯x + ¯x − x n | |x m − ¯x| + | ¯x − x n |. (1.63)<br />
Givet ε > 0 väljer vi nu N sådant att |x m − ¯x| < ε/2 och |x n − ¯x| < ε/2 om n ≥ N för något visst<br />
N ∈ N. (Talföljden är konvergent så vi kan göra skillnaden hur liten vi vill, till exempel mindre<br />
än ε/2.) Vi får då<br />
|x m − x n | |x m − ¯x| + | ¯x − x n | < ε/2 + ε/2 = ε, (1.64)
24 Kapitel 1. Reella tal<br />
under förutsättning att m,n ≥ N, vilket visar att (x n ) ∞ n=0 är en Cauchy-följd.<br />
<br />
En konvergent rationell talföljd måste alltså alltid vara en Cauchy-följd; en talföljd kan inte<br />
närma sig något utan att också stabiliseras. Däremot gäller inte det omvända, eftersom vi har sett<br />
exempel på talföljder som är Cauchy-följder men som inte, enligt vår definition, är konvergenta.<br />
Detta verkar vara en brist eftersom talföljderna faktiskt ser ut att närma sig något: ( √ 5 + 1)/2<br />
respektive √ 2. Bristen ligger hos de rationella talen Q. Som vi nämnt tidigare finns det hål i Q,<br />
vilket gör att talföljder kan konvergera just mot ett sådant hål. Man kan faktiskt med visst fog<br />
säga att det finns fler hål än det finns rationella tal, så det är inte så märkligt att hitta talföljder<br />
som konvergerar mot just ett sådant hål. När vi strax har definierat de reella talen och fyllt igen<br />
hålen kommer vi att ha korrigerat denna brist och visat att alla reella Cauchy-följder måste vara<br />
konvergenta. Innan dess skall vi visa en viktig egenskap för konvergenta talföljder.<br />
Sats 1.8 — En rationell talföljds gränsvärde är alltid unikt. Låt (x n ) ∞ n=0 vara en konvergent<br />
rationell talföljd. Då är dess gränsvärde unikt.<br />
Bevis. Vi behöver visa att om talföljden (x n ) ∞ n=0 konvergerar mot ¯x så kan den inte samtidigt<br />
konvergera mot ett annat tal ¯x ′ . Antag att så skulle vara fallet, det vill säga att x n → ¯x, x n → ¯x ′<br />
och ¯x ≠ ¯x ′ . För att visa att detta är omöjligt väljer vi ε = | ¯x − ¯x ′ |/2 > 0 och därefter N så stort att<br />
|x n − ¯x| < ε för n ≥ N och N ′ så stort att |x n − ¯x ′ | < ε för n ≥ N ′ . Vi betraktar skillnaden mellan<br />
¯x och ¯x ′ genom att lägga till och dra ifrån x n . För n ≥ max(N,N ′ ) har vi<br />
| ¯x− ¯x ′ | = | ¯x−x n +x n − ¯x ′ | | ¯x−x n |+|x n − ¯x ′ | < ε +ε = | ¯x− ¯x ′ |/2+| ¯x− ¯x ′ |/2 = | ¯x− ¯x ′ |. (1.65)<br />
Vi kommer då fram till slutsatsen att | ¯x − ¯x ′ | < | ¯x − ¯x ′ | och eftersom | ¯x − ¯x ′ | > 0 kan vi förkorta<br />
och får 1 < 1 (). Detta är en motsägelse, vilket bevisar satsen.<br />
<br />
1.5 Reella tal<br />
Vi har sett att rationella talföljder ibland ser ut att konvergera mot tal som inte är rationella;<br />
x = √ 2 är bevisligen inte ett rationellt tal men vi har trots det sett två exempel på algoritmer som<br />
producerar lösningar till ekvationen x 2 = 2 med godtycklig precision. Hur skall vi då definiera<br />
det svårfångade talet √ 2 och alla andra reella tal?<br />
Det är frestande att definiera de reella talen som de tal som kan approximeras godtyckligt<br />
väl med rationella tal, med andra ord som de tal som man kan närma sig godtyckligt väl med<br />
rationella talföljder. Men det finns en uppenbar brist med en sådan definition, nämligen den att vi<br />
inte har definierat vad ett tal är för något; vi kan inte definiera de reella talen som den delmängd<br />
R av mängden av alla tal T som kan approximeras godtyckligt väl av rationella tal eftersom<br />
mängden T inte är definierad.<br />
Vi måste istället definiera de reella talen som något konkret. Vi gör detta genom att identifiera<br />
de reella talen med de beräkningsalgoritmer (regler) som genererar dem, eller mer precist som de<br />
rationella Cauchy-följder som genereras av beräkningsalgoritmerna. 8 Talet √ 2 kan då definieras<br />
antingen som den rationella Cauchy-följd (x n ) ∞ n=0 som genereras av regeln x n = x n−1+2/x n−1<br />
2<br />
(exempel 0.2) eller som den rationella Cauchy-följd (y n ) ∞ n=0 som genereras av regeln y n =<br />
y n−1 − (y 2 n−1 − 2)/2 (exempel 1.8), eller som vilken som helst annan rationell Cauchy-följd som<br />
“konvergerar mot samma sak”. För att göra detta precist måste vi först definiera vad vi menar<br />
med att två Cauchy-följder konvergerar mot samma sak.<br />
8 Mer precist definierar detta inte de reella talen i vanlig mening, utan “endast” de så kallade beräkningsbara reella<br />
talen, see [Tur67].
1.5 Reella tal 25<br />
Definition 1.10 — Ekvivalenta Cauchy-följder. Två rationella Cauchy-följder (x n ) ∞ n=0 och<br />
(y n ) ∞ n=0 är ekvivalenta omm talföljden (z n) ∞ n=0 där z n = x n − y n konvergerar mot 0; det vill<br />
säga<br />
∀ε ∈ Q + ∃N ∈ N : n ≥ N ⇒ |x n − y n | < ε. (1.66)<br />
Vi skriver då (x n ) ∞ n=0 ∼ (y n) ∞ n=0 .<br />
Exempel 1.11 — Ekvivalenta Cauchy-följder. Talföljderna (x n ) ∞ n=0 och (y n) ∞ n=0 där x n =<br />
1 + 1/(n + 1) och y n = (n + 1)/(n + 2) är ekvivalenta, ty om z n = x n − y n gäller att<br />
z n = 1 + 1<br />
n + 1 − n + 1 (n + 1)(n + 2) + (n + 2) − (n + 1)2<br />
=<br />
n + 2 (n + 1)(n + 2)<br />
= n2 + 3n + 2 + n + 2 − n 2 − 2n − 1<br />
(n + 1)(n + 2)<br />
=<br />
(1.67)<br />
2n + 3<br />
→ 0, (1.68)<br />
(n + 1)(n + 2)<br />
då n → ∞. Skillnaden mellan talföljderna närmar sig noll, varför talföljderna har samma gränsvärde,<br />
nämligen det naturliga talet 1.<br />
<br />
Givet en rationell Cauchy-följd (x n ) ∞ n=0 låter vi [(x n) ∞ n=0 ] beteckna mängden (ekvivalensklassen)<br />
av alla rationella Cauchy-följder som är ekvivalenta med (x n ) ∞ n=0 . Med denna notation kan<br />
vi nu konkret definiera det reella talet √ 2:<br />
√<br />
2 = [(xn ) ∞ n=0], (1.69)<br />
där (x n ) ∞ n=0 är den rationella Cauchy-följd som genereras av algoritmen i exempel 0.2. Med<br />
andra ord är √ 2 ekvivalensklassen bestående av talföljden från exempel 0.2 och alla andra<br />
ekvivalenta talföljder (alla andra talföljder som “konvergerar mot samma sak”). Detta är ett sätt<br />
att uttrycka att √ 2 definieras av den rationella talföljden från exempel 0.2 men att man lika gärna<br />
kan definiera √ 2 som talföljden från exempel 1.8.<br />
Vi är nu redo att ge definitionen av de reella talen.<br />
Definition 1.11 — De reella talen R. De reella talen R är mängden av alla ekvivalensklasser<br />
av rationella Cauchy-följder.<br />
Ett reellt tal x ∈ R är alltså en ekvivalensklass av Cauchy-följder av rationella tal och kan<br />
representeras av vilken som helst av alla möjliga Cauchy-följder i ekvivalensklassen.<br />
Med denna definition på plats återstår det att visa att definitionen är meningsfull. Speciellt<br />
måste vi reda ut om och i så fall hur man kan räkna med reella tal. Vad är till exempel summan<br />
av två reella tal? Vi vill också att våra välbekanta talsystem N, Z och Q skall kunna inordnas<br />
som delmängder av R.<br />
Vi har definierat de reella talen R men vi måste också definiera de vanliga operationerna +<br />
(addition), − (subtraktion), · (multiplikation) och / (division) för reella tal.<br />
Definition 1.12 — Algebraiska operationer för de reella talen R. Låt x = [(x n ) ∞ n=0 ] och<br />
y = [(y n ) ∞ n=0 ] vara reella tal. Vi definierar då operationerna + (addition), − (subtraktion), ·<br />
(multiplikation) och / (division) enligt<br />
x + y = [(x n + y n ) ∞ n=0], (1.70)<br />
x − y = [(x n − y n ) ∞ n=0], (1.71)<br />
x · y = [(x n · y n ) ∞ n=0], (1.72)<br />
x/y = [(x n /ỹ n ) ∞ n=0], y ≠ 0, (ỹ n ) ∞ n=0 ∼ (y n ) ∞ n=0, ∀n : ỹ n ≠ 0. (1.73)
26 Kapitel 1. Reella tal<br />
Givet två reella tal x = [(x n ) ∞ n=0 ] och y = [(y n) ∞ n=0 ] kan vi alltså bilda summan z = x + y genom<br />
att beräkna summan av de båda talföljderna: z n = x n + y n . Det återstår att visa att denna summa<br />
faktiskt också är (representant för) ett reellt tal, det vill säga att (z n ) ∞ n=0 också är en Cauchyföljd.<br />
Sats 1.9 — De algebraiska operationerna för reella tal är väldefinierade. Låt x =<br />
[(x n ) ∞ n=0 ] och y = [(y n) ∞ n=0 ] vara reella tal. Då är x + y, x − y, x · y och x/y (y ≠ 0) också reella<br />
tal.<br />
Bevis. Vi visar att x + y är ett reellt tal och lämnar övriga operationer som övningsuppgifter.<br />
Operationen x/y kräver extra eftertanke eftersom vi vill undvika att y n = 0 i uttrycket x n /y n .<br />
Vi vill alltså visa att om (x n ) ∞ n=0 och (y n) ∞ n=0 är Cauchy-följder så är (x n + y n ) ∞ n=0 också en<br />
Cauchy-följd. Låt ε > 0 vara givet och låt z n = x n + y n , n = 0,1,2,.... Betrakta nu skillnaden<br />
z m − z n (som skall bli liten för stora m och n om (z n ) ∞ n=0 skall vara en Cauchy-följd):<br />
|z m − z n | = |(x m + y m ) − (x n + y n )| = |(x m − x n ) + (y m − y n )| |x m − x n | + |y m − y n |. (1.74)<br />
Eftersom (x n ) ∞ n=0 och (y n) ∞ n=0 båda är Cauchy-följder kan vi göra avstånden |x m − x n | och<br />
|y m −y n | godtyckligt små för stora m och n. Välj N ∈ N sådant att |x m −x n | < ε/2 och |y m −y n | <<br />
ε/2 för m,n ≥ N. Vi får då<br />
|z m − z n | |x m − x n | + |y m − y n | < ε/2 + ε/2 = ε. (1.75)<br />
Vi ser att |z m − z n | < ε om m,n ≥ N, vilket visar att (z n ) ∞ n=0 är en Cauchy-följd.<br />
<br />
Vi konstaterar alltså att vi kan addera, subtrahera, multiplicera och dividera reella tal (undantaget<br />
division med noll) genom att helt enkelt utföra motsvarande operationer på de talföljder (Cauchyföljder)<br />
som representerar de reella talen.<br />
Exempel 1.12 — √ 2 · √2<br />
= 2. Låt (x n ) ∞ n=0 vara den talföljd som genereras av algoritmen i<br />
exempel 0.2 och låt (y n ) ∞ n=0 vara den talföljd som genereras av algoritmen i exempel 1.8. Låt<br />
också x = [(x n ) ∞ n=0 ] och y = [(y n) ∞ n=0 ] vara motsvarande reella tal som representeras av dessa<br />
båda Cauchy-följder. 9 Bilda nu talföljden (z n ) ∞ n=0 definierad av<br />
z n = x n y n . (1.76)<br />
Resultatet är en talföljd som till synes närmar sig talet z = 2:<br />
x 0 = 1 y 0 = 1 z 0 = 1<br />
x 1 = 1.5 y 1 = 1.5 z 1 = 2.25<br />
x 2 ≈ 1.4166666666667 y 2 = 1.375 z 2 ≈ 1.9479166666667<br />
x 3 ≈ 1.4142156862745 y 3 = 1.4296875 z 3 ≈ 2.0218864889706<br />
x 4 ≈ 1.4142135623747 y 4 ≈ 1.4076843261719 z 4 ≈ 1.9907662656145<br />
x 5 ≈ 1.4142135623731 y 5 ≈ 1.4168967450969 z 5 ≈ 2.0037945933983<br />
x 6 ≈ 1.4142135623731 y 6 ≈ 1.4130985519638 z 6 ≈ 1.9984231371570<br />
I föregående exempel utgick vi från de två Cauchy-följderna (x n ) ∞ n=0 och (y n) ∞ n=0 som båda<br />
är representanter för det reella talet √ 2. Vi såg också att produkten av dessa båda talföljder<br />
ger en talföljd (z n ) ∞ n=0 som ser ut att konvergera mot talet 2 ∈ N ⊂ Q. Men vad är relationen<br />
mellan det naturliga talet 2 och det reella talet z = [(z n ) ∞ n=0 ]? Vi besvarar denna fråga genom<br />
9 Vi har ännu inte visat — men misstänker starkt — att dessa båda talföljder är Cauchy-följder. Vi återkommer till<br />
denna fråga i kapitel 6.
1.5 Reella tal 27<br />
att inkludera de rationella talen Q i de reella talen R. För varje rationellt tal X ∈ Q låter vi<br />
(x n ) ∞ n=0 vara den talföljd som definieras av x n = X för alla n. Denna talföljd är (uppenbarligen)<br />
en Cauchy-följd eftersom |x m − x n | = |X − X| = 0 < ε för alla m och n. Vi kan då definiera det<br />
reella talet x = [(X) ∞ n=0 ] och sätter definitionsmässigt x = X. Speciellt kan det rationella (och<br />
naturliga) talet 2 betraktas som ett reellt tal i form av (ekvivalensklassen för) talföljden 2,2,2,...<br />
Varje rationellt tal kan därför anses vara ett reellt tal. På liknande sätt inkluderade vi tidigare<br />
de hela talen Z i de rationella talen genom att identifiera varje heltal x ∈ Z med det rationella<br />
talet x/1. Vi har därför<br />
N ⊂ Z ⊂ Q ⊂ R, (1.77)<br />
vilket illustreras av diagrammet i figur 1.2.<br />
Figur 1.2: Talsystemen N ⊂ Z ⊂ Q ⊂ R.<br />
Vi sammanfattar de reella talens algebraiska egenskaper i följande sats, motsvarande sats 1.3<br />
för de rationella talen.
28 Kapitel 1. Reella tal<br />
Sats 1.10 — Algebraiska egenskaper för R. Låt x,y,z ∈ R. Då gäller följande algebraiska<br />
lagar:<br />
x + y ∈ R<br />
xy ∈ R<br />
x + y = y + x<br />
xy = yx<br />
(sluten under addition)<br />
(sluten under multiplikation)<br />
(kommutativ lag)<br />
(kommutativ lag)<br />
(x + y) + z = x + (y + z) (associativ lag)<br />
(xy)z = x(yz)<br />
x(y + z) = xy + xz<br />
x + 0 = x<br />
1x = x<br />
∃−x ∈ R : x + (−x) = 0<br />
x ≠ 0 ⇒ ∃x −1 ∈ R : xx −1 = 1,<br />
(associativ lag)<br />
(distributiv lag)<br />
(additiv identitet)<br />
(multiplikativ identitet)<br />
(existens av additiv invers)<br />
(existens av multiplikativ invers)<br />
Bevis. Vi har redan sett att x+y ∈ R och att xy ∈ R. Vi nöjer oss här med att visa den kommutativa<br />
lagen x + y = y + x. Låt x = [(x n ) ∞ n=0 ] och y = [(y n) ∞ n=0 ]. Då följer att<br />
x + y = [(x n + y n ) ∞ n=0] = [(y n + x n ) ∞ n=0] = y + x, (1.78)<br />
vilket skulle visas. Notera att vi här har använt oss av den kommutativa lagen x n + y n = y n + x n<br />
för de rationella talen x n och y n .<br />
<br />
I tillägg måste vi också visa att de reella talen kan ordnas, det vill säga att man kan jämföra<br />
reella tal (x < y, x = y eller x > y). Speciellt måste vi utreda vad som menas med positiva reella<br />
tal (x > 0) och negativa reella tal (x < 0).<br />
Definition 1.13 — Positiva och negativa reella tal. Ett positivt reellt tal är ett reellt tal x<br />
som kan representeras av en rationell Cauchy-följd (x n ) ∞ n=0 , sådan att<br />
x n ≥ α > 0 (1.79)<br />
för något positivt rationellt tal α > 0. Ett negativt reellt tal är ett ett reellt tal y som kan<br />
representeras av en rationell Cauchy-följd (y n ) ∞ n=0 , sådan att<br />
y n ≤ −α < 0 (1.80)<br />
för något positivt rationellt tal α > 0.<br />
Exempel 1.13 — Positiva och negativa reella tal. Cauchy-följden som definieras av x n =<br />
0.01 + (−1) n /(n + 1) konvergerar mot talet ¯x = 0.01 som uppenbarligen är ett positivt reellt tal,<br />
trots att Cauchy-följden (x n ) ∞ n=0 inte uppfyller kravet att x n ≥ α > 0 för något tal α > 0. Däremot<br />
kan talet ¯x = 0.01 också representeras av en Cauchy-följd som uppfyller detta krav, till exempel<br />
x n = 0.01 för alla n eller x n = 0.01 + 1/(n + 1), vilket gör ¯x = 0.01 till ett positivt reellt tal. I<br />
båda fallen håller sig Cauchy-följden på tryggt avstånd från x = 0, nämligen avståndet α = 0.01.
1.5 Reella tal 29<br />
Definition 1.14 — Ordning av reella tal. Låt x och y vara reella tal. Då definierar vi<br />
x > y ⇔ x − y är positivt (1.81)<br />
x < y ⇔ x − y är negativt (1.82)<br />
x ≥ y ⇔ x > y ∨ x = y (1.83)<br />
x ≤ y ⇔ x < y ∨ x = y (1.84)<br />
Sats 1.11 — Ordningsegenskaper för R. Låt x,y,z ∈ R. Då gäller följande ordningslagar:<br />
x = y x < y x > y<br />
x < y ⇔ y > x<br />
x < y ∧ y < z ⇒ x < z<br />
x < y ⇒ x + z < y + z<br />
x < y ∧ z > 0 ⇒ xz < yz<br />
(trikotomi)<br />
(antisymmetri)<br />
(transitivitet)<br />
(addition bevarar ordning)<br />
(positiv multiplikation bevarar ordning)<br />
Med dessa definitioner kan vi som tidigare för rationella tal definiera absolutbeloppet och bevisa<br />
triangelolikheterna.<br />
Definition 1.15 — Absolutbelopp. Absolutbeloppet |x| av ett reellt tal x är<br />
{ x, x ≥ 0,<br />
|x| =<br />
−x, x < 0.<br />
(1.85)<br />
Sats 1.12 — Triangelolikheterna. Låt x,y ∈ R. Då gäller följande olikheter:<br />
|x ± y| |x| + |y| (triangelolikheten)<br />
||x| − |y|| |x ± y|<br />
(omvända triangelolikheten)<br />
Slutligen skall vi visa den viktiga sats som säger att varje reell Cauchy-följd 10 måste vara<br />
konvergent och omvänt (de reella talens fullständighet). Vi bevisade tidigare motsvarande sats<br />
för de rationella talen (sats 1.7) och noterade då att konvergenta rationella talföljder alltid är<br />
Cauchy-följder, men att rationella Cauchy-följder inte nödvändigtvis måste vara konvergenta<br />
(mot ett rationellt tal). Vi utvidgar först våra tidigare definitioner av konvergenta talföljder och<br />
Cauchy-följder till reella tal.<br />
Definition 1.16 — Konvergent reell talföljd. En konvergent reell talföljd med gränsvärde<br />
¯x ∈ R är en reell talföljd (x n ) ∞ n=0 sådan att<br />
∀ε > 0∃N ∈ N : n ≥ N ⇒ |x n − ¯x| < ε. (1.86)<br />
Med andra ord för varje (litet) reellt tal ε > 0 finns det ett (stort) naturligt tal N sådant att<br />
avståndet |x n − ¯x| mellan x n och ¯x är mindre än ε om n är större än eller lika med N.<br />
Vi säger då att talföljden (x n ) ∞ n=0 konvergerar mot gränsvärdet ¯x och skriver<br />
lim x n = ¯x, (1.87)<br />
n→∞<br />
10 En reell talföljd är alltså en talföljd (x n ) ∞ n=0 där varje x n är ett reellt tal (en ekvivalensklass av rationella<br />
Cauchy-följder. . . ).
30 Kapitel 1. Reella tal<br />
alternativt<br />
x n → ¯x då n → ∞. (1.88)<br />
Definition 1.17 — Reell Cauchy-följd. En reell Cauchy-följd är en reell talföljd (x n ) ∞ n=0<br />
sådan att<br />
∀ε > 0∃N ∈ N : m,n ≥ N ⇒ |x m − x n | < ε. (1.89)<br />
Med andra ord för varje (litet) reellt tal ε > 0 finns det ett (stort) tal N sådant att avståndet<br />
|x m − x n | mellan x m och x n är mindre än ε om både m och n är större än eller lika med N.<br />
Vi kommer att visa att dessa båda definitioner är ekvivalenta, det vill säga att för reella tal gäller<br />
att en konvergent talföljd alltid måste vara en Cauchy-följd och omvänt, att en reell Cauchy-följd<br />
alltid konvergerar mot ett reellt tal. Vi kommer att behöva följande hjälpsats (lemma) som säger<br />
att om en reell Cauchy-följd råkar bestå av rationella tal så är denna Cauchy-följd konvergent i<br />
meningen att den konvergerar mot ett reellt tal.<br />
Lemma 1.13 — En reell Cauchy-följd av rationella tal är alltid konvergent. Låt (x n ) ∞ n=0<br />
vara en reell Cauchy-följd av rationella tal. Då är (x n ) ∞ n=0 konvergent med gränsvärdet ¯x =<br />
[(x n ) ∞ n=0 ] ∈ R.<br />
Bevis. Eftersom (x n ) ∞ n=0 är en rationell Cauchy-följd så är ¯x = [(x n) ∞ n=0 ] ett reellt tal. Varje tal<br />
x m i talföljden är ett rationellt tal som också kan uttryckas som ett reellt tal: x m = [(x m ) ∞ n=0 ] (en<br />
rationell Cauchy-följd där alla tal är lika med x m ). Om m är tillräckligt stort gäller då att<br />
|x m − ¯x| = |[(x m ) ∞ n=0]−[(x n ) ∞ n=0]| = |[(x m −x n ) ∞ n=0]| = [(|x m −x n |) ∞ n=0] [(ε) ∞ n=0] = ε, (1.90)<br />
eftersom (x n ) ∞ n=0 är en Cauchy-följd och därmed |x m − x n | kan göras godtyckligt liten.<br />
<br />
Med andra ord konvergerar en rationell Cauchy-följd mot sig själv. . . (mot det reella tal som den<br />
representerar). Vi visar nu satsen om de reella talens fullständighet.<br />
Sats 1.14 — De reella talens fullständighet. Låt (x n ) ∞ n=0 vara en reell talföljd. Då är (x n) ∞ n=0<br />
konvergent om och endast om den också är en Cauchy-följd.<br />
⋆ Bevis. Vi noterar först att eftersom samma algebraiska lagar gäller för de reella talen som<br />
för de rationella talen så följer att en konvergent talföljd också måste vara en Cauchy-följd på<br />
samma sätt som i beviset av sats 1.7.<br />
Det återstår att visa att om (x n ) ∞ n=0 är en Cauchy-följd så måste den också vara konvergent<br />
(mot ett reellt tal). Vi konstaterar att varje tal x m i talföljden nu är ett reellt tal och därmed kan<br />
representeras som en rationell Cauchy-följd. Vi skriver x m = [(x mn ) ∞ n=0 ] där x mn är rationellt tal<br />
nummer n i en rationell Cauchy-följd som representerar det reella talet x m . Vi får då en tabell<br />
(matris) av rationella tal där rad m är en rationell Cauchy-följd som representerar (konvergerar
1.6 ⋆ Datorrepresentation av reella tal 31<br />
mot) det reella talet x m :<br />
x 00 x 01 x 02 x 03 x 04 x 05 x 06 x 07 ··· x 0<br />
x 10 x 11 x 12 x 13 x 14 x 15 x 16 x 17 ··· x 1<br />
x 20 x 21 x 22 x 23 x 24 x 25 x 26 x 27 ··· x 2<br />
x 30 x 31 x 32 x 33 x 34 x 35 x 36 x 37 ··· x 3<br />
x 40 x 41 x 42 x 43 x 44 x 45 x 46 x 47 ··· x 4<br />
x 50 x 51 x 52 x 53 x 54 x 55 x 56 x 57 ··· x 5<br />
x 60 x 61 x 62 x 63 x 64 x 65 x 66 x 67 ··· x 6<br />
x 70 x 71 x 72 x 73 x 74 x 75 x 76 x 77 ··· x 7<br />
. . . . . . . .<br />
. ..<br />
Vår uppgift är nu att utifrån denna tabell av rationella tal konstruera en rationell Cauchy-följd<br />
som representerar det gränsvärde vi söker för vår reella Cauchy-följd (x n ) ∞ n=0 . Eftersom varje<br />
rad m är en rationell Cauchy-följd vet vi enligt lemma 1.13 att avståndet |x mn − x m | kan göras<br />
godtyckligt litet om n väljs tillräckligt stort. Låt nu N = N(m) vara det (minsta) tal för vilket<br />
(exempelvis) |x mn − x m | < 2 −m för alla n ≥ N(m). För varje rad m väljer vi alltså en kolumn<br />
N(m) sådan att |x m,N(m) − x m | < 2 −m . Detta genererar en rationell talföljd (x m,N(m) ) ∞ m=0 . Vi visar<br />
först att denna är en Cauchy-följd. Givet ε > 0 har vi<br />
|x m,N(m) − x n,N(n) | = |x m,N(m) − x m + x m − x n + x n − x n,N(n) | (1.91)<br />
|x m,N(m) − x m | + |x m − x n | + |x n − x n,N(n) | (1.92)<br />
< 2 −m + ε/3 + 2 −n < ε/3 + ε/3 + ε/3 = ε, (1.93)<br />
om m och n väljs tillräckligt stora. Detta följer av att (x n ) ∞ n=0 är en Cauchy-följd och att därmed<br />
|x m − x n | kan göras godtyckligt liten. (Vi måste också välja m och n så stora att 2 −m < ε/3<br />
och 2 −n < ε/3, det vill säga m,n > ⌈ln(3/ε)/ln2⌉.) Vi har således visat att (x m,N(m) ) ∞ m=0 är en<br />
rationell Cauchy-följd och att därför ¯x = [(x m,N(m) ) ∞ m=0 ] är ett reellt tal.<br />
Det återstår att visa att (x n ) ∞ n=0 konvergerar mot just ¯x. Vi betraktar därför skillnaden |x m − ¯x|<br />
och visar att den kan göras godtyckligt liten om m görs tillräckligt stort. Vi noterar först att<br />
x m − ¯x = [(x mn ) ∞ n=0] − [(x n,N(n) ) ∞ n=0] = [(x mn − x n,N(n) ) ∞ n=0] = [(y mn ) ∞ n=0] = y m , (1.94)<br />
där alltså (y mn ) ∞ n=0 är en rationell Cauchy-följd som ges av y mn = x mn − x n,N(n) . Storleken på y mn<br />
kan nu uppskattas som följer:<br />
|y mn | = |x mn − x n,N(n) | = |x mn − x m + x m − x n + x n − x n,N(n) | (1.95)<br />
|x mn − x m | + |x m − x n | + |x n − x n,N(n) | < ε/3 + ε/3 + ε/3 = ε, (1.96)<br />
för tillräckligt stora m och n. Vi drar slutsatsen att för stora m representerar Cauchy-följden<br />
(y mn ) ∞ n=0 ett reellt tal y m sådant att |y m | ε. Härav följer att för givet ε > 0 kan vi välja m<br />
tillräckligt stort så att<br />
|x m − ¯x| = |y m | ε, (1.97)<br />
vilket visar att (x n ) ∞ n=0 konvergerar mot det reella talet ¯x.<br />
<br />
1.6 ⋆ Datorrepresentation av reella tal<br />
Reella tal har en central betydelse inom matematiken, naturvetenskapen och ingenjörsvetenskapen<br />
och vi kommer i den här boken, från och med nu, nästan uteslutande arbeta med reella tal.
32 Kapitel 1. Reella tal<br />
Speciellt kommer vi att studera generella algoritmer för att lösa generella ekvationer med hjälp<br />
av datorn, men hur representeras reella tal i datorn?<br />
En speciell typ av reella tal är decimalutvecklingar, det vill säga talföljder (x n ) ∞ n=0 där x n är<br />
ett tal med n decimaler och vars första n − 1 decimaler är desamma som för x n−1 :<br />
3, 3.1, 3.14, 3.141, 3.1415, 3.14159, 3.141592, 3.1415926, 3.14159265, .... (1.98)<br />
Eftersom |x m − x n | < 10 −min(m,n) så är en decimalutveckling (x n ) en Cauchy-följd och representerar<br />
därmed ett reellt tal.<br />
Datorer använder ändliga decimalutvecklingar för att representera reella tal. Beroende på<br />
vilket operativsystem och programmeringsspråk som används kan antalet decimaler skilja sig åt,<br />
men den vanligast förekommande representationen är flyttalsstandarden IEEE 754 binary64,<br />
normalt kallad double. Enligt denna standard används 64 bitar (8 byte) för att representera reella<br />
tal som ändliga binära utvecklingar. Av dessa 64 bitar används 52 för att lagra decimalutvecklingens<br />
signifikanta siffror (mantissan), 11 bitar för att lagra talets storlek (exponenten) och en<br />
bit för att lagra talets tecken. Detta medför att antalet signifikanta decimala siffror är begränsat<br />
till (ca) 16 ≈ 52 · ln2/ln10.<br />
Eftersom antalet decimaler är ändligt kommer nästan alla tal, såsom √ 2, π och till och med<br />
talet 0.1 att representeras endast approximativt. Samma sak gäller för alla räkneoperationer som<br />
+, −, · och /. Dessa utförs approximativt. Flyttalsstandarden garanterar att det relativa felet i<br />
representationen av alla tal och alla räkneoperationer är maximalt ε, där ε är den så kallade<br />
maskinprecisionen. Maskinprecisionen ε definieras som det minsta talet ε sådant att<br />
1 + ε > 1. (1.99)<br />
Denna olikhet är alltid uppfylld om ε > 0 är ett reellt tal, men behöver inte vara uppfylld med<br />
flyttalsaritmetik. För binary64 är ε = 2 −52 ≈ 2.22 × 10 −16 .<br />
Storleken på ε kan enkelt beräknas med hjälp av Algoritm 1 som ger just ε ≈ 2.22 × 10 −16 .<br />
Notationen ε ← ε/2 betyder tilldelning, det vill säga att värdet ε/2 beräknas och variabeln ε<br />
uppdateras till detta värde.<br />
Algoritm 1 Beräkning av maskinprecisionen ε<br />
Utdata: Approximation (inom en faktor 2) av maskinprecisionen ε<br />
1: ε = 1<br />
2: while 1 + ε > 1 do<br />
3: ε ← ε/2<br />
4: end while<br />
5: ε ← 2ε<br />
Om x och y är två reella tal, + vår vanliga additionsoperator, så kommer en dator att i själva<br />
verket utföra följande operation:<br />
x + y ≈ x + y ≈ x + y, (1.100)<br />
där x är flyttalsapproximationen av x, y är flyttalsapproximationen av x och + är flyttalsapproximationen<br />
av +. Var och en av dessa approximationer introducerar ett relativt fel av storlek ε.<br />
Detta innebär att<br />
|(x + y) − (x + y)| |(x + y) − (x + y)| + |(x + y) − (x + y)|<br />
ε|x + y| + |x − x| + |y − y| ε(|x| + |y|) + ε|x| + ε|y|<br />
≈ 2ε(|x| + |y|).<br />
(1.101)
1.6 ⋆ Datorrepresentation av reella tal 33<br />
De avrundningsfel som görs i representationen av reella tal och räkneoperationerna är ofta så<br />
små att de inte märks. Dock kan många små räknefel i en komplicerad beräkning tillsammans<br />
ackumuleras och leda till stora fel. Vissa beräkningar är mer känsliga än andra och till synes små<br />
avrundningsfel kan leda till oväntade resultat, som i följande exempel.<br />
Exempel 1.14 — Avrundningsfel. Betrakta funktionen f (x) = 4x/((x + 1) 2 − (x − 1) 2 ). Eftersom<br />
f (x) =<br />
4x<br />
(x + 1) 2 − (x − 1) 2 = 4x<br />
x 2 + 1 + 2x − x 2 − 1 + 2x = 4x<br />
4x = 1 (1.102)<br />
gäller att f (x) = 1 för alla x ≠ 0, men låt oss beräkna f (x) för allt mindre värde på x med<br />
flyttalsaritmetik. Detta kan göras enkelt i till exempel MATLAB, Python eller C++ där datatypen<br />
binary64 (double) är standard.<br />
x<br />
f (x)<br />
1 1.0000000000000000<br />
0.1 0.9999999999999998<br />
0.01 0.9999999999999993<br />
0.001 1.0000000000000826<br />
0.0001 1.0000000000003879<br />
1 × 10 −5 0.9999999999990004<br />
1 × 10 −6 0.9999999999990002<br />
1 × 10 −7 0.9999999999712448<br />
1 × 10 −8 1.0000000033019139<br />
1 × 10 −9 0.9999999727707815<br />
1 × 10 −10 0.9999999172596364<br />
1 × 10 −11 0.9999999172596364<br />
1 × 10 −12 0.9999666116837077<br />
1 × 10 −13 1.0002442259568016<br />
1 × 10 −14 1.0007999171934443<br />
1 × 10 −15 0.9481262373411579<br />
1 × 10 −16 1.8014398509482001<br />
Det som händer när x närmar sig 0 är att (x + 1) 2 ≈ 1 + 2x och (x − 1) 2 ≈ 1 − 2x och dessa båda<br />
tal beräknas med ett relativt fel av storlek (ca) ε:<br />
(x + 1) 2 − (x − 1) 2 ≈ 1 + 2x ± ε − (1 − 2x) ± ε ≈ 4x ± 2ε. (1.103)<br />
Om x och ε är av samma storleksordning blir beräkningen därför mycket otillförlitlig.
34 Kapitel 1. Reella tal<br />
Övningar<br />
1.1 Mängdlära<br />
Övning 1.1 Låt A = {1,2,3} och B = {2,3,4}. Bestäm följande mängder.<br />
(a) A ∪ B (b) A ∩ B (c) A \ B (d) A × B <br />
Övning 1.2 Låt A = {1,3,5,7,9} och B = {2,4,6,8,10}. Bestäm följande mängder.<br />
(a) A ∪ B (b) A ∩ B (c) A \ B (d) A × B <br />
Övning 1.3 Låt A = {1,2,3}, B = {2,3,4} och C = {3,4,5}. Bestäm följande mängder.<br />
(a) A ∪ B ∪C (b) A ∩ B ∩C (c) (B \ A) ∩C (d) (A × B) ×C <br />
Övning 1.4 Låt A = {1,3,5,7,9}, B = {2,4,6,8,10} och C = {1,2,3,...,10}. Bestäm<br />
huruvida följande relationer är sanna eller falska.<br />
(a) A ⊂ C (b) B ⊆ C (c) A ∪ B ⊂ C (d) A ∩ B ⊆ C <br />
Övning 1.5 Låt A = {1,3,5,7,9}, B = {2,4,6,8,10} och C = {1,2,3,...,10}. Bestäm antalet<br />
element i följande mängder.<br />
(a) (A ∪ B) ×C (b) (A ∩ B) ×C (c) (A × B) ×C (d) A × (B ×C) <br />
1.2 Matematisk logik<br />
Övning 1.6 Låt P, Q och R vara logiska utsagor med sanningsvärdena T, F respektive T.<br />
Bestäm sanningsvärdet för följande utsagor.<br />
(a) P ∧ (Q ∨ R) (b) (P ∨ Q) ∧ R (c) ¬P ∨ ¬(Q ∨ R) (d) ¬(P ∨ ¬(Q ∧ R)) ∧ P <br />
Övning 1.7 Använd sanningstabeller för att bestämma huruvida följande logiska utsagor är<br />
tautologier (sanna oavsett sanningsvärdena för P, Q och R).<br />
(a) P ∨ P ⇒ P (b) ¬¬P ⇔ P (c) P ∨ (Q ∧ R) ⇔ ¬(¬P ∧ ¬Q) ∧ R<br />
(d) (P ∧ ¬Q) ∧ R ⇔ (P ∧ R) ∧ ¬Q<br />
<br />
Övning 1.8 Bestäm sanningsvärdet för följande logiska utsagor.<br />
(a) ∀x ∈ R∃y ∈ R : x + y = 1 (b) ∀x ∈ R∃y ∈ R : xy = 1<br />
(c) ∀x ∈ R∃y ∈ R : y 2 = x (d) ∃y ∈ R∀x ∈ R : xy = 0. <br />
Övning 1.9 Bestäm sanningsvärdet för följande logiska utsagor.<br />
(a) ∀x ∈ R∀y ∈ R : xy < |xy| (b) ∀y ∈ R∃x ∈ R : 5x + y = 0<br />
(c) ∀y ∈ R∃x ∈ R : x 2 + 5x + y = 0 (d) ∃x ∈ R∃y ∈ R : ∀z ∈ R(x + π)(y + √ 2)z = 2z. <br />
Övning 1.10 Uttryck följande mängder matematiskt (med mängdnotation, logiska operatorer<br />
och kvantorer).<br />
(a) Alla positiva reella lösningar till ekvationen x 5 − x + 1 = 0.<br />
(b) Alla reella tal som uppfyller x = x 2 .
1.6 ⋆ Datorrepresentation av reella tal 35<br />
(c) Alla positiva udda tal, dvs talen 1,3,5,....<br />
(d) Alla tvåpotenser, dvs talen 1,2,4,....<br />
<br />
1.3 Rationella tal<br />
Övning 1.11 Bestäm alla heltalslösningar till följande ekvationer och olikheter.<br />
(a) |x + 5| + |x − 5| = 100 (b) 4x 2 − 9 < 0 (c) |2x + 1|/|2x − 1| ≤ 1<br />
(d) |x 2 + x| x 2 + |x|<br />
<br />
Övning 1.12 Bestäm alla rationella lösningar till följande ekvationer.<br />
(a) x 5 = 1 (b) 9(x − 5)(x − 7) = 280 (c) 9x 2 + 3x − 6 = 0 (d) √ x + 1 + x = 5 <br />
Övning 1.13 Bestäm alla rationella lösningar till följande olikheter.<br />
(a) x 5 1 (b) 9(x − 5)(x − 7) < 280 (c) 9x 2 + 3x − 6 0 (d) √ x + 1 + x < 5 <br />
Övning 1.14 Låt x, y och z vara rationella tal. Använd triangelolikheterna för att visa att<br />
följande olikheter alltid är uppfyllda eller visa att de inte är uppfyllda (genom att hitta ett<br />
motexempel).<br />
(a) |x+y| |x−z|+|z+y| (b) |x−2y| |x−z|+2|z−y| (c) |x−2y| |x−2z|+2|z−y|<br />
(d) ||x| − |y|| |x − 3y| + 4|y|<br />
<br />
Övning 1.15 Använd triangelolikheten för att uppskatta (bestämma en övre gräns för) följande<br />
uttryck då 1/10 x 10.<br />
(a) x 3 + 1/x (b) x −3 + x (c) (x 2 − 9 + 3x)/(x + 3) (d) (1/x + 2x)(x + 2/x) <br />
1.4 Talföljder och konvergens<br />
Övning 1.16 Bestäm gränsvärdena för följande konvergenta talföljder.<br />
(a) x n = 3 − 5n/(6n + 3) (b) x n = (3n 3 + 5n + 1)/(3n 2 + (n + 1)(n 2 + 1))<br />
(c) x n = (3 − n)/|3 + n| (d) x n = (10x n−1 − (xn−1 2 − 3))/10, x 0 = 1 <br />
Övning 1.17 Visa att följande talföljder är konvergenta, det vill säga bestäm gränsvärdet ¯x<br />
och N = N(ε) så att |x n − ¯x| < ε för n ≥ N(ε).<br />
(a) x n = 1/(n + 1) 2 (b) x n = (n + 1)/(n + 2) (c) x n = 1/ √ n<br />
(d) x 0 = 0.3, x 1 = 0.33, x 2 = 0.333, . . .<br />
<br />
Övning 1.18 Visa att följande talföljder är Cauchy-följder, det vill säga bestäm N = N(ε) så<br />
att |x m − x n | < ε för m,n ≥ N(ε).<br />
(a) x n = 1/(n + 1) 2 (b) x n = (n + 1)/(n + 2) (c) x n = 1/ √ n<br />
(d) x 0 = 0.3, x 1 = 0.33, x 2 = 0.333, . . .<br />
<br />
Övning 1.19 Bestäm N så att |x n − ¯x| < 10 −16 då n ≥ N för följande konvergenta talföljder.<br />
(a) x n = 1/(n + 1) + 1/(n + 2) (b) x n = 1/(n + 1) − 1/(n + 2) 2 (c) x n = (1/2) n<br />
(d) x 0 = 1, x 1 = x 0 + 1/2, x 2 = x 1 + 1/4, x 3 = x 2 + 1/8 . . .
36 Kapitel 1. Reella tal<br />
Övning 1.20 Bestäm N så att |x m − x n | < 10 −16 då m,n ≥ N för följande Cauchy-följder.<br />
(a) x n = 1/(n + 1) + 1/(n + 2) (b) x n = 1/(n + 1) − 1/(n + 2) 2 (c) x n = (1/2) n<br />
(d) x 0 = 1, x 1 = x 0 + 1/2, x 2 = x 1 + 1/4, x 3 = x 2 + 1/8 . . .<br />
<br />
1.5 Reella tal<br />
Övning 1.21 Bestäm huruvida följande talföljder representerar reella tal.<br />
(a) 1,1,1,... (b) 1,2,3,... (c) 1,1/2,1/3,... (d) √ 2 + 1, √ 2 + 1/2, √ 2 + 1/3,... <br />
Övning 1.22 Ange för var och en av följande Cauchy-följder en (annan) ekvivalent Cauchyföljd.<br />
(a) x n = 1/(n + 1) + 1/(n + 2) (b) x n = 1/(n + 1) − 1/(n + 2) 2 (c) x n = (1/2) n<br />
(d) x 0 = 1, x 1 = x 0 + 1/2, x 2 = x 1 + 1/4, x 3 = 1 + 1/8 . . .<br />
<br />
Övning 1.23 Låt x = [(x n ) ∞ n=0 ] och y = [(y n) ∞ n=0 ] vara två reella tal givna av x n = 1+1/(n+1)<br />
och y n = 1 − 1/(n + 1). Beräkna, med hjälp av definitionen av de algebraiska operationerna<br />
för reella tal, följande uttryck.<br />
(a) x + y = [(x n ) ∞ n=0 ] + [(y n) ∞ n=0 ] (b) x − y = [(x n) ∞ n=0 ] + [(y n) ∞ n=0 ]<br />
(c) xy = [(x n ) ∞ n=0 ] · [(y n) ∞ n=0 ] (d) x/y = [(x n) ∞ n=0 ]/[(ỹ n) ∞ n=0 ] <br />
Övning 1.24 Bestäm huruvida det reella talet x = [(x n ) ∞ n=0 ] är positivt, negativt eller lika<br />
med 0.<br />
(a) x n = 0.1 + (−1) n /n (b) x n = n 2 /(⌈ √ n + 1⌉(n + 1)(n + 2))<br />
(c) x n = −0.1 + (n 2 + 1)/(5n 2 + 3) (d) x n = 1/(n + 1) − 1/(n + 2) 2 <br />
Övning 1.25 Låt (x n ) ∞ n=0 vara den Cauchy-följd som definieras av x 0 = 1 och x n = (x n−1 +<br />
a/x n−1 )/2 för a ≥ 0. Denna Cauchy-följd är en representant för det reella talet √ a. Bestäm<br />
en rationell approximation av talet √ a på formen p/q för följande tal genom att beräkna<br />
x 3 ≈ √ a.<br />
(a) a = 0 (b) a = 1 (c) a = 7 (d) a = 100 <br />
Problem<br />
1.1 Mängdlära<br />
Problem 1.1 Tolka följande mängddefinition (Russells paradox) och fundera kring huruvida<br />
X ∈ X eller X /∈ X:<br />
X = {x|x /∈ x}. (1.104)
1.6 ⋆ Datorrepresentation av reella tal 37<br />
1.2 Matematisk logik<br />
Problem 1.2 Bevisa sats 1.2, det vill säga visa med hjälp av sanningstabeller att de logiska<br />
slutledningarna modus ponens och modus tollens är tautologier.<br />
<br />
1.3 Rationella tal<br />
Problem 1.3 Bevisa sats 1.5, det vill säga visa med hjälp av ordningslagarna för rationella<br />
tal att triangelolikheterna gäller för rationella tal.<br />
<br />
Problem 1.4 Visa att √ 3 inte är ett rationellt tal på samma sätt som i beviset av sats 1.6. <br />
Problem 1.5 Försök på samma sätt visa att √ 9 inte är ett rationellt tal.<br />
<br />
Problem 1.6 Om x /∈ Q och y /∈ Q, gäller då att x + y /∈ Q, det vill säga om x och y är<br />
irrationella tal, måste då summan vara irrationell?<br />
<br />
1.4 Talföljder och konvergens<br />
Problem 1.7 Visa att om talföljden (y n ) ∞ n=0 i exempel 1.6 konvergerar så konvergerar den<br />
mot talet φ = ( √ 5 + 1)/2.<br />
<br />
Problem 1.8 Visa att om talföljden (x n ) ∞ n=0 i exempel 1.8 konvergerar så konvergerar den<br />
mot talet √ 2.<br />
<br />
1.5 Reella tal<br />
Problem 1.9 Bevisa att subtraktion och multiplikation av reella tal är väldefinierade (sats<br />
1.9), det vill säga visa att om (x n ) ∞ n=0 och (y n) ∞ n=0 är rationella Cauchy-följder så är också<br />
(x n − y n ) ∞ n=0 och (x ny n ) ∞ n=0 rationella Cauchy-följder. <br />
Problem 1.10 (⋆) Bevisa att division av reella tal är väldefinierat (sats 1.9), det vill säga visa<br />
att om x = [(x n ) ∞ n=0 ] och y = [(y n) ∞ n=0 ] ≠ 0 är reella tal så är också x/y ett reellt tal.<br />
<br />
Datorövningar<br />
Datorövning 1.1 Skriv ett program som genererar talföljden (x n ) 100<br />
n=0 för x n = n. <br />
Datorövning 1.2 Skriv ett program som genererar de udda talen mellan 1 och 100.<br />
<br />
Datorövning 1.3 Skriv ett program som beräknar summan ∑ 100<br />
n=0 x n för x n = n. <br />
Datorövning 1.4 Skriv ett program som beräknar summan av de udda talen mellan 1 och<br />
100.
38 Kapitel 1. Reella tal<br />
Datorövning 1.5 Skriv ett program som genererar alla primtal mellan 2 och 1000.<br />
<br />
Datorövning 1.6 Skriv ett program som genererar de första 1000 primtalen.<br />
<br />
Datorövning 1.7 Skriv ett program som beräknar approximationen √ 2 ≈ x 100 för x n =<br />
(x n−1 + 2/x n−1 )/2 och x 0 = 1. <br />
Datorövning 1.8 Skriv ett program som beräknar approximationen √ 2 ≈ x N för x n = (x n−1 +<br />
2/x n−1 )/2 och x 0 = 1 där N är det minsta talet sådant att |x N − x N−1 | < 10 −10 . <br />
Datorövning 1.9 Skriv ett program som genererar talföljden (x n ) N n=0 för N = 106 då<br />
x n = 4<br />
n<br />
∑<br />
k=0<br />
(−1) k /(2k + 1). (1.105)<br />
Ser talföljden ut att vara en Cauchy-följd? Vilket reellt tal representerar den i så fall?<br />
<br />
Datorövning 1.10 Låt som tidigare (x n ) ∞ n=0 vara talföljden som definieras av x n = (x n−1 +<br />
2/x n−1 )/2 och x 0 = 1. Låt (y n ) ∞ n=0 vara talföljden som definieras av y n = y n−1 − α(y 2 n−1 − 2).<br />
Skriv ett program som genererar talföljderna (x n ) 20<br />
n=0 och (y n) 20<br />
n=0<br />
för α = 0.01, α = 0.1<br />
och α = 1. För varje talföljd, plotta i samma figur avståndet till ¯x = √ 2 som funktion av n.<br />
Använd semilogaritmisk skala.
Introduktion<br />
2. Funktioner (I)<br />
2.1 Introduktion
Introduktion<br />
3. Gränsvärde och kontinuitet<br />
3.1 Introduktion
Introduktion<br />
4. Derivata och linjärisering<br />
4.1 Introduktion
Introduktion<br />
5. Approximation och serieutveckling<br />
5.1 Introduktion
Introduktion<br />
6. Ekvationslösning<br />
6.1 Introduktion
Introduktion<br />
7. Tillämpningar<br />
7.1 Introduktion
Introduktion<br />
8. Repetition<br />
8.1 Introduktion
Facit<br />
Kapitel 1<br />
Övningar<br />
Ö1.1 (a) {1,2,3,4} (b) {2,3} (c) {1} (d) {(1,2),(1,3),(1,4),(2,2),(2,3),(2,4),(3,2),(3,3),(3,4)}<br />
Ö1.2 (a) {1,2,3,4,5,6,7,8,9,10} (b) /0 (c) {1,3,5,7,9}<br />
(d) {(1,2),(1,4),...,(1,10),(3,2),(3,4),...,(3,10),...,(9,10)} (25 element)<br />
Ö1.3 (a) {1,2,3,4,5} (b) {3} (c) {4}<br />
(d) {((1,2),3),((1,2),4),((1,2),5),((1,3),3),((1,3),4),...,((3,4),5)} (27 element)<br />
Ö1.4 (a) T (b) T (c) F (d) T<br />
Ö1.5 (a) 100 (b) 0 (c) 250 (d) 250<br />
Ö1.6 (a) T (b) T (c) F (d) F<br />
Ö1.7 (a) Tautologi (b) Tautologi (c) Ej tautologi (d) Tautologi<br />
(a) F<br />
P ∨ P ⇒ P<br />
T T T T T<br />
F F F T F<br />
(b)<br />
¬ ¬ P ⇔ P<br />
T F T T T<br />
F T F T F<br />
(c)<br />
P ∨ (Q ∧ R) ⇔ ¬ (¬ P ∧ ¬ Q) ∧ R<br />
T T T T T T T F T F F T T T<br />
T T T F F F T F T F F T F F<br />
T T F F T T T F T F T F T T<br />
T T F F F F T F T F T F F F<br />
F T T T T T T T F F F T T T<br />
F F T F F T T T F F F T F F<br />
F F F F T T F T F T T F F T<br />
F F F F F T F T F T T F F F
54 Kapitel 8. Repetition<br />
(P ∧ ¬ Q) ∧ R ⇔ (P ∧ R) ∧ ¬ Q<br />
T F F T F T T T T T F F T<br />
T F F T F F T T F F F F T<br />
(d)<br />
T T T F T T T T T T T T F<br />
T T T F F F T T F F F T F<br />
F F F T F T T F F T F F T<br />
F F F T F F T F F F F F T<br />
F F T F F T T F F T F T F<br />
F F T F F F T F F F F T F<br />
Ö1.8 (a) T (b) F (c) F (d) T<br />
Ö1.9 (a) F (b) T (c) F (d) T<br />
Ö1.10 (a) {x ∈ R|x 5 − x + 1 = 0 ∧ x > 0} (b) {x ∈ R|x = x 2 } = {0,1}<br />
(c) {n ∈ N|∃k ∈ N : n = 2k + 1} (d) {n ∈ N|∃k ∈ N : n = 2 k }<br />
Ö1.11 (a) x = ±50 (b) x = −1,0,1 (c) x = 0,−1,−2,−3,... (d) x = 0,−1,−2,−3,...<br />
Ö1.12 (a) x = 1 (b) x = 1 /3, x = 35 /3 (c) x = −1, x = 2 /3 (d) x = 3<br />
Ö1.13 (a) {x ∈ Q|x 1} (b) {x ∈ Q| 1 /3 < x < 35 /3} (c) {x ∈ Q|x −1 ∨ x 2 /3}<br />
(d) {x ∈ Q|x −1 ∧ x < 3}<br />
Ö1.14 (a) |x + y| = |x − z + z + y| |x − z| + |z + y|<br />
(b) Ej uppfyllt, motexempel: x = 0, y = z = 1<br />
(c) |x − 2y| = |x − 2z + 2z − 2y| |x − 2z| + |2z − 2y| = |x − 2z| + 2|z − y|<br />
(d) ||x| − |y|| |x + y| = |x − 3y + 4y| |x − 3y| + |4y| = |x − 3y| + 4|y|<br />
Ö1.15 (a) 1010 (b) 1010 (c) 139/2.9 ≈ 47.9 (d) 900<br />
Ö1.16 (a) 13 /6 (b) 3 (c) −1 (d) √ 3 (sätt x n = x n−1 )<br />
Ö1.17 (a) ¯x = 0, N = ⌈ε − 1 2 ⌉ (b) ¯x = 1, N = ⌈ε −1 ⌉ − 1 (c) ¯x = 0, N = ⌈ε −2 ⌉ + 1<br />
(d) ¯x = 1 /3, N = ⌈ln(3 −1 ε −1 )/ln10⌉ (flera möjliga lösningar)<br />
Ö1.18 (a) N = ⌈ √ 2ε − 1 2 ⌉ (b) N = ⌈2ε −1 ⌉−1 (c) N = ⌈4ε −2 ⌉+1 (d) N = ⌈ln(3 −1 ε −1 /ln10⌉<br />
(flera möjliga lösningar)<br />
Ö1.19 (a) N = 2 × 10 16<br />
(b) N = 2 × 10 16<br />
(c) N = ⌈16ln10/ln2⌉ = 54 (d) N = ⌈16ln10/ln2⌉ = 54 (flera möjliga lösningar)<br />
Ö1.20 (a) N = 4 × 10 16 (b) N = 4 × 10 16 (c) N = ⌈16ln10/ln2⌉ + 1 = 55<br />
(d) N = ⌈16ln10/ln2⌉ = 54 (flera möjliga lösningar)<br />
Ö1.21 (a) Ja (talet 1) (b) Nej (ingen Cauchy-följd) (c) Ja (talet 0) (d) Nej (ingen rationell<br />
talföljd)<br />
Ö1.22 (a) 0,0,0,... (exempel) (b) x n = π −n (exempel) (c) x n = 1/lnn (exempel)<br />
(d) x n = ln(e + 1/n) 2 (exempel)<br />
Ö1.23 (a) [(2)] ∞ n=0 = 2 = 1 + 1 (b) [(2/(n + 1)∞ n=0 ] = 0 = 1 − 1<br />
(c) [(1 − 1/(n + 1) 2 ) ∞ n=0 ] = 1 = 1 · 1 (d) [(1 + 2/n)∞ n=0 ] = 1 = 1/1<br />
Ö1.24 (a) x > 0 (b) x = 0 (c) x > 0 (d) x = 0<br />
Ö1.25 (a) 1 /8 (b) 1 /1 (c) 977 /368 (d) 128702801 /8565608<br />
Problem<br />
P1.1 X är mängden av alla mängder som inte innehåller sig själva (som element i mängden —<br />
notera att en mängd mycket väl kan bestå av mängder). Detta innebär att X ∈ X om och<br />
endast om X uppfyller villkoret för att tillhöra mängden, det vill säga X /∈ X. Med andra<br />
ord gäller att X ∈ X ⇔ X /∈ X vilket är en motsägelse. Den grundläggande problematiken<br />
är att man inte kan bilda en mängd bara genom att lista mängdens egenskaper på formen<br />
X = {x|P(x)}. I allmänhet måste man definiera delmängder på formen X = {x ∈ Y |P(x)}.
8.1 Introduktion 55<br />
P1.2 Modus ponens:<br />
Modus tollens:<br />
((P ⇒ Q) ∧ P) ⇒ Q<br />
T T T T T T T<br />
T F F F T T F<br />
F T T F F T T<br />
F T F F F T F<br />
((P ⇒ Q) ∧ ¬ Q) ⇒ ¬ P<br />
T T T F F T T F T<br />
T F F F T F T F T<br />
F T T F F T T T F<br />
F T F T T F T T F<br />
P1.3 Om x + y 0 så gäller att |x + y| = x + y. Eftersom x |x| och y |y| så gäller enligt sats<br />
1.4 att |x + y| = x + y |x| + |y|. Om x + y < 0 så gäller att |x + y| = −(x + y) = −x − y.<br />
Eftersom −x |x| och −y |y| så gäller enligt sats 1.4 att |x + y| = −(x + y) |x| + |y|.<br />
Genom att byta tecken på y följer att |x + y| |x| + |y|.<br />
För att visa den omvända triangelolikheten använder vi triangelolikheten för att visa<br />
|x| = |x − y + y| |x − y| + |y|, vilket ger |x| − |y| |x − y|. På samma sätt ser vi att<br />
|y| − |x| |y − x|, dvs −(|x| − |y|) |x − y|. Eftersom då ±(|x| − |y|) |x − y| följer att<br />
||x| − |y|| |x − y|. Genom att byta tecken på y följer att ||x| − |y|| |x ± y|<br />
P1.4 Antag att x 2 = 3 och att x = p/q ∈ Q där p och q är relativt prima (saknar gemensamma<br />
faktorer andra än 1). Då gäller att (p/q) 2 = 3 och således p 2 = 3q 2 . Eftersom p 2 då är är<br />
multipel av 3 måste också p vara en multipel av 3 (eftersom 3 är ett primtal). Vi kan då<br />
skriva p = 3k för k ∈ Z. Detta ger (3k) 2 = 3q 2 och därför 3k 2 = q 2 . Vi drar slutsatsen att<br />
också q måste vara delbart med 3 vilket motsäger antagandet att p och q är relativt prima.<br />
P1.5 På samma sätt som i beviset av att √ 2 och √ 3 inte är rationella tal får vi p 2 = 9q 2 . Detta<br />
betyder inte att p måste vara en multipel av 9 eftersom 9 = 3 × 3.<br />
P1.6 Nej, tag exempelvis x = 1 + √ 2 /∈ Q och y = 1 − √ 2 /∈ Q. Då är x + y = 2 ∈ Q.<br />
P1.7 Notera att y n = x n+1 /x n = x n−1+x n<br />
x n<br />
= x n−1<br />
x n<br />
+1 = 1/y n−1 +1. Om iterationen konvergerar mot<br />
en fixpunkt ȳ så löser den ekvationen ȳ = 1/ȳ + 1, vars lösningar ges av ȳ = (± √ 5 + 1)/2.<br />
Eftersom uppenbarligen y n > 0 så måste talföljden konvergera mot ( √ 5 + 1)/2 (om den<br />
konvergerar).<br />
P1.8 Om iterationen x n = x n−1 − (xn−1 2 − 2)/2 konvergerar mot en fixpunkt ¯x så löser den<br />
ekvationen ¯x = ¯x − ( ¯x 2 − 2)/2, vars lösningar ges av ¯x = ± √ 2. Iterationen konvergerar<br />
mot √ 2 eller − √ 2 beroende på startpunkt.<br />
P1.9 (Subtraktion) Om (x n ) ∞ n=0 och (y n) ∞ n=0 är Cauchy-följder så är (z n) ∞ n=0 = (x n − y n ) ∞ n=0<br />
också en Cauchy-följd ty |z m − z n | = |(x m − y m ) − (x n − y n )| = |(x m − x n ) − (y m − y n )| <br />
|x m − x n | + |y m − y n | < ε för m,n N och N tillräckligt stort.<br />
(Multiplikation) Om (x n ) ∞ n=0 och (y n) ∞ n=0 är Cauchy-följder så är (z n) ∞ n=0 = (x ny n ) ∞ n=0<br />
också en Cauchy-följd ty |z m − z n | = |x m y m − x n y n | = |x m y m − x m y n + x m y n − x n y n )| =<br />
|x m (y m − y n ) + (x m − x n )y n | |x m ||y m − y n | + |y n ||x m − x n | = |x m − ¯x + ¯x||y m − y n | + |y n −<br />
ȳ + ȳ||x m − x n | (|x m − ¯x| + | ¯x|)|y m − y n | + (|y n − ȳ| + |ȳ|)|x m − x n | (1 + | ¯x|)|y m − y n | +<br />
(1 + |ȳ|)|x m − x n | < ε för m,n N och N tillräckligt stort.<br />
P1.10 Om y ≠ 0 så kan y representeras av en rationell Cauchy-följd (ỹ n ) ∞ n=0 sådan att |ỹ n| ≥<br />
α > 0 för något α > 0. Om (x n ) ∞ n=0 och (y n) ∞ n=0 är Cauchy-följder så är (z n) ∞ n=0 =<br />
(x n /y n ) ∞ n=0 också en Cauchy-följd, ty |z m − z n | = |x m /y m − x n /y n | = |x m /y m − x m /y n +<br />
x m /y n − x n /y n | = |x m (1/y m − 1/y n ) + (x m − x n )/y n | |x m ||1/y m − 1/y n | + |1/y n ||x m −
56 Kapitel 8. Repetition<br />
x n | = |x m − ¯x + ¯x||y m −y n |/|y m y n |+|1/y n ||x m −x n | (|x m − ¯x|+|¯x|)|y m −y n |/α 2 +|x m −<br />
x n |/α α −2 (1 + | ¯x|)|y m − y n | + α −1 |x m − x n | < ε för m,n N och N tillräckligt stort.<br />
Datorövningar<br />
D1.1<br />
1 for x in range ( 101 ):<br />
2 print x<br />
Python code<br />
Alternativt:<br />
1 xs = [x for x in range ( 101 )]<br />
2 print xs<br />
Python code<br />
1 for x = 0:100<br />
2 x<br />
3 end<br />
MATLAB code<br />
Alternativt:<br />
1 xs = 0:100<br />
MATLAB code<br />
D1.2<br />
1 for x in range (1, 100 , 2):<br />
2 print x<br />
Python code<br />
Alternativt:<br />
Python code<br />
1 xs = [x for x in range (1, 100 , 2)]<br />
2 print xs<br />
1 for x = 1:2:100<br />
2 x<br />
3 end<br />
MATLAB code<br />
Alternativt:<br />
1 xs = 1:2:100<br />
MATLAB code<br />
D1.3<br />
1 s = 0<br />
2 for x in range ( 101 ):<br />
3 s += x<br />
4 print s<br />
Python code
8.1 Introduktion 57<br />
Alternativt:<br />
Python code<br />
1 s = sum ([x for x in range ( 101 )])<br />
2 print s<br />
1 s = 0;<br />
2 for x = 0:100<br />
3 s = s + x;<br />
4 end<br />
5 s<br />
MATLAB code<br />
Alternativt:<br />
1 s = sum (0:100)<br />
MATLAB code<br />
D1.4<br />
1 s = 0<br />
2 for x in range (1, 100 , 2):<br />
3 s += x<br />
4 print s<br />
Python code<br />
Alternativt:<br />
Python code<br />
1 s = sum ([x for x in range (1, 100 , 2)])<br />
2 print s<br />
1 s = 0;<br />
2 for x = 1:2:100<br />
3 s = s + x;<br />
4 end<br />
5 s<br />
MATLAB code<br />
Alternativt:<br />
1 s = sum (1:2:100)<br />
MATLAB code<br />
D1.5<br />
1 primes = []<br />
2 for x in range (2, 1001 ):<br />
3 is_prime = True<br />
4 for p in primes :<br />
5 if x % p == 0:<br />
6 is_prime = False<br />
7 break<br />
8 if is_prime :<br />
9 primes . append (x)<br />
10 print primes<br />
Python code
58 Kapitel 8. Repetition<br />
1 primes = [];<br />
2 for x = 2:1000<br />
3 is_prime = 1;<br />
4 for p = primes<br />
5 if mod (x, p) == 0<br />
6 is_prime = 0;<br />
7 break<br />
8 end<br />
9 end<br />
10 if is_prime<br />
11 primes = [ primes x];<br />
12 end<br />
13 end<br />
14 primes<br />
D1.6<br />
MATLAB code<br />
1 primes = []<br />
2 x = 2<br />
3 while len ( primes ) < 1000 :<br />
4 is_prime = True<br />
5 for p in primes :<br />
6 if x % p == 0:<br />
7 is_prime = False<br />
8 break<br />
9 if is_prime :<br />
10 primes . append (x)<br />
11 x += 1<br />
12 print primes<br />
Python code<br />
1 primes = [];<br />
2 x = 2;<br />
3 while length ( primes ) < 1000<br />
4 is_prime = 1;<br />
5 for p = primes<br />
6 if mod (x, p) == 0<br />
7 is_prime = 0;<br />
8 break<br />
9 end<br />
10 end<br />
11 if is_prime<br />
12 primes = [ primes x];<br />
13 end<br />
14 x = x + 1;<br />
15 end<br />
16 primes<br />
D1.7<br />
MATLAB code<br />
1 x = 1.0<br />
2 for n in range ( 100 ):<br />
3 x = (x + 2/x) / 2<br />
4 print x<br />
Python code
8.1 Introduktion 59<br />
1 format long<br />
2 x = 1;<br />
3 for n = 1:100<br />
4 x = (x + 2/x) / 2;<br />
5 end<br />
6 x<br />
MATLAB code<br />
D1.8<br />
1 x = 1.0<br />
2 TOL = 1e-10<br />
3 dx = 2* TOL<br />
4 while abs (dx) >= TOL :<br />
5 xnew = (x + 2/x) / 2<br />
6 dx = xnew - x<br />
7 x = xnew<br />
8 print x<br />
Python code<br />
1 format long<br />
2 x = 1;<br />
3 TOL = 1e -10;<br />
4 dx = 2* TOL ;<br />
5 while abs (dx) >= TOL<br />
6 xnew = (x + 2/x) / 2;<br />
7 dx = xnew - x;<br />
8 x = xnew ;<br />
9 end<br />
10 x<br />
MATLAB code<br />
D1.9<br />
Python code<br />
1 x = 0.0<br />
2 N = 1000000<br />
3 for n in range (N + 1):<br />
4 k = n<br />
5 x += 4.0*(-1)**k / (2*k + 1)<br />
6 print x<br />
MATLAB code<br />
1 format long<br />
2 x = 0;<br />
3 N = 1000000;<br />
4 for n = 0:N<br />
5 k = n;<br />
6 x = x + 4*( -1) ^k / (2* k + 1)<br />
7 end<br />
D1.10<br />
1 from pylab import *<br />
2<br />
Python code
60 Kapitel 8. Repetition<br />
3 def generate_sequence_x (N):<br />
4 x = 1.0<br />
5 xs = [x]<br />
6 for n in range (N):<br />
7 x = (x + 2/x) / 2<br />
8 xs. append (x)<br />
9 return array (xs)<br />
10<br />
11 def generate_sequence_y (N, alpha ):<br />
12 y = 1.0<br />
13 ys = [y]<br />
14 for n in range (N):<br />
15 y = y - alpha *(y**2 - 2)<br />
16 ys. append (y)<br />
17 return array (ys)<br />
18<br />
19 N = 20<br />
20<br />
21 xs = generate_sequence_x (N)<br />
22 ys0 = generate_sequence_y (N, 0.01)<br />
23 ys1 = generate_sequence_y (N, 0.1)<br />
24 ys2 = generate_sequence_y (N, 1)<br />
25<br />
26 semilogy ( range (N + 1), abs ( sqrt (2) - xs), ’-o’)<br />
27 semilogy ( range (N + 1), abs ( sqrt (2) - ys0 ), ’-o’)<br />
28 semilogy ( range (N + 1), abs ( sqrt (2) - ys1 ), ’-o’)<br />
29 semilogy ( range (N + 1), abs ( sqrt (2) - ys2 ), ’-o’)<br />
30<br />
31 xlabel (’$n$ ’)<br />
32 ylabel (’$| x_n - \ sqrt {2}|$’)<br />
33 grid ( True )<br />
34 legend ([’$( x_n )$’,<br />
35 ’$( y_n ), \\ alpha = 0. 01$ ’,<br />
36 ’$( y_n ), \\ alpha = 0.1$ ’,<br />
37 ’$( y_n ), \\ alpha = 1$ ’], loc =5)<br />
38 show ()<br />
MATLAB code<br />
1 N = 20;<br />
2<br />
3 xs = generate_sequence_x (N);<br />
4 ys0 = generate_sequence_y (N, 0.01) ;<br />
5 ys1 = generate_sequence_y (N, 0.1) ;<br />
6 ys2 = generate_sequence_y (N, 1);<br />
7<br />
8 semilogy (0:N, abs ( sqrt (2) - xs), ’-o’)<br />
9 hold on<br />
10 semilogy (0:N, abs ( sqrt (2) - ys0 ), ’-o’)<br />
11 semilogy (0:N, abs ( sqrt (2) - ys1 ), ’-o’)<br />
12 semilogy (0:N, abs ( sqrt (2) - ys2 ), ’-o’)<br />
13<br />
14 xlabel (’n’)<br />
15 ylabel (’x_n - sqrt (2) ’)<br />
16 grid on<br />
17 legend (’x_n ’, ’y_n , alpha =0.01 ’, ’y_n , alpha =0.1 ’, ’y_n , alpha =1 ’)<br />
MATLAB code
8.1 Introduktion 61<br />
1 % In separate m- file generate_sequence_x .m<br />
2 function xs = generate_sequence_x (N)<br />
3 x = 1;<br />
4 xs = [x];<br />
5 for n = 1:N<br />
6 x = (x + 2/x) / 2;<br />
7 xs = [xs x];<br />
8 end<br />
9 end<br />
MATLAB code<br />
1 % In separate m- file generate_sequence_y .m<br />
2 function ys = generate_sequence_y (N, alpha )<br />
3 y = 1;<br />
4 ys = [y];<br />
5 for n = 1:N<br />
6 y = y - alpha *(y^2 - 2);<br />
7 ys = [ys y];<br />
8 end<br />
9 end
Bibliografi<br />
[Tao06] Terence Tao. Analysis. Volym 1. Hindustan Book Agency, 2006 (se sidan 11).<br />
[Tur67]<br />
Alan Turing. “On computable numbers, with an application to the Entscheidungsproblem”.<br />
I: Proceedings of the London Mathematical Society 42 (1936–7), sidorna 230–265 (se<br />
sidan 24).