802645S LUKUTEORIA A (5op) Tapani Matala-aho 27. helmikuuta 2013
Sisältö 1 Johdanto 3 2 Merkintöjä 4 3 Valittuja jaollisuuden tuloksia 5 4 Renkaan yksikköryhmä 6 5 Eulerin funktio 7 6 Euler-Fermat 10 7 Eräs kongruenssiryhmä 10 8 Kiinalainen jäännöslause 11 9 Tuloksia ryhmistä 14 9.1 Syklisten ryhmien perusteita..................... 15 9.2 Sovelluksia ja esimerkkejä...................... 26 9.3 Nopeaa potenssilaskentaa...................... 29 9.4 Diskreetti logaritmi kertolaskuryhmässä............... 30 10 Hieman polynomialgebraa 32 11 Primitiivijuuret 34 11.1 Ryhmät Z n.............................. 34 11.2 Sovelluksia ja esimerkkejä...................... 44 11.2.1 Polynomiyhtälöitä...................... 45 12 Neliöjäännökset 49 12.1 Yhtälö x 2 = a syklisessä ryhmässä.................. 49 1
12.2 Legendren symboli.......................... 51 12.3 Gaussin Lemma............................ 53 12.4 Jacobin symboli............................ 59 12.5 Sovelluksia............................... 61 13 Deterministisiä alkulukutestejä 62 13.1 Ei-polynomiaikaisia.......................... 62 13.2 Mersennen ja Fermat n luvut.................... 65 13.3 Polynomiaikainen/AKS/Kokeeseen vain Lemma 13.7 todistuksineen 75 14 Pseudoalkuluvut, Alkulukutestejä 83 14.1 Fermat n pseudoalkuluvut...................... 83 14.1.1 Probabilistinen-testi 1/EI kokeeseen............. 84 14.1.2 Carmichaelin luvut...................... 85 14.2 Eulerin pseudoalkuluvut....................... 86 14.2.1 Soloway-Srassenin alkulukutesti/ei kokeeseen....... 87 14.3 Vahvat pseudoalkuluvut....................... 88 14.3.1 Miller-Rabinin alkulukutesti/ei kokeeseen......... 91 2
LUKUTEORIA, NUMBER THEORY, THÉORIE DES NOMBRES 3
1 Johdanto 802645S LUKUTEORIA A (5op) Luennoilla perehdymme aluksi äärellisten syklisten ryhmien rakenteeseen, jolloin tarkasteluun otetaan generaattoreiden ja kertalukujen perusteet. Sovelluksena todistetaan kertolaskuryhmien (mod n), primitiivijuurien (generaattoreiden) olemmassaolotulokset. Neliöjäännöksien kautta saavutaan Legendren ja Jacobin symbolien perusteisiin sekä Gaussin lemman ja Resiprookkilauseen todistuksiin. Edelleen tarkastellaan Pseudoalkulukuja, Carmichaelin lukuja, alkulukutestejä ja tekijäalgoritmeja. Kurssin materiaali on klassista puhdasta matematiikkaa, joka antaa työkaluja modernin Kryptografian alkeille. LÄHTEITÄ: T.M. Apostol: Introduction to Analytic Number Theory. G.H. Hardy & E.M. Wright: An Introduction to the Theory of Numbers. Kenneth H. Rosen: Elementary number theory and its applications. Number Theory Web American Mathematical Monthly Voit ilmoittaa löytämäsi painovirheet ja muut töpeksinnät E-mail osoitteeseen: etunimi.sukunimi@oulu.fi Tapani Matala-aho 4
2 Merkintöjä Olkoot a, b lukuja sekä A, J lukujoukkoja: aj + b = {aj + b j J} a J = {a j j J} A J = {a j a A, j J} Olkoon A = {a 1,..., a m }, tällöin f(a) = f(a 1 ) +... + f(a m ), a A f(a) = f(a 1 ) f(a m ). a A Jos A =, niin f(a) = 0, f(a) = 1 a A a A (tyhjä summa ja tulo). Edelleen "Summaus n. tekijöiden yli" f(d) = f(d 1 ) +... + f(d k ), d n missä d i Z + ovat n:n erilliset tekijät. "Summaus n. alkutekijöiden yli" f(p) = f(p). p n p n,p P "Tulo n. alkutekijöiden yli" f(p) = f(p). p n p n,p P 5
3 Valittuja jaollisuuden tuloksia Lause 3.1. Olkoot a, b Z annettu. Tällöin on olemassa sellaiset s, t Z, että syt(a, b) = sa + tb. (3.1) Seuraus 1. Olkoot a, b, c Z. Tällöin, jos a bc ja a c, (3.2) niin a b. (3.3) Seuraus 2. Olkoot a, b, c Z. Tällöin, jos a c ja b c ja a b, (3.4) niin ab c. (3.5) Seuraus 3. Olkoot a, b Z ja p P. Tällöin, jos p ab, (3.6) niin p a tai p b. (3.7) Seuraus 4. Olkoot a Z, p P ja k, n Z +. Tällöin p a n p a p n a n ; (3.8) Seuraus 5. Olkoot a, b Z +, tällöin p k a n p a n. (3.9) ab = syt(a, b)pyj(a, b) = (a, b)[a, b]. (3.10) 6
Lemma 3.1. Olkoot a Z, a 2. Tällöin syt(a n 1, a m 1) = a syt(n,m) 1; (3.11) aina, kun k, m, n Z +. a n 1 a kn 1; (3.12) 4 Renkaan yksikköryhmä Lause 4.1. Olkoon R ykkösellinen rengas. Joukko R = {u R v R : uv = vu = 1} (4.1) on ryhmä kertolaskun suhteen. Todistus. Määritelmä 4.1. Olkoon R ykkösellinen rengas. Joukko R on renkaan R yksikköryhmä. Esimerkki 1. Jos R = K-kunta, niin K = K {0}. (4.2) Z = {±1}. (4.3) Lause 4.2. Joukko {a Z n a n} on renkaan Z n yksikköryhmä eli Z n = {a Z n a n}. (4.4) 7
Erityisesti, jos p P, niin Z p on kunta ja Z p = {a Z p a p} = {1, 2,..., p 1}. (4.5) Määritelmä 4.2. Olkoon n 2. Jos a n, niin a on alkuluokka (mod n) ja Z n = {a Z n a n} on renkaan Z n kertolaskuryhmä (multiplication group of the ring). 5 Eulerin funktio Määritelmä 5.1. Eulerin funktio φ : Z + Z + saadaan asettamalla φ(n) = #{k Z + 1 k n, k n} (5.1) aina, kun n Z +. Siten, ryhmän Z n kertaluku (order) on #Z n = φ(n), n Z 2. (5.2) Lause 5.1. φ(mn) = φ(m)φ(n), M N. (5.3) Eli φ on multiplikatiivinen ja koska ( φ(p m ) = p m 1 1 ), p P, m Z +, (5.4) p niin saadaan Lause 5.2. Olkoon n = p a 1 1... p a k φ(n) = p a 1 1... p a k k k, p i P. Tällöin ) ) (1 1p1... (1 1pk (5.5) eli φ(n) = n p n ( 1 1 ). (5.6) p 8
Lause 5.3. φ(d) = n. n Z +. (5.7) d n Tod: Merkitään F (n) = d n φ(d). Aluksi saadaan F (1) = 1. (5.8) Olkoon p k P Z+. Lasketaan F (p k ) = d p k φ(d) = φ(d) = (5.9) d=p m,0 m k φ(1) + φ(p) + φ(p 2 ) +... + φ(p k ) = 1 + p 1 + p 2 p +... + p k 1 p k 2 + p k p k 1 = p k. (5.10) Eli F (p k ) = p k. (5.11) Olkoon seuraavaksi n m. Määrätään F (nm) = φ(d) = d nm φ(d 1 d 2 ), d 1 n, d 2 m (5.12) d 1 d 2 nm Toisaalta F (n)f (m) = d 1 n φ(d 1 ) d 2 m φ(d 2 ) = d 1 d 2,d 1 n,d 2 m φ(d 1 )φ(d 2 ) 5.3 = (5.13) 9
Siten Vielä d 1 d 2 nm φ(d 1 d 2 ). (5.14) F (nm) = F (n)f (m) n m. (5.15) F (n) = F (p k 1 1 p kr r ) = F (p k 1 1 ) F (p kr r ) = p k 1 1 p kr r = n. (5.16) Lause 5.4. Keskimäärin: n φ(k) = 3 π 2 n2 + O(n log n) k=1 φ(n) = 6 π 2 n = 0, 6079 n, π 2 = 9, 8696. Esimerkki 2. φ(2 m ) = 2 m 1, n 1 = 2 m φ(n 1 ) = n 1 2 φ(p) = p 1 φ(n 2 ) = n 2 1 φ(2 a 1 3 a 2 ) = 2 a 1 3 a 2 1 2 2 3 φ(n) = n 3 φ(7 a 1 11 a 2 }{{}) = n 6 7 10 11 = 60 77 n n φ(2 3 5 7 11) = n 1 2 2 3 4 5 6 7 10 11 = n 16 77 10
6 Euler-Fermat Lause 6.1. EULER-FERMAT: Olkoot a Z, n Z 2 annettu ja a n. Tällöin a φ(n) 1 (mod n). (6.1) Lause 6.2. FERMAT N PIKKULAUSE: Olkoon p P annettu. Tällöin a p 1 1 (mod p), jos p a Z; (6.2) a p a (mod p), a Z. (6.3) Olettaen (6.2) todistetaan (6.3): Jos syt(a, p) = 1, niin Pikku Fermat n (6.2) nojalla a p a (mod p). (6.4) Jos p a, niin a 0 (mod p) a p 0 (mod p) (6.5) a p a (mod p). (6.6) 7 Eräs kongruenssiryhmä Lause 7.1. A) Olkoot p, q P ja p = q. Tällöin yhtälöistä a b (mod p) a b (mod q) (7.1) seuraa a b (mod pq). (7.2) 11
B) Olkoot m i Z ja m i m j kaikilla i = j. Tällöin yhtälöistä a b (mod m i ) i = 1,..., r (7.3) seuraa a b (mod m 1 m r ). (7.4) Todistus. A) kohta: Oletuksista (7.1) seuraa p a b, q a b. (7.5) Koska p q, niin Seurauksen 2 nojalla pq a b a b (mod pq). (7.6) B) kohta induktiolla. 8 Kiinalainen jäännöslause Lause 8.1. KIINALAINEN JÄÄNNÖSLAUSE. Olkoot m 1,..., m r Z + pareittain keskenään jaottomia ja olkoot a 1,..., a r Z annettu. Tällöin yhtälöryhmän x a 1 (mod m 1 ),. (8.1) x a r (mod m r ) ratkaisut ovat x = x 0 + l M, l Z, M = m 1... m r = m k M k, (8.2) missä x 0 = n 1 M 1 a 1 +... + n r M r a r, (8.3) 12
n k M k 1 (mod m k ). (8.4) Tod: Aluksi huomataan, että M k m k, (8.5) sillä, jos olisi 1 < d = (M k, m k ) p P : p d (8.6) p m k, p M k = i =k m i p m i, i = k (8.7) p (m k, m i ) Ristiriita. (8.8) Niinpä M k Z m k (M k ) 1 := n k Z m k (8.9) n k M k = 1 Z m k (8.10) Seuraavaksi huomataan, että n k M k 1 (mod m k ). (8.11) M j = i =j m i 0 (mod m k ) j = k, (8.12) joten laskemalla saadaan x 0 = n 1 M 1 a 1 +... + n r M r a r (8.13) n k M k a k 1 a k = a k (mod m k ) k = 1,..., r (8.14) 13
ja siten x 0 on eräs ratkaisu. Olkoon x ratkaisu, tällöin x x 0 0 (mod m k ) k = 1,..., r. (8.15) Koska m i m j i = j, niin Lauseen 7.1 kohdan B) nojalla x x 0 0 (mod m 1 m r ) (8.16) eli x x 0 (mod M). (8.17) Yleistetään Kiinalainen jäännöslause 8.1. Lause 8.2. Olkoot m 1,..., m r Z + pareittain keskenään jaottomia ja olkoot c 1,..., c r, b 1,..., b r Z annettu sekä b 1 m 1,..., b r m r. Tällöin yhtälöryhmällä b 1 x c 1 (mod m 1 ),. (8.18) b r x c r (mod m r ) on ratkaisu (mod M = m 1... m r ). Huomaa, että bx c (mod m), b m, (8.19) bx = c, b Z m (8.20) x = (b) 1 c = a x a (mod m). (8.21) Siten todistus palautuu aikaisempaan Kiinalaisen jäännöslauseen todistukseen. Esimerkki 3. 5n 3 + 7n 5 0 (mod 12) n Z. (8.22) 14
9 Tuloksia ryhmistä Merkintää D H käytetään, kun ryhmä D on ryhmän H aliryhmä. Lemma 9.1. Aliryhmäkriteeri I. Olkoon H ryhmä. Jos, ryhmän H osajoukko D = toteuttaa ehdon: a, b D ab 1 D, niin D on H:n aliryhmä. Lemma 9.2. Aliryhmäkriteeri II. Olkoon H äärellinen ryhmä. Jos, ryhmän H osajoukko D = toteuttaa ehdon: a, b D ab D, niin D on H:n aliryhmä. Olkoon A H. Joukkoa A = D A D H sanotaan joukon A generoimaksi aliryhmäksi. Käytetään myös merkintää a, b,..., c = {a, b,..., c}. Erityisesti a = {a k k Z} = a Z. Jos H on Abelin ryhmä, niin a, b = {a k b l k, l Z} = a Z b Z. 15
9.1 Syklisten ryhmien perusteita Lause 9.1. Olkoon (H, ) kertolaskuryhmä ryhmä, e = 1, α H. Ryhmän H osajoukko α = α Z = {α k k Z} H (9.1) on H:n aliryhmä. Todistus. Määritelmä 9.1. Aliryhmä α = {α k k Z} on α:n generoima syklinen aliryhmä. Jos H = α, niin H on syklinen ryhmä ja α on H:n generaattori. Määritelmä 9.2. Ryhmän H kertaluku = #H ja alkion α kertaluku eli ord α = # α. (9.2) Lause 9.2. Lagrangen lause. Olkoot #D = d, #H = h <. Tällöin Lause 9.3. Olkoon #H = h < ja α H. Tällöin D H d h. (9.3) ord α h. (9.4) Todistus: Lause 9.4. Olkoon H äärellinen ryhmä ja h = #H, tällöin a h = 1 a H. (9.5) Todistus: Olkoon x H, jolloin asetetaan B = {x, x 2, x 3,..., x h+1 }. Selvästi B H,, joten on olemassa sellaiset eksponentit 1 l < k h + 1, (9.6) 16
että x k = x l x k l = 1, 1 k l h. (9.7) Olkoon 1 d h pienin potenssi, jolla x d = 1.. Siten #B = d ja lisäksi B on H:n aliryhmä, joten Lagrangen lauseella saadaan d h x h = 1, x H. (9.8) Seuraus 6. Olkoon n Z +, jolloin Z n on ryhmä ja #Z n = φ(n). Siten a φ(n) = 1 a n, (9.9) josta edelleen saadaan Euler-Fermat n lause a φ(n) 1 (mod n) a n. (9.10) Erikoistapauksena, jos p P, niin Z p on ryhmä ja #Z p = p 1. Siten a p 1 = 1 a p, (9.11) josta edelleen saadaan Fermat n pieni lause a p 1 1 (mod p) a p. (9.12) Lause 9.5. A. Jos ord α = n Z +, niin α = {1, α, α 2,..., α n 1 } ja α n = 1, (9.13) missä n Z + on pienin eksponentti k Z +, jolla α k = 1. B. Vice Versa. Todistus A. Koska # α = n, niin β n = 1 β α. (9.14) Erityisesti α n = 1. Valitaan β = α i α, i Z. (9.15) 17
Jakoalgoritmin nojalla i = qn + r, 0 r n 1, (9.16) joten Täten Jos olisi niin ja β = α i = (α n ) q α r = α r 0 r n 1. (9.17) α = {1, α, α 2,..., α n 1 }. (9.18) α j = 1, 1 j n 1, (9.19) α = {1, α, α 2,..., α j 1 } (9.20) # α n 1. Ristiriita. (9.21) B. kohta laskareissa. Lause 9.6. Olkoon α H, m Z +. Tällöin Esimerkki 4. Määrätään ryhmän α m = 1 ord α m. (9.22) H = Z 7 = {1, 2, 3, 4, 5, 6}, #H = 6 = φ(7). (9.23) aliryhmät ja sykliset aliryhmät. α 6 = 1, α Z 7 (9.24) mutta 1 1 = 1, 2 3 = 1, 3 6 = 1, 4 3 = 1, 5 6 = 1, 6 2 = 1. (9.25) 18
1 = {1}, 2 = 4 = {2, 4, 1}, 6 = {1, 6}, (9.26) Täten 3 ja 5 ovat Z 7:n generaattorit. 3 = 5 = {3, 2, 6, 4, 5, 1} = Z 7. (9.27) ord 1 = 1, ord 2 = ord 4 = 3, ord 3 = ord 5 = 6, Esimerkki 5. Määrätään ryhmän ord 6 = 2, d = 1, 2, 3, 6 6 = h. (9.28) H = Z 8 = {1, 3, 5, 7}, #H = 4 = φ(8). (9.29) aliryhmät ja sykliset aliryhmät. α 4 = 1, α Z 8 (9.30) mutta 1 1 = 1, 3 2 = 1, 5 2 = 1, 7 2 = 1. (9.31) 1 = {1}, 3 = {1, 3}, 5 = {1, 5}, (9.32) 7 = {1, 7}. (9.33) Täten ryhmällä Z 8 ei ole generaattoria ja siten se ei ole syklinen. ord 1 = 1, ord 3 = ord 5 = ord 7 = 2. (9.34) 19
Esimerkki 6. H = Z 15 = {1, 2, 4, 7, 8, 11, 13, 14}. (9.35) 4 = {1, 4}, 14 = {1, 14}. (9.36) 4, 14 = {1, 4, 14, 11}, (9.37) joka ei ole syklinen ja siten Z 15 ei ole syklinen. Lause 9.7. Olkoon H Abelin ryhmä ja olkoot α 1, α 2 H. Jos ord α 1 = e 1, ord α 2 = e 2, e 1 e 2, (9.38) niin ts. ord (α 1 α 2 ) = e 1 e 2. (9.39) # α 1 = e 1, # α 2 = e 2, e 1 e 2 (9.40) # α 1 α 2 = e 1 e 2. (9.41) Todistus. 1) Aluksi (α 1 α 2 ) e 1e 2 = 1. (9.42) 2) Olkoon d Z + pienin potenssi, jolle pätee (α 1 α 2 ) d = 1 (9.43) Siten (α 1 α 2 ) de 1 = 1 (α 1 e 1 ) d α 2 de 1 = α 2 de 1 = 1. (9.44) Jakoalgoritmin nojalla saadaan de 1 = m e 2 + r 2, 0 r 2 < e 2, (9.45) 20
jolloin α 2 de 1 = α m e 2 2 α r 2 2 = 1 α 2 r 2 = 1. (9.46) Mutta e 2 on pienin positiivinen tällainen potenssi, joten r 2 = 0 e 2 de 1 (9.47) Koska e 1 e 2, niin e 2 d. Vastaavasti e 1 d. Siten e 1 e 2 d e 1 e 2 = d. (9.48) Yhdistämällä 1) + 2) # α 1 α 2 = e 1 e 2. (9.49) Lause 9.8. Olkoon H on ryhmä ja #H = p P. Tällöin τ = H τ H {1}. (9.50) Todistus. 1. Tapa: Käytä Lagrangen lausetta aliryhmään τ. Laskareissa. 2. Tapa: τ H pätee τ p = 1. Olkoon τ = 1 ja τ a = 1, 1 a p 1. Koska a p, niin Eukleideen algoritmin nojalla s, t Z : 1 = sa + tp, jolloin τ 1 = τ sa+tp = (τ a ) s (τ p ) t = 1. Ristiriita. Siten ord τ = p, joten τ = H. mot. Lause 9.9. I. Syklisen ryhmän aliryhmät ovat syklisiä. II. Olkoon H = β, ord β = h = #H ja d h, 2 d h 1, ld = h. Tällöin A: ord β l = d B. ja on olemassa aliryhmät H d = β l, #H d = d d h. 21
Todistus. 1. Aluksi (β l ) d = β h = 1. 2. Jos ord β l = a, 1 a d 1, niin (β l ) a = 1 β al = 1, missä 2 al l(d 1) < h. Ristiriita. mot. Pienin yhteinen jaettava [a, b] = p.y.j.(a, b). (9.51) Lause 9.10. Olkoon G Abelin ryhmä ja olkoot x, y G, ord x = m, ord y = n. Tällöin löytyy alkio z G, jolle pätee ord z = [m, n] (9.52) Tarvitaan ensin seuraava apulause. Lause 9.11. Olkoot m = k K p a k k, n = k K p b k k, (9.53) p k P, a k, b k N, k K Z + I = {i K a i b i }, J = {j K a j > b j }, (9.54) I J = K, I J =. (9.55) Asetetaan l 1 = i I p a i i, l 2 = j J p b j j, (9.56) Tällöin ja (m/l 1, n/l 2 ) = 1 (9.57) mn = [m, n]l 1 l 2. (9.58) 22
Todistus laskareissa. Lauseen 9.10 todistus. Nyt Lauseen 9.9 nojalla ord x l 1 = m l 1, ord y l 2 = n l 2, (9.59) missä Lauseen 9.11 nojalla Asetetaan (m/l 1, n/l 2 ) = 1. z = x l 1 y l 2, (9.60) jolloin Lauseen 9.7 nojalla ord z = ord x ord y = m l 1 n l 2 = [m, n]. (9.61) Lause 9.12. Olkoon H ryhmä, τ H ja τ = 1. Tällöin ord τ = h (9.62) Todistus. Koska τ = 1, niin h 2. Olkoon τ h = 1 ja τ h p i = 1, p i h, p i P. (9.63) h = p a 1 1... p a k k, p 1,..., p k P. (9.64) Lauseen 9.5 nojalla h on pienin positiivinen eksponentti k, jolla τ k = 1. Olkoon p i luvun h alkutekijä, tällöin p i 2, 1 h p i h 2 h 1, (9.65) joten τ h = 1 ja τ h p i = 1. (9.66) 23
Vastaoletus: Mutta τ h = 1, joten Lause 9.6 Vastaoletuksen mukaan a < h, joten 1 a h 1 : ord τ = a. (9.67) a h a = p b 1 1... p b k k. (9.68) p j : h = p j ra; r Z +. (9.69) Koska τ a = 1 τ ar = τ h p j = 1. (9.70) Ristiriita oletuksen kanssa. Täten Esimerkki 7. G = Z 71, #G = 70 = 2 5 7. Valitaan τ = 7 G, jolle pätee 7 70 = 1, (käytä nopeaa potenssilaskentaa.) Siten ord τ = h. (9.71) 7 70 2 = 7 35 =... = 70 = 1, 7 70 5 = 7 14 =... = 1, 7 70 7 = 7 10 = 1, Lause 9.13. LUCASIN ALKULUKUTESTI. Olkoot a, n Z +, a n. Jos ord 7 = 70 7 = Z 71. (9.72) a n 1 1 (mod n) (9.73) 24
ja niin a n 1 p i 1 (mod n) p i n 1, p i P, (9.74) n = p P. (9.75) Todistus. Lause 9.12, missä G = Z n, antaa tuloksen n 1 = ord a. (9.76) Toisaalta #Z n = φ(n) a φ(n) = 1. (9.77) Nyt Lauseen 9.6 nojalla saadaan n 1 φ(n) n 1 φ(n) = n p n (1 1 p ) (9.78) Jos kuitenkin n / P, niin q 1 P s.e. q 1 n. tällöin n 1 n(1 1 q 1 ) n n q 1 1 n q 1 (9.79) Ristiriita, joten n = p P. Lause 9.14. Olkoon H äärellinen syklinen ryhmä eli H = α, #H = h. Tällöin #{β H H = β } }{{} = φ(h). (9.80) Ryhmän H generaattoreiden lkm. Todistus: Tapaukset h = 1 ja h = 2 selviä. Oletetaan siis, että h 3. 1) Osoitetaan, että Olkoon ord α a = h, a Z h. (9.81) τ = α a, a Z h. 25
Jos a = 1, niin Ok. Joten olkoon a = 1. Aluksi τ h = 1. (9.82) Jos olisi niin τ h p i = 1, jollakin p i h; p i P, (9.83) α ah p i = 1. (9.84) Siten jollakin l Z. Välittömästi h ah ah = lh (9.85) p i p i a = lp i p i a. (9.86) Mutta a h = p k 1 1 p kr r. Ristiriita eli τ h p i = 1 p i h; p i P. (9.87) Lauseen 9.12 nojalla ord τ = ord α a = h, a Z h. (9.88) Ja 2) Osoitetaan vielä, että #{α a a Z h} = φ(h). (9.89) ord α b < h, b Z h Z h. (9.90) 26
Koska d = syt(b, h) 2 h = dl, b = dk, 1 l h 2 h 1, (9.91) niin (α b ) l = (α dl ) k = (α h ) k = 1 ord α b h 1. (9.92) 9.2 Sovelluksia ja esimerkkejä Lause 9.15. Olkoon H ryhmä ja α H. Tällöin α = α 1. (9.93) Huom 1. Lauseen 9.12 avulla saadaan toinen todistus Lauseelle 9.7. Esimerkki 8. Olkoon H ryhmä ja α, β H sekä ord α = 5, ord β = 7 ord αβ = 35. (9.94) Todistus: Luvun h = 35 alkutekijäjoukko on {5, 7}. Lasketaan (αβ) 35 = 1; (9.95) (αβ) h/5 = α 2 = 1; (9.96) Siten Lauseen 9.12 nojalla (αβ) h/7 = β 5 = 1. (9.97) ord αβ = h = 35. (9.98) 27
Esimerkki 9. Olkoon n N ja p P 3. Tällöin p n 2 + 1 p 1 (mod 4). (9.99) Todistus: Nyt ryhmässä Z p pätee n 2 = 1 n 4 = 1. (9.100) Osoitetaan, että ord n = 4, (9.101) missä luvun h = 4 alkutekijäjoukko on {2}. Lasketaan n h/2 = n 2 = 1. (9.102) Siten Lauseen 9.12 nojalla ord n = h = 4. (9.103) Toisaalta Pikku-Fermat n nojalla n p 1 = 1 9.6 4 p 1. (9.104) Esimerkki 10. Koska Z 13 = 2 ord 2 = 12 = φ(13), (9.105) niin Lauseen 9.14 nojalla tiedetään, että myös 2 a, a = 1, 5, 7, 11 12. (9.106) ovat generaattoreita. Osoitetaan kuitenkin suoraan Lauseen 9.12 avulla, että ord 2 5 = 12 = h. (9.107) Luvun h = 12 alkutekijäjoukko on {2, 3}. Tiedetään, että (2 5 ) 12 = 1; (9.108) 28
Näytetään vielä, että (2 5 ) h/2 = 1; (9.109) (2 5 ) h/3 = 1. (9.110) Lauseen 9.12 nojalla ord 2 5 = h = 12. (9.111) Edelleen, Lauseen 9.15 nojalla saadaan 2 7 = 2 7 = 2 5 = 2 ; (9.112) 2 11 = 2 1 = 2. (9.113) 29
9.3 Nopeaa potenssilaskentaa Lasketaan ryhmässä H alkion a H potenssi: a r, r Z +, r h = #H, r = e t 1 2 t 1 +... + e 0, e i {0, 1}, e t 1 = 1. (9.114) Aluksi: a 1 = a a 2 = a 2 1 = a 21 a 3 = a 2 2 = a 22 (9.115) Yhteensä t 1 kertolaskua. Seuraavaksi:. a t = a 2 t 1 = a 2t 1. a r = a e t 1 t missä korkeintaan t 1 kertolaskua. Siten a e t 2 t 1... a e 0 1, (9.116) Lemma 9.3. Olkoon 1 r h = #H. Tällöin Potenssin a r laskemiseen tarvitaan ryhmän H laskutoimitusta. 2t 2 2 log 2 r 2 log 2 h (9.117) Esimerkki 11. a Z p, #Z p = p 1 = h. (9.118) r p 1 2 500 2t 2 1000. (9.119) 30
9.4 Diskreetti logaritmi kertolaskuryhmässä Olkoon H äärellinen syklinen kertalukua h = #H oleva ryhmä eli H = β = {β j j = 0, 1,..., h 1} = {1, β, β 2,..., β h 1 }. (9.120) Huomaa, että β 0 = β h = β 2h =... = 1. (9.121) Määritelmä 9.3. Alkion y H diskreetti logaritmi kannan β suhteen on eksponentti k {0, 1,..., h 1}, jolle pätee y = β k. Tällöin käytetään merkintää k = log β y. (9.122) Lause 9.16. log β 1 = 0; (9.123) log β xy log β x + log β y (mod h); (9.124) log β x k k log β x (mod h). (9.125) Todistus: 31
Esimerkki 12. H = Z 71 = 7 on syklinen ja h = φ(71) = 70. Lasketaan siis (mod 71) ja eksponentit (mod 70). 7 2 = 49 log 7 49 = 2 7 3 = 59 log 7 59 = 3 7 6 = 2 log 7 2 = 6. 7? = 33 log 7 33 =? 7 35 = 70 = 1 log 7 70 = log 7 1 = 35. 7 69 = 61 log 7 61 = 69 7 70 = 1 = 7 0 log 7 1 = 0 32
10 Hieman polynomialgebraa Olkoon R ykkösellinen rengas. Tällöin R[x] = {P (x) P (x) = n p k x k ; p k R, n N} (10.1) k=0 on R-kertoimisten polynomien joukko. Jos p n = 0, niin polynomin aste deg P (x) = n, erityisesti deg 0(x) =. Pääpolynomiksi (monic polynomial) sanotaan polynomia, missä korkeimman potenssin kerroin p n = 1. Määritelmä 10.1. Olkoot P (x) = n p k x k, k=0 jolloin asetetaan n Q(x) = q k x k R[x], k=0 P (x) = Q(x) k(p k = q k ); P (x) + Q(x) = k 0(p k + q k )x k ; (10.2) P (x)q(x) = k 0 r k x k, missä r k = joka on Cauchyn kertosääntö. k p i q k i = p i q j, (10.3) i=0 i+j=k Tällöin R[x] on rengas, missä 0(x) = 0 + 0 x + 0 x 2 +... (10.4) on nolla-alkio ja 1(x) = 1 + 0 x + 0 x 2 +... (10.5) 33
on ykkösalkio. Olkoon R = K kunta. Tällöin polynomirengas K[x] on kokonaisalue, jossa pätee Lemma 10.1. Jakoalgoritmi: Olkoon a(x), b(x) K[x], a(x)b(x) = 0(x) ja deg b(x) deg a(x). Tällöin q(x), r(x) K[x] s.e. [(J.A.)] a(x) = q(x)b(x) + r(x), deg r(x) < deg b(x). (10.6) Seurauksia: Lemma 10.2. Olkoon p(x) K[x]. Tällöin p(α) = 0, α K (x α) p(x). (10.7) K[x] Lemma 10.3. Olkoon p(x) K[x] ja deg p(x) = n N. Tällöin #{α K p(α) = 0} n. (10.8) Erityisesti, kun K = Z p, p P, niin pätee Lemma 10.4. Olkoon p(x) Z p [x] ja deg p(x) = n N. Tällöin #{α Z p p(α) = 0} n. (10.9) Kokonaisalueen D = K[x] yksikköryhmä on K. Joten polynomien a(x) ja b(x) suurin yhteinen tekijä d(x) = s.y.t.(a(x), b(x)) voidaan valita pääpolynomiksi. Lemma 10.5. Eukleideen algoritmin nojalla saadaan, että on olemassa sellaiset polynomit s(x), t(x) K[x], että d(x) = s(x)a(x) + t(x)b(x). (10.10) 34
11 Primitiivijuuret 11.1 Ryhmät Z n Määritelmä 11.1. Olkoon n Z 2. Luku b {1, 2,..., n 1} on primitiivijuuri (mod n), jos Z n = b eli b generoi ryhmän Z n. Tällöin diskreetille logaritmille käytetään myös merkintää ind b y = log b y. Lause 11.1. Z n on syklinen n = 2, 4, p l, 2p l, l Z +, p P 3. (11.1) Siten Primitiivijuuri (mod n) n {2, 4} P Z+ 3 2P Z+ 3. Huomaa, että Z n = b ord b = φ(n). (11.2) Todistetaan 11.1 vaiheittain. Lause 11.2. Olkoon n = 2 k, tällöin Z n on syklinen k = 1, 2. Todistus. Aluksi ja Z 2 = 1 (11.3) Z 4 = 3. (11.4) Olkoon nyt n = 2 k, k 3. Tällöin Z 2 k = {2l + 1 l = 0, 1,..., 2 k 1 1}. (11.5) Tutkitaan lukua a = 1 + 2l 1. a 2 = 1 + 2 3 l 2 (11.6) 35
josta... Mutta a 22 = 1 + 2 4 l 3 (11.7) a 2k 2 1 (mod 2 k ) k Z 3 (11.8) φ(2 k ) = 2 k 1 > 2 k 2. (11.9) Joten (11.2) ei toteudu millään a Z. 2 k Lause 11.3. Olkoon p P 3, tällöin Z p on syklinen. Todistus. Pitäisi löytää sellainen alkio a Z p, että ord a = φ(p) = p 1. (11.10) Vastaoletus Koska niin Olkoon Nyt ord x p 2 x Z p. (11.11) ord x p 1, (11.12) ord x p 1 2 x Z p. (11.13) max ord x = K = ord y jollakin y Z p (11.14) ord x K x Z p, (11.15) sillä, jos olisi x Z p, jolle ord x = h K, (11.16) niin Lemman 9.10 nojalla löytyy sellainen z Z p, että ord z = [h, K] > K. (11.17) 36
Ristiriita. Täten x K = 1 x Z p p(x) = x K 1 = 0 x Z p (11.18) eli #{α Z p p(α) = 0} = p 1. (11.19) Mutta Ristiriita Lemman 10.4 kanssa. deg p(x) = K p 1 2 < p 1. (11.20) Merkintä 1. ord n α = ord α, α Z n. (11.21) Lause 11.4. Olkoon p P 3, tällöin Z p 2 on syklinen. Todistus. Olkoon Z p = r ord p r = φ(p) = p 1, p r (11.22) ja Siten ja edelleen Siispä josta n = ord p 2 r. (11.23) r n 1 (mod p 2 ) (11.24) r n 1 (mod p). (11.25) p 1 n φ(p 2 ) = p(p 1), (11.26) n = p 1 (11.27) 37
tai n = p(p 1). (11.28) Jos (11.28), niin Z p2 = r. (11.29) Olkoon siis joten n = p 1, (11.30) r p 1 1 (mod p 2 ). (11.31) Merkitään s = r + p, jolle pätee Z p = s ord p s = φ(p) = p 1, p s. (11.32) Koska tai niin myös tai Määrätään n = ord p 2 r = p 1 (11.33) n = ord p 2 r = p(p 1). (11.34) ord p 2 s = p 1 (11.35) ord p 2 s = p(p 1). (11.36) s p 1 = (r + p) p 1 = (11.37) ( ) p 1 r p 1 + (p 1)r p 2 p + r p 1 p 2 +... + p p 1 (11.38) 2 38
1 pr p 2 (mod p 2 ) (11.39) Jos olisi niin s p 1 1 (mod p 2 ), (11.40) pr p 2 0 (mod p 2 ), (11.41) Ristiriita. Siten ord p 2 s = p(p 1) = φ(p 2 ) Z p2 = s. (11.42) Apulause. Olkoon v Z p 2. Jos v p 1 1 (mod p 2 ), (11.43) niin v pk 2 (p 1) 1 (mod p k ) k Z 2. (11.44) Todistus. Aluksi tapaus k = 3. Eulerin lauseella ja oletuksella (11.43) saadaan v p 1 = 1 + dp, p d. (11.45) Edelleen v p(p 1) = (1 + dp) p = (11.46) 1 + pdp + Induktio-oletus: k = l, jolloin pätee ( ) p (dp) 2 +... 1 + dp 2 1 (mod p 3 ). (11.47) 2 v pl 2 (p 1) 1 (mod p l ). (11.48) 39
Induktioaskel: Euler-Fermat ja induktio-oletus antavat v pl 2 (p 1) = 1 + fp l 1, p f. (11.49) Potenssiin v pl 1 (p 1) = (1 + fp l 1 ) p 1 + fp l 1 (mod p l+1 ). (11.50) Lause 11.5. Olkoon p P 3, k Z + tällöin Z p k on syklinen. Todistus. Olkoon Z p = r, ord p r = φ(p) = p 1, p r (11.51) ja Z p 2 = v, ord p 2 v = p(p 1) = φ(p2 ), (11.52) missä v = r tai v = r + p. Väite Z p k = v ord p k v = p k 1 (p 1) = φ(p k ). (11.53) Apulauseen nojalla tiedetään, että v pl 2 (p 1) 1 (mod p l ) l Z 2. (11.54) Olkoon joten Lisäksi ja edelleen h = ord p k v, (11.55) h p k 1 (p 1) = φ(p k ). (11.56) v h 1 (mod p k ) (11.57) v h 1 (mod p). (11.58) 40
Vielä joten Nyt oli josta v r (mod p), (11.59) r h 1 (mod p). (11.60) ord p r = φ(p) = p 1, (11.61) p 1 h h = K(p 1). (11.62) Yhdistä (11.56) ja (11.62), jolloin K(p 1) p k 1 (p 1) K = p j 0 j k 1. (11.63) Edelleen Koska h = p j (p 1). (11.64) v h 1 (mod p k ) (11.65) ja jos olisi j k 2, niin saataisiin v pk 2 (p 1) 1 (mod p k ). (11.66) Ristiriita tuloksen (11.54) kanssa. Siten h = p k 1 (p 1) = φ(p k ) = ord p k v = #Z p k. (11.67) Lause 11.6. Olkoon p P 3, k Z + tällöin Z 2p k on syklinen. Todistus. (Kotitehtävä: lisää tarvittavat välivaiheperustelut.) Aluksi huomio Z p k = v Z p k = v + p k. (11.68) 41
Siten voidaan olettaa, että 2 v, v 2p k. (11.69) Olkoon Välittömästi ja josta Niinpä h = ord 2p k v. (11.70) h φ(2p k ) = φ(p k ) (11.71) v h 1 (mod 2p k ), (11.72) v h 1 (mod p k ). (11.73) h φ(p k ) h, h = φ(p k )h = φ(2p k ). (11.74) Lause 11.7. Olkoot n Z +, q {4} P 3, p P 3, p = q ja pq n. Tällöin Z n ei ole syklinen. Todistus. Olkoon Merkitään Huomaa, että Valitaan joten n = BC, B, C 3, B C. (11.75) k = [φ(b), φ(c)], d = (φ(b), φ(c)). (11.76) 2 d, kd = φ(b)φ(c). (11.77) a Z n, (11.78) a φ(b) 1 (mod B). (11.79) 42
Edelleen Vastaavasti joten Vielä Siispä a k = a φ(b)φ(c) d 1 (mod B). (11.80) a k 1 (mod C), (11.81) a k 1 (mod BC). (11.82) k = φ(b)φ(c) d φ(bc) 2 = φ(n) 2. (11.83) Z n = a a Z n. (11.84) Lauseet 5.2 5.7 osoittavat Lauseen 5.1 todeksi. Tutkitaan vielä ryhmää Z 2 k. Lauseen 5.2 nojalla, jos k Z 3, niin Apulause. Olkoon k Z 3. Tällöin Todistus. Yhtälön (11.8) nojalla Z 2 k = a a Z 2 k. (11.85) ord 2 k 5 = φ(2k ). (11.86) 2 5 2k 2 1 (mod 2 k ). (11.87) Olkoon jolloin h = ord 2 k 5, (11.88) h 2 k 2, h = 2 m, m k 2. (11.89) 43
Induktiolla saadaan 5 2l 3 1 + 2 l 1 1 (mod 2 l ) l Z 3. (11.90) Jos olisi m k 3, niin relaatiosta 5 n = 5 2m 1 (mod 2 k ) (11.91) seuraisi Ristiriita. Siten 5 2k 3 1 (mod 2 k ). (11.92) h = ord 2 k 5 = 2 k 2. (11.93) Merkintä 2. Olkoon G Abelin ryhmä ja a, b G. Tällöin a, b = {a i b j i, j Z}. (11.94) Huomaa, että a, b G. (11.95) Kun G on äärellinen g = #G, niin silloin a, b = {a i b j 0 i, j g 1}. (11.96) Lause 11.8. Z 2 k = 1, 5 k Z 1. (11.97) Todistus. Tapaukset k = 1, 2 OK. Olkoon k 3 ja H = 5 = {5 i i = 0, 1,..., 2 k 2 1}, #H = 2 k 2, (11.98) L = { 5 i i = 0, 1,..., 2 k 2 1}, #L = 2 k 2. (11.99) 44
Jos olisi niin #H = #L = #Z 2 k. (11.100) 2 5 j = 5 i Z 2 k, (11.101) 5 j 5 i (mod 2 k ) 5 j 5 i (mod 4) (11.102) 1 1 (mod 4). (11.103) Ei käy tällainen, joten joukot H ja L ovat erillisiä ja yhdessä täyttävät joukon Z 2 k eli H L = Z 2, H L =. (11.104) k II Tapa: Tarkastellaan aliryhmän 5 sivuluokkia. 11.2 Sovelluksia ja esimerkkejä Olkoon seuraavassa p P 3 ja Z p = β, jolloin β p 1 = 1. A). Olkoot n Z. Lasketaan Välittömästi a) p 1 n. Tällöin eli A n = a Z p a n. (11.105) p 2 p 2 A n = (β i ) n = (β n ) i. (11.106) i=0 i=0 p 2 A n = 1 i = p 1 (11.107) i=0 1 n + 2 n + 3 n +... + (p 1) n 1 (mod p). (11.108) 45
b) p 1 n. Tällöin β n = 1 ja A n = (βn ) p 1 1 β n 1 = (βp 1 ) n 1 β n 1 = 0 (11.109) eli c) Erityisesti 1 n + 2 n + 3 n +... + (p 1) n 0 (mod p). (11.110) 1 + 1 2 + 1 3 +... + 1 p 1 0 (mod p). (11.111) B). Olkoot n Z. Tällöin B n = a = 1. (11.112) a Z p 11.2.1 Polynomiyhtälöitä Olkoon seuraavassa H = β kertalukua h Z + oleva syklinen ryhmä, jolloin β h = 1. Lause 11.9. Olkoon k Z +, (h, k) = d ja a H. Tällöin yhtälöllä x k = a ratkaisu x H d S = log β a. (11.113) Todistus. " ". Olkoon aluksi a = β S ja x = β R H, (11.114) jolloin yhtälöstä x k = a seuraa β kr = β S = β S+jh, j Z. (11.115) Yhtälö (11.115) toteutuu, mikäli yhtälöllä kr = S + jh (11.116) 46
on ratkaisu R, j. Koska d k, d h, niin välttämättä d S. " ". Oletetaan siis d S = dd. Tällöin yhtälöllä kr = S + jh (11.117) on ratkaisu R, j. Siten (β R ) k = β S+jh = β S, j Z. (11.118) Siispä x = β R H toteuttaa yhtälön x k = a. (11.119) Huomio: Yhtälön (11.117) ratkaisun olemassaolo. Koska d = (k, h), niin Eukleideen algoritmin nojalla (kts. Algebra I tai Lukuteoria I) saadaan Bh + Ck = d, B, C Z. (11.120) Siispä (DC)k = S + ( DB)h. (11.121) Aseta vielä R = DC, j = DB. Lause 11.10. Olkoon k Z +, (h, k) = d ja a H. Tällöin yhtälöllä x k = a ratkaisu x H a h/d = 1. (11.122) Todistus. a h/d = 1 (11.123) S h d = jh S = jd d S (11.124) yhtälöllä x k = a on ratkaisu ryhmässä H. 47
Olkoon seuraavassa p P 3 ja Z p = β, jolloin β p 1 = 1. C). Yhtälöllä x 2 = 1 (11.125) on ratkaisut x = ±1 Z p. Toisaalta toteuttaa yhtälön (11.125). Siten α = β p 1 2 (11.126) β p 1 2 = 1. (11.127) D). Yhtälö x 2 = a Z p. (11.128) Nyt d = (h, k) = (p 1, 2) = 2. Täten Yhtälö (11.128) ratkeaa, kunhan d = 2 S = log β a. (11.129) Tällöin 2R = S + j(p 1). (11.130) E). Yhtälö x 2 = 1 Z p. (11.131) Nyt d = (h, k) = (p 1, 2) = 2. Täten Yhtälö (11.131) ratkeaa, kunhan d = 2 S = log β 1 = p 1 2 = 2k p = 4k + 1. (11.132) Eli yhtälöllä x 2 = 1 ratkaisu x Z p p = 4k + 1. (11.133) ja yhtälöllä x 2 = 1 ratkaisua x Z p p = 4k + 3. (11.134) 48
F). x 3 = 4 Z 13 = 2. (11.135) Nyt d = (h, k) = (p 1, 3) = 3. Lasketaan a h/d = 4 12/3 = 2 8 = 1. (11.136) Siten yhtälöllä (11.135) ei ole ratkaisua ryhmässä Z 13. G). Lasketaan x 3 = 5 Z 13 = 2. (11.137) a h/d = 5 12/3 = (2 9 ) 4 = 1. (11.138) Siten yhtälöllä (11.137) on ratkaisuja ryhmässä Z 13. Saadaan 3R = log 2 5 + j 12 = 9 + j 12 r = 3 + 4j, (11.139) josta ratkaisut (R, j) = (3, 0), (7, 1), (11, 2), x = 8, 11, 7. (11.140) 49
12 Neliöjäännökset 12.1 Yhtälö x 2 = a syklisessä ryhmässä Lause 12.1. Olkoon H = β, h = #H. Jos 2 h, niin #{a H x H : x 2 = a} = h 2. (12.1) Jos 2 h, niin #{a H x H : x 2 = a} = h. (12.2) Todistus. (12.1): Määrätään ryhmän H neliöt a = (β l 1 ) 2, 0 l 1 h 1. (12.3) Olkoon vielä a = (β l 2 ) 2, 0 l 1 l 2 h 1. (12.4) jolloin saadaan β 2(l 2 l 1 ) = β jh, 0 2(l 2 l 1 ) 2h 2. (12.5) Siten eli 2(l 2 l 1 ) = 0 tai 2(l 2 l 1 ) = h (12.6) l 2 = l 1 tai l 2 = l 1 + h/2. (12.7) Tällöin saadaan #{a = x 2 } = #{a = β 2l 1 0 l 1 h/2 1} = h/2. (12.8) Esim. β 2 0 = β 2 h/2 = 1,... (12.9) 50
Huom. Kohdassa (12.1), jolloin 2 h ja β h = 1, yhtälöllä x 2 = β 2l (12.10) on ratkaisut Mutta yhtälöllä x 1 = β l, x 2 = β l+h/2. (12.11) x 2 = β 2l+1 l = 0, 1,..., h 1 (12.12) ei ole ratkaisua H:ssa! Sanotaakin, että a = β 2l on neliö ja a = β 2l+1 on epäneliö, joita on siis yhtä paljon eli #{ } = #{ } = h 2. (12.13) Olkoon nyt H = Z p = β ja h = p 1 = #H, missä p P 3. Tällöin 2 h ja 1 = 1, sekä 1 = β p 1 2, (12.14) jolloin yhtälöllä on ratkaisut x 1 = β l, x 2 = β 2l (12.15) p 1 l+ x 2 = β 2 = β l Z p. (12.16) Mutta yhtälöllä x 2 = β 2l+1 l = 0, 1,..., h 1 (12.17) ei ole ratkaisua Z p:ssa. Määritelmä 12.1. Luku a Z (a Z p) on neliönjäännös (mod p), jos x Z p s.e. x 2 = a, (12.18) muutoin epäneliö. 51
Huom. Z 2 = {1} = {1 2 }. (12.19) Lause 12.2. Olkoon p P 3. Joukossa Z p = β neliöitä ja epäneliöitä on yhtäpaljon = p 1 2. Neliö = β2l, epäneliö = β 2l+1 aina, kun l = 0, 1,..., (p 3)/2. 12.2 Legendren symboli Määritelmä 12.2. Olkoon a Z ja p P 3. Legendren symboli ( a) määritellään p asettamalla 0, jos p a ( a = 1, jos a on neliönjäännös (mod p) (12.20) p) 1, jos a on epäneliö (mod p). Legendren symboli kertoo, milloin a on neliönjäännös (mod p) eli milloin a on neliö Z p:ssä. Lause 12.3. Eulerin kriteeri. Olkoon a Z ja p P 3. Tällöin Todistus. Olkoon β = Z p, jolloin β p 1 = 1 ja ( a p) a p 1 2 (mod p). (12.21) β p 1 2 = 1. (12.22) ( a p) = 1 a = β 2l a p 1 2 = (β p 1 ) l = 1. (12.23) ( a p) = 1 a = β 2l+1 a p 1 2 = (β p 1 2 ) 2l+1 = 1. (12.24) 52
Esimerkki 13. p = 23 P, a = 5, p 1 2 = 11. (12.25) ( 5 5 23) 11 = (5 2 ) 5 5 = 2 5 5 = 9 5 1 (mod 23) (12.26) eli 5 on epäneliö (mod 23). Lause 12.4. Legendren symboli toteuttaa seuraavat ehdot: ( a a b (mod p), = p) ( b p). (12.27) ( ab ) ( a )( b =. (12.28) p p p) ( a 2 ) a 0 (mod p), = 1, p ( 1 = 1. (12.29) p) ( 1 ) = ( 1) p 1 2. (12.30) p ( 2 p) = ( 1) p2 1 8 = 1, jos p ±1 (mod 8) 1, jos p ±3 (mod 8). (12.31) Todistus. (12.27) Eulerin kriteerillä ( a ( a p) p 1 2 b p 1 b 2 p) (mod p). (12.32) (12.28) Eulerin kriteerillä ( ab ) ( (ab) p 1 2 a p 1 p 1 a )( b 2 b 2 p p p) (mod p). (12.33) (12.29) Määritelmästä suoraan. 53
(12.30) Eulerin kriteerillä. (12.31) Gaussin lemmalla myöhemmin. Esimerkki 14. ( 89 13 ) = ( 2 13 ) = ( 1 13 )( 2 13 1 ) = ( 1) 2 ( 1) 132 1 8 = 1. (12.34) 13 siten 89, 2 ja 11 ovat epäneliöitä (mod 13). Lause 12.5. Resiprookkilause. Olkoot p, q P 3, p = q. Tällöin ( q )( p ) = ( 1) (p 1)(q 1) 4. (12.35) p q Esimerkki 15. 1009 P. Lasketaan ( 713 1009 ) = ( 23 31 )( 1009 1009 ) = ( 1) (23 1)(1009 1) 4 + (31 1)(1009 1) 4 ( 1009 23 )(1009 31 ) = Siten yhtälöllä ( 20 23 )(17 ) =... = 1. (12.36) 31 x 2 713 (mod 1009), x Z, (12.37) on ratkaisuja. 12.3 Gaussin Lemma Jakoyhtälö: Olkoot a, b, q, r Z, b Z +. Tällöin a = qb + r, 0 r < b. (12.38) Jakoyhtälöstä (Lukuteorian perusteet) saadaan a q =, r = a b b a b. (12.39) 54
Olkoot p P 3, a Z, p a. Jaetaan seuraava jakojäännöksien joukko Isoihin jakojäännöksiin ja Pieniin jakojäännöksiin Huomaa, että R a = {r k 1 r k p 1, (12.40) r k ak (mod p), 1 k (p 1)/2} I a = {r k R a (p + 1)/2 r k p 1}, s = #I a (12.41) P a = {r k R a 1 r k (p 1)/2}, t = #P a. (12.42) s + t = p 1 2. (12.43) Lause 12.6. Gaussin Lemma. Olkoot p P 3, a Z, p a ja s = #I a. (12.44) Tällöin ( a = ( 1) p) s. (12.45) Todistus. Merkitään I a = {b 1,..., b s }, P a = {l 1,..., l t } (12.46) ja lasketaan tulo S = b 1 b s l 1 l t = 2 r k p 1 k=1 Toisaalta 2 ( ) p 1 ka =!a p 1 2 (mod p). (12.47) 2 p 1 k=1 S ( 1) s (p b 1 ) (p b s )l 1 l t (mod p), (12.48) 55
missä tulon alkiot ovat erillisiä (mod p). Nimittäin, jos olisi p b i l j (mod p), (12.49) niin Edelleen p k i a k j a (mod p), 1 k i, k j (p 1)/2. (12.50) p k i + k j, 2 k i + k j p 1. (12.51) Ei mahdollista. Täten joukolle T = {p b 1,...p b s, l 1,..., l t } (12.52) pätee #T = s + t = p 1, x T 1 x (p 1)/2. (12.53) 2 Siten T = {p b 1,...p b s, l 1,..., l t } = {1, 2,..., (p 1)/2} (12.54) ja niinpä Täten josta väite seuraa. ( p 1 2 S ( 1) s t T t = ( 1) s 2 k = p 1 k=1 ( ) p 1 ( 1) s! (mod p). (12.55) 2 )!a p 1 Lause 12.7. Olkoot p P 3. Tällöin ( p 1 2 ( 1) s 2 )! (mod p), (12.56) ( 2 p) = ( 1) p2 1 8. (12.57) 56
Huomaa, että (12.57) on yhtäpitävää seuraavan tuloksen kanssa. Todistus laskareissa. Olkoot p P 3. Tällöin ( 2 = 1 p = 8k ± 1. (12.58) p) Todistetaan (12.58). Lasketaan missä s = #I a = #{r k R 2 (p + 1)/2 r k p 1}, (12.59) R 2 = {r k 1 r k p 1, (12.60) r k 2k (mod p), 1 k (p 1)/2}. Saadaan ehdot (p + 1)/2 2k p 1, 1 k (p 1)/2 (12.61) Siten joten Tutkitaan p (mod 8). s = p 1 2 s = 8k + 2 2 { s = # k p + 1 4 p + 1 4 p + 1 4 k p 1 2. (12.62) k p 1 }, (12.63) 2 + 1 = p + 1 2 p + 1 4. (12.64) p = 8k + 1 (12.65) 8k + 2 = 4k + 1 (2k + 1) 2Z. (12.66) 4 57
p = 8k + 3 s 2Z + 1. (12.67) p = 8k + 5 s 2Z + 1. (12.68) p = 8k + 7 s 2Z. (12.69) Saatiin (12.58). Lause 12.8. Olkoot p P 3, a 2Z + 1, p a ja asetetaan v = 2 p 1 k=1 ka. (12.70) p Tällöin ( a = ( 1) p) v. (12.71) Todistus: Yhtälön (12.39) nojalla ka ka = p + r k, p 0 r k p 1. (12.72) Tästä Oli Näistä saadaan josta (mod 2) 2 ka = p p 1 k=1 p 1 2 p 1 k=1 2 k = k=1 (a 1) p 1 ka + p s b i + i=1 s (p b i ) + i=1 t l j. (12.73) j=1 t l j. (12.74) j=1 2 k = pv sp + 2 k=1 s b i (12.75) v s (mod 2) ( 1) v = ( 1) s. (12.76) i=1 58
Vielä Gaussin lemma. Todistetaan sitten Resiprookkilause 12.10 eli: Olkoot p, q P 3, p = q. Tällöin ( q )( p ) = ( 1) (p 1)(q 1) 4. (12.77) p q Todistus. Merkitään ( q p) = ( 1) s 1 = ( 1) v 1, ( p ) = ( 1) s 2 = ( 1) v 2. (12.78) q Osoitetaan, että missä v 1 = v 1 + v 2 = p 1 2 m=1 mq p (p 1)(q 1), (12.79) 4, v 2 = 2 q 1 n=1 np. (12.80) q Jaetaan joukko N = {(x, y) Z 2 1 x (p 1)/2, 1 y (q 1)/2} (12.81) osiin #N = (p 1)(q 1), (12.82) 4 A = {(x, y) N y < qx/p}, (12.83) Y = {(x, y) N y > qx/p}. (12.84) Välittömästi A Y = N, A Y =. (12.85) Lasketaan vielä joukkojen A ja Y mahtavuudet. Olkoon aluksi x = m kiinteä, jolloin mq #{(m, y) A} = #{y 1 y < qx/p} =. (12.86) p 59
Niinpä ja vastaavasti Koska #A = #Y = p 1 2 m=1 2 q 1 n=1 mq = v 1 (12.87) p np = v 2. (12.88) q #A + #Y = #N, (12.89) niin saadaan v 1 + v 2 = (p 1)(q 1). (12.90) 4 12.4 Jacobin symboli Määritelmä 12.3. Olkoon a Z ja n 2Z + 1 3, jonka alkutekijäesitys on n = p α 1 1 p αr r, p i P. (12.91) Tällöin Jacobin symboli ( a ) määritellään asettamalla n ( a ( a ) α1 ( a ) αr. = (12.92) n) p 1 p r Lause 12.9. Jacobin symboli toteuttaa seuraavat ehdot: a b (mod n), ( a n ) = ( b ). (12.93) n ( ab n ) = ( a n )( b ). (12.94) n a n, ( a2 n ) = 1, ( 1 ) = 1. (12.95) n ( 1 n 1 ) = ( 1) 2. (12.96) n 60
( 2 = ( 1) n) n2 1 1, jos n ±1 (mod 8) 8 = 1, jos n ±3 (mod 8). (12.97) Lause 12.10. Yleistetty Resiprookkilause. Olkoot m, n 2Z + 1 3, m n. Tällöin ( m ) ( = ( 1) (m 1)(n 1) n 4. (12.98) n m) Huom 2. Jos n on yhdistetty luku, niin ( a ) ei kerro sitä, onko kongruenssilla n x 2 a (mod n) (12.99) ratkaisu vai ei. 61
12.5 Sovelluksia Esimerkki 16. Olkoon p, q P 3 ja p = 4q + 1. Tällöin Z p = 2. (12.100) Todistus: Aluksi huomataan, että pienimmät tällaiset alkuluvut ovat p = 13, 29,... (12.101) Nyt ryhmässä Z p pätee h = p 1 = #Z p, (12.102) missä luvun h = 4q alkutekijäjoukko on {2, q}. Tarkastellaan potensseja 2 h/q = 2 4 = 1 Z p, (12.103) 2 h/2 = 2 p 1 2. (12.104) Tässä Siten 2 p 1 2 12.21 = ( 2 p ) 12.57 = ( 1) p2 1 8 = 1 Z p. (12.105) 2 h/2 = 1 = 1 Z p. (12.106) Niinpä Lauseen 9.12 nojalla saadaan ord 2 = h = p 1 12.100. (12.107) 62
13 Deterministisiä alkulukutestejä 13.1 Ei-polynomiaikaisia Olkoon n annettu luku Z +. DT1=Eratostheneen seula. Kokeillaan luvut (tai alkutekijät, jos tiedetään) n. Esimerkki 17. n = 42833. 2, 3, 5 n 7 n 42833 = 7 6119. n 1 = 6119. 7, 11, 13, 17, 19, 23 n 29 6119 = 29 211, n 2 = 211 mutta 23 > 211 Stop. 42833 = 7 29 211. (Kokeiltavia alkulukuja tarvitaan korkeintaan π( n) = jakolaskujen lukumäärä, missä π( n) = O( n log ). Siten n T IME(DT 1) = O(2 O(n 1 2 log n) = O(le l/2 ) n 1 2 log n log2 n) = missä log n = O(l), l = l(n), eli DT 1 on eksponentiaalinen.) DT2=Lucasin testi=lemma 9.13, joka soveltuu hyvin vain luvuille n, joilla luvun n 1 alkutekijät ovat "pieniä"eli B = O(log n). Tällöin n 1 on B-tasainen 63
(ja testi on polynomiaikainen, jos B = O(log n).) Lemma 3.12: LUCASIN ALKULUKUTESTI. Olkoot a, n Z +, a n. Jos a n 1 1 (mod n) (13.1) ja a n 1 p i 1 (mod n) p i n 1, p i P, (13.2) niin n = p P. DT3= 2. Lucasin testi on Lemman 9.13 muunneltu versio. Lemma 13.1. DT3=2. LUCASIN ALKULUKUTESTI. Olkoot n Z + ja n 1 = Jos jokaista i = 1,..., s kohti on olemassa sellainen a i, että s i=1 p k i i, p i P. (13.3) a n 1 i 1 (mod n) (13.4) ja n 1 p a i i 1 (mod n) (13.5) niin n = p P. Todistus: Olkoot h j = ord n a j h j n 1, h j φ(n). (13.6) Nyt 13.5 h j n 1 p j = p k j 1 j s i =j p k i i. (13.7) 64
Niinpä p k j j h j j = 1,..., s n 1 φ(n). (13.8) Jatketaan kuten Lemman 9.13 todistusta. Lemma 13.2. DT4=POCKLINGTONIN ALKULUKUTESTI. Olkoot n Z + ja n 1 = mk, m = s i=1 p k i i, p i P, m k, n m. (13.9) Jos jokaista i = 1,..., s kohti on olemassa sellainen a i, että a n 1 i 1 (mod n) (13.10) ja n 1 p syt(a i i 1, n) = 1 (13.11) niin n = p P. Todistus: Olkoot q n, q P ja h j = ord q a j h j q 1, h j n 1. (13.12) Nyt n 1 13.11 p a i i 1 (mod q) (13.13) Kuten aikaisemmin h j n 1 p j = k p k j 1 j s i =j p k i i, k m. (13.14) mistä Edelleen p k j j h j q 1 j = 1,..., s m q 1. (13.15) n m q 1. (13.16) 65
Jos olisi qr n, q, r P, qr ( n + 1) 2. (13.17) Ristiriita. Lemma 13.3. DT5=PROTHIN ALKULUKUTESTI. Olkoot n = k2 t + 1 Z +, k < 2 t, t Z + (13.18) ja a n 1 2 1 (mod n), a Z, (13.19) tällöin n = p P. Todistus laskareissa POCKLINGTONIN avulla. 13.2 Mersennen ja Fermat n luvut Mersennen luvut Fermat n luvut M n = 2 n 1, n Z + ; (13.20) F n = 2 2n + 1, n Z +. (13.21) Lause 13.1. Olkoot a Z, a 2, m Z +. Tällöin a m 1 P, m 2, a = 2 ja m = p P. (13.22) a m + 1 P 2 a ja m = 2 n, n N; (13.23) Todistus Lukuteorian perusteet kurssilla. Lause 13.2. M n P n = p P. (13.24) 66
Lause 13.3. Olkoon p P 3. Tällöin d M p d = 2kp + 1, k Z +. (13.25) [DT8] Lucas-Lehmer alkulukutesti. Olkoon p P 3. Määritellään rekursiojono Lemma 13.4. Olkoot u 0 = 4, u k+1 = u 2 k 2 k N. (13.26) α = 2 + 3, β = 2 3, (13.27) tällöin u k = α 2k + β 2k k N. (13.28) Todistus laskareissa. Lause 13.4. Lucas-Lehmer alkulukutesti. Olkoon p P 3. M p P M p u p 2. (13.29) Ennen todistusta määritellään seuraava rengas. Määritelmä 13.1. Olkoon q P. Asetetaan Z q [ 3] = {a + b 3 a, b Z q } (13.30) ja laskutoimitukset (a + b 3) + (c + d 3) = (a + b) + (c + d) 3, (13.31) (a + b 3) (c + d 3) = (ac + 3bd) + (ad + bc) 3. (13.32) 67
Lemma 13.5. (Z q [ 3], +, ) on kunta. Todistus laskareissa. HUOM: Kyseessä on kuntalaajennus (Algebra II) eli tarkemmin Z q [ 3] = F = Z q [x]/ x 2 3, (13.33) missä merkintä 3 tarkoittaa renkaan F alkiota x, jolle pätee x 2 = 3 2 = 3, x = 3 F. (13.34) Edelleen 3 Zq ( ) 3 = 1 q ±1 (mod 12). (13.35) q Todistus laskareissa. Huomaa, että ja erityisesti Lemma 13.6. F = F {0} (13.36) α = 2 + 3, β = 2 3 F. (13.37) #F q 2, #F q 2 1. (13.38) Tarkemmin #F = q tai q 2, #F = q 1 tai q 2 1. (13.39) Todistus luennolla. Lauseen 13.4 todistus. " ". Olkoon M p = q = 2 p 1 P q + 1 2 = 2 p 1. (13.40) 68
Aluksi q = 2 p 1 7 (mod 12) ( ) 3 = 1. (13.41) q Edelleen Eulerin (12.21) kriteerillä ( ) 3 3 q 1 2 1 q (mod q) (13.42) ja ( ) 2 2 q 1 2 ( 1) q2 1 8 (13.43) q ( 1) 2p 2 (2 p 1 1) = 1 (mod q). (13.44) Olkoon seuraavaksi Lasketaan (a + b 3) q = a q + ( ) q + a 2 b q 2 3 q 2 + q 2 a + b 3 F. (13.45) ( ) q a q 1 b 3 + 1 ( ) q a q 2 b 2 3 +... (13.46) 2 ( ) q ab q 1 3 q 1 + b q 3 q (13.47) 1 Siten tuloksen (13.42) nojalla a q + b q 3 q a + b3 q 1 2 3 (mod q). (13.48) (a + b 3) q = a b 3 F. (13.49) Koska niin 2α = 4 + 2 3 = (1 + 3) 2, (13.50) 2 q+1 2 α q+1 2 = (1 + 3) q+1 (13.51) 69
2 2 q 1 2 α q+1 2 = (1 + 3)(1 3) = 2 (13.52) α q+1 2 = 1 α 2p 1 = 1. (13.53) Siten u p 2 = α 2p 2 + β 2p 2 = β 2p 2 (α 2p 1 + 1) = 0 F (13.54) ja lopulta u p 2 0 (mod q) u p 2 0 (mod M p ). (13.55) " ". Olkoon siis M p u p 2 = α 2p 2 + β 2p 2 = DM p, D Z +, (13.56) josta Vastaoletus α 2p 1 = DM p α 2p 2 1. (13.57) M p P q P, q M p, q 2 M p. (13.58) Tällöin (13.57) nojalla α 2p 1 1 (mod q), α 2p 1 (mod q) (13.59) eli α 2p 1 = 1, α 2p = 1 F. (13.60) Siten Lauseen 9.12 nojalla ord α = 2 p #F q 2 1 (13.61) M p 1 = 2 p 2. Ristiriita. (13.62) 70
Esimerkki 18. M 7 = 127. Lasketaan u 1 = 14, u 2 67 (mod 127), u 3 42 (mod 127), (13.63) joten M 7 P. u 4 16 (mod 127), u 5 0 (mod 127) (13.64) Lause 13.5. M p 2 Mp 2 p P. (13.65) Siten Mersennen luvut alkulukuindeksillä ovat alkulukuja tai pseudoalkulukuja kannan 2 suhteen, katso Määritelmä 14.1.. Lause 13.6. F n 2 Fn 2 n Z +. (13.66) Siten Fermat n luvut ovat alkulukuja tai pseudoalkulukuja kannan 2 suhteen. Lause 13.7. Lause 13.8. F n = F 0 F 1 F 2 F n 1 + 2, n Z +. (13.67) F n F m, n = m. (13.68) Lause 13.9. Olkoon n Z 2. Jos p P, p 2 2n + 1, (13.69) niin p 1 (mod 2 n+2 ). (13.70) 71
Todistus. Oletuksen (13.69) nojalla 2 2n 1 (mod p) 2 2n+1 1 (mod p), (13.71) joten Lauseen 9.12 nojalla ord p 2 = 2 n+1. (13.72) Koska myös 2 p 1 1 (mod p) ord p 2 = 2 n+1 p 1 (13.73) ja siten p = 1 + l2 n+1 p 1 (mod 8). (13.74) Joten Eulerin (12.21) kriteerillä ( ) 2 2 p 1 2 1 p (mod p) (13.75) Siispä ord p 2 = 2 n+1 p 1 2 p = 1 + k2 n+2. (13.76) Lause 13.10. Olkoon n Z 2. Tällöin F n P 3 (Fn 1)/2 1 (mod F n ); (13.77) F n P Z F n = 3. (13.78) Todistus: Aluksi huomataan, että F n 17. (13.77). Olkoon F n P. Koska F n 2 (mod 3), (13.79) 72
niin Resiprookkilauseen nojalla ( Fn 3 ) 12.27 = ( 3 ) 12.35 = ( 1) (Fn 1)(3 1) 4 F n ( 2 = 1. (13.80) 3) ( Fn 3 ) = 1. (13.81) Koska F n P, niin Eulerin kriteerillä ryhmässä Z F n pätee ( 3 F n ) 12.21 = 3 Fn 1 2. (13.82) (13.77). Oletuksen nojalla 3 (Fn 1)/2 1 = 1 (mod F n ) (13.83) josta Nyt 3 Fn 1 1 (mod F n ). (13.84) F n 1 = 2 2n := h, (13.85) missä missä luvun h alkutekijäjoukko on {2}. Siispä Lucasin alkulukutestin Lause 9.13 nojalla F n P. (13.78). Oletuksien nojalla F n = p P 17, jolloin ryhmässä Z p pätee Kuten kohdan (13.77) todistuksessa saadaan Täten Lauseen 9.12 perusteella 3 p 1 1 (mod p). (13.86) 3 p 1 2 = 1 = 1. (13.87) Z F n = 3. (13.88) 73
(13.78). Oletuksen nojalla Z F n = 3. (13.89) Lauseen?? mukaan F n = 2, 4, p l, 2p l, l Z +, p P 3, (13.90) joten Lauseen 13.9 nojalla Siten F n = p K, K Z +, p P 3. (13.91) p = L2 n+2 + 1, L Z +. (13.92) (1 + L2 n+2 ) K = 2 2n + 1 (13.93) ( ) K L2 n+2 + 1 ( ) K L 2 2 (n+2)2 +...+ (13.94) 2 josta saadaan ( ) K L K 1 2 (n+2)(k 1) + L K 2 (n+2)k = 2 2n, (13.95) K 1 L 2 2n L = 2 s (13.96) Tuloksien (13.91) ja (13.97) mukaan p = 2 t + 1 p = 2 2l + 1 = F l. (13.97) F l F n, (13.98) josta Lauseen 13.8 nojalla F l = F n F n = p P 3. (13.99) 74
Lause 13.11. Olkoot n Z 2 ja p P 3. Tällöin p = F n Z p = Z p. (13.100) Ts. Alkuluku p on Fermat n alkuluku täsmälleen silloin kun kertolaskuryhmä (mod p) on jokaisen epäneliönsä generoima. Todistus. " ". Olkoon siis F n = p P, Z p = β (13.101) Tiedetään, että epäneliöille pätee = β 2l+1 1 2l + 1 p 2. (13.102) Tässä (2l + 1, p 1) = (2l + 1, 2 2n ) = 1, (13.103) joten tuloksen (9.81) nojalla ord β 2l+1 = p 1. (13.104) Siispä β 2l+1 = Z p 1 2l + 1 p 2. (13.105) " ". Olkoon siis ord = ord β 2l+1 = p 1 1 2l + 1 p 2. (13.106) Siten (2l + 1, p 1) = 1, 1 2l + 1 p 2 p 1 = 2 m. (13.107) Tuloksen (13.23) nojalla p = 2 2n + 1, jollakin n Z. (13.108) 75
13.3 Polynomiaikainen/AKS/Kokeeseen vain Lemma 13.7 todistuksineen Seuraava Lause 13.12 on lähtökohtana deterministiselle polynomiaikaiselle alkulukutestille =AKS. Lause 13.12. Olkoot a Z, n N, n 2. Tällöin n P (x a) n = x n a; (13.109) a n, n / P, (x a) n = x n a; (13.110) polynomirenkaassa Z n [x]. Aluksi saadaan alkulukutesti DT6 n P (x 1) n = x n 1 Z n [x]. (13.111) (Mutta T IME(DT 6) = O(n log 3 n), joten (DT 6) on eksponentiaalinen.) Tarvitaan muunneltu testi. DT7=AKS. Vuonna 2002 julkaistiin ensimmäinen deterministinen polynomiaikainen alkulukutesti. Algoritmin (DT7)=PRIME(n), jolla todistettavasti voidaan päätellä onko annettu positiivinen kokonaisluku n alkuluku, esittivät intialaiset Maninra Agrawal, Neeraj Kayal ja Nitin Saxena [Primes is in P, Annals of Mathematics (2004)]. Aikaisemmat JULKISESTI tunnetut testit ovat tavalla tai toisella stokastisia eli joko testin tulos tai kestoaika on epävarma polynomiajassa. Algoritmi perustuu seuraavaaviin tuloksiin. 76
Lause 13.13. Olkoot n Z 2, q, r P sellaisia, että (m, n) = 1, 1 m r. (13.112) q r 1. (13.113) q 2 r log n + 2, (13.114) n r 1 q 1 (mod r). (13.115) 1 a 2 r log n + 1 (13.116) pätee eli Tällöin (x a) n = x n a Z n [x]/ x r 1 (13.117) (x a) n x n a (mod x r 1). (13.118) n = p f, joillakin f Z +, p P (13.119) eli n on alkulukupotenssi. Lauseen 13.13 todistamiseksi tarvitaan seuraavat lemmat. Lemma 13.7. Lauseen 13.13 oletuksilla (13.113) ja (13.115) saadaan, että on olemassa sellainen p P, että p n, q d = ord r p. (13.120) Todistus: Aluksi huomataan, että (13.113) r 1 q Z. (13.121) 77
ja koska q P, niin Lauseen 9.12 nojalla (13.115) γ = n r 1 q = 1 Z r (13.122) ord γ = q. (13.123) Olkoon ja Koska niin Merkitään Tällöin joten n = p a 1 1... p a k k ; p i P, (13.124) f = # n, missä n Z r. (13.125) γ n, (13.126) ord γ = q f = ord n. (13.127) b i = ord p i, l = pyj(b 1,..., b k ). (13.128) p i l = 1, i = 1,..., k (13.129) n l = (p l 1) a 1... (p l k) a k = 1. (13.130) Siten f l ja koska oli q f, niin q l. Nyt q P, joten q b j, jollakin j = 1,... k. Täten on olemassa p = p j n, q ord p = b j. (13.131) Lemma 13.8. Olkoot p P, p n ja a Z, i, j N sekä (x a) n = x n a Z n [x]/ x r 1. (13.132) 78
Tällöin (x a) ni p j = x ni p j a Z p [x]/ x r 1. (13.133) Todistus. Olkoon N Z +. Lauseen 13.12 nojalla (x N a) p = x pn a Z p [x], (13.134) josta (x N a) p x pn a (mod x r 1) Z p [x]. (13.135) Koska oletuksen nojalla (x a) n x n a (mod x r 1) Z n [x] (13.136) ja p n, niin (x a) n x n a (mod x r 1) Z p [x]. (13.137) Sijoittamalla x:n paikalle x N, saadaan (x N a) n x nn 1 (mod x rn 1) Z p [x]. (13.138) Relaation avulla x r 1 x rn 1 Z p [x] (13.139) (x N a) n x nn 1 (mod x r 1) Z p [x]. (13.140) Edetään induktiolla käyttäen tuloksia (13.135) ja (13.140). Esimerkiksi (x a) np (x n a) p x np 1 (mod x r 1) Z p [x]. (13.141) 79
Lemma 13.9. Olkoon n Z 2, p P, p n ja E = {n i p j 0 i, j r }. (13.142) Tällöin, jos n ei ole alkulukupotenssi, niin #E > r. (13.143) Todistus. Olkoon siis n / p Z + ja olkoot 0 i, i, j, j r (13.144) sekä Nyt n i p j = n i p j. (13.145) n = ap k ; p a Z 2, k Z +. (13.146) Siten kohdasta (13.145) saadaan a i p ik+j = a i p i k+j, (13.147) ja koska p a, niin Täten a i a i, a i a i. (13.148) a i = a i i = i p ik+j = p ik+j (13.149) p j = p j j = j. (13.150) Eli, kun joten pätee m = n i p j = m = n i p j E (i, j) = (i, j ), (13.151) (i, j) = (i, j ) m = m. (13.152) 80
Siten #E = #{(i, j) 0 i, j r } = (1 + r ) 2 > r. (13.153) Todistus. Lauseen 13.13 todistus. Vastaoletus eli n / p Z+. (13.154) Lemman 13.9 nojalla #E > r, joten m, m E, m = m : m m (mod r) (13.155) (i, j) = (i, j ), 0 i, j, i, j r (13.156) s.e. n i p j n i p j (mod r), m = n i p j, m = n i p j. (13.157) Voidaan olettaa, että m > m, jolloin m = m + kr, jollakin k Z +. Tällöin Lemman 13.8 nojalla (x a) m x m a x m (x r ) k a x m 1 k a (13.158) Edelleen Lemma 13.8 antaa x m a (mod x r 1) Z p [x]. (13.159) x m a (x a) m (mod x r 1) (13.160) joten (x a) m (x a) m (mod x r 1) (13.161) polynomirenkaassa Z p [x] aina, kun 1 a 2 r log n + 1. (13.162) Voidaan todistaa vielä: 81
Lemma 13.10. m = m. (13.163) Ristiriita, koska oli m = m. Siten vastaoletus (13.154) eli n / p Z+ on väärä, joten n p Z+. Algorithm PRIME(n) Input: Integer n 2 Output YES if n is a prime and NO otherwise r:=2; found:=false; while r < n and found=false do if gcd(r, n) = 1 then return NO endif if r is a prime and r > 2 then q:= largest prime factor of r 1 if q 2 r log n + 2 and n (r 1)/q = 1 ( mod r) then found:=true endif endif if found=false then r := r + 1 endif endwhile; for a := 1 to [2 r log n] + 1 do if (x a) n = x n a mod (x r 1) in Z n [x] then return NO endif endfor; if n = a b for some integers a, b 2 then return NO else return YES 82
endif Seuraava Analyyttisen lukuteorian tulos takaa algoritmin PRIME(n) polynomiaikaisuuden. Lemma 13.11. Olkoon suuri kokonaisluku n annettu. Tällöin on olemassa alkuluvut q ja r ja (efektiivisesti määrättävät) vakiot 0 < c 1 < c 2, joille pätee 1. c 1 log 6 n < r c 2 log 6 n, 2. q r 1, 3. q 2 r log n + 2, 4. n (r 1)/q 1 (mod r). Huom: Tapaus n = a b voidaan selvittää polynomiajassa eli tarkemmin T IME(n = a b?) = O(log 4 n). Edelleen saadaan Lemma 13.12. T IME(P RIME(n)) = O(log 19 n). Siten alkulukutestausalgoritmi PRIME(n) on polynomiaikainen ja on deterministinen (ei-stokastinen). Lenstra ja Pomerance ovat kehittäneet AKS idean algoritmiksi PRIME2(n), jolle pätee Lemma 13.13. T IME(P RIME2(n)) = O(log 6 n). 83