ForHosting KIT · Mathématiques

Vérificateur de Mersenne

Saisissez un exposant et obtenez la valeur complète de 2^p − 1 avec un verdict de primalité : 7 donne 127, un premier de Mersenne, tandis que 11 donne 2047, soit 23 × 89. Les exposants vont de 2 à 10 000. Gratuit dans votre navigateur.

  • Gratuit
  • Fonctionne dans votre navigateur
  • Sans inscription
  • Vos données restent sur votre appareil
Utilisez-le depuis WebAPIE-mailTelegramApp bientôt
Si vous saisissez
Puissance (W)
7
Vous obtenez
Nbre Mersenne
127
Chiffres décimaux
3

Lorsque Mp lui-même est premier, on l’appelle un premier de Mersenne — des nombres qui ont animé des recherches de records pendant des siècles, des premières listes de Marin Mersenne aux projets distribués modernes. Tout exposant ne donne pas un premier : si p est composé alors Mp est composé, et même pour de nombreux exposants premiers le nombre de Mersenne se factorise (par exemple 2^11 − 1 = 2047 = 23 × 89). Cet outil prend un exposant entier p au moins égal à deux, renvoie la valeur décimale complète de 2^p − 1 sous forme de chaîne et décide si cette valeur est première avec le test déterministe de Lucas-Lehmer lorsque p est un premier impair.

Ce que sont les nombres de Mersenne et comment Lucas-Lehmer décide

Un nombre de Mersenne est défini par un seul exposant : Mp égale deux élevé à la puissance p, moins un. Les premières valeurs sont des constantes familières en classe — M2 vaut trois, M3 sept, M5 trente et un, M7 cent vingt-sept — tandis que des exposants plus grands produisent des entiers à des milliers de chiffres décimaux. Un premier de Mersenne est simplement un nombre de Mersenne qui est premier.

Une condition nécessaire classique est que l’exposant p lui-même soit premier : si p se factorise en ab avec a et b supérieurs à un, alors 2^a − 1 divise 2^{ab} − 1, donc Mp ne peut pas être premier. Cette condition nécessaire n’est pas suffisante. Pour p égal à onze, qui est premier, M11 vaut deux mille quarante-sept et se factorise en vingt-trois fois quatre-vingt-neuf.

Le test de Lucas-Lehmer tranche complètement la question pour les exposants premiers impairs. Partez de s zéro égal à quatre ; pour chacune des p moins deux étapes suivantes remplacez s par s au carré moins deux, réduit modulo Mp. Le nombre de Mersenne est premier si et seulement si le résidu final est zéro.

Pour le cas spécial p égal à deux le nombre trois est premier par inspection et n’a pas besoin de la suite itérative. Cette capacité implémente ce pipeline exact en arithmétique BigInt : elle n’approxime jamais, n’appelle jamais un service de primalité et ne dépend jamais de l’horloge murale ni de bits aléatoires. Vous obtenez toujours le même booléen pour le même p.

Où les contrôles de Mersenne apparaissent dans le travail réel

Les programmeurs de concours et les coachs d’olympiades utilisent de petits contrôles de Mersenne comme échauffement avant des problèmes plus durs d’arithmétique modulaire, et ont besoin d’un oracle déterministe dont les élèves ne peuvent pas diverger accidentellement d’une formule de tableur. Les ingénieurs crypto et systèmes valident parfois des démos pédagogiques ou des tables historiques de premiers de Mersenne connus sans revendiquer de force cryptographique à partir d’une seule suite modulaire.

Si plus tard vous avez besoin de paires jumelles, de π(n) ou de factorisation d’un composé général, traitez-les comme des intentions de recherche séparées plutôt que de surcharger cette page centrée sur Mersenne. Les nombres de Mersenne restent la bonne page lorsque la question est ce que vaut 2^p − 1 et si Lucas-Lehmer (ou la règle de l’exposant composé) le certifie comme premier de Mersenne.

Qu’est-ce qu’un nombre de Mersenne ?

Lorsque ce nombre est premier, on l’appelle un premier de Mersenne.

p inférieur à 2 provoque-t-il une erreur ?

Le vérificateur n’accepte que les exposants de 2 à 10,000 inclus.

Comment Lucas-Lehmer fonctionne-t-il ici ?

Mp est premier si et seulement si le résidu final est zéro. Les exposants composés sautent la boucle et sont signalés composés.

Le résultat est-il déterministe ?

