Démonstrations de primalité Nombres de Mersenne et de Fermat
Transcription
Démonstrations de primalité Nombres de Mersenne et de Fermat
Démonstrations de primalité Nombres de Mersenne et de Fermat 1 Introduction Le tableau suivant montre l'évolution du record du plus grand nombre premier connu, avant l'avénement de l'ordinateur : 1588 217 − 1 = 131071 6 chires Cataldi 1588 219 − 1 = 524287 6 chires Cataldi 1772 10 chires Euler 1867 231 − 1 259 − 1 /179951 13 chires Landry 1876 2127 − 1 39 chires Lucas Dans cet exposé, nous montrerons comment retrouver en Terminale S les résultats de Cataldi et d'Euler en utilisant le théorème de Fermat. Nous montrerons ensuite comment, par une méthode similaire, Euler aurait pu trouver un nombre premier de 7 chires dès 1732. Le premier test de primalité non trivial est basé sur le théorème suivant. Théorème 1. Tout entier non premier plus grand que 2 a un diviseur premier inférieur ou égal à sa racine carrée. Application Si un entier plus grand que 2 n'a pas de diviseur premier inférieur ou égal à sa racine carrée, alors il est premier. Exemple 1 2 L'entier 37901 est-il premier ? Et l'entier 37907 ? Nombres de Mersenne 2.1 Introduction On cherche des nombres premiers de la forme an − 1, avec a et n entiers supérieurs ou égaux à 2. Le théorème suivant permet d'éliminer beaucoup de possibilités. Théorème 2. Pour tous entiers a et n supérieurs ou égaux à 2, an − 1 est divisible par a − 1. On peut aborder ce théorème à diérents niveaux : en terminale S ou L : à l'aide des congruences, en première : en utilisant le calcul de la somme 1 + a + a2 + · · · + an−1 , dans les classes antérieures : en développant le produit (1 + a + a2 + · · · + an−1 )(a − 1), éventuellement sur un exemple, ou bien en montrant que 10n − 1 est divisible par 9. Exemple 2 Les entiers 2013 − 1 et 235 − 1 ne sont pas premiers. Plus généralement Corollaire 1. Dénition 1. Si a>2 alors an − 1 n'est pas un nombre premier. Les entiers de la forme Mn = 2n − 1 sont appelés nombres de Mersenne. Du théorème, on peut également déduire le corollaire Corollaire 2. Exemple 3 Si n n'est pas premier alors 2n − 1 n'est pas un nombre premier. Parmi les nombres de Mersenne M2 , M3 , M4 ,. . .M16 , quels sont ceux qui sont premiers ? 1 2.2 Les diviseurs premiers des nombres de Mersenne Pour montrer que M17 est premier, il faudrait tester tous les diviseurs premiers jusqu'à 362. Pour montrer que M19 est premier, il faudrait tester tous les diviseurs premiers jusqu'à 724. On peut accélerer le processus en utilisant le théorème de Fermat Théorème 3. n, on a Soit n un entier naturel. Si n est un nombre an−1 ≡ 1 (mod n) (c'est-à-dire n divise an−1 − 1). premier, alors pour tout entier Remarque Le théorème de Fermat peut être utilisé pour montrer qu'un entier n'est existe un entier a premier avec n tel que an−1 6≡ 1 (mod n) alors n n'est pas premier. Exemple 4 L'entier 37901 est-il premier ? On calcule 237900 (mod 379001) en utilisant l'exponentiation 22 ≡ 4 rapide (mod 37901) 8 2 ≡ 256 (mod 37901) 2 16 ≡ 27635 (mod 37901) 2 32 ≡ 25976 (mod 37901) 264 ≡ 1073 (mod 37901) 128 ≡ 14299 (mod 37901) 2256 ≡ 23407 (mod 37901) 512 ≡ 28694 (mod 37901) 2 1024 ≡ 22213 (mod 37901) 2 2048 ≡ 22151 (mod 37901) 2 4096 ≡ 455 (mod 37901) 28192 ≡ 17520 (mod 37901) 16384 ≡ 28102 (mod 37901) 232768 ≡ 17168 (mod 37901) 2 pas premier : si il (mod 37901) 2 ≡ 16 2 premier avec : 4 2 a On a 37900 = 32768 + 4096 + 1024 + 8 + 4 donc 237900 ≡ 17168 × 455 × 22213 × 256 × 16 ≡ 12802 (mod 37901) donc 37901 n'est pas un nombre premier. Malheureusement, le théorème de Fermat ne permet pas de montrer directement qu'un entier est premier. Théorème 4. Soit a et p deux entiers supérieurs ou égaux à 2. On suppose qu'il k tel que ak ≡ 1 (mod p). k Soit k0 le plus petit entier naturel non nul tel que a 0 ≡ 1 (mod p). L'entier k est alors un multiple de k0 . On dit que k0 est l'ordre de a modulo p. existe un entier naturel non nul Corollaire 3. Soit p et q deux nombres premiers. Si q divise Mp alors il existe un entier k tel que q = 2kp+1. p est premier alors les diviseurs premiers de Mp sont de la forme 2kp + 1. Autrement dit, si Exemple 5 Parmi les nombres de Mersenne M17 , M18 , . . .M30 , quels sont ceux qui sont premiers ? En 1772, Euler démontre que M31 est premier en utilisant un ranement de cette méthode. 2 3 Nombres de Fermat 3.1 Introduction On cherche des nombres premiers de la forme am + 1, avec a > 2 pair et m > 1. Le théorème suivant permet d'éliminer beaucoup de possibilités. Théorème 5. si m Pour tous entiers m est impair alors a +1 a et m supérieurs ou égaux à 2, est divisible par a + 1. Ce résultat est plus dicile à aborder avant la première... Exemple 6 Les entiers 63 + 1 et 212 + 1 ne sont pas premiers. Plus généralement Corollaire 4. Si m est divisible par un nombre impair strictement plus grand que 1 alors am + 1 n'est pas un nombre premier. On en déduit en particulier que si 2m + 1 est premier alors m est une puissance de 2. Dénition 2. Exemple 7 3.2 Les entiers de la forme n Fn = 22 + 1 sont appelés nombres de Fermat. Parmi les nombres de Fermat F0 , F1 , F2 et F3 , quels sont ceux qui sont premiers ? Les diviseurs premiers des nombres de Fermat Théorème 6. Soit p p divise Fn alors il existe un entier k Fn sont de la forme k × 2n+1 + 1. un nombre premier. Si Autrement dit, les diviseurs premiers de Exemple 8 1. Montrer que F4 est un nombre premier. 2. Décomposer F5 en facteurs premiers. 3 tel que p = k × 2n+1 + 1. Table de nombres premiers 2 31 73 127 179 233 283 353 419 467 547 607 661 739 811 877 947 1019 1087 1153 1229 1297 1381 1453 1523 1597 1663 1741 1823 1901 1993 2063 2131 2221 2293 2371 2437 2539 3 37 79 131 181 239 293 359 421 479 557 613 673 743 821 881 953 1021 1091 1163 1231 1301 1399 1459 1531 1601 1667 1747 1831 1907 1997 2069 2137 2237 2297 2377 2441 2543 5 41 83 137 191 241 307 367 431 487 563 617 677 751 823 883 967 1031 1093 1171 1237 1303 1409 1471 1543 1607 1669 1753 1847 1913 1999 2081 2141 2239 2309 2381 2447 2549 7 43 89 139 193 251 311 373 433 491 569 619 683 757 827 887 971 1033 1097 1181 1249 1307 1423 1481 1549 1609 1693 1759 1861 1931 2003 2083 2143 2243 2311 2383 2459 2551 11 47 97 149 197 257 313 379 439 499 571 631 691 761 829 907 977 1039 1103 1187 1259 1319 1427 1483 1553 1613 1697 1777 1867 1933 2011 2087 2153 2251 2333 2389 2467 2557 13 53 101 151 199 263 317 383 443 503 577 641 701 769 839 911 983 1049 1109 1193 1277 1321 1429 1487 1559 1619 1699 1783 1871 1949 2017 2089 2161 2267 2339 2393 2473 2579 4 17 59 103 157 211 269 331 389 449 509 587 643 709 773 853 919 991 1051 1117 1201 1279 1327 1433 1489 1567 1621 1709 1787 1873 1951 2027 2099 2179 2269 2341 2399 2477 2591 19 61 107 163 223 271 337 397 457 521 593 647 719 787 857 929 997 1061 1123 1213 1283 1361 1439 1493 1571 1627 1721 1789 1877 1973 2029 2111 2203 2273 2347 2411 2503 2593 23 67 109 167 227 277 347 401 461 523 599 653 727 797 859 937 1009 1063 1129 1217 1289 1367 1447 1499 1579 1637 1723 1801 1879 1979 2039 2113 2207 2281 2351 2417 2521 2609 29 71 113 173 229 281 349 409 463 541 601 659 733 809 863 941 1013 1069 1151 1223 1291 1373 1451 1511 1583 1657 1733 1811 1889 1987 2053 2129 2213 2287 2357 2423 2531 2617