ForHosting KIT · Matematica

Calcolatore del simbolo di Jacobi

Il simbolo di Jacobi (5/13) vale −1, il che indica che 5 non è un quadrato modulo 13. Inserisca un intero e un denominatore dispari positivo per ottenere −1, 0 o +1 tramite la reciprocità quadratica, senza fattorizzare prima il denominatore. Gratis nel suo browser.

  • Gratis
  • Funziona nel suo browser
  • Senza registrazione
  • I suoi dati restano sul dispositivo
Usalo da WebAPIEmailTelegramApp presto
Se inserisce
Primo testo
5
N
13
Ottiene
Valore Jacobi
-1
Simbolo
-1

Il simbolo di Jacobi (a/n) estende il simbolo di Legendre dai moduli primi a qualsiasi intero positivo dispari n. Restituisce 0 quando a e n condividono un fattore comune maggiore di uno, e altrimenti +1 o −1 secondo il prodotto dei simboli di Legendre sui fattori primi di n — senza richiedere di fattorizzare n prima. Questo calcolatore implementa l’algoritmo classico di reciprocità quadratica: elimina le potenze di due dal numeratore, applica la legge supplementare di (2/n), scambia con il segno di reciprocità quando entrambi sono 3 mod 4 e riduce.

Cosa significa il simbolo di Jacobi (a/n)

Per un intero positivo dispari n e qualsiasi intero a, il simbolo di Jacobi (a/n) è definito in modo moltiplicativo a partire dal simbolo di Legendre. Quando n è un primo dispari p, Jacobi coincide con Legendre: (a/p) vale 0 se p divide a, +1 se a è un residuo quadratico non nullo modulo p, e −1 se a è un non residuo quadratico modulo p. Quando n si fattorizza come prodotto di primi dispari, (a/n) è il prodotto dei simboli di Legendre di a in quei primi (con molteplicità).

Di conseguenza (a/n) = 0 proprio quando gcd(a, n) è maggiore di uno; se il simbolo è −1 allora a non è un quadrato mod n; ma se il simbolo è +1, a può ancora non essere un quadrato quando n è composto — Jacobi è quindi una condizione necessaria di residualità quadratica, non sempre sufficiente.

Il valore è completamente moltiplicativo in entrambi gli argomenti (con le usuali cautele sul dominio di n), e le leggi di reciprocità quadratica offrono un modo efficiente per valutarlo: riduca a modulo n a un residuo non negativo, separi i fattori di due con (2/n) = (−1)^((n²−1)/8), e quando entrambe le parti dispari correnti sono 3 mod 4 inverta il segno a ogni scambio.

Quella procedura non fattorizza mai n e termina in un numero logaritmico di passi aritmetici, per questo i calcoli a mano e le implementazioni macchina condividono lo stesso algoritmo da manuale. I numeratori negativi sono ridotti al sistema di residui standard prima del ciclo, così (−1/n) segue automaticamente la legge supplementare (−1)^((n−1)/2).

Questa capacità rifiuta n pari e n minore di 1 perché il simbolo di Jacobi classico non è definito per quei denominatori; il simbolo di Kronecker estende la nozione ma è un altro strumento con un’altra intenzione di ricerca.

Limiti, prestazioni e dove si colloca

L’algoritmo di reciprocità esegue una quantità costante di aritmetica modulare per bit degli input, quindi il costo scala con la lunghezza in bit di n e non con una fattorizzazione per prova di n. I docenti lo usano per verificare calcoli manuali di (a/n) prima che gli studenti consegnino le dimostrazioni. Gli sviluppatori lo collegano a test di proprietà per impalcature in stile Solovay–Strassen, a risolutori di puzzle e CTF che necessitano di un carattere quadratico rapido, e a pipeline che non devono reimplementare la reciprocità in ogni linguaggio.

Controllare compiti e risposte di gara (a/n)

Studenti e coach possono verificare i calcoli del simbolo di Jacobi per reciprocità quadratica senza seguire a mano ogni cambio di segno né fidarsi di una calcolatrice che perde precisione intera.

Impalcare test di primalità e residualità

Script che necessitano di un passo Jacobi deterministico per demo Solovay–Strassen, controlli del criterio di Eulero o asserzioni di classi di residuo possono chiamare questo invece di spedire il proprio ciclo BigInt.

Cos’è il simbolo di Jacobi?

