Legendre symbol #
This file contains results about Legendre symbols.
We define the Legendre symbol $\Bigl(\frac{a}{p}\Bigr)$ as legendreSym p a.
Note the order of arguments! The advantage of this form is that then legendreSym p
is a multiplicative map.
The Legendre symbol is used to define the Jacobi symbol, jacobiSym a b, for integers a
and (odd) natural numbers b, which extends the Legendre symbol.
Main results #
We also prove the supplementary laws that give conditions for when -1
is a square modulo a prime p:
legendreSym.at_neg_one and ZMod.exists_sq_eq_neg_one_iff for -1.
See NumberTheory.LegendreSymbol.QuadraticReciprocity for the conditions when 2 and -2
are squares:
legendreSym.at_two and ZMod.exists_sq_eq_two_iff for 2,
legendreSym.at_neg_two and ZMod.exists_sq_eq_neg_two_iff for -2.
Tags #
quadratic residue, quadratic nonresidue, Legendre symbol
Definition of the Legendre symbol and basic properties #
The Legendre symbol of a : ℤ and a prime p, legendreSym p a,
is an integer defined as
0ifais0modulop;1ifais a nonzero square modulop-1otherwise.
Note the order of the arguments! The advantage of the order chosen here is
that legendreSym p is a multiplicative function ℤ → ℤ.
Equations
- legendreSym p a = (quadraticChar (ZMod p)) ↑a
Instances For
We have the congruence legendreSym p a ≡ a ^ (p / 2) mod p.
If p ∤ a, then legendreSym p a is 1 or -1.
The Legendre symbol of p and a is zero iff p ∣ a.
The Legendre symbol is multiplicative in a for p fixed.
The Legendre symbol is a homomorphism of monoids with zero.
Equations
- legendreSym.hom p = { toZeroHom := { toFun := legendreSym p, map_zero' := ⋯ }, map_one' := ⋯, map_mul' := ⋯ }
Instances For
The square of the symbol is 1 if p ∤ a.
The Legendre symbol of a^2 at p is 1 if p ∤ a.
The Legendre symbol depends only on a mod p.
When p ∤ a, then legendreSym p a = 1 iff a is a square mod p.
legendreSym p a = -1 iff a is a nonsquare mod p.
The number of square roots of a modulo p is determined by the Legendre symbol.
Applications to binary quadratic forms #
The Legendre symbol legendreSym p a = 1 if there is a solution in ℤ/pℤ
of the equation x^2 - a*y^2 = 0 with y ≠ 0.
The Legendre symbol legendreSym p a = 1 if there is a solution in ℤ/pℤ
of the equation x^2 - a*y^2 = 0 with x ≠ 0.
The value of the Legendre symbol at -1 #
See jacobiSym.at_neg_one for the corresponding statement for the Jacobi symbol.
legendreSym p (-1) is given by χ₄ p.