A racionális szita egy általános algoritmus egész számok prímtényezőkké alakítására . Az algoritmus az általános számmező szita módszer speciális esete . Bár kevésbé hatékony , mint az általános algoritmus, fogalmilag egyszerűbb. Az algoritmus segíthet megérteni, hogyan működik az általános számmező szita módszer.
Tegyük fel, hogy egy n összetett számot próbálunk tizedesre sorolni . Meghatározzuk B határát és a tényezők bázisát (amit P -vel fogunk jelölni), a B -nél kisebb vagy azzal egyenlő prímek halmazát . Ezután keresünk egy z pozitív egész számot , amelyre mind z , mind z+n B -sima , azaz minden prímosztóját P tartalmazza . Ezért írhatunk megfelelő képességekre
,
és megfelelőnek is van nálunk
.
De az és modulo összehasonlíthatóak , így minden olyan z egész szám , amelyet találunk, egy modulo szorzókapcsolatot (mod n ) ad P minden eleme között , azaz.
(ahol a i és b i nemnegatív egész számok.)
Ha ezekből az arányokból elegendő mennyiséget generáltunk (általában annyit, hogy az ilyen arányok száma valamivel nagyobb, mint P ), lineáris algebrai módszerekkel megszorozhatjuk ezeket a különböző arányokat úgy, hogy az összes prímtényező hatványa megforduljon. egyenletesnek kell lennie. Ez megadja az a 2 ≡ b 2 (mod n ) alakú modulo négyzetek összehasonlíthatóságát , amely átváltható az n szám faktorizálására , n = gcd ( a - b , n ) × gcd ( a + b , n ). Egy ilyen bontás lehet triviális (azaz n = n × 1), ebben az esetben meg kell próbálni újra egy másik aránykombinációval. Ha szerencsénk van, kapunk n nem triviális osztópárt, és az algoritmus leáll.
Tényezőzzük az n = 187 számot racionális szita segítségével. Próbáljuk meg a B =7 számot , amelyhez a P = {2,3,5,7} halmaz szolgál a tényezők alapjául. Első lépésként ellenőrizzük, hogy az n szám osztható-e a P halmazból származó számokkal . Nyilvánvaló, hogy abban az esetben, ha n osztható ezen prímszámok egyikével, találtunk megoldást. A 187 azonban nem osztható 2-vel, 3-mal, 5-tel vagy 7-tel. A következő lépésben keressük a megfelelő z értékeket , 2, 5, 9 és 56 a megfelelő számok. A négy z -érték megadja a modulo arányokat 187:
Most különféle módokon kombináljuk ezeket az arányokat, és egyenletes erőket kapunk. Például,
Alternatív megoldásként a (3) egyenlet már rendelkezik a kívánt formában:
A racionális szita, akárcsak egy számmező általános szitája, nem tudja elérni a p m alakú számok dekompozícióját , ahol p prímszám, m pedig egész szám. A probléma nem túl nagy – statisztikailag ritkák az ilyen számok, ráadásul van egy egyszerű és gyors folyamat annak ellenőrzésére, hogy egy adott számnak van-e ilyen formája. Úgy tűnik, a legelegánsabb módszer annak ellenőrzése, hogy 1 < b < log(n)-e , a Newton-féle gyökérmetódus egész számú változatával [2]
A legnagyobb probléma a z számok megtalálása úgy, hogy z és z + n is B -sima . Bármely adott B esetén a B -sima számok aránya gyorsan csökken a szám méretével. Tehát ha n nagy (mondjuk száz számjegy), akkor nehéz vagy szinte lehetetlen lesz elegendő z -t találni ahhoz , hogy az algoritmus működjön. Az általános számmező szita algoritmus előnye, hogy valamilyen d pozitív egészhez (általában 3 vagy 5) kell n 1/ d rendű sima számokat találni , ahelyett , hogy az algoritmus n sorrendű lenne .
Számelméleti algoritmusok | |
---|---|
Egyszerűség tesztek | |
Prímszámok keresése | |
Faktorizáció | |
Diszkrét logaritmus | |
GCD keresése | |
Modulo aritmetika | |
Számok szorzása és osztása | |
A négyzetgyök kiszámítása |