5. Primitiivinen alkio 5.1. Täydennystä lukuteoriaan. Olkoon n Z, n 2. Palautettakoon mieleen, että kokonaislukujen jäännösluokkarenkaan kääntyvien alkioiden muodostama osajoukko Z n := {x Z n x on kääntyvä} on Abelin ryhmä kertolaskun suhteen. Tämän joukon alkioiden lukumäärää merkitään ϕ(n). Näin määriteltyä funktiota ϕ kutsutaan Eulerin ϕ-funktioksi (englanninkielessä myös Euler s totient). Kun palautetaan mieleen kääntyvyyden karakterisointi suurimman yhteisen tekijän avulla, saadaan myös ϕ(n) = joukon {a {1, 2,..., n 1} syt(a, n) = 1} alkioiden lukumäärä. Olkoon nyt äärellinen K kunta, jossa on q alkiota. Tällöin sen kääntyvien alkioiden joukko K = K \ {0} on kertolaskun suhteen Abelin ryhmä. Ryhmän (K, ) kertaluku on q 1. Palautetaan mieleen, että (multiplikatiivinen) ryhmä on G syklinen, jos on olemassa alkio g G siten, että G = g = {g k k Z}. Osoitetaan seuraavaksi, että äärellisen kunnan multiplikatiivinen ryhmä K on syklinen. Tämän todistamiseksi riittää osoittaa, että on olemassa ainakin yksi alkio g K, jonka kertaluku on q 1. Väitteen todistus tulee antamaan hieman enemmän: jokaista luvun q 1 tekijää d kohti on olemassa alkioita, joiden kertaluku on d. Lisäksi tällaisten alkioiden lukumäärä pystytään laskemaan. Väitteen todistamiseksi tarvitaan Eulerin ϕ-funktioon liittyvä kaunis kaava: Lause 5.1. Olkoon n positiivinen kokonaisluku. Tällöin ϕ(d) = n, d Z + d n missä summa lasketaan kaikille sellaisille luvuille d Z +, jotka jakavat luvun n. Ennen lauseen todistamista yleisesti tarkastellaan yksinkertaista numeerista esimerkkiä, josta todistuksen idea selviää. Luvun n = 6 jakajat ovat d {1, 2, 3, 6} =: D. Osamäärät j, missä j {1,..., 6}, voidaan esittää supistetussa muodossa ja sen jälkeen ne voidaan ryhmitellä nimittäjän mukaan 6 seuraavasti: T := { j 6 j {1,..., 6}} = { 1 6, 1 3, 1 2, 2 3, 5 6, 1 1 } = S 1 S 2 S 3 S 6, missä S 1 = { 1}, S 1 2 = { 1}, S 2 3 = { 1, 2} ja S 3 3 6 = { 1, 5 }, t.s. yleisesti jokaiselle d D 6 6 on S d := { t t {1,..., d} ja syt(t, d) = 1}. Tässä esimerkkitilanteessa joukko d T jakautuu pistevieraisiin osiin S d, joten joukkojen alkioiden lukumääriä on helppo verrrata. Vastaava voidaan tehdä yleisesti. Todistus. Olkoot D := {d Z + d n}, T := { j j {1,..., n}} ja n S d := { t t {1,..., d} ja syt(t, d) = 1}, kun d D. d Tällöin joukon T alkioiden lukumäärä on n ja joukon S d vastaavasti ϕ(d). Osoitetaan, että T = d D S d, ja että joukot S d ovat pistevieraita. Kun tämä osoitettu, väite seuraa välittömsti. 12 Viimeksi muutettu 16.8.2013. 29
T d D S d: Joukon T jokainen luku on muotoa j jollekin j {1,..., n}. Olkoon n s := syt(j, n). Tällöin on olemassa kokonaisluvut t ja d siten, että j = t s ja n = d s. Luvuille t ja d on syt(t, d) = 1, t {1,..., d}, d {1,..., n} ja d n, joten d D ja j = t S n d d. T d D S d: Olkoot d D, jolloin tyypillinen joukon S d luku on muotoa t, missä d t {1,..., d}. Olkoot s := n ja j := t s. Tällöin s Z d +, j {1,..., n} ja t = j, d n joten t T. d S d S d =, kun d d : Tehdään antiteesi: on olemassa d, d D siten, että d d, mutta S d S d. Olkoon r S d S d. Tällöin on olemassa t {1,..., d} ja t {1,..., d } siten, että r = t = t ja syt(t, d) = 1 ja syt(t, d ) = 1. Tällöin d d t d = t d. Koska syt(t, d) = 1 ja d t d = t d, on d d, joten on olemassa k Z + siten, että d = k d. Siis t d = t d = t k d, joten t = t d = t k. Mutta tällöin luvuilla t ja d on yhteinen tekijä k, mikä on vastoin oletusta lukuunottamatta sitä tilannetta, että k = 1. Mutta jos k = 1, olisi d = d, mikä on vastoin oletusta. Siis antiteesi on väärä, ja S d S d =. 5.2. Täydennystä ryhmäteoriaan. Lauseen 5.7 ( K on syklinen ryhmä ) todistuksessa tarvitaan ryhmän alkion kertalukuun liittyviä tuloksia, ennen kaikkea lauseen 5.6 tulosta, ja muistin virkistämiseksi seuraavaan on kerätty tärkeimmät käsitteet ja tulokset (hieman täydentäen) Algebran kurssilta. Olkoon G äärellinen ryhmä (siis ryhmä, jossa on äärellisen monta alkiota; ryhmän laskutoimitus merkittäköön tässä kertolaskuna ja neutraalialkio e). Ryhmän G kertaluku on sen alkioiden lukumäärä. Ryhmän G alkion g kertaluku on joukon g := {g k k Z} alkioiden lukumäärä. Joukko g on itse asiassa helppo todeta ryhmäksi (laskutoimituksena alkuperäinen kertolasku). Tätä varten pitää lähinnä huomata, että ryhmän G alkion g potensseille g k on voimassa g k g l = g k+l. Muotoa g = {g k k Z} olevaa ryhmän osajoukkoa kutsutaan alkion g virittämäksi sykliseksi aliryhmäksi. Yleisemmin ryhmän G osajoukko H on aliryhmä, jos se sisältää neutraalialkion e, ja jos kaikille g, h H on voimassa g h 1 H. Yhtäpitäväksi ehdoksi voidaan osoittaa: e H ja kaikille g, h H on voimassa g h H ja h 1 H. Kun tarkastellaan äärellisen ryhmän G alkion g virittämää aliryhmää g = {g k k Z}, on selvää, että alkiot g k eivät voi olla keskenään erisuuria, vaan on olemassa k, l Z, siten, että g k = g l ja k l. Oletetaan, että k > l. Koska alkiolla g l on käänteisalkio g l, saadaan g k l = g k g l = e. Siis jokaiselle alkiolla g on olemassa k Z siten, että g k = e ja k > 0. Olkoon nyt d pienin positiivinen kokonaisluku, jolle g d = e. Osoitetaan, että alkion g kertaluku on d, tarkemmin, että g = {g k k {1, 2,..., d}}. Riittää osoittaa, että jokainen h g on esitettävissä muodossa h = g k, missä k {1, 2,..., d}. Olkoon h = g k, missä k Z. Jakoyhtälön nojalla on olemassa q, r Z siten, että k = q d + r, missä 0 r < d. Koska g d = e, saadaan g k = g q d g r = (g d ) q g r = e q g r = g r. Jos r > 0, on g k = g r vaadittua muotoa. Jos taas r = 0, on g k = g 0 = e = g d, joten g k voidaan nytkin esittää halutussa muodossa. Todetaan lisäksi, että alkiot g k, k {1, 2,..., d}, ovat kaikki keskenään erisuuria. Nimittäin, jos olisi g k = g l joillekin k, l {1, 2,..., d}, joille k l, saataisiin g k l = e. Jos k > l, on 0 < k l < d, joten g k l = e eksponentille, joka on aidosti pienempi 30
kuin d, mikä on vastoin luvun d valintaa. Vastaavasti, jos k < l, olisi g l k = e ja 0 < l k < d. Aliryhmän g = {g k k Z} lisänimi syklinen selittyy edellisellä ominaisuudella: kuvaus Z, k g k, on d-jaksoinen. Äärellisen ryhmän alkion kertaluvun käyttäytymistä rajaa seuraava: Lause 5.2. Olkoot G äärellinen ryhmä ja g G. a) Tällöin alkion g kertaluku jakaa ryhmän G kertaluvun. b) Jos ryhmän G kertaluku on D, on g D = e kaikille g G. Todistus. a) Olkoot H := g ja x H := {x h h H}, kun x G. Osoitetaan aluksi, että jos x G ja y G, niin joko (x H) (y H) = tai x H = y H. Tätä varten oletetaan, että (x H) (y H). Olkoon g (x H) (y H). Tällöin on olemassa h H ja h H siten, että g = x h = y h. Osoitetaan, että x H y H. Tätä varten olkoon z x H. Olkoon h H siten, että z = x h. Pitäisi osoittaa, että z voidaan esittää muodossa y h, missä h H. Ehdosta x h = y h saadaan x = y h h 1, joten z = x h = y h h 1 h. Koska H on ryhmän G aliryhmä, on h h 1 h H, joten alkiolla z on vaadittu esitys. Todetaan seuraavaksi, että jokaisessa joukossa x H, x G, on yhtä monta alkiota kuin joukossa H, jossa niitä on alkion g kertaluvun osoittama määrä. Tämä seuraa siitä, että kuvaus f x : H x H, f x (h) := x h, on bijektio; sen käänteiskuvaus on (f x ) 1 = f x 1. Joukko G voidaan esittää yhdisteenä G = x G x H (huomaa: x x H, koska e H ja x e = x). Olkoon N keskenään eri joukkojen x H, x G, lukumäärä (todistuksen alun nojalla kaksi joukkoa x H ovat joko samat tai pistevieraat). Valitaan nyt jokaisesta joukosta x H, x G, yksi edustaja x j siten, että vastaavat joukot x j H, 1 j N, ovat pistevieraita. Tällöin G = N j=1 x j H on pistevieraiden joukkojen yhdiste, joten 31 joukon G alkioiden lukumäärä = N joukon x j H alkioiden lukumäärä, j=1 t.s. ryhmän G kertaluku = N joukon H alkioiden lukumäärä. Koska joukon H alkioiden lukumäärä on alkion g kertaluku, väite seuraa tästä. b) Jos alkion g kertaluku on d, on a-kohdan nojalla d D, t.s. D = d k jollekin k Z +. Tällöin g D = (g d ) k = e k = e. Huomautus 5.3. Edellisellä lauseella ja sen todistuksella on seuraava luonnollisemman oloinen yleistys, joka tunnetaan Lagrangen lauseena: Olkoot G äärellinen ryhmä ja H sen aliryhmä. Tällöin aliryhmän H kertaluku jakaa ryhmän G kertaluvun. Tämän osoittamiseksi määritellään joukkoon G relaatio asettamalla x y, jos y 1 x H. Aliryhmältä vaadittujen ominaisuuksien nojalla on helppo todeta, että relaatio on ekvivalenssirelaatio (todistus jätetään lukijan tehtäväksi). Alkion
x ekvivalenssiluokka on joukko [x] = {y G y x} = {y G x 1 y H} = {y G y = x h jollekin h H} =: x H Tässä määriteltyä joukkoa x H = {x h h H} kutsutaan alkion x määräämäksi vasemmaksi sivuluokaksi. Ekvivalenssirelaation yleisten ominaisuuksien nojalla sivuluokat x H, x G, muodostavat joukon G osituksen, G = x G x H, missä kahdelle eri alkiolle x G ja x G sivuluokat x H ja x H ovat joko samat tai pistevieraat. Lauseen todistuksen mukaan kuvaus f x : H x H, f x (h) := x h, on bijektio, joten kaikissa sivuluokissa on yhtä monta alkiota kuin aliryhmässä H. Päättely päätetään kuten lauseen todistuksessa. Lause 5.4. Olkoot G äärellinen ryhmä, g G ja k Z. Tällöin g k = e, jos ja vain jos alkion g kertaluku jakaa luvun k. Todistus. Olkoon alkion g kertaluku d. Jos d k, on olemassa l Z siten, että k = d l. Tällöin g k = (g d ) l = e l = e. Oletetaan kääntäen, että g k = e. Jakoyhtälön nojalla on olemassa q, r Z siten, että k = q d + r ja 0 r < d. Tällöin e = g k = (g d ) q g r = e q g r = g r. Koska g r = e ja 0 r < d, on alkion g kertaluvun määritelmän nojalla oltava r = 0. Siis k = q d, joten d k. Seuraus 5.5. Olkoot G äärellinen ryhmä, g G ja l, m Z. Tällöin g l = g m, jos ja vain jos l m mod d, missä d on alkion g kertaluku. Todistus. Sovelletaan edellistä lausetta lukuun k := l m. Lause 5.6. Olkoot G äärellinen ryhmä, g G ja k Z. Tällöin alkion g k kertaluku on d/ syt(d, k), missä d on alkion g kertaluku. Todistus. Olkoon alkion g k kertaluku c. Merkitään d := d/ syt(d, k) ja k := k/ syt(d, k). Ensinnäkin (huomaa: k/ syt(d, k) Z) (g k ) d/ syt(d,k) = (g d ) k/ syt(d,k) = e k/ syt(d,k) = e. Lauseen 5.4 nojalla alkion g k kertaluku c jakaa luvun d = d/ syt(d, k). Jos taas (g k ) l = e, on g k l = e, joten lauseen 5.4 nojalla alkion g kertaluku d jakaa luvun k l. Tällöin d jakaa luvun k l. Koska syt(d, k ) = 1, jakaa d luvun l. Pienin positiivinen kokonaisluku l, jolle (g k ) l = e, on alkion g k kertaluku c. Siis d jakaa myös luvun c. Koska c jakaa luvun d ja d jakaa luvun c, on c = d. Lauseesta kannattaa tulevaa ajatellen huomata seuraava: Jos alkion g G kertaluku on d, niin myös alkion g k kertaluku on d, jos ja vain jos syt(d, k) = 1. Lisäksi, koska potenssit g k, 1 k d, ovat keskenään erisuuria, on ryhmässä G ainakin ϕ(d) alkiota, jonka kertaluku on d. 5.3. Primitiivinen alkio. Palataan äärellisen kunnan K nollasta eroavien alkioiden muodostamaan Abelin ryhmään K. Seuraava lause kertoo alkioiden kertaluvun avulla, millaisia alkioita joukossa K on, ja Eulerin ϕ-funktio puolestaan paljonko kyseisiä alkioita on. 32
Lause 5.7. Olkoon K äärellinen kunta, jossa on q alkiota. Tällöin jokaiselle luvun q 1 jakajalle d ryhmässä K on täsmälleen ϕ(d) alkiota, jonka kertaluku on d. Erityisesti ryhmässä K on ϕ(q 1) alkiota, jonka kertaluku on q 1. Todistus. Koska ryhmässä K on q 1 alkiota, on sen jokaisen alkion kertaluku luvun q 1 tekijä (lause 5.2). Olkoon d luvun q 1 tekijä. Olkoon ψ(d) kaikkien niiden ryhmän K alkioiden lukumäärä, joiden kertaluku on d. Väite seuraa, kun osoitetaan, että ψ(d) = ϕ(d). Oletetaan aluksi, että ψ(d) > 0, ja osoitetaan tämän avulla, että ψ(d) = ϕ(d). Ehto ψ(d) > 0 merkitsee, että ryhmässä K on ainakin yksi alkio, jonka kertaluku on d. Olkoon a K, jonka kertaluku on d. Alkion potenssit a e, 0 e < d, ovat keskenään erisuuria, koska alkion a kertaluku on d. Toisaalta, jokainen potenssi a e on polynomin x d 1 nollakohta, koska (a e ) d 1 = (a d ) e 1 = 0. Koska polynomin x d 1 aste on d, on sillä enintään d nollakohtaa. (Tämä kaipaa hieman lisäperusteluja; Rabinin salaimen yhteydessä nähtiin, että alkiolla [c] n Z n voi olla neljä neliöjuurta, t.s. polynomilla voi olla astelukuaan enemmän nollakohtia.) Siis tässä tilanteessa polynomilla x d 1 on täsmälleen d nollakohtaa, ja ne ovat potenssit a e, 0 e < d. Se, että alkion kertaluku on d tarkoittaa, että se on polynomin x d 1 nollakohta, joten jokainen kertalukua d oleva alkio on jokin alkion a potenssi a e. Aiemmin todistetun nojalla alkion a potenssin a e kertaluku on d, jos ja vain jos syt(e, d) = 1. Kertalukua d olevia alkioita on siis yhtä monta kuin lukuja e, joille 0 e < d ja syt(e, d) = 1. Tällaisia lukuja on ϕ(d) kappaletta. Siis kertalukua d olevia alkioita on ϕ(d) kappaletta, jos sellaisia ylipäätään on olemassa. Osoitetaan lopuksi, että ψ(d) > 0 jokaiselle luvun q 1 tekijälle. Tehdään antiteesi: Luvulla q 1 on tekijä d siten, että ψ(d) = 0. Todistuksen alkuosassa osoitettiin, että jos ψ(d) > 0, niin ψ(d) = ϕ(d). Jos taas ψ(d) = 0, niin 0 = ψ(d) < ϕ(d). Koska ryhmän K jokaisen alkion kertaluku on luvun q 1 tekijä, antaa summa d Z +, d q 1 ψ(d) ryhmän K alkioiden lukumäärään. Siis edellisessä lauseessa Eulerin ϕ-funktiolle todistetun kaavan nojalla saadaan q 1 = ψ(d) < ϕ(d) = q 1. d Z +, d q 1 d Z +, d q 1 Päädytään ristiriitaan, jos oletetaan, että ψ(d) = 0 jollekin luvun q 1 tekijälle d. Määritelmä 5.8. Olkoon K äärellinen kunta. Alkiota g K, jonka virittämä ryhmä g = {g k k Z} on K, kutsutaan kunnan K primitiiviseksi alkioksi (tai kunnan K primitiiviseksi [(q 1). yksikkö-]juureksi, kun q := K ). Edellisen lauseen nojalla äärellisellä kunnalla, jossa on q alkiota, on ϕ(q 1) primitiivistä alkiota. Huomautus 5.9. Edellisesta lauseesta 5.7 tarvitaan ennenkaikkea tieto, että jokaisella äärellisellä kunnalla on primitiivinen alkio. Tämä voitaisiin todistaa yksinkertaisemminkin. Nimittäin, äärellisen kunnan jokaisella nollasta eroavalla alkiolla on äärellinen kertaluku. Koska näitä kertalukuja on äärellisen monta, voidaan niistä valita suurin. Olkoon se d, ja olkoon a K jokin alkio, jonka kertaluku on d. Tällöin potenssit a, a 2,..., a d = 1 ovat keskenään erisuuret. Ne ovat polynomin x d 1 nollakohtia, ja koska niitä on asteluvun mukaiset d kappaletta, muita nollakohtia polynomilla x d 1 ei ole. Jos d < q 1, on olemassa b K, joka ei ole mikään alkion 33
a potenssi. Suurimmalla kertaluvulla d on kuitenkin se ominaisuus, että minkä tahansa muun alkion kertaluku jakaa kertaluvun d. Erityisesti alkion b kertaluvun pitäisi jakaa d. Mutta jos alkion b kertaluku jakaa luvun b, toteuttaa b yhtälön b d 1 = 0. Tällöin b olisi polynomin x d 1 nollakohtia, joten se olisi jokin potensseista a, a 2,..., a d = 1. Päädytään ristiriitaan. Katso tarkemmin [3, luku VIII, 3] tai [2, 1.7]. Edellä esitetyn todistuksen etuna tähän päättelyyn nähden on, että se kertoo jotain erilaisten alkioiden lukumääristä Eulerin ϕ-funktion avulla. Haittapuolelle jää se, että lauseelle 5.7 esitetty todistus ei ole sen konstruktiivisempi kuin tässä esitetty todistushahmotelma. 5.4. Gaussin algoritmi primitiivisen alkion määräämiseksi. Seuraavassa alkion a kertalukua ryhmässä G merkitään ord G (a) tai lyhyesti ord(a). Lauseen 5.6 nojalla ryhmästä G valitun alkion a potenssien a k kertaluvut ovat enintään alkion a kertaluvun suuruisia. Etsittäessä äärelliselle kunnalla K primitiivistä alkiota, tarvitaan jokin menetelmä, jolla jo valitun alkion kertalukua voidaan nostaa. Seuraava lemma antaa idean siihen, miten kertaluku saadaan kasvamaan nopeimmin. Ryhmän laskutoimitus olkoon kertolasku, vaikka ryhmä oletetaankin kommutatiiviseksi (tulosta on tarkoitus soveltaa ryhmään (K, )). Lemma 5.10. Olkoot G äärellinen Abelin ryhmä ja a, b G siten, että niiden kertaluvut ovat keskenään jaottomat, syt(ord(a), ord(b)) = 1. Tällöin ord(a b) = ord(a) ord(b). Todistus. Olkoot n := ord(a), m := ord(b) ja k := ord(a b). Tällöin joten k n m. Toisaalta (a b) n m = a n m b n m = (a n ) m (b m ) n = e m e n = e, e = e n = (a b) n k = (a n ) k b n k = e k b n k = b n k, joten m n k. Koska syt(n, m) = 1, on m k. Vastaavalla tavalla todetaan, että n k. Koska syt(n, m) = 1, on n m k. Siis k = n m. Gaussin algoritmi antaa menetelmän, jolla löydetään jono alkioita a j K siten, että ord(a 1 ) < ord(a 2 ) <.... Koska alkioiden kertaluvut ovat kokonaislukuja ja kunnassa K on vain äärellisen monta alkiota, näin saatu jono päättyy alkioon, jonka pitää olla kunnan primitiivinen alkio. 1 Valitaan a 1 K, a 1 0. Olkoon t 1 := ord(a 1 ). 2 Jos t 1 = q 1, niin a 1 on kunnan K primitiivinen alkio. 3 Jos t 1 < q 1, valitaan b K \ a 1. Olkoon s := ord(b). Jos s = q 1, niin b on kunnan K primitiivinen alkio. 4 Jos s < q 1, määrätään luvut d ja e Z + siten, että d t 1, e s, syt(d, e) = 1 ja d e = pyj(t 1, s). Asetetaan a 2 := a t 1/d 1 b s/e ja t 2 := pyj(t 1, s). Vaihdetaan edellä alion a 1 tilalle a 2 ja luvun t 1 tilalle t 2, ja toistetaan kohdasta 2. Todistuksen sijasta tyydytään muutamaan selittävään kommentiin: (i) Alkion b kertaluku s ei voi olla luvun t 1 tekijä; muutoin olisi b t 1 = 1, jolloin b olisi yhtälön x t 1 1 = 0 juuri. Mutta tällä yhtälöllä on jo t 1 eri juurta a j 1, 1 j t 1, ja b siis kuuluisi joukkoon a 1. Tästä seuraa myös, että pyj(t 1, s) > t 1. 34
(ii) Kohdan 4 väite luvuille d ja e on yleinen: Kun m Z + ja n Z +, niin on olemassa luvut d ja e siten, että d m, e n, syt(d, e) = 1 ja d e = pyj(m, n). Väite on helppo todistaa esimerkiksi aritmetiikan peruslauseen avulla (ja jätetään lukijan tehtäväksi). (iii) Kohdassa 4 alkion a t 1/d 1 kertaluku on d ja alkion b s/e kertaluku on e. Edellisen lemman nojalla näiden tulon kertaluku on d e = pyj(t 1, s) > t 1. 35