Visa Latvala ja Pekka Smolander
Matematiikan laitos, Joensuun yliopisto
Artikkelin tarkoituksena on tutustuttaa lukija modulaariseen yhteen- ja kertolaskuun. Nämä ovat ominaisuuksiltaan reaalilukujen yhteen- ja kertolaskun kaltaisia laskutoimituksia äärellisessä joukossa. Modulaaristen laskutoimitusten tarkasteluun on löydettävissä ainakin kaksi hyvää syytä: Ensinnäkin kyseiset laskutoimitukset ja yleisemmin äärelliset kunnat ovat keskeisessä roolissa modernissa tiedonsuojauksessa, ks. esimerkiksi [5, Luku 7]. Toiseksi modulaariset laskutaulukot ovat hyödyllisiä algebran yliopisto-opetuksen näkökulmasta, sillä ne antavat konkreettisia esimerkkejä, joiden avulla lähestyä algebrallisten struktuurien samanlaisuuden eli isomorfian käsitettä. Lukiolaiselle taulukot antavat esimerkin ei-standardista laskuopista, niitä voi tutkia ilman mitään tietoa abstraktista algebrasta.
Tässä esityksessä keskitytään modulaariseen kertolaskuun sen vuoksi, että yhteenlaskutaulukoita on niiden äärimmäisen säännöllisyyden vuoksi helppo muodostaa kynällä ja paperilla. Sen sijaan jo neljää alkiota suurempien kertolaskutaulukoiden muodostaminen kynällä ja paperilla alkaa olla työläs tehtävä. Tämä lienee keskeinen syy siihen, ettei ohessa esiteltäviä yleisiä kertolaskutaulukoita juuri löydy klassisista algebran oppikirjoista. Viimeisessä luvussa annetaan Maple-proseduuri, jota käyttäen laskutaulukoita voi muodostaa nappia painamalla.
Olkoon
luonnollinen luku. Kokonaisluvun
jakojäännös modulo on ehdoista
Esimerkki. Luvun jakojäännös modulo 7 on , sillä . Luvun jakojäännös modulo on , sillä .
Modulaarinen yhteen- ja kertolasku määritellään kaikkien
mahdollisten jakojäännösten modulo joukossa
Esimerkki. Laskemalla jakojäännökset modulo 4 todetaan,
että yhteen- ja kertolaskutaulukot ovat muotoa
Kysymys. Millä tavalla luvun 0 esiintyminen eroaa toisistaan kertolaskutaulukoissa modulo 4 ja 5? Kyse on yleisestä ilmiöstä, joka liittyy siihen, että 5 on alkuluku, mutta 4 ei.
Edellisestä esimerkistä näkyy sääntö, jonka mukaan yhteenlaskutaulukot rakentuvat. Tässä esityksessä keskitytäänkin tarkastelemaan kertolaskutaulukoita, koska ne eivät rakennu yksinkertaisen säännön mukaisesti ja ovat siten vaikeammin esitettävissä. On kuitenkin korostettava, että yhteenlaskutaulukot ovat teoreettisesti erittäin tärkeitä. Esimerkiksi äärelliset Abelin ryhmät voidaan karakterisoida niiden avulla ([2, Theorem 10.7], tai [1, Theorem 1.22]). Toisaalta yhteen- ja kertolasku yhdessä muodostavat tärkeän esimerkin äärellisestä kunnasta tapauksessa, jossa on alkuluku. Mainittakoon myös, että kirjallisuudessa joukon yhteenlaskutaulukolle käytetään tavanomaisesti merkintöjä ja .
Voidaan osoittaa, että ja ovat aina vaihdannaisia ja liitännäisiä. Nämä ominaisuudet periytyvät kokonaislukujen vastaavista ominaisuuksista ([2, Theorem 2.7]). Vaihdannaisuus näkyy taulukoissa siten, että taulukot ovat symmetrisiä päälävistäjän suhteen.
Kertolasku ei yleisesti muodosta ryhmää joukossa
Koska tarkoituksena on hyödyntää kertolaskutaulukoita äärellisten
ryhmien isomorfiatarkasteluissa, rajoitetaan joukkoa siten,
että kertolaskun käänteisalkiovaatimus saadaan voimaan. Tämä
suoritetaan siten, että joukosta poimitaan taulukkoon
mukaan vain ne jakojäännökset , joille
Taulukossa esitystä on yksinkertaistettu siten, että kerrottavien alkioiden vaaka- ja pystyrivit samoin kuin kertolaskumerkki on jätetty pois. Kerrottavat alkiot esiintyvät joka tapauksessa matriisin ensimmäisellä vaaka- ja pystyrivillä koska 1 on aina mukana taulukossa ja kaikilla . Kertolaskun osalta käytetään jatkossa kaikkialla tätä yksinkertaistettya matriisiesitystä.
Edellisestä taulukosta huomataan, että joukon jokainen luku toteuttaa yhtälön . Tämä on erikoinen algebrallinen ominaisuus, joka ei yleisesti päde joukoille . Ominaisuuteen palataan viimeistä edellisessä luvussa.
Määritelmä.Eulerin funktio on sellainen kuvaus , että ilmoittaa niiden lukujen lukumäärän, joille .
Siis ilmoittaa kuinka monta lukua joukossa
on. Voidaan osoittaa ([5, Theorem 6.5]),
että funktiolle pätee kanoninen kaava
Tässä luvussa tarkastellaan lyhyesti matemaattisia perusteluja sille, miksi muodostaa ryhmän joukossa . Tämä ei periaatteessa edellytä tietoja, jotka eivät tulisi vastaan lukion lukuteorian syventävällä kurssilla, katso esimerkiksi [3]. Jos luku tuntuu liian teoreettiselta, sen voi ohittaa ja palata asiaan tarvittaessa myöhemmin.
Kokonaisluku on alkuluku, jos luvulla ei ole muita positiivisia tekijöitä kuin 1 ja . Lukuja sanotaan keskenään jaottomiksi, jos lukujen ja suurin yhteinen tekijä on 1. Käytännössä luvut todistetaan usein keskenään jaottomiksi seuraavaa aputulosta käyttäen ([5, Theorem 2.2]):
Apulause 1. Kokonaisluvut ja ovat keskenään jaottomia,
jos ja vain jos on olemassa
siten, että
Aiemmin on jo mainittu, että on liitännäinen ja
vaihdannainen joukossa . On kuitenkin osoitettava, että
kertolasku on laskutoimitus joukossa
Käänteisalkion olemassolokysymys palautuu yksinkertaisen lineaarisen kongruenssiyhtälön ratkaisemiseen ([5, Theorem 3.10]):
Apulause 2. Olkoon
ja
. Tällöin
kongruenssiyhtälöllä
Olkoon ja olkoon kongruenssin
On osoitettu, että pari on ryhmä, sillä kertolasku on liitännäinen joukossa , luku on laskutoimituksen neutraalialkio joukossa ja on alkion käänteisalkio laskutoimituksessa .
Luvussa 2 todettiin, että ilmoittaa ryhmän
alkioiden lukumäärän. Syy siihen, miksi
kertolaskutaulukot ovat käyttökelpoisia isomorfiatarkasteluissa
piilee siinä, että Eulerin funktio ei ole injektio. Esimerkiksi
Siis eräs silmiinpistävä peruste modulaaristen kertolaskutaulukoiden rakenteiden erilaisuudelle on se, että taulukoissa on eri määrä lukuja 1 päädiagonaalilla. Muita perusteita on löydettävissä muunlaisten algebrallisten ominaisuuksien avulla.
Huomautus. Voidaan osoittaa, että on olemassa vain kaksi neljän alkion ryhmärakennetta. Taulukot (1) ovat esimerkkejä Kleinin neliryhmästä. Taulukot (2) ovat puolestaan esimerkkejä neljän alkion syklisestä ryhmästä .
Tehtävä. Yhtälö pätee arvoilla . Tulosta kertolaskutaulut joukoissa , , , , Luvun 5 Maple-proseduurilla ja selvitä, kuinka monta rakenteeltaan erilaista näiden viiden taulukon joukossa on!
Maple-proseduuri, joka muodostaa listan ryhmän alkioista:
ryhma:=proc(m) local p,R,n,j: with(numtheory): p:=phi(m): R:=array(1..p): j:=0: for n to m-1 do if gcd(n,m)=1 then j:=j+1: R[j]:=n: fi: od: evalm(R): end:
Maple-proseduuri, joka muodostaa ryhmän kertolaskutaulukon:
kertotaulu:=proc(m) local p,T,R,i,j: with(numtheory): p:=phi(m): T:=array(1..p,1..p): R:=ryhma(m): for i to p do for j to p do T[i,j]:=R[i]*R[j] mod m: od: od: evalm(T) end: