MAAA26 Block 3
02/25/2006 12:39 AM
MAAA26
Diskret Matematik för Yrkeshögskoleutbildning-IT
Block 3
Tal och aritmetik I
BLOCK INNEHÅLL
Referenser
Nyckelord
Referenser
Inledning
1. Divisionssatsen
2. Talsystem
3. Primtal och delare
[EG] avsnitt 3.1, 3.2;
[D]
avsnitt 3.1, 3.2;
[EG] avsnitt 3.3 (t.o.m. delavsnitt 3.3.3);
och nedanstående text.
Delare
Primtal
Nyckelord
Primtalsfaktorisering
Delargrafen
4. Övningar
Decimala talsystemet, det binära och det hexadecimala talsystemen,
divisionsalgoritmen för division av heltal med kvot och rest. Delare, primtal och
primtalsfaktorisering.
Assignment 3
Inledning
I detta block skall vi se på, hur vårt talsystem är uppbyggt, och vi introducerar det binära och det hexadecimala
talsystemen, som båda används inom t.ex. datalogi. Vi skall också lära oss att räkna i dessa två nya talsystem, och vi
kommer att utveckla algoritmer för att konvertera tal från ett talsystem till ett annat. Därnäst skall vi gå igenom delare
och primtal och vi skall lära oss rita delargrafen för ett heltal.
1. Divisionssatsen
Läs nu avsnitt 3.1 i [EG], det handlar om division med kvot och rest.
Grundläggandet för att konvertera ett tal i 10-talssystemet till ett tal i talsystemet med bas N är följande mycket
viktiga egenskap vid division med heltal, som är sats 3.1 i [EG], den går under namnet Divisionssatsen :
Sats 3.1 i [EG] (Divisionssatsen).
Givet ett godtyckligt heltal a och ett heltal N, där N 0, så existerar det entydigt bestämda heltal k och r (som kallas
kvoten och resten) sådana att a=kN+r och 0 r |N|-1.
Du känner säkert redan till en del av detta resultat, det säger, att när man dividerar ett heltal med ett positivt heltal N,
så kan man arrangera det så att man alltid får en rest bland talen 0,1, ... , N-1. [EG] kallar denna resten för den
principala resten.
Exempel
Tag till exempel a=23 och N=3, då får man kvoten 7 och resten 2, eftersom 23=7 3 +2.
Om man delar a=25 med N=3, så får man kvoten 8 och (principala) resten 1, eftersom 25=(8) 3 +1.
Om man delar a=-25 med N=3, så får man kvoten -9 och (principala) resten 2, eftersom -25=(-9) 3 +2.
Om man delar a=25 med N=-3, så får man kvoten -8 och (principala) resten 1, eftersom 25=(-8) (-3) +1.
Om man delar a=-25 med N=-3, så får man kvoten -9 och (principala) resten 2, eftersom -25=(9) (-3) +2.
http://www.tfm.miun.se/~piahei/dmy/res/dmy3p.html
Page 1 of 7
MAAA26 Block 3
02/25/2006 12:39 AM
Vi skall inte bevisa Divisionssatsen på denna kurs, men du skall känna till resultatet och du skall kunna formulera
satsen. Du skall också kunna hitta kvoten och (principala) resten då a delas med N med hjälp av divisionsalgoritmen
som [EG] demonstrerar i Metod 3.1 på sidan 37.
Övning B3.1
Hitta den enligt Divisionssatsen entydigt bestämda kvoten och (principala) resten, när a delas med N, där
a=12 och N=7;
Svar!
a=-12 och N=7;
Svar!
a=22 och N=3;
Svar!
a=-22 och N=3;
Svar!
a=-22 och N=-3;
Svar!
a=22 och N=-3.
Svar!
2. Talsystem
Vi skall nu lära oss om talssystem och talbaser, men innan vi läsar avsnitt 3.2 i [EG] är det en bra idé att läsa avsnitt
3.1 och 3.2 i [D] för att repetera aritmetik med rötter och potenser.
Övning B3.2
Lös uppgift 3.1 - 3.4, 3.6 - 3.10 i [D].
Läs nu avsnitt 3.2 i [EG] om baser för systemet av heltal och hur man konverterar från en bas till en annan.
2. Primtal och delare
Läs nu avsnitt 3.3 i [EG] t.o.m. delavsnitt 3.3.3:
Delare
Delavsnitt 3.3.1 handlar om delare. Ett heltal b 0 sägs vara en delare (också kallad en faktor) till heltalet a, om det
finns ett heltal k, som vi kallar kvoten, sådan att a=bk. Med andra ord är b en delare till a om man får (principala)
resten 0 då man delar a med b. Med matematiska symboler skriver vi detta på formen
b|a
och vi läser det som 'b delar a'. Om ett heltal b inte är en delare till a, indikerar vi detta genom att sätta ett streck över
'|'-symbolen, dvs. vi skriver
b a
och läser detta som 'b delar inte a'. Observera att det lodräta strecket i denna notation inte är ett bråkstreck, 'b | a'
skall inte förväxlas med 'b/a'.
http://www.tfm.miun.se/~piahei/dmy/res/dmy3p.html
Page 2 of 7
MAAA26 Block 3
02/25/2006 12:39 AM
Vi difinierar också ett specialfall: 0 sägs vara en en delare till 0, men 0 är inte delare till något annat heltal.
Du skall kunna följande fundamentala resultat för delare:
Sats B3.1.
Låt m, n och c vara heltal sådana att c | m och c | n.
Då gäller att c | (m+n) och c | (m-n).
Bevis.
Eftersom m och n bägge har c som delare kan vi hitta två kvoter q1 och q2 , bägge heltal, sådana att
m=cq1 och n=cq 2 . Därför är
m+n=cq1 +cq 2 = c(q 1 +q 2 ),
så c är alltså en faktor i m+n, dvs. c | (m+n).
På samma sätt har vi att m-n=cq 1 -cq 2 =c(q 1 -q2 ), så c är också en faktor i m-n, dvs. c | (m-n).
Exempel
2 delar 4 och 2 delar 6, så 2 delar 10 och -2.
Sats B3.2.
Låt m, n och c vara heltal, som uppfyller att c | m och m | n.
Då har vi att c | n.
Bevis.
Eftersom m har c som delare kan vi hitta en heltalskvot q1 sådan att
m=cq1 . På samma sätt har vi att n har m som delare, så det existerar också ett heltal q2 sådant att n=mq 2 .
Vi har därför att n=mq2 =(cq1 )(q2 )=c(q1 q2 ), och c är därför också en faktor i n, dvs. c | n.
Exempel
2 delar 4 och 4 delar 20, så 2 delar 20.
Exempel
Om du vet att 2 inte delar heltalet k, så vet du också att 4 inte delar k.
Primtal
Om b | a säger vi att a är en multipel av b, och uttrycket a=bk kallas en faktorisering av a.
Talen 1 och -1 är speciella heltal, när vi talar om faktorisering, eftersom de delar alla heltal. Vi har därför ett speciellt
namn för dessa två tal, de är så kallade enheter i . Varje heltal a har naturligtvis de två triviala faktoriseringarna
a=(a)(1) och a=(-a)(-1),
dvs. 1, -1, a, och -a är alltid delare till heltalet a om a 0. Vi kallar ett heltal b 0 för en äkta delare till a, om b | a
och b inte är en av delarna 1, -1, a, eller -a. I delavsnitt 3.3.2 i [EG] definieras en delmängd av de positiva heltalen
som kallas för de sammansatta talen, dessa har en äkta delare. Ett primtal är ett positivt heltal, som inte är en enhet
och inte har äkta delare.
Exempel
6 är ett sammansatt tal, eftersom 6=(2)(3) och 6 har därför 2 och 3 som äkta delare.
1 är inte ett sammansatt tal, eftersom de enda delarna till 1 är -1 och 1 själva.
http://www.tfm.miun.se/~piahei/dmy/res/dmy3p.html
Page 3 of 7
MAAA26 Block 3
02/25/2006 12:39 AM
2 är ett primtal, eftersom 2 inte är en enhet och de enda delarna till 2 är 1, -1, 2 och -2, så 2 har inga äkta
delare.
1 är inte ett primtal, eftersom det är en enhet.
Matematiker har ända sedan antiken forskat om primtal, men trots detta finns det än i dag många olösta problem
omkring primtal. Ett av de största problemen var länge att hitta en snabb algoritm för att bestämma om ett givet heltal
n är ett primtal eller ej. Detta problem blev dock löst 2002 av två studenter vid Indian Institute of Technology i
Kanpur vid namn Kayal och Saxena, när de hittade den så kallade AKS-algoritmen tillsammans med deras
handledare Agrawal. Vi skall inte lära oss AKS-algoritmen på denna kurs, men det är bra att veta att den existerar,
om du skulle få användning för den i framtiden. Låt oss i stället se på några primtalstest som fungerar för små tal, där
problemet inte är så stort och svårt, att det är nödvändigt med smarta algoritmer. Man kan t.ex. prova sig fram med
alla möjliga delare:
Exempel
Låt oss undersöka, om 151 är ett primtal.
Vi kan självklart lösa detta problem genom att dela 151 med alla talen 2, 3, 4, 5, 6, ..., 150 och därmed kontrollera om
ett av dessa delar 151; men detta kräver 149 divisioner och tar lång tid! Om vi tänker oss för, kan vi kanske hitta på
en mer effektiv metod...
Vi observerar först, att 2 inte delar 151. Är det då möjligt att 4 delar 151? Eller 6? Eller 8, 10, 12, 14,..., 150?
Svaret är nej, eftersom det ur sats B3.2 följer, att om heltalet 2k delar 151, då delar 2 också 151 eftersom 2 delar 2k. På
liknande sätt ses, att eftersom 3 inte delar 151, så delar ingen multipel av 3 talet 151 heller.
Slutsatsen är, att vi, på grund av sats B3.2, endast behöver kontrollera, om alla primtal mindre än 151 är delare till
151. Detta reducerar problemet en hel del, men det är fortfarande för många tal att kontrollera, så vi tänker oss för lite
till...
. . . och vi inser då, att om det finns två heltal a och b, sådana att 151=ab, måste minst ett av dessa vara mindre än
eller lika med 13 (Varför? Ledning: om både a och b är större än 13, hur stort är talet ab då?).
Vi kan därför nöja oss med att kontrollera om 2, 3, 5, 7, 11 och 13 delar 151, och eftersom inget av dem gör det, kan
vi dra slutsatsen att 151 är ett primtal. Det krävs alltså endast 6 divisioner för att slå fast att 151 är ett primtal.
Exempel
Hur många divisioner krävs för att kontrollera om 397 är ett primtal? Svar: 8
(nämligen division med 2, 3, 5, 7, 11, 13, 17 och 19)
Metoden från föregående exempel med att kontrollera alla möjliga primtalsdelare upp till n är tillräckligt bra för att
kontrollera om små tal n är primtal; men om n är ett stort tal, t.ex. med 1000 siffror eller fler, så är denna metod inte
tillräckligt effektiv, inte ens med hjälp av dagens snabbaste datorer. Det är ett öppet forskningsproblem, om det
existerar en mycket snabb algoritm som kan faktorisera alla heltal, även mycket stora, dvs. skriva dem som en
produkt av två äkta delare. Ett av nutidens mest använda krypteringssystem (ett krypteringssystem är ett system för
utväxling av hemliga meddelanden), det så kallade RSA-krypteringssystem, bygger på, att faktorisering av stora tal är
ett mycket svårt matematisk problem, så om du har lust, tid och goda ideer finns det här en möjlighet till att bli
berömd!
http://www.tfm.miun.se/~piahei/dmy/res/dmy3p.html
Page 4 of 7
MAAA26 Block 3
02/25/2006 12:39 AM
Primtalsfaktorisering
Vi presenterar nu en mycket viktig egenskap hos primtal:
Sats B3.3.
Låt m och n vara heltal som båda är skilda från noll, och låt p vara ett primtal så att p | mn, då gäller
antingen att p | m eller att p | n (eller p delar båda).
Exempel
Låt m = 36, då finns det många olika faktoriseringar av 36 med två faktorer, t.ex.
36 = 36·1 = 18·2 = 12·3 = 9·4 = 6·6 = (-6)·(-6) = (-9)·(-4) = . . .
De enda primtal, som är delare till 36 är -2, 2, -3 och 3, och sats B3.3 säger, att varje gång vi har en faktorisering av
36 med två faktorer, så delar dessa minst en av faktorerna. Tag t.ex. p=3: i faktoriseringen 36·1 delar 3 den första
faktorn, i faktoriseringen 18·2 delar 3 den första faktorn, i faktoriseringen 12·3 delar 3 den första och också den andra
faktorn, etc.
Vi skall inte bevisa sats B3.3 på denna kurs, men du skall känna till resultatet och du skall kunna formulera satsen.
Exempel
Sats B3.3 är inte sann om inte p är ett primtal. T.ex. har vi att 6 | 36 och att 36=4·9, men 6 delar varken 4 eller 9.
Nederst på sidan 43 i [EG] presenteras en av algebrans huvudsatser. Den säger att alla heltal är uppbyggda av primtal.
Vi ska inte bevisa denna sats på den här kursen, men nämner, att sats B3.3 är en av hörnstenarna i beviset:
Sats 3.2 i [EG] (Aritmetikens fundamentalsats)
Varje heltal (utom noll) kan skrivas som en produkt av precis en enhet och ett ändligt antal primtal.
Det gäller ytterligare, att denna faktorisering är entydig sånär som på faktorernas ordning.
Exempel
Vi skriver 6 som en produkt av en enhet och primtal:
6 = (1)(2)(3),
enheten är här 1, och det är två primtalsfaktorer, nämligen 2 och 3. Att faktoriseringen är entydig sånär som på
faktorernas ordning betyder att de sex faktoriseringarna
6 = (1)(2)(3) = (1)(3)(2) = (2)(1)(3) = (2)(3)(1) = (3)(1)(2) = (3)(2)(1)
alla uppfyller satsens betingelser; men att vi inte räknar dem som fundamentalt olika.
Exempel
Vi skriver -6 som en produkt av en enhet och primtal:
-6 = (-1)(2)(3),
enheten är här -1, och det är två primtalsfaktorer, nämligen 2 och 3.
Delargrafen
I delavsnitt 3.3.3 visar [EG] hur man ritar delargrafen för ett positivt heltal. Du skall kunna rita en sådan delargraf.
4. Förslag till övningsuppgifter
http://www.tfm.miun.se/~piahei/dmy/res/dmy3p.html
Page 5 of 7
MAAA26 Block 3
02/25/2006 12:39 AM
Övningar i texten ovan.
Övningar från [EG] kapitel 3:
3.2, 3.3(a)-(b),
3.4, 3.5, 3.6, 3.7,
3.9, 3.11, 3.12, 3.13, 3.14,
3.16, 3.17, 3.18, 3.37.
Assignment 3
Please click here to get to the information page explaining when and how to send in this assignment for marking.
Please follow the instructions carefully.
Uppgift 1
(a) Uttryck det binära talet (101011001011)2 som
(i) ett decimaltal;
(ii) ett oktaltal;
(iii) ett hexadecimaltal.
(b) Uttryck decimaltalet 17823 som
(i) ett oktaltal;
(ii) ett binärtal;
(iii) ett hexadecimaltal.
(c) Antag att de decimala heltalan x och y är representerade i det binära talsystemet genom
x = (a n a n-1 a n-2 . . . a 1 a 0 ) 2 och;
y = (a n a n-1 a n-2 . . . a 1 a 0 0 0) 2 .
Hur är x och y relaterade till varandra som decimala tal?
Uppgift 2
Primtalsfaktorisera talen 4774 och 6851. (Visa dina uträkningar!)
Uppgift 3
Rita delargrafen för 12.
http://www.tfm.miun.se/~piahei/dmy/res/dmy3p.html
Page 6 of 7
MAAA26 Block 3
02/25/2006 12:39 AM
This is the 1st Edition of the study guide for Block 3 of Discrete Mathematics for the Vocational Study
Programme in Information Technology, written by Pia Heidtmann in 2006. The study guide may be printed
for personal use by anybody with an interest.
This study guide and any parts of it and any previous and future versions of it must not be copied or
disseminated in any printed or electronic form or stored on any publicly accessible website other than
http://www.tfm.miun.se/~piahei/dmy/res/ without permission from the author.
The author welcomes comments and corrections via email. All contributions incorporated in updates of the
manuscript will be acknowledged.
© Pia Heidtmann
MID SWEDEN UNIVERSITY
Department of Engineering, Physics and Mathematics
Mid Sweden University
S-851 70 SUNDSVALL
Sweden
Updated 060220
http://www.tfm.miun.se/~piahei/dmy/res/dmy3p.html
Page 7 of 7