ForHosting KIT · Matematica

Verificatore di Mersenne

Inserisca un esponente e ottenga il valore completo di 2^p − 1 con il verdetto di primalità: 7 dà 127, un primo di Mersenne, mentre 11 dà 2047, cioè 23 × 89. Gli esponenti vanno da 2 a 10.000. Gratis nel suo browser.

  • Gratis
  • Funziona nel suo browser
  • Senza registrazione
  • I suoi dati restano sul dispositivo
Usalo da WebAPIEmailTelegramApp presto
Se inserisce
Potenza (W)
7
Ottiene
Num. Mersenne
127
Cifre decimali
3

Quando lo stesso Mp è primo si chiama primo di Mersenne — numeri che hanno guidato ricerche di record per secoli, dalle prime liste di Marin Mersenne ai moderni progetti distribuiti. Non ogni esponente produce un primo: se p è composto allora Mp è composto, e anche per molti esponenti primi il numero di Mersenne si fattorizza (ad esempio 2^11 − 1 = 2047 = 23 × 89). Questo strumento prende un esponente intero p almeno due, restituisce il valore decimale completo di 2^p − 1 come stringa e decide se quel valore è primo con il test deterministico di Lucas-Lehmer quando p è un primo dispari.

Cosa sono i numeri di Mersenne e come decide Lucas-Lehmer

Un numero di Mersenne è definito da un solo esponente: Mp è due elevato alla potenza p, meno uno. I primi valori sono costanti familiari in aula — M2 vale tre, M3 sette, M5 trentuno, M7 centoventisette — mentre esponenti maggiori producono interi con migliaia di cifre decimali. Un primo di Mersenne è semplicemente un numero di Mersenne che è primo.

Una condizione necessaria classica è che l’esponente p stesso sia primo: se p si fattorizza come ab con a e b maggiori di uno, allora 2^a − 1 divide 2^{ab} − 1, quindi Mp non può essere primo. Quella condizione necessaria non è sufficiente. Per p uguale a undici, che è primo, M11 vale duemilaquarantasette e si fattorizza come ventitré per ottantanove.

Il test di Lucas-Lehmer risolve completamente la questione per esponenti primi dispari. Parta da s zero uguale a quattro; per ciascuno dei successivi p meno due passi sostituisca s con s al quadrato meno due, ridotto modulo Mp. Il numero di Mersenne è primo se e solo se il residuo finale è zero.

Per il caso speciale p uguale a due il numero tre è primo per ispezione e non richiede la sequenza iterativa. Questa capacità implementa quel pipeline esatto con aritmetica BigInt: non approssima mai, non chiama mai un servizio di primalità e non dipende mai dall’orologio di parete o da bit casuali. Ottiene sempre lo stesso booleano per lo stesso p.

Dove compaiono i controlli di Mersenne nel lavoro reale

Programmatori di gara e coach di olimpiadi usano piccoli controlli di Mersenne come riscaldamento prima di problemi più duri di aritmetica modulare, e hanno bisogno di un oracolo deterministico da cui gli studenti non possano divergere accidentalmente da una formula di foglio di calcolo. Ingegneri di crittografia e sistemi a volte validano demo didattiche o tabelle storiche di primi di Mersenne noti senza rivendicare forza crittografica da una sola sequenza modulare.

Se più avanti Le servono coppie gemelle, π(n) o fattorizzazione di un composto generale, li tratti come intenzioni di ricerca separate invece di sovraccaricare questa pagina incentrata su Mersenne. I numeri di Mersenne restano la pagina giusta quando la domanda è quanto vale 2^p − 1 e se Lucas-Lehmer (o la regola dell’esponente composto) lo certifica come primo di Mersenne.

Cos’è un numero di Mersenne?

Quando quel numero è primo si chiama primo di Mersenne.

p sotto 2 causa un errore?

Il verificatore accetta solo esponenti da 2 a 10,000 inclusi.

Come funziona Lucas-Lehmer qui?

Mp è primo se e solo se il residuo finale è zero. Gli esponenti composti saltano il ciclo e sono segnalati composti.

Il risultato è deterministico?

Non c’è casualità, chiamata di rete o modello — solo aritmetica modulare BigInt e divisione di prova dell’esponente.

Quanto costa?

Lo strumento del browser è gratuito e gira in locale.

Tutto quello che vedi in questa pagina è disponibile anche via API. Questa sezione è per i team che vogliono integrarlo nei propri sistemi; chi non ne ha bisogno può semplicemente usare lo strumento qui sopra.

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

Autenticazione con Bearer token: un POST mette in coda l'attività e il risultato arriva via webhook o link firmato.

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 è asincrona: ricevi subito un task_id e puoi fare polling fino a 1 richiesta al secondo.

per richiesta$0.002

Prezzo pubblicato, senza token né crediti. Se l'attività fallisce, non paghi.

min_p2
max_p10000
HTTPCodiceSignificato
401unauthorizedChiave API mancante o non valida: controlla l'header Authorization.
402insufficient_balanceCredito esaurito: ricarica per continuare a eseguire attività.
404unknown_typeTipo di attività sconosciuto: controlla il campo type della richiesta.
429rate_limitedTroppe richieste in poco tempo: rallenta e riprova tra qualche secondo.

Un numero di Mersenne è un intero della forma speciale Mp = 2^p − 1, dove p è un esponente intero positivo.

Contratto di input, risposte di successo e modalità di fallimento

Decimali, campi vuoti e stringhe non numeriche falliscono la validazione e non sono addebitati. Invii un campo intero obbligatorio p (sono accettati gli alias exponent e power). Il valore deve essere almeno due — esponenti sotto due sono rifiutati con invalid_input così i moduli mostrano un chiaro errore di limite — e al massimo diecimila perché il quadrato modulare resti nei budget di Worker e browser. In successo il JSON riporta p, la stringa decimale completa mersenne per due alla p meno uno, decimal_digits come il conteggio di cifre di quella stringa, p_is_prime per l’esponente, is_mersenne_prime per Mp, e method che descrive quale percorso ha girato: special_case_p2 per il tre classico, composite_exponent quando p è composto (Mp è allora noto composto senza iterare Lucas-Lehmer), o lucas_lehmer quando p è un primo dispari. Controlli puntuali di cui può fidarsi senza aprire un manuale: p uguale a sette produce mersenne centoventisette e is_mersenne_prime true; p uguale a undici produce duemilaquarantasette e false; p uguale a quattro produce mersenne quindici con composite_exponent e false; p uguale a uno fallisce la validazione. Il prezzo API è la base pubblicata di $0.002 per articolo riuscito; la validazione fallita non consuma saldo.

Dove compaiono i controlli di Mersenne nel lavoro reale

Poiché la capacità è un motore di parse puro, lo stesso p produce sempre lo stesso JSON senza dipendenza di rete né stato memorizzato. Usi l’esecutore gratuito del browser per compiti ed esplorazione, poi chiami l’API da script e integrazione continua quando ha bisogno di controlli massivi con saldo prepagato.

Compiti e riscaldamenti da olimpiade

Calcoli Mp = 2^p − 1 per esponenti di aula e verifichi quali valori sono primi di Mersenne con una chiave di risposta deterministica Lucas-Lehmer.

Fixture deterministici per demo di teoria dei numeri

Generi campi stabili mersenne e is_mersenne_prime per diapositive, test unitari e documentazione senza mantenere a mano grandi stringhe decimali.

Controlli di Mersenne adatti alle pipeline

Chiami lo stesso contratto isomorfo da script e CI così le asserzioni di primalità di Mersenne non dipendano mai da un modulo web occasionale o da un modello di linguaggio.

Leggi la documentazione completa del KIT →