ARYTMETYKA MODULARNA Grzegorz Szkibiel Wiosna 2014/15 Spis tre±ci 1 Denicja kongruencji i jej podstawowe wªasno±ci 3 2 Systemy pozycyjne 8 3 Elementy odwrotne 12 4 Pewne zastosowania elementów odwrotnych 17 5 Maªe Twierdzenie Fermata 20 6 Twierdzenie Eulera 23 7 Twierdzenie Lagrange'a 27 8 Chi«skie Twierdzenie o Resztach 30 9 RSA i gra w orªa i reszk¦ przez telefon 36 10 Kongruencje wy»szych stopni 40 11 Liczby pseudopierwsze 46 12 Pierwiastki pierwotne 51 13 Istnienie pierwiastków pierwotnych 55 14 Logarytm dyskretny 60 15 Pewne zastosowania pierwiastków pierwotnych 63 2 Wykªad 12 Pierwiastki pierwotne Przypu±¢my, »e liczby a oraz n > 1 s¡ wzgl¦dnie pierwsze. Rz¦dem elek mentu a modulo n nazywamy najmniejsz¡ liczb¦ dodatni¡ k , tak¡ »e a ≡ 1 (mod n). Zauwa»my, »e, z uwagi na twierdzenie Eulera, k ≤ φ(n). B¦dziemy pisa¢ k = ordn a. 12.1 Przykªad. Rz¦dem 1 modulo n jest jeden, a rz¦dem −1 modulo n > 2 jest dwa, ale dla dowolnej liczby nieparzystej l (wi¦c i dla −1), zachodzi ord2 l = 1. Obliczaj¡c kolejne pot¦gi liczby 2 modulo 31, zauwa»amy, »e ord31 2 = 5. Podobnie obliczamy ord31 3 = 30. W tym ostatnim przypadku ordn a = φ(n). Przypu±¢my, »e x5 ≡ 1 (mod n). Zatem ordn x ≤ 5. Je±li x ̸≡ 1 (mod n), to rz¡d elementu x nie mo»e by¢ równy 1. Nie mo»e to by¢ te» 2, bo wówczas x5 ≡ (x2 )2 x ≡ x ̸≡ 1 (mod n). Z podobnych przyczyn, rz¦dem elementu x modulo n nie mo»e by¢ 3 ani 4. Podobnie mo»emy pokaza¢, »e je±li dla dowolnej liczby pierwszej p, xp ≡ 1 (mod n), oraz x ̸≡ 1 (mod n) to wtedy ordn x = p. Poka»emy teraz kilka podstawowych wªasno±ci rz¦du elementu. W ka»dym z nast¦puj¡cych twierdze« zakªadamy, »e a jest wzgl¦dnie pierwsza z n. 12.2 Twierdzenie. Dowód. Przypu±¢my, »e am ≡ 1 (mod n). Wówczas ordn a | m. Oznaczmy k = ordn a i zapiszmy m = qk +r, gdzie 0 ≤ r < k . Mamy 1 ≡ am ≡ (ak )q ar ≡ ar (mod n). Poniewa» r < k , wi¦c r = 0, bo inaczej mieliby±my sprzeczno±¢ z denicj¡ rz¦du. Zatem k | m. 51 12.3 Wniosek. 2. 3. ai ≡ aj (mod n), to i ≡ j (mod ordn a), ordn a jest dzielnikiem φ(n). W szczególno±ci, je»eli n jest liczb¡ sz¡, to ordn a | p − 1. 2 k−1 Je»eli ordn a = k , to 1, a, a , . . . , a s¡ ró»ne modulo n. 1. Je±li pierw- 1. Przypu±¢my, »e i ≥ j . Skoro aj jest elementem odwracalnym modulo n, wi¦c istnieje element ai−j oraz ai−j ≡ 1 (mod n). Zatem i−j musi by¢ wielokrotno±ci¡ rz¦du elementu a, czyli i ≡ j (mod ordn a). 2. Wynika bezpo±rednio z twierdzenia 12.2 oraz Maªego Twierdzenia Fermata lub Twierdzenia Eulera. 3. Wynika bezpo±rednio z punktu 1. Dowód. Twierdzenie 12.2 oraz wniosek po nim pozwalaj¡ w istotny sposób uªatwi¢ obliczenie rz¦du liczby. Dla przykªadu, rozwa»my liczb¦ n = 31. Poniewa» φ(31) = 30, wi¦c dla liczby a wzgl¦dnie pierwszej z 31, mamy ord31 a ∈ {1, 2, 3, 5, 6, 10, 15, 30} . Wystarczy wi¦c sprawdzi¢ tylko 8 liczb zamiast 30. Je±li ordn a = n−1, to zbiór {0, a, a2 , . . . , an−1 } jest peªnym ukªadem reszt modulo n i mo»e on by¢ u»ywany w miejscu {0, 1, 2, . . . , n − 1}, zwªaszcza je±li chcemy bada¢ wªasno±ci multyplikatywne modulo n. Je»eli jest nam znany rz¡d liczby a modulo n, to dobrze byªoby zna¢ szybk¡ metod¦ wyznaczenia rz¦du dowolnej pot¦gi liczby a. Tak¡ metod¦ daje nam nast¦puj¡ce twierdzenie. 12.4 Twierdzenie. Dowód. Je±li NWD Oznaczmy l = (a, n) = 1, to ordn ak = ordn a . NWD(ordn a, k) ordn a . Poniewa» NWD(ordn a, k) (ak )l ≡ akl ≡ (aordn a )(k/NWD(ordn a, k)) ≡ 1 (mod n), wi¦c ordn ak | l. Oznaczmy teraz m = ordn ak . Wówczas (ak )m ≡ akm ≡ 1 (mod n), wi¦c ordn a | km. Zapiszmy km = c · ordn a dla pewnej liczby c. Obie strony ostatniej równo±ci podzielmy przez NWD(ordn a, k). Otrzymamy k (ordn a, k) NWD 52 m = cl. ( Ale NWD yk = ) , l = 1 gdy» istniej¡ takie liczby x oraz y , »e x · ordn a + NWD(ordn a, k) k (ordn a, k), czyli y NWD(ordk n a, k) + xl = 1. Zatem l | m, co wobec NWD wcze±niej udowodnionego daje nam l = m. U»ywaj¡c wzoru z powy»szego twierdzenia i wiedz¡c, »e ordn a = 12, otrzymujemy 0 1 k ordn a k 1 12 2 6 3 4 4 3 5 12 6 2 7 12 8 3 9 4 10 11 6 12 Niech a b¦dzie liczb¡ wzgl¦dnie pierwsz¡ z n. Liczba a jest pierwiastkiem n, je±li ordn a = φ(n). Pierwiastkiem pierwotnym modulo 31 jest liczba 3, ale nie jest nim liczba 2. Poniewa» a2 ≡ 1 (mod 8) dla dowolnej liczby a wzgl¦dnie pierwszej z 8, wi¦c nie ma pierwiastków pierwotnych modulo 8. Ostatni fakt uogólnimy w nast¦puj¡cym twierdzeniu. pierwotnym modulo 12.5 Twierdzenie. dulo 2 k Je±li k ≥ 3, to nie ma pierwiastka pierwotnego mo- . Przypu±¢my, »e taki pierwiastek a istnieje. Poniewa» φ(2k ) = 2k−1 , k−1 wi¦c a, a2 , . . . , a2 s¡ ró»nymi elementami modulo 2k i wszystkie one s¡ odwracalne. Co wi¦cej, nie ma innego elemnetu odwracalnego modulo 2k ni» te, które znajduj¡ si¦ na li±cie. Istnieje zatem tylko jeden element modulo 2k , który ma rz¡d 2, gdy» je±li Dowód. ord2k ai = ( 2k−1 = 2, NWD(i, 2k−1 ) ) to NWD i, 2k−1 = 2k−2 , czyli i = 2k−2 . Poka»emy teraz, »e kongruencja x2 ≡ 1 (mod 2k ) ma przynajmniej 4 rozwi¡zania, wi¦c elementów odwracalnych modulo 2k rz¦du 2 jest wi¦cej ni» 1. St¡d otrzymamy sprzeczno±¢. Rozwa»my wi¦c kongruencj¦ x2 ≡ 1 (mod 2k ). Jej pierwiastkami s¡ 1 oraz −1, ale tak»e liczby y1 = 2k−1 − 1 i y2 = 2k−1 + 1 (porównaj z przykªadem 10.9), poniewa» yi2 = (2k−1 ± 1)2 = 22(k−1) ± 2k + 1 ≡ 1 53 (mod 2k ). Udowodnione wªa±nie twierdzenie jest rezultatem negatywnym, poniewa» mówi nam, dla jakich liczb nie nale»y szuka¢ pierwiastków pierwotnych. Zauwa»my, »e dla n = 2 oraz n = 4, pierwiastki pierwotne modulo n istniej¡. Istnieje te» pierwiastek pierwotny modulo 31. 12.6 Przykªad. Nie ma elementu rz¦du 8 modulo 16 (bo 16 = 24 oraz φ(16) = 8). Mamy te» 8 elementów odwracalnych modulo 16. Jednym z nich jest element neutralny 1, który ma rz¡d 1. Mamy te» trzy elementy rz¦du 2: 7, 9 i 15. Pozostaªe 4 elementy (3, 5, 11, 13) s¡ rz¦du 4. Je±li istnieje pierwiastek pierwotny modulo n, to z jego pomoc¡ mo»emy rozwi¡zywa¢ kongruencje wykªadnicze. Dla przykªadu rozwa»my n = 17 oraz liczb¦ 3. Mamy k 3 mod 17 k 1 3 2 9 3 4 10 13 5 5 6 7 8 15 11 16 9 10 11 12 13 14 15 16 3 mod 17 14 8 7 4 12 2 6 1 k k Rozwi¡»emy kongruencj¦ 7x ≡ 4 (mod 17). Poniewa» 7 ≡ 311 (mod 17) oraz 4 ≡ 312 (mod 17), wi¦c nasza kongruencja sprowadza si¦ do 311x ≡ 312 (mod 17). Zatem 11x ≡ 12 (mod 16), czyli x = 4 + 16k , gdzie k ∈ Z. U»ywaj¡c pierwiastków pierwotnych mo»emy te» ªatwo znale¹¢ liczb¦ odwrotn¡ do danej. Na przykªad, dla n = 17 oraz a = 3 mamy 13 ≡ 34 (mod 17). St¡d 13−1 ≡ 316−4 ≡ 4 (mod 17). Niestety, okazuje si¦, »e dla wi¦kszo±ci liczb zªo»onych nie ma pierwiastka pierwotnego. 54