Metoda Williams este o metodă de factorizare a numerelor folosind secvențe de numere Lucas , dezvoltată de Hugh Williams în 1982. Algoritmul găsește un divizor prim al numărului . Similar cu metoda lui Pollard , dar folosește factorizarea unui număr . Are indicatori buni de performanță doar în cazul în care este ușor de factorizat. De regulă, acesta nu este adesea implementat în practică din cauza procentului scăzut de astfel de cazuri [1] .
Pentru calcule suplimentare, trebuie să introducem secvențe de numere Lucas și să enumerăm câteva dintre proprietățile lor.
Fie și să fie niște numere întregi fixe. Secvențele de numere Lucas sunt definite ca [1] :
Lasa si
Secvențele au următoarele proprietăți:
Pentru a demonstra aceste proprietăți, luați în considerare formulele explicite pentru șirul numerelor Lucas :
și
unde și sunt rădăcinile polinomului caracteristic
Folosind formule explicite și teorema lui Viette :
primim expresii și
În continuare, evidențiem încă o proprietate:
Dacă GCD și apoi: și de unde
Și, în final, formulăm teorema:
Dacă p este un număr prim impar și simbolul Legendre este , atunci:Demonstrarea acestei teoreme este laborioasă și poate fi găsită în cartea lui D. G. Lemer [2] .
Fie un divizor prim al unui număr factorizabil , iar expansiunea se realizează:
unde sunt numere prime.
Lăsa
Să introducem un număr în care gradele sunt alese în așa fel încât
Apoi [1]
În plus, conform teoremei, dacă gcd atunci
Și, prin urmare, GCD , adică divizorul numărului dorit [1] se găsește .
Este de remarcat faptul că numerele nu sunt cunoscute în stadiul inițial al problemei. Prin urmare, pentru a simplifica sarcina, vom face următoarele: de atunci prin proprietatea (2) În continuare, folosim proprietatea (6) și obținem:
Astfel, fără pierderi de generalitate, putem afirma că [1]
În continuare, folosim teorema din care concluzionăm că
Și prin urmare [1]
Acum alegeți un număr astfel încât gcd
Noi desemnam:
În cele din urmă, trebuie să găsiți GCD [1]
Pentru a căuta , procedați după cum urmează [1] :
1) se descompune în formă binară: unde .
2) introducem o succesiune de numere naturale . În același timp ;
3) căutăm perechi de valori conform următoarei reguli:
în care4) valorile sunt căutate conform regulilor (care decurg din proprietățile și definiția succesiunii de numere Lucas ):
.Pentru valorile implicite, adică, obținem rezultatul:
374468Să verificăm această valoare. Pentru a face acest lucru, luăm în considerare GCD GCD și .
Dacă am ales fără succes numere în primul pas , adică s-a dovedit că GCD , atunci trebuie să trecem la al doilea pas. În caz contrar, lucrarea este finalizată [1] .
Fie ca numărul să aibă un divizor prim mai mare decât unii, dar mai mic decât unii , adică:
, UndeIntroduceți o succesiune de numere prime .
Introducem o altă secvență:
În continuare, definim:
.Folosind proprietatea , obținem primele elemente:
.Apoi, folosim proprietatea și obținem:
.Astfel calculăm
În continuare, luăm în considerare:
GCD pentruImediat ce ajungem la , oprim calculele [1] .
Pentru valorile implicite, adică, obținem rezultatul:
139,care este răspunsul corect.
Autorul acestei metode a efectuat teste și metode pe mașina AMDAHL 470-V7 pe 497 de numere diferite, ceea ce a arătat că, în medie, primul pas al algoritmului este de aproximativ 2 ori mai lent decât primul pas al algoritmului , iar al doilea pasul este de aproximativ 4 ori mai lent [1] .
Datorită faptului că metoda de factorizare este mai rapidă, metoda - este rar folosită în practică [1] .
În prezent (14 decembrie 2013), cei mai mari trei divizori primi [3] găsiți prin metodă constau din 60, 55 și 53 de cifre zecimale.
Numărul de cifre | p | Divizor de număr | Găsit (de cine) | Găsit (când) | B | B2 |
---|---|---|---|---|---|---|
60 | 725516237739635905037132916171116034279215026146021770250523 | A. Kruppa
P. Montgomery |
31.10.2007 | |||
55 | 1273305908528677655311178780176836847652381142062038547 | P. Leyland | 16.05.2011 | |||
53 | 60120920503954047277077441080303862302926649855338567 | P. Leyland | 26.02.2011 |
Iată al 2366-lea membru al secvenței de numere Lucas.