Atomrobbanás gombafelhője

Episode I

Alice és Bob

24. fejezet

Alice és Bob komolyabb fegyverekhez nyúl

Az előző fejezetben felhívtuk Alice és Bob figyelmét néhány olyan dologra, amelyekre érdemes odafigyelniük a 21.6. szakaszban ismertetett RSA kulcsok generálásakor. Ismertettünk továbbá néhány olyan módszert, amelyeknek a segítségével Alice és Bob kellően nagy prímszámokat tud találni ezekhez a kulcsokhoz. Elsőként az "iskolás módszert" vizsgáltuk meg, amely a prímszámokkal épp egybeeső felbonthatatlan számok definíciójának megfelelően osztáspróbákon alapul. Láttuk, hogy ez nem egy járható út, mivel a kérdéses számtartományban túlságosan sokáig tart. Ezután a 23.2. szakaszban bemutattuk az úgynevezett Fermat-prímtesztet, amely ennél jóval gyorsabb, cserébe viszont nagyon kis valószínűséggel ugyan, de tévedhet. Az igazi hátránya azonban az, hogy léteznek olyan univerzális álprímeknek nevezett számok, amelyek esetén viszont majdnem biztosan hibás eredményt ad. Ezért a 23.5. szakaszban megismerkedtünk a Miller-Rabin-prímteszttel, amely a Fermat-prímteszt egy továbbfejlesztett változata. Ez látszólag olyan számokra is működik, amelyek esetén a Fermat-prímteszt csődöt mond.

De vajon mi az oka annak, hogy a Miller-Rabin-prímtesztre nézve egyáltalán nem léteznek univerzális álprímek? Milyen fegyverek állnak Alice és Bob rendelkezésére egy ilyen jellegű kérdés megválaszolásához? Mik azok a csoportok és mivel foglalkozik a csoportelmélet? Mit állít a Lagrange-tétel, és mi köze a Miller-Rabin-prímteszthez? Ebben a fejezetben erről lesz szó...

Ezek kontextusba helyezése miatt erőteljesen ajánlott elolvasni a 18., 20., 22. és 23. fejezeteket, mivel gyakran hivatkozni fogunk rájuk.

Amikor a 11. fejezetben elkezdtük a számelmélet felépítését, viszonylag hamar eljutottunk arra a felismerésre, hogy bizonyos, az egész számokkal kapcsolatos fogalmakat célszerű absztrakt szinten kezelni. Így jutottunk el a 14.4. szakaszban a neutrális elem, a 14.5. szakaszban az inverz, és végül a 14.6. szakaszban a gyűrű fogalmához. Ezáltal általános érvényű összefüggéseket tudtunk feltárni, amelyek a 18. és a 19. fejezetekben az ideálok elméletén keresztül elvezettek minket a számelmélet alaptételével kapcsolatos alapvető fontosságú felismerésekhez. Végül a 20., 21., és 22. fejezetekben az így megszerzett ismereteket alkalmazhattuk az egész számok \Z gyűrűjére. Ezáltal részletesen megismerkedtünk napjaink egyik legfontosabb titkosítási eljárásának, az RSA algoritmusnak a működésével.

Azonban az előző fejezetben ismertetett prímtesztelő eljárásokkal kapcsolatban felmerült egy olyan kérdés, amelyet még nem válaszoltunk meg. Nevezetesen: vajon a Miller-Rabin-prímteszt – ellentétben a Fermat-prímteszttel – valóban képes-e kiszűrni az univerzális álprímeket, vagyis az úgynevezett Carmichael-számokat?

Ahhoz, hogy ezt a kérdést megválaszolhassuk, meg kell ismerkednünk az absztrakt algebra egyik fontos fegyverével, az úgynevezett csoportelmélettel.

A csoportelmélet megszületése

A csoportelmélet keletkezése a XIX. század első felére tehető Niels Henrik Abel és Évariste Galois úttörő munkásságának köszönhetően. Munkájukat az akkori matematika egyik központi témája inspirálta, amely arról szólt, hogy különféle típusú egyenleteket hogyan lehet megoldani. A kor matematikusai az egyes egyenlettípusokra olyan megoldóképleteket kerestek, amelyekben csak a négy alapművelet és az úgynevezett gyökvonás művelete szerepelhet, méghozzá véges sokszor. Egy ilyen általános megoldóképlet azért jó dolog, mert a segítségével bárki meg tud oldani bármilyen, az adott típusba tartozó egyenletet. Egyszerűen csak annyi a dolga, hogy a képletben szereplő betűk helyére beírja a konkrét egyenlet paramétereit, a megfelelő sorrendben bambán elvégzi a képlet által leírt műveletsorozatot, és varázslatos módon megkapja a végeredményt.

Tekintsük például a legegyszerűbb egyenlettípust, az úgynevezett elsőfokú egyenleteket. Egy ilyen egyenlet általános formája a következőképpen néz ki:

ax+b=0

Itt a\neq 0 és b valamilyen konkrét számok, az x pedig azt az ismeretlen számot (vagy esetleg számokat) jelöli, amelyet (vagy amelyeket) keresünk. Minden olyan egyenletet, amely ilyen alakra hozható, elsőfokú egyenletnek nevezünk. Az "elsőfokú" elnevezés itt azt fejezi ki, hogy egy ilyen egyenletben az x ismeretlen az első hatványon szerepel. Az elsőfokú egyenlet általános megoldóképlete a következő:

x=\frac{-b}{a}

Ha például valamilyen konkrét számítási feladat kapcsán mondjuk a 3x-6=0 egyenletet kell megoldanunk, akkor egy ilyen megoldóképlettel a zsebünkben könnyű dolgunk van. Elsőként meg kell határoznunk, hogy az egyenletben szereplő számok az egyenlet általános formájában melyik betűknek felelnek meg. Itt például a=3 és b=-6. Ezután már csak be kell helyettesítenünk a megoldóképletbe ezeket a számokat, és meg is kapjuk a végeredményt:

x=\frac{-b}{a}=\frac{-(-6)}{3}=\frac{6}{3}=2

Valóban, ha az eredeti 3x-6=0 egyenletbe az ismeretlen helyére behelyettesítjük az x=2 megoldást, akkor tényleg fennáll az egyenlőség a két oldal között. Továbbá a megoldóképlet implicit módon azt is meghatározza, hogy összesen hány megoldás van. Elsőfokú egyenletek esetén mindig egyetlen megoldás létezik.

Egy ennél bonyolultabb egyenlettípust alkotnak az úgynevezett másodfokú egyenletek. Ezek általános alakja a következő:

ax^2+bx+c=0

Egy másodfokú egyenletben tehát már az ismeretlen mennyiség második hatványa is szerepel. Anélkül, hogy belemennénk az indoklás részleteibe, megadjuk a másodfokú egyenlet megoldóképletét. Igen, ez az a képlet, amellyel az általános- és középiskolás tanulmányai során mindenkit napi szinten fárasztottak:

\begin{aligned}x_1&=\frac{-b+\sqrt{b^2-4ac}}{2a} \\ x_2&=\frac{-b-\sqrt{b^2-4ac}}{2a}\end{aligned}

A megoldások száma tehát ebben az esetben 2, 1 vagy 0 lesz attól függően, hogy a gyökjel alatt pozitív, 0 vagy negatív szám szerepel. Tekintsük például az alábbi másodfokú egyenletet:

x^2+2x-3=0

Itt ugye a=1, b=2 és c=-3. Ezeket behelyettesítve a megoldóképletbe az x_1=-3 és az x_2=1 megoldásokat kapjuk.

Az egyenleteknek egy-egy még bonyolultabb típusait képviselik az úgynevezett harmad- és negyedfokú egyenletek. Ezek általános alakjai a következők:

\begin{aligned}ax^3+bx^2+cx+d&=0 \\ ax^4+bx^3+cx^2+dx+e&=0\end{aligned}

A harmad- és negyedfokú egyenletek megoldóképleteit a XVI. század elején fedezték fel itáliai matematikusok. Ezek a megoldóképletek azonban már annyira bonyolultak, hogy a gyakorlatban az ilyen típusú egyenleteket – amennyiben szükséges – közelítő módszerekkel oldjuk meg. A matematikusokat azonban ez egyáltalán nem zavarta abban, hogy kitartóan keressék az ötöd- és magasabbfokú egyenletek megoldóképleteit.

A XIX. század elején még mindig nem sikerült ezen a téren semmi eredményt felmutatni, mígnem Niels Henrik Abel 1824-ben egy meglepő cikket publikált. Ebben igazolta, hogy az ötöd- és magasabbfokú egyenletekhez nem létezik általánosan működő megoldóképlet. Ez persze nem azt jelenti, hogy megoldás sem létezik, hanem csupán azt, hogy a megoldások nem fejezhetők ki az egyenlet paramétereinek a segítségével egy véges sok műveletet tartalmazó zárt képletben. Nem sokkal ezután Évariste Galois általánosságban is megadta az egyenletek algebrai megoldhatóságának kritériumait. Ezt a korszakalkotó munkát manapság Galois-elmélet néven ismerjük, amely azóta a számelmélet egy fontos eszközévé vált, és nem mellesleg választ adott egy sor egyéb, addig megoldatlan problémára.

Többek között a Galois-elmélet vezetett el a "csoport" fogalmának megalkotásához. Időközben aztán kiderült, hogy ez a fogalom rengeteg más matematikai területen is alapvető szerepet játszik. Például az úgynevezett "szimmetriacsoportok" segítségével vizsgálni lehet különböző bonyolult alakzatok szimmetriáit, amelyek sokmindent elárulnak magukról az alakzatokról is. Ennek fontos alkalmazásai vannak többek között a kémiában – kristályrácsok szerkezetének elmélete – és a fizikában – a téridő szimmetriáinak vizsgálata. Később Felix Christian Klein a geometriának is alapvető eszközévé tette a csoportokat, de fontos szerepet játszanak a matematika egyik legabsztraktabb területén, az algebrai topológiában is.

Minthogy ennyire különböző területeken jelennek meg, a XIX. század végére kiderült, hogy a csoportokat egyszerre, egymáshoz való viszonyaikban is célszerű vizsgálni. Megszületett az absztrakt csoport fogalma, és az lett a feladat, hogy az általános csoportoknak minél jobban feltárjuk a szerkezetét, és olyan struktúratételeket bizonyítsunk, amelyek alapján az alkalmazásokban felmerülő kérdésekre válaszolni lehet.

Például az olyan kérdésekre is, hogy vajon a Miller-Rabin-prímteszt képes-e kiszűrni minden univerzális álprímet? Ismerkedjünk meg ezért most a csoportelmélet néhány alapvető fogalmával és összefüggésével.

Csoportelméleti gyorstalpaló

A 14.12. Definícióban megismerkedtünk a gyűrű fogalmával, amely eddigi vizsgálataink tárgyát képezte. Egy gyűrű tulajdonképpen nem más, mint egy halmaz, amelyen értelmezve van két művelet, és ezek a műveletek teljesítenek néhány egyszerű követelményt, amelyeket gyűrűaxiómáknak nevezünk.

A csoportok a gyűrűkhöz hasonló algebrai struktúrák, azonban alaphalmazukon nem kettő, hanem csak egy művelet van értelmezve. Az alábbi definíció tartalmazza azokat a követelményeket, amelyeknek e művelet meg kell feleljen.

24.1. Definíció (Csoport):

Legyen G valamilyen halmaz, amelyen értelmezve van egy kétváltozós művelet. Nevezzük ezt a műveletet szorzásnak, és jelöljük \cdot-tal, vagy egymás után írással. Például egy a és egy b elem szorzatát jelöljük a\cdot b-vel vagy ab-vel. Az így kapott (G,\cdot ) algebrai struktúrát félcsoportnak nevezzük, amennyiben teljesül rá az alábbi tulajdonság:

1.
A \cdot művelet asszociatív, azaz tetszőleges G-beli a, b és c elemek esetén
(a\cdot b)\cdot c = a\cdot (b\cdot c)

Azokat a félcsoportokat csoportoknak nevezzük, amelyek esetén az asszociativitáson kívül teljesülnek az alábbiak is:

2.
A \cdot műveletre nézve létezik neutrális elem, amelyet általában e-vel vagy 1-gyel jelölünk, és egységelemnek nevezzük. Az egységelemre tehát tetszőleges a\in G esetén teljesül, hogy
a\cdot e = e\cdot a = a
3.
A \cdot művelet invertálható, azaz tetszőleges a\in G esetén létezik olyan a^{-1}-gyel jelölt elem G-ben, amelyet a inverzének nevezünk, és amelyre teljesül az alábbi:
a\cdot a^{-1} = a^{-1}\cdot a = e

Abel-csoportoknak vagy kommutatív csoportoknak nevezzük azokat a csoportokat, amelyek esetén a fentieken kívül teljesül az alábbi is:

4.
A \cdot művelet kommutatív, azaz tetszőleges G-beli a és b elemek esetén
a\cdot b = b\cdot a

Abel-csoportok esetén a csoportműveletet tipikusan a + szimbólummal, a neutrális elemet 0-val, egy a elem inverzét pedig -a-val szoktuk jelölni. Ilyenkor egységelem helyett nullelemről, inverz helyett pedig ellentettről beszélünk.

A fenti tulajdonságokat együttesen csoportaxiómáknak nevezzük.

Például az egész számok \Z halmaza a szokásos összeadásra nézve Abel-csoportot alkot. Ebben a csoportban a nullelem a 0 egész szám, egy a egész szám ellentettje pedig -a, hiszen őket összeadva épp a neutrális elemet, azaz a 0 egész számot kapjuk eredményül.

A \Z halmaz a szorzásra nézve viszont nem alkot csoportot. Igaz ugyan, hogy a szorzásra nézve létezik neutrális elem – méghozzá az 1 egész szám –, azonban rajta és a -1-en kívül más egész számnak nem létezik inverze. A csak az 1-ből és a -1-ből álló kételemű halmaz azonban már csoportot alkot a szorzásra nézve is, amely ráadásul szintén egy Abel-csoport. Az Olvasó könnyedén leellenőrizheti, hogy erre a halmazra valóban teljesülnek a 24.1. Definícióban szereplő csoportaxiómák.

Az iménti példához hasonlóan tetszőleges (R,+,\cdot) gyűrű esetén általánosságban is beszélhetünk két speciális csoportról. Mindkettőnek az elemei a gyűrű R alaphalmazából kerülnek ki, azonban a csoportművelet az egyikük esetén a +, másikuk esetén pedig a \cdot művelet lesz. Ezeknek az R gyűrűből származtatott csoportoknak speciális nevük is van, és a 24.3. Tételben fogjuk majd definiálni őket pontosan.

Előbb azonban ismerkedjünk meg egy fontos összefüggéssel, amely két elem inverzei és a szorzatuk inverze között teremt kapcsolatot. A tételt teljes általánosságban, azaz nem kimondottan csoportokra fogalmazzuk meg.

24.2. Tétel (Szorzat inverze):

Legyen S egy tetszőleges halmaz, amelyen értelmezve van egy *-gal jelölt asszociatív művelet, és tegyük fel, hogy S-ben létezik neutrális elem erre a műveletre nézve. Legyen továbbá x és y az S halmaz két olyan eleme, amelyek invertálhatók a * műveletre nézve. Jelöljük ezek inverzeit rendre x^{-1}-gyel és y^{-1}-gyel. Ekkor teljesül az alábbi azonosság:

(x*y)^{-1}=y^{-1}*x^{-1}

Ha x és y felcserélhetők, azaz x*y=y*x, akkor teljesül az alábbi azonosság is:

(x*y)^{-1}=x^{-1}*y^{-1}

Bizonyítás:

Ha e-vel jelöljük a * művelet neutrális elemét, akkor egyrészt:

(x*y)*(y^{-1}*x^{-1})=x*(\underbrace{y*y^{-1}}_{=e})*x^{-1}=x*x^{-1}=e

Másrészt:

(y^{-1}*x^{-1})*(x*y)=y^{-1}*(\underbrace{x^{-1}*x}_{=e})*y=y^{-1}*y=e

Azaz a 14.9. Definíció alapján (x*y) és y^{-1}*x^{-1} valóban egymás inverzei. Ha x és y felcserélhetők, akkor pedig nyilván (x*y)^{-1}=(y*x)^{-1}=x^{-1}*y^{-1} is igaz.

Most vizsgáljuk meg, hogy pontosan hogyan tudjuk a fentebb már említett két speciális csoportot származtatni tetszőleges gyűrűből. Ennek során újabb fontos, gyűrűkel kapcsolatos csoportelméleti fogalmakkal is megismerkedünk.

24.3. Tétel (Gyűrű additív és multiplikatív csoportja):

Legyen adva egy tetszőleges R egységelemes gyűrű, és jelöljük ennek műveleteit a szokásos + és \cdot szimbólumokkal. Ekkor teljesülnek az alábbiak:

1.
Az R alaphalmaza egy Abel-csoportot alkot a + művelettel. Ezt R additív csoportjának nevezzük, és R^+-szal jelöljük.
2.
Az R gyűrű \cdot műveletére nézve invertálható elemek halmaza egy csoportot alkot ezzel a művelettel. Ezt R multiplikatív csoportjának nevezzük, és R^{\times}-tel jelöljük.
3.
Ha R kommutatív, akkor az R^{\times} multiplikatív csoport elemei pontosan az egységek.

Bizonyítás:

Az 1. állítás: a 14.12. Definícióban megfogalmazott 1., 2. és 3. gyűrűaxiómák épp a 24.1. Definíció szerinti csoportaxiómákkal egyeznek meg, így R valóban Abel-csoport a + művelettel.

A 2. állítás: a 24.1. Definíció szerinti csoportaxiómákat kell leellenőrznünk. Előszöris az invertálható elemeket tartalmazó R^{\times} halmaz zárt az eredeti R gyűrű \cdot műveletére nézve. Nyilván, hiszen ha a és b két tetszőleges invertálható elem – azaz benne vannak R^{\times}-ben –, akkor az ab szorzatnak is létezik inverze – azaz ő is benne van R^{\times}-ben. Ez a bizonyos inverz a 24.2. Tétel alapján így kapható meg ab-ből:

(ab)^{-1}=b^{-1}a^{-1}

Másodszor: R^{\times}-ben nyilván létezik neutrális elem a \cdot műveletre nézve, méghozzá az eredeti R gyűrű egységeleme, amit most jelöljünk 1-gyel.

Harmadszor: minden R^{\times}-beli elemnek létezik inverze, amely nem más, mint az adott elemnek az eredeti R gyűrűben vett multiplikatív inverze. Tegyük fel ugyanis, hogy egy a\in R^{\times} elem R-beli multiplikatív inverze a^{-1}, azaz aa^{-1}=1 és a^{-1}a=1. Mivel 1 benne van R^{\times}-ben, ezért a-nak az R^{\times}-beli inverze szintén csak a^{-1} lehet, hiszen a 14.10. Tétel alapján az inverzképzés egyértelmű.

Az R^{\times} halmaz tehát valóban csoportot alkot az R gyűrű \cdot műveletével.

A 3. állítás: ha R kommutatív és egységelemes, akkor alkalmazható a 16.5. Tétel. Ez alapján R egységei pontosan az egységelem osztói, más szavakkal azok az a elemek, amelyekhez létezik olyan x elem, hogy ax=1. Ezek tehát nyilván épp az invertálható elemek.

Az iménti tétel 2. állítása alapján tehát egy egységelemes gyűrű invertálható elemei csoportot alkotnak a gyűrű szorzására nézve. Számunkra ebben a fejezetben főként a 20.5. Tételben definiált modulo n maradékosztálygyűrű multiplikatív csoportja lesz érdekes. Ez a 20.6. Definíció alapján épp a redukált maradékosztályokból áll.

Például a \Z/10\Z maradékosztálygyűrű multiplikatív csoportját (\Z/10\Z)^{\times}-vel jelöljük, és az alábbi elemekből áll:

(\Z/10\Z)^{\times}=\{[1]_{10}; [3]_{10}; [7]_{10}; [9]_{10}\}

A 20.5. Tétel alapján a szorzás műveleti táblája így néz ki ebben a csoportban:

\begin{array}{c|cccc}\odot & [1]_{10} & [3]_{10} & [7]_{10} & [9]_{10} \\ \hline [1]_{10} & [1]_{10} & [3]_{10} & [7]_{10} & [9]_{10} \\ [3]_{10} & [3]_{10} & [9]_{10} & [1]_{10} & [7]_{10} \\ [7]_{10} & [7]_{10} & [1]_{10} & [9]_{10} & [3]_{10} \\ [9]_{10} & [9]_{10} & [7]_{10} & [3]_{10} & [1]_{10} \end{array}

Látható, hogy valóban minden elemnek létezik inverze, hiszen minden sorban szerepel az [1]_{10} maradékosztály, amely tehát a (\Z/10\Z)^{\times} csoport neutrális eleme. Például a [7]_{10} maradékosztály inverze a [3]_{10} maradékosztály, hiszen az ő szorzatuk az [1]_{10} maradékosztály.

Részcsoportok

A 18.14. Definícióban megismerkedtünk a részgyűrű fogalmával. Ott arról volt szó, hogy egy gyűrű műveleteit az eredeti alaphalmaz helyett annak egy részhalmazára is leszűkíthetjük. Példaként a páros számok 2\Z halmazát hoztuk fel. A szokásos összeadás és szorzás ugye a teljes \Z halmazon van értelmezve. Azonban ez a két művelet "nem vezet ki" az ennél szűkebb 2\Z halmazból sem, hiszen bármely két páros szám összege és szorzata is páros. Így a 2\Z halmaz az eredeti \Z gyűrű műveleteinek szűkített változataival maga is gyűrűt alkot, azaz részgyűrűje az eredeti \Z gyűrűnek.

Hasonló értelemben vett részstruktúrákról természetesen beszélhetünk csoportok esetén is. Itt is ugyanarról van szó azzal a különbséggel, hogy egy csoportban csak egy műveletünk van.

24.4. Definíció (Részcsoport):

Ha egy G csoport alaphalmazának valamely H részhalmaza maga is csoport a G műveletére nézve, akkor azt mondjuk, hogy H részcsoport G-ben. Ezt így jelöljük:

H\leq G

A csak az e\in G neutrális elemet tartalmazó egyelemű csoport, és maga a teljes G nyilvánvalóan részcsoportok G-ben. Ezeket triviális részcsoportoknak nevezzük. Azt, hogy H részcsoport G-ben, de H\neq G így jelöljük:

H\lt G

Ilyenkor azt mondjuk, hogy H valódi részcsoport G-ben.

Megjegyzés:

A 19.6. Tételben igazoltuk, hogy a \sube szimbólummal jelölt tartalmazási reláció egy részbenrendezés bármilyen halmazrendszer elemei között, azaz reflexív, antiszimmetrikus és tranzitív. Továbbá azt is igazoltuk, hogy a \sub szigorú tartalmazási reláció ezek közül csak a tranzitivitást teljesíti.

Minthogy egy G csoport bármely H részcsoportja tulajdonképpen G-nek részhalmaza, továbbá örökli a G műveletét, ezért ezek a tulajdonságok természetesen a \leq szimbólummal jelölt "részcsoportjának lenni"-relációra is érvényesek.

Például az előző szakasz végén már említett (\Z/10\Z)^{\times} multiplikatív csoport esetén az alábbi kételemű halmaz egy valódi részcsoportot alkot:

G=\{[1]_{10}; [9]_{10}\}

Ha a (\Z/10\Z)^{\times} szorzótáblájából kihagyjuk a két-két középső sort és oszlopot, akkor megkapjuk ennek a részcsoportnak a szorzótábláját:

\begin{array}{c|cc}\odot & [1]_{10} & [9]_{10} \\ \hline [1]_{10} & [1]_{10} & [9]_{10} \\ [9]_{10} & [9]_{10} & [1]_{10} \end{array}

Mivel csupán kételemű halmazról van szó, ezért az Olvasó maga is könnyen leellenőrizheti, hogy valóban teljesülnek a 24.1. Definíció szerinti csoportaxiómák.

Ezt azonban nem kell minden olyan alkalommal megtenni, amikor egy részhalmazról el szeretnénk dönteni, hogy részcsoport-e vagy sem. Az alábbi tétel a 18.15. Tétel mintájára egy sok esetben a csoportaxiómáknál könnyebben ellenőrizhető feltételrendszert ad ehhez. A bizonyítás szinte szóról szóra megegyezik a 18.15. Tétel bizonyításával.

24.5. Tétel:

Egy tetszőleges G csoport valamely H részhalmaza akkor és csak akkor részcsoport G-ben, ha teljesülnek az alábbi tulajdonságok:

1.
H zárt a G csoport műveletére nézve, azaz tetszőleges H-beli a és b elemek esetén az ab szorzat is H-ban van.
2.
H tartalmazza az G csoport egységelemét.
3.
H zárt az G-beli inverzképzésre, azaz tetszőleges H-beli a elem esetén a^{-1} is H-ban van.

Bizonyítás:

Tegyük fel, hogy H részcsoport G-ben. Ekkor az 1. tulajdonság – tehát a műveleti zártság – nyilvánvalóan teljesül, máskülönben H nem lenne csoport a G műveletére nézve, és így részcsoport sem lehetne G-ben.

Mivel H-nak létezik egységeleme – hiszen maga is csoport –, ezért a 2. tulajdonsághoz azt kell megmutatni, hogy ez az egységelem megegyezik G egységelemével. Jelöljük H egységelemét e_H-val, G egységelemét pedig e_G-vel, és tegyük fel indirekt, hogy ez a kettő nem ugyanaz.

Ha a kettő nem ugyanaz, akkor az sem mindegy, hogy melyik csoportban beszélünk inverzképzésről. Jelölje most {e_H}^{-1} az e_H elem G-beli inverzét. Őket összeszorozva tehát a G csoport egységelemét kell kapjuk, azaz:

e_H\cdot {e_H}^{-1}=e_G

Mivel e_H a H csoport egységeleme, ezért nyilvánvalóan igaz az alábbi:

e_H\cdot e_H=e_H

Végül, mivel e_G a G csoport egységeleme, ezért az alábbi is teljesül:

e_H\cdot e_G=e_H

Mivel H csoport, így a csoportművelet asszociativitása miatt:

(e_H\cdot e_H)\cdot {e_H}^{-1}=e_H\cdot (e_H\cdot {e_H}^{-1})

A baloldalt kifejtve ezt kapjuk:

\underbrace{(e_H\cdot e_H)}_{=e_H}\cdot {e_H}^{-1}=e_H\cdot {e_H}^{-1}=e_G

A jobboldalt kifejtve pedig ezt:

e_H\cdot \underbrace{(e_H\cdot {e_H}^{-1})}_{=e_G}=e_H\cdot e_G=e_H

Ez a kettő eredmény viszont a fentebb már említett asszociativitás miatt indirekt feltételezésünkkel ellentétben mégis meg kell egyezzen, így valóban e_G=e_H.

Végül a 3. tulajdonság – tehát az inverzképzésre való zártság – igazolásához képezzük a H csoport valamely a elemének inverzét mindkét csoportban, és megmutatjuk, hogy ezek valójában megegyeznek. A H-beli inverzet jelöljük x_H-val, míg a G-beli inverzet x_G-vel. Az a elemet a G-beli inverzével összeszorozva a G csoport egységelemét kell kapnunk, azaz:

a\cdot x_G=e_G

Ugyanakkor az a elemet a H-beli inverzével összeszorozva a H csoport egységelemét kell kapnunk, amiről azonban már láttuk, hogy megegyezik a G csoport egységelemével, azaz:

a\cdot x_H=e_H=e_G

Minthogy a G-beli inverzképzés a 14.10. Tétel alapján egyértelmű, ezért szükségképpen x_H=x_G. Azaz a H csoport valóban zárt a G-beli inverzképzésre.

Visszafelé: Most azt kell megmutatnunk, hogy ha teljesülnek a tételben megfogalmazott tulajdonságok, akkor H részcsoport G-ben. A G csoport művelete az 1. tulajdonság alapján nem vezet ki H-ból, így az művelet ezen a szűkebb halmazon is a 11.3. Definíció szerinti értelemben. Továbbá a 2. és 3. tulajdonság miatt létezik egységelem, és minden elemnek létezik inverze is H-ban.

A 24.1. Definíció szerinti csoportaxiómákból már csak a művelet asszociativitását kell igazolnunk. Ezt azonban H megörökli a G-től a művelettel együtt. Így tehát H valóban részcsoport G-ben.

