Verificatore di primo di Wilson
Il 5 è un primo di Wilson: 4! + 1 = 25, che 5² divide esattamente, con resto 0. Inserisca un primo per vedere il resto esatto e se questa condizione rara è soddisfatta; se ne conoscono solo tre, 5, 13 e 563. Gratis nel Suo browser.
- Gratis
- Funziona nel suo browser
- Senza registrazione
- I suoi dati restano sul dispositivo
Esegui gratis nel browser
Esempio risolto
- Potenza (W)
- 5
- p al quadrato
- 25
- Resto
- 0
- Criterio
- (p-1)! ≡ -1 (mod p^2)
Il verificatore di primo di Wilson risponde a una domanda modulare precisa della teoria elementare dei numeri: dato un primo p, il quadrato di p divide il fattoriale di (p meno uno) più uno? In modo equivalente, (p−1)! è congruente a −1 modulo p²? Il teorema di Wilson garantisce già che ogni primo soddisfa la stessa congruenza modulo p, quindi la condizione di primo di Wilson è un rafforzamento genuino del modulo e non un nuovo test di primalità. Fornisca un primo p e lo strumento restituisce p, p al quadrato, il resto esatto di (p−1)! I piccoli primi di Wilson classici sono cinque e tredici; cinquecentosessantatré è l’unico altro primo di Wilson noto e resta comodamente nell’intervallo supportato. Il motore moltiplica interi successivi sotto un modulo BigInt, non campiona mai casualità, non legge mai l’orologio e non lascia mai il processo per una chiamata di rete.
Cos’è un primo di Wilson e cosa contiene la risposta
Un primo di Wilson è un numero primo p tale che il quadrato di p divide il fattoriale di (p meno uno) più uno. In linguaggio modulare la stessa affermazione si legge (p−1)! ≡ −1 (mod p²).
Il teorema di Wilson afferma che per ogni primo p si ha già (p−1)! ≡ −1 (mod p), quindi il fattoriale più uno è sempre divisibile per p; la condizione di Wilson chiede se quella divisibilità si solleva dal modulo p fino al modulo p². Gli unici primi di Wilson noti in letteratura sono cinque, tredici e cinquecentosessantatré; ricerche esaustive ben oltre un milione non hanno trovato altri esempi, il che rende l’elenco di tre membri un esempio preferito di quanto rari possano essere i sollevamenti modulari.
≡ -1 (mod p^2). Se Le serve solo la primalità ordinaria, usi un verificatore di primi dedicato; questa pagina risponde alla domanda modulare di Wilson con un resto esplicito.
Come si leggono gli ingressi e come il fattoriale modulare resta esatto
Segni più iniziali opzionali sono consentiti per valori positivi; spazi incorporati, prefissi esadecimali e notazione esponenziale sono respinti affinché una cella errata non diventi un flag sbagliato. Internamente il motore dimostra prima la primalità per divisione di prova fino alla radice quadrata di p, operazione economica a questa scala e del tutto deterministica.
Poi percorre il prodotto due per tre per quattro fino a p meno uno, riducendo modulo p al quadrato dopo ogni moltiplicazione con aritmetica BigInt così che i valori intermedi non trabocchino mai una parola macchina fissa e non derivino verso il floating-point. Il resto finale di quel prodotto più uno modulo p al quadrato è riconvertito in un numero JavaScript sicuro—p al quadrato è al massimo un bilione nell’intervallo consentito—e confrontato con zero.
Dove i controlli di Wilson si inseriscono nello studio, nelle demo e nel codice
Gli studenti incontrano i primi di Wilson studiando il teorema di Wilson, l’aritmetica modulare e specializzazioni rare di primi accanto ai primi di Sophie Germain, ai safeprimes e ai quozienti di Wilson. Gli insegnanti possono generare chiavi di risposta per fogli di lavoro senza fidarsi di app calcolatrice opache che nascondono il passo del prodotto modulare o accettano silenziosamente i composti.
Gli sviluppatori usano lo stesso contratto per validare dati di esempio di librerie di teoria dei numeri, per condizionare test di proprietà su generatori di primi casuali, o per pre-verificare che un seme di dimostrazione sia uno dei tre primi di Wilson classici prima di una presentazione dal vivo. La pratica di gara spesso necessita di una fonte rapida e offline di risposte di Wilson per controllare soluzioni senza scaricare tabelle OEIS né reimplementare la riduzione fattoriale modulare BigInt sotto pressione di tempo.
Lo abbini a un verificatore di primi ordinario quando serve solo la primalità, a un verificatore di primi gemelli quando servono primi dispari consecutivi, e a strumenti di esponenziazione modulare quando serve un pow-mod generale anziché un prodotto fattoriale specifico di Wilson.
Casi d'uso
Classificazione per compiti e gare
Decida se primi dati sono primi di Wilson per fogli di lavoro e controlli di gara calcolando ((p−1)!+1) mod p² senza fattoriali a mano.
Insegnare i sollevamenti del teorema di Wilson
Mostri agli studenti come la congruenza di Wilson modulo p si rafforza a modulo p² mentre cambiano p dal vivo nel browser senza costo.
Domande frequenti
Quanto costa il verificatore di primo di Wilson?
È gratuito nel Suo browser in questa pagina.
Cosa succede se p non è primo?
I primi di Wilson sono definiti solo per i primi; composti, 1 e non interi vengono rifiutati con un messaggio chiaro.
Quali primi sono primi di Wilson?
Gli unici primi di Wilson noti sono 5, 13 e 563. Questo strumento ricalcola il criterio modulare per qualsiasi primo nell’intervallo anziché consultare un elenco fisso.
L’algoritmo è casuale?
No. Usa divisione di prova deterministica per la primalità e moltiplicazioni modulari BigInt esatte per (p−1)! mod p². Lo stesso p produce sempre lo stesso resto e lo stesso flag.
In che modo differisce da un semplice verificatore di primi?
Un verificatore di primi decide solo la primalità. Questo strumento richiede un primo e riferisce se p² divide (p−1)! +1, restituendo il resto modulare e un booleano di primo di Wilson.
Strumenti correlati
Per sviluppatori — accesso via API
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.
Endpoint
Autenticazione con Bearer token: un POST mette in coda l'attività e il risultato arriva via webhook o link firmato.
Chiamala dal tuo stack
curl -X POST https://api.kit.forhosting.com/numth/wilson-prime \
-H "Authorization: Bearer $KIT_KEY" \
-H "Content-Type: application/json" \
-d '{"p":5}'const res = await fetch("https://api.kit.forhosting.com/numth/wilson-prime", {
method: "POST",
headers: {
"Authorization": `Bearer ${process.env.KIT_KEY}`,
"Content-Type": "application/json"
},
body: JSON.stringify({
"p": 5
})
});
const { task_id } = await res.json();import os, requests
res = requests.post(
"https://api.kit.forhosting.com/numth/wilson-prime",
headers={"Authorization": f"Bearer {os.environ['KIT_KEY']}"},
json={
"p": 5
},
)
task_id = res.json()["task_id"]<?php
$res = file_get_contents("https://api.kit.forhosting.com/numth/wilson-prime", false, stream_context_create([
"http" => [
"method" => "POST",
"header" => "Authorization: Bearer " . getenv("KIT_KEY") . "\r\nContent-Type: application/json",
"content" => '{"p":5}',
],
]));
$task = json_decode($res, true);body := bytes.NewBufferString(`{"p":5}`)
req, _ := http.NewRequest("POST", "https://api.kit.forhosting.com/numth/wilson-prime", body)
req.Header.Set("Authorization", "Bearer "+os.Getenv("KIT_KEY"))
req.Header.Set("Content-Type", "application/json")
res, _ := http.DefaultClient.Do(req)Esempio di richiesta
{
"p": 5
}Esempio di risposta
{
"task_id": "tsk_a1b2c3d4e5f6a1b2c3d4e5f6",
"type": "numth.wilson_prime",
"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.
Prezzi
Prezzo pubblicato, senza token né crediti. Se l'attività fallisce, non paghi.
Errori
| HTTP | Codice | Significato |
|---|---|---|
401 | unauthorized | Chiave API mancante o non valida: controlla l'header Authorization. |
402 | insufficient_balance | Credito esaurito: ricarica per continuare a eseguire attività. |
404 | unknown_type | Tipo di attività sconosciuto: controlla il campo type della richiesta. |
429 | rate_limited | Troppe richieste in poco tempo: rallenta e riprova tra qualche secondo. |
Note tecniche
+1 modulo p², un flag booleano wilson_prime che è true solo quando quel resto è zero, e una breve stringa di criterio che documenta la congruenza.
Cos’è un primo di Wilson e cosa contiene la risposta
I composti sono esclusi per definizione: la proprietà è enunciata solo per i primi, e questo verificatore rifiuta qualsiasi ingresso non primo con invalid_input anziché restituire un falso negativo che confonderebbe una chiave di compito. Su una chiamata riuscita la risposta include sempre il primo p analizzato, l’intero p_squared, il resto non negativo di (p−1)! +1 modulo p_squared, il booleano wilson_prime uguale a true esattamente quando quel resto è zero, e la stringa di criterio (p-1)! Un primo che fallisce la congruenza resta un successo valido con wilson_prime false—sette e undici sono controesempi quotidiani—, quindi l’assenza della proprietà di Wilson non è mai un errore. Campi mancanti, non interi, frazioni, notazione scientifica, valori fuori dall’intervallo da due a un milione e interi composti falliscono con invalid_input e un messaggio chiaro.
Come si leggono gli ingressi e come il fattoriale modulare resta esatto
Il campo preferito è p come intero JSON, ma sono accettate stringhe decimali e gli alias prime, n o value affinché moduli, fogli di calcolo e query string condividano un unico contratto. Il dominio supportato è l’intervallo intero chiuso da due a un milione: abbastanza piccolo perché un prodotto modulare lineare termini rapidamente in un Worker o scheda del browser, e abbastanza grande da coprire tutti i primi di Wilson noti più un’ampia fascia di esempi di aula e gara.
Dove i controlli di Wilson si inseriscono nello studio, nelle demo e nel codice
In questa pagina il lavoro viene eseguito interamente nel Suo browser; tramite l’API ogni consultazione riuscita costa $0.002, la validazione fallita non viene addebitata e nulla viene memorizzato dopo la risposta. Quella suddivisione—esplorazione interattiva gratuita e API a pagamento identica—corrisponde al resto del catalogo KIT di livello A e Le consente di passare da una demo d’aula a una pipeline automatizzata senza cambiare il risultato matematico.
Casi di integrazione
Fixture deterministiche di libreria
Affermi che 5, 13 e 563 sono primi di Wilson e che primi vicini non lo sono, con resti riproducibili per test unitari e CI.