Calculis

Test de primalité et factorisation de grand nombre

Rechercher un outil (en entrant un mot clé):

décomposition des nombres < 12 chiffres - décomposition des nombres > 12 chiffres

Tester si un grand nombre est premier et le factoriser s'il n'est pas premier

Le test de primalité (savoir si un nombre est un nombre premier) de cette page est adapté aux nombres composés de plusieurs dizaines de chiffres. La décomposition en produit de facteurs premiers peut être très longue, voire parfois impossible, même pour nos ordinateurs modernes, et encore davantage pour un outil de calcul en ligne d'un site web. Nous avons limité l'entrée aux nombres composés au maximum de 200 chiffres pour le test et de 22 chiffres pour la factorisation en produit de facteurs premiers.

Vous pouvez obtenir par exemple les décompositions :

- de M(59), égal à 576460752303423487, qui est un nombre de Mersenne composé de 18 chiffres

- de M(67), un nombre de Mersenne composé de 21 chiffres (voir plus bas). Il faut alors plusieurs secondes, nous sommes à la limite du temps alloué par notre petit serveur.





Exemple : 147573952589676412927 est-il premier ?

L'algorithme de factorisation (Brent Pollard) utilisé par cet outil permet de décomposer ce nombre 147573952589676412927 en facteurs premiers en quelques secondes. Le test de sa primalité est effectué par le test de Miller Rabin. Ce nombre de 21 chiffres est un nombre de Mersenne (M67) et il n'est pas premier. Cela fut démontré en 1903 par le mathématicien Frank Nelson Cole, qui passa plus de 3 ans, tous ses dimanches, à le "casser". Lors d'une réunion de mathématiciens américains, on dit qu'il écrivit simplement sur un tableau sa décomposition :

267 − 1 = 147573952589676412927 = 193707721 × 761838257287,

ce qui eut pour effet de bluffer toute l'assistance.

 

618970019642690137449562111 est-il premier ? Cette fois, nous pouvons seulement tester si ce nombre est premier, il est composé de 27 chiffres et il est premier. L'algorithme du test de primalité est celui de Miller Rabin qui permet de tester sans effectuer la décomposition des nombres de plusieurs centaines de chiffres. 618970019642690137449562111 est lui aussi un nombre de Mersenne (M89).

Limite en ligne de la factorisation en nombres premiers :

21 chiffres semble être la limite afin d'obtenir la factorisation en ligne, par exemple :

215525392304898663817(21) = 697499261(9) × 308997305597(12) en 5 secondes

325812389847171218723(21) = 985717937(9) × 330533084179(12) en 8 secondes

911257405449760897039(21) = 5649231271(10) × 161306443609(12) en 8 secondes

Quelques nombres "cassés" avec ce script sur un serveur (core duo 2ghz) hors ligne :

262158157939114458143411(24) = 534377194849(12) × 490586350739(12)

647566049626292397956681(24) = 80262788779(11) × 8068073131739(13)

2440496884869731873565719(25) = 761838257287(12) × 3203431780337(13)

21917518892308073668859263(26) = 288142510391(12) × 76064857151993(14)

5429025772880707392557242027(27) = 8284874025851(13) × 655293702226577(15)

4402839946368730042729805927(28) = 9096582498011(13) × 484010335456357(15)

47537782609103580051013918973(29) = 9166735005257(13) × 5185901259482389(16)

157127558679069541525864491061(30) = 28552680542909(14) × 5503075567386329(16)

649825047254615206673880715789(30) = 85452603461273(14) × 7604508475263893(16)

1571275586790695415258644910617(31) = 4261 × 223224703987(12) × 1651956369903431(16)

32729618763243458927731615853893(32) = 530667019817041(15) × 61676376222753973(17)

2168−1 = 374144419156711147060143317175368453031918731001855(51)

= 15×29×43×113×127×147×221×241×337×1429×3361×5419×14449×15790321×88959882481 = 32× 5 × 72 × 13 × 17 × 29 × 43 × 113 × 127 × 241 × 337 × 1429 × 3361 × 5419 × 14449 × 15790321 × 88959882481

