Symbol Jacobiego – uogólnienie symbolu Legendre’a na liczby nieparzyste niekoniecznie pierwsze:
jeśli rozkład na czynniki pierwsze to to symbol Jacobiego jest równy przez symbol Legendre’a:
Można zauważyć, że jeśli jest pierwsze, symbol Jacobiego jest równy symbolowi Legendre’a.
Choć w definicji symbolu Jacobiego występuje faktoryzacja, istnieje jednak szybki algorytm obliczania go bez użycia faktoryzacji. Zauważmy, że ( nieparzyste):
Na podstawie tego wzoru można zbudować rekurencyjny algorytm (wszystkie dzielenia i reszty modulo z wyjątkiem to w rzeczywistości proste operacje bitowe):
Symbol-Jacobiego(a,n)
if even(n)
throw Błąd
if a == 0
return 0
if a == 1
return 1
x = 0
y = a
while even(y)
y = y / 2
x = x + 1
if odd(x) and (n mod 8 == 3 or n mod 8 == 5)
wynik = -1
else
wynik = 1
if n mod 4 == 3 and y mod 4 == 3
wynik = -wynik
if y == 1
return wynik
else
return wynik * Symbol-Jacobiego(n mod y, y)