Modulair rekenen

TERUGHome.html
Modulair rekenen

Modulair rekenen

Modulair rekenen (of rekenen modulo) betekent dat je geheeltallig rekent met een getal dat als bovengrens fungeert, dat getal is de modulus. Bij modulair rekenen met de modulus m (of rekenen modulo m), wordt gerekend met de getallen 0, 1, 2, … , m-1, waarna weer met nul wordt begonnen. De m getallen 0 t/m m-1 staan als het ware in een cirkel. Het resultaat van een berekening modulo m is de rest van het resultaat bij gewone berekening na deling door de modulus m.

Voorbeeld met de modulus 7 (m =  7):


Je rekent dus met de zeven getallen: 0, 1, 2, 3, 4, 5 en 6.


5 · 4 (mod 7) ≡ 6 ,  want 5 · 4 = 20  20 : 7 = 2, rest 6

8 · 4 (mod 7) ≡ 4 ,  want 8 · 4 = 32  32 : 7 = 4, rest 4


als de modulus bekend is, mag deze weg gelaten worden:


12 · 3 ≡ 1 ,  want 12 · 3 = 36  36 : 7 = 5, rest 1


Getallen, die een veelvoud van de modulus m zijn, noemen we congruent modulo m.


=> 16 is niet congruent modulo 7, want 16 is geen veelvoud van 7

=> 28 is congruent modulo 7, want 28 is een veelvoud van 7


Je kunt ook met negatieve getallen modulair rekenen:


-3 · 8 (mod 5) ≡ 4 ,  want -3 · 8 = -24  -24 : 5 = -4, rest 4


Definitie:  n є N , n > 0


a ≡ b  (mod n)[de haakjes mogen weggelaten worden]


<=> a én b zijn congruent modulo n, als a – b is een veelvoudvan n is.

Toepassingen

klokken


het rekenen met tijd bij klokken gaat met modulus 12 of modulus 24


een analoge klok geeft de tijd in een tijdsperiode van 12 uur aan: stel dat het 10 uur in de ochtend is en je wilt weten hoe laat het is over 5 uren.


    berekening: 10 + 5 (mod 12) ≡ 3, dus 3 uur in de middag


een digitale klok geeft doorgaans de tijd aan in een periode van 24 uur. Het is nu 17:30u. Hoe laat is het over 100 uur?


     berekening: 17 ½ + 100 (mod 24) = 117½ (mod 24) = 21, dus het zal dan 9 uur in de middag zijn

computers


berekeningen in computers vinden plaats met de modulus 2n, waarbij n het aantal bits is van de computer of het besturingssysteem. Huidige computers werken met 32-bits of 64-bits, dus met de modulus van 232 en 264. In he algemeen kun je zeggen: hoe meer bits, hoe sneller. Soms wordt het niet-modulair rekenen wel ondersteund, maar dat gaat ten koste van de prestaties van de computer of andere apparaat.

bankzaken


bij onze Zuiderburen (de Belgen) hebben overschrijvingen en bankrekeningnummers als laatst twee cijfers een controlegetal dat modulo 97 congruent is met de voorgaande cijfers. In normaal Nederlands: het getal zonder de laatste twee cijfers gedeeld door 97 levert een getal op bestaand uit de laatste twee cijfers.