2169−1 = 748288838313422294120286634350736906063837462003711(51)

= 4057×8191×6740339310641×3340762283952395329506327023033

Les 2 derniers exemples illustrent bien la difficulté de factoriser des grands nombres. Le temps ne dépend pas du nombre de chiffres du nombre à factoriser mais du nombre de chiffres de ses facteurs premiers.

Remarque : l'algorithme de factorisation (Brent Pollard) de cette page est adapté aux nombres "quasi premiers" c'est-à-dire composés de 2 facteurs premiers qui sont aussi des grands nombres. Il peut dans certains cas (comme pour 2168−1) ne pas donner la décomposition exacte en facteurs premiers et laisser des petits facteurs non décomposés.

Après une amélioration du programme toujours hors ligne :

F400=176023680645013966468226945392411250770384383304492191886725992896575345044216019675(84) = 3 × 52 × 7 × 11 × 41 × 47 × 101 × 151 × 401 × 1601 × 2161 × 3001 × 3041 × 124001 × 570601 × 6996001 × 9125201 × 5738108801 × 3160438834174817356001

Les commentaires :

Merci, pour cette page, cela fonctionne très bien ! Pas toujours pour le nombre 147573952589676412927 dés fois la page n'abouti pas ! Sans doute pour un temps trop long !

Pierre, le 26/06/12.

Bonjour, j'ai testé les outils de factorisation d'un nombre disponible sur le net (les premiers proposés) avec 147573952589676412927. Il y en a beaucoup qui ne peuvent même pas factoriser ce nombre qui trop grand, un autre ou il fallait installer un plugin (j'ai abandonné après l'avoir par deux fois installé, ça ne fonctionnait pas), reste votre page qui réussit à sa décomposition en facteur premier !

JP, le 23/06/13.

Réponse : Merci beaucoup pour vos encouragements, mais je pense pas que ce soit la seule page.

Bonjour, je m'amuse à calculer les nombres premiers sur pc. Mais je suis surpris, que les logiciels de calcul formel, ne sois pas aussi performent que les pc actuel. C'est à dire, que Mathématica est le seul à calculer rapidement. Je n'arrive pas à trouver un gratuit aussi performant que ce logiciel. Exemple : avec mathématica 9, 2^44497-1 en moins de deux minutes !! Trouver en 1979 sur Cray !! Avec Maple, j'ai perdu patience et avec Xcas idem. Je me pose alors la question, la NASA utilise quoi comme logiciel de math ? Merci de votre avis et réponse.

Le 16-08-2013

Réponse Bonjour, je pense qu'ils utilisent Mathématica ! On fait difficilement mieux à moins de développer un logiciel spécifique. La difficulté n'est pas de trouver les facteurs premiers lorsqu'ils sont nombreux et petits, mais bien de factoriser des nombres quasi premiers (produit de deux grands nombres premiers) où le plus petit des facteurs est lui aussi un très grand nombre.

Calcul Mensualité

Calcul Mensualité
Outils du moment
Jours Fériés en 2017 Taile Pneu Dosage Béton Capacité d'emprunt Cuve Fioul Calcul Solde Moyenne de Notes Frais Réels Crédit Mensualité Coût Trajet en voiture
D'autres Outils
addition heure brut net béton calcul aire calcul masse molaire calcul volume chômage consommation carburant mensualité et TEG conversion coût carburant cuve fioul escalier hypoténuse moyenne pondérée mur nombre de jours pente pneu pourcentage puissance radiateur résistance thermique tva vitesse course à pied échelle équation équation second dedré suite des outils...
Calculatrice
Calculatrice en ligne
Calculer le nombre de marches d un escalier
Questions

- Poser une Question

- Questions Résolues

- Problèmes à résoudre

Les QCM

- QCM verbes anglais

- QCM verbes allemand

- QCM calcul litéral

- QCM équation

- QCM fraction

- QCM nombre relatif

Apportez votre commentaire à cette page ou vos remarques en utilisant notre page

- Contact