Il est impossible de ne générer que des nombres premiers au moyen d’un polynôme.
Mais il existe parfois des algorithmes qui donnent un coup de pouce.
Depuis longtemps, je m’intéresse à la découverte des nombres premiers, et j’ai mis au point le 9 janvier 2018 un algorithme intéressant.
- Soient a, b, c, d, e des nombres premiers supérieurs à 2, donc tous impairs.
- Alors lorsque ces nombres premiers sont inférieurs à 100, je trouve un nombre ((a*b*c)² – (d*e)²) – 1 qui a une probabilité 7 fois supérieure d’être un nombre premier par rapport à la proportion naturelle 1 / ln (((a*b*c)² – (d*e)²) – 1).
- Je n’ai pas encore testé pour de plus grands nombres générés.
Exemple, je pose :
- b = 67
- c = 97
- d = 13
- e = 61
- a = entre 3 inclus et 97 inclus, soit 25 nombres premiers à tester l’un après l’autre.
Sur 25 nombres générés par ce calcul, j’obtiens 7 assez grands nombres qui sont premiers !
- ((7*67*97)² – (13*61)²) – 1 = 2 068 984 199 est premier
- ((17*67*97)² – (13*61)²) – 1 = 12 205 864 439 est premier
- ((19*67*97)² – (13*61)²) – 1 = 15 246 928 511 est premier
- ((23*67*97)² – (13*61)²) – 1 = 22 342 744 679 est premier
- ((31*67*97)² – (13*61)²) – 1 = 40 589 129 111 est premier
- ((47*67*97)² – (13*61)²) – 1 = 93 300 906 359 est premier
- ((89*67*97)² – (13*61)²) – 1 = 334 558 656 071 est premier
Normalement j’aurais dû avoir environ 4% de chance de tomber par hasard sur un nombre premier de 11 chiffres, mais là ça arrive à 28% avec le générateur. Bizarre, non ? Il faudrait explorer ça en profondeur.