• Aucun résultat trouvé

3 Loi de r´ eciprocit´ e quadratique

N/A
N/A
Protected

Academic year: 2022

Partager "3 Loi de r´ eciprocit´ e quadratique"

Copied!
6
0
0

Texte intégral

(1)

Lyc´ee Benjamin Franklin PTSI−2012-2013

D. Blotti`ere Maple

TP n˚2

Proc´ edures et loi de r´ eciprocit´ e quadratique

1

Plan 1. Proc´edures

2. Multiplication dansZ/NZ 3. Loi de r´eciprocit´e quadratique

Ce T.P. a deux objectifs.

1. Introduire les proc´edures, qui permettent de d´efinir de nouvelles fonctions Maple. Ces nouvelles fonctions (ou proc´edures donc) seront utiles pour d´ecouper un probl`eme complexe en un certain nombre de probl`emes plus ´el´ementaires, que l’on saura r´esoudre. Les proc´edures donnent, en outre, plus de lisibilit´e au code.

2. Faire un pas vers la loi de r´eciprocit´e quadratique, qui est un r´esultat substantiel de la th´eorie des nombres,

`

a l’aide de Maple. Cela nous offrira l’occasion de construire nombre de proc´edures et ainsi de nous entraˆıner.

1 Proc´ edures

D´efinition 1 (Proc´edure)

Une proc´edure Maple peut ˆetre vue comme un analogue d’une fonction math´ematique. On peut, dans un premier temps, voir une proc´edure comme un programme Maple qui, `a partir de valeurs donn´ees (arguments), retourne une unique valeur (valeur de sortie).

arguments // Proc´edure //valeur de sortie

La syntaxe g´en´erale d’une proc´edure Maple est la suivante.

proc(arg1, . . . , argn) #arg1, . . . , argn sont les arguments de la proc´edure localvar1, . . . , varm; #var1, . . . , varmsont des variables ”auxiliaires”

instruction 1 ; instruction 2 ; . . .

instructionp;

return(valeur de sortie) ; end ;

Remarque 1

1. Les variables locales, i.e. d´efinies avec local, ne sont cr´e´ees que pour le corps de la proc´edure (on parle d’existence locale). Hors du corps de la proc´edure, les valeurs des variables locales ne sont pas accessibles.

2. La d´efinition de proc´edure donn´ee ci-dessus mentionne des arguments, des variables locales et une valeur de sortie. Signalons qu’une proc´edure peut avoir n’aucun argument, n’utiliser aucune variable locale ou n’avoir aucune valeur de sortie.

1. Cf. conf´erence de J.-B. Bost intitul´eeLe travail du math´ematicien, donn´ee le 22 novembre 2012.

(2)

Exemple 1

Ci-dessous, on donne le code d’une proc´edure, nomm´eesomme, qui a deux argumentsa etb (que l’on suppose ˆetre des nombres) et qui renvoie la sommea+b. En elle-mˆeme, cette proc´edure a un int´erˆet discutable, mais elle pr´esente l’avantage d’ˆetre simple `a comprendre.

somme:=proc(a,b) locals; s:=a+b; return(s) ; end ;

Saisir ce code. `A ce moment, on dispose d’une nouvelle fonction Maple (somme) que l’on peut appeler/ex´ecuter comme suit.

somme(12,9) ;

Remarque 2

Apr`es avoir d´efini une proc´edure, on veillera toujours `a la tester en choisissant des valeurs pertinentes.

Exercice 1

En s’inspirant de la proc´eduresomme, ´ecrire une proc´edure, nomm´eesomme bis, r´ealisant la mˆeme tˆache que somme, mais n’utilisant pas de variable locale.

Exercice 2

Sin est une variable contenant un entier, l’instruction

nmod 2 ;

retourne la valeur du reste de la division euclidienne denpar 2, i.e.

0 sinest pair (i.e. divisible par 2) ;

1 sinest impair.

A l’aide de la commande mod (pour modulo), ´ecrire une proc´edure nomm´ee` is paird’argument un entiernqui retourne 1 si l’entier nest pair et 0 sinon.

Exercice 3

Voici le code d’une proc´edure Maple.

somme entiers:=proc(n) locals, k;

s:=0 ; k:=1 ;

while (k <=n) do s:=s+k; k:=k+ 1 ; od ;

return(s) ; end ;

(3)

1. Saisir ce code.

