Diofantiska ekvationer - UU Studentportalen

Uppsala Universitet
Matematiska institutionen
Isac Hedén
Algebra I, 5 hp
Sammanfattning av föreläsning 7.
Vi avslutade föreläsning 6 med att visa följande samband mellan den största gemensamma
delaren och den minsta gemensamma multipeln av två heltal a och b:
ab = SGD(a, b) · MGM(a, b).
Det betyder att om man räknar ut SGD(a, b), till exempel med Euklides algoritm, så får man
även reda på MGM(a, b):
ab
.
MGM(a, b) =
SGD(a, b)
Ytterligare en observation som har med SGD att göra är följande: Både a och b är delbara
med SGD(a, b). Om vi sätter ã = a/SGD(a, b) och b̃ = b/SGD(a, b) så blir förstås ã och b̃ heltal,
och för dessa gäller det att SGD(ã, b̃) = 1. Eller med andra ord: när man har dividerat bort den
största gemensamma delaren så finns det inga gemensamma delare kvar. Vi tar ett exempel:
Exampel 0.1. I ett av våra tidigare exempel räknade vi ut att SGD(315, 56) = 7. Om vi
dividerar bort den största gemensamma delaren, så får vi kvar de två talen 315/7 = 45 och
56/7 = 8, och mycket riktigt så gäller det att SGD(45, 8) = 1.
Diofantiska ekvationer
På dagens föreläsning pratade vi om diofantiska ekvationer – målet var att bestämma alla
heltalslösningar x, y till ekvationer på formen
Ax + By = C
(1)
där A, B och C är heltal.
Steg 1: Bestäm SGD(A, B) (till exempel med hjälp av Euklides algoritm).
Steg 2: Förkorta ekvationen (1) med SGD(A, B), dvs. dividera A, B och C med SGD(A, B).
Det är klart från definitionen av SGD(A, B) att både A och B är delbara med SGD(A, B), men
det är inte säkert att C är det. Om C inte är delbart med SGD(A, B) så saknar ekvationen (1)
lösningar: Då är ju vänster led delbart med SGD(A, B), men höger led är det inte – alltså kan
vänster led och höger led inte vara lika med varandra!
Steg 3: Efter att ha genomfört steg 2, om det visade sig möjligt, får vi följande ekvation, som
är ekvivalent med ekvation (1):
ax + by = c.
(2)
Här är a = A/SGD, b = B/SGD, och c = C/SGD. Efter att ha dividerat bort den största
gemensamma delaren, har vi SGD(a, b) = 1, och därför kan vi med hjälp av Euklides algoritm
(och uppnystning) hitta heltal z och w sådana att
az + bw = 1.
(3)
Ekvation (3) kallas ibland för en hjälpekvation – den ekvation som vi egentligen vill lösa är ju
ekvation (2).
Steg 4: Genom att multiplicera z och w med c erhåller vi lösningarna x0 = cz och y0 = cw till
ekvation (2). Den allmänna lösningen ges sedan av
{
x = x0 + bn
,n∈Z
y = y0 − an
Det är enkelt att visa att dessa värden på x och y verkligen löser ekvation (1) som vi ville lösa
från början. Vi visade också på föreläsningen att det inte finns några fler lösningar än just dessa.
Exampel 0.2. Ett skrivblock kostar 50 kr och en penna 8 kr. Hur många har vi köpt av varje
om man vi handlat för 270 kr?
Lösning: Ekvationen vi har att lösa är
50x + 8y = 270.
Eftersom SGD(50, 8) = 2, dividerar vi med 2 och får den ekvivalenta ekvationen
25x + 4y = 135.
(4)
Hjälpekvationen
25x + 4y = 1
har en lösning (x, y) = (1, −6) och därmed har ekvation (4) en lösning (x, y) = (135, −810), som
erhålls från lösningen (x, y) = (1, −6) genom multiplikation med 135. Samtliga lösningar till
ekvation (4) ges då av
{
x = 135 − 4n
y = −810 + 25n.
Nu undersöker vi om det finns något värde på n som gör att x och y samtidigt är positiva.
Villkoret x ≥ 0 är ekvivalent med n ≤ 33 och villkoret y ≥ 0 är ekvivalent med n ≥ 33. Den
enda möjligheten är alltså att n = 33, och det svarar mot lösningen (x, y) = (3, 15). Svar: Vi
köpte 3 block och 15 pennor.
Anmärkning: Lägg märke till att ekvationen ax + by = c är ekvationen för en linje i planet.
Lösningar till den diofantiska ekvationen ax + by = c motsvarar punkter den på linjen med
heltalskoordinater. Antingen finns det inga sådana eller så finns det oändligt många.
Representation av tal i olika baser
Det vanliga sättet att skriva ett heltal på är att välja ut ett antal siffror ur mängden
{0, 1, 2, 3, 4, 5, 6, 7, 8, 9}
och sedan skriva dem på rad efter varandra – till exempel 378 127. Men vad betyder det egentligen? Jo,
378 127 = 3 · 105 + 7 · 104 + 8 · 103 + 1 · 102 + 2 · 101 + 7 · 100 .
Värdet av varje siffra erhålls genom multiplikation med 10i , där potensen i startar på noll vid
den sista siffran, och sedan ökar med ett för varje steg vi går åt vänster i sifferföljden. Att ange
ett tal på det sättet är att ange det i bas 10. Man skriver det i tiosystemet.
Men det finns inte något matematiskt skäl att välja just tio som bas. Vi kunde lika gärna
ha valt någon annan bas B ≥ 2. Då väljer vi ”siffror” från mängden {0, 1, 2, 3, 4, . . . , B − 1} och
varje siffra i ett tal får sitt värde genom multiplikation med B i där potensen i startar på 0 vid
den sista siffran, och sedan ökar med ett för varje steg vi går åt vänster i sifferföljden. Givet
ett visst heltal kan vi skriva det i olika baser – om vi väljer en stor bas så kommer sifferföljden
att bli kort men vi kommer istället att behöva många olika siffror, om vi väljer en liten bas så
behövs bara några få siffror men då blir sifferföljden istället längre.
När man anger ett tal i en viss bas, brukar man skriva
(an an−1 an−2 . . . a2 a1 a1 a0 )B
ifall basen B inte är underförstådd.
Exampel 0.3.
(127)åtta = 1 · 82 + 2 · 81 + 7 · 80 = 64 + 16 + 1 = (81)tio .
När man skriver i basen åtta är det förstås bara tillåtet att använda siffror från mängden
{0, 1, 2, 3, 4, 5, 6, 7}.
En naturlig fråga då är följande: Givet ett tal skrivet i en viss bas, hur skriver vi det i en
annan bas? Ett bra sätt är att gå via basen tio: som exemplet ovan visade så är det ”enkelt”
att gå till bas tio – det är ju bara att beräkna
an B n + an−1 B n−1 + an−2 B n−2 + . . . + a2 B 2 + a1 B + a0 .
Lite omständigare är det att gå från tio till en annan bas. Receptet för att skriva ett tal x i
basen B lyder som följer:
Börja med att skriva upp alla potenser 1, B, B 2 , B 3 , B 4 , . . . , B N av B som är mindre än
eller lika med x. Skrivet i basen B kommer x att ha N + 1 siffror. Dividera x med B N med
kvot och rest:
x = aN B N + x1
för att få siffran aN som hör till potensen B N . På grund av valet av N , kommer den att uppfylla
1 ≤ aN ≤ B − 1. Upprepa sedan samma sak med resten x1 : Division av resten x1 med B N −1
ger siffran aN −1 som hör till potensen B N −1 :
x1 = aN −1 B N −1 + x2 .
Efter att ha upprepat denna procedur N + 1 gånger får vi siffror aN , aN −1 , aN −2 , . . . , a1 , a0 som
alla uppfyller 0 ≤ ai ≤ B − 1, och en rest xn+1 som är noll, eftersom vi i sista steget dividerade
med B 0 = 1. Sammanfattningsvis har vi alltså:
(x)tio = (aN aN −1 . . . a1 a0 )B ,
där sifferföljden aN , aN −1 , . . . , a1 , a0 produceras enligt det ovan angivna receptet.
1. Skriv talet 17693 i basen 7.
Lösning: Vi börjar med att skriva upp de potenser av 7 som är mindre än 17693:
i
0
1
2
3
4
5
7i
1
7
49
343
2401
16807
Sedan undersöker vi hur många av de olika 7-potenserna som får plats i 17693:
17693 = 1 · 75 + 886
886 = 0 · 74 + 886
886 = 2 · 73 + 200
200 = 4 · 72 + 4
4 = 0 · 71 + 4
4 = 4 · 70 + 0.
Det följer att (17693)tio = (102404)sju . För att kontrollera vårt svar bör vi först undersöka om
de siffror som vi använder är tillåtna – när vi skriver i bas 7, är siffrorna 0, 1, 2, 3, 4, 5 och 6
tillåtna. För det andra bör vi beräkna värdet av vårt svar, och se att det stämmer:
(102404)sju = 1 · 75 + 0 · 74 + 2 · 73 + 4 · 72 + 0 · 71 + 4 · 70
= 16807 + 2 · 343 + 4 · 49 + 4
= 17693.
2. Skriv talet 25362 i basen 13.
Lösning: Det första problemet vi ställs inför är att hitta 13 symboler för de siffror som är tillåtna
när vi skriver ett tal i bas 13. Det vanliga är att man kallar dem {0, 1, 2, 3, 4, 5, 6, 7, 8, 9, A, B, C}
där A = 10, B = 11 och C = 12.
De första potenserna av 13 är
13
i
0
1
2
3
4
i
1
13
169
2197
28561
Sedan ser vi efter hur många av de olika 13-potenserna som får plats i 25362:
25362 = 11 · 133 + 1195
1195 = 7 · 132 + 12
12 = 0 · 131 + 12
12 = 12 · 70 + 0
Det följer att (25362)tio = (B70C)tretton . Nu återstår det att kontrollera att vi endast har använt
tillåtna siffor (vilket är fallet), samt att talet har rätt värde:
(B70C)tretton = 11 · 133 + 7 · 132 + 0 · 13 + 12 · 130
= 24167 + 1183 + 0 + 12
= 25362.