🔢 Crible d'Ératosthène — Chercheur animé de nombres premiers
Observez le crible d'Ératosthène s'animer en temps réel. Rayez les multiples de chaque nombre premier et découvrez tous les nombres premiers jusqu'à 10000. Découvrez les écarts entre premiers, la fonction de comptage des nombres premiers π(x), et le théorème des nombres premiers.
À propos du crible d'Ératosthène
Cette simulation implémente directement le classique crible d'Ératosthène (v. 240 av. J.-C.) : en partant d'un tableau booléen entièrement vrai sur 2…N, il trouve répétitivement le prochain indice non marqué p, et — seulement une fois que p² ≤ N — marque comme composé chaque multiple de p à partir de p², en sautant les nombres déjà éliminés. Tout ce qui reste non marqué à la fin du crible est premier. Chaque étape d'animation effectue un tel passage de marquage et redessine la grille (ou la spirale d'Ulam, qui enroule les entiers 1…N vers l'extérieur depuis le centre) avec les nombres premiers en or et le p actuellement actif en orange. Un second panneau trace la fonction de comptage courante π(x) — le nombre de nombres premiers trouvés jusqu'ici — par rapport à l'estimation classique x/ln(x), vous permettant d'observer le théorème des nombres premiers émerger à mesure que N croît.
🔬 Ce que cela montre
Un crible booléen en direct sur les entiers de 2 à N (jusqu'à 10 000) : les survivants non marqués sont premiers, et les multiples de chaque nombre premier p nouvellement trouvé sont rayés à partir de p² (les multiples plus petits ont déjà été rayés par des nombres premiers plus petits). Le graphique sous la grille compare le compte réel π(x) à x/ln(x), l'estimation asymptotique du théorème des nombres premiers.
🎮 Comment l'utiliser
Faites glisser Limite N pour choisir combien d'entiers cribler et Vitesse d'animation pour contrôler les étapes par image. Basculez entre la disposition en Grille et la Spirale d'Ulam avec les boutons de vue. Appuyez sur Démarrer pour animer le crible étape par étape, Instantané pour résoudre immédiatement, ou Réinitialiser pour reconstruire le tableau depuis le début.
💡 Le saviez-vous ?
Le crible n'a besoin de tester les nombres premiers candidats p que jusqu'à √N, et chacun est sauté s'il a déjà été marqué composé par un nombre premier plus petit — c'est pourquoi son temps d'exécution est un remarquablement efficace O(N log log N), l'une des façons les plus rapides connues d'énumérer tous les nombres premiers en dessous d'une borne.
Questions fréquentes
Pourquoi le marquage ne commence-t-il qu'à p² au lieu de 2p ?
Tout multiple composé de p inférieur à p² — comme 2p, 3p, …, (p−1)p — possède déjà un facteur premier plus petit que p, donc il a été rayé lors d'un passage précédent lorsque ce nombre premier plus petit a été traité. Commencer chaque passage à p² évite un travail redondant et est l'optimisation clé qui donne au crible son temps d'exécution en O(N log log N) au lieu d'un O(N log N) plus lent.
Quel est le lien entre la spirale d'Ulam et ce crible ?
La vue en spirale d'Ulam prend exactement le même tableau de crible utilisé dans la vue en grille et retrace chaque nombre premier survivant le long d'un chemin en spirale carrée qui s'enroule vers l'extérieur depuis le centre, une cellule par entier. Visuellement, les nombres premiers ont tendance à s'agglutiner le long de certaines lignes diagonales dans cette disposition — un motif frappant, encore non entièrement expliqué, remarqué pour la première fois par le mathématicien Stanisław Ulam en 1963 alors qu'il griffonnait lors d'une conférence ennuyeuse.
Que signifie le graphique π(x) contre x/ln(x) ?
π(x) est la fonction de comptage des nombres premiers : le nombre réel de nombres premiers inférieurs ou égaux à x, compté directement à partir du crible pendant son exécution. x/ln(x) est l'approximation asymptotique de premier ordre issue du théorème des nombres premiers (démontré indépendamment par Hadamard et de la Vallée Poussin en 1896). Les deux courbes se rapprochent de plus en plus l'une de l'autre à mesure que N croît, ce qui est exactement ce que prédit le théorème — bien que le rapport ne converge vers 1 qu'à la limite x → ∞.
Pourquoi le crible s'exécute-t-il en temps O(N log log N) ?
Le travail total est proportionnel à N multiplié par la somme de 1/p sur tous les nombres premiers p ≤ √N (un « coup » par multiple de chaque nombre premier). Selon le second théorème de Mertens, la somme des inverses des nombres premiers jusqu'à une borne croît comme le logarithme du logarithme de cette borne, donc le travail total évolue comme N·log log N — asymptotiquement proche du linéaire et bien plus rapide que de diviser individuellement chaque nombre par essai.
Que mesure la statistique du plus grand écart entre premiers ?
Elle rapporte la plus grande différence entre nombres premiers consécutifs trouvés jusqu'à la limite N actuelle (par exemple, l'écart de 8 entre 89 et 97). Les écarts entre nombres premiers croissent irrégulièrement mais s'élargissent en moyenne comme ln(N) à mesure que N augmente, selon le théorème des nombres premiers ; la conjecture de Cramér propose une borne plus stricte sur la taille que peut atteindre un écart individuel, mais elle reste non démontrée.
Ce crible prouve-t-il ou réfute-t-il la conjecture des nombres premiers jumeaux ?
Non — le crible peut énumérer chaque paire de nombres premiers jumeaux (p, p+2) en dessous de la limite N choisie, mais cela ne confirme que finiment d'exemples. La conjecture des nombres premiers jumeaux affirme qu'il existe une infinité de telles paires, ce qui est un énoncé portant sur tous les nombres premiers, pas un calcul fini ; malgré de solides preuves numériques et théoriques partielles (y compris la percée de Zhang en 2013 sur les écarts bornés), elle reste un problème ouvert en théorie des nombres.
Observez le crible d'Ératosthène s'animer en temps réel. Rayez les multiples de chaque nombre premier et découvrez tous les nombres premiers jusqu'à 10000. Découvrez les écarts entre premiers, la fonction de comptage des nombres premiers π(x), et le théorème des nombres premiers.
3D · Moteur de rendu Three.js / WebGL · Cible 60 FPS · fonctionne entièrement côté client, sans installation