Lagrange tétele

Ebben a szakaszban egy kulcsfontosságú tételt fogunk igazolni, amely egy tetszőleges véges csoport illetve annak részcsoportjainak elemszáma között mond ki egy fontos összefüggést. Először azonban tisztázzunk egy fontos fogalmat.

24.6. Definíció (Csoport rendje):

Ha egy G csoport csak véges sok elemet tartalmaz, és elemeinek száma n, akkor azt mondjuk, hogy G véges csoport, és rendje n. Ezt így jelöljük:

|G|=n

Ezzel szemben ha G végtelen sok elemet tartalmaz, akkor végtelen (rendű) csoportról beszélünk. Ezt így jelöljük:

|G|=\infty

Most bevezetünk egy fontos relációt egy adott G csoport elemei között, amely relációt G egy adott részcsoportja segítségével határozunk meg. Igazoljuk továbbá, hogy ez egy ekvivalenciareláció, amely a 13.6. Tétel értelmében ekvivalencia-osztályokra bontja a G csoportot. Ez az ekvivalenciareláció némileg speciálisabb formában korábban már szerepelt a 18.20. Definícióban, ahol őt ideál szerinti kongruenciának hívtuk. Erre a tétel bizonyítása utáni megjegyzésben bővebben is kitérünk.

24.7. Tétel (Mellékosztályok):

Legyen G tetszőleges csoport, H pedig valamilyen részcsoport G-ben, azaz H\leq G. Definiáljunk egy \sim szimbólummal jelölt relációt a G csoport elemei között a következőképpen: a\sim b akkor és csak akkor, ha

a^{-1}b\in H

Ekkor a \sim egy ekvivalenciareláció G felett, az ehhez tartozó ekvivalencia-osztályokat a G csoport H részcsoportja szerinti baloldali mellékosztályainak nevezzük. Ha g egy tetszőleges elem a G csoportban, akkor a g elemet tartalmazó H szerinti baloldali mellékosztály épp a 18.19. Definícióban bevezetett komplexusszorzással képzett gH halmaz lesz.

Ehhez hasonlóan, ha az a\sim b relációt úgy definiáljuk, hogy akkor és csak akkor teljesüljön, ha ba^{-1}\in H, akkor ugyanígy egy ekvivalenciarelációt kapunk. Ebben az esetben az ekvivalencia-osztályokat a G csoport H részcsoport szerinti jobboldali mellékosztályainak nevezzük, a g elemet tartalmazó jobboldali mellékosztály pedig a Hg halmaz lesz.

Bizonyítás:

A 13.5. Definíció alapján azt kell tehát bizonyítani, hogy a \sim szimbólummal jelölt reláció reflexív, tranzitív és szimmetrikus. Az alábbiakban legyenek a, b és c a G csoport tetszőleges elemei, az egységelemet pedig jelöljük e-vel. A bizonyítás során végig arra fogunk támaszkodni, hogy H részcsoport G-ben.

Mivel nyilván a^{-1}a=e teljesül, és a G csoport egységeleme a 24.5. Tétel 2. pontja alapján benne van a H részcsoportban, ezért fennáll az a\sim a reláció, így az reflexív.

Ha a^{-1}b és b^{-1}c benne vannak H-ban, akkor a 24.5. Tétel 1. pontja alapján az ő szorzatuk is benne van H-ban. Az ő szorzatuk viszont épp az a^{-1}c elem, hiszen:

a^{-1}\cdot \underbrace{b\cdot b^{-1}}_{=e}\cdot c=a^{-1}ec=a^{-1}c

Így tehát a\sim b és b\sim c együttes fennállásából következik a\sim c, azaz teljesül a tranzitivitás is.

Végül ha a^{-1}b benne van H-ban, akkor a 24.5. Tétel 3. pontja miatt az ő inverze is benne van H-ban. Az ő inverze viszont a 24.2. Tétel szerint épp b^{-1}a, hiszen:

(a^{-1}b)^{-1}=b^{-1}(a^{-1})^{-1}=b^{-1}a

Vagyis a\sim b-ből következik b\sim a, ami épp a szimmetriát jelenti.

A \sim reláció tehát valóban egy ekvivalenciareláció, amely a G csoportot ekvivalencia-osztályokra bontja. Ezek lesznek a H szerinti baloldali mellékosztályok. A g elemet tartalmazó baloldali mellékosztály pontosan azokból az x elemekből fog állni, amelyekre teljesül a g\sim x reláció, azaz – a tétel szövege alapján – amelyek esetén a g^{-1}x szorzat benne van H-ban. Ez viszont a 18.19. Definícióban bevezetett komplexusszorzás nyelvén pontosan azt jelenti, hogy x benne van a gH halmazban.

A tétel jobboldali mellékosztályokra vonatkozó állítása pontosan ugyanezzel a gondolatmenettel igazolható, csak ott a szorzásokat fordított sorrendben kell felírni.

Megjegyzés:

Vegyük észre, hogy ez a bizonyítás szinte szó szerint megegyezik a 18.21. Tétel bizonyításával. A különbség pusztán annyi, hogy abban a tételben a G csoport szerepét az ott szereplő R gyűrű additív csoportja, a H részcsoport szerepét az ott szereplő I ideál, mint részgyűrű, végül a \sim reláció szerepét az I ideál szerinti kongruenciareláció tölti be. Az I ideál szerinti maradékosztályok tehát tulajdonképpen az R gyűrű additív csoportjának I szerinti mellékosztályai.

Ebben az esetben azonban nincs értelme külön bal- illetve jobboldali mellékosztályokról beszélnünk, hiszen az R gyűrűn értelmezett + művelet kommutativitása miatt ezek nyilván megegyeznek. Egy általános csoport esetén azonban nem követeljük meg a csoportművelet kommutativitását, ezért ilyenkor a bal- és jobboldali mellékosztályok is általában különböző halmazok lesznek, azaz általában gH\neq Hg.

A 18.21. Tételben definiált maradékosztályokhoz – vagy speciálisan az egész számok maradékosztályaihoz – hasonlóan a mellékosztályok esetén is beszélhetünk reprezentáns elemekről. Tegyük fel például, hogy egy H részcsoport szerinti bal- vagy jobboldali mellékosztályból a g elemet választottuk reprezentánselemnek. Ilyenkor azt mondjuk, hogy a g elem reprezentálja az adott mellékosztályt. Ekkor egyrészt az iménti tétel alapján az adott baloldali mellékosztályt, mint halmazt gH – vagy jobboldali mellékosztály esetén Hg – alakban tudjuk leírni. Másrészt pedig tetszőleges a elemről könnyen eldönthető, hogy g-vel azonos baloldali mellékosztályban van-e, azaz teljesül-e a tételben szereplő g\sim a reláció. Ehhez csak azt kell megvizsgálni, hogy a g^{-1}a – vagy jobboldali mellékosztály esetén az ag^{-1} – szorzat benne van-e a H részcsoportban.

Mostmár megfogalmazhatjuk azt a véges csoportok részcsoportjainak elemszámára vonatkozó fontos összefüggést, amely kulcsfontosságú lesz annak igazolásához, miszerint a 23.5. szakaszban bemutatott Miller-Rabin-prímtesztre nézve nem léteznek univerzális álprímek. Ez az összefüggés Joseph Louis Lagrange olasz születésű francia matematikustól származik, és igen fontos a matematika egyéb területein is.

24.8. Tétel (Lagrange tétele):

Legyen G tetszőleges véges csoport, H pedig tetszőleges részcsoport G-ben. Ekkor H rendje osztója G rendjének, azaz teljesül az alábbi oszthatóság:

|H|\ |\ |G|

A 16.1. Definíció értelmében ez azt jelenti, hogy létezik olyan egész szám, amellyel H rendjét megszorozva épp G rendjét kapjuk. Ezt az egész számot a H részcsoport G-beli indexének nevezzük, és |G:H|-val jelöljük. Azaz teljesül az alábbi összefüggés:

|G|=|G:H|\cdot |H|

Továbbá mind a H szerinti bal-, mind pedig jobboldali mellékosztályok száma |G:H|.

Megjegyzés:

A 24.7. Tétel bizonyítása utáni megjegyzésben megemlítettük, hogy egy G csoportnak egy H részcsoportja szerinti bal- illetve jobboldali mellékosztályai általában nem azonos halmazok. A Lagrange tétel szerint viszont véges csoportok esetén a számuk megegyezik, és ez a szám épp |G:H|.

Ennél azonban több is igaz. Viszonylag könnyen belátható, hogy a bal- és jobboldali mellékosztályok száma akkor is megegyezik, ha G rendje esetleg végtelen. Sőt, a bal- és jobboldali mellékosztályok között kölcsönösen egyértelmű megfeleltetés létesíthető akkor is, ha történetesen ezek száma is végtelen, vagyis ebben az esetben is "ugyanannyi van belőlük" bizonyos értelemben. Ezek igazolását, illetve az index fogalmának ilyen jellegű általánosítását azonban most mellőzzük.

Bizonyítás:

A bizonyításhoz a 24.7. Tételben definiált baloldali mellékosztályokat fogjuk használni, de értelemszerűen ugyanígy használhatnánk a jobboldali mellékosztályokat is.

Az említett tételben láttuk, hogy az ott definiált \sim reláció egy ekvivalenciareláció, melynek ekvivalencia-osztályai a H szerinti baloldali mellékosztályok. Ezek az ekvivalenciarelációkról szóló 13.6. Tétel alapján G egy partícióját alkotják, azaz semelyik két baloldali mellékosztálynak nincs közös eleme, és úniójuk a teljes G. Ez az elrendezés látható a 24.1. ábrán.

Baloldali mellékosztályok partíciója
24.1. ábra: Baloldali mellékosztályok partíciója

Tekintsük most a G csoportnak egy tetszőleges H szerinti baloldali mellékosztályát, és válasszunk ki belőle egy tetszőleges g elemet, amelyet reprezentánselemként fogunk használni a továbbiakban. A kérdéses mellékosztály tehát a gH halmaz lesz. Most egy kölcsönösen egyértelmű megfeleltetést fogunk létesíteni a gH mellékosztály elemei és a H részcsoport elemei között.

A 24.7. Tétel bizonyítása után megjegyzés alapján a gH mellékosztály tetszőleges x eleme esetén a g^{-1}x szorzat a H részcsoportnak egy eleme. Definiáljunk tehát egy f:gH\to H függvényt a következőképpen:

f(x)=g^{-1}x

Azt kell megmutatni, hogy f kölcsönösen egyértelmű megfeleltetés gH és H között, amely az alábbi két állítást jelenti:

  1. Tetszőleges x\in gH és y\in gH esetén ha f(x)=f(y), akkor x=y. Azaz az f függvény H minden elemét legfeljebb egy gH-beli elemhez rendeli hozzá.
  2. Tetszőleges h\in H-hoz létezik olyan x\in gH, amelyre f(x)=h teljesül. Azaz az f függvény H minden elemét legalább egy gH-beli elemhez hozzárendeli.

Az 1. állítás: Ha f(x)=f(y), akkor az azt jelenti, hogy teljesül az alábbi egyenlőség:

g^{-1}x=g^{-1}y

Szorozzuk meg mindkét oldalt balról g-vel – itt e-vel jelöltük G egységelemét:

\underbrace{gg^{-1}}_{=e}\cdot x=\underbrace{gg^{-1}}_{=e}\cdot y

Ez viszont a 3. csoportaxióma értelmében épp a kívánt x=y egyenlőség.

A 2. állítás: Ehhez keresnünk kell egy olyan x\in gH elemet, amelyhez az f függvény épp a h\in H elemet rendeli hozzá. Tehát az alábbi egyenlet megoldását keressük:

\underbrace{g^{-1}x}_{=f(x)}=h

Szorozzuk meg mindkét oldalt balról g-vel – itt e-vel jelöltük a G egységelemét:

\underbrace{gg^{-1}}_{=e}\cdot x=gh

A baloldalról az egységelem a 2. csoportaxióma miatt elhagyható, így végülis a keresett x előállításának képletét kapjuk: x=gh.

Összefoglalva: A fenti f függvény mintájára kölcsönösen egyértelmű megfeleltetés létesíthető a H részcsoport, és bármely H szerinti baloldali mellékosztály között. Néhány mellékosztály esetére ez látható a 24.2. ábrán.

Részcsoport és mellékosztályai
24.2. ábra: Részcsoport és mellékosztályai

Ez azt jelenti, hogy bármely H szerinti baloldali mellékosztálynak pontosan ugyanannyi eleme van, mint magának H-nak. Ha tehát H rendjét megszorozzuk a baloldali mellékosztályok számával, akkor – mivel ezek a baloldali mellékosztályok G egy partícióját alkotják – épp G rendjét kapjuk eredményül. A 16.1. Definíció értelmében ez azt jelenti, hogy |H| osztója |G|-nek.

Negatív kitevős hatványok

A 23.8. szakaszban felhívtuk Alice és Bob figyelmét arra, hogy nagyon nem szerencsés, ha több – vagy akár az összes – felhasználónak az RSA kulcsgenerálás során ugyanazokat a prímszámokat, és így ugyanazt a modulust választják. Ezáltal ugyanis egy potenciális támadónak a Bézout-lemma felhasználásával lehetősége nyílik arra, hogy kizárólag publikusan elérhető információkból – tehát az RSA feltörése nélkül – megfejthessen titkos üzeneteket. Ez abban az esetben lehetséges, ha egy adott felhasználó ugyanazt az x nyílt üzenetet – például egy körlevelet – legalább két másik olyan felhasználónak is elküld, akik azonos modulust használnak.

Szinte majdnem biztos ugyanis, hogy e két felhasználó e_1 és e_2 publikus kitevője egymáshoz relatív prím, azaz kitüntetett közös osztójuk 1. A támadó a Bézout-lemma bizonyításában bemutatott euklidészi algoritmus segítségével hatékonyan meg tudja találni azokat az u és v egész számokat, amelyekre teljesül az alábbi:

u\cdot e_1 + v\cdot e_2=(e_1, e_2) = 1

Mármost ha e két felhasználó azonos modulust használ, akkor a nekik küldött y_1 és y_2 kódszövegekből, továbbá a támadó által kiszámított u és v egész számokból a hatványozás azonosságairól szóló 18.8. Tétel, valamint a kongruencia tulajdonságairól szóló 20.2. Tétel alapján elvileg könnyedén megkapható az x nyílt üzenet:

