Modulær aritmetikk er basert på å telle 1,2,3 og så videre opp til et tall n hvor man starter med 1 igjen. Tallet n kalles modulus for denne tellemåten. Med denne endelige tallmengden kan man utføre de fire vanlige regneoperasjonene som dermed definerer en ny aritmetikk.
Ved bruk av en vanlig klokke utfører man ubevisst modulær addisjon og subtraksjon med modulus n = 12. Hvis klokken for eksempel viser 5, vil den vise 2 etter 9 timer. På tilsvarende vis ville den ha vist 8 hvis den hadde blitt avlest 9 timer tidligere. Med matematisk notasjon ville man uttrykke disse to fastsettelsene av tidspunktene som 5 + 9 ≡ 2 (mod 12) og 5 - 9 ≡ 8 (mod 12). Det betyr at regneoperasjonene gjøres «modulo» tolv, det vil si med modulus 12. Modulær aritmetikk blir derfor noen ganger omtalt som «klokkearitmetikk».
For å angi alle timene i et helt døgn ville man på samme vis bruke en modulus n = 24 for å skille mellom timer om natten og om dagen. Den samme, modulære aritmetikken benyttes også når man angir antall grader i en vinkel hvor n = 360° benyttes.
Det var Carl Friedrich Gauss som etablerte modulær aritmetikk som en viktig del av moderne matematikk i sitt store verk Disquisitiones Arithmeticae på begynnelsen av 1800-tallet. Her undersøkte han grunnlaget for konstruksjon av regulære mangekanter. Slike polygoner har samme geometri eller symmetri som en klokke. I vår tid benyttes modulær aritmetikk innen informatikk som en bestanddel av de viktigste programmeringsspråkene og spiller en sentral rolle i moderne kryptografi. Dessuten inngår den ved bestemmelsen av kontrollsiffer i personnummer samt sjekking av tallene som inngår i ISBN- og IBAN-systemene.
Heltallsdivisjon
Når man er gitt en viss modulusn, kan man for hvert annet heltallx dele dette med n ved bruk av heltallsdivisjon. Resultatet gir da vanligvis en rest r slik at resultatet kan skrives som
hvor heltallet a er kvotienten. Resten bestemmes slik at den oppfyller 0 ≤ r < n. Hvis for eksempel n = 6 og x = 17, så er 17 = 6⋅2 + 5 slik at resten r = 5. Når resten er null, sier man at divisjonen «går opp». Da er n en faktor av x.[1]
I modulær aritmetikk omtaler man resultatet av denne divisjonen som at 17 er 5 modulo 6. Det skrives som 17 mod 6 = 5. I det generelle tilfellet har man da at
Hvis dividenden x økes med et helt antall m av modulusen, vil ikke resten forandres. Derfor har man at
hvor heltallet m også kan være negativt. For eksempel er -13 mod 5 = (2 - 3⋅5) mod 5 = 2.
For å beregne summen x + y modulo n kan man benytte uttrykket
Det følger fra å skrive x = na + r og y = nb + s der r = x mod n og s = y mod n. Da blir (x + y) mod n = (r + s) mod n som gir formelen. Slik kan også beregningen av produktet xy mod n gjøres enklere når tallen x og y er spesielt store.[2]
Potenser
En potens av et tall kan bli veldig stor når eksponenten blir stor og vil da være krevende å regne ut. Men med modulær aritmetikk kan ikke resultatet bli større enn modulus og beregningen er enklere. Man kan da benytte at
som følger fra å skrive x = an + r slik at x mod n = r. Ved bruk av binomialformelen for xm vil da kun leddet rm bidra da alle andre ledd inneholder n som faktor. Derfor blir også
Dette kan illustreres ved å regne ut for eksempel 59 mod 7. Man kan da benytte at 52 mod 7 = 25 mod 7 = 4 slik at
Nå er 59 = 51 + 4 + 4 slik at man har
På denne måten kan beregning av høye potenser betraktelig forenkles.[2]
Aritmetiske kongruenser
To heltall x og y som gir den samme resten r når de divideres med n, sier å være kongruente med hverandre modulo n. Det skrives som
Her virker nå modulo-operasjonen på begge sider av ekvivalenstegnet. Det betyr at x = an + r og y = bn + r hvor a og b igjen er heltall. Resten oppfyller 0 ≤ r < n. To tall er dermed kongruente når deres differens kan deles med modulus n. Denne egenskapen kan derfor også defineres ved at (x - y) mod n = 0 som betyr at x mod n = y mod n. Hvis tallene ikke er kongruente med hverandre, sies de å være «inkongruente» for denne modulusen.[3]
Som en eksempel kan man betrakte tallene 5 og 11. Med modulus n = 3 er 5 mod 3 = 2 og 11 mod 3 = 2. Derfor er 5 ≡ 11 (mod 3) slik at de er kongruente. Derimot modulo 4 er de to tallene inkongruente med hverandre.
Fra definisjonen følger at kongruenser modulo ett og samme tall kan legges til og trekkes fra hverandre. De kan også multipliseres sammen som om de skulle være vanlige likheter. Det betyr at hvis a ≡ b (mod n) og c ≡ d (mod n), så er
Hver side av en kongruens kan multipliseres med samme tall. Man kan også dividere hver side med samme tall forutsatt at dette tallet er relativt primisk med modulusen.
Eksempel
Hvis modulus n = 5 og man betrakter de to tallene 13 og 16, så er deres sum modulo 5
Når addendene er store, kan man først redusere dem ved å benytte at 13 ≡ 3 (mod 5) og 16 ≡ 1 (mod 5) slik at 13 + 16 ≡ 3 + 1 (mod 5) = 4.
Betrakter man istedet produktet av disse to tallene, er
Men dette resultatet kommer også frem ved å ta produktet mellom de kongruente tallene, 13⋅16 ≡ 3⋅1 (mod 5) = 3.
Ved divisjon må man være mer påpasselig. Selv om 45 ≡ 15 (mod 10), så er 9 inkongruent med 3 modulo 10. Derimot er 46 ≡ 18 (mod 7) som betyr at 23 ≡ 9 (mod 7) når man dividerer kongruensen med 2 på begge sider. Det er tillatt når denne faktoren er primisk med modulusen.
Kongruensklasser
Kongruens mellom to tall er en ekvivalensrelasjon for en gitt modulus som gjør det mulig å dele alle heltalleneZ opp i ekvivalente klasser. Disse kalles da vanligvis for kongruensklasser eller restklasser.
Hvis n er modulus, betegner (n) eller nZ den klassen som inneholder tallene
De er alle kongruente med tallet 0. Tilsvarende vil alle tallene som er kongruente med tallet a, tilhøre kongruensklassen (n) + a. Man vil dermed få n forskjellige klasser representert ved tallene {0, 1, 2, 3, .. , n - 1}.
Hver slik konkruensklasse kan nå betraktes som et nytt, matematisk objekt og kan betegnes ved det tallet som representerer det. Når for eksempel n = 3, har man de tre klassene 0, 1 og 2. De kan kombineres ved addisjon ved at et representativt tall fra hver klasse adderes modulo n. Med n = 3 vil da 1 + 1 = 2 og 1 + 2 = 0. Klassene utgjør derfor en abelsk gruppe under addisjon hvor klassen 0 = (n) er enhetselementet. De danner på denne måten faktorgruppenZ/(n) = Z/nZ. Ofte skrives dette mer kompakt som Zn da restklassene også er en syklisk gruppe med n element.[1]
Enheter og nulldivisorer
Man kan også multiplisere sammen kongruensklasser ved å modulært multiplisere representanter for hver av klassene. For eksempel når modulus n = 6, blir
Under multiplikasjon utgjør derfor alle restklassene en matematisk ring med 1 = (n) + 1 som enhetselement. Den inneholder n element og kan bli oppdelt i enheter og nulldivisorer. En enhet er definert ved å ha en invers. Det betyr at den er relativt primisk til modulus n. Deres antall er derfor gitt ved Eulers totientfunksjonφ(n). Resten av elementene er nulldivisorer.[4]
For eksempel, for n = 6 er 1 og 5 enheter, mens 0, 2, 3, 4 er nulldivisorer. Det kan man se fra at 2⋅3 = 3⋅4 = 0. På samme måte inneholder Z12 enhetene 1, 5, 7 og 11. De resterende 8 elementene er nulldivisorer. Produktet av to enheter er en ny enhet illustrert ved 5⋅7 = 11 i Z12. Sammen danner de en abelsk gruppe som kalles enhetsgruppen og betegnes (Z/nZ)× med φ(n) element.
I det spesielle tilfelle at modulus er et primtallp, er 0 den eneste nulldivisor i ringen. Da har hvert element a en multiplikativ invers a-1 = 1/a som oppfyller at a⋅a-1 = 1. I såfall går ringen Z/pZ over til å bli en endelig tallkropp og betegnes som Fp eller GF(p). Velger man for eksempel p = 7, er 2⋅4 = 1 slik at 2-1 = 1/2 = 4 og derfor 3/2 = 3⋅4 = 5. Videre er 1/3 = 5 slik at 1/5 = 3, mens 6 er sin egen invers da 6⋅6 = 1.
Slike tallkropper er av stor betydningen innen kryptografi.[5]
Fermats lille teorem
Den endelige tallkroppen Fp inneholder p element. Ser man bort fra elementet 0, danner de resterende p - 1 elementene en endelig gruppe hvor elementene kombineres ved multiplikasjon og har 1 som enhetselement. Denne betegnes vanligvis som (Fp)× eller GF×(p).[5]
Hvis man betrakter et element a, vil det gi p - 1 forskjellige element når det multipliseres med seg selv. Tilsammen utgjør de en syklisk gruppe. Dette kan illustereres for p = 5 ved å betrakte for eksempel elementet 2. Da er 2⋅2 = 22 = 4, 23 = 4⋅2 = 3, 24 = 3⋅2 = 1. Hadde man i stedet valgt a = 3 eller 4, ville igjen 34 = 44 = 1. Dette skjer alltid når p er et primtall slik at gruppen blir syklisk.
Generelt kan man da betrakte et vilkårlig element a i gruppen med en viss orden k. Denne er definert ved at ak = 1. Ifølge Lagranges teorem er dette tallet k en faktor i det totale antall gruppeelement. Det betyr at p - 1 = k m hvor m et et eller annet heltall. Dermed har man med en gang at
Det representative tallet a i konjugasjonsklassen oppfyller derfor
der a ikke skal være delbar med p. For eksempel med p = 7 er 26 = 64 ≡ 1 mod 7. Dette er Fermats lille teorem som har stor betydning i tallteori.[1]
Wilsons teorem
John Wilson var student ved Universitetet i Cambridge rundt år 1770 da en formulerte et nytt teorem i modulær aritmetikk. Det ble bevist av Lagrange noen få år senere og gjelder når modulus p er et primtall. Da er
når det uttrykkes ved fakultetsfunksjonenn! = 1⋅2⋅3⋅...⋅n. Alternativt kan man si at (p - 1)! + 1 er delelig med p når p er et primtall. Har man for eksempel p = 5, så finner man 4! = 24. Nå er 24 + 1 = 25 som er deilig med 5 i overensstemmelse med teoremet.[6]
Et enkelt bevis kan baseres på at restklassene {1, 2, 3, ... , p-1} er elementer i gruppen (Fp)×. Da hvert element a av disse har sin egen invers a-1, kan produktet 2⋅3⋅ ... ⋅p - 2 omskrives som (p - 3)/2 produkt av delprodukt på formen a⋅a-1 = 1 som dermed også blir verdien til hele produktet. Resultatet er da
hvor p - 1 ≡ -1 (mod p) som gir innholdet av teoremet.
Som en konkret illustrasjon av denne argumentasjonen, kan man betrakte p = 11. Da finner man ved direkte utregning de inverse elementene 2-1 = 6, 3-1 = 4, 5-1 = 9 og 7-1 = 8 slik at
På lignende måte kan man bevise at for en ikke-primisk modulus n > 4 vil (n - 1)! ≡ 0 (mod n). I det spesielle tilfellet at n = 4, blir 3! = 6 ≡ 2 (mod 4). Rent praktisk betyr dette at hvis (n - 1)! er delelig med n > 4, så er n et sammensatt tall.[6]
Alternativt bevis
Wilsons teorem følger også ganske direkte fra Fermats lille teorem. Det sier at ligningen
Ved å sette x = p vil produktet på høyre side bli (p - 1)!. På venstre side vil man stå igjen med -1 da pp - 1 er null modulo p.
Primitive røtter
Hvert element a i enhetsgruppen (Z/nZ)× er relativt primisk med modulus n, det vil si at største felles faktor gcd(a,n) = 1. Det betyr at det totale antall element gruppen inneholder, er gitt ved totientfunksjonenφ(n). Når n er et primtall, er φ(n) = n - 1. Eulers teorem sier da at for hvert element a må man da ha at
Dette kravet vil generelt være oppfylt når ar ≡ 1 (mod n) der heltallet r er en faktor i tallet φ(n). Man sier da at elementet a har ordenr for modulus n. Elementet a = 1 har alltid orden r = 1 uavhengig av størrelsen til modulus. Alle element i gruppen som har den maksimale orden rmax = φ(n), kalles primitive røtter. Denne betegnelsen kommer fra tilsvarende løsninger av sirkeldelingsligningen. Hvert slikt element vil generere alle de andre elementene i gruppen ved at det multipliseres mange nok ganger med seg selv. Det kalles derfor også ofte for en «generator» og gruppen er syklisk.[6]
Når n = 3, består gruppen av φ(3) = 3 - 1 = 2 element som er {1, 2}. Nå er 22 = 4 ≡ 1 (mod 3) slik at 2 er en primitive rot. Likedan for n = 4 består gruppen av de to elementene 1 og 3 hvorav 3 er primitiv. For n = 5 inneholder gruppen φ(5) = 5 - 1 = 4 element som er {1, 2, 3, 4}. I dette tilfelle er både 2 og 3 primitive røtter, men ikke 4 da 42 = 16 ≡ 1 (mod 5).
Hvis g er en primitiv rot, vil den inverse
også være en primitiv rot. For eksempel når n = 7, kan man sjekke at 3 er en primitiv rot. Det inverse elementet er 3-1 = 36 - 1 mod 7 = 243 mod 7 = 5. Av de seks elementene {1, 2, 3, 4, 5, 6} er det bare 3 og 5 som er primitive for denne modulus. Når n = 8, er ingen av elementene {1, 3, 5, 7} primitive.
Primitive røtter finnes for alle moduli n = 2, 4, pk og 2pk der primtallet p > 2 og k er et naturlig tall. Det finnes ingen systematisk fremgangsmåte for å identifisere de primitive røttene bortsett fra ved direkte utregning.[7]
Lineære kongruenser
En eller flere polynomligning kan også løses innen rammen av modulær aritmetikk. De kalles da «kongruensrelasjoner» eller ganske enkelt for kongruenser. Avhengig av polynomenes grad, er de enkleste slike relasjoner lineære eller eventuelt kvadratiske kongruenser. I det spesielle tilfellet at modulus er et primtall p, tilsvarer dette å finne løsninger av ligningene innen tallkroppenFp = Z/pZ.
Det enkleste tilfellet er en ligning med en ukjent. Den skrives som
hvor a og c er heltall. Denne relasjonen omtales som en lineær kongruens. Eventuelle løsninger kan finnes fra den ekvivalente ligningen
for ett eller flere heltall y. Denne kongruensen er da ekvivalent med en diofantisk ligning.
Løsningen av denne ligningen kan finnes ved bruk av Euklids algoritme og avhenger av den største felles divisorm = gcd(a,n). Når denne samtidig er en faktor i konstanten c, så har kongruensen m inkongruente løsninger i intervallet {0, 1, 2, 3, ..., n - 1}. Hvis det derimot ikke er tilfelle, finnes det ingen løsninger.[2]
Som et eksempel kan man betrakte den lineære kongruensen
Her er m = gcd(4,10) = 2 som også er en faktor i c = 6. Derfor finnes det to løsninger som er x = 4 og x = 9. Hadde man istedet her hatt c = 7, vil det ikke vært noen løsninger.
Når a og n er relativt primiske, er m = 1 og kongruensen har bare en løsning. Det er tilfellet når modulus n = p er et primtall og den lineære kongruensen kan skrives som ligningen
i tallkroppen Fp. Løsningen er da formelt gitt som x = a-1⋅c. Har man for eksempel p = 7, er løsningen av 4x ≡ 6 (mod 7) gitt ved x = 5 fordi 4-1 = 2 og 2⋅6 = 5 i F7. På samme vis finner man at 16x ≡ 5 (mod 29) har løsningen x = 13. Når p er stor, er likevel fremgangsmåten med Euklids algoritme den raskeste.[2]
^abc J. Reed og J. Aarnes, Matematikk i vår tid, Universitetsforlaget, Oslo (1967).
^abcd J.H. Silverman, A Friendly Introduction to Number Theory, Pearson Education, New Jersey (2011). ISBN 0-321-81619-6.
^ R. Courant and H. Robbins, What is Mathematics: An Elementary Approach to Ideas and Methods, Oxford University Press, Oxford (1996). ISBN 978-0-19-510519-3.
^S. MacLane and G. Birkhoff, Algebra, MacMillan Publishing Co., New York (1979). ISBN 0-02-978830-7.
^ab A. Ash and R. Gross, Fearless Symmetry: Exposing the Hidden Patterns of Numbers, Princeton University Press, New Jersey (2006). ISBN 0-691-12492-2.
^abc O. Ore, Number Theory and its History, Dover Publications, New York (1988). ISBN 0-486-65620-9.
^ M.R. Schroeder, Number Theory in Science and Communication, Springer-Verlag, Berlin (1984). ISBN 3-540-12164-1.