ForHosting KIT · Matematica

Calcolatore radice primitiva

Trova la più piccola radice primitiva di un primo: modulo 7 è 3, le cui potenze percorrono i sei resti diversi da zero, mentre quelle di 2 si ripetono dopo tre. Vede anche p − 1 scomposto in potenze di primi. 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
Radice primitiva
3
Ordine
6
Cifre massime
15

Una radice primitiva modulo un primo p è un generatore del gruppo moltiplicativo dei residui diversi da zero modulo p. In termini semplici, qualche intero g tra 1 e p meno uno ha la proprietà che le sue potenze successive g, g al quadrato, g al cubo, e così via, alla fine toccano ogni classe di resto coprima con p prima di ripetersi. Quel g è un generatore di (Z/pZ)*, e il più piccolo g positivo di questo tipo è la classica risposta di teoria dei numeri che studenti, crittografi e risolutori di gare cercano. Questo calcolatore prende un modulo primo p, verifica che p sia primo, fattorizza p meno uno, e restituisce la radice primitiva minima insieme all'ordine del gruppo e alla fattorizzazione in potenze prime di p meno uno. Il percorso è completamente deterministico: Miller-Rabin con insiemi di testimoni fissi, fattorizzazione per tentativi ed esponenziazione modulare senza rete, senza casualità e senza dipendenza dalla data.

Cos'è una radice primitiva e cosa contiene la risposta

Per un modulo primo p, l'insieme dei residui 1, 2, …, p meno uno forma un gruppo moltiplicativo ciclico di ordine p meno uno. Un intero g è una radice primitiva modulo p quando l'ordine di g in quel gruppo è esattamente p meno uno: le potenze g elevato a k per k da 0 fino a p meno due sono tutte distinte modulo p ed esauriscono ogni resto diverso da zero.

Non ogni intero è un generatore; per esempio modulo 7 le potenze di 2 ciclano solo attraverso tre valori prima di ripetersi, quindi 2 non è una radice primitiva, mentre 3 genera tutte e sei le unità ed è la più piccola. Non c'è alcuna congettura probabilistica presentata come radice e nessun ripiego silenzioso per moduli composti, perché una radice primitiva in senso classico è definita per i primi (e alcune famiglie composte speciali che questa pagina non copre).

Se ti servono i fattori di un intero arbitrario invece di un generatore mod p, usa invece una capacità di fattorizzazione; questa pagina risponde solo alla domanda sul generatore minimo mod primo.

Come viene verificato il primo e come si trova la radice minima

Il segno più iniziale opzionale è ammesso; spazi incorporati, prefissi esadecimali e notazione esponenziale vengono respinti con un messaggio chiaro, così che una cella sbagliata non diventi un generatore errato. Dopo l'interpretazione, il motore esegue un test di primalità Miller-Rabin deterministico con insiemi di testimoni dimostrati sufficienti per ogni intero fino a quindici cifre decimali.

Quando p è primo, il motore fattorizza p meno uno tramite divisione per tentativi con ruota, raccoglie i fattori primi distinti q di quell'ordine, e cerca g uguale a 2, 3, 4, … per il primo candidato tale che g elevato a (p meno uno) diviso q non sia congruo a 1 modulo p per ogni tale q. Quel criterio classico è necessario e sufficiente affinché g abbia ordine p meno uno. Il caso speciale p uguale a 2 restituisce radice primitiva 1, l'unica unità in quel gruppo.

Dove si usano le radici primitive minime nello studio, nella crittografia e nel codice

Gli studenti incontrano le radici primitive quando imparano i gruppi ciclici, i logaritmi discreti e la struttura dei campi finiti di ordine primo. Le schede di esercizi spesso chiedono il generatore minimo modulo un piccolo primo; questa pagina restituisce quella risposta con la fattorizzazione di supporto di p meno uno così puoi verificare a mano i test dell'ordine.

I problemi di gara e gli enunciati di kata di programmazione richiedono spesso la radice primitiva minima come subroutine per costruire polinomi primitivi, indicizzare tabelle di logaritmo discreto o inizializzare dimostrazioni di teoria dei numeri.