(\underbrace{x^{e_1}}_{\equiv y_1})^u\cdot (\underbrace{x^{e_2}}_{\equiv y_2})^v = x^{\overbrace{u\cdot e_1 + v\cdot e_2}^{=1}}\equiv x\pmod m

Megemlítettük ugyanakkor, hogy mivel a kitevőben szereplő e_1 és e_2 számok mindketten pozitívak, ezért u és v közül pontosan az egyik szükségképpen negatív, és így az említett két tételt nem használhattuk volna. Ezért ebben a szakaszban kiterjesztjük a hatványozás fogalmát a csak pozitív kitevőkről tetszőleges egész kitevőkre is. Ez olyan esetekben tehető meg, amikor a művelet – amelynek ugye a többszöri elvégzését értjük hatványozás alatt – rendelkezik neutrális elemmel és invertálható. Az alábbi definícióban ezt teljes általánosságban fogalmazzuk meg.

24.9. Definíció (Egész kitevős hatványozás):

Legyen S tetszőleges halmaz, amelyen értelmezve van egy *-gal jelölt asszociatív művelet, amelyre nézve létezik neutrális elem. Tegyük fel továbbá, hogy x az S halmaz egy olyan eleme, amely invertálható erre a műveletre nézve – jelöljük x inverzét x^{-1}-gyel –, n pedig tetszőleges pozitív egész szám. Ekkor egész kitevős hatvány alatt az alábbi kifejezéseket értjük:

\begin{aligned} x^n &= \overbrace{x*x*x*\ldots *x}^{\text{n darab}} \\ x^0 &= e \\ x^{-n} &= \underbrace{(x^{-1})*(x^{-1})*\ldots * (x^{-1})}_{\text{n darab}}=(x^{-1})^n \end{aligned}

Azaz x-nek a 0. hatványa alatt a neutrális elemet, -n-edik hatványa alatt pedig x inverzének az n-edik hatványát értjük. A fenti kifejezésekben az x-et a 18.8. Tételben leírtak szerint alapnak, az n, a -n és a 0 egész számokat pedig egész kitevőknek nevezzük.

Megjegyzés:

E definíció tehát kiterjeszti a 18.8. Tételben bevezetett jelölésmódot a csak pozitív kitevőkről tetszőleges egész kitevőre. Egy x elem 0 kitevős hatványának természetesen csak abban az esetben van értelme, ha a műveletre nézve létezik neutrális elem. Ehhez hasonlóan a negatív kitevős hatványoknak pedig csak akkor van értelme, ha x-nek a műveletre nézve létezik inverze. Ezen túlmenően a definíció a 18.8. Tétel szerinti értelmezéssel ellentétben tetszőleges algebrai struktúra tetszőleges asszociatív műveletére – tehát nem kizárólag egy gyűrű szorzás műveletére – vonatkoztatható.

E hatványkifejezések segítségével tehát tömören tudjuk kifejezni azt, hogy egy műveletet sokszor kell elvégezni. Gyakori a szakirodalomban, hogy amennyiben a műveletet a + szimbólum jelöli – ez tipikusan kommutatív műveletek esetén szokott így lenni –, akkor x^n helyett az nx írásmódot alkalmazzuk, és hatvány helyett "többszörösről" beszélünk. Ez azonban nem tévesztendő össze az oszthatóság kapcsán a 16.1. Definícióban megismert többszörös fogalmával. Ott ugyanis egy R gyűrű esetén az ak kifejezés alatt az a gyűrűelem k gyűrűelemmel vett többszörösét értettük, ami tehát egy darab szorzás az R gyűrűben. Ezzel szemben a most megismert na jelölés azt jelenti, hogy az a gyűrűelemet n-szer kell összeadni saját magával az R gyűrűben. Azaz:

na=\underbrace{a+a+a+\ldots +a}_{\text{n darab}}

Most igazoljuk, hogy a pozitív kitevős hatványozás azonosságairól szóló 18.8. Tétel összefüggései érvényben maradnak tetszőleges egész kitevők esetén is. Ehhez szükségünk lesz egy segédtételre.

24.10. Lemma:

Legyen S tetszőleges halmaz, amelyen értelmezve van egy \cdot-tal vagy egymás után írással jelölt asszociatív művelet. Tegyük fel továbbá, hogy e műveletre nézve létezik neutrális elem, és legyen a egy invertálható elem S-ben. Ekkor tetszőleges, tehát nem feltétlenül csak pozitív m egész szám esetén teljesül az alábbi:

a^{m-1}=a^m\cdot a^{-1}

Bizonyítás:

Jelöljük a neutrális elemet e-vel. Ha m=0, akkor m-1=-1, és mivel a 24.9. Definíció alapján a^0=e, ezért

\begin{aligned} a^{m-1}&=a^{-1}= \\ &=e\cdot a^{-1}= \\ &=a^0\cdot a^{-1}= \\ &=a^m\cdot a^{-1} \end{aligned}

Itt fontos megjegyezni, hogy az első sorban lévő a^{-1} még csak formálisan jelöli az a elemnek a -1-edik hatványát, ez azonban a 24.9. Definíció alapján az a inverzének +1-edik hatványával, vagyis magával a inverzével egyezik meg, amit – kicsit szerencsétlen módon – szintén a^{-1}-gyel jelöltünk. A második sortól kezdve már ez utóbbi jelentést társítjuk az a^{-1} jelöléshez.

Ha m=1, akkor m-1=0, és mivel a 24.9. Definíció alapján a^0=e, továbbá a 14.9. Definíció alapján aa^{-1}=e, ezért

\begin{aligned} a^{m-1}&=a^{0}= \\ &=e= \\ &=a\cdot a^{-1}= \\ &=a^1\cdot a^{-1} \\ &=a^m\cdot a^{-1} \end{aligned}

Ha m\gt 1, akkor m-1\gt 0, és így használhatjuk a 18.8. Tételben szereplő definíciót:

a^{m-1}\cdot a = \overbrace{\underbrace{aaa\ldots a}_{m-1\ \text{darab}} \cdot a}^{m\ \text{darab}}=a^m

Ha mindkét oldalt jobbról megszorozzuk a inverzével, akkor megkapjuk a tétel állítását m\gt 1 esetén is:

a^{m-1}\cdot \cancel{\overbrace{aa^{-1}}^{=e}} = a^m\cdot a^{-1}

Végül, ha m\lt 0 – azaz negatív –, akkor vezessük be az r=-m jelölést. Ilyenkor tehát egyrészt r\gt 0, másrészt m=-r, és így az a^{m-1} hatvány így alakítható át:

\begin{aligned} a^{m-1}&=a^{\overbrace{-r}^{=m}-1}= \\ &=a^{-(r+1)}= \\ &=(a^{-1})^{r+1}= \\ &=(a^{-1})^{r}\cdot (a^{-1})^{1} \\ &=a^{-r}\cdot a^{-1} \\ &=a^m\cdot a^{-1} \end{aligned}

Itt az első sorban elvégeztük az m=-r behelyettesítést, a második sorban csak egy algebrai átalakítást végeztünk a kitevőben, a harmadik sorban a 24.9. Definíció szerint jártunk el a -(r+1) negatív kitevőre vonatkozóan, a negyedik sorban alkalmaztuk a 18.8. Tétel 3. pontját, mivel r+1 itt már pozitív kitevő, az ötödik sorban ismét a 24.9. Definíció szerint jártunk el, végül az utolsó sorban visszafelé végeztük el az m=-r behelyettesítést.

Ebből már igazolhatjuk a 18.8. Tétel kiterjesztését az egész kitevős hatványozásra.

24.11. Tétel (Az egész kitevős hatványozás azonosságai):

Legyen S tetszőleges halmaz, amelyen értelmezve van egy \cdot-tal vagy egymás után írással jelölt asszociatív művelet. Tegyük fel továbbá, hogy e műveletre nézve létezik neutrális elem, és legyen a és b az S két invertálható eleme. Ekkor tetszőleges – tehát nem feltétlenül csak pozitív – n és k egész számok esetén teljesülnek az alábbi tulajdonságok:

1.
Ha a és b felcserélhetők, azaz ab=ba, akkor
(a\cdot b)^n=a^n\cdot b^n
2.
(a^n)^k = a^{n\cdot k}
3.
a^n\cdot a^k=a^{n+k}
4.
Az a^{-n} hatvány az a^n hatvány inverze, azaz
a^{-n}=(a^n)^{-1}

Bizonyítás:

Először a 3. tulajdonságot igazoljuk, mert ez a kulcs a többihez. Legyen n tetszőleges egész szám, és alkalmazzunk először a k\geq 0 értékekre vonatkozó teljes indukciót. Indukciós feltétel: valamilyen k\geq 0-ra már teljesül az állítás. Indukciós lépés: megmutatjuk, hogy ebben az esetben k+1-re is teljesül:

\begin{aligned} a^na^{k+1} &= a^n\overbrace{(a^ka)}^{=a^{k+1}} = \\ &= (a^na^k)a = \\ &= a^{n+k}a = \\ &= a^{n+k+1} \end{aligned}

Itt a harmadik sor az indukciós feltételből következik, az első sorban pedig a 24.10. Lemmát használtuk fel, méghozzá m=k+1 helyettesítéssel. Eszerint ugyanis:

a^{\overbrace{k}^{=m-1}}=a^{\overbrace{k+1}^{=m}}a^{-1}

Ha mindkét oldalt jobbról meszorozzuk a-val, akkor valóban megkapjuk az első sorban használt a^ka=a^{k+1} azonosságot. Ehhez hasonlóan a negyedik sorban szintén a 24.10. Lemmát használtuk fel, ám ezúttal az m=n+k+1 helyettesítéssel.

A k\geq 0 értékekre tehát már áll az indukciós dominósor. Ennek tükörképeként most alkalmazzunk a k\leq 0 értékekre vonatkozó teljes indukciót, azaz állítsuk fel a dominósort a negatív irányba is. Indukciós feltétel: valamilyen k\leq 0-ra már teljesül az állítás. Indukciós lépés: megmutatjuk, hogy ebben az esetben k-1-re is teljesül:

\begin{aligned} a^na^{k-1} &= a^n\overbrace{(a^ka^{-1})}^{=a^{k-1}} = \\ &= (a^na^k)a^{-1} = \\ &= a^{n+k}a^{-1} = \\ &= a^{n+k-1} \end{aligned}

Itt a harmadik sor megint az indukciós feltételből következik, az első és a negyedik sorban pedig közvetlenül alkalmaztuk a 24.10. Lemmát m=k valamint m=n+k helyettesítésekkel.

Mindkét irányban felállítottuk az indukciós dominósort, amiket most a k=0 eset igazolásával le is döntünk:

a^na^0=a^ne=a^n=a^{n+0}

Ezután a másik három tulajdonság már könnyen adódik. Ezek technikai részleteit az alábbiakban közöljük:

A 4. tulajdonság

Azt kell megmutatnunk, hogy a^n és a^{-n} egymás inverzei. Ez azonnal adódik a 3. tulajdonságból:

\begin{aligned} a^na^{-n}&=a^{n-n}=a^0=e \\ a^{-n}a^n&=a^{-n+n}=a^0=e \end{aligned}
A 2. tulajdonság

Legyen n tetszőleges egész szám. Ha k=0, akkor triviálisan teljesül az állítás:

(a^n)^k=(a^n)^0=e=a^0=a^{n\cdot 0}=a^{nk}

Ha k\gt 0, akkor a 24.9. Definíció miatt és a 3. tulajdonság ismételt alkalmazásával kapjuk az állítást:

\begin{aligned} (a^n)^k &= \overbrace{a^na^na^na^n\ldots a^n}^{\text{k darab}} = \\ &= a^{\overbrace{n+n}^{\text{2 darab}}}\cdot \overbrace{a^na^na^n\ldots a^n}^{\text{k-2 darab}} = \\ &= a^{\overbrace{n+n+n}^{\text{3 darab}}}\cdot \overbrace{a^na^n\ldots a^n}^{\text{k-3 darab}} = \\ &\vdots \\ &= a^{\overbrace{n+n+n+n+\ldots +n}^{\text{k darab}}} = \\ &= a^{nk} \end{aligned}

Végül, ha k\lt 0, akkor -k\gt 0, és így:

\begin{aligned} (a^n)^k &= ((a^n)^{-1})^{-k} = \\ &= (a^{-n})^{-k} = \\ &= a^{(-n)(-k)} = \\ &= a^{nk} \end{aligned}

Itt az első sorban a 24.9. Definíciót alkalmaztuk a k negatív kitevőre. A második sor a már bizonyított 4. tulajdonságból következik. Mivel -k pozitív, és pozitív kitevőkre már igazoltuk a 2. tulajdonságot, ezért azt felhasználhattuk a harmadik sorban. Végül a negyedik sorban csak egy egyszerű algebrai átalakítást végeztünk.

Az 1. tulajdonság

Pozitív n-re a 18.8. Tételben már igazoltuk az állítást. Ha n=0, akkor pedig triviálisan teljesül, ugyanis:

(ab)^n=(ab)^0=e=ee=a^0b^0=a^nb^n

Ha n negatív, akkor -n pozitív, és így:

\begin{aligned} (ab)^n &= ((ab)^{-n})^{-1} = \\ &= (a^{-n}b^{-n})^{-1} = \\ &= (b^{-n})^{-1}(a^{-n})^{-1} = \\ &= b^na^n = \\ &= a^nb^n \end{aligned}

Itt az első sorban a 4. tulajdonságot használtuk fel. Mivel -n pozitív, és pozitív kitevőkre már igazoltuk az 1. tulajdonságot, ezért azt felhasználhattuk a második sorban. A harmadik sorban a 24.2. Tétel alapján jártunk el, majd a negyedik sorban ismét a 4. tulajdonságot használtuk fel. Végül az utolsó lépés abból következik, hogy a tétel szövege alapján a és b most felcserélhetők egymással.

Így tehát a közös modulusokon és a Bézout-lemmán alapuló támadás valóban működik azokban az esetekben, amikor az x üzenet által reprezentált [x]_m maradékosztály invertálható, azaz ő egy redukált maradékosztály. Joggal merülhet fel a kérdés, hogy vajon mi a helyzet akkor, ha [x]_m nem redukált maradékosztály, hiszen ekkor nem értelmezhetők az ő negatív kitevős hatványai.