2. Que fait la proc´eduresomme entiers? On pr´ecisera l’ensemble o`u est implicitement suppos´e vivre l’argu- mentn.

3. Tester la proc´eduresomme entierssur les valeurs 0,1,2,3,4 pour v´erifier la r´eponse `a la question 2.

4. ´Ecrire une proc´edure somme cubesd’argumentn (suppos´e ˆetre un entier naturel non nul) et retournant la valeur de la somme

13+ 23+. . .+n3=

n

X

k=1

k3. 5. Saisir le code Maple suivant :

a:= 123 ;

printf(”La valeur de la derni`ere variable affect´ee est a.”) ; printf(”La valeur de la derni`ere variable affect´ee est %d.”,a) ;

et commenter.

6. `A l’aide des deux proc´edures somme entiers, somme cubes et d’une boucle for, ´ecrire un code Maple testant la validit´e de l’´egalit´e

(∗) 13+ 23+. . .+n3= (1 + 2 +. . .+n)2 pour tous les entiers n∈J1,20K.

Pour chaque rang n∈J1,20K, on souhaite obtenir l’affichage :

L’identit´e (*) est v´erifi´ee au rang n.

si l’´egalit´e est v´erifi´ee et l’affichage :

L’identit´e (*) n’est pas v´erifi´ee au rangn.

dans le cas contraire, o`unest remplac´e par sa valeur.

Remarque 3

On a d´emontr´e (par r´ecurrence) dans le chapitre 1 du cours (cf. exemple 22) que pour toutn∈N :

n

X

k=1

k= n(n+ 1)

2 .

D’autre part, dans l’exercice 18, on a ´etabli (par r´ecurrence) que pour toutn∈N :

n

X

k=1

k3=

n(n+ 1) 2

2 .

L’identit´e (*) que l’on a simplement v´erifi´ee avec Maple pourn∈J1,20Kest donc en fait vraie pour toutn∈N. Exercice 4

Ecrire une proc´edure nomm´ee´ f actorielle d’argument un entier naturel n (´eventuellement nul donc) qui re- tourne la valeur den!.

2 Multiplication dans Z /N Z

SoitN ∈N fix´e.

D´efinition 2 (Ensemble Z/NZ) On note

Z/NZ={0,1,2,3, . . . , N−1}

des N restes possibles pour la division d’un entier parN.

(4)

D´efinition 3 (Notation a) Sia est un entier, alors on note

a∈Z/NZ le reste de la division euclidienne dea parN.

D´efinition 4 (Multiplication dans Z/NZ) 1. Soienta, b∈Z/NZ.

(a) On d´efinit a×b par :

a×b=a×b∈Z/NZ o`u×r´ef`ere `a la multiplication usuelle des entiers.

(b) Le nombrea×bs’obtient en calculant d’abord a×b (mutliplication usuelle d’entiers), puis en prenant le reste de a×b dans sa division euclidienne parN.

2. On dit que l’on multiplie moduloN, lorsque l’on utilise×dansZ/NZ. Exemple 2

On suppose ici queN = 3. On travaille donc modulo 3.

La table de multiplication (pour ×) deZ/3Z={0,1,2}est donc la suivante.

× 0 1 2

0 0 0 0

1 0 1 2

2 0 2 1

On a plac´e 1 (= 2×2) dans la case en bas `a droite car2×2 = 4et 4 a pour reste 1 dans sa division euclidienne par 3.

Exercice 5

On suppose ici queN = 5. On calcule donc modulo 5.

Calculer ”`a la main” (i.e. sans l’aide de Maple) les nombres suivants

2×2 ; 2×3 ; 3×3.

Exercice 6

Ecrire une proc´edure nomm´ee´ mult mod d’argument(a, b, N)o`u N est un entier naturel non nul ;

aetb sont deux ´el´ements deZ/NZ;

qui renvoie la valeur de a×b dansZ/NZ(on calcule donc modulo N).

Exercice 7

On suppose ici queN = 7. On travaille donc modulo 7.

En utilisant une boucle for (voire des boucles for) et la proc´edure mult mod construite dans l’exercice 6, compl´eter la table de multiplication de (pour×) deZ/7Z={0,1,2,3,4,5,6}.

(5)

× 0 1 2 3 4 5 6

0

1

2

3

4

5

6

D´efinition 5

On dit qu’un ´el´ement entier nest un carr´e moduloN s’il existea∈Z/NZtel que : a×a=n.

Exemple 3