Il n’y a ni aléa, ni appel réseau, ni modèle — seulement de l’arithmétique modulaire BigInt et la division d’essai de l’exposant.

Quel est le coût ?

L’outil navigateur est gratuit et s’exécute en local.

Tout sur cette page est disponible par programmation. Cette section s'adresse aux équipes qui veulent l'intégrer à leurs systèmes ; les autres peuvent simplement utiliser l'outil ci-dessus.

POSThttps://api.kit.forhosting.com/numth/mersenne-number

Authentification par jeton Bearer : un seul POST met la tâche en file d’attente, et le résultat vous parvient par webhook ou lien signé.

curl -X POST https://api.kit.forhosting.com/numth/mersenne-number \
  -H "Authorization: Bearer $KIT_KEY" \
  -H "Content-Type: application/json" \
  -d '{"p":7}'
{
  "p": 7
}
{
  "task_id": "tsk_a1b2c3d4e5f6a1b2c3d4e5f6",
  "type": "numth.mersenne_number",
  "status": "queued",
  "_links": {
    "result": "/tasks/tsk_…/result"
  }
}

L’API est asynchrone : chaque appel renvoie un task_id immédiatement, puis vous interrogez l’état à raison d’une requête par seconde.

par requête$0.002

Le prix est publié, sans tokens ni crédits. Une tâche qui échoue n’est pas facturée.

min_p2
max_p10000
HTTPCodeSignification
401unauthorizedClé API absente ou invalide : vérifiez l’en-tête Authorization.
402insufficient_balanceSolde insuffisant : rechargez votre compte pour lancer cette tâche.
404unknown_typeType de tâche inconnu : vérifiez le champ type de votre requête.
429rate_limitedTrop de requêtes : ralentissez la cadence, puis réessayez.

Un nombre de Mersenne est un entier de la forme spéciale Mp = 2^p − 1, où p est un exposant entier positif.

Contrat d’entrée, réponses réussies et modes d’échec

Décimales, champs vides et chaînes non numériques échouent à la validation et ne sont pas facturés. Envoyez un champ entier obligatoire p (les alias exponent et power sont acceptés). La valeur doit être au moins deux — les exposants inférieurs à deux sont rejetés avec invalid_input pour que les formulaires affichent une erreur de borne claire — et au plus dix mille pour que le carré modulaire reste dans les budgets Worker et navigateur. En succès le JSON rapporte p, la chaîne décimale complète mersenne pour deux à la p moins un, decimal_digits comme le nombre de chiffres de cette chaîne, p_is_prime pour l’exposant, is_mersenne_prime pour Mp, et method décrivant quel chemin a tourné : special_case_p2 pour le trois classique, composite_exponent lorsque p est composé (Mp est alors connu composé sans itérer Lucas-Lehmer), ou lucas_lehmer lorsque p est un premier impair. Contrôles ponctuels auxquels vous pouvez vous fier sans ouvrir un manuel : p égal à sept produit mersenne cent vingt-sept et is_mersenne_prime true ; p égal à onze produit deux mille quarante-sept et false ; p égal à quatre produit mersenne quinze avec composite_exponent et false ; p égal à un échoue à la validation. Le tarif API est la base publiée de $0.002 par article réussi ; la validation échouée ne consomme pas de solde.

Où les contrôles de Mersenne apparaissent dans le travail réel

Comme la capacité est un moteur de parse pur, le même p produit toujours le même JSON sans dépendance réseau ni état stocké. Utilisez l’exécuteur gratuit du navigateur pour les devoirs et l’exploration, puis appelez l’API depuis des scripts et l’intégration continue lorsque vous avez besoin de contrôles en masse avec solde prépayé.

Devoirs et échauffements d’olympiade

Calculez Mp = 2^p − 1 pour des exposants de classe et vérifiez lesquels sont des premiers de Mersenne avec une clé de réponse déterministe Lucas-Lehmer.

Fixtures déterministes pour démos de théorie des nombres

Générez des champs stables mersenne et is_mersenne_prime pour diapositives, tests unitaires et documentation sans maintenir à la main de grandes chaînes décimales.

Contrôles de Mersenne adaptés aux pipelines

Appelez le même contrat isomorphe depuis des scripts et la CI pour que les assertions de primalité de Mersenne ne dépendent jamais d’un formulaire web occasionnel ni d’un modèle de langage.

Consulter la documentation complète du KIT →