È una funzione a valori interi (a/n) per n positivo dispari che generalizza il simbolo di Legendre. Questo calcolatore restituisce −1, 0 o +1 come jacobi (e lo stesso valore come symbol).

(a/n)=1 significa che a è un quadrato mod n?

Non sempre. Se il simbolo è −1, a non è residuo quadratico mod n. Se è +1, a può ancora non essere un quadrato quando n è composto. Quando n è primo, Jacobi coincide con Legendre e +1 implica davvero un quadrato non nullo.

Come funziona il calcolatore del simbolo di Jacobi?

Usa la reciprocità quadratica su BigInt: riduce a mod n, elimina i fattori di 2 con la legge di (2/n), scambia con un cambio di segno quando entrambe le parti sono 3 mod 4, e termina quando la catena di resti arriva a 0.

Il calcolatore del simbolo di Jacobi è gratuito?

Lo strumento del browser è gratuito e gira in locale.

Quando il simbolo di Jacobi vale zero?

Vale zero quando a e n hanno un fattore comune maggiore di 1. Per esempio, (0/9) dà 0. In tutti gli altri casi il risultato è +1 oppure −1.

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/jacobi-symbol

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/jacobi-symbol \
  -H "Authorization: Bearer $KIT_KEY" \
  -H "Content-Type: application/json" \
  -d '{"a":"5","n":"13"}'
{
  "a": "5",
  "n": "13"
}
{
  "task_id": "tsk_a1b2c3d4e5f6a1b2c3d4e5f6",
  "type": "numth.jacobi_symbol",
  "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_digits2048
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.

Lo usi per compiti di teoria dei numeri, controlli di gara, impalcature di test di primalità e passi deterministici di API che richiedono (a/n) esatto senza virgola mobile né script ad hoc.

Come chiamare l’API e leggere il risultato

In caso di successo la risposta restituisce a e n come stringhe decimali normalizzate, jacobi come l’intero −1, 0 o 1, e symbol come lo stesso valore in stringa per i client che preferiscono campi di testo. Invii un corpo JSON con due campi obbligatori: a (il numeratore) e n (il denominatore positivo dispari). Ciascuno può essere una stringa di intero decimale o un numero JSON; preferisca le stringhe quando i valori superano l’intervallo sicuro di interi di JavaScript. Sono accettati gli alias numerator o top per a, e denominator, modulus o m per n, così moduli e client scritti a mano condividono un solo contratto. Controlli classici: a=5 e n=13 produce jacobi −1; a=2 e n=15 produce +1; a=1001 e n=9907 produce −1; a=0 e n=9 produce 0; a=1 e qualsiasi n dispari produce +1. Validazione fallita — campi mancanti, non interi, frazioni, n pari, n minore di 1, o valore più lungo del limite di cifre pubblicato — restituisce invalid_input e non viene mai addebitata. Il prezzo è un $0.002 fisso per richiesta riuscita (voce unitaria a prezzo marginale zero).

Limiti, prestazioni e dove si colloca

Questa capacità limita a e n a 2048 cifre decimali ciascuno — abbastanza per problemi di gara, demo crypto in aula e compiti multiprecisione — ma abbastanza piccolo da mantenere interattivo il BigInt puro in Worker. Se Le serve il simbolo di Kronecker per denominatori pari o zero, una libreria completa di reticoli di classi di residuo, o primitive crypto a tempo costante, usi uno stack multiprecisione dedicato; questo strumento leggero di parse è la calcolatrice e il passo API condivisi per la valutazione esatta di Jacobi. Lo abbini a strumenti di esponenziazione modulare o inversa quando un flusso richiede il kit modulare più ampio; questo endpoint risponde solo alla domanda di Jacobi così l’intento di ricerca resta chiaro e la risposta minima.

CTF, puzzle e pipeline di teoria dei numeri

Autori e risolutori di challenge che necessitano di (a/n) esatto per n dispari ottengono un’API stabile e uno strumento gratuito nel browser con lo stesso nucleo, con invalid_input chiaro quando n è pari.

Perché n deve essere dispari e almeno 1?

Il simbolo di Jacobi classico è definito solo per denominatori positivi dispari. n pari o minore di 1 restituisce invalid_input; usi uno strumento del simbolo di Kronecker se Le serve quell’estensione.

Leggi la documentazione completa del KIT →