Ici on suppose `a nouveau queN = 7. On travaille donc modulo 7.

1. Le nombre 23 est un carr´e modulo 7.

En effet

23 = 2 et

2 = 3×3.

2. Le nombre 10 n’est pas un carr´e modulo 7. En effet, 10 = 3

et 3 n’apparaˆıt pas sur la diagonale de la table de multiplication de Z/7Zdress´ee `a l’exercice 7.

Exercice 8

Ecrire une proc´edure nomm´ee´ square mod d’argument(a, N)o`u N est un entier naturel non nul ;

aest un ´el´ement deZ/NZ;

qui renvoie la valeur de a×a dans Z/NZ (on calcule donc modulo N). On pourra s’inspirer de la proc´edure mult modconstruite `a l’exercice 6.

D´efinition 6 (Symbole de Legendre)

Soit nun nombre entier. On d´efinit le symbole de Legendre n N

par :

n N

=

0 siN divise n ;

1 siN ne divise pasnet si nest un carr´e moduloN ;

−1 siN ne divise pasnet si nn’est pas un carr´e modulo N .

(6)

Remarque 4

Dans le cas o`u nne divise pasN, le symbole de Legendren N

encode donc le fait quensoit ou non un carr´e modulo N.

Exercice 9

Ecrire une proc´edure nomm´ee´ symbole legendre d’argument(n, N)o`u N est un entier naturel non nul ;

nest un entier ;

qui renvoie la valeur du symbole de Legendren N

.

3 Loi de r´ eciprocit´ e quadratique

D´efinition 7 (Nombre premier) Un entier naturelpest dit premier si :

p≥2;

pne poss`ede pas d’autres diviseurs entiers naturels que 1 et lui-mˆeme.

Exemple 4

1. Les nombres2,3,5,7,11,13sont des nombres premiers.

2. Le nombre 51 n’est pas premier (3 est un entier naturel qui divise 51 et 3 est diff´erent de 1 et 51 ( !)).

Remarque 5

Le caract`ere premier d’un nombre peut ˆetre test´e avec la commande Maple isprime.

Exercice 10

A l’aide de Maple, d´eterminer si le nombre` 123457 est ou non premier.

On examine `a pr´esent la question suivante.

Sipetqsont deux nombres premiers impairs distincts, alors y a-t-il un lien entre les propri´et´es

pest un carr´e moduloq et q est un carr´e modulop ?

Il s’agit d’une question d´elicate, qui admet n´eanmoins une r´eponse positive et pr´ecise, donn´ee par le th´eor`eme suivant.

Th´eor`eme 1 (Loi de r´eciprocit´e quadratique)

Soientpetq des nombres premiers impairs distincts. On a : p

q q p

= (−1)(p−1)(q−1)4 .

La loi de r´eciprocit´e quadratique2 a ´et´e conjectur´ee par Euler et Legendre et d´emontr´ee par Gauß (1801).

Il s’agit d’un r´esultat profond, dont nous ne discuterons pas la preuve. On se propose simplement de le v´erifier num´eriquement sur un certain nombre d’exemples.

Exercice 11

V´erifier la validit´e de la loi de r´eciprocit´e quadratique dans les cas suivants.

p= 13 etq= 83 ; p= 17etq= 127 ; p= 33331etq= 131071

On v´erifiera que tous ces nombres sont bien premiers et on pourra utiliser la proc´edure symbole legendre construite dans l’exercice 9.

2. On a ici donn´e une version partielle de la loi de r´eciprocit´e quadratique. Par exemple, on a aussi un r´esultat lorsquep= 2 et

Références

Documents relatifs

[r]

On recommence ainsi pour tous les facteurs premiers de N distincts de p, et on obtient finalement que le quotient de N par N p est de la forme

[r]

On recommence ainsi pour tous les facteurs premiers de N distincts de p, et on obtient finalement que le quotient de N par N p est de la forme

[r]

Les donn´ ees envoy´ ees sont des donn´ ees r´ eelles, repr´ esentant les volumes au bid ou ` a l’ask dans un carnet d’ordre d’actions observ´ e durant une journ´ ee.. 1

s’inspirant des vertus décrites par Aristote dans Ethique à Nicomaque 65 que Nussbaum établit huit ‘sphères d’expérience humaines essentielles’ : la mortalité, le corps,

, constitue un d´ eveloppement d’arithm´ etique ni particuli` erement original ni d’un niveau particuli` erement ´ elev´ e, mais tout ` a fait envisageable pour des candidats