Nos az a helyzet, hogy ekkor amúgyis sokkal nagyobb a baj, hiszen ha x-nek van 1-től különböző közös osztója az m modulussal, akkor nyilván az x^{e_1} és x^{e_2} hatványoknak is van. Ők viszont a támadó birtokába jutott y_1 és y_2 kódszövegekkel kongruensek modulo m, és így a 20.15. Tétel alapján [y_1]_m és [y_2]_m sem lehetnek redukált maradékosztályok. Márpedig ekkor a támadó az euklidészi algoritmus segítségével könnyedén kiszámíthatja az m és y_1 vagy y_2 kitüntetett közös osztóját, tehát végülis m egyik prímtényezőjét. Ebből azonnal megkapja a másik prímtényezőt, és ezek birtokában ő is előállíthatja a titkos kulcsot. Sőt, ugyanezt maga a küldő fél is megteheti, hiszen ugye már az eredeti x üzenet sem volt relatív prím m-hez.

Akkor ezek szerint mégsem lenne biztonságos az RSA? Hiszen ez alapján ha sikerül találni egy nem redukált maradékosztályt, akkor lényegében az euklidészi algoritmus lefuttatásával a titkos kulcshoz szükséges prímtényezők is kiszámíthatók. Nos, ez valóban így van, pusztán annyi a gond, hogy ehhez találni kéne egy nem redukált maradékosztályt. Márpedig ez gyakorlatilag olyan, mintha tűt keresnénk a szénakazalban – ráadásul a szóban forgó számok nagyságrendje miatt hatványozottan. Másként fogalmazva nem sokkal könnyebb ilyen maradékosztályt találni, mintha eleve magukat a prímtényezőket kezdenénk el keresgélni. Tehát nyugodtan feltételezhetjük, hogy a támadóhoz kerülő y_1 és y_2 kódszövegek relatív prímek a modulushoz, ennek teljesülése ugyanis gyakorlatilag biztos.

Most azonban térjünk vissza a csoportelmélethez, és ismerkedjünk meg egy újabb fontos fogalommal, amelyre szükségünk lesz a Miller-Rabin-prímteszttel kapcsolatos bizonyításhoz.

Csoportelem rendje

Az előző szakaszban tehát kiterjesztettük a hatványozást a 0 és a negatív kitevőkre is minden olyan elem esetén, amelynek létezik inverze a szóbanforgó műveletre nézve. Minthogy egy csoportban minden elemnek létezik inverze a csoportműveletre nézve, ezért az előző szakaszban bizonyított összefüggések nyilván érvényesek lesznek bármilyen csoportban.

Számunkra elsősorban a véges csoportok az érdekesek, mint amilyen például a \Z/n\Z maradékosztálygyűrű multiplikatív csoportja is. Vizsgáljuk meg például a (\Z/10\Z)^{\times} multiplikatív csoport elemeinek hatványait. Az alábbi táblázat minden sorában egy-egy csoportelem hatványai szerepelnek az első néhány pozitív kitevőre, amely kitevőknek az egyes oszlopok felelnek meg:

\begin{array}{c|cccccc} &1&2&3&4&5&6 \\ \hline [1]_{10} & [1]_{10} & [1]_{10} & [1]_{10} & [1]_{10} & [1]_{10} & [1]_{10} \\ [3]_{10} & [3]_{10} & [9]_{10} & [7]_{10} & [1]_{10} & [3]_{10} & [9]_{10} \\ [7]_{10} & [7]_{10} & [9]_{10} & [3]_{10} & [1]_{10} & [7]_{10} & [9]_{10} \\ [9]_{10} & [9]_{10} & [1]_{10} & [9]_{10} & [1]_{10} & [9]_{10} & [1]_{10} \end{array}

Például a [3]_{10} maradékosztály harmadik hatványa a [3^3]_{10}=[27]_{10}=[7]_{10} maradékosztály, amely a táblázat második sorának harmadik oszlopában szerepel.

A táblázatot figyelve észrevehetünk egy furcsa jelenséget: egy adott elemnek meghatározott számú különböző hatványa van, amelyek periodikusan ismétlődnek a kitevő növelésével. A maradékosztályoknak egy fontos tulajdonsága, hogy összesen hány különböző hatványuk létezik a maradékosztálygyűrű multiplikatív csoportjában. Ez elvezet minket egy fontos fogalomhoz, amelyet az alábbi definícióban tetszőleges csoportra – tehát nem kizárólag a maradékosztálygyűrűk multiplikatív csoportjaira – fogalmazunk meg.

24.12. Definíció (Csoportelem rendje):

Legyen G tetszőleges csoport, g pedig ennek valamely eleme. Ekkor g egymástól különböző hatványainak a számát a g elem rendjének nevezzük, és az angol "order" kifejezésre utalva o(g)-vel jelöljük. Ha g-nek véges sok – például n darab – különböző hatványa létezik a G csoportban, akkor azt mondjuk, hogy g rendje véges. Ezt így jelöljük:

o(g)=n

Egyéb esetekben pedig végtelen rendű csoportelemről beszélünk. Jelekkel:

o(g)=\infty

Az alábbiakban a fenti táblázat alapján felsoroltuk a (\Z/10\Z)^{\times} multiplikatív csoport egyes elemeinek rendjét:

\begin{aligned}o([1]_{10})&=1 \\ o([3]_{10})&=4 \\ o([7]_{10})&=4 \\ o([9]_{10})&=2\end{aligned}

Most igazoljuk az elemrenddel kapcsolatos legfontosabb összefüggéseket.

24.13. Tétel:

Legyen G tetszőleges csoport, g ennek valamely eleme, e pedig az egységelem. Ha g rendje véges, akkor tetszőleges n és k egész számok esetén igazak az alábbiak:

1.
g^k=g^n akkor és csak akkor teljesül, ha fennáll az o(g)|k-n oszthatóság, ami a 20.1. Tétel 3. pontja alapján az alábbi kongruenciát jelenti:
k\equiv n\pmod{o(g)}
2.
g^k=e akkor és csak akkor teljesül, ha fennáll az o(g)|k oszthatóság, ami a 20.1. Tétel 3. pontja alapján az alábbi kongruenciát jelenti:
k\equiv 0\pmod{o(g)}
3.
A g elem hatványai o(g) szerint periodikusan ismétlődnek.
4.
A g elem o(g) rendje az a legkisebb pozitív kitevő, amelyre g-t emelve az egységelemet kapjuk. Másként fogalmazva: ha valamilyen n\gt 0 egész szám esetén g^n=e, akkor
o(g)\leq n
5.
o(g)=1 akkor és csak akkor, ha g=e.

Végül:

6.
Ha g rendje végtelen, akkor g bármely két hatványa különbözik.

Bizonyítás:

Jelöljük I-vel azt a halmazt, amely olyan i egész számokból áll, amelyekre teljesül az alábbi:

g^i=e

Először megmutatjuk, hogy I főideál az egész számok \Z gyűrűjében.

I főideál \Z-ben

Az I tehát azon egész kitevők halmaza, amelyekre a g elemet emelve a G csoport egységelemét kapjuk. Az I halmaz zárt az egész számok összeadására nézve, hiszen ha i\in I és j\in I, akkor I definíciója miatt ugye g^i=e és g^j=e. Ám ekkor a 24.11. Tétel 3. pontja alapján

g^{i+j}=g^i\cdot g^j=e\cdot e=e

Ebből viszont szintén I definíciója miatt i+j\in I következik.

Továbbá I zárt tetszőleges – tehát nem csak I-beli – egész számmal való szorzásra is, hiszen ha i\in I és s\in \Z, akkor egyrészt I definíciója miatt g^i=e. Másrészt viszont a 24.11. Tétel 2. pontja alapján

g^{i\cdot s}=(g^i)^s=e^s=e

Ebből viszont szintén I definíciója miatt i\cdot s\in I következik.

Végül egyrészt I tartalmazza a 0 egész számot, hiszen a 24.9. Definíció szerint g^0=e. Másrészt I zárt az ellentettképzésre is, hiszen ha i\in I, akkor I definíciója miatt g^i=e, ám ekkor a 24.11. Tétel 4. pontja miatt

g^{-i}=(g^i)^{-1}=e^{-1}=e

Ebből viszont szintén I definíciója miatt -i\in I következik.

Az I halmaz tehát a 18.15. Tétel és a 18.18. Definíció alapján egy ideál az egész számok \Z gyűrűjében. Mivel a 17.20. Tétel alapján \Z euklidészi gyűrű, ezért a 19.15. Tétel miatt I szükségképpen csak főideál lehet, azaz egyetlen elemmel generálható.

Másodszor megmutatjuk, hogy g^k=g^n akkor és csak akkor teljesül, ha k-n\in I.

g^k=g^n feltétele

Tegyük fel, hogy g^k=g^n. Szorozzuk meg az egyenlet mindkét oldalát g^n inverzével, azaz a 24.11. Tétel 4. pontja alapján g^{-n}-nel. Ekkor az alábbit kapjuk:

g^k\cdot g^{-n}=\underbrace{g^n\cdot g^{-n}}_{=e}

Ez viszont a 24.11. Tétel 3. pontja miatt az alábbival ekvivalens:

g^{k-n}=e

Ez az I definíciója alapján épp azt jelenti, hogy k-n\in I.

Végül azt igazoljuk, hogy milyen kapcsolat áll fenn az o(g) elemrend és az I főideál között.

I és o(g) kapcsolata

Ha I=(0), akkor a 20.9. Tétel szerint I kizárólag a 0 egész számot tartalmazza. Azt már ugye megmutattuk, hogy g^k=g^n pontosan akkor teljesül, ha k-n\in I, ami ebben az esetben k=n-nel ekvivalens. Másként fogalmazva: ha k\neq n, akkor a g^k és g^n hatványok is különböznek, azaz g-nek végtelen sok különböző hatványa van. Ez épp azt jelenti, hogy o(g)=\infty.

Ha I\neq (0), akkor – mivel főideál – létezik olyan d\neq 0 egész szám, amelyre I=(d). Ilyenkor a k-n\in I feltétel a 20.1. Tétel 3. pontja alapján az alábbi kongruenciával ekvivalens:

k\equiv n\pmod d

A g csoportelem bármely két hatványa tehát pontosan akkor egyezik meg, ha a két kitevő ugyanabba a modulo d maradékosztályba esik. Másként fogalmazva o(g) épp a modulo d maradékosztályok száma lesz. A 20.4. Tétel alapján tehát o(g)=d.

Ezekből már automatikusan következnek a tétel állításai.

Az 1. állítás: Mivel o(g) véges, ezért létezik d\neq 0, hogy I=(d). Mivel láttuk, hogy o(g)=d, ezért g^k=g^n valóban ekvivalens az alábbi kongruenciával:

k\equiv n\pmod{o(g)}

A 2. állítás az előbbi speciális esete, amikoris n=0.

A 3. állítás könnyen adódik a 20.4. Tételből. Ez alapján ugyanis ha rögzítünk egy tetszőleges a kitevőt, akkor pontosan az i\cdot o(g) + a alakban felírható kitevők lesznek a-val azonos maradékosztályban – ahol i tetszőleges egész szám –, azaz g hatványai valóban o(g) periódussal ismétlődnek.

A 4. állítás: Az egységelemet adó kitevők – mint láttuk – épp az I főideál elemei, amelyek ugye mindannyian o(g) többszörösei. Ezek közül a pozitív kitevők a 17.2. Lemma alapján biztosan nem kisebbek o(g)-nél.

Az 5. állítás: Ha o(g)=1, akkor a 20.1. Tétel 4. pontja alapján a k\equiv n\pmod{o(g)} kongruencia mindig teljesül, és így bármely kitevő esetén az egységelemet kapjuk – beleértve természetesen az 1-es kitevőt is. Visszafelé: Ha g=e, akkor g-nek már az első hatványa is az egységelem. Mivel az 1 kitevőnél nincs kisebb pozitív kitevő, ezért a már bizonyított 4. állítás alapján o(g)=1.

Végül a 6. állítás: Mivel o(g)=\infty, ezért I=(0), és a bizonyítás elején már megmutattuk, hogy ekkor g^k=g^n akkor és csak akkor teljesül, ha k=n. Azaz ilyenkor g-nek valóban különbözik bármely két hatványa.

A 24.3. szakaszban szó volt róla, hogy hogyan lehet könnyen ellenőrizni azt, hogy egy G csoport valamely H részhalmaza részcsoportot alkot-e G-ben, vagy sem. Ennek feltételeit a 24.5. Tételben határoztuk meg. Eszerint elegendő azt ellenőrizni, hogy H zárt-e a csoportműveletre, és az inverzképzésre nézve, valamint tartalmazza-e a csoport egységelemét. Az imént bizonyított elemrendre vonatkozó összefüggések alapján most igazoljuk, hogy véges csoportok esetén a műveleti zártságból már következik a másik két feltétel.

24.14. Következmény:

Legyen G tetszőleges véges csoport, H pedig ennek egy tetszőleges nemüres részhalmaza. A H részhalmaz akkor és csak akkor részcsoport G-ben, ha zárt a G csoportműveletére nézve.

Bizonyítás:

Ha H részcsoport, akkor nyilván teljesíti a 24.5. Tétel feltételeit, így a műveleti zártságot is.

Visszafelé: Tegyük fel, hogy H olyan nemüres részhalmaz, amely zárt a G-beli csoportműveletre nézve, legyen g tetszőleges H-beli elem, továbbá jelöljük G egységelemét e-vel. Mivel G véges csoport, ezért g-nek nem lehet végtelen sok különböző hatványa, és így az o(g) elemrend is véges. Azt tudjuk, hogy H zárt a G-beli csoportműveletre nézve, azaz tartalmazza g minden hatványát, így a g^{o(g)} hatványt is. A 24.13. Tétel 4. pontja alapján azonban g^{o(g)}=e, így tehát H valóban tartalmazza az egységelemet.

Végül szintén a műveleti zártság miatt H tartalmazza a g^{o(g)-1} hatványt is. Ez viszont épp g inverze, hiszen a 24.11. Tétel 3. pontja szerint őket összeszorozva épp az egységelemet kapjuk:

g\cdot g^{o(g)-1}=g^{1+o(g)-1}=g^{o(g)}=e

