Loading AI tools
De Wikipédia, l'encyclopédie libre
En arithmétique modulaire, la méthode de factorisation de Dixon (aussi connue comme l'algorithme de Dixon) est un algorithme de décomposition en produit de facteurs premiers à but général. Le crible quadratique est une modification de l'idée de base utilisée dans la méthode de Dixon. L'algorithme a été proposé par John D. Dixon, un mathématicien de l'université Carleton, et publié en 1981[1].
La méthode de Dixon est fondée sur la recherche d'une congruence de carrés. La méthode naïve de recherche d'une telle congruence consiste à choisir aléatoirement de valeurs et espérer qu'elles satisfont à la congruence :
où est l'entier naturel à factoriser. En pratique, choisir aléatoirement les valeurs de x prend un long temps et s'avère impraticable pour trouver une congruence de carrés. La méthode de Dixon consiste à chercher plusieurs valeurs qui satisfont à une condition plus faible, puis à combiner les valeurs trouvées pour obtenir une congruence de carrés.
Soit N le nombre à factoriser. On choisit un entier B (borne) et on calcule l'ensemble P = {p1,..., pn} des nombres premiers inférieurs ou égaux à B, ce qui forme la base de facteurs (en). On cherche ensuite des entiers z tels que z2 mod N soit B-friable, c'est-à-dire que ses facteurs premiers sont tous dans P. On peut dans ce cas trouver des exposants ai tels que
Lorsque l'on a trouvé assez de relations de ce genre – en général on cherche à en avoir n + 1 – ce qui donne des entiers zj et des exposants aij, on cherche des coefficients cj égaux à 0 ou 1 tels que
Il s'agit de trouver une relation de dépendance linéaire entre les colonnes de la matrice à coefficients dans le corps F2 à deux éléments : l'algorithme du pivot de Gauss permet de le faire. On a alors :
où tous les exposants du membre de droite sont pairs.
Cela donne une congruence de carrés a2 = b2 mod N, où et et T est l'ensemble des j tels que cj = 1. Cette congruence conduit à une factorisation de N, à savoir N = pgcd(a + b, N) × (N/pgcd(a + b, N)). Cette factorisation peut s'avérer triviale (i.e. N = N × 1), ce qui se produit exactement lorsque a = ±b mod N, auquel cas on peut réessayer avec une autre combinaison de relations. Si on trouve des facteurs non triviaux de N, l'algorithme s'arrête.
Le crible quadratique est une optimisation de la méthode de Dixon. Il résout une congruence quadratique pour trouver des valeurs de x plus rapidement qu'une simple sélection aléatoire.
D'autres manières pour optimiser la méthode de Dixon incluent l'usage d'un meilleur algorithme pour résoudre l'équation matricielle. En pratique, l'algorithme de Lanczos est souvent utilisé. Aussi, la taille de la base de facteurs doit être choisie avec précaution. Si elle est trop petite, il sera difficile de trouver les nombres qui se factoriseront complètement sur elle. Si elle est trop grande, trop de relations devront être collectées.
Seamless Wikipedia browsing. On steroids.
Every time you click a link to Wikipedia, Wiktionary or Wikiquote in your browser's search results, it will show the modern Wikiwand interface.
Wikiwand extension is a five stars, simple, with minimum permission required to keep your browsing private, safe and transparent.