Académique Documents
Professionnel Documents
Culture Documents
[Ireland et Rosen] Le but de ce chapitre est de donner une méthode efficace permettant de
dire si un élément de Z/pZ est un carré ou non dans Z/pZ pour p premier impair.
p−1
En fait, on a déjà vu qu’un élément non nul a ∈ Z/pZ est un carré ssi a 2 = 1 (Corollaire
I.35). Mais si on peut se poser la question à l’envers : étant donné a ∈ Z, pour quels nombres
premiers p est-ce que a est un carré modulo p. La réponse est plus difficile et c’est ce dont traite
ce chapitre.
a a
Puisque p ne dépend que de la classe de a dans Z/pZ, on peut aussi définir p pour
a ∈ Z/pZ.
p−1
a
Lemme VI.2. Si p est un nombre premier impair, alors pour tout a ∈ Z/pZ, p =a 2 dans
Z/pZ.
Remarque
VI.3. si p = 2, c’est pas bien dur de savoir si a est un carré, c’est toujours le cas.
Donc a2 vaut 0 ou 1 selon que a est pair ou impair.
Théorème VI.6 (Th principal : Lois de réciprocité quadratiques). Soient p, q ∈ N deux nombres
premiers impairs.
p−1
1. −1p = (−1) 2 pour p premier impair, (i.e. vaut 1 si p = 1 mod 4 et −1 sinon)
p2 −1
2. p2 = (−1) 8 pour p premier impair (i.e. vaut 1 si p = ±1 mod 8 et −1 sinon).
79
p−1 q−1
3. pour p, q impairs : pq = (−1)( 2 )( 2 ) pq i.e. les signes sont les mêmes sauf si p ET q
sont égaux a −1 mod 4.
Les 2 premières assertions s’appellent les lois complémentaires. Elles complètent la 3ème qui
ne marche que si p, q sont impairs (et positifs). On a déjà vu la preuve de la première.
C’est un peu magique (au sens ou il n’y a pas de raison claire pour que ça soit vrai). Tellement
magique que les mathématiciens en ont proposé de très nombreuses preuves (plus de 200). Gauss
en a donné 8.
Remarque VI.8. Le symbole de Jacobi n’est pas défini si n < 0, ou si n pair. On peut étendre
la définition pour tout n ∈ Z pour garder les propriétés intéressantes. Ça s’appelle le symbole
de Kronecker, mais ses propriétés sont un peu plus compliquées. En sage, on a la commande
kronecker(a,n).
Remarque VI.9. On n’utilise quasiment jamais cette def pour calculer le symbole de Jacobi. Cf
algorithme de calcul plus bas.
Remarque VI.10. ATTENTION ! ! Le symbole de Jacobi NE DIT PAS SI a est un carré mod n,
sauf si n est premier ! ! ! 2 2
Soit a premier a n. Si a est un carré mod n et, alors na = bn = na = 1. Mais la
— ab a
b
n = n n
80
p−1
a
Pour le troisième point, on utilise que pour p premier, p = (a) 2 qui est donc multiplicatif.
Preuve. Pour les 2 premiers, ça découle immédiatement de la loi de réciprocité quadratique
pour un nombre
Q αi premier, avec le fait que ε et ω sont multiplicatives. Explicitement pour la
1ère : n = pi ,
−1
def Y −1 αi loirecip Y αi
Y α
n = pi = ε(p i ) = ε( pi i ) = ε(n).
n−1 m−1
Pour la 3ème, on a (−1) 2 2 = ε(n) m d’apres la 1ère loi. La 3ème loi s’écrit donc
ε(m)m n
n = m . On sait qu’elle est vraie pour chaque facteur premier de n ou m. Tout est
multiplicatif d’où le résultat.
Q β
Détails : n = pαi i , m = qj j .
Q
Ceci permet donc de savoir rapidement si un entier est un carré mod p (pour p un nombre
premier).
Un exemple vaut mieux qu’un long discours : on veut savoir si 202 est un carré modulo 257.
202 2 −9 −1
101 257
55
101
257 = 257 257 = 101 = 101 = 55 = 55 = 55 = −1
81
VI.3 Preuves de la réciprocité quadratique
VI.3.a Preuve de la la 2ème loi complémentaire.
√ √
Preuve. Si on cherche à écrire 2 à partir de racines de l’unité, vu que cos(45o ) = 22 , on va
√ √
pouvoir écrire 2 en termes de ζ = eiπ/4 : 2 = ζ + 1/ζ. Autrement dit 2 = (ζ + ζ −1 )2 . En
fait, cette égalité est vrai dans n’importe quel corps dès que ζ est une racine primitive 8-ème de
l’unité i.e. ζ 4 = −1. En effet, on a alors ζ 2 = −ζ −2 , donc (ζ + ζ −1 )2 = ζ 2 + ζ −2 + 2 = 2.
Prenons donc K une extension finie de Fp dans lequel on peut trouver un tel ζ. Pour savoir
si 2 est un carré dans Fp , on veut savoir si l’élément α = ζ + ζ −1 appartient à Fp : si α ∈ Fp ,
c’est que 2 est un carré dans Fp puisque α2 = 2. Si α ∈ / Fp , alors 2 n’a pas de racine carrée dans
Fp puisque ses 2 racines carrées dans K sont ±α.
i.e. s’il est fixe par le Frobénius, c’est à dire si αp = α i.e. (ζ + ζ −1 )p = ζ + ζ −1 . Mais
(ζ + ζ −1 )p = ζ p + ζ −p (c’est le Frobénius), donc ζ + ζ −1 appartient à Fp si et seulement si
ζ + ζ −1 = ζ p + ζ −p .
Puisque ζ est d’ordre 8, ceci ne dépend que de p mod 8. Comme p est impair, p = 1, 3, 5, 7
mod 8. Notons aussi que si on change p en −p mod 8, la valeur de ζ p + ζ −p est inchangée.
Si p = ±1 mod 8, on a clairement l’égalité, et 2 est donc un carré dans Fp . Si p = 3 mod 8,
puisque ζ 3 = −ζ, α3 = ζ 3 + ζ −3 = −α donc α ∈ / Fp et 2 n’est pas un carré dans Fp (idem si
p = −3).
√
Remarque VI.15. Pourquoi exprimer 2 en termes de racines de l’unité était utile ? Puisqu’on
l’a exprimé en terme de racines 8-èmes de 1, la condition d’être point fixe du Frobénius s’exprime
en fonction de la classe de p mod 8.
82
p−1
p−1 p−1
q
, et puisque pq = q 2 = (q 2 )q , (puisque q
Q
Reste a voir que i̸=j (xi − xj ) =
2
p
p−1
q
Q
impair et que q 2 = ±1), il suffit de voir que i̸=j (xi − xj ) = q .
Ca peut
Q se faire avec la notion de discriminant,
Q ′ ou à la main, comme Q ici. On considère
f (X) = i (X −xi ) et on calcule de 2 facons i f (xi ). On a d’abord f (X) = i (X −xi ) = X q −1
puisqueQ xi ′ parcourtqtoutes les racines q-ièmes de l’unité, donc f ′ (X) = qX q−1 , etQf ′ (xi ) = qxiq−1
donc Q i f (xi ) = q ( i xi )q−1 . D’après
Q
Q ′les relations coefficients/racines de f , i (−xi ) = −1,
donc i xi = −1.(−1)q = +1, donc i P f (xQ i) = q .
q
′ (X) = ′ (x ) =
Q
Q ′ D’autre part, on dérive f i j̸ = i (X − x j ), et f i 0 j̸=i0 (xi0 − xj ), donc
q
Q Q
i f (xi ) = i̸=j (xi − xj ). Ceci conclut que i̸=j (xi − xj ) = q .
Définition VI.16. Soit p un nombre premier impair, et soit ζ une racine primitive p-ième de
l’unité dans le corps C (ou dans un corps K quelconque).
On appelle somme quadratique de Gauss le nombre complexe (ou élément de K)
X X p−1
X
τζ = i
p ζi = i
p ζi = i
p ζ i.
i∈Z/pZ i∈(Z/pZ)× i=1
Preuve. C’est facile : écrire la somme et faire le changement d’indice i′ = ai dans Z/pZ× :
X X X ′ ′
i ai a ai ai a i i a
τζ a = p ζ = p p ζ = p p ζ = p τζ .
i∈(Z/pZ)× i∈(Z/pZ)× i′ ∈(Z/pZ)×
On verra la preuve après. Montrons la réciprocité quadratique à partir des deux propriétés.
41. Sur C, on a τζ = τζ = τζ −1 = −1 p
τζ . Donc τζ est réel ou imaginaire pur selon le signe de −1
p
. Il reste
donc à calculer le module carré i.e. τζ τζ .
83
Preuve de la loi
de réciprocité quadratique
(Th VI.6 (iii)) en admettant le Lemme VI.18. On veut
p−1 q−1
p q
montrer que q = (−1) 2 2
p . Note : pour appliquer le lemme 2, il faut savoir que
p − 1 ̸= 0[q]. C’est OK si p < q, ce qu’on peut supposer quitte à échanger les rôles de p et
q (la 3ème loi deréciprocité
est symétrique en p et q).
q−1
p
On sait que q = p 2 mod q. Donc on se place dans un corps fini de caracteristique q,
q−1 q−1
et on veut calculer p 2 = ±1. On veut donc connaı̂tre le signe de p 2 , et informellement, ceci
√
revient à calculer le signe de pq−1 si on a une racine de p sous la main.
On se place dans une extension finie de Fq ayant une racine primitive p-ième de l’unité ζ, et
√
le rôle de p est τζ ,(c’est une racine carrée de ±p, Lemme VI.18).
ce qui va jouer
q−1 q−1 p−1 q−1
On a p
q =p 2
−1
p τζ2 ) 2 = (−1) 2 2 τζq−1 .
=(V I.18) (
Mais par ailleurs, on a (τζ )q−1 = τζ−1 τζq , et l’élévation à la puissance q étant le Frobénius,
P
τζq =(F robenius) i pi ζ qi =def τζ q =(V I.17) pq τζ , donc (τζ )q−1 = pq .
p−1 q−1
Donc pq = (−1) 2 2 pq .
−1
Preuve du calcul de la somme de Gauss (Lemme VI.18). L’égalité τζ2 = p p est équivalente
à τζ τζ −1 = p (d’après lemme VI.17). Mais pour tout a ∈ Z/pZ× , on a τζ a τζ −a = ap τζ ap τζ −1 =
τζ τζ −1 ). Donc on somme tout ca :
X
(p − 1)τζ τζ −1 = τζ a τζ −a
a∈Z/pZ×
! !
X X X
i ai j −aj
= p ζ p ζ
a∈Z/pZ× i∈(Z/pZ)× j∈(Z/pZ)×
X X X X X ij X
ij
= p ζ a(i−j) = p ζ a(i−j) .
a∈(Z/pZ)× i∈(Z/pZ)× j∈(Z/pZ)× i j a∈(Z/pZ)×
Maintenant, i, j étant fixes, la somme a∈(Z/pZ)× ζ a(i−j) vaut p − 1 si i = j, et vaut (en posant
P
′
a′ = a(i − j), qui décrit Z/pZ× ), a′ ∈(Z/pZ)× ζ a = −1 car c’est la somme des racines primitives
P
p-ièmes de l’unité, c’est à dire de l’ensemble des solutions de X p−1 +X p−2 +...+1 donc la somme
fait −1 (relations coefficients-racines) 42 . On obtient
X ij
(p − 1)τζ τζ −1 = p (pδij − 1)
i,j
X 2 X X X
i ij k
=p p − p = p(p − 1) − p = p(p − 1)
i=j∈(Z/pZ)× i,j∈(Z/pZ)× i k∈(Z/pZ)×
P k
puisque k = ij décrit Z/pZ× pour tout i fixe, et que k p = 0 puisque la moitié des éléments
de Z/pZ× sont des carrés et l’autre pas. En simplifiant par p − 1 (puisque p − 1 ̸= 0 dans K),
on a le résultat.
42. on peut aussi dire qu’en rajoutant la racine p-ième qui manque, i.e. 1, la somme devient nulle
84
Preuve. Le premier point est déjà vu : c’est le calcul du symbole de Legendre via l’exponentiation.
n−1
Pour le 2ème point : supposons na = a 2 (mod n) pour tout a premier a n. En particulier,
n−1
puisque a 2 = ±1 (mod n), an−1 = 1 (mod n) pour tout a. n est donc un nombre de Carmi-
chael. On a vu en TD que n est sans facteur carré : n = p1 . . . pr . Il s’agit de voir que r = 1. On
suppose donc r ≥ 2.
Notons ai la classe de a mod pi , i.e. a 7→ (a1 , . . . , ar ) par l’ isomorphisme chinois. Notre
hypothèse dit que
n−1 n−1
(a1 2 , . . . , ar 2 ) = na (1, 1, . . . , 1).
Q
Mais d’autre part, par définition du symbole de Jabobi, na = i pai donc
n−1 n−1
a1 ar
(a1 2 , . . . , ar 2 ) = p1 ... pr (1, 1, . . . , 1).
Prenons a1 qui n’est pas un carré dans Z/p1 Z (ça existe car p1 premier impair), et a2 =
n−1
· · · = ar = 1, donc en particulier ap11 . . . aprr = −1. On obtient : (a1 2 , 1, 1, 1, 1, 1) =
(−1, −1, −1, −1, −1), contradiction.
Définition VI.20. Soit n > 2 impair. On dit que a ∈ J1, n − 1K est un témoin de Solovay-Strassen
n−1
de la non primalité de n si na = 0 (i.e. si a ∧ n ̸= 1) ou si na =
̸ a 2 (mod n).
n−1
Lemme VI.21. L’ensemble des a ∈ Z/nZ × tq na = a 2 (mod n) (i.e. des non-temoins in-
versibles) est un sous-groupe de Z/nZ × . Si n n’est pas premier, il a donc au moins (n − 1)/2
témoins de Solovay-Strassen parmi {1, . . . , n − 1}.
n−1
Preuve. C’est un sous-groupe car a 7→ na et a 7→ a 2 sont deux morphismes de groupes a
valeurs dans Z/nZ × . Si n n’est pas premier, l’ensemble des non-témoins est un sous-groupe
propre de Z/nZ × , donc de cardinal au plus φ(n)/2 ≤ (n − 1)/2.
Corollaire VI.22. Test de primalité : prendre k nombres ai au hasard dans {1, . . . n − 1}. Si
n−1
ai
n ̸= ai
2
(mod n), pour un certain i : dire n n’est pas premier. Sinon, dire n est probablement
premier avec proba de se tromper ≤ 1/2k .
85