Nella crittografia applicata, Diffie-Hellman e costruzioni correlate hanno bisogno di un generatore di un grande sottogruppo di ordine primo; mentre i sistemi di produzione usano primi sicuri accuratamente scelti e generatori standardizzati, un calcolatore trasparente per primi ordinari è comunque utile quando validi parametri su scala da compiti a casa, scrivi test unitari per helper dell'ordine modulare, o spieghi perché g uguale a 2 funziona per alcuni primi e non per altri.

Compiti a casa e preparazione a gare

Cerca la radice primitiva minima modulo un primo per esercizi del manuale, esercizi di logaritmo discreto e gare di programmazione che richiedono il generatore minimo.

Test deterministici di parametri crittografici

Genera generatori riproducibili per test unitari dell'ordine modulare, dimostrazioni Diffie-Hellman su primi giocattolo e asserzioni CI senza incorporare tabelle statiche.

Insegnare i gruppi ciclici

Mostra che le potenze della radice restituita esauriscono (Z/pZ)* e confronta con non-generatori usando la fattorizzazione di p−1 nella risposta.

Cosa succede se p non è primo?

Le radici primitive classiche in questo senso sono definite per moduli primi; n composto è fuori portata.

L'algoritmo è randomizzato?

No. La primalità usa insiemi di testimoni Miller-Rabin deterministici, la fattorizzazione è per divisione per tentativi, e le potenze modulari sono esatte. Lo stesso p produce sempre la stessa radice.

Qual è il primo più grande che posso inviare?

p può avere al massimo 15 cifre decimali. Valori più grandi falliscono con un messaggio chiaro che il limite di cifre è stato superato.

Perché vengono mostrati i fattori primi di p − 1?

Sono ciò che usa la verifica. Un candidato g è radice primitiva quando g elevato a (p − 1) diviso q non dà 1 modulo p per nessun primo q che divide p − 1, quindi con essi può rifare il controllo.

Che cosa indica l'ordine del gruppo?

È p − 1, cioè quanti resti diversi da zero esistono modulo p. Per 7 l'ordine è 6, e una radice primitiva deve toccare tutti e 6 quei resti prima di ripetersi.

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/primitive-root

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/primitive-root \
  -H "Authorization: Bearer $KIT_KEY" \
  -H "Content-Type: application/json" \
  -d '{"p":"7"}'
{
  "p": "7"
}
{
  "task_id": "tsk_a1b2c3d4e5f6a1b2c3d4e5f6",
  "type": "numth.primitive_root",
  "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.

max_digits15
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.

Cos'è una radice primitiva e cosa contiene la risposta

Questo strumento restituisce il primo p come stringa decimale, la più piccola radice primitiva, l'ordine del gruppo p meno uno, un flag booleano is_prime che è sempre true in caso di successo, i fattori in potenze prime ordinati di p meno uno usati nei test dell'ordine, e il limite max_digits pubblicato così i client possono validare prima di un lotto. Le modalità di fallimento sono esplicite: p mancante, valori non interi, frazioni, notazione scientifica, valori sotto due, valori con più di quindici cifre e p composto generano tutti invalid_input.

Come viene verificato il primo e come si trova la radice minima

Il campo preferito è p come intero JSON o stringa decimale; sono accettati anche gli alias prime, modulus e n, così che moduli, stringhe di query e fogli di calcolo possano riusare lo stesso contratto. Se il test fallisce, la risposta è invalid_input che indica che p non è primo.

Dove si usano le radici primitive minime nello studio, nella crittografia e nel codice

In questa pagina il lavoro gira interamente nel tuo browser; tramite l'API ogni ricerca riuscita costa $0.002, la validazione fallita non viene addebitata e nulla viene conservato dopo la restituzione della risposta. Questa distinzione — esplorazione interattiva gratuita e API a pagamento identica — corrisponde al resto del catalogo tier A del KIT e ti permette di passare da una dimostrazione in classe a una pipeline automatizzata senza cambiare il risultato matematico.

Quanto costa il calcolatore di radice primitiva?

È gratuito nel browser su questa pagina. Tramite l'API una richiesta riuscita costa $0.002; gli input non validi non vengono addebitati.

Il risultato è sempre la radice primitiva più piccola?

Sì. Il motore cerca g = 2, 3, 4, … e restituisce il primo generatore, così la radice è minima tra i residui positivi.

Leggi la documentazione completa del KIT →