A H tehát zárt az inverzképzésre is, és így teljesülnek a 24.5. Tétel feltételei, következésképp H valóban részcsoport G-ben.

Végül ismertetünk egy további egyszerű következményt, amely az egyes elemek rendjei és a csoport rendje között mond ki egy, a továbbiakban hasznos összefüggést.

24.15. Következmény:

Ha G véges csoport, g pedig ennek egy tetszőleges eleme, akkor g rendje osztója a G csoport rendjének, azaz:

o(g)\ |\ |G|

Bizonyítás:

Jelöljük H-val G-nek azt a részhalmazát, amely pontosan g hatványaiból áll. Ekkor H nyilván nemüres, hiszen tartalmazza legalább g-t. Továbbá zárt a G-beli csoportműveletre nézve, ugyanis g bármely két hatványát összeszorozva ugyancsak g-nek egy hatványát kapjuk, hiszen a 24.11. Tétel 3. pontja miatt:

g^k\cdot g^n=g^{k+n}

Mivel G véges csoport, ezért a 24.14. Következmény értelmében H részcsoport G-ben. A Lagrange tétel miatt tehát teljesül az alábbi oszthatóság:

|H|\ |\ |G|

Mivel azonban H a g elem összes létező hatványaiból áll, ezért |H|=o(g). Ezt behelyettesítve a fenti oszthatóságba megkapjuk a tétel állítását.

A Miller-Rabin-nemtanúk fedőcsoportja

Ennyi csoportelméleti bevezető után most térjünk vissza az eredeti problémánkra, és próbáljunk meg egy alsó becslést adni a Miller-Rabin-tanúk számára. Ezzel egyúttal azt is meg fogjuk mutatni, hogy a Miller-Rabin prímteszt elől a Carmichael-számok sem tudnak elbújni.

A bemenetünk tehát egy n\gt 1 páratlan egész szám, amelyről el kéne dönteni, hogy prím-e vagy összetett, a vizsgálatunk tárgya pedig a 24.3. Tétel szerinti (\Z/n\Z)^{\times} multiplikatív csoport, amely ugye a modulo n redukált maradékosztályokból áll. A 23.9. Definíció, valamint a hozzá kapcsolódó megjegyzés alapján ugyanis az összes Miller-Rabin-tanú és az összes Miller-Rabin-nemtanú ebben a csoportban helyezkedik el, továbbá együtt le is fedik az egész csoportot, mivel minden redukált maradékosztály pontosan az egyik kategóriába tartozik.

A stratégiánk központi eleme a Lagrange-tétel lesz, amely szerint (\Z/n\Z)^{\times} bármely részcsoportjának az elemszáma osztója (\Z/n\Z)^{\times} elemszámának. Elsődleges célunk tehát az lesz, hogy keressünk egy olyan részcsoportot (\Z/n\Z)^{\times}-ben, amely tartalmazza az összes Miller-Rabin-nemtanút. Ezt a részcsoportot H_n-nel, a Miller-Rabin-nemtanúk halmazát pedig G_n-nel fogjuk jelölni a továbbiakban. Ezután azt kell megmutatnunk, hogy H_n valódi részcsoport, ekkor ugyanis a Lagrange-tétel miatt ennek a részcsoportnak az elemszáma legfeljebb feleannyi lehet, mint a teljes (\Z/n\Z)^{\times} csoport elemszáma. Mármost ha H_n valóban tartalmazza az összes Miller-Rabin-nemtanút – azaz G_n\sube H_n –, akkor abból következik, hogy G_n az összes redukált maradékosztályoknak "még inkább" legfeljebb csak a felét teheti ki. Másként fogalmazva: a redukált maradékosztályoknak legalább a fele Miller-Rabin-tanú kell legyen.

A keresett H_n részcsoport konstrukciójához induljunk ki a 23.9. Definícióból. Itt ugye n páratlan, ezért n-1 páros, és így ő felírható 2^ek alakban valamilyen e\geq 1 egész kitevővel és k\geq 1 páratlan számmal. Ezután véletlenszerűen kiválasztunk egy [a]_n redukált maradékosztályt, és elkezdjük sorra megvizsgálni, hogy az a^k, majd az ebből sorozatos négyzetreemelésekkel kapott a^{2k}, a^{2^2k}, a^{2^3k}, ..., a^{2^{e-1}k} hatványok mivel kongruensek modulo n.

A 23.9. Definíció szerint a Miller-Rabin-nemtanúk e négyzetreemelések hatására előbb-utóbb a +1-gyel való kongruencia "csapdájába" esnek. Ez három esetben történhet meg. Első esetben azért, mert a kezdeti a^k hatvány már eleve +1-ről indul, és a további négyzetreemelések hatására innen már nem tud "kiszabadulni". Második esetben azért, mert a kezdeti a^k hatvány -1-ről indul, és így az első négyzetreemelés hatására esik bele a +1-es "csapdába". A harmadik esetben pedig azért, mert a kezdeti a^k hatvány ugyan \pm1-től különböző értékről indul, de legkésőbb az e-1-edik négyzetreemelés hatására -1-be jut, és ekkor a következő lépésben esik bele a végzetes +1 "csapdába":

\begin{aligned} &+1 \to +1 \to +1 \to \ldots \\ -1 \to &+1 \to +1 \to +1 \to \ldots \\ \ldots \to -1 \to &+1 \to +1 \to +1 \to \ldots \end{aligned}

Most vizsgáljuk meg, hogy általánosságban – tehát nem csak a Miller-Rabin-nemtanúk esetén – hogyan alakulhatnak ezek a négyzetreemelési láncok. Nézzük például az n=65 esetet. Ilyenkor e=6 és k=1, mivel

n-1=64=2^6\cdot 1

Ez tehát azt jelenti, hogy a véletlenszerűen kiválasztott [a]_{65} redukált maradékosztályok esetén az alábbi négyzetreemelési láncokat kell megvizsgálnunk:

a \to a^2 \to a^4 \to a^8 \to a^{16} \to a^{32}

Az alábbi táblázatban felírtuk ezeket a láncokat néhány releváns modulo 65 redukált maradékosztályra:

\begin{array}{c|cccccc} [1]_{65} & +1 & +1 & +1 & +1 & +1 & +1 \\ [8]_{65} & 8 & -1 & +1 & +1 & +1 & +1 \\ [18]_{65} & 18 & -1 & +1 & +1 & +1 & +1 \\ [47]_{65} & 47 & -1 & +1 & +1 & +1 & +1 \\ [57]_{65} & 57 & -1 & +1 & +1 & +1 & +1 \\ [64]_{65} & -1 & +1 & +1 & +1 & +1 & +1 \\ \hline [14]_{65} & 14 & +1 & +1 & +1 & +1 & +1 \\ [51]_{65} & 51 & +1 & +1 & +1 & +1 & +1 \\ \hline [12]_{65} & 12 & 14 & +1 & +1 & +1 & +1 \\ [21]_{65} & 21 & 51 & +1 & +1 & +1 & +1 \\ \hline [2]_{65} & 2 & 4 & 16 & 61 & 16 & 61 \\ [3]_{65} & 3 & 9 & 16 & 61 & 16 & 61 \\ & & \uparrow & & & & \\ \end{array}

A különböző lehetséges forgatókönyveket a táblázatban vízszintes vonalakkal választottuk el egymástól. Az első kategóriába az összes Miller-Rabin-nemtanú került, amely ugye a G_n halmaz. Ezeknél tehát az a^k-tól induló négyzetreemelési lánc vagy csupa +1 értéket ad, vagy pedig legfeljebb e-1 lépésben elérik a -1 értéket. A táblázatban egy felfele mutató nyíllal megjelöltük azt a "kritikus szintet", amikorra már mindegyik Miller-Rabin-nemtanú "lebukott": vagy már beleesett a +1-es "csapdába", vagy pedig elérte a -1-et, és menthetetlenül bele fog esni.

A további redukált maradékosztályok már mind Miller-Rabin-tanúk, azaz a G_n halmazon kívül vannak. A táblázat második kategóriájában ezek közül azok szerepelnek – például a [14]_{65} és az [51]_{65} –, amelyek legkésőbb a "kritikus szintet" elérve már szintén bekerültek ebbe a "csapdába", ám ezt a -1 kihagyásával tették. A harmadik kategóriában lévő Miller-Rabin-tanúk – például a [12]_{65} és a [21]_{65} – ugyancsak a -1 kihagyásával estek "csapdába", ám ezt a "kritikus szint" után tették csak meg. Végül a negyedik kategóriában lévő Miller-Rabin-tanúk – például a [2]_{65} és a [3]_{65} – egyáltalán nem estek "csapdába" e-1 lépés alatt sem.

Az látszik, hogy a keresett H_n részcsoport a G_n halmaznál általában bővebb. A fenti példában szereplő [8]_{65} és [18]_{65} redukált maradékosztályok például mindketten G_n-ben vannak, ám az ő szorzatuk a [14]_{65} redukált maradékosztály, ami viszont már Miller-Rabin-tanú. Tehát a G_n halmaz nem zárt a maradékosztályok szorzására, mint műveletre nézve, és így részcsoport sem lehet.

Vegyük észre azonban, hogy a [14]_{65} redukált maradékosztály még mindig speciális abban az értelemben, hogy a "kritikus szintig" bezárólag ő is "csapdába" esett a +1-ben. A különbség mindössze annyi, hogy ő ezt nem a -1-en keresztül tette meg, hanem közvetlenül, és pusztán emiatt nem lehet ő benne G_n-ben a 23.9. Definíció értelmében. Most megmutatjuk, hogy ha a G_n halmazhoz hozzávesszük a "kritikus szintig" bezárólag bármilyen okból "csapdába" eső redukált maradékosztályokat is, akkor az így kapott halmaz már részcsoportot alkot.

Az alábbi tétel megfogalmazása bonyolultnak tűnik, ám pusztán az iménti gondolatokat önti precíz matematikai formába.

24.16. Tétel (A Miller-Rabin-nemtanúk fedőcsoportja):

Legyen n\gt 1 tetszőleges páratlan egész szám, és képezzük a 23.9. Definíció szerinti e\geq 1 kitevőt és k\geq 1 páratlan egész számot. Tekintsük azokat a j kitevőket a 0, 1, 2, ..., e-1 egész számok között, amelyekhez található olyan x egész szám, hogy teljesül az alábbi kongruencia:

x^{2^j}\equiv -1\pmod n

E kitevők között mindig létezik legnagyobb, amelyet az n-hez tartozó kritikus négyzetreemelési szintnek nevezzük, és j_{\text{max}}-szal jelöljük.

Jelöljük továbbá H_n-nel azon [a]_n modulo n maradékosztályok halmazát, amelyek esetén teljesül az alábbi kongruencia:

a^{2^{j_{\text{max}}}k}\equiv \pm 1\pmod n

Ekkor H_n részcsoport (\Z/n\Z)^{\times}-ben, azaz:

H_n\leq (\Z/n\Z)^{\times}

Ezt a részcsoportot az n-hez tartozó Miller-Rabin-nemtanúk fedőcsoportjának nevezzük.

Bizonyítás:

Először megmutatjuk, hogy a j_{\text{max}} kitevő mindig létezik. Egyrészt ugyanis legalább egy megfelelő j kitevő biztosan van, hiszen j=0 és x=-1 választással nyilván teljesül az alábbi kongruencia:

(\underbrace{-1}_{=x})^{2^{\overbrace{0}^{=j}}}\equiv -1\pmod n

Másrészt a szóba jövő kitevők a véges \{0;1;2;\ldots;e-1\} halmazból kerülnek ki, így közöttük létezik legnagyobb is.

Másodszor megmutatjuk, hogy a H_n halmaz jóldefiniált olyan értelemben, hogy egy benne lévő maradékosztályt bármelyik reprezentánselemével megadhatunk. Ha ugyanis a\equiv b\pmod n, akkor a 20.2. Tétel 6. pontja alapján teljesül az alábbi kongruencia is:

a^{2^{j_{\text{max}}}k}\equiv b^{2^{j_{\text{max}}}k}\pmod n

Így a baloldalon szereplő hatvány pontosan akkor kongruens \pm 1-gyel, ha a jobboldalon szereplő hatvány is.

Harmadszor megmutatjuk, hogy H_n minden eleme redukált maradékosztály. Legyen [a]_n a H_n halmaz egy tetszőleges eleme. Ekkor a tétel szövege szerint teljesül az alábbi kongruencia:

a^{2^{j_{\text{max}}}k}\equiv \pm 1\pmod n

Akár 1, akár -1 szerepel a jobboldalon, a kongruenciát a 20.2. Tétel 6. pontja alapján négyzetre emelve, majd a baloldalt a 24.11. Tétel 2. pontja alapján átírva a következőt kapjuk:

a^{2^{j_{\text{max}}+1}k}\equiv 1\pmod n

Találtunk tehát egy olyan pozitív kitevőt – nevezetesen 2^{j_{\text{max}}+1}k-t –, amelyre a-t emelve az eredmény 1-gyel kongruens modulo n. Ebből viszont a 20.21. Tétel alapján következik, hogy a relatív prím n-hez, azaz a 20.15. Tétel értelmében [a]_n valóban redukált maradékosztály, azaz

H_n \sube (\Z/n\Z)^{\times}

Végül megmutatjuk, hogy H_n részcsoport. Mivel (\Z/n\Z)^{\times} véges csoport, ezért a 24.14. Következmény értelmében elegendő azt megmutatni, hogy H_n nemüres, és zárt a csoportműveletre, azaz a maradékosztályok közötti szorzásra nézve.

Mivel 1^{2^{j_{\text{max}}}k}\equiv 1\pmod n, ezért a tétel szövege szerint az [1]_n \in H_n, tehát H_n valóban nemüres. Legyen most [a]_n és [b]_n a H_n halmaz két tetszőleges eleme. Ekkor a tétel szövege szerint teljesülnek az alábbi kongruenciák:

\begin{aligned} a^{2^{j_{\text{max}}}k}&\equiv \pm 1\pmod n \\ b^{2^{j_{\text{max}}}k}&\equiv \pm 1\pmod n \end{aligned}

A két kongruenciát a 20.2. Tétel 4. pontja alapján összeszorozhatjuk egymással, majd a baloldalt a 24.11. Tétel 1. pontja alapján átírhatjuk. Mivel 1 és -1 közül bármelyik kettőt összeszorozva ismét 1-et vagy -1-et kapunk, ezért:

(ab)^{2^{j_{\text{max}}}k}\equiv \pm 1\pmod n

Azt kaptuk tehát, hogy [ab]_n \in H_n. Minthogy az [ab]_n maradékosztály a 20.5. Tételben szereplő definíció szerint épp az [a]_n és [b]_n maradékosztályok szorzata, ezért H_n zárt a csoportműveletre nézve, és így valóban részcsoport (\Z/n\Z)^{\times}-ben.

Végül megmutatjuk, hogy H_n valóban minden Miller-Rabin-nemtanút tartalmaz.

24.17. Tétel:

Legyen n\gt 1 tetszőleges páratlan egész szám, H_n pedig a 24.16. Tételben bevezetett részcsoport. Jelöljük továbbá G_n-nel az n-hez tartozó Miller-Rabin-nemtanúk halmazát. Ekkor:

G_n\sube H_n

Bizonyítás:

Legyen [a]_n egy tetszőleges Miller-Rabin-nemtanú, j_{\text{max}} pedig a 24.16. Tételben bevezetett kritikus négyzetreemelési szint. Ekkor a 23.9. Definíció szerint vagy teljesül az a^k\equiv 1\pmod n kongruencia, vagy pedig létezik olyan j kitevő a \{0;1;2;\ldots;e-1\} számhalmazban, amelyre teljesül az alábbi kongruencia:

a^{2^j\cdot k}\equiv -1\pmod n

Ha az a^k\equiv 1\pmod n kongruencia teljesül, akkor ezt a 20.2. Tétel 6. pontja alapján 2^{j_{\text{max}}}-edik hatványra emelve, majd a baloldalt a 24.11. Tétel 2. pontja alapján átírva az alábbit kapjuk:

a^{2^{j_{\text{max}}}k}\equiv 1\pmod n

Ez a 24.16. Tétel szerint azt jelenti, hogy [a]_n\in H_n.

Ha a második eset áll fenn, akkor a fenti kongruencia baloldalát a 24.11. Tétel 2. pontja alapján átírva ezt kapjuk:

(a^k)^{2^j}\equiv -1\pmod n

Az x=a^k egész számra tehát teljesül az x^{2^j}\equiv -1\pmod n kongruencia, azaz j egyike azoknak a kitevőknek, amelyek közül a 24.16. Tételben definiált j_{\text{max}} a legnagyobb. Így szükségképpen j\leq j_{\text{max}}.

Amennyiben j=j_{\text{max}}, akkor a kiindulási kongruencia épp az alábbi alakú:

a^{2^{j_{\text{max}}}k}\equiv -1\pmod n

Ez a 24.16. Tétel szerint ismét azt jelenti, hogy [a]_n\in H_n.

Amennyiben j\lt j_{\text{max}}, akkor emeljük négyzetre az (a^k)^{2^j}\equiv -1\pmod n kiindulási kongruenciát a 20.2. Tétel 6. pontja alapján. Mivel a 24.11. Tétel 2. pontja szerint ((a^k)^{2^j})^2=(a^k)^{2^{j+1}}, a jobboldalon pedig (-1)^2=1 áll, ezért:

(a^k)^{2^{j+1}}\equiv 1\pmod n

Minden további négyzetreemelés 1-gyel növeli a 2 kitevőjét, a jobboldalon viszont 1^2=1 miatt továbbra is 1 marad. Mivel j+1\leq j_{\text{max}}, ezért a négyzetreemeléseket ismételve előbb-utóbb eljutunk az alábbi kongruenciák közül az utolsóig:

\begin{aligned} (a^k)^{2^{j+1}}&\equiv 1\pmod n \\ (a^k)^{2^{j+2}}&\equiv 1\pmod n \\ &\vdots \\ (a^k)^{2^{j_{\text{max}}}}&\equiv 1\pmod n \end{aligned}

Az utolsó kongruencia baloldalát a 24.11. Tétel 2. pontja alapján átírva:

a^{2^{j_{\text{max}}}k}\equiv 1\pmod n

Ez a 24.16. Tétel szerint ugyancsak azt jelenti, hogy [a]_n\in H_n. Tehát valóban minden Miller-Rabin-nemtanú a H_n halmazban van, azaz G_n\sube H_n.

A Miller-Rabin-tanúk száma

A bemenetünk továbbra is egy valamilyen n\gt 1 páratlan egész szám. Az előző szakaszban tehát megkonstruáltuk a H_n részcsoportot, amely a Miller-Rabin-nemtanúk teljes G_n halmazából áll, kiegészítve még néhány extra redukált maradékosztállyal. Azaz a következő a helyzet:

G_n\sube H_n\leq (\Z/n\Z)^{\times}

Ha n prím, akkor nyilván H_n megegyezik a teljes (\Z/n\Z)^{\times} csoporttal, hiszen ekkor a 23.10. Tétel alapján maga a G_n halmaz is kiadja az egész csoportot. Ilyenkor tehát ez a helyzet:

G_n = H_n = (\Z/n\Z)^{\times}

Már csak azt kell megmutatnunk, hogy ha viszont n összetett, akkor H_n valódi részcsoport, azaz létezik olyan redukált maradékosztály, amely nincs benne H_n-ben:

G_n\sube H_n\lt (\Z/n\Z)^{\times}

Ekkor ugyanis a Lagrange-tétel miatt H_n szükségképpen legfeljebb feleannyi elemet tartalmaz, mint (\Z/n\Z)^{\times}, amely így automatikusan "méginkább" igaz lesz a Miller-Rabin-nemtanúk G_n halmazára. A bizonyítást két esetre bontjuk attól függően, hogy n valamilyen prímhatvány-e vagy sem. Mindkét esetben konkrétan megadunk egy H_n-en kívüli redukált maradékosztályt.

A prímhatvány esethez – azaz amikor n=p^c valamilyen p\gt 1 páratlan prímszám és c\gt 1 kitevő esetén – szükségünk lesz két segédtételre. Az elsőben egy egyszerű, hatványkülönbségekkel kapcsolatos algebrai összefüggést igazolunk, majd megvizsgáljuk az 1+p szám hatványait modulo p^2.

24.18. Lemma:

Legyenek x és y tetszőleges, n pedig valamilyen pozitív egész szám. Ekkor igaz az alábbi összefüggés:

x^n-y^n=(x-y)\cdot (x^{n-1}+x^{n-2}y+\ldots +xy^{n-2}+y^{n-1})

Bizonyítás:

A jobboldalon lévő zárójeleket kell felbontanunk, és ellenőrizni, hogy az eredmény megegyezik-e a baloldallal. A 14.12. Definíció 5. pontja szerinti disztributivitási szabály értelmében minden első zárójelben lévő tagot minden második zárójelben lévő taggal meg kell szorozni, az eredményeket pedig össze kell adni. Ekkor az alábbit kapjuk a jobboldalon:

\begin{aligned} x^n + &x^{n-1}y + x^{n-2}y^2 + \ldots + x^2y^{n-2} + xy^{n-1} + \\ - &x^{n-1}y - x^{n-2}y^2 - \ldots - x^2y^{n-2} - xy^{n-1} - y^n \end{aligned}

Látható, hogy az x^n és a -y^n tagokon kívül minden egyéb tag valóban kiejti egymást.

24.19. Lemma:

Legyen p pozitív prímszám, r pedig olyan pozitív egész szám, amely nem osztható p-vel, azaz p\nmid r. Ekkor:

(1+p)^r\ \cancel{\equiv}\ 1\pmod{p^2}

Bizonyítás:

Az (1+p)^r-1 különbség egy hatványkülönbség, hiszen 1=1^r. Így a 24.18. Lemma alapján x=1+p és y=1 választással szorzattá alakítható. Mivel x-y=p, továbbá 1 bármely hatványa 1, ezért az S jelölés bevezetésével az alábbit kapjuk:

(1+p)^r-1=p\cdot \underbrace{\left((1+p)^{r-1}+(1+p)^{r-2}+\ldots +(1+p)+1\right)}_{=S}

Az S összeg pontosan r darab tagból áll. Mivel az 1+p\equiv 1\pmod p kongruencia nyilván teljesül, ezért a 20.2. Tétel 6. pontja alapján minden tag kongruens 1-gyel modulo p. A tagokat a 20.2. Tétel 4. pontja alapján összeadva tehát:

S\equiv \underbrace{1+1+\ldots +1}_{r\ \text{darab}}=r\pmod p

Mivel p\nmid r, ezért a 20.1. Tétel 3. pontja alapján r\ \cancel{\equiv}\ 0\pmod p, és ezért S-re is igaz, hogy

S\ \cancel{\equiv}\ 0\pmod p

Ez a 20.1. Tétel 3. pontja szerint azt jelenti, hogy az S összeg nem osztható p-vel. Tegyük fel most indirekt, hogy

(1+p)^r\equiv 1\pmod{p^2}

Ez a 20.1. Tétel 3. pontja alapján az alábbi oszthatóságot jelenti:

p^2|\underbrace{(1+p)^r-1}_{=pS}

Ebből viszont a 17.8. Tétel szerint p-vel egyszerűsítve p|S következne, ami ellentmondás.

Ez a segédtétel egyébként majd a 26.7. szakaszban, a Carmichael-számok vizsgálatakor is hasznos lesz még számunkra.

Most már minden készen áll annak bizonyításához, hogy prímhatvány esetben a 24.16. Tételben definiált H_n egy valódi részcsoport.

24.20. Tétel:

Legyen n\gt 1 tetszőleges páratlan összetett egész szám, amely prímhatvány, H_n pedig a 24.16. Tételben definiált részcsoport. Ekkor H_n valódi részcsoport (\Z/n\Z)^{\times}-ben, azaz

H_n\lt (\Z/n\Z)^{\times}

Bizonyítás:

Azt már tudjuk a 24.16. Tétel alapján, hogy H_n részcsoport (\Z/n\Z)^{\times}-ben. Azt kell tehát megmutatnunk, hogy létezik olyan redukált maradékosztály, amely nem eleme H_n-nek. Mivel n páratlan prímhatvány, ezért n=p^c, ahol p valamilyen pozitív páratlan prímszám, továbbá c\geq 2, máskülönben n nem lenne összetett. Megmutatjuk, hogy az [1+p]_n egy redukált maradékosztály, és nem eleme H_n-nek.

Könnyen adódik, hogy p\nmid 1+p. Tegyük fel ugyanis indirekt, hogy nem ez a helyzet, azaz p|1+p. A p|p oszthatóság nyilván teljesül, ezért a 16.2. Tétel 6. pontja alapján teljesül az alábbi is:

p|\underbrace{1+p-p}_{=1}

Ez azonban lehetetlen, hiszen p nem lehet egység, mivel prím. Így viszont a 21.4. Lemma alapján 1+p relatív prím p^c-hez, azaz [1+p]_n valóban redukált maradékosztály.

Most tegyük fel indirekt, hogy [1+p]_n\in H_n. Ez a 24.16. Tétel alapján azt jelenti, hogy az alábbiak közül teljesül legalább az egyik:

\begin{aligned} (1+p)^{2^{j_{\text{max}}}k} &\equiv +1 \pmod{p^c} \\ (1+p)^{2^{j_{\text{max}}}k} &\equiv -1 \pmod{p^c} \end{aligned}

Tegyük fel, hogy az első kongruencia teljesül. Ekkor c\geq 2 miatt p^2|p^c, tehát alkalmazható a 20.2. Tétel 7. pontja, azaz:

(1+p)^{2^{j_{\text{max}}}k} \equiv +1 \pmod{p^2}

Ebből a 24.19. Lemma alapján az alábbi oszthatóság következik:

p|2^{j_{\text{max}}}k

Mivel p prím és p\nmid 2^{j_{\text{max}}} – hiszen p páratlan –, ezért a 16.13. Definíció miatt egyrészt p|k. Másrészt k|n-1, hiszen a 23.9. Definíció miatt n-1=2^ek. Így a 16.2. Tétel 5. pontja alapján:

p|n-1

Továbbá, mivel n=p^c, ezért nyilván p|n, és így a 16.2. Tétel 6. pontja alapján teljesül az alábbi is:

p|\underbrace{n-(n-1)}_{=1}

Ez azonban ellentmondás, hiszen p nem lehet egység, mivel prím.

Az eredeti indirekt feltételezésünk – miszerint [1+p]_n\in H_n – ezek után a 24.16. Tétel értelmében csak úgy teljesülhet, hogy:

(1+p)^{2^{j_{\text{max}}}k} \equiv -1 \pmod{p^c}

Most próbáljunk meg ellentmondásra jutni ezen az ágon is. Mivel p|p^c, ezért a 20.2. Tétel 7. pontja szerint ez a kongruencia modulo p is teljesül, azaz egyrészt:

(1+p)^{2^{j_{\text{max}}}k} \equiv -1 \pmod p

Másrészt az alábbi kongruencia nyilván teljesül:

1+p\equiv 1\pmod p

A 20.2. Tétel 6. pontja szerint mindkét oldalt a 2^{j_{\text{max}}}k-adik hatványra emelve pedig az alábbit:

(1+p)^{2^{j_{\text{max}}}k} \equiv 1 \pmod p

Azt kaptuk, hogy az (1+p)^{2^{j_{\text{max}}}k} hatványkifejezés +1-gyel és -1-gyel is kongruens modulo p, azaz a 20.2. Tétel 3. pontja miatt:

1\equiv -1\pmod p

Ez viszont a 20.1. Tétel 3. pontja miatt azt jelenti, hogy teljesül a p|2 oszthatóság, amiből a 17.2. Lemma miatt p\leq 2 következik. Ez ellentmondás, hiszen p páratlan, és így 2-nél biztosan nagyobb.

Mivel mindkét ágon ellentmondásba kerültünk, ezért [1+p]_n \notin H_n, és így H_n tényleg valódi részcsoport (\Z/n\Z)^{\times}-ben.

A nem prímhatvány esethez alapvetően a 22.7. Tétel szerinti gyűrűizomorfizmus segítségével szeretnénk megkonstruálni egy olyan redukált maradékosztályt, amely nincs benne H_n-ben. Ehhez azonban szükségünk van az alábbi egyszerű állításra, amely ennek a konstrukciónak a kulcsa lesz.

24.21. Lemma:

Legyenek u\gt 2 és v\gt 2 pozitív egész számok, x pedig olyan egész szám, amelyre teljesülnek az alábbi kongruenciák:

\begin{aligned} x&\equiv -1\pmod u \\ x&\equiv 1\pmod v \end{aligned}

Ekkor:

x\ \cancel{\equiv}\ \pm1\pmod{uv}

Bizonyítás:

Tegyük fel először indirekt, hogy

x\equiv 1\pmod{uv}

Mivel u nyilván osztója uv-nek, ezért a 20.2. Tétel 7. pontja alapján ekkor az alábbi kongruencia is teljesül:

x\equiv 1\pmod u

A tétel szövegéből azonban tudjuk, hogy

x\equiv -1\pmod u

A két kongruenciát a 20.2. Tétel 2. és 3. pontja alapján összevetve az alábbit kapjuk:

1\equiv -1\pmod u

Ez a 20.1. Tétel 3. pontja alapján az alábbi oszthatóságot jelenti:

u\ |\ \underbrace{1-(-1)}_{=2}

Ebből viszont a 17.2. Lemma alapján u\leq 2 következne, ami a tétel szövegében szereplő u\gt 2 kikötés miatt ellentmondás, és így

x\ \cancel{\equiv}\ 1\pmod{uv}

Ugyanezt az indirekt gondolatmenetet követve megmutatható az is, hogy

x\ \cancel{\equiv}\ -1\pmod{uv}

Most mutatunk egy olyan redukált maradékosztályt, amely nincs benne H_n-ben, és amely ráadásul Fermat-nemtanú. Ez utóbbinak a 26. fejezetben szintén nagy hasznát fogjuk venni, amikor kicsit mélyebb csoportelméleti eszközök segítségével a Miller-Rabin-tanúk számára vonatkozó mostani becslésünket fogjuk tovább javítani.

24.22. Tétel:

Legyen n\gt 1 tetszőleges páratlan egész szám, amely nem prímhatvány, tehát legalább két egymástól különböző prímtényezője van. Legyen p\gt 0 ezek közül valamelyik prímtényező, és képezzük azt a c\geq 1 kitevőt és m\geq 1 egész számot, amelyek esetén teljesülnek az alábbiak:

\begin{aligned} n&=p^cm \\ p&\nmid m \end{aligned}

A 24.16. Tétel szerinti j_{\text{max}} kritikus négyzetreemelési szinthez válasszunk egy – az említett tétel szerint létező – s egész számot, amelyre teljesül az alábbi kongruencia:

s^{2^{j_{\text{max}}}}\equiv -1\pmod n

Ekkor igazak az alábbiak:

1.
Létezik olyan a egész szám, amelyre teljesülnek az alábbi kongruenciák:
\begin{aligned} a&\equiv s\pmod{p^c} \\ a&\equiv 1\pmod m \end{aligned}
2.
Az [a]_n maradékosztályra teljesülnek az alábbi kongruenciák, ahol k\geq 1 a 23.9. Definíció szerinti páratlan egész szám:
\begin{aligned} a^{2^{j_{\text{max}}}k}&\equiv -1\pmod{p^c} \\ a^{2^{j_{\text{max}}}k}&\equiv 1\pmod m \end{aligned}
3.
Az [a]_n maradékosztály redukált, azaz
[a]_n\in (\Z/n\Z)^{\times}
4.
Az [a] maradékosztály nincs benne a 24.16. Tételben definiált H_n fedőcsoportban, azaz
[a]_n\notin H_n
5.
Az [a]_n maradékosztály Fermat-nemtanú, azaz teljesül az alábbi kongruencia:
a^{n-1}\equiv 1\pmod n

Bizonyítás:

Az 1. állítás: Mivel p\nmid m, ezért a 21.4. Lemma alapján p^c és m relatív prímek. Ebben az esetben érvényes a kínai maradéktétel, amelynek következményeként a 22.7. Tétel szerinti alábbi g leképezés egy gyűrűizomorfizmus:

\begin{aligned} g:\Z/n\Z &\to \Z/p^c\Z \times \Z/m\Z \\ [x]_n &\mapsto ([x]_{p^c};[x]_m) \end{aligned}

Mivel g kölcsönösen egyértelmű, ezért létezik olyan X maradékosztály a \Z/n\Z gyűrűben, amelyhez g épp az ([s]_{p^c};[1]_m) maradékosztálypárt rendeli. Legyen a ennek az X maradékosztálynak egy tetszőleges reprezentánseleme, azaz X=[a]_n. Ekkor g definíciója miatt:

([a]_{p^c};[a]_m)=([s]_{p^c};[1]_m)

Ez a 20.1. Tétel 3. pontja szerint épp az alábbi kongruenciákat jelenti:

\begin{aligned} a&\equiv s\pmod{p^c} \\ a&\equiv 1\pmod m \end{aligned}

Ilyen a egész szám tehát valóban létezik.

A 2. állítás: Mivel n=p^cm, ezért p^c osztója n-nek, és így a 20.2. Tétel 7. pontja alapján az s^{2^{j_{\text{max}}}}\equiv -1\pmod n kongruencia modulo p^c is teljesül, azaz:

s^{2^{j_{\text{max}}}}\equiv -1\pmod{p^c}

Ezt a kongruenciát a 20.2. Tétel 6. pontja alapján k-adik hatványra emelve, majd a baloldalt a 24.11. Tétel 2. pontja alapján átírva az alábbit kapjuk:

s^{2^{j_{\text{max}}}k}\equiv \underbrace{(-1)^k}_{=-1}\pmod{p^c}

A jobboldal itt azért marad -1, mert a tétel szövege szerint k ugye páratlan.

Most az a\equiv s\pmod{p^c} és a\equiv 1\pmod m kongruenciákat a 20.2. Tétel 6. pontja alapján 2^{j_{\text{max}}}k-adik hatványra emelve, majd az első esetben az imént kapott s^{2^{j_{\text{max}}}k}\equiv -1\pmod{p^c} kongruenciát is felhasználva a 20.2. Tétel 3. pontja alapján megkapjuk a bizonyítandó állítást:

\begin{aligned} a^{2^{j_{\text{max}}}k}&\equiv -1\pmod{p^c} \\ a^{2^{j_{\text{max}}}k}&\equiv 1\pmod m \end{aligned}

A 3. állítás: Emeljük négyzetre a 2. állításban szereplő két kongruenciát a 20.2. Tétel 6. pontja alapján. Mindkét esetben 1 adódik a jobboldalon:

\begin{aligned} a^{2^{j_{\text{max}}+1}k}&\equiv 1\pmod{p^c} \\ a^{2^{j_{\text{max}}+1}k}&\equiv 1\pmod m \end{aligned}

Vegyük észre, hogy ezek szerint a g gyűrűizomorfizmus az [a^{2^{j_{\text{max}}+1}k}]_n és az [1]_n maradékosztályokhoz ugyanazt a maradékosztálypárt rendeli, mivel:

\begin{aligned} g([a^{2^{j_{\text{max}}+1}k}]_n)&=([a^{2^{j_{\text{max}}+1}k}]_{p^c};[a^{2^{j_{\text{max}}+1}k}]_m)= \\ &=([1]_{p^c};[1]_m)= \\ &=g([1]_n) \end{aligned}

De g kölcsönösen egyértelmű, ezért ez csak úgy lehetséges, ha [a^{2^{j_{\text{max}}+1}k}]_n=[1]_n, azaz:

a^{2^{j_{\text{max}}+1}k}\equiv 1\pmod n

Találtunk tehát egy olyan pozitív kitevőt, amelyre a-t emelve az eredmény 1-gyel kongruens modulo n. Ebből a 20.21. Tétel alapján következik, hogy a relatív prím n-hez, azaz a 20.15. Tétel értelmében [a]_n valóban redukált maradékosztály.

A 4. állítás: Mivel n páratlan és n=p^cm, ezért p^c\gt 2 és m\gt 2. Így viszont a 2. állításra alkalmazhatjuk a 24.21. Lemmát u=p^c, v=m és x=a^{2^{j_{\text{max}}}k} választással. Eszerint:

a^{2^{j_{\text{max}}}k}\ \cancel{\equiv}\ \pm1 \pmod{\underbrace{n}_{=p^cm}}

Ez a 24.16. Tétel szerint épp azt jelenti, hogy [a]_n \notin H_n.

Az 5. állítás: a 3. állítás bizonyításában már láttuk, hogy:

a^{2^{j_{\text{max}}+1}k}\equiv 1\pmod n

Mivel a 24.16. Tétel szerint j_{\text{max}}\leq e-1, ezért j_{\text{max}}+1\leq e. Ezt a kongruenciát a 20.2. Tétel 6. pontja alapján akárhányszor négyzetre emelhetjük. Valahány – speciálisan j_{\text{max}}+1=e esetén 0 darab – ilyen négyzetreemelés után eljutunk az alábbi kongruenciák közül az utolsóig:

\begin{aligned} a^{2^{j_{\text{max}}+1}k}&\equiv 1\pmod n \\ a^{2^{j_{\text{max}}+2}k}&\equiv 1\pmod n \\ &\vdots \\ a^{2^ek}&\equiv 1\pmod n \end{aligned}

Mivel a 23.9. Definíció szerint 2^ek=n-1, ezért az utolsó kongruencia épp az alábbi lesz:

a^{n-1}\equiv 1\pmod n

Ez viszont a 23.3. Definíció szerint azt jelenti, hogy [a]_n valóban Fermat-nemtanú.

Összefoglalva tehát: ha n egy páratlan összetett szám, akkor a Miller-Rabin-nemtanúk a 24.17. Tétel alapján mindannyian benne vannak a 24.16. Tétel szerinti H_n részcsoportban. Ez prímhatvány esetben a 24.20. Tétel miatt, egyéb esetekben pedig a 24.22. Tétel 3. és 4. pontja miatt ráadásul egy valódi részcsoport (\Z/n\Z)^{\times}-ben. Ennek következményeként a Lagrange-tétel segítségével most már könnyedén tudunk alsó becslést adni a Miller-Rabin-tanúk számára vonatkozóan.

24.23. Tétel:

Legyen n\gt 1 egy tetszőleges páratlan egész szám. Ha n összetett, akkor a modulo n redukált maradékosztályoknak legalább a fele Miller-Rabin-tanú.

Bizonyítás:

Először is a 23.9. Definíció értelmében (\Z/n\Z)^{\times} minden eleme vagy Miller-Rabin-tanú, vagy Miller-Rabin-nemtanú. Elegendő tehát azt megmutatnunk, hogy (\Z/n\Z)^{\times} elemeinek legfeljebb a fele Miller-Rabin-nemtanú.

A 24.17. Tételnek megfelelően jelölje G_n az n Miller-Rabin-nemtanúinak halmazát, H_n pedig a 24.16. Tételben bevezetett részcsoportot (\Z/n\Z)^{\times}-ben. Ekkor a 24.17. Tétel szerint G_n\sube H_n. A H_n részcsoport prímhatvány esetben a 24.20. Tétel miatt, egyéb esetekben pedig a 24.22. Tétel 3. és 4. pontja miatt egy valódi részcsoport. Azaz:

G_n\sube H_n\lt (\Z/n\Z)^{\times}

Ezt a szituációt mutatja a 24.3. ábra.

A Hn részcsoport elhelyezkedése
24.3. ábra: A H_n részcsoport elhelyezkedése

A Lagrange-tétel szerint H_n rendje osztója a (\Z/n\Z)^{\times} csoport rendjének, azaz teljesül az alábbi összefüggés, ahol r a H_n részcsoport indexe (\Z/n\Z)^{\times}-ben:

r\cdot |H_n| = |(\Z/n\Z)^{\times}|

Mivel H_n valódi részcsoport, ezért |H_n|\lt |(\Z/n\Z)^{\times}|, így r\geq 2. Igaz tehát az alábbi egyenlőtlenség:

2\cdot |H_n|\leq |(\Z/n\Z)^{\times}|

Továbbá a 24.17. Tétel miatt G_n\sube H_n, ezért |G_n|\leq |H_n|, és így:

2\cdot |G_n|\leq 2\cdot |H_n|

A két egyenlőtlenséget összevetve megkapjuk a tétel állítását:

2\cdot |G_n|\leq |(\Z/n\Z)^{\times}

Azaz a redukált maradékosztályoknak legfeljebb a fele lehet Miller-Rabin-nemtanú. Másként fogalmazva legalább a felük Miller-Rabin-tanú kell legyen.

Hasonlítsuk össze ezt az állítást a Fermat-tanúk számára vonatkozó a 23.6. Tétel állításával. Ott mindössze annyit állítottunk, hogy ha n-hez létezik Fermat-tanú, akkor a redukált maradékosztályoknak legalább a fele az. Ez tehát nem minden összetett n-re érvényes, hanem csak azokra, amelyekhez egyáltalán létezik Fermat-tanú. A Carmichael-számok épp azok az összetett számok, amelyekhez egyáltalán nem létezik Fermat-tanú.

Ezzel szemben az imént bizonyított állítás minden páratlan összetett n-re érvényes. Így a 23.5. szakaszban ismertetett Miller-Rabin prímteszt elől valóban nem bújhatnak el még a Carmichael-számok sem.

Ebben a fejezetben tehát megismerkedtünk az absztrakt algebra egy igen hatékony eszköztárának, az úgynevezett csoportelméletnek az alapjaival. Bevezettük a csoport és a részcsoport fogalmát, továbbá definiáltuk, hogy mit értünk egy csoport rendje illetve egy csoportelem rendje alatt. Ezután a mellékosztály fogalmának segítségével igazoltuk a Lagrange-tételt, amely egy fontos oszthatósági kapcsolatot mond ki egy csoport és a részcsoportok rendjei között. Végül ezt felhasználva megmutattuk, hogy bármilyen páratlan összetett szám esetén a redukált maradékosztályoknak legalább a fele Miller-Rabin-tanú. Azaz bizonyosságot nyert, hogy a Miller-Rabin prímtesztre nézve nem léteznek univerzális álprímek.

A következő fejezetben néhány kicsit mélyebb csoportelméleti fogalommal és összefüggéssel ismerkedünk meg. Ezek felhasználásával azután a 26. fejezetben azt fogjuk igazolni, hogy valójában még jobb a helyzet, és a redukált maradékosztályoknak nemhogy a fele, de legalább a háromnegyede Miller-Rabin-tanú.