You are on page 1of 244

Cuprins

Notat ii 9
1 Numere ntregi 11
1.1 Divizibilitate n N . . . . . . . . . . . . . . . . . . . . . . 11
1.2 Relat ia de divizibilitate pe Z . . . . . . . . . . . . . . . . 13
1.3 Teorema fundamentala a aritmeticii . . . . . . . . . . . . 20
1.4 Numere prime . . . . . . . . . . . . . . . . . . . . . . . . . 23
1.5 Numere Fermat . . . . . . . . . . . . . . . . . . . . . . . . 27
1.6 Ecuat ii liniare diofantice . . . . . . . . . . . . . . . . . . . 30
2 Fract ii continue 33
2.1 Fract ii continue nite . . . . . . . . . . . . . . . . . . . . . 33
2.2 Fract ii continue innite . . . . . . . . . . . . . . . . . . . 38
2.3 Fract ii continue periodice . . . . . . . . . . . . . . . . . . 43
3 Congruent e 57
3.1 Not iuni generale . . . . . . . . . . . . . . . . . . . . . . . 57
3.2 Congruent e liniare . . . . . . . . . . . . . . . . . . . . . . 60
3.3 Sisteme de congruent e . . . . . . . . . . . . . . . . . . . . 63
3.4 Congruent e speciale . . . . . . . . . . . . . . . . . . . . . 68
3.4.1 Teorema Wilson . . . . . . . . . . . . . . . . . . . 68
3.4.2 Mica Teorema a lui Fermat . . . . . . . . . . . . . 69
3.4.3 Teorema lui Euler . . . . . . . . . . . . . . . . . . 70
4 Funct ii multiplicative 73
4.1 Funct ia Euler . . . . . . . . . . . . . . . . . . . . . . . . . 73
5
6 CUPRINS
4.2 Funct iile si . . . . . . . . . . . . . . . . . . . . . . . . 76
4.3 Numere perfecte . . . . . . . . . . . . . . . . . . . . . . . 77
4.4 Numere Mersenne . . . . . . . . . . . . . . . . . . . . . . 78
5 Prime aplicat ii ale congruent elor 81
5.1 Factorizarea unor numere de forma particulara . . . . . . 81
5.2 Teste de divizibilitate . . . . . . . . . . . . . . . . . . . . 83
5.3 Calendarul . . . . . . . . . . . . . . . . . . . . . . . . . . 85
5.4 Programarea unui turneu . . . . . . . . . . . . . . . . . . 90
6 Radacini primitive 93
6.1 Ordinul unui numar ntreg . . . . . . . . . . . . . . . . . . 93
6.2 Existent a radacinilor primitive . . . . . . . . . . . . . . . 95
6.3 Index aritmetic . . . . . . . . . . . . . . . . . . . . . . . . 102
6.4 Exponent i universali . . . . . . . . . . . . . . . . . . . . . 105
7 Reciprocitate patratica 113
7.1 Simbolul Legendre . . . . . . . . . . . . . . . . . . . . . . 114
7.2 Legea reciprocitat ii patratice . . . . . . . . . . . . . . . . 120
7.3 Simbolul Jacobi . . . . . . . . . . . . . . . . . . . . . . . . 125
8 Criptograe cu cheie secreta 133
8.1 Cifrari ux (binar) . . . . . . . . . . . . . . . . . . . . . . 136
8.2 Criptosisteme caracter . . . . . . . . . . . . . . . . . . . . 136
8.3 Criptosisteme bloc . . . . . . . . . . . . . . . . . . . . . . 139
8.4 Criptare exponent iala . . . . . . . . . . . . . . . . . . . . 142
8.5 DES . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 144
9 Criptograe cu cheie publica 147
9.1 RSA . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 150
9.2 Criptosisteme bazate pe DLP . . . . . . . . . . . . . . . . 154
9.3 Criptosisteme knapsack . . . . . . . . . . . . . . . . . . . 156
9.4 Semnatura digitala . . . . . . . . . . . . . . . . . . . . . . 159
9.5

Impart irea secretelor . . . . . . . . . . . . . . . . . . . . . 162
10 Teste de primalitate 167
10.1 Ciurul lui Eratostene . . . . . . . . . . . . . . . . . . . . . 168
10.2 Cautare de divizori prin ncercari . . . . . . . . . . . . . . 168
10.3 Teste n-1. Testul Pepin . . . . . . . . . . . . . . . . . . . 169
CUPRINS 7
10.4 Teste n+1. Testul Lucas-Lehmer . . . . . . . . . . . . . . 171
10.5 Testul Fermat . . . . . . . . . . . . . . . . . . . . . . . . . 176
10.6 Testul Solovay-Strassen . . . . . . . . . . . . . . . . . . . 180
10.7 Testul Miller-Rabin . . . . . . . . . . . . . . . . . . . . . . 185
10.8 Primalitate folosind curbele eliptice . . . . . . . . . . . . . 195
10.9 Algoritmul AKS . . . . . . . . . . . . . . . . . . . . . . . 196
11 Problema factorizarii 199
11.1 Factorizare prin cautare directa . . . . . . . . . . . . . . . 200
11.2 Metoda Fermat . . . . . . . . . . . . . . . . . . . . . . . . 200
11.3 Metoda Euler . . . . . . . . . . . . . . . . . . . . . . . . . 202
11.4 Metoda Pollard-rho . . . . . . . . . . . . . . . . . . . . . . 202
11.5 Metoda Pollard p-1 . . . . . . . . . . . . . . . . . . . . . . 205
11.6 Factorizare folosind curbele eliptice . . . . . . . . . . . . . 206
11.7 Metoda bazei factor . . . . . . . . . . . . . . . . . . . . . 207
11.8 Metoda fract iilor continue . . . . . . . . . . . . . . . . . . 209
11.9 Metoda ltrului patratic . . . . . . . . . . . . . . . . . . . 213
11.10Filtrul corpului de numere . . . . . . . . . . . . . . . . . . 215
12 Problema logaritmului discret 217
12.1 Algoritmul Shanks . . . . . . . . . . . . . . . . . . . . . . 218
12.2 Algoritmul Pohlig-Hellman . . . . . . . . . . . . . . . . . 220
12.3 Algoritmul Pollard rho . . . . . . . . . . . . . . . . . . . . 222
12.4 Algoritmul index-calculus . . . . . . . . . . . . . . . . . . 226
13 Radacini patrate 229
13.1 Radacini patrate mod p . . . . . . . . . . . . . . . . . . . 230
13.2 Radacini patrate mod n . . . . . . . . . . . . . . . . . . . 233
A Numere prime Mersene 237
B Numere pseudoprime 239
Bibliograe 241
Index 243
8 CUPRINS
Notat ii
a [ b a divide b
a b a este asociat n divizibilitate cu b
(a, b) cel mai mare divizor comun pentru a si b
[a, b] cel mai mic multiplu comun pentru a si b
Z[i] inelul ntregilor lui Gauss
(f
n
)
n0
sirul lui Fibonacci
p

|n p

este cea mai mare putere a lui p care


divide n
ord
p
n ordinul lui n la p
p
n
al nlea numar prim
(x) numarul numerelor prime x, x > 0
F
n
numar Fermat
[x] partea ntreaga a numarului x
[a
0
; a
1
, . . . , a
n
] fract ie continua
p
k
q
k
kconvergenta unei fract ii continue
a b (mod n) a este congruent cu b modulo n
a (mod n) inversul lui a modulo n
funct ia lui Euler
(n) suma divizorilor pozitivi ai lui n
(n) numarul divizorilor pozitivi ai lui n
M
n
numar Mersenne
ord
n
a ordinul lui a mod n
ind
r
a (mod n) indicele aritmetic al lui a relativ la r
modulo n
(n) exponent universal minimal al lui n

0
(n) 1exponent maximal al lui n
9
10 CUPRINS
_
a
n
_
simbol Legendre sau Jacobi
/ alfabet de denit ie
/ spat iul de mesaje
( spat iul textului cifrat
/ spat iul cheilor
E
e
funct ie de criptare
D
d
funct ie de decriptare
DES Data Encryption Standard
TDES Triplu DES
DLP problema logaritmului discret
U(Z
n
) grupul unitat ilor inelului Z
n
log
g
b logaritmul discret al lui b n baza g
DSA Digital Standard Algorithm

k
cel mai mic numar tare pseudoprim
cu primele k numere prime alese ca baze
Capitolul 1
Numere ntregi
1.1 Divizibilitate n N
Daca consideram doua numere naturale a si b, spunem ca a divide b si
scriem a [ b daca exista un numar natural c astfel ncat b = a c.

In acest
caz, a se numeste divizor al lui b. Este evident ca orice numar n > 1 are
cel put in doi divizori: pe 1 si pe el nsusi. Prin divizor propriu al lui n
nt elegem un divizor diferit de numarul n, iar prin divizor netrivial al lui
n, un divizor diferit de 1 si n.
Relat ia [ denita pe N se numeste relat ie de divizibilitate pe N. Se
arata usor ca aceasta este o relat ie de ordine pe N.
Prin denit ie, un numar prim este un numar mai mare decat 1 care
nu are alt i divizori n afara de 1 si el nsusi. Un numar se numeste
compus daca are cel put in un divizor netrivial.
Lema 1.1.1 Orice numar natural, mai mare decat 1, are un divizor
prim.
Demonstrat ie. Pentru a demonstra armat ia, reducem la absurd si pre-
supunem ca exista un numar n > 1 care nu are divizori primi. Daca
notam mult imea acestor numere cu S, cum ea este nevida si N este bine
ordonata, exista un cel mai mic element n S. Fie acesta n
0
. n
0
este
atunci un numar compus, deci n
0
= a b, cu 1 < a, b < n
0
. Pentru a nu
contrazice alegerea lui n
0
, a / S, adica a are un divizor prim care va
divizor si pentru n
0
, ceea ce contrazice faptul ca n
0
S.
11
12 CAPITOLUL 1. NUMERE

INTREGI
Teorema 1.1.1 Daca n este un numar compus, atunci el are cel put in
un divizor prim

n.
Demonstrat ie. Cum n este compus, e n = ab, cu 1 < a b < n. Daca
a >

n, atunci n = ab > n, fals. Deci, a

n. Din lema 1.1.1, a are
un divizor prim. Deci, n are un divizor prim

n.
Observat ie 1.1.1 1) Pentru a verica daca un numar este prim e su-
cient sa vericam daca are divizori primi

n, t in and cont de forma


echivalent a a teoremei anterioare: Daca numarul n nu are factori primi

n, atunci el este prim.


2) Teorema anterioar a poate folosita pentru a determina numerele
prime n (vezi capitolul 10.1.).
Teorema 1.1.2 (Teorema mpart irii cu rest) Pentru doua numere
naturale m, n cu n ,= 0, exista numerele naturale q, r astfel ncat
m = nq +r si r < n.

In plus, q si r sunt unic determinate.
Demonstrat ie. Consideram mult imea
A = s N [ k N, m = nk +s.
Din m = n 0 + m, m A. Deci, mult imea A nu este vida. Atunci,
cum N este bine ordonata, exista r un cel mai mic element din A.
Rezulta, m = nq + r, pentru un q N. Ramane sa aratam ca r < n.
Daca presupunem ca r n, atunci r = n + u, pentru un u N si
m = nq + r = nq + n + u = n(q + 1) + u. Astfel, u A. Dar r u.
Obt inem r = u, de unde n = 0, fals. Deci, r < n. Astfel, armat ia de
existent a din enunt ul teoremei este demonstrata. Pentru a arata ca q si
r sunt unice, presupunem m = nq+r = np+s unde r, s < n. Daca q < p,
atunci p = q +u, u ,= 0. Obt inem nq +r = n(q +u) +s = nq +(nu +s),
adica r = nu + s. Dar, cum n ,= 0 si u 1, rezulta nu n. Atunci,
r = nu+s n+s n, ceea ce contrazice faptul ca r < n. Astfel, p = q,
de unde rezulta imediat r = s.
Numerele q si r care apar n enunt ul teoremei se numesc catul si
restul mpart irii lui m la n.
1.2. RELAT IA DE DIVIZIBILITATE PE Z 13
1.2 Relat ia de divizibilitate pe Z
Fie numerele ntregi a si b. Spunem ca a divide b si scriem a [ b daca
exista un ntreg c astfel ncat b = a c. Ca si n cazul relat iei de divizi-
bilitate denite pe N, ea este reexiva si tranzitiva, dar nu mai este
antisimetrica. De exemplu, 2 [ 2 si 2 [ 2.
Pentru a putea obt ine o relat ie de echivalent a pe Z, denim relat ia
numita asociere n divizibilitate, prin:
x y x = y.
Denit ie 1.2.1 Fie a, b numere ntregi. Spunem ca un numar ntreg d
este un cel mai mare divizor comun al numerelor a, b daca:
1. d [ a si d [ b.
2. Pentru orice d

[ a si d

[ b, rezulta d

[ d.
Un cel mai mare divizor comun al lui a si b este unic determinat,
mai put in o asociere n divizibilitate. Putem presupune ca acesta este
un numar natural. Un astfel de cel mai mare divizor comun este unic
determinat si l notam d = (a, b).
Daca (a, b) = 1, spunem ca numerele a si b sunt prime ntre ele sau
relativ prime.
Propozit ie 1.2.1 Fie a, b numere ntregi si d = (a, b).
Atunci, a = a

d, b = b

d, unde a

, b

sunt numere ntregi prime ntre ele.


Din denit ia celui mai mare divizor comun d a doua numere a, b, rezulta
ca d [ (a b). Euclid
1
a folosit acest rezultat pentru a determina cel mai
mare divizor comun a doua numere naturale folosind metoda scaderii
repetate a numarului mic din cel mare.
1
Euclid (circa 350 .e.n.) este autorul celui mai faimos text matematic scris vre-
odata, Elemente, considerat ca ind cea mai citita carte stiint ic a din lume. Timp
de doua milenii, a constituit materialul de baza dupa care s-a predat matematica.

In aceasta carte, Euclid realizeaza o introducere n geometria plana si n teoria nu-


merelor. Algoritmul sau se gaseste n cartea a VII-a din cele XIII care alcatuiesc
lucrarea, iar demonstrarea teoremei care precizeaza ca exista o innitate de numere
prime se aa n cartea a IX-a. Euclid a predat la faimoasa Academie din Alexandria
si a mai scris cart i de astronomie, optica, muzica, mecanica.
14 CAPITOLUL 1. NUMERE

INTREGI
Algoritmul funct ioneaz a dupa cum urmeaza:
Presupunem numerele naturale a > b. Fie a
1
= a, b
1
= b. Pentru
ecare pereche (a
i
, b
i
) formam perechea (a
i+1
, b
i+1
) unde
a
i+1
= maxb
i
, a
i
b
i
, b
i+1
= minb
i
, a
i
b
i
.
Acest proces formeaza numere din ce n ce mai mici, deci se va opri.
Vom obt ine a
k
= b
k
, caz n care vom concluziona ca c.m.m.d.c.(a, b) =
a
k
= b
k
. Algoritmul funct ioneaza corect deoarece
c.m.m.d.c.(a
1
, b
1
) = c.m.m.d.c.(a
2
, b
2
) = . . . = c.m.m.d.c.(a
k
, b
k
).
De exemplu, alegem a = 34, b = 19. Algoritmul realizeaza perechile
urmatoare:
(a
1
, b
1
) = (34, 19)
(a
2
, b
2
) = (19, 34 19) = (19, 15)
(a
3
, b
3
) = (15, 19 15) = (15, 4)
(a
4
, b
4
) = (15 4, 4) = (11, 4)
(a
5
, b
5
) = (11 4, 4) = (7, 4)
(a
6
, b
6
) = (4, 7 4) = (4, 3)
(a
7
, b
7
) = (3, 4 3) = (3, 1)
(a
8
, b
8
) = (3 1, 1) = (2, 1)
(a
9
, b
9
) = (2 1, 1) = (1, 1)
de unde obt inem c.m.m.n.c.(34, 19) = c.m.m.d.c.(1, 1) = 1.
Pentru a mai rapid, acest algoritm este de obicei mbunatat it
nlocuind scaderile repetate cu mpart iri.
Pentru aceasta, reamintim teorema mpart irii cu rest pentru numerele
ntregi:
Teorema 1.2.1 (Teorema mpart irii cu rest)
Fie a, b Z cu b ,= 0. Atunci, exista q, r Z astfel ca a = bq + r unde
0 r < [b[.

In plus, numerele q si r care verica aceste proprietat i sunt
unic determinate.
Demonstrat ie. Pentru a = 0, avem a = b 0 + 0 si 0 < [b[. Putem lua
astfel, q = 0, r = 0. Daca a > 0, b > 0, putem aplica teorema 1.1.2.
Daca a > 0, b < 0 aplicam teorema 1.1.2 pentru a si b. Rezulta astfel
a = (b)q

+r

, q

, r

N, 0 r

< b = [b[. Luand q = q

si r = r

,
rezulta a = bq +r cu 0 r < b = [b[.
Daca a < 0, b > 0, aplicam teorema pentru a si b, obt inand
a = bq

+ r

, 0 r

< b. Daca r

= 0, atunci a = bq

si alegem q =
1.2. RELAT IA DE DIVIZIBILITATE PE Z 15
q

, r = 0. Pentru cazul 0 < r

, avem a = bq

= b(q

1)+(br

).
Alegem q = q

1, r = br

. Cum 0 < r

< b, obt inem 0 < r < b = [b[.


Daca a < 0, b < 0, aplicam aceeasi teorema pentru numerele naturale a
si b. Avem, a = bq

+ r

, 0 r

< b. Daca r

= 0, alegem q = q

si r = 0. Daca r

> 0, avem a = bq

= b(q

+ 1) + (b r

). Luam
q = q

+ 1, r = b r

. Cum 0 < r

< b, rezulta 0 < r < b = [b[.


Sa demonstram acum unicitatea numerelor q si r astfel determinate.
Presupunem ca bq + r = bq

+ r

cu 0 r, r

< [b[. Rezulta b(q q

) =
r

r, deci [b[ [q q

[ = [r r

[. Cum r si r

sunt numere naturale cu


0 r, r

< [b[, avem [r r

[ < [b[. Astfel, [b[ [q q

[ < [b[, de unde


[q q

[ < 1.
Atunci, q = q

si apoi r = r

.
Lema 1.2.1 Fie a, b, q, r Z astfel ca a = bq +r. Atunci, cel mai mare
divizor comun al lui a si b exista daca si numai daca cel mai mare divizor
comun al lui b si r exista.

In plus, avem (a, b) = (b, r).
Demonstrat ie. Presupunem ca d = (a, b) exista. Din d [ a si d [ b, rezulta
d [ r. Daca presupunem ca d

este un divizor comun al lui b si r, rezulta


d

[ bq + r, adica d

[ a. Atunci, d

[ d si astfel, d = (b, r). Armat ia


reciproca se demonstreaza la fel.
Teorema 1.2.2 (Algoritmul lui Euclid) Pentru orice doua numere
ntregi exista un cel mai mare divizor comun.
Demonstrat ie. Fie a si b cele doua numere ntregi. Daca b = 0, atunci,
(a, b) = a. Daca b ,= 0, aplicam teorema 1.2.1. Exista q
2
Z, r
2
N
astfel ncat
a = bq
2
+r
2
, 0 r
2
<[ b [ . (E
1
)
Cazul cand un rest va zero va tratat mai tarziu.
Daca r
2
,= 0, exista q
3
Z, r
3
N astfel ncat
b = r
2
q
3
+r
3
, 0 r
3
< r
2
. (E
2
)
Daca r
3
,= 0, exista q
4
Z, r
4
N astfel ncat
r
2
= r
3
q
4
+r
4
, 0 r
4
< r
3
. (E
3
)
.
.
.
16 CAPITOLUL 1. NUMERE

INTREGI
Daca r
k
,= 0, exista q
k+1
Z, r
k+1
N astfel ncat
r
k1
= r
k
q
k+1
+r
k+1
, 0 r
k+1
< r
k
(E
k
)
.
.
.
Obt inem astfel ca resturile verica relat iile:
[ b [> r
2
> r
3
> . . . > r
k
> r
k+1
0. (1.1)
Daca t inem cont ca mult imea numerelor naturale este bine ordonata,
exista un rang n astfel ncat r
n+1
= 0.
Ultimele doua relat ii din lant ul de mpart iri cu rest sunt:
r
n2
= r
n1
q
n
+r
n
(E
n1
)
r
n1
= r
n
q
n+1
(E
n
)
Din relat ia (E
n
) rezulta r
n
= (r
n
, r
n1
).
Din relat iile (E
n1
), . . . , (E
k
), . . . , (E
2
), (E
1
), aplicand lema anterioara,
obt inem:
r
n
= (r
n
, r
n1
) = (r
n1
, r
n2
) = . . . = (r
2
, r
3
) = (b, r
2
) = (a, b).
Pentru a uniformiza relat iile (E
1
), (E
2
), . . . , (E
n
), facem notat iile
a = r
0
si b = r
1
. Astfel, relat iile din algoritmul lui Euclid pot scrise
sub forma:
r
k1
= r
k
q
k+1
+r
k+1
, 1 k n, r
n+1
= 0. (E
k
)
Daca privim relat iile (E
k
) ale algoritmului lui Euclid, obt inem
r
k1
r
k
= q
k+1
+
r
k+1
r
k
unde q
k+1
Z si 0
r
k+1
r
k
< 1.
De aici putem concluziona ca q
k+1
=
_
r
k1
r
k
_
.
Forma n care folosimmpart iri pentru a realiza algoritmul lui Euclid
nu este doar mai rapida Ea are o aplicabilitate mult mai larga decat
1.2. RELAT IA DE DIVIZIBILITATE PE Z 17
varianta scaderilor succesive, putand folosita n orice inele euclidiene,
de exemplu n inelul ntregilor lui Gauss, Z[i] (vezi [9]).
Aplicarea algoritmului pentru numere ntregi se reduce la aplicarea
acestuia pentru numere naturale.

In rolul lui b se poate alege cel mai
mic dintre cele doua numere.

In anumite situat ii poate necesar sa cunoastem numarul dempart iri


din algoritmul lui Euclid.
Pentru a putea da un raspuns referitor la aceasta problema, trebuie
sa denim mai ntai sirul lui Fibonacci
2
.
Fie (f
n
)
n1
sirul denit prin f
1
= f
2
= 1 si, f
n+1
= f
n
+f
n1
, pentru
n 2.
Folosind induct ia matematica, se demonstreaza usor ca, pentru orice
n 3,
f
n
>
_
1 +

5
2
_
n2
.
Cu ajutorul acestui rezultat, putem demonstra urmatoarea teorema
3
:
Teorema 1.2.3 (Lame) Numarul de mpart iri din algoritmul lui
Euclid pentru a, b N

cu a > b nu depaseste de cinci ori numarul


cifrelor din scrierea n baza 10 a lui b.
Demonstrat ie. Consideram algoritmul lui Euclid pentru numerele a si
b :
a = r
0
, b = r
1
, r
k1
= r
k
q
k+1
+r
k+1
, 1 k n, r
n+1
= 0.

In acest caz, q
i
1, 2 i n si q
n+1
2, pentru ca altfel, r
n1
= r
n
.
Observam ca r
n
1 = f
2
si r
n1
= r
n
q
n+1
2f
2
= f
3
.
2
Fibonacci, nascut n Pisa, era negustor care calatorea n Orientul Mijlociu. Aici a
luat contact cu lucrarile matematice ale arabilor.

In cartea sa Liber Abaci, introduce
notat ia araba pentru cifre, efectueaza operat ii cu numere fract ionare (a introdus linia
de fract ie si denumirea de fractus), studiaza, pentru prima data, sumarea unei serii
recurente ai carei termeni sunt numerele Fibonacci si introduce, tot pentru prima
data n Europa, numerele negative.
3
Gabriel Lame (1795-1870) a fost inginer, absolvent al Scolii Politehnice din Paris.
Principalele sale contribut ii au fost n zica matematica. A facut multe descoperiri
si n teoria numerelor, Gauss considerandu-l cel mai important matematician francez
al timpului sau.
18 CAPITOLUL 1. NUMERE

INTREGI
Prin induct ie matematica, se arata ca r
ni
f
i+2
, 0 i n.

In
particular, b = r
1
f
n+1
>
n1
, unde =
1 +

5
2
.
Presupunem ca b are s cifre n scrierea sa n baza 10. Atunci, b < 10
s
de unde obt inem
n1
< 10
s
. Astfel, (n 1) lg < s. Daca t inem cont
de relat ia
1
5
< lg , rezulta n nal n 5s.
Consideram acum problema inversa: Sa vedem daca se pot determina
doua numere naturale a si b astfel ncat algoritmul lui Euclid aplicat
acestora sa se realizeze prin n mpart iri.
Teorema 1.2.4 Daca (f
n
)
n1
este sirul lui Fibonacci, aplicarea algo-
ritmului lui Euclid pentru f
n+2
si f
n+1
necesita exact n mpart iri.
Demonstrat ie. Daca t inem cont de modul de denire al acestui sir,
obt inem ca f
n+1
> f
n
, pentru n 2. Algoritmul lui Euclid, n acest
caz, este dat de relat iile:
f
n+2
= f
n+1
1 +f
n
, 0 < f
n
< f
n+1
f
n+1
= f
n
1 +f
n1
, 0 < f
n1
< f
n
.
.
.
f
4
= f
3
1 +f
2
, 0 < f
2
< f
3
f
3
= f
2
2.
Observam ca sunt exact n mpart iri. Cum (f
n+2
, f
n+1
) = f
2
= 1, pen-
tru orice n, rezulta ca orice doi termeni consecutivi ai sirului sunt relativ
primi.
Algoritm 1.2.1 (Algoritmul lui Euclid)
INPUT: doua numere naturale a, b cu a b.
OUTPUT: cel mai mare divizor comun pentru a si b.
1. Cat timp b ,= 0, executa:
1.1. r a mod b, a b, b r.
2. Returneaza a.
Algoritmul lui Euclid poate extins pentru a determina pe langa cel
mai mare divizor comun d a doua numere a, b si o scriere a acestuia ca
o combinat ie liniara a numerelor init iale: d = au + bv. Coecient ii u, v
ai combinat iei se numesc coecient i Bezout (vezi [9]).
1.2. RELAT IA DE DIVIZIBILITATE PE Z 19
Teorema 1.2.5 Fie a, b Z cu b ,= 0. Construim, prin recurent a, vec-
torii: (w
k
)
0kn+1
, w
k
= (t
k
, u
k
, v
k
) din Z
3
astfel:
w
0
= (a, 1, 0), w
1
= (b, 0, 1),
w
k+1
= w
k1
q
k+1
w
k
, 1 k n
unde q
k+1
sunt caturile din algoritmul lui Euclid pentru numerele a, b.
Atunci:
t
k
= r
k
= u
k
a +v
k
b, 0 k n + 1 (B
k
)
Relat iile B
k
poarta numele de relat iile lui Bezout.
Cum algoritmul lui Euclid si relat iile lui Bezout se pot realiza simul-
tan, putem cuprinde rezultatele ntr-un tabel de forma:
k 0 1 2 . . . k . . . n n+1
t
k
a b r
2
. . . r
k
. . . r
n
r
n+1
u
k
1 0 u
2
. . . u
k
. . . u
n
u
n+1
v
k
0 1 v
2
. . . v
k
. . . v
n
v
n+1
q
k
q
2
. . . q
k
. . . q
n
q
n+1
De exemplu, pentru a = 34 si b = 19, obt inem:
(34, 19) = 1 = 34 (5) + 19 9
dupa cum reiese din tabelul:
k 0 1 2 3 4 5 6
t
k
34 19 15 4 3 1 0
u
k
1 0 1 -1 4 -5 19
v
k
0 1 -1 2 -7 9 -34
q
k
1 1 3 1 3
20 CAPITOLUL 1. NUMERE

INTREGI
Acest algoritm poarta numele de algoritmul extins al lui Euclid si
este prezentat n continuare:
Algoritm 1.2.2 (Algoritmul extins al lui Euclid)
INPUT: doua numere naturale a, b cu a b.
OUTPUT: d = (a, b) si doua numere ntregi u, v cu d = au +vb.
1. Daca b = 0, atunci d a, u 1, v 0,
returneaza (d, u, v) si se opreste.
2. u
1
1, u
2
0, v
1
0, v
2
1
3. Cat timp b > 0 executa:
3.1. q [a/b], r a qb, u u
1
qu
2
, v v
1
bv
2
.
3.2. a b, b r, u
1
u
2
, u
2
u, v
1
v
2
, v
2
v.
4. d a, u u
1
, v v
1
si returneaza (d, u, v).
1.3 Teorema fundamentala a aritmeticii
Propozit ie 1.3.1 Orice numar natural n 2 este produs de numere
prime.
Demonstrat ie. Presupunem ca mult imea A a numerelor naturale n 2
care nu se scriu ca produs de numere prime este nevida. Atunci, cum N
este bine ordonata, e n
0
un prim element al lui A. Astfel, n
0
= ab unde
1 < a, b < n
0
pentru ca n
0
nu este prim. Dar, pentru a nu contrazice
alegerea lui n
0
, a, b / A. Astfel, a, b sunt ecare produs de numere prime,
de unde si n
0
este la fel, armat ie ce contrazice n
0
A.
Observat ie 1.3.1 Daca n Z 1, 0, 1, cum n = sgn(n) [ n [,
obt inem n = up
1
p
2
. . . p
k
unde u = 1, o unitate si p
1
, p
2
, . . . , p
k
sunt
numere prime nu neaparat distincte. Atunci, putem grupa toate nu-
merele prime egale, si putem scrie:
n = up

1
1
p

2
2
. . . p

s
s
,
cu u unitate, p
1
, . . . , p
s
numere prime distincte si
1
, . . . ,
s
1.

In
ultima relat ie putem face sa apara orice numar prim, chiar daca acesta
nu este divizor pentru n, punandu-l la puterea 0.
Astfel, n = u

pP
p

p
unde P este mult imea numerelor prime si
p
> 0.
1.3. TEOREMA FUNDAMENTAL

A A ARITMETICII 21
Propozit ie 1.3.2 Fie a, b, c numere ntregi astfel ncat c [ ab si a, c sunt
relativ prime. Atunci, c [ b.
Demonstrat ie.
4
Din (a, c) = 1, rezulta ca exista numerele ntregi u, v
pentru care 1 = au + cv. Atunci, b = b 1 = (ab)u + (bv)c. Cum c [ ab,
rezulta c [ b.
Corolar 1.3.1 Fie p un numar prim si a, b doua numere ntregi. Daca
p [ ab, atunci p [ a sau p [ b.
Demonstrat ie. Daca p a, cum p este prim, (a, p) = 1. Din propozit ia
anterioara, rezulta p [ b.
Denit ie 1.3.1 Daca p este un numar prim si n un numar ntreg, vom
nota
5
ord
p
n = daca p

[ n si p
+1
n, adica p

este cea mai mare


putere a lui p care divide n, unde > 0. Vom numi acest numar natural
, ordinul lui n la p.
Corolar 1.3.2 Pentru doua numere ntregi nenule a, b si pentru orice
numar prim p, are loc relat ia:
ord
p
(ab) = ord
p
a +ord
p
b.
Demonstrat ie. Fie ord
p
a = n, ord
p
b = m.
Atunci, a = p
n
a

, b = p
m
b

, p a

, p b

. Rezulta ab = p
n+m
a

. Din
corolarul 1.3.1, p a

. Astfel, ord
p
(ab) = n +m.
Teorema 1.3.1 (Teorema fundamentala a aritmeticii) Orice nu-
mar ntreg nenul n, diferit de 1, poate scris n mod unic (mai put in
ordinea factorilor) ca produs de numere prime de forma n = u

pP
p

p
unde P este mult imea numerelor prime si doar un numar nit din nu-
merele naturale
p
sunt nenule.
Demonstrat ie. Produsul se poate scrie de fapt sub forma
n = up
1
1
p
2
2
. . . p

s
s
,
4
Aceasta proprietate a fost demonstrata de Euclid.
5
mai poate ntalnit a notat ia p

||n
22 CAPITOLUL 1. NUMERE

INTREGI
cu u unitate, p
1
, . . . , p
s
numere prime distincte si
1
, . . . ,
s
1. Din
corolarul 1.3.2, pentru un numar prim q,
ord
q
n = ord
q
u +

pP

p
ord
q
p.
Cum u este unitate, ord
q
u = 0. ord
q
p = 1 daca p = q, altfel ord
q
p = 0.
Rezulta astfel ca
1
= ord
p
1
n, . . . ,
s
= ord
p
s
n 1.
Unicitatea descompunerii n factori primi a fost prima data ment ionata
de Gauss,
6
n anul 1801. Forma canonica a descompunerii este aceea de
a scrie numarul ca produs de numere prime distincte la puterile cores-
punzatoare, n ordine crescatoare, de exemplu: 12600 = 2
3
3
9
5
2
7.
Denit ie 1.3.2 Fie a, b numere ntregi. Spunem ca m este un cel mai
mic multiplu comun al numerelor a, b si notam m = [a, b] daca:
1. a [ m si b [ m.
2. Pentru orice a [ m

si b [ m

, rezulta m [ m

.
Propozit ie 1.3.3 Fie n = up
1
1
p
2
2
. . . p

s
s
si m = vp
1
1
p
2
2
. . . p

s
s
, unde
u, v sunt unitat i, p
1
, . . . , p
s
numere prime distincte si
k
,
k
0 pentru
1 k s. Atunci:
(n, m) =

1ks
p
min{
k
,
k
}
k
,
[n, m] =

1ks
p
max{
k
,
k
}
k
.
Obt inem astfel, (n, m)[n, m] =[ n [ [ m [
6
Karl Friedrich Gauss (1777-1855), ul unui zidar, a fost unul dintre copiii mi-
nune. La 3 ani a descoperit o greseal a n statul de plata al tatalui sau. La 8 ani
a rezolvat rapid problema sumei primelor 100 de numere naturale.

In anul 1796 a
facut o mare descoperire n domeniul geometric, ce nu mai progresase din antichitate,
aratand ca un poligon regulat cu 17 laturi poate construit cu rigla si compasul.

In
1799 a dat o demonstrat ie riguroasa teoremei fundamentale a algebrei. Gauss a pus
bazele teoriei moderne a numerelor prin lucrarea sa Disquitiones Arithmeticae, n
1801. Expresia sa favorita, Matematica este regina stiint elor, iar teoria numerelor,
regina matematicii, subliniaza pasiunea lui deosebita pentru aceasta stiint a. Cele mai
importante descoperiri ale sale au fost facute de matematiciann tineret e, restul viet ii
petrecandu-l cu ranarea lor. S-a dovedit ca multe rezultate care sunt atribuite unor
matematicieni au fost obt inute de Gauss mai nainte, el nepublicand toate studiile
facute. Gauss a fost considerat de matematicienii contemporani lui Print ul Mate-
maticii.
1.4. NUMERE PRIME 23
1.4 Numere prime
Numerele prime pot privite ca blocuri din care se formeaza numerele
naturale, cum orice numar natural 2 este produs de numere prime.
Una dintre primele probleme studiate referitor la mult imea numerelor
prime a constat n stabilirea cardinalitat ii acesteia: este mult imea in-
nita sau nu?
Teorema 1.4.1 (Euclid) Exista o innitate de numere prime.
Pentru aceasta teorema, oferim acum doua demonstrat ii, urmand ca, n
1.5, sa mai e propusa o alta.
Demonstrat ie. 1. (Euclid) Presupunem, prin absurd, ca mult imea nu-
merelor prime este nita. Astfel, presupunem ca exista doar n numere
prime p
1
, p
2
, . . . , p
n
. Numarul N = p
1
p
2
. . . p
n
+ 1 este mai mare decat
1, deci are un divizor prim. Cum ecare p
i
N, acesta va prim, adica
N = p
k
pentru un k 1, . . . , n, ceea ce este absurd.
Demonstrat ie 2. Fie P
n
= n! +1, pentru n 1. Din lema 1.1.1, pentru
ecare P
n
gasim cate un divizor prim p
n
. Daca un p
n
n, atunci p
n
[ n!
si cum p
n
[ P
n
, rezulta p
n
= 1, fals. Deci, p
n
> n, pentru orice n. Am
obt inut astfel ca, pentru orice n 1, exista p
n
> n numar prim, ceea
ce arata ca mult imea numerelor prime este innita (Pentru n = 1 gasim
p
1
, apoi alegem n = p
1
si obt inem un numar prim > p
1
, etc.)
Demonstrat ia lui Euclid furnizeaza si o anumita majorare pentru al
n lea numar prim, pe care l notam cu p
n
. Daca p este un numar prim
diferit de p
1
, p
2
, . . . , p
n
si p [ p
1
p
2
. . . p
n
+ 1, atunci:
p
n+1
p p
1
p
2
. . . p
n
+ 1.
Prin induct ie matematica dupa n, se poate demonstra usor ca
p
n
< 2
2
n
.
Mult imea numerelor prime ind innita, a fost pusa apoi problema
distribut iei numerelor prime, problema care poate rezumata astfel:
Denim funct ia
: R
+
N
prin (x) este egal cu numarul numerelor prime x.
Astfel, (1) = 0, (2) = 1, (3) = (4) = 2, etc.
24 CAPITOLUL 1. NUMERE

INTREGI
S-a ncercat gasirea unei formule de calcul pentru (x).
Este evident ca (p
n
) = n si p
(n)
= n, pentru orice numar prim n.
Atunci, din p
n
< 2
2
n
, obt inem (2
2
n
) n, pentru orice numar na-
tural n 1.
Propozit ie 1.4.1 Pentru orice numar real x > 1, avem
(x) > ln(lnx).
Demonstrat ie. Fie n cel mai mic numar ntreg mai mare ca ln(lnx).
Atunci n 1 ln(lnx) < n, ceea ce este echivalent cu
e
e
n1
x e
e
n
.
Daca x e
e
3
, atunci n 4 si avem:
e
3
> (2, 7)
3
= 19, 683 > 16 = 2
4
.
Astfel, e
n1
= e
3
e
n4
> 2
4
2
n4
= 2
n
. Deci,
x e
e
n1
> e
2
n
> 2
2
n
.
Atunci,
(x) (2
2
n
) n > ln(lnx).
Daca 5 < x < e
e
3
, avem (x) 3 > ln(lnx).
Daca 2 x 5, avem e
e
> e
2
> (2, 7)
2
= 7, 29 > 5 x, de unde
(x) 1 > ln(lnx).
Daca 1 < x < 2, avem ln(x) < 1, de unde (x) = 0 > ln(lnx).
O alta relat ie cunoscuta apare n propozit ia urmatoare. Pentru de-
monstrat ie, putet i consulta, [16].
Propozit ie 1.4.2 Pentru orice numar ntreg pozitiv n, avem:
(x)
lnx
2 ln2
.
1.4. NUMERE PRIME 25
Un rezultat de baza legat de numerele prime este prezentat n urma-
toarea teorema:
7
Teorema 1.4.2 (Teorema numerelor prime)
lim
x
(x)
x
ln x
= 1
Pentru mai multe informat ii legate de funct ia , se pot studia ine-
galitat ile lui Cebsev
8
n [5].
Teorema 1.4.3 Pentru orice numar natural n 1, exista cel put in n
numere naturale compuse consecutive.
Demonstrat ie. Consideram numerele
(n + 1)! + 2, (n + 1)! + 3, . . . , (n + 1)! +n + 1.
Este evident ca pentru 2 k n+1, k [ (n+1)! +k, deci cele n numere
construite init ial sunt toate compuse.
Observat ie 1.4.1 1) Conform teoremei, putem construi 7 numere na-
turale consecutive compuse ncepand cu 8! + 2 = 40322. Dar, exista 7
numere consecutive compuse mult mai mici, ca de exemplu: 90, 91, 92, 93,
94, 95, 96.
2) Teorema arata ca distant a dintre doua numere prime este arbitrara.
Un numar prim p se numeste pereche, daca p + 2 este tot prim. Nu
se stie daca mult imea acestor numere prime pereche este innita sau nu.
Teorema 1.4.4 (Dirichlet) Fie a si b numere naturale prime ntre ele.
Atunci, progresia aritmetica an+b, n 1 cont ine o innitate de numere
prime.
7
Aceasta teorema a fost enunt ata de Gauss n 1793. Demonstrat ia ei a fost re-
alizata abia n 1896, independent, de J. Hadamard si de C.J. de la Vallee Poussin,
folosind analiza complexa.
8
Pafnuti Lvovici Cebsev (1821-1894) a fost un matematician multilateral, care a
mbinat mereu teoria cu practica. A inventat 40 de mecanisme diferite (masini de sor-
tat, prasitoare, mecanisme de vaslire, etc.), preocupare ce l-a condus la crearea unei
noi ramuri matematice: teoria celei mai bune aproximari a funct iilor. Pentru rezul-
tatele deosebite obt inute n teoria numerelor, el a fost numit nving atorul numerelor
prime, care a fort at torentul lor capricios sa intre n limitele algebrei.
26 CAPITOLUL 1. NUMERE

INTREGI
Aceasta teorema este cunoscuta sub numele de Teorema Dirichlet
9
pentru numere prime n progresie aritmetica. Demonstrat ia nu este
prezentata aici. Ea poate studiata n [18] si anumite cazuri particu-
lare ale ei, n [5].
Una dintre problemele celebre nerezolvate despre numerele prime este
urmatoarea armat ie, ntalnita si sub numele de Conjectura lui Gold-
bach
10
: Orice numar par este suma a doua numere prime.

Incheiem acest subcapitol sublinind o problema actuala de mare im-


portant a: determinarea de numere prime mari.
Astfel, n anul 1984, Samuel Yates a denit not iunea de numar prim
titanic ca ind un numar prim cu cel put in 1000 de cifre zecimale. La
acea perioada nu se cunosteau decat 110 astfel de numere.

In prezent,
sunt de peste 1000 de ori mai multe. Cum computerele si criptograa dau
mare important a cautarii de numere prime mari, dimensiunea acestora
va continua sa creasca.
Cele mai mari numere prime cunoscute sunt, de cele mai multe ori,
numere prime Mersenne M
p
(vezi capitolul 4.4) deoarece testarea pri-
malitat ii lor se face descompunand usor n factori pe M
p
+ 1 (va o
putere a lui 2). Pe Internet sunt site-uri speciale care pastreza ca baza
de date multe numere prime (pot si 6000). Cart ile de specialitate, chiar
daca insereaza aceste rezultate, nu vor putea oferi liste de actualitate,
t inand cont de perioada de timp care trece de la conceperea cart ii pana
la publicarea ei. Ele sunt nsa importante pentru ca pot furniza, mult
mai pe larg, teoria matematica ce a stat la baza obt inerii rezultatelor
practice.
9
G.Lejeune Dirichlet (1805-1859) a studiat la Universitatea din Paris, un centru
important pe plan mondial n matematica la aceea vreme. El a fost ales de catre
Gauss sa-i succeada la catedra, la Universitatea din Gottingen. Prin cartea sa de
teoria numerelor, Vorlesung uber Zahlentheorie, el a facut ca descoperirile lui Gauss
sa e accesibile majoritat ii matematicienilor. A avut contribut ii importante si n
domeniul analizei matematice iar principiul sau binecunoscut, cel al cutiei, este folosit
n combinatorica si teoria numerelor.
10
Cristian Goldbach (1690-1764) a corespondat cu mult i matematicieni eminent i
ai epocii, cum ar Euler si Bernoulli. Alaturi de celebrele sale conjecturi, el a avut
si multe contribut ii importante n analiza matematica.
1.5. NUMERE FERMAT 27
1.5 Numere Fermat
Propozit ie 1.5.1 Daca n este un numar natural si 2
n
+ 1 este numar
prim, atunci n este o putere a lui 2.
Demonstrat ie. Presupunem ca n = 2
k
m cu k N si m numar impar.
Deci,
2
n
+ 1 =
_
2
2
k
_
m
+ 1
=
_
2
2
k
+ 1
_
_
_
2
2
k
_
m1

_
2
2
k
_
m2
+. . . + 1
_
.
Cum 2
n
+ 1 este prim, rezulta ca 2
2
k
+ 1 = 1, ceea ce nu este posibil,
sau 2
2
k
+ 1 = 2
n
+ 1 de unde n = 2
k
.
Denit ie 1.5.1 Numerele Fermat sunt numerele de forma
F
n
= 2
2
n
+ 1, n 0.
Fermat
11
a armat ca toate aceste numere sunt prime. Pana n
prezent se cunosc ca ind prime doar numerele Fermat:
F
0
= 3, F
1
= 5, F
2
= 17, F
3
= 257, F
4
= 65537,
fara a putea preciza daca exista o innitate de numere prime Fermat.

In 1732, Euler
12
a aratat ca F
5
este compus, numarul ind divizibil
cu 641. Demonstrat ia este foarte eleganta, fara multe calcule. Ea se
11
Pierre de Fermat (1601-1665) era de profesie avocat. A fost probabil cel mai
mare matematician amator din istorie. Pe parcursul viet ii nu a publicat nimic din
descoperirile sale, dar a corespondat cu mult i matematicieni contemporani lui despre
acestea, de exemplu cu Mersenne. Dupa moartea sa, ul sau a gasit toate notit ele
sale si le-a publicat.
12
Leonard Euler (1707-1783) a fost ul unui preot elvet ian. Pe lang a teologie,
ndrumat de Johann Bernoulli, a studiat si matematica. La 16 ani si-a obt inut doc-
toratul n lozoe. A scris peste 700 de cart i si articole, las and atatea rezultate
nepublicate ncat Academia Imperiala din Petersburg nu a sfarsit publicarea acestora
decat dupa 47 de ani de la moartea sa. Cu toate ca ultimii 17 ani din viat a a fost
orb, datorita memoriei sale except ionale, a putut sa-si continue activitatea stiint ica
pana n ultimul moment.
28 CAPITOLUL 1. NUMERE

INTREGI
bazeaza pe relat ia 641 = 5 2
7
+ 1 = 2
4
+ 5
4
. Astfel,
F
5
= 2
2
5
+ 1 = 2
32
+ 1 = 2
4
2
28
+ 1
= (641 5
4
)2
28
+ 1 = 641 2
28
(5 2
7
)
4
+ 1
= 641 2
28
(641 1)
4
+ 1
= 641(2
28
641
3
+ 4 641
2
6 641 + 4).
Tot el, n 1770, a aratat ca orice divizor al lui F
n
trebuie sa e de
forma 2
n+1
k +1, cu k 0. Acest rezultat a fost mbunatat it de Lucas,
n 1878, prin teorema:
Teorema 1.5.1 Orice divizor prim al lui F
n
, daca exista, este de forma
2
n+2
k + 1.
Spre exemplu, pentru F
3
= 257 se cauta divizori primi

257 =
16, ... de forma 2
5
k + 1 = 32k + 1. Cum astfel de factori nu exista,
F
3
este prim. La fel, pentru F
6
divizorii primi cautat i ar de forma
2
8
k + 1 = 256k + 1

F
6
. Dupa mai multe calcule se obt ine k = 1071,
si astfel, 274177 [ F
6
.
Lema urmatoare sta la baza unei proprietat i importante a numerelor
Fermat. Demonstrat ia, folosind metoda induct iei matematice, este foarte
simpla si o lasam ca exercit iu pentru cititor.
Lema 1.5.1 Numerele Fermat verica relat ia de recurent a:
F
0
F
1
F
2
. . . F
n1
= F
n
2,
pentru n 1.
Propozit ie 1.5.2 Pentru m, n N, distincte, numerele Fermat F
m
si
F
n
sunt prime ntre ele.
Demonstrat ie. Putem presupune n > m.
Din lema anterioara, F
0
F
1
. . . F
m
. . . F
n1
= F
n
2.
Fie d = (F
n
, F
m
) . Cum d [ F
n
si d [ F
0
F
1
. . . F
n1
, obt inem ca d [ 2.
Dar, toate numerele Fermat sunt impare de unde rezulta d = 1.
Folosind acest rezultat putem oferi o alta demonstrat ie pentru teo-
rema 1.4.1:
Fiecare numar Fermat este > 1, deci el va avea un factor prim. Fie
1.5. NUMERE FERMAT 29
p
n
un divizor prim al lui F
n
, cu n N. Dar, (F
n
, F
m
) = 1, pentru
m ,= n. Obt inem astfel ca divizorii p
n
si p
m
sunt diferit i. Cum mult imea
divizorilor p
n
este innita, exista o innitate de numere prime.
Descompunerea n factori primi a numerelor Fermat este foarte di-
cila, t inand cont de dimensiunea lor mare. De fapt, s-au factorizat
complet doar numerele F
5
pana la F
11
.
Astfel, n 1880, Landry a factorizat F
6
, metoda folosita neind publi-
cata nsa. F
7
a fost factorizat folosind metoda fract iilor continue n 1975
de catre Morrison si Brillhart. Pentru F
8
, n 1981, Brent si Pollard au
folosit o versiune a testului rho. Cu ajutorul metodei curbelor eliptice,
n 1988, Brent a factorizat F
11
.
F
12
are 5 factori primi cunoscut i, ramand un factor compus necunos-
cut de 1187 cifre. Pentru F
13
situat ia este asemanatoare, stiindu-se 4
factori primi iar cel compus, ramas de studiat, are 2391 cifre. Chiar daca
nu se cunoaste factorizarea lui F
14
, el este numar compus.

In prezent, se stie ca F
n
este compus pentru 5 n 32. Dintre
acestea, singurele numere Fermat compuse pentru care nu este cunoscut
nici un divizor prim sunt F
14
, F
20
, F
22
si F
24
.
Numerele Fermat si gasesc important a n geometrie prin rezultatul
dat de Galois n 1801. Acesta a stabilit ca un poligon regulat cu n laturi
este construibil cu rigla si compasul daca si numai daca n = 2
k
p
1
p
2
. . . p
r
,
unde k N si p
1
, . . . p
r
sunt numere prime Fermat distincte.
De asemenea, aceste numere prezinta interes si n teoria corpurilor
nite. Astfel, daca consideram un corp K de ordin 2
2
n
, grupul multi-
plicativ K

este o suma directa de n grupuri ciclice ale caror ordine sunt


egale cu F
0
, F
1
, . . . , F
n1
. Folosind acest rezultat, pentru a determina
ordinul unui element din K

este necesar sa cunoastem descompunerea


n factori primi a numerelor Fermat.
30 CAPITOLUL 1. NUMERE

INTREGI
1.6 Ecuat ii liniare diofantice
Cele mai sinple ecuat ii liniare diofantice
13
sunt ecuat ii liniare n doua
variabile:
ax +by = c, a, b, c Z. (1.2)
Aceste ecuat ii pot avea o innitate de solut ii sau nici una.
Studiului acestora se bazeaza pe proprietatea celui mai mare divizor
comun a doua numere de a scris ca o combinat ie liniara a numerelor
considerate.
Teorema 1.6.1 Fie a, b, c Z. Ecuat ia ax + by = c are solut ii ntregi
daca si numai daca d [ c unde d = (a, b).
Demonstrat ie. Daca d = (a, b), atunci d [ ax + by = c, pentru orice
numere ntregi x, y. Reciproc, daca d [ c, putem scrie c = dc

. Din teo-
rema 1.2.5, exista u, v Z, pentru care au + bv = d. Obt inem astfel
c = a(uc

) +b(vc

), adica o solut ie particulara a ecuat iei ( 1.2) este data


de x
0
= uc

, y
0
= vc

. Mai mult, daca ecuat ia are o solut ie, (x


0
, y
0
), ea
va avea o innitate de solut ii si anume
x = x
0
+
b
d
t, y = y
0

a
d
t, t Z.
De exemplu, pentru ca avem deja rezultatele algoritmului lui Euclid
extins pentru numerele a = 34, b = 19, sa rezolvam n numere ntregi
ecuat ia: 34x + 19y = 14.
Din (34, 19) = 1 = 34(5) + 19 9 si 1 [ 14, ecuat ia are solut ii ntregi.
O solut ie particulara este x
0
= (5)14 = 70, y
0
= 9 14 = 126.
Solut ia generala a ecuat iei este data de x = 70 + 19t, y = 126 34t,
unde t Z.
13
Diofante (aprox. 250.e.n.), cunoscut si ca tat al algebrei, a scris Aritmetica, prima
carte de algebra cunoscuta. Ea cont ine, pentru prima data, notat ii matematice pentru
a reprezenta necunoscute si puteri ale acestora n ecuat ii, n folosire sistematica.
Despre viat a sa, singura sursa de informat ii este o epigrama gasita ntr-o colect ie
numita Antologia Greac a: Diophantus si-a petrecut 1/6 din viat a n copil arie, 1/2
n tineret e, iar 1/7, nec as atorit. Dupa 5 ani de cas atorie, s-a nascut un u care a
murit cu 4 ani naintea tatalui, avand jumatate din varsta tatalui. De aici, se poate
presupune ca Diophantus a trait 84 de ani.
1.6. ECUAT II LINIARE DIOFANTICE 31
Demonstrat ia teoremei conduce la utilizarea urmatorului algoritm de
rezolvare a ecuat iilor liniare diofantice de forma ( 1.2):
Algoritm 1.6.1 (Rezolvarea ecuat iei liniare diofantice)
INPUT: numerele naturale a, b, c.
OUTPUT: o solut ie particulara a ecuat iei ( 1.2), daca exista
solut ii ntregi.
1. Aplica algoritmul 1.2.2 pentru numerele a, b
2. Daca c mod d ,= 0, returneaza ecuat ia nu are solut ii ntregi
si se opreste.
3. x
0
uc/d, y
0
vc/d
4. Returneaza (x
0
, y
0
)
Exercit ii propuse
1. Fie a, m, n numere naturale. Aratat i ca
(a
m
1, a
n
1) = a
d
1,
unde d = (m, n).
2. Fie a, b doua numere naturale, prime ntre ele, astfel ncat ab = c
n
.
Aratat i ca exista d, e N astfel ca a = d
n
si b = e
n
.
3. Aratat i ca restul mpart irii unui patrat perfect la 16 este tot un
patrat perfect.
4. Daca suma patratelor a doua numere ntregi este divizibila cu 11,
aratat i ca si suma lor este divizibila cu 11.
5. Determinat i d = (184, 234) prin doua metode. Aat i coecient ii
Bezout corespunzatori.
6. Fie a, b, c numere naturale. Aratat i ca sunt vericate urmatoarele
relat ii:
i) [a, b, c](ab, ac, bc) = abc.
ii) ([a, b], [a, c], [b, c]) = [(a, b), (a, c), (b, c)] .
7. Determinat i numerele naturale care pentru care:
i) ab = 2400 si (a, b) = 10.
ii) a +b = 36 (a, b) si [a, b] = 3850.
32 CAPITOLUL 1. NUMERE

INTREGI
8. Fie n N. Aratat i ca exponentul la care apare numarul prim p
n descompunerea lui n! este egal cu:
_
n
p
_
+
_
n
p
2
_
+
_
n
p
3
_
+. . . .
9. Determinat i numarul de zerouri din scrierea zecimala a numarului
100!.
10. Demonstrat i ca
(m+n)!
m! n!
N, pentru orice numere naturale
m, n.
11. Fie a si n doua numere naturale. Aratat i ca daca numarul a
n
1
este prim, atunci a = 2 si n este prim.
12. Sa se determine numerele prime care se pot reprezenta atat ca
suma cat si ca diferent a de numere prime.
13. Daca numarul ab este prim, atunci 2a b este numar prim.
14. Sa se determine numerele naturale n pentru care urmatoarele
numere sunt toate prime:
n + 1, n + 5, n + 7, n + 11, n + 13, n + 17, n + 23.
15. Vericat i daca F
4
este numar prim sau nu, folosind rezultatul
teoremei 1.5.1.
16. Stabilit i pentru ce valori ale numarului natural n [50, 80], un
poligon regulat cu n laturi se poate construi cu rigla si compasul.
17. Sa se rezolve, n numere ntregi, ecuat ia 324x 170y = 19.
CAPITOLUL 2
Fract ii continue
2.1 Fract ii continue nite
Folosind algoritmul lui Euclid, putem exprima numerele rat ionale sub
forma unor fract ii continue.
De exemplu, e
73
19
. Algoritmul lui Euclid aplicat numerelor 73 si 19
consta n relat iile:
73 = 19 3 + 16
19 = 16 1 + 3
16 = 3 5 + 1
3 = 1 3.
Atunci, putem scrie:
73
19
= 3 +
16
19
= 3 +
1
19
16
= 3 +
1
1 +
3
16
= 3 +
1
1 +
1
16
3
= 3 +
1
1 +
1
5 +
1
3
.
Denit ie 2.1.1 O fract ie continua nita este o expresie de forma
a
0
+
1
a
1
+
1
a
2
+
.
.
.
+
1
a
n1
+
1
a
n
33
34 CAPITOLUL 2. FRACT II CONTINUE
unde a
0
, a
1
, . . . , a
n
sunt numere reale, cu a
1
, . . . , a
n
pozitive si o vom
nota [a
0
: a
1
, a
2
, . . . , a
n
]. Aceste numere poarta numele de caturi part iale.
Fract ia continu a se numeste simpla daca numerele reale a
0
, a
1
, . . . ,
a
n
sunt numere ntregi.
Teorema 2.1.1 Orice fract ie continu a nita simpla reprezinta un numar
rat ional.
Demonstrat ie. Procedam prin induct ie matematica dupa n. Pentru
n = 1, [a
0
; a
1
] = a
0
+
1
a
1
=
a
0
a
1
+ 1
a
1
Q.
Presupunem ca armat ia este adevarata pentru fract ii continue, nite,
simple de forma [b
0
; b
1
, . . . b
k
]. Aratam ca armat ia ramane adevarata si
pentru [a
0
; a
1
, . . . a
k
, a
k+1
].
Avem egalitatea [a
0
; a
1
, . . . a
k
, a
k+1
] = a
0
+
1
[a
1
; a
2
, . . . , a
k+1
]
. Din ipoteza
de induct ie, [a
1
; a
2
, . . . , a
k+1
] este numar rat ional. Astfel, obt inem ca si
[a
0
; a
1
, . . . a
k
, a
k+1
] este rat ional.
Teorema 2.1.2 Orice numar rat ional se poate exprima ca o fract ie con-
tinua nita simpla.
Demonstrat ie. Fie x =
a
b
un numar rat ional, unde a, b Z, b > 0.
Aplicam algoritmul lui Euclid pentru r
0
= a si r
1
= b. Obt inem relat iile:
r
0
= r
1
q
2
+r
2
, 0 < r
2
< r
1
r
1
= r
2
q
3
+r
3
, 0 < r
3
< r
2
.
.
.
r
n3
= r
n2
q
n1
+r
n1
, 0 < r
n1
< r
n2
r
n2
= r
n1
q
n
+r
n
, 0 < r
n
< r
n1
r
n1
= r
n
q
n+1
.
Astfel,
a
b
=
r
0
r
1
= q
2
+
1
r
1
r
2
r
1
r
2
= q
3
+
1
r
2
r
3
2.1. FRACT II CONTINUE FINITE 35
. . .
r
n3
r
n2
= q
n1
+
1
r
n2
r
n1
r
n2
r
n1
= q
n
+
1
r
n1
r
n
r
n1
r
n
= q
n+1
.
Remarcam faptul ca q
3
, . . . , q
n+1
> 0.

Inlocuind relat iile, una cate
una, rezulta:
a
b
= q
2
+
1
q
3
+
1
r
2
r
3
= q
2
+
1
q
3
+
1
q
4
+
1
r
3
r
4
= . . .
= [q
2
; q
3
, . . . , q
n+1
].
Prezentam n continuare un algoritm de reprezentare a unui numar
rat ional sub forma unei fract ii continue:
Algoritm 2.1.1
INPUT: a/b, a, b Z, b ,= 0.
OUTPUT: [a
0
; a
1
, . . . , a
n
]
1. a
0
[a/b], r a a
0
b, a b, b r.
2. k 0
3. Cat timp r ,= 0, calculeaz a:
3.1. k k + 1
3.2. a
k
[a/b], r a a
k
b, a b, b r.
4. Returneaza [a
0
; a
1
, . . . , a
n
].
Observat ie 2.1.1 Scrierea unui numar rat ional sub forma unei fract ii
continue nite simple nu este unica. Daca consideram x = [a
0
; a
1
, . . . , a
n
]
fract ia continua nita simpla corespunzatoare numarului rat ional x, pen-
tru a
n
> 1, putem scrie a
n
= (a
n
1) + 1, de unde
x = [a
0
; a
1
, . . . , a
n
1, 1].
36 CAPITOLUL 2. FRACT II CONTINUE
De exemplu,
73
19
= [3; 1, 5, 3] = [3; 1, 5, 2, 1].
De fapt, se poate arata ca un numar rat ional se poate scrie ca o
fract ie continua nita simpla n exact doua feluri, unul cu un numar
impar de termeni iar altul cu un numar par de termeni.
Sa vedem ce se poate obt ine dintr-o fract ie continua nita prin taierea
expresiei la pasi diferit i.
Denit ie 2.1.2 Fract ia continua [a
0
; a
1
, . . . , a
k
], cu 0 k n, se
numeste kconvergenta fract iei continue [a
0
; a
1
, . . . , a
n
] si o notam C
k
.
Teorema 2.1.3 Fie a
0
, a
1
, . . . , a
n
numere reale cu a
i
> 0 pentru
1 i n.
Denim recursiv sirurile:
p
0
= a
0
q
0
= 1
p
1
= a
0
a
1
+ 1 q
1
= a
1
p
k
= a
k
p
k1
+p
k2
q
k
= a
k
q
k1
+q
k2
, 2 k n
Atunci, kconvergenta C
k
= [a
0
; a
1
, . . . , a
k
] =
p
k
q
k
.
Demonstrat ie. Aratam ca aceasta armat ie este adevarata folosind metoda
induct iei matematice.
Pentru k = 0, C
0
= [a
0
] =
a
0
1
=
p
0
q
0
.
Daca k = 1, C
1
= [a
0
; a
1
] = a
0
+
1
a
1
=
a
0
a
1
+ 1
a
1
=
p
1
q
1
.
Presupunem acum C
k
= [a
0
; a
1
, . . . , a
k
] =
p
k
q
k
=
a
k
p
k1
+p
k2
a
k
q
k1
+q
k2
pentru
2 < k < n.
Din modul de denire a ecarui p
i
, q
i
, observam ca numere reale p
k2
,
p
k1
, q
k2
, q
k1
depind doar de caturile part iale a
0
, a
1
, . . . , a
k1
. Astfel,
putem nlocui n ultima relat ie a
k
prin a
k
+
1
a
k+1
. Atunci,
C
k+1
= [a
0
; a
1
, . . . , a
k
, a
k+1
] =
_
a
0
; a
1
, . . . , a
k
+
1
a
k+1
_
2.1. FRACT II CONTINUE FINITE 37
=
_
a
k
+
1
a
k+1
_
p
k1
+p
k2
_
a
k
+
1
a
k+1
_
q
k1
+q
k2
=
a
k+1
(a
k
p
k1
+p
k2
) +p
k1
a
k+1
(a
k
q
k1
+q
k2
) +q
k1
=
a
k+1
p
k
+p
k1
a
k+1
q
k
+q
k1
=
p
k+1
q
k+1
.
Pentru exemplul nostru,
73
19
= [3; 1, 5, 3], obt inem:
p
0
= 3, q
0
= 1,
p
1
= 3 1 + 1 = 4, q
1
= 1,
p
2
= 5 4 + 3 = 23, q
2
= 5 1 + 1 = 6
p
3
= 3 23 + 4 = 73, q
3
= 3 6 + 1 = 19.
Convergentele fract iei continue sunt:
C
0
=
p
0
q
0
= 3, C
1
=
p
1
q
1
= 4, C
2
=
p
2
q
2
=
23
6
, C
3
=
p
3
q
3
=
73
19
.
Propozit ie 2.1.1 Fie k 1, numar natural si consideram C
k
=
p
k
q
k
,
kconvergenta fract iei continue [a
0
; a
1
, . . . , a
n
], denita ca mai nainte.
Atunci,
p
k
q
k1
p
k1
q
k
= (1)
k1
.
Demonstrat ie. Prin induct ie matematica dupa k.
Sa vericam relat iile pentru exemplul anterior:
p
1
q
0
p
0
q
1
= 4 1 3 1 = 1,
p
2
q
1
p
1
q
2
= 23 1 4 6 = 1,
p
3
q
2
p
2
q
3
= 73 6 23 19 = 1.
Corolar 2.1.1 Fie C
k
, kconvergenta fract iei continue simple
[a
0
; a
1
, . . . , a
n
]. Atunci, (p
k
, q
k
) = 1, pentru 1 k n.
Corolar 2.1.2 Fie C
k
=
p
k
q
k
kconvergenta fract iei continue
[a
0
; a
1
, . . . , a
n
]. Atunci,
C
k
C
k1
=
(1)
k1
q
k
q
k1
, 1 k n,
38 CAPITOLUL 2. FRACT II CONTINUE
C
k
C
k2
=
a
k
(1)
k
q
k
q
k2
, 2 k n.
Urmatoarea teorema va folosita la dezvoltarea fract iilor continue
innite.
Teorema 2.1.4 Fie C
k
kconvergenta fract iei continue simple nite
[a
0
; a
1
, . . . , a
n
]. Atunci,
C
1
> C
3
> C
5
> . . .
C
0
< C
2
< C
4
. . . .

In plus, pentru orice numar impar 2i+1 n, si orice numar par 2j n,


C
2i+1
> C
2j
.
Demonstrat ie. Din corolarul 2.1.2, C
k
C
k2
=
a
k
(1)
k
q
k
q
k2
. Astfel, pentru
k impar, C
k
C
k2
< 0 iar pentru k numar par, C
k
> C
k2
.
La fel, C
2m+1
C
2m
=
(1)
2m
q
2m
q
2m1
> 0. Deci, C
2m+1
> C
2m
.

In nal, rezulta C
2i+1
> C
2i+2j+1
> C
2i+2j
> C
2j
.
2.2 Fract ii continue innite
Teorema 2.2.1 Fie (a
n
)
n0
un sir de numere ntregi cu a
1
, a
2
, . . . po-
zitivi si e C
k
= [a
0
; a
1
, . . . , a
k
]. Atunci, exista lim
n
C
n
= .
Demonstrat ie. Folosind teorema 2.1.4, avem
C
1
> C
3
> C
5
> . . . > C
2n1
> C
2n+1
> . . .
C
0
< C
2
< C
4
< . . . < C
2n2
< C
2n
< . . .
si C
2j
< C
2k+1
, pentru orice j, k numere naturale. Astfel, obt inem ca
subsirurile (C
2n+1
)
n0
si (C
2n
)
n0
sunt convergente.
Notam lim
n
C
2n+1
=
1
si lim
n
C
2n
=
2
.
Din corolarul 2.1.2, C
2n+1
C
2n
=
1
q
2n
q
2n+1
.
Folosind induct ia matematica, se verica usor ca q
k
k, pentru orice
k 1. Atunci, C
2n+1
C
2n
<
1
2n(2n + 1)
.
2.2. FRACT II CONTINUE INFINITE 39
Astfel, lim
n
(C
2n+1
C
2n
) = 0.
De aici, 0 = lim
n
C
2n+1
lim
n
C
2n
=
1

2
. Deci,
1
=
2
= .
Observat ie 2.2.1 se numeste valoarea fract iei continue simple in-
nite [a
0
; a
1
, a
2
, a
3
, . . .].
Teorema 2.2.2 Fie (a
n
)
n0
un sir de numere ntregi cu a
1
, a
2
, . . .
pozitivi. Atunci, [a
0
; a
1
, a
2
, . . .] este un numar irat ional.
Demonstrat ie. Fie = [a
0
; a
1
, a
2
, . . .] si C
k
= [a
0
; a
1
, . . . , a
k
] =
p
k
q
k
,
pentru k natural. Din teorema 2.2.1, C
2n
< < C
2n+1
, pentru n
natural. Atunci, 0 < C
2n
< C
2n+1
C
2n
=
1
q
2n
q
2n+1
. Astfel,
0 <
p
2n
q
2n
<
1
q
2n
q
2n+1
.
Rezulta
0 < q
2n
p
2n
<
1
q
2n+1
. (2.1)
Reducem la absurd, si presupunem ca este rat ional. Fie a, b Z,
cu b ,= 0, pentru care =
a
b
.

Inmult ind relat ia ( 2.1) cu b, obt inem 0 < aq


2n
bp
2n
<
b
q
2n+1
. Cum
q
2n+1
2n + 1, pentru orice n, exista n
0
natural astfel ca q
2n
0
+1
> b,
deci
b
q
2n
0
+1
< 1.
Am obt inut astfel, ca numarul ntreg aq
2n
0
bp
2n
0
(0, 1), ceea ce fals.
Rezulta numar irat ional.
Teorema 2.2.3 Fie =
0
un numar irat ional. Denim recursiv sirul
de numere ntregi (a
n
)
n0
prin: a
k
= [
k
],
k+1
=
1

k
a
k
, pentru
k N. Atunci, = [a
0
; a
1
, a
2
, . . .].
Demonstrat ie. Aratam, prin induct ie matematica, ca
k
/ Q, pentru
orice k.
Pentru k = 0, =
0
este irat ional.
Presupunem
k
irat ional, pentru k > 0. Din modul de denire al sirului,

k
= a
k
+
1

k+1
. (2.2)
40 CAPITOLUL 2. FRACT II CONTINUE
Daca
k+1
este rat ional, rezulta
k
rat ional, ceea ce contrazice ipoteza
de induct ie. Deci,
k+1
este irat ional.
Din
k
,= a
k
si a
k
<
k
< a
k
+ 1, rezulta 0 <
k
a
k
< 1 si astfel,

k+1
=
1

k
a
k
> 1, pentru orice k natural.
Deci, a
k+1
= [
k+1
] 1, adica a
1
, a
2
, . . . sunt pozitive.
Din ( 2.2),
=
0
= a
0
+
1

1
= [a
0
;
1
]
= a
0
+
1
a
1
+
1

2
= [a
0
; a
1
,
2
]
= . . .
= [a
0
; a
1
, a
2
, . . . , a
k
,
k+1
].
Deci,
= [a
0
; a
1
, a
2
. . . , a
k
,
k+1
] =

k+1
p
k
+p
k1

k+1
q
k
+q
k1
.
Fie C
j
=
p
j
q
j
, jconvergenta fract iei [a
0
; a
1
, a
2
, . . .]. Atunci, folosind
propozit ia 2.1.1,
C
k
=

k+1
p
k
+p
k1

k+1
q
k
+q
k1

p
k
q
k
=
(p
k
q
k1
p
k1
q
k
)
(
k+1
q
k
+q
k1
) q
k
=
=
(1)
k
(
k+1
q
k
+q
k1
) q
k
.
Dar,
k+1
q
k
+q
k1
> a
k+1
q
k
+q
k1
= q
k+1
. Obt inem
[ C
k
[<
1
q
k
q
k+1

1
k(k + 1)
, de unde lim
k
C
k
= .
Teorema 2.2.4 Daca doua fract ii continue simple innite
[a
0
; a
1
, a
2
, . . .] si [b
0
; b
1
, b
2
, . . .] reprezinta acelasi numar irat ional, atunci
a
k
= b
k
, pentru orice k 0.
Demonstrat ie. Presupunem = [a
0
; a
1
, a
2
, . . .]. Atunci,
= lim
k
[a
0
; a
1
, . . . , a
k
] = lim
k
_
a
0
+
1
[a
1
; a
2
, a
3
, . . . , a
k
]
_
2.2. FRACT II CONTINUE INFINITE 41
= a
0
+
1
lim
k
[a
1
; a
2
, a
3
, . . . , a
k
]
= a
0
+
1
[a
1
; a
2
, a
3
, . . .]
.
Din C
0
= a
0
, C
1
= a
0
+
1
a
1
, rezulta:
a
0
< < a
0
+
1
a
1
,
adica a
0
= [].
Presupunem [a
0
; a
1
, a
2
, . . .] = [b
0
; b
1
, b
2
, . . .]. Astfel, am obt inut
a
0
= b
0
= [] si a
0
+
1
[a
1
; a
2
, . . .]
= b
0
+
1
[b
1
; b
2
, . . .]
, de unde
[a
1
; a
2
, . . .] = [b
1
; b
2
, . . .].
Presupunem ca a
k
= b
k
. Din [a
k+1
; a
k+2
, . . .] = [b
k+1
; b
k+2
, . . .] rezulta
a
k+1
= b
k+1
si a
k+1
+
1
[a
k+2
; a
k+3
, . . .]
= b
k+1
+
1
[b
k+2
; b
k+3
, . . .]
. Astfel,
[a
k+2
; a
k+3
, . . .] = [b
k+2
; b
k+3
, . . .]. Deci, prin induct ie matematica, am
aratat ca a
k
= b
k
, pentru orice k.
Sa consideram =

7. Folosind ultimele doua teoreme, sa gasim
fract ia continua innita corespunzatoare.
a
0
= [

7] = 2,
1
=
1

7 2
=

7 + 2
3
,
a
1
= [
1
] = 1,
2
=
1
2 +

7
3
1
=

7 + 1
2
,
a
2
= [
2
] = 1,
3
=
1

7 + 1
2
1
=

7 + 1
3
,
a
3
= [
3
] = 1,
4
=
1

7 + 1
3
1
= 2 +

7,
a
4
= [
4
] = 4,
5
=
1
2 +

7 4
=
1

7 2
=
1
.
Obt inem astfel,

7 = [2; 1, 1, 1, 4, 1, 1, 1, 4, 1, 1, 1, 4, . . .].
Convergentele unei fract ii continue simple innite ale unui numar
irat ional sunt cele mai bune aproximari rat ionale ale lui , n sensul
42 CAPITOLUL 2. FRACT II CONTINUE
ca
p
k
q
k
e mai aproape de decat orice alt numar rat ional cu numitorul
mai mic decat q
k
.
Prezentam aceste teoreme fara demonstrat ii. Pentru cei interesat i,
problema este abordata n detaliu n [5] si [20].
Teorema 2.2.5 Fie un numar irat ional si
p
j
q
j
jconvergentele fract iei
continue simple innite corespunzatoare lui .
Daca r, s Z, cu s > 0, si k N, astfel ca
[ s r [<[ q
k
p
k
[,
atunci s q
k+1
.
Corolar 2.2.1 Fie un numar irat ional si
p
j
q
j
jconvergentele fract iei
continue simple innite corespunzatoare lui .
Daca
r
s
Q, cu r, s Z, s > 0, si k N astfel ncat


r
s

<


p
k
q
k

,
atunci s > q
k
.
De exemplu, fract ia continua simpla a lui este
[3; 7, 15, 1, 292, 1, 1, 1, 2, 1, 3, . . .].
Convergentele: 3,
22
7
,
333
106
,
355
113
,
103993
33102
, sunt cele mai bune aproximari
rat ionale ale lui :
22
7
este cea mai buna aproximare a lui cu numitor < 106,
335
113
este cea mai buna aproximare a lui cu numitor < 33102, etc.
De asemenea, se poate arata ca orice sucient de apropiata aproxi-
mare rat ionala a unui numar irat ional trebuie sa e o convergenta a
fract iei corespunzatoare numarului irat ional luat n discut ie.
2.3. FRACT II CONTINUE PERIODICE 43
Teorema 2.2.6 Fie un numar irat ional si
r
s
Q, cu r, s Z, rela-
tiv prime, s > 0, cu proprietatea ca


r
s

<
1
2s
2
. Atunci,
r
s
este o
convergenta a fract iei continue simple a lui .
2.3 Fract ii continue periodice
Denit ie 2.3.1 O fract ie continua innita simpla [a
0
; a
1
, a
2
, . . .] este
periodica daca exista N si k numere naturale astfel ca a
n
= a
n+k
, pentru
orice n N.
Vom folosi notat ia [a
0
; a
1
, . . . a
N1
, a
N
, a
N+1
, . . . , a
N+k1
] .
De exemplu,
_
1; 2, 3, 4

= [1; 2, 3, 4, 3, 4, 3, 4, . . .].
Denit ie 2.3.2 Un numar real se numeste irat ional patratic daca
este irat ional si este radacina a unui polinom de gradul al doilea cu
coecient i ntregi.
Urmatoarele rezultate introductive sunt usor de demonstrat, drept
pentru care vor doar enunt ate.
Lema 2.3.1 Numarul real este irat ional patratic daca si numai daca
exista a, b, c numere ntregi, cu b > 0, b nu este patrat perfect si c ,= 0,
astfel ncat =
a +

b
c
.
Lema 2.3.2 Daca este numar irat ional patratic si r, s, t, u Z, atunci
r +s
t +u
este numar rat ional sau irat ional patratic.
Denit ie 2.3.3 Fie =
a +

b
c
un numar irat ional patratic.
Atunci,

=
a

b
c
se numeste conjugatul lui .
Lema 2.3.3 Daca este un numar irat ional patratic, radacina a poli-
nomului AX
2
+BX+C Z[X],

este cealalta radacina a polinomului.


44 CAPITOLUL 2. FRACT II CONTINUE
Lema 2.3.4 Fie
1
=
a
1
+
_
b
1
c
2
,
2
=
a
2
+
_
b
2
c
2
doua numere rat ionale
sau irat ionale patratice. Atunci:
(
1
+
2
)

1
+

2
(
1

2
)

2
(
1

2
)

2
_

2
_

2
Lema 2.3.5 Daca este un numar irat ional patratic, atunci exista nu-
merele ntregi P, Q, d cu Q ,= 0, d > 0 nu este patrat perfect, Q [ d P
2
astfel ncat =
P +

d
Q
.
Demonstrat ie. Din lema 2.3.1, exista a, b, c Z cu c ,= 0, b > 0 nu este
patrat perfect, pentru care =
a +

b
c
.
Atunci, putem scrie =
a [ c [ +

bc
2
c [ c [
.
Facem notat iile: P = a [ c [, Q = c [ c [ si d = bc
2
. Se observa ca
P, Q, d Z, Q ,= 0, d > 0 nu e patrat perfect.
Din d P
2
= bc
2
a
2
c
2
= c
2
_
b a
2
_
= Q
_
b a
2
_
, obt inem
Q [ d P
2
.
Teorema urmatoare ofera un algoritm de determinare a fract iei con-
tinue simple corespunzatoare unui irat ional patratic.
Teorema 2.3.1 Fie =
P
0
+

d
Q
0
un irat ional patratic cu Q
0
,= 0,
d > 0 care nu este patrat perfect si Q
0
[ d P
2
0
.
Denim recursiv, pentru k 0:

k
=
P
k
+

d
Q
k
, a
k
= [
k
],
P
k+1
= a
k
Q
k
P
k
,
Q
k+1
=
d P
2
k+1
Q
k
.
Atunci, = [a
0
; a
1
, a
2
, . . .].
2.3. FRACT II CONTINUE PERIODICE 45
Demonstrat ie. Prin induct ie matematica aratam ca
P
k
, Q
k
Z, Q
k
,= 0, Q
k
[ d P
2
k
, (2.3)
pentru k 0.
Pentru k = 0, din ipoteza teoremei, relat iile sunt vericate.
Presupunem ca ( 2.3) este adevarata pentru k si aratam ca ea ramane
adevarata pentru k + 1.
P
k+1
= a
k
Q
k
P
k
, deci P
k+1
Z.
Q
k+1
=
d P
2
k+1
Q
k
=
d (a
k
Q
k
P
k
)
2
Q
k
=
d P
2
k
Q
k
+ 2a
k
P
k
a
2
k
Q
k
Z
cum, din ipoteza de induct ie,
d P
2
k
Q
k
Z.
d ,= P
2
k+1
, neind patrat perfect. Atunci Q
k+1
=
d P
2
k+1
Q
k
,= 0.
Din Q
k
=
d P
2
k+1
Q
k+1
Z, rezulta Q
k+1
[ d P
2
k+1
.
Demonstram acum ca a
0
, a
1
, a
2
, . . . sunt caturile part iale ale fract iei
continue corespunzatoare lui . Pentru aceasta, folosim teorema 2.2.3
si aratam ca
k+1
=
1

k
a
k
, pentru orice k 0.

k
a
k
=
P
k
+

d
Q
k
a
k
=

d (a
k
Q
k
P
k
)
Q
k
=

d P
k+1
Q
k
=
_

d P
k+1
__

d +P
k+1
_
Q
k
_

d +P
k+1
_
=
Q
k
Q
k+1
Q
k
_

d +P
k+1
_ =
Q
k+1

d +P
k+1
=
1

k+1
.
De exemplu, pentru =
2 +

7
3
irat ional patratic avem
P
0
= 2, d = 7, Q
0
= 3. Atunci,
a
0
= [] = 1 a
1
= [
1
] = 1
P
1
= 1 3 2 = 1 P
2
= 1 2 1 = 1
46 CAPITOLUL 2. FRACT II CONTINUE
Q
1
=
7 1
3
= 2 Q
2
=
7 1
2
= 3

1
=
1 +

7
2

2
=
1 +

7
3
a
2
= [
2
] = 1 a
3
= [
3
] = 4
P
3
= 1 3 1 = 2 P
4
= 4 1 2 = 2
Q
3
=
7 4
3
= 1 Q
4
=
7 4
1
= 3

3
= 2 +

7
4
=
2 +

7
3
=
0
.
Astfel, =
2 +

7
3
=
_
1; 1, 1, 4

.
Teorema 2.3.2 (Lagrange) Fract iile continue simple innite cores-
punzatoare pentru numere irat ionale sunt periodice daca si numai daca
numerele sunt irat ionale patratice.
Demonstrat ie. Fie = [a
0
; a
1
. . . , a
N1
, a
N
, a
N+1
, . . . a
N+k
].
Notam = [a
N
; a
N+1
, . . . a
N+k
] . Atunci, = [a
N
; a
N+1
, . . . a
N+k
, ].
Folosind rezultatul teoremei 2.1.3, =
p
k
+p
k1
q
k
+q
k1
unde
p
k1
q
k1
si
p
k
q
k
sunt convergente ale fract iei [a
N
; a
N+1
, . . . , a
N+k
].
Cum fract ia continua simpla a lui este innita, este irat ional.
Din relat ia anterioara, q
k

2
+ (q
k1
p
k
) p
k1
= 0. Deci, este
irat ional patratic.
Se observa ca = [a
0
; a
1
, . . . , a
N1
, ]. De aici,
=
p
N1
+p
N2
q
N1
+q
N2
unde
p
N1
q
N1
si
p
N2
q
N2
sunt convergentele fract iei
[a
0
; a
1
, . . . , a
N1
]. Din lema 2.3.2, cum este irat ional patratic, rezulta
rat ional sau irat ional patratic. Fract ia continua corespunzatoare lui
ind innita, nu este rat ional. Deci, este irat ional patratic.
Reciproc, consideram acum irat ional patratic. Din lema 2.3.5,
=
P
0
+

d
Q
0
, iar din teorema 2.3.1, = [a
0
; a
1
, a
2
, . . .] unde

k
=
P
k
+

d
Q
k
, a
k
= [
k
], P
k+1
= a
k
Q
k
P
k
si Q
k+1
=
d P
2
k+1
Q
k
.
2.3. FRACT II CONTINUE PERIODICE 47
Cum = [a
0
; a
1
, a
2
, . . . ,
k
], din teorema 2.2.3, rezulta
=

k
p
k1
+p
k2

k
q
k1
+q
k2
.
Prin conjugare, obt inem

k
p
k1
+p
k2

k
q
k1
+q
k2
de unde,

k
=
q
k2
q
k1

p
k2
q
k2

p
k1
q
k1
.
Convergentele
p
k1
q
k1
si
p
k2
q
k2
tind la , pentru k .
Astfel, lim
k

p
k2
q
k2

p
k1
q
k1
= 1.
Deci, exista N natural astfel ncat

k
< 0 pentru k N. Cum

k
> 0, pentru orice k 1, rezulta

k
=
P
k
+

d
Q
k

P
k

d
Q
k
=
2

d
Q
k
> 0 pentru k N. Astfel,
Q
k
> 0, pentru k N.
Din Q
k
Q
k+1
= d P
2
k+1
, pentru k N, obt inem:
Q
k
Q
k
Q
k+1
d
si
P
2
k+1
P
2
k+1
+Q
k
Q
k+1
= d.
Deci, pentru k N avem:

d < P
k+1
<

d, 0 < Q
k
d.
Astfel, cum P
k
, Q
k
sunt numere ntregi, exista un numar nit de valori
posibile pentru perechile (P
k
, Q
k
) cu k N. Dar, k N ia o innitate de
valori si astfel, exista i, j N, i < j, cu P
i
= P
j
si Q
i
= Q
j
. Din modul
n care sunt denite, rezulta
i
=
j
. Atunci, a
i
= a
j
, a
i+1
= a
j+1
, . . . .
Obt inem ca
= [a
0
; a
1
, . . . , a
i1
, a
i
, a
i+1
, . . . , a
j1
, a
i
, a
i+1
, . . . , a
j1
, . . .]
= [a
0
; a
1
, . . . , a
i1
, a
i
, a
i+1
, . . . , a
j1
]
este o fract ie continua simpla periodica.
48 CAPITOLUL 2. FRACT II CONTINUE
Denit ie 2.3.4 Fract ia continua [a
0
; a
1
, a
2
, . . .] se numeste pur peri-
odic a daca exista N, numar natural, astfel ncat a
k
= a
N+k
, pentru
orice k 0, adica
[a
0
; a
1
, a
2
, . . .] = [a
0
; a
1
, a
2
, . . . , a
N1
] .
De exemplu, =
2 +

7
3
=
_
1; 1, 1, 4

este o fract ie pur periodica.


Denit ie 2.3.5 Un numar irat ional patratic se numeste redus daca
> 1 si 1 <

< 0.
Teorema 2.3.3 Fract ia continua simpla a unui numar irat ional patratic
este pur periodica daca si numai daca este redus.
Mai mult, daca este redus si = [a
0
; a
1
, a
2
, . . . , a
n
] , atunci fract ia
continu a corespunzatoare lui
1

este [a
n
; a
n1
, . . . , a
1
, a
0
].
Demonstrat ie. Presupunem mai ntai ca este un numar irat ional
patratic redus. Din teorema 2.2.3, = [a
0
; a
1
, a
2
, . . .] unde =
0
,
a
k
= [
k
],
k+1
=
1

k
a
k
, pentru k 0.
Atunci,
1

k+1
=
k
a
k
, si, prin conjugare,
1

k+1
=

k
a
k
.
Aratam, prin induct ie matematica, ca 1 <

k
< 0, pentru orice
k 0. Cum
0
este redus, armat ia este vericata pentru k = 0.
Presupunem ca 1 <

k
< 0. Pentru ca
0
> 1, avem a
0
1. De aici,
a
k
1, pentru k 0.
Atunci
1

k+1
=

k
a
k
< 1 deci, 1 <

k+1
< 0.
Sa observam acum ca, din

k
=
1

k+1
+ a
k
si 1 <

k
< 0, avem
1 < a
k
+
1

k+1
. Atunci, 1
1

k+1
< a
k
<
1

k+1
, adica a
k
=
_

k+1
_
.
Conform teoremei 2.3.2, ind irat ional patratic, exista i, j numere
ntregi, cu i < j astfel ncat
i
=
j
, adica
1

i
=
1

j
. Deci, a
i1
=
2.3. FRACT II CONTINUE PERIODICE 49
a
j1
. Continuand, obt inem
j2
=
i2
,
j3
=
i3
, . . .
ji
=
0
.
Rezulta astfel,
=
0
= [a
0
; a
1
, . . . , a
ji1
,
ji
]
= [a
0
; a
1
, . . . , a
ji1
,
0
] = [a
0
; a
1
, . . . a
ji1
]
este fract ie continua pur periodica.
Reciproc, presupunem acum irat ional patratic si fract ia continua
= [a
0
; a
1
, . . . , a
k
] este pur periodica.
Din = [a
0
; a
1
, . . . , a
k
, ], rezulta =
p
k
+p
k1
q
k
+q
k1
unde
p
k1
q
k1
si
p
k
q
k
sunt convergentele fract iei continue . Obt inem:
q
k

2
+ (q
k1
p
k
) p
k1
= 0. (2.4)
Fie un irat ional patratic astfel ca = [a
k
; a
k1
, . . . , a
1
, a
0
] . Atunci,
= [a
k
; a
k1
, . . . , a
1
, a
0
, ].
La fel ca mai nainte, obt inem =
p

k
+p

k1
q

k
+q

k1
unde
p

k1
q

k1
si
p

k
q

k
sunt
convergentele fract iei continue .
Observam ca
p
k
p
k1
= [a
k
; a
k1
, . . . , a
1
, a
0
] =
p

k
q

k
si
q
k
q
k1
= [a
k
; a
k1
, . . . , a
2
, a
1
] =
p

k1
q

k1
.
Conform corolarului 2.1.1, convergentele
p
k1
q
k1
,
p
k
q
k
,
p

k1
q

k1
,
p

k
q

k
sunt fract ii
ireductibile.
Astfel, p

k
= p
k
, q

k
= p
k1
, p

k1
= q
k
, q

k1
= q
k1
.

Inlocuind, rezulta
=
p
k
+q
k
p
k1
+q
k1
adica p
k1

2
+(q
k1
p
k
) q
k
= 0, relat ie pe care
o putem scrie sub forma
q
k
_

_
2
+ (q
k1
p
k
)
_

_
p
k1
= 0. (2.5)
50 CAPITOLUL 2. FRACT II CONTINUE
Din ( 2.4) si ( 2.5), rezulta ca cele doua radacini ale ecuat iei
q
k
x
2
+ (q
k1
p
k
) x p
k1
= 0
sunt si
1

. Deci,

=
1

.
Cum = [a
k
; a
k1
, . . . , a
1
, a
0
] , > 1. De aici,
1 <

=
1

< 0.
Astfel, am demonstrat ca este redus.
Din =
1

, rezulta
1

= [a
k
; a
k1
, . . . , a
1
, a
0
] .

Incheiem capitolul precizand forma fract iilor continue simple peri-


odice pentru numere irat ionale patratice de forma

d cu d numar na-
tural, care nu este patrat perfect. Observam ca

d nu este redus, cum
conjugatul sau

d / (1, 0).
Dar, din
_

d
_

d (1, 0), gasim ca


_

d
_
+

d este irat ional patratic


redus.
Conform teoremei 2.3.3, fract ia continua a lui
_

d
_
+

d este pur pe-


riodica. Primul cat part ial al acestei fract ii periodice este
__

d
_
+

d
_
=
2
_

d
_
= 2a
0
, unde a
0
=
_

d
_
. Putem scrie:
_

d
_
+

d =
_
2a
0
; a
1
, a
2
, . . . , a
n

=
=
_
2a
0
; a
1
, a
2
, . . . , a
n
, 2a
0
, a
1
, a
2
, . . . , a
n

.
De aici, scazand a
0
, rezulta:

d = [a
0
; a
1
, a
2
, . . . , a
n
, 2a
0
, a
1
, a
2
, . . . , a
n
, 2a
0
, . . .] =
=
_
a
0
; a
1
, a
2
, . . . , a
n
, 2a
0

.
Tot din teorema 2.3.3, stim ca fract ia continua pentru

1
_

d
_

d
=
1

d
_

d
_
este
_
a
n
; a
n1
, . . . , a
1
, 2a
0

.
2.3. FRACT II CONTINUE PERIODICE 51
Observam ca

d
_

d
_
=
_
0; a
1
, a
2
, . . . , a
n
, 2a
0

. De aici,
1

d
_

d
_
=
_
a
1
; a
2
, . . . , a
n
, 2a
0

.
Din teorema 2.2.4, reprezentarea unui numar irat ional sub forma unei
fract ii continue simple innite este unica. Aplicam acest rezultat pentru
1

d
_

d
_
si obt inem a
1
= a
n
, a
2
= a
n1
, . . . , a
n
= a
1
.
Deci, partea periodica a fract iei continue pentru

d este simetrica
de la primul termen pana la penultimul. Astfel,

d =
_
a
0
; a
1
, a
2
, . . . , a
2
, a
1
, 2a
0

.
Spre exemplu, se poate verica prin calcul

23 =
_
4; 1, 3, 1, 8

.
Putem rezuma cele prezentate pentru a descrie un algoritm de dez-
voltare a lui

d n fract ie continua unde d N, nu este patrat perfect.
Consideramsirurile: (a
k
)
k0
, (P
k
)
k0
, (Q
k
)
k0
denite can teorema
2.3.1:
a
0
= [

d], P
0
= 0, Q
0
= 1,
P
k+1
= a
k
Q
k
P
k
,
Q
k+1
=
d P
2
k+1
Q
k
,
a
k+1
=
_
a
0
+P
k+1
Q
k+1
_
,
pentru k 0.
Vom calcula termenii P
k
, Q
k
pana cand obt inem primul indice t
pentru care P
t+1
= P
1
si Q
t+1
= Q
1
.

In [5], se precizeaza ca pentru t numar par, n =


t
2
este cel mai mic
indice pentru care P
n+1
= P
n
, iar daca t este impar, n =
t 1
2
este cel
mai mic indice pentru care Q
n+1
= Q
n
.
T inand cont de aceasta observat ie, vom calcula termenii sirurilor
pana cand P
n+1
= P
n
sau Q
n+1
= Q
n
.
52 CAPITOLUL 2. FRACT II CONTINUE
Atunci:
i) Daca P
n+1
= P
n
,

d = [a
0
; a
1
, . . . , a
n1
, a
n
, a
n1
, . . . , a
1
, 2a
0
],
deci numarul termenilor din perioada minima este par;
ii) Daca Q
n+1
= Q
n
,

d = [a
0
; a
1
, . . . , a
n1
, a
n
, a
n
, a
n1
, . . . , a
1
, 2a
0
],
deci lungimea perioadei minime este impara.
De exemplu, pentru d = 809, vom obt ine:
a
0
=
_
809

= 28, P
0
= 0, Q
0
= 1
P
1
= 28 1 0 = 28 Q
1
=
809 28
2
1
= 25 a
1
=
_
28 + 28
25
_
= 2
P
2
= 2 25 28 = 22 Q
2
=
809 22
2
25
= 13 a
2
=
_
28 + 22
13
_
= 3
P
3
= 3 13 22 = 17 Q
3
=
809 17
2
13
= 40 a
3
=
_
28 + 17
40
_
= 1
P
4
= 1 40 17 = 23 Q
4
=
809 23
2
40
= 7 a
4
=
_
28 + 23
7
_
= 7
P
5
= 7 7 23 = 26 Q
5
=
809 26
2
7
= 19 a
5
=
_
28 + 26
19
_
= 2
P
6
= 2 19 26 = 12 Q
6
=
809 12
2
19
= 35 a
6
=
_
28 + 12
35
_
= 1
P
7
= 1 35 12 = 23 Q
7
=
809 23
2
35
= 8 a
7
=
_
28 + 23
8
_
= 6
P
8
= 6 8 23 = 25 Q
8
=
809 25
2
8
= 23 a
8
=
_
28 + 25
23
_
= 2
P
9
= 2 23 25 = 21 Q
9
=
809 21
2
23
= 16 a
9
=
_
28 + 21
16
_
= 3
P
10
= 3 16 21 = 27 Q
10
=
809 27
2
16
= 5 a
10
=
_
28 + 27
5
_
= 11
P
11
= 11 5 27 = 28 Q
11
=
809 28
2
5
= 5 a
11
=
_
28 + 28
5
_
= 11
Din Q
10
= Q
11
, rezulta:

809 =
_
28; 2, 3, 1, 7, 2, 1, 6, 2, 3, 11, 11, 3, 2, 6, 1, 2, 7, 1, 3, 2, 56

.
2.3. FRACT II CONTINUE PERIODICE 53
Astfel, algoritmul propus va avea forma:
Algoritm 2.3.1 (

d ca fract ie continua)
INPUT: d N care nu este patrat perfect.
OUTPUT: fract ia continua corespunzatoare.
1. a
0
[

d], P
0
0, Q
0
1.
2. Pentru i = 0, 1, 2, . . . efectueaza:
2.1. P
i+1
a
i
Q
i
P
i
, Q
i+1
(d P
2
i+1
)/Q
i
,
a
i+1
[(a
0
+P
i+1
)/Q
i+1
].
2.2. Daca P
i
= P
i+1
atunci returneaza
[a
0
; a
1
, . . . , a
i1
, a
i
, a
i1
, . . . , a
1
, 2a
0
] si se opreste.
2.3. Daca Q
i
= Q
i+1
atunci returneaza
[a
0
; a
1
, . . . , a
i
, a
i
, . . . , a
1
, 2a
0
] si se opreste.
2.4. i i + 1.

In [5], sunt precizate teoreme de reprezentare pentru numere ntregi.


O astfel de teorema, stabileste forma generala a numerelor naturale care
se pot scrie ca suma de doua patrate:
Teorema 2.3.4 (Fermat-Euler) Fie n > 1, n = 2
k
n
1
n
2
, unde
k N, n
1
este produsul factorilor primi impari de forma 4k + 1 ai lui
n iar n
2
este produsul celorlalt i factori primi impari ai lui n (de forma
4k + 3).
Ecuat ia x
2
+ y
2
= n are solut ii ntregi daca si numai daca tot i
exponent ii din descompunerea canonica a lui n
2
sunt pari.
Mai mult, daca ecuat ia are solut ii, ea va avea exact 4(d
1
(n) d
3
(n))
solut ii ntregi, unde d
s
(n) reprezinta numarul de divizori ai lui n de
forma 4k +s, s 1, 3.
Daca particularizam, si alegem p, un numar prim de forma 4k + 1,
observam ca ne ncadram n condit iile teoremei. Astfel, ecuat ia
x
2
+y
2
= p
unde p este un numar prim de forma 4k+1, va avea ntotdeauna 2 solut ii
n mult imea numerelor naturale. Metoda de determinare a acestora este
datorata lui Lagrange, care a stabilit ca, pentru un astfel de numar prim,
lungimea perioadei fract iei continue corespunzatoare lui

p este impara.
54 CAPITOLUL 2. FRACT II CONTINUE
Deci, folosind rezultatele anterioare, obt inem

p = [a
0
; a
1
, . . . , a
n
, a
n
, . . . , a
1
, 2a
0
],
unde n este cel mai mic indice pentru care Q
n+1
= Q
n
.
Numarul
n+1
= [a
n
; a
n1
, . . .] are perioada simetrica. Din teorema
2.3.3,
n+1

n+1
= 1. Pe de alta parte, pastrand notat iile anterioare,

n+1
=
P
n+1
+

p
Q
n+1
iar

n+1
=
P
n+1

p
Q
n+1
.
Astfel, rezulta p = P
2
n+1
+ Q
2
n+1
, deci (P
n+1
, Q
n+1
) si (Q
n+1
, P
n+1
)
sunt solut iile ecuat iei.
Pentru exemplul anterior, p = 809 = 4 202 +1 este de forma dorita.
Am obt inut Q
10
= Q
11
. Atunci, din P
11
= 28, si Q
11
= 5, solut iile
naturale ale ecuat iei x
2
+y
2
= 809 sunt (28, 5), (5, 28).
Algoritmul prezentat anterior poate folosit pentru rezolvarea aces-
tui tip de ecuat ii.
Algoritm 2.3.2 (rezolvarea ecuat iei x
2
+y
2
= p)
INPUT: p numar prim, de forma 4k + 1.
OUTPUT: solut iile (x,y) ale ecuat iei.
1. a
0
[

d], P
0
0, Q
0
1.
2. Pentru i = 0, 1, 2, . . . efectueaza:
2.1. P
i+1
a
i
Q
i
P
i
, Q
i+1
(d P
2
i+1
)/Q
i
,
a
i+1
[(a
0
+P
i+1
)/Q
i+1
].
2.2. Daca Q
i
= Q
i+1
atunci returneaza
(P
i+1
, Q
i+1
); (Q
i+1
, P
i+1
) si se opreste.
2.3. i i + 1.
Exercit ii propuse
1. Determinat i numerele rat ionale reprezentate de fract iile continue
simple:
i) [2; 7],
ii) [0; 5, 6],
iii) [3; 7, 15, 1].
2.3. FRACT II CONTINUE PERIODICE 55
2. Determinat i fract iile continue simple corespunzatoare numerelor
rat ionale:
6
5
,
22
7
,
101
29
,
23
141
.
3. Daca Q, > 1, are fract ia continua simpla [a
0
; a
1
, . . . , a
n
],
atunci aratat i ca fract ia continua simpla corespunzatoare lui
1

este
[0; a
0
, a
1
, . . . , a
n
].
4. Determinat i fract iile continue simple corespunzatoare numerelor:

2,

3,
1 +

5
2
.
5. Determinat i primele 5 caturi part iale ale fract iilor continue simple
pentru:
3

2, 2,
e 1
e + 1
.
6. Fract ia continua innita corespunzatoare numarului e este
e = [2; 1, 2, 1, 1, 4, 1, 1, 6, 1, 1, 8, . . .].
i) Determinat i primele 8 convergente ale fract iei.
ii) Determinat i cea mai buna aproximare a lui e cu numitor mai mic
decat 100.
7. Fie = [a
0
; a
1
, a
2
, . . .] un numar irat ional. Aratat i ca fract ia
continua simpla corespunzatoare lui este [a
0
1; 1, a
1
1, a
2
, a
3
, . . .],
daca a
1
> 1 si [a
0
1; a
2
+ 1, a
3
, . . .], pentru a
1
= 1.
8. Determinat i fract iile continue simple pentru numerele:
i)

11,

23,

47,
ii)
1 +

3
2
,
13

2
7
.
9. Determinat i irat ionalul patratic a carui dezvoltare n fract ie con-
tinua simpla este:
i)
_
2; 1, 5

,
ii)
_
2; 1, 5

.
56 CAPITOLUL 2. FRACT II CONTINUE
10. Aratat i ca, daca d este numar natural, fract ia continua simpla
pentru

d
2
+ 1 este
_
d; 2d

. Folosind acest rezultat, determinat i fract iile


continue pentru

101,

290.
11. Fie d 2, numar natural. Aratat i ca:
i)

d
2
1 =
_
d 1; 1, 2d 2

,
ii)

d
2
d =
_
d 1; 2, 2d 2

.
Folosind aceste rezultate, determinat i fract iile continue pentru

99
si

110.
12. Care dintre urmatorii irat ionali patratici
1 +

5, 2 +

8, 4 +

17,
11

10
9
,
3 +

23
2
au fract iile continue pur periodice?
13. Rezolvat i, n numere naturale ecuat iile:
i) x
2
+y
2
= 1009,
ii) x
2
+y
2
= 405.
CAPITOLUL 3
Congruent e
3.1 Not iuni generale
Denit ie 3.1.1 Fie m un numar natural nenul si a, b doua numere
ntregi. Spunem ca a este congruent cu b modulo m daca m [ a b.

In acest caz, vom folosi notat ia a b (mod m).


Congruent ele apar foarte des n viat a de zi cu zi. De exemplu, ceasul
funct ioneaza modulo 12 sau 24 ore, calendarul modulo 12 luni sau mo-
dulo 7 pentru zile, metrul modulo 1000 mm, etc. Congruent a cu doi este
cel mai simplu tip de congruent a, unde numerele congruente cu 0 sunt
numite numere pare iar cele congruente cu 1, impare.
Unele dintre propozit iile urmatoare au demonstrat iile foarte simple
si sunt propuse cititorului ca exercit iu.
Propozit ie 3.1.1 Daca a, b Z iar m 2 este un numar natural,
atunci a b (mod m) daca si numai daca exista k numar ntreg pentru
care a = b +km.
Propozit ie 3.1.2 Relat ia de congruent a este o relat ie de echivalent a pe
mult imea numerelor ntregi Z.
Conform acestui rezultat, mult imea Z este mpart ita n clase de
echivalent a unde clasa de echivalent a a numarului ntreg a este formata
din toate numerele ntregi de forma a +km, cu k Z.
57
58 CAPITOLUL 3. CONGRUENT E
Denit ie 3.1.2 Un sistem complet de resturi modulo m este o mult ime
de numere ntregi astfel ncat orice ntreg este congruent modulo m cu
un singur numar din mult ime.
Spre exemplu:
1) 0, 1, . . . , m1 se numeste mult imea celor mai mici resturi pozitive
modulo m.
2) Pentru m natural impar, sistemul complet de resturi

m1
2
,
m3
2
, . . . , 1, 0, 1, . . . ,
m3
2
,
m1
2

se numeste mult imea celor mai mici resturi, n valoare absoluta, modulo
m.
Propozit ie 3.1.3 Fie a, b numere ntregi, m numar natural nenul, ast-
fel ncat a b (mod m). Atunci, pentru orice ntreg c, au loc relat iile:
1) a +c b +c (mod m),
2) a c b c (mod m),
3) ac bc (mod m).
Propozit ie 3.1.4 Fie m un numar natural nenul si a, b, c numere ntregi
unde (c, m) = d. Daca ac bc (mod m), atunci a b (mod
m
d
).
Demonstrat ie. Din ac bc (mod m), exista k Z astfel ca c(ab) = km.
Cum d = (c, m), obt inem c = dc

, m = dm

cu (c

, m

) = 1. Rezulta
c

(a b) = km

, adica m

[ a b.

In practica, apare mai des un caz particular al acestei propozit ii, si


anume:
Corolar 3.1.1 Fie m un numar natural nenul si a, b, c numere ntregi
unde (c, m) = 1.
Daca ac bc (mod m), atunci a b (mod m).
Propozit ie 3.1.5 Daca a b (mod m) si c d (mod m), atunci,
1) a c b d (mod m),
3.1. NOT IUNI GENERALE 59
2) ac bd (mod m).
Propozit ie 3.1.6 Daca r
1
, r
2
, . . . , r
m
este un sistem complet de res-
turi modulo m iar a N cu (a, m) = 1, atunci,
ar
1
+b, ar
2
+b, . . . , ar
m
+b
este un sistem complet de resturi modulo m, pentru orice b Z.
Demonstrat ie. Cum mult imea este formata din m elemente, este sucient
sa arata ca oricare doua dintre acestea nu sunt congruente modulo m.
Daca presupunem ca ar
j
+ b ar
k
+ b (mod m), pentru j ,= k, atunci
ar
j
ar
k
(mod m). Din corolarul 3.1.1 rezulta r
j
r
k
(mod m), ceea
ce este fals.
Propozit ie 3.1.7 Daca a b (mod m), atunci a
k
b
k
(mod m), pen-
tru orice numar natural k.
Propozit ie 3.1.8 Daca a b (mod m
1
), a b (mod m
2
),. . . ,
a b (mod m
k
), atunci a b (mod [m
1
, m
2
, . . . , m
k
]).
O consecint a imediata a acestei propozit ii este data de:
Corolar 3.1.2 Fie numerele naturale nenule m
1
, m
2
, . . . , m
k
, doua cate
doua relativ prime.
Daca a b (mod m
1
), a b (mod m
2
), . . . , a b (mod m
k
), atunci
a b (mod m
1
m
2
. . . m
k
).
Ca o prima aplicat ie a congruent elor, prezentam o metoda rapida
de calcul pentru b
n
(mod m) unde b, n, m sunt numere naturale. Ea
este denumita metoda ridicarii repetate la patrat si reducerii modulo m,
algoritmul presupunand doar ridicari la patrat si nmult iri repetate cu
numere naturale mai mici decat modulul. Aceasta metoda, ind deosebit
de ecienta pentru valori mari ale lui n si m, este des folosita n multe
protocoale criptograce care implica exponent ieri modulare.
Pentru nceput, se scrie n n baza 2. Fie n = (a
k
a
k1
. . . a
1
a
0
)
2
.
Atunci
b
n
= b
k

j=0
2
j
a
j
=
_
b
2
0
_
a
0
_
b
2
1
_
a
1
. . .
_
b
2
k
_
a
k
.
T inand cont de aceasta relat ie, calculamntai resturile modulo m ale lui
b, b
2
, b
4
, . . . , b
2
k
ridicand succesiv la patrat si reducand modulo m. Dupa
60 CAPITOLUL 3. CONGRUENT E
aceea, nmult im resturile modulo m ale lui b
2
j
cu a
j
= 1 si reducem
modulo m.
De exemplu, tabelul urmator pune n evident a, pe pasi, calculul efec-
tuat pentru 5
596
(mod 1234) :
j 0 1 2 3 4 5 6 7 8 9
a
j
0 0 1 0 1 0 1 0 0 1
A 5 25 625 681 1011 369 421 779 947 925
N 1 1 625 625 67 67 1059 1059 1059 1013
unde, la ecare pas j, am notat:
A = 5
2
j
(mod 1234) si
N = 5
a
0
_
5
2
_
a
1
. . .
_
5
2
j
_
aj
(mod 1234).
Algoritm 3.1.1 (Ridicare repetata la patrat)
INPUT: numerele naturale b, n, m.
OUTPUT: b
n
(mod m)
1. N 1. Daca n = 0, returneaz a N si se opreste.
2. A b.
3. Daca a
0
= 1, atunci pune N b
4. Pentru j = 1, . . . , k calculeaza:
4.1. A A
2
mod m
4.2. Daca a
j
= 1, atunci N A N mod m
5. returneaza N.
3.2 Congruent e liniare
Denit ie 3.2.1 O congruent a de forma
ax b (mod m) (3.1)
unde x Z este necunoscuta, poarta numele de congruent a liniara ntr-o
variabila.
Vom arata ca studiul lor se reduce la cel al ecuat iilor diofantice n doua
variabile. Mai ntai, observam ca, daca x este solut ie a congruent ei ( 3.1)
iar x x
1
(mod m), atunci ax ax
1
(mod m) adica ax
1
b (mod m)
ceea ce arata ca si x
1
este solut ie pentru ( 3.1).
3.2. CONGRUENT E LINIARE 61
Teorema 3.2.1 Fie a, b Z, m natural nenul si (a, m) = d. Congruent a
ax b (mod m) are solut ii daca si numai daca d [ b.

In acest caz,
congruent a are exact d solut ii necongruente modulo m.
Demonstrat ie. Congruent a ( 3.1) este echivalenta cu axmk = b, pentru
un numar ntreg k. Deci, ( 3.1) are solut ii daca si numai daca exista un
ntreg y astfel ncat ax my = b. Din teorema 1.6.1, congruent a ( 3.1)
va avea solut ii daca si numai daca d [ b.
Presupunem ca exista solut ii pentru congruent a ( 3.1). Fie (x
0
, y
0
) o
solut ie particulara a ecuat iei diofantice atasate. Atunci, solut ia generala
a acesteia este data de x = x
0
+
m
d
t, y = y
0
+
a
d
t unde t este un
parametruntreg. Deci, solut iile congruent ei ( 3.1) sunt x = x
0
+
m
d
t, cu
t Z. Vedem cate dintre acestea nu sunt congruente modulo m. Pentru
aceasta, stabilim cand doua solut ii x
1
= x
0
+
m
d
t
1
si x
2
= x
0
+
m
d
t
2
sunt
congruente modulo m.
Daca x
1
x
2
(mod m), obt inem ca
m
d
t
1

m
d
t
2
(mod m). Folosind
propozit ia 3.1.4, cum
_
m
d
, m
_
=
m
d
, rezulta ca t
1
t
2
(mod d). Deci,
un sistem complet de solut ii necongruente modulo m se obt ine din x =
x
0
+
m
d
t cand t parcurge un sistem complet de resturi modulo d.
Aceasta teorema arata ca rezolvarea congruent elor liniare se reduce
la rezolvarea ecut iilor diofantice prezentate n 1.6. Astfel, algoritmul de
rezolvare a acestui tip de congruent e se va reduce la algoritmul 1.6.1.
Spre exemplu, sa rezolvam congruent a liniara 6x 15 (mod 21).
Se observa ca (6, 21) = 3 si 3 [ 15, deci congruent a are solut ii. Ea va
avea 3 solut ii necongruente modulo 21. Rezolvam ecuat ia 6x21y = 15
folosind metoda prezentata n teorema 1.6.1:
k 0 1 2 3 4 5
r
k
6 -21 -15 -6 -3 0
u
k
1 0 1 -1 3 -7
v
k
0 1 1 0 1 -2
q
k
-1 1 2 2
62 CAPITOLUL 3. CONGRUENT E
Obt inem astfel:
3 = 6(3) 21(1) de unde, 15 = 6(15) 21(5).
Atunci, x
0
= 15, y
0
= 5 este o solut ie particulara a ecuat iei.
Solut iile necongruente modulo 21 ale congruent ei init iale sunt:
x
1
15 + 7t (mod 21), unde t 0, 1, 2.

In nal obt inem:


x
1
6 (mod 21), x
2
13 (mod 21), x
3
20 (mod 21).
Consideram n continuare congruent ele de forma ax 1 (mod m).
Din teorema 3.2.1, acest tip de congruent a are solut ii daca si numai
daca a si m sunt numere relativ prime.
Denit ie 3.2.2 Fie a Z si m N

numere relativ prime. O solut ie


a a congruent ei ax 1 (mod m) se numeste invers modulo m al lui a.
Spre exemplu:
x 9 (mod 31) este solut ie a congruent ei 7x 1 (mod 31). Astfel, orice
numar congruent cu 9 modulo 31 este invers pentru 7 modulo 31.
Algoritm 3.2.1 (Invers modulo m)
INPUT: numerele naturale a, m.
OUTPUT: a (mod m) daca exista.
1. Calculeaz a d = (a, m) si u, v cu au +mv = d
folosind algoritmul 1.2.2.
2. Daca d > 1, atunci returneaza a (mod m) nu exista
si se opreste.
3. Returneaza u.
Daca cunoastem inversul lui a modulo m, putem rezolva congruent a
ax b (mod m) unde (a, m) = 1. Prin nmult irea congruent ei cu a, vom
obt ine x ab (mod m).
Astfel, pentru congruent a rezolvata anterior, 6x 15 (mod 21), daca
t inem cont de propozit ia 3.1.4, ea este echivalenta cu congruent a
2x 5 (mod 7). Folosind propozit ia 3.1.3, putem sanmult im congruent a
cu 4 care este inversul lui 2 modulo 7 si vom obt ine ca solut ie nala
x 6 (mod 7). Observam ca acesta solut ie este echivalenta cu cele trei
solut ii necongruente modulo 21 gasite anterior.
3.3. SISTEME DE CONGRUENT E 63
Sa vedem cand un ntreg este propriul sau invers modulo un numar
prim.
Propozit ie 3.2.1 Fie p un numar prim si a Z prim cu p. Atunci, a
este propriul sau invers modulo p daca si numai daca a 1 (mod p).
Demonstrat ie. a a a
2
1 (mod p) este echivalent cu p [ a
2
1 adica
p [ a 1 sau p [ a + 1. Deci, a 1 (mod p).
3.3 Sisteme de congruent e
Vom studia doua tipuri de sisteme de congruent e liniare si anume sisteme
de doua sau mai multe congruent e liniare ntr-o variabila cu diferite
module si sisteme de congruent e liniare n mai multe variabile dar toate
cu acelasi modul.
Teorema 3.3.1 (Teorema chinezeasca a resturilor) Sistemul
(S)
_

_
x a
1
(mod m
1
)
x a
2
(mod m
2
)
..........................
x a
r
(mod m
r
)
are solut ie unica modulo M = m
1
m
2
. . . m
r
, pentru m
1
, m
2
, . . . , m
r
, nu-
mere naturale relativ prime, doua cate doua.
Demonstrat ie.
1
Fie M
k
=
M
m
k
pentru 1 k r. Pentru ecare j ,= k,
(m
j
, m
k
) = 1. Obt inem astfel ca (M
k
, m
k
) = 1. Fie M
k
un invers al lui
M
k
modulo m
k
. Deci, M
k
M
k
1 (mod m
k
). Notam
x = a
1
M
1
M
1
+a
2
M
2
M
2
+. . . +a
r
M
r
M
r
si aratam ca este solut ie pentru sistem.
Pentru aceasta, consideram un k xat, 1 k r. Atunci, m
k
[ M
j
pentru orice j ,= k. Astfel, M
j
0 (mod m
k
) pentru j ,= k. Obt inem
x a
k
M
k
M
k
a
k
(mod m
k
).
1
Forma originala a teoremei, gasita n China aproximativ n anul 300 e.n., era
aceea ca pentru a, b prime ntre ele, ecare n = 0, 1, . . . , ab 1 are o pereche distincta
de resturi la mpart irea cu a si cu b.
64 CAPITOLUL 3. CONGRUENT E

In nal, aratam ca x este singura solut ie a sistemului modulo M.


Consideram x
1
, x
2
doua solut ii ale sistemului (S).
Atunci, x
1
x
2
(mod m
k
) pentru 1 k r.
Din propozit ia 3.1.8 rezulta acum ca x
1
x
2
(mod M), deci orice doua
solut ii ale sistemului sunt congruente modulo M.
Spre exemplu, sa rezolvam urmatoarea problema gasita n Manualul
de Matematica al lui Sun Zi, problema considerata un exemplu clasic al
teoremei chinezesti a resturilor:
Determinat i un numar care mpart it la 3 da restul 2, la mpart irea la 5,
restul este 3 iar mpart it la 7 da restul 2. Problema o putem transcrie
sub forma sistemului:
(S
1
)
_
_
_
x 2 (mod 3)
x 3 (mod 5)
x 2 (mod 7)
M = 3 5 7 = 105, M
1
=
105
3
= 35, M
2
=
105
5
= 21, M
3
=
105
7
= 15.
Pentru determinarea lui M
1
rezolvam 35M
1
1 (mod 3). Astfel,
2M
1
1 (mod 3), de unde M
1
2 (mod 3).
Analog, M
2
1 (mod 5) rezulta din 21M
2
1 (mod 5).
La fel obt inem M
3
1 (mod 7).
Solut ia sistemului este:
x = 2 35 2 + 3 21 1 + 2 15 1 = 233 23 (mod 105).
Algoritmul de rezolvare a sistemelor corespunzatoare teoremei chine-
zesti a resturilor urmareste demonstrat ia teoremei si este atribuit lui
Gauss.
Algoritm 3.3.1 (Teorema chinezeasca a resturilor)
INPUT: numerele naturale m
1
, . . . , m
r
doua cate doua relativ
prime si a
1
, . . . , a
r
numere ntregi.
OUTPUT: Solut ia x (mod M) a sistemului (S).
1. Calculeaz a M = m
1
m
2
. . . m
r
.
2. Pune x 0. Pentru k = 1, . . . , r calculeaza:
2.1. M
k
=
M
m
k
si M
k
mod m
k
.
2.2. x x +a
k
M
k
M
k
(mod M).
3. Returneaza x.
3.3. SISTEME DE CONGRUENT E 65
O alta metoda de rezolvare a unui sistem de congruent e de forma lui
(S), n care modulule nu trebuie sa e neaparat doua cate doua prime
ntre ele, este de a rezolva succesiv congruent ele din sistem. Ea poarta
numele de metoda iterativa.
De exemplu, daca consideram sistemul anterior, (S
1
), prima congru-
ent a arata ca x = 3t + 2, unde t Z.
Aceste numere trebuie sa verice congruent a urmatoare din sistem, adica
3t + 2 3 (mod 5) sau 3t 1 (mod 5). Atunci, t 2 (mod 5) de unde
t = 5u + 2 cu u numar ntreg. Obt inem x = 15u + 8. Mai ramane
sa vedem pentru ce valori ale lui u se verica si ultima congruent a a
sistemului.
15u+8 2 (mod 7) implica u 1 (mod 7). Astfel, u = 7v +1, cu v Z.

In nal, x = 105v + 23 23 (mod 105).


Vom considera acum sisteme de mai multe congruent e liniare cu mai
multe necunoscute, dar acelasi modul.
Pentru nceput consideram cazul n care sistemul este format din
doua congruent e cu doua necunoscute:
(S
2
)
_
ax +by e (mod m)
cx +dy f (mod m)
cu a, b, c, d, e, f Z, m N

, astfel ncat (, m) = 1, = ad bc.


Propozit ie 3.3.1 Sistemul (S
2
) are solut ie unica modulo m si anume:
x

(de bf) (mod m)
y

(af ce) (mod m).
Putem extinde modul de rezolvare la un sistem de n congruent e liniare
cu n necunoscute.
Pentru studiul acestora vom folosi matrice patratice cu elemente nu-
mere ntregi.
Denit ie 3.3.1 Fie A, B /
k,n
(Z). Spunem ca matricele A = (a
ij
)
si B = (b
ij
) sunt congruente modulo m daca a
ij
b
ij
(mod m), pentru
orice i 1, . . . , k, j 1, . . . , n.

In acest caz, vom scrie A B (mod m).


66 CAPITOLUL 3. CONGRUENT E
De exemplu,
_
15 3
8 12
_

_
5 13
2 2
_
(mod 10).

In continuare prezentam cateva proprietat i ale matricelor.


Propozit ie 3.3.2 Fie A, B /
k,l
(Z) asa ncat A B (mod m).
Atunci, pentru orice matrice C /
l,n
(Z) si orice D /
p,k
(Z), au
loc relat iile AC BC (mod m) si DA DB (mod m).
Denit ie 3.3.2 Daca A,

A /
n
(Z) verica
A

A

AA I
n
(mod m),
atunci spunem ca

A este inversa matricei A modulo m.
Daca consideram ca

Aeste inversa lui Amodulo miar B

A(mod m),
propozit ia anterioara asigura ca BA I
n
(mod m).
Invers, daca B
1
, B
2
sunt inverse ale matricei A modulo m, atunci, din
B
1
A B
2
A I
n
(mod m) rezulta B
1
AB
1
B
2
AB
1
(mod m) si astfel,
B
1
B
2
(mod m).
De exemplu, din
_
2 5
3 1
__
3 1
3 2
_

_
1 0
0 1
_
(mod 4)
_
3 1
3 2
__
2 5
3 1
__
1 0
0 1
_
(mod 4)
rezulta ca
_
3 1
3 2
_
este inversa matricei
_
2 5
3 1
_
modulo 4.
Propozit ie 3.3.3 Fie A =
_
a b
c d
_
/
2
(Z) astfel ncat
= det(A) = ad bc este relativ prim cu m.
Atunci, matricea

A =

_
d b
c a
_
este inversa matricei A modulo
m.
Presupunem acum ca A /
n
(Z) iar cu A

notam matricea ad-


juncta.
3.3. SISTEME DE CONGRUENT E 67
Propozit ie 3.3.4 Pentru A /
n
(Z) si m N

cu det(A) = si m
relativ prime, matricea

A =

A

este inversa lui A modulo m.


De exemplu, consideram matricea A =
_
_
1 2 3
1 2 5
1 4 6
_
_
si vrem sa-i
determinam inversa modulo 7.
= 4 3 (mod 7). Obt inem

5 (mod 7).
A

=
_
_
8 0 4
1 3 2
2 2 0
_
_

_
_
6 0 4
6 3 5
2 5 0
_
_
(mod 7).
Rezulta astfel:

A = 5A

=
_
_
30 0 20
30 15 25
10 25 0
_
_

_
_
2 0 6
2 1 4
3 4 0
_
_
(mod 7).
Putem sa abordam acum rezolvarea unui sistem de congruent e de
forma:
(S
n
)
_

_
a
11
x
1
+a
12
x
2
+. . . +a
1n
x
n
b
1
(mod m)
a
21
x
1
+a
22
x
2
+. . . +a
2n
x
n
b
2
(mod m)
......................................................................
a
n1
x
1
+a
n2
x
2
+. . . +a
nn
x
n
b
n
(mod m)
Sistemul poate scris sub forma matriceala AX B (mod m) unde
A = (a
ij
) /
n
(Z), X =
_
_
x
1
. . .
x
n
_
_
/
n,1
(Z) si
B =
_
_
b
1
. . .
b
n
_
_
/
n,1
(Z).
Presupunem ca = det(A) si m sunt relativ prime. Atunci exista

A,
inversa modulo m a lui A. Prin nmult ire cu aceasta, obt inem

AB

AAX X (mod m) ca solut ie a sistemului (S
n
).
Sa rezolvam de exemplu sistemul:
_
_
_
x + 2y + 3z 2 (mod 7)
x + 2y + 5z 1 (mod 7)
x + 4y + 6z 2 (mod 7)
68 CAPITOLUL 3. CONGRUENT E
Observam ca matricea asociata sistemului este matricea A pentru
care am calculat deja inversa modulo 7. Solut ia sistemului se obt ine
atunci ca ind:
_
_
x
y
z
_
_
=

A
_
_
2
1
2
_
_
=
_
_
16
13
10
_
_

_
_
2
6
3
_
_
(mod 7).
3.4 Congruent e speciale
3.4.1 Teorema Wilson
Teorema 3.4.1 (Wilson) Daca p > 1 este un numar prim, atunci
(p 1)! 1 (mod p).
Demonstrat ie. Daca p = 2, atunci (p 1)! = 1 1 (mod 2). Con-
sideram acum p > 2 numar prim.
Atunci, pentru orice 1 x p1 exista invers modulo p. Din propozit ia
3.2.1, x = x daca si numai daca x 1 (mod p). De aici, rezulta ca
putem grupa numerele naturale nenule mai mici decat p, mai put in nu-
merele 1 si p1 astfel ncat produsul celor
p 3
2
perechi sa e congruent
cu 1 modulo p.
Deci, 2 3 . . . (p 3) (p 2) 1 (mod p).

In nal, (p 1)! 1 (p 1) 1 (mod p).


Reciproca teoremei lui Wilson este adevarata:
Teorema 3.4.2 Daca n este un numar natural astfel ncat
(n 1)! 1 (mod n),
atunci n este prim.
Demonstrat ie. Sa reducem la absurd si sa presupunem ca n este un
numar compus. Atunci, n = a b unde 1 < a, b < n. Deci, a [ (n 1)!.
Din n [ (n 1)! + 1, rezulta ca a [ (n 1)! + 1 si, n nal, a [ 1, ceea ce
este fals.
Observam ca aceasta teorema ofera un test de primalitate. Pentru
a testa daca n este prim, calculam (n 1)! + 1 si vedem daca el este
divizibil cu n. Cu toate ca pare foarte simplu, acest test este impracticabil
deoarece necesita prea multe operat ii binare.
3.4. CONGRUENT E SPECIALE 69
3.4.2 Mica Teorema a lui Fermat
Teorema 3.4.3 (Mica Teorema a lui Fermat) Fie p 2, numar
prim. Atunci, a
p1
1 (mod p), pentru orice numar ntreg a prim
cu p.
Demonstrat ie. Consideram numerelentregi a, 2a, . . . , (p1)a. Observam
ca p ka pentru 1 k p 1. De asemenea, ja ,= ka (mod p), pen-
tru j ,= k. Deci, a, 2a, . . . , (p 1)a reprezinta un sistem complet de
resturi modulo p din care a fost exclus 0. Astfel, a 2a . . . (p 1)a
1 2 . . . (p 1) (mod p). De aici, a
p1
(p 1)! (p 1)! (mod p). Cum
((p 1)!, p) = 1, rezulta n nal a
p1
1 (mod p).
Teorema 3.4.4 Pentru p 2, numar prim si pentru orice a, numar
ntreg, are loc relat ia:
a
p
a (mod p).
Demonstrat ie. Daca p a, din mica teorema a lui Fermat, rezulta ca
a
p1
1 (mod p), de unde, a
p
a (mod p).
Daca p [ a, atunci a
p
a 0 (mod p).
O prima aplicat ie a micii teoreme a lui Fermat consta n deter-
minarea unor resturi modulo p pentru puteri. De exemplu, daca dorim
sa calculam restul lui 8
110
modulo 13, folosind teorema, obt inem ca
8
110
=
_
8
12
_
9
8
2
64 12 (mod 13).
O alta aplicat ie folositoare a acestei teoreme este urmatoarea:
Corolar 3.4.1 Daca p 2 este un numar prim, a Z cu p a, atunci
a
p2
este inversul modulo p al lui a.
Teorema 3.4.3 ofera astfel o noua metoda de rezolvare a congruent elor
liniare.
Corolar 3.4.2 Daca a, b sunt numere ntregi, p 2 numar prim cu
p a, solut ia congruent ei liniare ax b (mod p) este
x a
p2
b (mod p).
70 CAPITOLUL 3. CONGRUENT E
3.4.3 Teorema lui Euler
Denit ie 3.4.1 Funct ia : N N, denita prin (n) este numarul
numerelor naturale mai mici decat n si prime cu n, poarta numele de
funct ia lui Euler.
Denit ie 3.4.2 Un sistem redus de resturi modulo n este o mult ime de
(n) numere ntregi, toate prime cu n si doua cate doua necongruente
modulo n.
De exemplu, 1, 3, 7, 9 este un sistem redus de resturi modulo 10.
Pornind de la un sistem redus de resturi modulo n, asemanator cu
rezultatul propozit iei 3.1.6, putem construi un nou sistem redus de
resturi modulo n.
Propozit ie 3.4.1 Fie r
1
, r
2
, . . . , r
(n)
un sistem redus de resturi mo-
dulo n si a Z, prim cu n. Atunci, ar
1
, ar
2
, . . . , ar
(n)
este tot un
sistem redus de resturi modulo n.
O generalizare a micii teoreme a lui Fermat este data de Euler:
Teorema 3.4.5 (Euler) Fie a Z, n N cu (a, n) = 1. Atunci,
a
(n)
1 (mod n).
Demonstrat ie. Fie r
1
, r
2
, . . . , r
(n)
un sistem redus de resturi modulo
n. Conform propozit iei anterioare, ar
1
, ar
2
, . . . , ar
(n)
este un sistem
redus de resturi modulo n.
Deci, resturile modulo n ale numerelor ar
1
, ar
2
, . . . , ar
(n)
sunt r
1
, r
2
, . . . ,
r
(n)
, eventual n alta ordine.
Atunci, a
(n)
r
1
r
2
. . . r
(n)
r
1
r
2
. . . r
(n)
(mod n).
Aplicand corolarul 3.1.1, obt inem a
(n)
1 (mod n).
La fel ca n cazul micii teoreme a lui Fermat, urmatoarele corolare
sunt imediate:
Corolar 3.4.3 Daca n 2 este un numar natural, a Z cu (a, n) = 1,
atunci a
(n)1
este inversul modulo n al lui a.
Corolar 3.4.4 Daca a, b sunt numere ntregi, n 2 numar natural cu
(a, n) = 1, solut ia congruent ei liniare ax b (mod n) este
x a
(n)1
b (mod n).
3.4. CONGRUENT E SPECIALE 71
Exercit ii propuse
1. Determinat i, folosind metoda ridicarii repetate la patrat:
2
321
(mod 47) si 3
22
(mod 23).
2. Rezolvat i urmatoarele congruent e liniare:
i) 3x 4 (mod 7),
ii) 4x 3 (mod 12),
iii) 9x 12 (mod 21),
iv) 27x 25 (mod 256),
v) 17x 14 (mod 21),
vi) 15x 9 (mod 25),
vii) 103x 612 (mod 676),
viii) 987x 610 (mod 1597),
ix) 27x 72 (mod 900).
3. Fie p numar prim impar si k numar natural nenul. Aratat i ca
x
2
1 (mod p
k
) are exact doua solut ii necongruente, x 1 (mod p
k
).
4. Fie congruent a x
2
1 (mod 2
k
), cu k 1. Aratat i ca aceasta
congruent a are solut ie unica pentru k = 1 iar pentru k = 2, are doua
solut ii necongruente.
Pentru k > 2, demonstrat i ca toate solut iile congruent ei sunt:
x 1 (mod 2
k
) si x (1 + 2
k1
) (mod 2
k
).
5. Rezolvat i urmatoarele sistemele:
_
_
_
x 1 (mod 5)
x 3 (mod 6)
x 11 (mod 17)
_
x 6 (mod 7)
x 2 (mod 6)
_

_
x 2 (mod 11)
x 6 (mod 13)
x 5 (mod 12)
x 4 (mod 7)
_
_
_
x 3 (mod 15)
x 4 (mod 11)
x 1 (mod 14) .
72 CAPITOLUL 3. CONGRUENT E
6. Determinat i cea mai mica solut ie pozitiva a sistemelor:
_
_
_
x 12 (mod 31)
x 87 (mod 127)
x 91 (mod 225)
_
3x 4 (mod 17)
2x 7 (mod 9)
7. Gasit i un numar care este multiplu de 11 si mpart it la ecare
dintre numerele 2, 3, 5, si 7, da restul 1.
8. Fie sistemul de congruent e liniare:
_
x a
1
(mod m
1
)
x a
2
(mod m
2
) .
Aratat i ca sistemul are solut ie daca si numai daca
(m
1
, m
2
) [ a
1
a
2
.

In cazul n care sistemul are solut ie, aratat i ca ea este unica modulo
[m
1
, m
2
].
Folosind acest rezultat, rezolvat i sistemele:
_
x 4 (mod 6)
x 13 (mod 15)
_
x 7 (mod 10)
x 4 (mod 15) .
9. Rezolvat i urmatoarele sisteme de congruent e liniare:
_
_
_
x + 2y +z 3 (mod 6)
3y + 4z 3 (mod 6)
2x + 2y +z 4 (mod 6)
_
17x + 11y 7 (mod 29)
13x + 10y 8 (mod 29.)
10. Determinat i 2
326
(mod 17), folosind mica teorema a lui Fermat.
11. Gasit i ultima cifra a numarului 3
100
, scris n baza 7.
12. Fie p, q doua numere prime distincte. Aratat i ca
p
q1
+q
p1
1 (mod pq).
13. Pentru a Z si p, numar prim, aratat i ca:
p [ a
p
+ (p 1)!a.
CAPITOLUL 4
Funct ii multiplicative
4.1 Funct ia Euler
Denit ie 4.1.1 O funct ie aritmetica este o funct ie al carei domeniu de
denit ie este mult imea numerelor naturale.
Denit ie 4.1.2 Fie f o funct ie aritmetica. Daca f(mn) = f(m)f(n),
pentru orice doua numere naturale m, n, relativ prime, spunem ca f este
funct ie multiplicativa.
Daca f(mn) = f(m)f(n), pentru orice m, n N, atunci f se numeste
complet multiplicativa.
Teorema 4.1.1 Fie f o funct ie multiplicativa si
n = p

1
1
p

2
2
. . . p

k
k
cu p
j
numere prime distincte,
j
1, pentru ecare 1 j k. Atunci,
f(n) = f (p

1
1
) f (p

2
2
) . . . f (p

k
k
) .
Teorema 4.1.2 Daca f este o funct ie multiplicativa, atunci funct ia F
denita prin F(n) =
d|n
f(d) este o funct ie multiplicativa.
Demonstrat ie. Fie m, n numere naturale cu (m, n) = 1.
F(mn) =
d|mn
f(d). Daca d [ mn si (m, n) = 1, atunci exista numerele
73
74 CAPITOLUL 4. FUNCT II MULTIPLICATIVE
naturale d
1
si d
2
, relativ prime, astfel ncat d
1
[ m, d
2
[ n, d = d
1
d
2
.
Obt inem:
F(mn) =
d1|m
d
2
|n
f(d
1
d
2
) =
d1|m
d
2
|n
f(d
1
)f(d
2
)
=
d1|m
f(d
1
)
d2|n
f(d
2
) = F(m)F(n)
deoarece f este multiplicativa si d
1
, d
2
sunt relativ prime.
Propozit ie 4.1.1 Daca p este numar prim, atunci (p) = p 1. Re-
ciproc, daca (n) = n 1, atunci n este numar prim.
Demonstrat ie. Prima parte a armat iei este evidenta. Consideram acum
ca (n) = n 1 si presupunem ca n este compus. Atunci, exista
1 < d < n un divizor netrivial al lui n. Astfel, exista cel mult n 2
numere mai mici decat n si prime cu n, de unde (n) n 2, fals.
Propozit ie 4.1.2 Fie p numar prim si k numar natural nenul. Atunci,
(p
k
) = p
k
p
k1
.
Demonstrat ie. Pentru a < p
k
observam imediat ca (a, p
k
) ,= 1 daca si
numai daca p [ a. Astfel, numerele a care nu sunt prime cu p
k
sunt toate
de forma jp cu 1 j p
k1
. Deci, sunt p
k1
numere mai mici decat p
k
care nu sunt prime cu acesta. Relat ia ceruta rezulta acum imediat.
Teorema 4.1.3 Funct ia Euler este o funct ie multiplicativa.
Demonstrat ie. Fie m, n N, relativ prime.
Asezam numerele 1, 2, . . . , mn sub forma urmatoare:
1 m+ 1 2m+ 1 . . . (n 1)m+ 1
2 m+ 2 2m+ 2 . . . (n 1)m+ 2
. . . . . . . . . . . . . . .
r m+r 2m+r . . . (n 1)m+r
. . . . . . . . . . . . . . .
m 2m 3m . . . nm
Presupunem (m, r) = d > 1. Atunci, din d [ m si d [ r, obt inem ca pe
linia r nu exista numere relativ prime cu mn. Astfel, pentru a numara
numerele relativ prime cu mn din sir trebuie sa alegem doar liniile r cu
4.1. FUNCT IA EULER 75
(r, m) = 1. Sunt exact (m) astfel de linii. Vedem acum cate numere
de pe o astfel de linie sunt prime cu mn. T inand cont de forma lor,
este evident ca toate sunt prime cu m. Din propozit ia 3.1.6, rezulta ca
numerele de pe linie formeaza un sistem complet de resturi modulo n.
Deci, numai (n) dintre ele sunt prime cu n. Cum toate sunt prime cu
m si m, n sunt relativ prime, pe linie sunt (n) numere prime cu mn.

In nal, am obt inut ca sunt (n) (m) numere mai mici decat mn si
prime cu mn, adica funct ia este multiplicativa.

Insumand toate aceste rezultate, si aplicand teorema 4.1.3, rezulta:


Teorema 4.1.4 Daca n = p

1
1
p

2
2
. . . p

k
k
unde p
i
sunt numere prime
distincte si
i
1, pentru 1 i k, atunci
(n) = n
_
1
1
p
1
__
1
1
p
1
_
. . .
_
1
1
p
k
_
.
Teorema 4.1.5 Pentru n, un numar natural nenul, are loc relat ia:

d|n
(d) = n. (4.1)
Demonstrat ie. Vom mpart i numerele de la 1 la n n clase. Denim
clasa C
d
= m [ (m, n) = d. Observam ca orice doua astfel de clase
sunt disjuncte. De asemenea, m C
d
este echivalent cu
_
m
d
,
n
d
_
= 1.
Deci, numarul de elemente din clasa C
d
este egal cu numarul numerelor
naturale mai mici decat
n
d
si relativ prime cu
n
d
. Astfel, [ C
d
[=
_
n
d
_
.
Aceste clase C
d
realizeaza o partit ie a mult imii 1, 2, . . . , n. De aici,
n =
d|n
[ C
d
[=
d|n

_
n
d
_
. Dar, cand d parcurge tot i divizorii lui n,
n
d
face acelasi lucru. Putem scrie atunci, n =
d|n
(d).
Sa consideram un exemplu pentru a vedea cum se formeaza aceste
clase. Alegem n = 12.
Formam clasele C
d
= m [ (m, 12) = d unde d 1, 2, 3, 4, 6, 12.
76 CAPITOLUL 4. FUNCT II MULTIPLICATIVE
C
1
= 1, 5, 7, 11 [ C
1
[=
_
12
1
_
= 4
C
2
= 2, 10 [ C
2
[=
_
12
2
_
= 2
C
3
= 3, 9 [ C
3
[=
_
12
3
_
= 2
C
4
= 4, 8 [ C
4
[=
_
12
4
_
= 2
C
6
= 6 [ C
6
[=
_
12
6
_
= 1
C
12
= 12 [ C
12
[=
_
12
12
_
= 1
Obt inem 4 + 2 + 2 + 2 + 1 + 1 = 12.
4.2 Funct iile si
Denit ie 4.2.1 Funct ia aritmetica este denita prin (n) este egal
cu suma divizorilor naturali ai lui n, adica (n) =
d|n
d.
De asemenea, denim funct ia prin (n) =
d|n
1, adica (n) este
egal cu numarul divizorilor naturali ai lui n.
Folosind teorema 4.1.2, obt inem ca funct iile si sunt funct ii mul-
tiplicative.
Lema 4.2.1 Daca p > 1 este numar prim si k N

, atunci:
(p
k
) =
p
k+1
1
p 1
, (p
k
) = k + 1.
Teorema 4.2.1 Fie n un numar natural a carui descompunere canonica
n factori primi este n = p

1
1
p

2
2
. . . p

k
k
. Atunci,
(n) =
k

j=1
p

j
+1
j
1
p
j
1
, (n) =
k

j=1
(
j
+ 1).
4.3. NUMERE PERFECTE 77
4.3 Numere perfecte

In antichitate, un interes deosebit l prezenta relat ia dintre un numar


natural si suma divizorilor sai, relat ie care capata chiar valent e mistice.
Denit ie 4.3.1 Un numar natural n pentru care (n) = 2n se numeste
numar perfect.
De exemplu, cum (6) = 12 si (28) = 56, numerele 6 si 28 sunt
numere perfecte.
Teorema 4.3.1 Un numar natural par n este perfect daca si numai
daca n = 2
m1
(2
m
1) unde m 2 si 2
m
1 este numar prim.
Demonstrat ie. Presupunem n un numar par perfect.
Atunci, n = 2
s
t, unde s 1 si t impar. Astfel,
(n) = (2
s
)(t) =
_
2
s+1
1
_
(t) (4.2)
si cum
(n) = 2n = 2
s+1
t, (4.3)
din cele doua relat ii, obt inem ca:
2
s+1
t =
_
2
s+1
1
_
(t). (4.4)
Dar,
_
2
s+1
, 2
s+1
1
_
= 1. Atunci, 2
s+1
[ (t), adica (t) = 2
s+1
q pentru
un numar natural q. Rezulta
2
s+1
t =
_
2
s+1
1
_
2
s+1
q (4.5)
adica t =
_
2
s+1
1
_
q. Deci, q [ t si q ,= t. Avem:
t +q =
_
2
s+1
1
_
q +q = 2
s+1
q = (t). (4.6)
Daca q ,= 1, atunci exista cel put in trei divizori naturali ai lui t, si anume
1, q, t. De aici rezulta:
(t) t +q + 1, (4.7)
ceea ce contrazice ( 4.6). Deci, q = 1 si atunci, t = 2
s+1
1. Rezulta
(t) = t + 1, de unde t este prim. Obt inem n = 2
s
_
2
s+1
1
_
unde
2
s+1
1 este prim.
78 CAPITOLUL 4. FUNCT II MULTIPLICATIVE
Reciproc, presupunem ca n = 2
m1
(2
m
1) unde 2
m
1 este prim.
Atunci, (n) =
_
2
m1
_
(2
m
1) = (2
m
1) 2
m
= 2n. Astfel, n este
numar perfect.
Pentru a determina numerele pare perfecte avem nevoie de numere
prime de forma 2
n
1.
Propozit ie 4.3.1 Daca 2
n
1 este numar prim, atunci n este prim.
Demonstrat ie. Daca presupunem ca n nu este prim, atunci n = ab cu
1 < a, b < n. Obt inem atunci
2
n
1 = (2
a
1)
_
2
a(b1)
+. . . + 2
a
+ 1
_
unde 1 < 2
a
1 < 2
n
1. Astfel, obt inem ca 2
n
1 este numar compus
ceea ce contrazice ipoteza.
4.4 Numere Mersenne
La nceput, numerele de forma 2
n
1 erau considerate prime, pentru n
numar prim.

Incepand cu anul 1536, diversi matematicieni au aratat ca
aceasta armat ie nu este corecta, dand contraexemple.
Denit ie 4.4.1 Fie n N. Un numar de forma M
n
= 2
n
1 se
numeste numar Mersenne. Daca p este un numar prim si M
p
este prim,
el poarta numele de numar prim Mersenne.
Mersenne,
1
n lucrarea sa Cogitata Physica-Mathematica, din anul
1644 a armat, fara demonstrat ie, ca:
M
p
este prim, pentru p 2, 3, 5, 7, 13, 17, 19, 31, 67, 127, 257 iar pentru
celelalte valori n < 257, numerele M
n
erau compuse.
300 de ani au fost necesari pentru a verica complet aceasta armat ie.

In anul 1947, cand a fost nalizat studiul, s-a remarcat ca Mersenne


facuse 5 erori si anume: M
61
, M
89
, M
107
sunt prime iar M
67
, M
257
com-
puse.
1
Marin Mersenne (1588-1648) a fost calugar franciscan, traind aproape toata viat a
n manastirile Parisului. Chilia sa era locul unde mari matematicieni precum Fermat
si Pascal se nt alneau pentru a discuta. Prin vasta sa corespondent a cu alt i matema-
ticieni, el a jucat un rol important n comunicarea rezultatelor matematice obt inute
n acea perioada, cand nu existau publicat ii stiint ice.
4.4. NUMERE MERSENNE 79
Pentru a vedea daca un numar Mersenne este prim, de obicei vericam
daca are divizori primi mici. Urmatoarea teorema a lui Euler si Fermat
este folositoare n aceasta privint a.
Teorema 4.4.1 Fie p si q numere prime impare. Daca q [ M
p
, atunci
q 1 (mod 8). Mai mult, q = 2kp + 1, pentru un k natural.
Cu toate ca n nalul demonstrat iei se foloseste un rezultat obt inut
n capitolul 7, anume teorema 7.1.3, prezentam demonstrat ia teoremei
acum, pentru a nu o separa de enunt .
Demonstrat ie. Din teorema 3.4.3, cum q este prim impar, obt inem
q [ 2
q1
1. Din ipoteza, q [ 2
p
1. Deci,
q [
_
2
p
1, 2
q1
1
_
= 2
(p,q1)
1. (4.8)
Rezulta ca 2
(p,q1)
1 > 1, adica (p, q 1) > 1. Dar p este numar prim,
de unde (p, q 1) = p. Astfel, p [ q 1 adica exista m natural astfel ncat
q = mp + 1. Din q impar, rezulta ca m trebuie sa e numar par. Astfel,
exista k natural cu q = 2kp + 1.
Relat ia 2
q1
2
= (2
p
)
k
1 (mod q), arata ca 2 este rest patratic modulo
q. Folosind teorema 7.1.3, q 1 (mod 8). .
Sa vedem pe cateva exemple cum funct ioneaza aceasta teorema.
1) Pentru a vedea daca M
13
= 2
13
1 = 8191 este prim, vedem daca
are divizori primi de forma 26k + 1. Singurele numere prime de aceasta
forma

8191 sunt 53 si 79. Prin calcul direct, se obt ine ca ei nu sunt


divizori pentru M
13
. Deci, M
13
este numar prim Mersenne.
2) Pentru M
23
= 8388607 cautam divizori primi de forma 46k + 1

M
23
= 2896, . . . . Se obt ine M
23
= 47 178481, deci M
23
este compus.
3)

In 1772, Euler a folosit teorema pentru a arata ca M
31
este prim.
Astfel, el a cautat divizori de forma 62k + 1 care verica q = 62k + 1
1 (mod 8). Rezolvand congruent ele, rezulta k 1 (mod 4) sau k este
multiplu de 4. De aici, q 1 (mod 248) sau q 63 (mod 248). Cum
dintre aceste numere, nici unul nu e divizor pentru M
31
, el este prim.
Se presupune ca exista o innitate de numere prime Mersenne, deci
o innitate de numere pare perfecte.
80 CAPITOLUL 4. FUNCT II MULTIPLICATIVE
Un rezultat interesant este oferit de Euler n teorema:
Teorema 4.4.2 Fie p numar prim, p 3 (mod 4). Atunci, 2p + 1 este
prim daca si numai daca 2
p
1 (mod 2p + 1).
Cu alte cuvinte, daca p 3 (mod 4) este numar prim si 2p + 1 este tot
numar prim, atunci M
p
este numar compus.
Gasirea de numere prime Mersene este extrem de laborioasa din
punct de vedere computat ional. G. Woltman a organizat un program
distribuit pe Internet, Great Internet Mersenne Prime Search, n care
sute de voluntari folosesc computerele pentru a realiza etape din cautare.

In cadrul acestui program, pe 17 noiembrie 2003 s-a descoperit al 40-lea


numar prim Mersenne iar dupa sase luni, al 41- lea. Ultimul numar prim
Mersenne cunoscut pana n prezent a fost determinat n februarie 2005.
Daca vet i consulta Anexa A, vet i gasi cele 42 de numere prime
Mersenne cunoscute pana n prezent. Semnele de ntrebare care apar n
dreptul ultimelor numere din tabel arata ca cercetarea primalitat ii nu-
merelor Mersenne nu este completa nca n acest interval. Cum cautarea
nu a fost facuta pentru tot i exponent ii, trebuie vericat daca ultimele
numere sunt numere prime Mersenne consecutive, adica nu exista alte
numere prime Mersenne ntre ultimele 4.
Exercit ii propuse
1. Calculat i (n) pentru n 24, 52, 84, 99, 100, 256.
2. Determinat i suma divizorilor pozitivi ai lui n 35, 1000, 2
37
.
3. Pentru n 36, 99, 144, 10! determinat i numarul de divizori po-
zitivi.
4. Precizat i care sunt toate numerele naturale cu exact 2, 3, respectiv
4 divizori pozitivi.
5. Folosind rezultatul teoremei 4.4.1, stabilit i care dintre numerele
Mersene M
7
, M
11
, M
17
sunt numere prime Mersenne.
6. Fie n numar natural astfel ncat 2n +1 este numar prim. Atunci,
2n + 1 [ M
n
sau 2n + 1 [ M
n
+ 2.
CAPITOLUL 5
Prime aplicat ii ale
congruent elor
5.1 Factorizarea unor numere de forma par-
ticulara
Propozit ie 5.1.1 Fie b si n doua numere relativ prime iar a si c numere
naturale. Daca b
a
1 (mod n) si b
c
1 (mod n), atunci b
d
1 (mod n)
unde d = (a, c).
Demonstrat ie. Folosind algoritmul lui Euclid, exista u, v Z astfel ca
d = ua +vc.
Cum unul din cele doua numere u, v este pozitiv iar celalalt negativ sau
zero, putem presupune ca u > 0, v 0. Obt inem b
au
1 (mod n) si
b
c(v)
1 (mod n), de unde, b
auc(v)
1 (mod n).
Astfel, b
d
1 (mod n).
Propozit ie 5.1.2 Daca p este un numar prim cu p [ b
n
1, atunci
p [ b
d
1 pentru d, un divizor propriu al lui n sau p 1 (mod n). Daca
p > 2, si n este impar, a doua condit ie devine p 1 (mod 2n).
Demonstrat ie. Din ipoteza, b
n
1 (mod p) iar din mica teorema a lui
Fermat, b
p1
1 (mod p). Din propozit ia anterioara, b
d
1 (mod p),
unde d = (n, p 1). Daca d < n, obt inem prima relat ie. Pentru cazul
81
82 CAPITOLUL 5. PRIME APLICAT II ALE CONGRUENT ELOR
d = n, cum d [ p 1, avem p 1 (mod n).

In situat ia n care p si n sunt
amandoi impari si n [ p 1, atunci este evident ca 2n [ p 1.
Vom exemplica cum aceasta propozit ie poate folosita pentru a
descompune n factori anumite numere mari.
1. Pentru 2
11
1 = 2047 cautam divizori primi p 1 (mod 22).
Veric am daca p = 23, 67, 89, . . . sunt divizori ai numarului (de fapt,
nu trebuie sa depasim

2047 = 45, . . .). Obt inem astfel descompunerea
2047 = 23 89.

In mod analog, se arata ca 2
13
1 = 8191 este prim.
2. Pentru a descompune n factori primi 3
12
1 = 531440, ncercam
mai nt ai cu divizorii numerelor mai mici 3
1
1, 3
2
1, 3
3
1, 3
4
1 si
cu ai lui 3
6
1 = (3
3
1)(3
3
+ 1) care nu apar deja n 3
3
1. Obt inem
astfel, 2
4
, 5, 7, 13. Cum
531440
2
4
5 7 13
= 73 este prim, amncheiat descom-
punerea. Trebuie remarcat ca, asa cum era de asteptat, orice numar prim
care nu apare n descompunerea lui 3
d
1 pentru d divizor propriu al
lui 12 (73, de exemplu) trebuie sa e 1 (mod 12).
3. Pentru 2
35
1 = 34359738367 consideram la nceput divizorii
2
d
1 pentru d = 1, 5, 7 care furnizeaza divizorii primi 31 si 127. Obt inem
2
35
1 = 311278727391. Propozit ia ne asigura ca divizorii primi ramasi
trebuie sa e 1 (mod 70). Vericam pentru 71, 211, 281, . . . . Nu trebuie
sa vericam tot i divizorii de aceasta forma pana la

8727391 = 2954, . . . ,
pentru ca gasim imediat 8727391 = 71 122921 si astfel, ramane sa
cercetam doar pana la

122921 = 350, . . . . Gasim 122921 numar prim
si astfel, descompunerea n factori primi ceruta este 2
35
1 = 31 71
127 122921.
Ca o remarca, sa vedem cum s-ar face aceasta descompunere folosind
un calculator care presupunem ca face operat ii aritmetice doar cu nu-
mere de maxim 8 cifre zecimale. Vom sparge numarul n part i.

In
cazul nostru, atingem limita impusa pentru 2
26
= 67108864. Pentru
a face nmult irea cu 2
9
= 512, scriem 2
35
= 512 (67108 1000 +
864) = 34359296 1000 + 442368 = 34359738368. Apoi, cand trebuie sa
mpart im 2
35
1 la 31 127 = 3937, luam partea ntreaga
_
34359738
3937
_
=
8727 si scriem 34359738 = 3937 8727 + 1539. Atunci,
34359738367
3937
=
(3937 8727 + 1539) 1000 + 367
3937
= 8727000 +
1539367
3937
= 8727391.
5.2. TESTE DE DIVIZIBILITATE 83
5.2 Teste de divizibilitate
Folosind congruent ele, putem realiza teste de divizibilitate pentruntregi
t inand cont de dezvoltarea lor relativ la diferite baze.
Pentru nceput, discutam cele mai cunoscute teste care folosesc scri-
erea zecimala.
Consideram numarul natural n = (a
k
a
k1
. . . a
1
a
0
)
10
. Deci,
n = a
k
10
k
+a
k1
10
k1
+. . . +a
1
10 +a
0
, cu 0 a
j
9. (5.1)
Test de divizibilitate cu puteri ale lui 2.
Cum 10 0 (mod 2), obt inem ca 10
j
0 (mod 2
j
), pentru orice
j k. Astfel,
n (a
j1
a
j2
. . . a
1
a
0
)
10
(mod 2
j
).
Deci, rezulta ca:
Test 5.2.1 n este divizibil cu 2
j
daca si numai daca numarul format cu
ultimele sale j cifre este divizibil cu 2
j
.
De exemplu, pentru n = 2114480, cum 2
5
14480 si 2
4
[ 4480, obt inem
ca 2
5
n iar pentru j 4, 2
j
[ n.
Dupa un rat ionament asemanator, obt inem un test de divizibilitate
cu puteri ale lui 5:
Test 5.2.2 n este divizibil cu 5
j
daca si numai daca numarul format cu
ultimele sale j cifre este divizibil cu 5
j
.
Spre exemplu, putem verica imediat ca n = 23752875 este divizibil
cu 5
j
pentru j 3 iar 5
4
n cum 625 2875.
Teste de divizibilitate cu 3 si 9.
Din 10 1 (mod 3) si 10 1 (mod 9), rezulta:
10
j
1 (mod 3) respectiv 10
j
1 (mod 9).
Din ( 5.1), obt inem n a
k
+ a
k1
+ . . . + a
1
+ a
0
(mod 3) si aceeasi
relat ie modulo 9.
Test 5.2.3 n este divizibil cu 3 sau cu 9 daca si numai daca suma
cifrelor sale este divizibila cu respectiv 3 sau 9.
84 CAPITOLUL 5. PRIME APLICAT II ALE CONGRUENT ELOR
Pentru n = 26453097, observam ca 2 + 6 + 4 + 5 + 3 + 9 + 7 = 36, de
unde n este divizibil cu 9.
Test de divizibilitate cu 11.
Daca t inem cont de faptul ca 10 1 (mod 11), obt inem:
10
2
1 (mod 11), 10
3
1 (mod 11), etc. Astfel, ( 5.1) implica
n a
0
a
1
+. . . + (1)
k1
a
k1
+ (1)
k
a
k
(mod 11).
Test 5.2.4 n este divizibil cu 11 daca si numai daca suma alternata a
cifrelor sale este divizibila cu 11.
Daca alegem n = 291575295, cum 59+25+75+19+2 = 11,
rezulta 11 [ n.
Test de divizibilitate cu 7,11 si 13.
Trebuie remarcat ca 7 11 13 = 1001, de unde
10
3
1 (mod 1001).
Atunci,
n (a
0
+10a
1
+100a
2
) +1000(a
3
+10a
4
+100a
5
) +1000
2
(a
6
+10a
7
+
100a
8
) +. . . (a
2
a
1
a
0
)
10
(a
5
a
4
a
3
)
10
+ (a
8
a
7
a
6
)
10
. . . (mod 1001).
Test 5.2.5 n este divizibil cu 7, 11 sau 13 daca si numai daca suma
alternata a numerelor formate din blocuri de trei cifre, pornind de la
ultimele, este divizibila cu, respectiv 7, 11 sau 13.
Sa generalizam acum testele prezentate considerand numarul n scris
ntr-un sistem de numerat ie de baza oarecare b. Fie
n = (a
k
a
k1
. . . a
1
a
0
)
b
.
Urmand aceeasi cale de demonstrat ie ca pentru cazul scrierii zeci-
male, obt inem urmatoarele teste:
Test 5.2.6 Daca d [ b si 0 j < k, n este divizibil cu d
j
daca si numai
daca (a
j1
a
j2
. . . a
1
a
0
)
b
este divizibil cu d
j
.
Test 5.2.7 Daca d [ b 1, n este divizibil cu d daca si numai daca
a
k
+. . . a
1
+a
0
este divizibil cu d.
5.3. CALENDARUL 85
Test 5.2.8 Daca d [ b+1, n este divizibil cu d daca si numai daca suma
(1)
k
a
k
+. . . +a
2
a
1
+a
0
este divizibila cu d.
Spre exemplu, daca consideram numarul n = (7F28A6)
16
scris n baza
16, vom obt ine:
2 [ n pentru ca 2 [ 6 dar 4 n cum 4 (A6)
16
= 166;
3 [ n deoarece 3 [ 7 +F + 2 + 8 +A+ 6 = 48 si din
5 7 +F + 2 + 8 +A+ 6, rezulta 5 n;
17 n se obt ine din 17 6 A+ 8 2 +F 7 = 10.
Observat ie 5.2.1 Daca dorim, putem face o conversie simpla din sis-
temul hexagesimal n cel binar si invers, conform tabelului:
Hex 0 1 2 3 4 5 6 7
Binar 0000 0001 0010 0011 0100 0101 0110 0111
Hex 8 9 A B C D E F
Binar 1000 1001 1010 1011 1100 1101 1110 1111
Spre exemplu, (2FB3)
16
= (10111110110011)
2
unde se observa ca am
omis cele doua zerouri din scrierea lui 2 aate n fat a numarului. Pen-
tru (11110111101001)
2
, daca dorim sa-l scriem n baza 16, se formeaza
grupe de cate 4 cifre, pornind de la ultimele, pe care le nlocuim conform
tabelului. Obt inem astfel, (3DE9)
16
.

In acelasi fel se poate face conversia numerelor scrise n bazele b si


b
k
.
5.3 Calendarul
Calendarul
1
este un sistem de organizare a unitat ilor de timp pentru
a calcula timpul pe perioade foarte extinse. Prin convent ie, ziua este
cea mai mica unitate calendaristica de timp. Calendarul, indiferent de
tipul sau, reprezinta o legatura ntre omenire si cosmos. El a stat la
baza planicarii agriculturii, vanatorii, ciclurilor de migrat ie, ment inerii
ciclurilor de evenimente civile si religioase.
1
Kalaendae reprezenta prima zi din ecare luna n calendarul roman antic.
86 CAPITOLUL 5. PRIME APLICAT II ALE CONGRUENT ELOR
Conform unor date recente, n lume se folosesc aproximativ 40 de ca-
lendare. Ciclurile astronomice fundamentale sunt ziua (bazata pe rotat ia
Pamantului n jurul axei sale), luna (bazata pe revolut ia Lunii n ju-
rul Pamantului) si anul (bazat pe revolut ia Pamantului n jurul Soare-
lui). Complexitatea calendarelor apare datorita faptului ca ciclurile de
revolut ie nu cuprind un numar ntreg de zile, precum si datorita faptului
ca ciclii astronomici nu sunt constant i si nici perfect comparabili unii cu
ceilalt i.
Fara a dori sa prezentam pe larg istoria calendarului, punctam doar
doua momente importanten evolut ia sa. La egipteni, ecare an avea 365
de zile.

In anul 45 .e.n., Iulius Cezar
2
a init iat modicarea calendarului,
cerand sprijinul astronomului Sosigenes din Alexandria. Acesta a stabilit
lungimea anului ca ind de 365,25 zile. El a creat un calendar solar
3
cu 3 ani format i din 365 de zile si cu ani bisect i la ecare 4 ani pentru
a reecta mai bine lungimea adevarata a anului. Deci, lungimea anului
era de 365,25 de zile.
Cele mai recente calcule arata ca un an are un numar de aproximativ
365,2422 de zile. Astfel, cu trecerea secolelor, diferent a de 0,0078 zile
pe an s-a adunat si calendarul a devenit din ce n ce mai mult incom-
patibil cu anotimpurile.

In secolul XVI, echinoct iul de primavara, care
determina data Pastelui, se mutase cu 10 zile fat a de data exacta.

In anul 1582, Papa Gregoriu al XIII-lea a dat un decret prin care


s-au exclus 10 zile din calendar. Data de 5 octombrie a devenit data de
15 octombrie, iar zilele de 6-14 octombrie au fost omise. Ca ani bisect i,
au fost considerat i cei divizibili cu 4, iar dintre cei divizibili cu 100,
bisect i au fost alesi doar cei care sunt divizibili si cu 400. De exemplu,
1900 nu este an bisect, dar 2000, da. Astfel, anul are 365,2425 zile.
Eroarea de 0,0003 zile nseamna 3 zile la 10000 ani. Si acest calendar
nca necesita modicari. Calendarul Gregorian
4
a stabilit ca prima zi
2
Calendarul Iulian a fost calendarul standard pentru majoritatea t arilor europene
si pentru America, pan a n 1582 cand a aparut calendarul Gregorian. Ianuarie a
devenit prima luna din an, pan a atunci, anul ncepand cu luna martie.
3
Un calendar solar este un calendar care intercaleaza zile, formand ani bisect i,
pentru a creste lungimea anului calendaristic.
4
Trecerea la calendarul Gregorian a fost adoptata de Anglia si SUAn 1752, printr-
un salt de 11 zile, de URSS n 1917, de Grecia n 1923. El este cunoscut sub numele
de calendarul nou, pe cand cel Iulian de calendarul vechi. Luand n considerare
acest fapt, exista algoritmi de conversie a zilelor dupa calendarul Iulian n zile dupa
calendarul Gregorian.
5.3. CALENDARUL 87
a anului, data de 1 Ianuarie. Scopul sau init ial a fost ecleziastic, si
anume de a stabili data sarbatoririi Pastelui conform regulilor impuse
de biserica. Calcularea datei zilei de Paste se bazeaza pe congruent e si,
un astfel de algoritm a fost dat de Oudin n 1940.
Ne propunem sa aplicam congruent ele n scopul determinarii zilei din
saptamana corespunzatoare unei date calendaristice. Pentru a simplica
problema, vom considera datele ca ind date conform calendarului Gre-
gorian. Daca nu, trebuie sa facem apel si la un algoritm de conversie.
Cum zilele saptamanii se repeta din 7 n 7, vom folosi congruent a
modulo 7. Facem urmatoarele convent ii:
Zilele saptamanii, ncepand cu duminica se noteaza cu cifre de la
0 la 6.
Consideram ca anul ncepe la 1 Martie. Atunci, lunile vor nu-
merotate, pornind cu Martie si terminand cu Februarie, de la 1 la
12. Astfel, pentru anii bisect i, ziua care se ataseaza va ultima
din an.
Notam cu k ziua din luna, cu m luna si anul va notat cu N =
100C +Y unde C marcheaza secolul iar Y 99.
De exemplu, daca consideram data de 17 Ianuarie 1990, k = 17,
m = 11, N = 1989 de unde C = 19, Y = 89.
Ca baza de plecare folosim ziua de 1 Martie a ecarui an. Notam
cu d
N
ziua din saptamana corespunzatoare lui 1 Martie din anul N.

Incepem cu anul 1600, pentru usurint a calculului, si calculam mai ntai


d
N
pentru ecare N.

Intre 1 Martie din anul N 1 si 1 Martie din anul N, sunt 365 de


zile daca N nu este an bisect. Astfel,
d
N
d
N1
+ 1 (mod 7), (5.2)
cum 365 1 (mod 7). Daca N este an bisect, avem
d
N
d
N1
+ 2 (mod 7). (5.3)
Calculam acum cat i ani bisect i au fost ntre anii 1600 si N. Conform
calendarului Gregorian, vom avea
88 CAPITOLUL 5. PRIME APLICAT II ALE CONGRUENT ELOR
x =
_
N 1600
4
_

_
N 1600
100
_
+
_
N 1600
400
_
=
_
N
4
_
400
_
N
100
_
+ 16 +
_
N
400
_
4 =
_
N
4
_

_
N
100
_
+
_
N
400
_
388.
Daca nlocuim N = 100C +Y, obt inem
x = 25C +
_
Y
4
_
C
_
Y
100
_
+
_
C
4
_
388,
de unde
x 3C +
_
C
4
_
+
_
Y
4
_
3 (mod 7). (5.4)
Din ( 5.2) si ( 5.3), obt inem d
N
d
1600
+ N 1600 + x (mod 7) si,
folosind ( 5.4), rezulta n nal,
d
N
d
1600
2C +Y +
_
C
4
_
+
_
Y
4
_
(mod 7). (5.5)
Stim ca d
2005
2 (mod 7), ziua de 1 Martie 2005 ind ntr-o zi de
mart i. Atunci, 2 d
1600
2 20 + 5 +
_
20
4
_
+
_
5
4
_
(mod 7) de unde
d
1600
31 3 (mod 7). Am gasit ca 1 Martie 1600 a fost ntr-o zi de
miercuri.

Inlocuind n ( 5.5), rezulta:
d
N
3 2C +Y +
_
C
4
_
+
_
Y
4
_
(mod 7). (5.6)
Pasul urmator este de a stabili ziua din saptamana corespunzatoare
primei zile din ecare luna a anului N. Observam ca lunile cu 30 de zile
deplaseaza la dreapta ziua de 1 a lunii urmatoare cu 2 zile, iar lunile cu
31 de zile, cu 3 zile la dreapta. Cum, n cazul nostru, februarie are 28
de zile, ea nu aduce nici o modicare.

In total, pe parcursul unui an, se
obt ine o deplasare de 29 zile.
5.3. CALENDARUL 89
Rezultatele sunt prezentate n urmatorul tabel:
Perioada zile adaugate
1 Martie - 1 Aprilie 3
1 Aprilie - 1 Mai 2
1 Mai - 1 Iunie 3
1 Iunie - 1 Iulie 2
1 Iulie - 1 August 3
1 August - 1 Septembrie 3
1 Septembrie - 1 Octombrie 2
1 Octombrie - 1 Noiembrie 3
1 Noiembrie - 1 Decembrie 2
1 Decembrie - 1 Ianuarie 3
1 Ianuarie - 1 Februarie 3
Pentru 1 m 12, obt inem ca [2, 6m0, 2] 2 are aceleasi valori
cu numarul de zile adaugate, corespunzatoare lunii m. Observam ca,
pentru m = 1, valoarea ei este zero.
Deci, ziua din saptamana corespunzatoare primei zile din luna m a
anului N este restul modulo 7 al lui d
N
+ [2, 6m0, 2] 2.

In nal, pentru stabilirea zilei W din saptamana corespunzatoare


datei k din luna m a anului N, adunam k 1 n ultima relat ie. Formula
care se obt ine este:
W k + [2, 6m0, 2] 2C +Y +
_
C
4
_
+
_
Y
4
_
(mod 7).
Ca exemplu, sa determinam ziua din saptamana corespunzatoare
datei de 15 Februarie 2005. Atunci,
k = 15, m = 12, N = 2004 = 100 20 + 4, de unde C = 20, Y = 4.
W 15 + [2, 6 12 0, 2] 2 20 + 4 +
_
20
4
_
+
_
4
4
_
15 +31 40 +4 +5 +1 2 (mod 7). Daca vericamn calendar, ziua
luata ca exemplu a fost ntr-adevar ntr-o zi de mart i.
90 CAPITOLUL 5. PRIME APLICAT II ALE CONGRUENT ELOR
5.4 Programarea unui turneu
Sa vedem cum putem aplica congruent ele n programarea unui turneu.
Presupunem ca exista N echipe diferite care joaca ntr-un turneu
astfel ncat ecare echipa joaca cu ecare alta echipa o singura data.
Daca N este impar, la ecare etapa o echipa trebuie sa nu joace. Atunci,
n acest caz introducem o echipa ctiva, si echipa care este programata
sa joace cu aceasta, de fapt, n runda aceea, sta.
Putem presupune astfel ca numarul de echipe participante la turneu
este mereu par. Notam aceste echipe cu 1, 2, . . . , N 1, N.
Realizam urmatoarea programare:
Fie echipa i cu i ,= N. Ea joaca cu echipa j unde j / i, N n turul
k daca i + j k (mod N 1). Am programat astfel toate jocurile din
turul k mai put in echipa N si echipa i pentru care 2i k (mod N 1).
Cum N 1 este impar, ultima congruent a are solut ie unica x unde
1 x N 1. Punem n joc, n turul k aceasta echipa cu echipa N.
Aratam ca aceasta programare este cea dorita. Pentru aceasta, con-
sideram init ial primele N 1 echipe.
Pentru 1 i N 1, echipa i joaca cu echipa N n turul k daca
2i k (mod N 1).

In alte runde, i nu joaca cu aceleasi echipe, pentru
ca daca i +j k (mod N 1) si i +j k

(mod N 1), rezulta k = k

,
ceea ce este fals.
Cum ecare echipa din primele N 1 joaca N 1 jocuri si nu joaca
cu ecare echipa mai mult decat o data, obt inem ca ele joaca ecare o
singura data. Echipa N joaca N 1 jocuri si orice alta echipa joaca cu
N o singura data. Deci, echipa N joaca cu ecare echipa o singura data.
Spre exemplu, sa consideram ca n turneu participa 5 echipe. Atunci,
N = 6 si ecare echipa care este programata sa joace cu echipa 6 n
ecare tur, de fapt nu joaca n acel tur. Rezultatul programarii este
prezentat n tabelul urmator:
TurEchip a 1 2 3 4 5
1 5 4 st a 2 1
2 st a 5 4 3 2
3 2 1 5 st a 3
4 3 st a 1 5 4
5 4 3 2 1 st a
5.4. PROGRAMAREA UNUI TURNEU 91
Exercit ii propuse
1. Fie b si n > 2, doua numere prime ntre ele iar a, c numere naturale
cu d = (a, c). Daca b
a
1 (mod n) si b
c
1 (mod n), atunci
b
d
1 (mod n) si
n
d
este numar impar.
2. Aratat i ca, daca p [ b
n
+ 1, cu p numar prim, atunci:
i) p [ b
d
+1, pentru d, un divizor propriu al lui n cu
n
d
numar impar
sau
ii) p 1 (mod 2n).
3. Fie n = 2
24
+ 1 = 16777217.
i) Gasit i un numar prim Fermat care divide n.
ii) Aratat i ca orice alt divizor prim p al lui n verica p 1 (mod 48).
iii) Gasit i descompunerea canonica n factori primi a lui n.
4. Descompunet i n factori primi numerele urmatoare:
i) 3
15
1, 3
24
1,
ii) 10
5
1, 10
8
1,
iii) 2
33
1, 2
21
1.
5. Fie n = 111 . . . 1 un numar de k cifre. Stabilit i ce condit ii trebuie
impuse pentru ca:
i) n sa e divizibil cu 3, respectiv cu 9.
ii) n sa e divizibil cu 11.
iii) n sa e divizibil cu 1001.
iv) n sa e numar prim, daca k < 10.
92 CAPITOLUL 5. PRIME APLICAT II ALE CONGRUENT ELOR
6. Stabilit i un test de divizibilitate cu 37.
7. Fie n un numar scris n baza b. Stabilit i un test de divizibilitate
al lui n cu divizori ai lui b
2
+ 1. Folosind testul gasit, vericat i daca
(12100122)
3
este divizibil cu 2 sau cu 5.
8. Determinat i ziua din saptamana n care v-at i nascut.
9. Realizat i, dupa modelul prezentat, programarea unui turneu la
care participa 9 echipe.
CAPITOLUL 6
Radacini primitive
6.1 Ordinul unui numar ntreg
Fie n numar natural nenul si a Z, prim cu n. Din teorema lui Euler
stim ca a
(n)
1 (mod n). Mult imea numerelor naturale ind bine
ordonata, va exista un cel mai mic numar natural nenul k care sa verice
relat ia a
k
1 (mod n).
Denit ie 6.1.1 Fie n numar natural si a Z, prim cu n. Cel mai mic
numar natural nenul k pentru care a
k
1 (mod n) se numeste ordinul
lui a modulo n si l vom nota ord
n
a.
De exemplu, din 4
2
2 (mod 7), 4
3
1 (mod 7), rezulta
ord
7
4 = 3.

In continuare, vom prezenta cateva proprietat i de baza ale ordinului


unui ntreg. Cum majoritatea demonstrat iilor sunt simple, le vom lasa
ca exercit iu pentru cititor.
Propozit ie 6.1.1 Daca a si n sunt relativ prime, cu n > 0, atunci
k N este solut ie a congruent ei a
k
1 (mod n) daca si numai daca
ord
n
a [ k.
93
94 CAPITOLUL 6. R

AD

ACINI PRIMITIVE
De aici, obt inem un rezultat important care usureaza determinarea
lui ord
n
a.
Corolar 6.1.1 Daca n este numar natural nenul si a este un ntreg,
prim cu n, atunci ord
n
a [ (n).
Astfel, daca dorim sa determinam ord
7
3, cum (7) = 6, calculam doar
3
k
pentru k 1, 2, 3, 6. Astfel:
3
1
3 (mod 7) 3
3
6 (mod 7)
3
2
2 (mod 7) 3
6
1 (mod 7)
Un rezultat des folositn continuare este dat de urmatoarea propozit ie:
Propozit ie 6.1.2 Fie n numar natural nenul si a Z, (a, n) = 1.
Atunci, a
i
a
j
(mod n) daca si numai daca i j (mod ord
n
a).

In continuare prezentam un algoritm de determinare a ordinului unui


numar natural a modulo n. Acesta presupune nsa un inconvenient: pen-
tru a putea sa aplicam algoritmul, trebuie sa cunoastem descompunerea
n factori primi a lui (n).
Algoritm 6.1.1 (Ordinul unui numar natural)
INPUT: numerele naturale relativ prime a, n cu (n) = p
1
1
p
2
2
. . . p

k
k
.
OUTPUT: ord
n
a = t
1. Pune t (n).
2. Pentru i = 1, . . . , k executa:
2.1. Pune t t/p
i
i
.
2.2. Calculeaza a
1
a
t
mod n
2.3. Cat timp a
1
,= 1 mod n, executa:
2.3.1. Calculeaza a
1
a
p
i
1
mod n
2.3.2. Pune t t p
i
3. Returneaza t.
Un interes deosebit l prezinta numerele cu ordinul modulo n egal cu
(n).
Denit ie 6.1.2 Daca (r, n) = 1, cu n > 0, si ord
n
r = (n), atunci r
se numeste radacina primitiva modulo n.
6.2. EXISTENT A R

AD

ACINILOR PRIMITIVE 95
Spre exemplu, am aratat ca 3 este radacina primitiva modulo 7.
Dar, trebuie sa remarcam ca nu pentru toate numere n exista radacini
primitive. De exemplu, pentru n = 8, obt inem 3
2
5
2
7
2
1 (mod 8).
Astfel, ord
8
3 = ord
8
5 = ord
8
7 = 2 ,= 4.
Propozit ie 6.1.3 Daca r este radacina primitiva modulo n, atunci
r, r
2
, . . . , r
(n)
formeaza un sistem redus de resturi modulo n.
Presupunem ca un numar natural nenul n are o radacina primitiva.
Pentru a stabili numarul total al acestora, avem nevoie de urmatoarea
propozit ie:
Propozit ie 6.1.4 Daca ord
n
a = k si l > 0 este un numar natural,
atunci, ord
n
a
l
=
k
(k, l)
.
Corolar 6.1.2 Fie r o radacina primitiva modulo n. Atunci, r
k
este
rad acina primitiva modulo n daca si numai daca (k, (n)) = 1.
Teorema 6.1.1 Daca n are o radacina primitiva, atunci are exact
((n)) radacini primitive.
Demonstrat ie. Fie r o radacina primitiva modulo n. Din propozit ia
6.1.3, r, r
2
, . . . , r
(n)
este sistem redus de resturi modulo n. Conform
corolarului 6.1.2, r
k
este radacina primitiva modulo n daca si numai
daca (k, (n)) = 1. Atunci, exista ((n)) astfel de numere, deci tot
atatea radacini primitive modulo n.
6.2 Existent a radacinilor primitive
Denit ie 6.2.1 Fie f Z[X], un polinom de grad 1. Spunem ca x
este o radacina a lui f modulo n, daca f(x) 0 (mod n).
De exemplu, f = X
2
+ 2 are doua radacini necongruente modulo 3,
pe x 1 (mod 3) si x 2 (mod 3).
Teorema 6.2.1 (Lagrange) Fie f = a
n
X
n
+a
n1
X
n1
+. . . +a
1
X+
a
0
, un polinom de grad n 1 cu coecient i ntregi si p un numar prim
cu p a
n
. Atunci, f are cel mult n radacini necongruente modulo p.
96 CAPITOLUL 6. R

AD

ACINI PRIMITIVE
Demonstrat ie
1
. Procedam prin induct ie matematica dupa n. Pentru
n = 1, f = a
1
X +a
0
. Cum p a
1
, congruent a a
1
x a
0
(mod p) are o
singura solut ie, care va si radacina modulo p a lui f.
Presupunem armat ia adevarata pentru polinoame de grad n 1 si
aratam ca ea ramane adevarata pentru polinoame de grad n.
Consideram ca un polinom f de grad n are n +1 radacini necongruente
modulo p pe care le notam x
0
, x
1
, . . . , x
n
. Atunci, pentru 0 k n,
f(x
k
) 0 (mod p).
Din f(x)f(x
0
) = a
n
(x
n
x
n
0
)+a
n1
_
x
n1
x
n1
0
_
+. . . +a
1
(xx
0
),
obt inem ca f(x) = f(x
0
) +(xx
0
)g(x), unde g este un polinom de grad
n 1. Pentru 1 k n, obt inem:
f(x
k
) f(x
0
) (x
k
x
0
)g(x
k
) 0 (mod p).
De aici, cum ecare x
k
x
0
,= 0 (mod p), rezulta g(x
k
) 0 (mod p).
Deci, polinomul g care are gradul n 1, are n radacini necongruente
modulo p. Cum acest rezultat contrazice ipoteza de induct ie, rezulta ca
presupunerea facuta este falsa. Deci, f are cel mult n radacini necon-
gruente modulo p.
Teorema 6.2.2 Fie p un numar prim si d [ p 1. Atunci, X
d
1 are
exact d radacini necongruente modulo p.
Demonstrat ie. Fie p 1 = de. Atunci,
X
p1
1 =
_
X
d
1
_
_
X
d(e1)
+X
d(e2)
+. . . +X
d
+ 1
_
=
_
X
d
1
_
g(X).
Din mica teorema a lui Fermat, X
p1
1 are p 1 radacini necon-
gruente modulo p si orice astfel de radacina este radacina pentru X
d
1
sau pentru g. Conform teoremei Lagrange, g are cel mult d(e 1) =
p d 1 radacini necongruente modulo p. Astfel, X
d
1 are cel put in
1
Joseph-Louis Lagrange (1736-1813) a fost un autodidact, el neavand avantajul
de a benecia de sprijinul unor matematicieni contemporani lui. A obt inut rezul-
tate importante n calculul variat ional, pe care l-a aplicat n mecanica, n calculul
probabilitat ilor, ecuat iilor diferent iale, astronomie, dinamica, mecanica uidelor, n
fundamentarea calculului n teoria numerelor.

In anul 1770 a aratat ca orice num ar
natural este o suma de patru patrate, n 1771 a demonstrat teorema lui Wilson.
Se considera ca el a facut primul pas n dezvoltarea teoriei grupurilor. Expresia sa
favorit a era je ne sais pas, fapt ce dovedeste marea sa modestie.
6.2. EXISTENT A R

AD

ACINILOR PRIMITIVE 97
(p 1) (p d 1) = d radacini necongruente modulo p. Daca aplicam
nca o data teorema 6.2.1 pentru polinomul X
d
1, obt inem ca el are cel
mult d solut ii necongruente modulo p. Astfel, X
d
1 are exact d solut ii
necongruente modulo p.
Folosind acest rezultat, putem determina cate numere naturale necon-
gruente au un ordin dat modulo p.
Teorema 6.2.3 Fie p un numar prim si d [ p 1. Atunci, numarul
numerelor naturale de ordin d modulo p este egal cu (d).
Demonstrat ie. Pentru d [ p 1, notam cu F(d) numarul numerelor
naturale de ordin d modulo p, mai mici decat p.
Cum ordinul modulo p al unui numar care nu este multiplu de p divide
p 1, obt inem p 1 =

d|p1
F(d).
Din teorema 4.1.5, p 1 =

d|p1
(d).
Daca aratam ca F(d) (d), din

d|p1
(d) =

d|p1
F(d), va rezulta
egalitatea F(d) = (d), pentru d [ p 1.
Pentru aceasta, e d [ p 1. Daca F(d) = 0, atunci F(d) (d).
Presupunem ca exista a cu ord
p
a = d. Atunci, a, a
2
, . . . , a
d
nu sunt
congruente modulo p.
Din (a
k
)
d
a
kd
1 (mod p), pentru 1 k d, rezulta ca acestea sunt
radacini modulo p ale polinomului X
d
1. Folosind propozit ia 6.1.4,
ord
p
a
k
= d daca si numai daca (k, d) = 1.
Deci, daca exista radacini de ordin d modulo p, ele sunt exact n numar
de (d). Astfel F(d) (d).
Corolar 6.2.1 Orice numar prim are radacini primitive.
Demonstrat ie. Fie p numar prim. Din teorema anterioara, exista (p1)
numere necongruente modulo p, de ordin p1. Cum ecare dintre acestea
este o radacina primitiva modulo p, obt inem ca p are (p 1) radacini
primitive.
Teorema 6.2.4 Daca p este un numar prim impar cu radacina primi-
tiva r, atunci r sau r +p este radacina primitiva modulo p
2
.
Demonstrat ie. ord
p
r = (p) = p 1. Notam ord
p
2r = m.
Din r
m
1 (mod p
2
), rezulta r
m
1 (mod p), adica
p 1 [ m. (6.1)
98 CAPITOLUL 6. R

AD

ACINI PRIMITIVE
Din corolarul 6.1.1, avem
m [ (p
2
) = p(p 1). (6.2)
Astfel, din ( 6.1) si ( 6.2), rezulta m = p 1 sau m = p(p 1).
Daca m = p(p 1), r este radacina primitiva modulo p
2
.
Pentru m = p 1 aratam ca t = r + p este radacina primitiva modulo
p
2
.
Pentru aceasta, observam mai ntai ca t este si ea radacina primitiva
modulo p, cum t r (mod p). Din calculele facute anterior, rezulta ca
ord
p
2t = p 1 sau ord
p
2t = p(p 1). Pentru a ncheia demonstrat ia,
aratam ca ord
p
2t ,= p 1.
t
p1
= (r +p)
p1
= r
p1
+
p2

j=1
C
j
p1
r
pj1
p
j
+p
p1
r
p1
+ (p 1)p r
p2
1 +p(p 1)r
p2
1 p r
p2
(mod p
2
).
Daca t
p1
1 (mod p
2
), atunci, p r
p2
0 (mod p
2
), de unde
r
p2
0 (mod p), ceea ce este fals (p r).
De exemplu, pentru p = 7, stim ca 3 este radacina primitiva. Cum
3
6
43 ,= 1 (mod 49), 3 este radacina primitiva modulo 49.
Daca consideram acum p = 487, o radacina primitiva este 10. Din
10
486
1 (mod 487
2
), rezulta ca 10 +487 = 497 este radacina primitiva
modulo 487
2
.
Teorema 6.2.5 Fie p un numar prim impar. Atunci, exista radacini
primitive modulo p
k
, pentru orice k numar natural.
Mai mult, daca r este o radacina primitiva modulo p
2
, r este radacina
primitiva modulo p
k
, pentru orice k 2.
Demonstrat ie. Fie r o radacina primitiva modulo p, care este si radacina
primitiva modulo p
2
. Atunci, din teorema 6.2.4, r
p1
,= 1 (mod p
2
).
Aratam, prin induct ie matematica, ca, pentru orice k 2:
r
p
k2
(p1)
,= 1 (mod p
k
). (6.3)
Pentru k = 2, relat ia se verica. Presupunem ca ea este adevarata pentru
k > 2 si aratam ca ea ramane adevarata pentru k + 1.
Din (r, p) = 1, avem (r, p
k1
) = 1.
Aplicand teorema lui Euler, r
(p
k1
)
= r
p
k2
(p1)
1 (mod p
k1
).
6.2. EXISTENT A R

AD

ACINILOR PRIMITIVE 99
Exista astfel d, numar natural pentru care:
r
p
k2
(p1)
= 1 +d p
k1
. (6.4)
Din, ipoteza de induct ie, r
p
k2
(p1)
,= 1 (mod p
k
). De aici, rezulta ca
p d.
Ridicam la puterea p n relat ia ( 6.4) si obt inem
r
p
k1
(p1)
= (1 +d p
k1
)
p
1 +d p
k
(mod p
k+1
). (6.5)
Cum p d, rezulta r
p
k1
(p1)
,= 1 (mod p
k+1
).
Deci, pentru orice k 2, r
p
k2
(p1)
,= 1 (mod p
k
).
Notam m = ord
p
kr. Atunci, m [ (p
k
) = p
k1
(p 1).
Din r
m
1 (mod p
k
), rezulta r
m
1 (mod p). Deci, p 1 [ m. Obt inem
astfel m = p
t
(p 1) unde 0 t k 1. Daca t k 2, atunci
r
p
k2
(p1)
=
_
r
p
t
(p1)
_
p
k2t
1 (mod p
k
). Aceasta relat ie contrazice
nsa ( 6.3). Deci, t = k 1, de unde m = (p
k
).
Ca exemplu, 3 este radacina primitiva modulo 7
k
, cu k 1.
Sa vedem ce putem preciza despre puterile lui 2. Se observa imediat
ca 1 este radacina primitiva modulo 2 iar 3 este radacina primitiva pentru
4.
Teorema 6.2.6 Daca a este impar si k 3, atunci,
a
(2
k
)
2
= a
2
k2
1 (mod 2
k
).
Demonstrat ie. Aratam, prin induct ie, ca armat ia se verica pentru
ecare k 3. Cum a este impar, putem scrie a = 2m+ 1, m N.
Pentru k = 3, rezulta a
2
= (2m + 1)
2
= 4m(m + 1) + 1 1 (mod 8).
Presupunem ca a
2
k2
1 (mod 2
k
). Atunci, a
2
k2
= 1 + 2
k
d, pentru
un numar natural d.
De aici,
a
2
k1
=
_
1 + 2
k
d
_
2
= 1 +d 2
k+1
+ 2
2k
d
2
1 (mod 2
k+1
).
De fapt, teorema arata ca, 2 si 4 sunt singurele puteri ale lui 2 pentru
care exista radacini primitive.
Teorema 6.2.7 Fie k 3. Atunci, ord
2
k5 =
(2
k
)
2
= 2
k2
.
100 CAPITOLUL 6. R

AD

ACINI PRIMITIVE
Demonstrat ie. Din teorema anterioara, 5
2
k2
1 (mod 2
k
), pentru
k 3. Astfel, ord
2
k5 [ 2
k2
. Ramane sa demonstram prin induct ie ca,
pentru k 3, 5
2
k3
1 + 2
k1
,= 1 (mod 2
k
), adica ord
2
k5 2
k3
.
Pentru k = 3, relat ia se verica imediat.
Presupunem ca 5
2
k3
1 + 2
k1
(mod 2
k
). Relat ia se poate scrie sub
forma 5
2
k3
= (1 + 2
k1
) +d 2
k
. Ridicand la patrat, rezulta:
5
2
k2
=
_
(1 + 2
k1
) +d 2
k
_
2
= (1 + 2
k1
)
2
+ (1 + 2
k1
) d 2
k+1
+d
2
2
2k
(1 + 2
k1
)
2
1 + 2
k
(mod 2
k+1
).
Teorema 6.2.8 Fie n un numar natural care nu este de forma n = p
k
sau n = 2p
k
, unde p este numar prim impar si k natural. Atunci, nu
exista radacini primitive modulo n.
Demonstrat ie. Fie n = p
1
1
p
2
2
. . . p

m
m
. Presupunem ca exista r radacina
primitiva modulo n. Atunci, (r, n) = 1 si ord
n
r = (n).
Cum, pentru ecare 1 j m, (r, p

j
j
) = 1, din teorema lui Euler,
avem r
(p

j
j
)
1 (mod p

j
j
). Notam
U = [(p

1
1
), (p

2
2
), . . . , (p
m
m
)] . (6.6)
De aici, r
U
1 (mod p

j
j
), pentru orice 1 j m. Rezulta astfel,
ord
n
r = (n) = (p
1
1
) (p
2
2
) . . . (p

m
m
) U. (6.7)
Pentru ca produsul unor numere sa e mai mic decat cel mai mic multiplu
comun al acestora, numerele trebuie sa e doua cate doua relativ prime.
Deci, pentru 1 i < j m,
_
(p

i
i
), (p

j
j
)
_
= 1. (6.8)
Pentru un numar prim p, (p
t
) = p
t1
(p1). Acest numar este par daca
p este impar sau daca p = 2 si t 2.
De aici, pentru a se verica ( 6.8), n descompunerea lui n trebuie sa
existe un singur factor prim impar si, eventual, un 2. Deci n = p
t
sau
n = 2p
t
cu p prim impar si t natural.
6.2. EXISTENT A R

AD

ACINILOR PRIMITIVE 101


Teorema 6.2.9 Fie p un numar prim impar si k un numar natural.
Atunci, exista radacini primitive modulo 2p
k
. Mai mult, daca r este o
rad acina primitiva modulo p
k
, atunci r este radacina primitiva modulo
2p
k
daca r este numar impar.

In caz contrar, r + p
k
va o radacina
primitiva modulo 2p
k
.
Demonstrat ie. Fie r o radacina primitiva modulo p
k
.
Atunci, din r
(p
k
)
1 (mod p
k
) si (2p
k
) = (p
k
), obt inem
r
(2p
k
)
1 (mod p
k
). (6.9)
Daca r este impar,
r
(2p
k
)
1 (mod 2). (6.10)
Din ( 6.9) si ( 6.10), rezulta
r
(2p
k
)
1 (mod 2p
k
). (6.11)
Pentru t < (2p
k
), r
t
,= 1 (mod 2p
k
) si obt inem astfel:
ord
2p
kr = (2p
k
).
Daca r este par, r +p
k
este numar impar. Astfel,
(r +p
k
)
(2p
k
)
1 (mod 2). (6.12)
Din r r +p
k
(mod p
k
), avem
(r +p
k
)
(2p
k
)
1 (mod p
k
). (6.13)
Ultimele doua relat ii, arata ca
(r +p
k
)
(2p
k
)
1 (mod 2p
k
). (6.14)
Cum (2p
k
) este cea mai mica putere pentru care ( 6.14) se verica,
rezulta ca r +p
k
este, n acest caz, radacina primitiva modulo 2p
k
.
De exemplu, stim ca r = 3 este radacina primitiva modulo 7
k
, pen-
tru k natural. Atunci, cum r este impar, 3 ramane radacina primitiva
modulo 2 7
k
.
102 CAPITOLUL 6. R

AD

ACINI PRIMITIVE
La fel, 2 este radacina primitiva modulo 5. 2
4
16 ,= 1 (mod 25).
Deci, 2 este radacina primitiva pentru 25. Fiind numar par, 2 + 5
k
este
o radacina primitiva modulo 2 5
k
.
Toate rezultatele oferite n acest subcapitol pot reunite ntr-unul
singur care sa stabileasca exact modulele pentru care exista radacini
primitive:
Teorema 6.2.10 Exista radacini primitive modulo n daca si numai
daca n 2, 4, p
k
, 2p
k
unde p este prim impar si k numar natural.
Observat ie 6.2.1 Daca t inem cont ca U(Z
n
), grupul unitat ilor lui Z
n
,
are ordinul (n), existent a unei radacini primitive modulo n este echiva-
lenta cu cea a unui generator pentru grupul U(Z
n
). Deci, exista radacini
primitive modulo n daca si numai daca U(Z
n
) este grup ciclic.
Prezentamn nal un algoritm de determinare a unui generator pen-
tru un grup ciclic de ordin n = p
1
1
p
2
2
. . . p

k
k
.
Algoritm 6.2.1 (Generatorul unui grup ciclic)
INPUT: n = p
1
1
p
2
2
. . . p

k
k
, ordinul grupului.
OUTPUT: a, generatorul grupului.
1. Alege aleator a un element al grupului.
2. Pentru i = 1, . . . , k executa:
2.1. Calculeaz a b a
n/p
i
.
2.2. Daca b = 1, mergi la pasul 1.
3. Returneaza a.
6.3 Index aritmetic
Fie r o radacina primitiva modulo n.
Conform propozit iei 6.1.3, r, r
2
, . . . , r
(n)
este un sistem redus de resturi
modulo n.
Atunci, pentru orice ntreg a, prim cu n, exista un unic 1 x (n)
astfel ncat a r
x
(mod n).
Denit ie 6.3.1 Fie r o radacin a primitiva modulo n si a, numar na-
tural prim cu n.
Numarul natural 1 x (n) pentru care a r
x
(mod n) se numeste
indexul lui a n baza r modulo n si l vom nota ind
r
a.
6.3. INDEX ARITMETIC 103
Deci,
a r
ind
r
a
(mod n) (6.15)
Mai observam ca pentru a b (mod n), obt inem ind
r
a = ind
r
b.
De exemplu, pentru r = 3 radacina primitiva modulo n = 7, avem:
3
1
3 (mod 7) 3
4
4 (mod 7)
3
2
2 (mod 7) 3
5
5 (mod 7)
3
3
6 (mod 7) 3
6
1 (mod 7)
Obt inem:
a 1 2 3 4 5 6
ind
3
a 6 2 1 4 5 3
Mai trebuie remarcat faptul ca o schimbare a radacinii primitive con-
duce la modicarea valorii indexului. Astfel, cum 5 este cealalta radacina
primitiva modulo 7, tabela de index modulo 7 devine:
a 1 2 3 4 5 6
ind
5
a 6 4 5 2 1 3
Propozit ie 6.3.1 Fie r o radacina primitiva modulo n si a, b doua nu-
mere naturale, prime cu n. Atunci, urmatoarele armat ii sunt adevarate:
1) ind
r
1 0 (mod (n)).
2) ind
r
(ab) ind
r
a +ind
r
b (mod (n)).
3) ind
r
a
k
k ind
r
a (mod (n)).
Demonstrat ie. 1) r ind radacina primitiva modulo n, ord
n
r = (n).
Astfel, r
(n)
1 (mod n) si (n) este cea mai mica putere pentru care
se verica congruent a. Deci, ind
r
1 = (n) 0 (mod (n)).
2) Din ( 6.15), ab (r)
indr(ab)
(mod n). Dar,
r
ind
r
a+ind
r
b
= r
ind
r
a
r
ind
r
b
ab (mod n).
Rezulta astfel, r
indr(ab)
r
indra+indrb
(mod n) si, aplicand propozit ia
6.1.2, ind
r
(ab) ind
r
a +ind
r
b (mod (n)).
3) se demonstreaza asemanator cu subpunctul 2).
104 CAPITOLUL 6. R

AD

ACINI PRIMITIVE
O prima aplicat ie a indexului consta n rezolvarea unor tipuri de
congruent e. De exemplu, sa consideram pentru nceput congruent a:
3x
14
2 (mod 23).
23 este numar prim, deci exista radacini primitive modulo 23. Cum
5
11
1 (mod 23), ord
23
5 = 22. Deci, 5 este radacina primitiva modulo
23.
Scriem tabela de index modulo 23 relativ la aceasta radacina primitiva:
a 1 2 3 4 5 6 7 8 9 10 11
ind
5
a 22 2 16 4 1 18 19 6 10 3 9
a 12 13 14 15 16 17 18 19 20 21 22
ind
5
a 20 14 21 17 8 7 12 15 5 13 11
Congruent a devine ind
5
(3 x
14
) ind
5
2 (mod 22).
Folosind propozit ia 6.3.1, rezulta ind
5
3+14 ind
5
x 2 (mod 22). Deci,
16 + 14 ind
5
x 2 (mod 22). Obt inem 14 ind
5
x 8 (mod 22), de
unde 7 ind
5
x 4 (mod 11).

Inmult im congruent a cu

7 8 (mod 11) si
rezulta ind
5
x 10 (mod 11). Deci, ind
5
x = 10 sau ind
5
x = 21. Atunci,
din tabela de index rezulta direct x 9 (mod 23) si x 14 (mod 23).
Sa rezolvam acum o congruent a de forma:
3
x
2 (mod 23).
Congruent a este echivalenta cu ind
5
(3
x
) ind
5
2 (mod 22), adica
x ind
5
3 2 (mod 22). Din 16 x 2 (mod 22) obt inem:
8 x 1 (mod 11), deci x 7 (mod 11). Putem scrie aceasta solut ie si
sub forma x 7 (mod 23), x 18 (mod 23).
Sa studiem acum congruent ele de forma
x
k
a (mod n) (6.16)
unde a, n, k sunt numere naturale, exista radacini primitive modulo n
iar a si n sunt relativ prime.
Denit ie 6.3.2 Cu notat iile anterioare, spunem ca a este kputere
rezidual a a lui n daca congruent a ( 6.16) are solut ii.
6.4. EXPONENT I UNIVERSALI 105
Teorema 6.3.1 Congruent a ( 6.16) are solut ii daca si numai daca
a
(n)
d
1 (mod n),
unde d = (k, (n)). Mai mult, daca congruent a are solut ii, exista exact
d solut ii necongruente modulo n.
Demonstrat ie. Fie r o radacina primitiva modulo n. Congruent a ( 6.16)
este echivalenta cu
k ind
r
x ind
r
a (mod (n)). (6.17)
Din teorema 3.2.1, aceasta congruent a are solut ii daca si numai daca
d [ ind
r
a unde d = (k, (n)) si, n acest caz, sunt d solut ii necongruente.
Dar,
d [ ind
r
a (n)
ind
r
a
d
=
(n)
d
ind
r
a 0 (mod (n)) a
(n)
d

_
r
indra
_
(n)
d

_
r
(n)
_
ind
r
a
d
1 (mod n).
Observat ie 6.3.1 Teorema arata ca, pentru p numar prim, k natural
si a prim cu p, a este kputere rezidual a a lui p daca si numai daca
a
p1
d
1 (mod p),
unde d = (k, p 1).
6.4 Exponent i universali
Daca revedem demonstrat ia teoremei 6.2.8, observam ca, pentru un
numar natural n si pentru orice a prim cu n,
a
U
1 (mod n),
unde U este cel denit n relat ia ( 6.6).
La fel, din teorema lui Euler, a
(n)
1 (mod n), pentru orice a cu
(a, n) = 1.
Denit ie 6.4.1 Un exponent universal al lui n este un numar natural
e cu proprietatea ca a
e
1 (mod n), pentru orice a prim cu n.
106 CAPITOLUL 6. R

AD

ACINI PRIMITIVE
Deci, U si (n) sunt exponent i universali ai lui n.
Denit ie 6.4.2 Cel mai mic exponent universal al lui n poart a numele
de exponent universal minimal si l notam (n).
Folosind descompunerea n factori primi a lui n, sa cautam o formula
pentru a determina (n).
Este evident ca, daca n are o radacina primitiva, atunci (n) = (n).
Astfel, teorema 6.2.10 precizeaza ca:
(2 p
k
) = (p
k
) = (p
k
), pentru p prim impar si k natural,
(2) = (2) = 1,
(4) = (4) = 2.
Din teoremele 6.2.6 si 6.2.7 stim ca a
2
k2
1 (mod 2
k
), pentru
k 3, a impar si ord
2
k5 = 2
k2
. Astfel, (2
k
) = 2
k2
, pentru k 3.
Teorema 6.4.1 Fie n = 2
k
0
p
k
1
1
. . . p
k
m
m
, unde p
i
sunt numere prime im-
pare distincte si k
i
1. Atunci,
(n) =
_
(2
k
0
), (p
k1
1
), . . . (p
k
m
m
)
_
.

In plus, exista a, prim cu n, al carui ordin sa e egal cu (n), cel


mai mare ordin posibil modulo n.
Demonstrat ie. Fie a prim cu n. Din teorema 6.2.6, a
(2
k
0
)
1 (mod 2
k0
).
Cum (a, p
k
i
i
) = 1, a
(p
k
i
i
)
1 (mod p
k
i
i
), pentru ecare i.
Notam M =
_
(2
k0
), (p
k1
1
), . . . (p
km
m
)
_
.
Din (2
k0
) [ M si (p
k
i
i
) = (p
k
i
i
) [ M, pentru 1 i m, rezulta
a
M
1 (mod n).
Am aratat astfel ca M este exponent universal. Sa aratam ca el este si
minimal.
Pentru aceasta, gasim un numar a cu proprietatea ca a
t
,= 1 (mod n),
pentru t < M. Acest a va elementul de ordin maxim modulo n.
Notam cu r
i
o radacina primitiva modulo p
ki
i
, 1 i m si consideram
sistemul de congruent e:
6.4. EXPONENT I UNIVERSALI 107
_

_
x 3 (mod 2
k0
)
x r
1
(mod p
k
1
1
)
.
.
.
x r
m
(mod p
k
m
m
)
Folosind teorema chinezeasca a resturilor, exista o solut ie unica a,
modulo 2
k
0
p
k
1
1
. . . p
k
m
m
= n. Aratam ca ord
n
a = M.
Fie t pentru care a
t
1 (mod n). Atunci, a
t
1 (mod 2
k0
) si, pentru
ecare i, a
t
1 (mod p
ki
i
). Dar, a este solut ie a sistemului.
Obt inem ord
2
k
0
a = (2
k0
), ord
p
k
i
i
a = (p
ki
i
), cu 1 i m. Deci,
(2
k0
) [ t si ecare (p
ki
i
) [ t. Atunci, M [ t. De aici, ord
n
a = M.
Sa aplicam aceasta teorema pentru n = 100.
(100) =
_
(2
2
), (5
2
)

= [2, 20] = 20. Pentru a determina elementul de


ordin 20 modulo 100, rezolvam sistemul:
_
x 3 (mod 4)
x 2 (mod 25)
folosind teorema chinezeasca a resturilor. Rezulta a 27 (mod 100).
Algoritm 6.4.1 (Element de ordin maxim modulo n = pq)
INPUT: p, q numere prime impare.
OUTPUT: a, cu ord
n
a = [p 1, q 1].
1. Foloseste algoritmul 6.2.1 pentru a gasi o radacin a
primitiva mod p.
2. Foloseste algoritmul 6.2.1 pentru a gasi o radacina
primitiva mod q.
3. Aplica algoritmul 3.3.1 pentru a gasi 1 a n
solut ia sistemului x (mod p), x (mod q).
4. Returneaza a.
Observat ie 6.4.1 Exponentul universal minimal, (n), si gaseste apli-
cat ii n unele metode de generare a numerelor pseudo-aleatoare. Aceste
metode creeaza un sir de numere, pornind de la un numar ales init ial,
numit generator. Sirurile obt inute astfel, nu sunt aleatoare, ele ind
obt inute n mod metodic, dupa o anumita regul a (de exemplu, metoda
congruent ei liniare, metoda celor mai mici patrate). De aceea ele se
numesc pseudo-aleatoare. Cel mai mare dezavantaj n generarea de nu-
mere pseudo-aleatoare prin aceste metode, este ca, n funct ie de alegerea
108 CAPITOLUL 6. R

AD

ACINI PRIMITIVE
generatorului, pot rezulta siruri cu un numar redus de numere, care se
repeta mereu. Din acest motiv se urmareste ca lungimea maxima a
sirului far a repetit ie, numita lungimea perioadei, sa e cat mai mare.
Ea este data de (n).
Denit ie 6.4.3 Fie n > 0, natural si a, prim cu n. Cel mai mic numar
natural x pentru care a
x
1 (mod n), se numeste 1exponentul lui
a modulo n.
Vrem sa determinam, pentru ecare n, cel mai mare 1exponent
posibil, pe care l vom nota
0
(n) si l numim 1exponent maximal al
lui n. Din denit ie, tot i 1exponent ii modulo n sunt (n).

Incepem, ca si nainte, cu situat ia n care exista o radacina primitiva


modulo n.
Teorema 6.4.2 Pentru n > 2, cu proprietatea ca exista radacini primi-
tive modulo n,

0
(n) =
(n)
2
=
(n)
2
.
Demonstrat ie. Fie r o radacina primitiva modulo n.
Atunci, (n) = (n). Cum, n acest cax, (n) este numar par,
(n)
2
N.
Folosind teorema lui Euler, a
(n)
=
_
a
(n)
2
_
2
1 (mod n), pentru
(a, n) = 1. De aici, a
(n)
2
1 (mod n), adica
0
(n)
(n)
2
.
Notam cu e
1
1exponentul lui r modulo n. Atunci, r
e1
1 (mod n),
de unde r
2e1
1 (mod n). Astfel, ord
n
r = (n) [ 2e
1
, sau
(n)
2
[ e
1
.

0
(n) este cel mai mare 1exponent modulo n, deci e
1

0
(n).
Rezulta astfel ca
(n)
2

0
(n), de unde obt inem, n nal, egalitatea
dorita.
Lema 6.4.1 Fie n cu proprietatea ca nu exista rad acini primitive mo-
dulo n si e a, un numar natural prim cu n, cu ord
n
a = (n).
Presupunem ca a verica a
(n)
2
,= 1 (mod n). Atunci, 1exponentul
lui a modulo n este egal cu (n).
6.4. EXPONENT I UNIVERSALI 109
Demonstrat ie. Notam 1exponentul lui a modulo n cu e
a
. Astfel,
a
e
a
1 (mod n). Cum ord
n
a = (n) si a
2e
a
1 (mod n), avem
(n) [ 2e
a
. Din e
a
(n), obt inem e
a
=
(n)
2
sau e
a
= (n).
Pentru e
a
=
(n)
2
, avem a
(n)
2
1 (mod n). Din ipoteza, a
(n)
2
,=
1 (mod n). ord
n
a = (n) implica a
(n)
2
,= 1 (mod n). Deci, acest caz
nu este posibil si obt inem e
a
= (n).
Teorema 6.4.3 Daca nu exista radacini primitive modulo n, atunci,

0
(n) = (n).
Demonstrat ie. Folosind rezultatul lemei anterioare, pentru a demonstra
teorema trebuie doar sa gasim un numar a care verica condit iile acestei
leme.
Fie n = 2
k0
p
k
1
1
. . . p
km
m
. Consideram mai multe cazuri:
1) n are cel put in doi factori primi impari diferit i.
Descompunem n factori primi (p
k
i
i
) pentru 1 i m. Vom nota
cu j, indicele pentru care exponentul lui 2 n aceste descompuneri este
minim. Fie r
i
o radacina primitiva modulo p
ki
i
, 1 i m. Fie a solut ia
sistemului:
_
_
_
x 3 (mod 2
k
0
)
x r
i
(mod p
k
i
i
) i ,= j
x r
2
j
(mod p
kj
j
)
Din teorema 6.4.1,
ord
n
a =
_
(2
k0
), (p
k1
1
), . . . ,
(p
kj
j
)
2
, . . . , (p
km
m
)
_
.
Din alegerea lui j,
_
(2
k
0
), (p
k1
1
), . . . ,
(p
k
j
j
)
2
, . . . , (p
k
m
m
)
_
= (n).
Din a r
2
j
(mod p
kj
j
), obt inem a
(p
k
j
j
)
2
r
(p
k
j
j
)
j
1 (mod p
kj
j
). Dar,
(p
k
j
j
)
2
[
(n)
2
. Astfel, a
(n)
2
1 ,= 1 (mod n). Deci, am gasit a care
verica condit iile lemei 6.4.1.
2) n = 2
k0
p
k
cu p prim impar, k > 0, k
0
2.
Daca k
0
= 2 sau 3, (n) =
_
2, (p
k
)

= (p
k
). Fie a solut ia sistemului
110 CAPITOLUL 6. R

AD

ACINI PRIMITIVE
_
x 1 (mod 4)
x r (mod p
k
)
unde r este radacina primitiva modulo p
k
. Rezulta ord
n
a = (n). Din
a 1 (mod 4), a
(n)
2
1 (mod 4) si rezulta ca a
(n)
2
,= 1 (mod n).
Astfel, 1exponentul lui a modulo n este (n).
Daca k
0
4, alegem a ca ind solut ia sistemului
_
x 3 (mod 2
k
0
)
x r (mod p
k
) .
Obt inem ord
n
a = (n). Din 4 [ (2
k0
), rezulta 4 [ (n).
Atunci,
a
(n)
2
3
(n)
2
(3
2
)
(n)
4
1 (mod 8) si astfel, a
(n)
2
,= 1 (mod n).
Folosind lema 6.4.1, rezulta e
a
= (n).
3) n = 2
k
0
, k
0
3.
Din teorema 6.2.7, ord
n
5 = (n). Din 5
(n)
2
(5
2
)
(n)
4
1 (mod 8),
rezulta 5
(n)
2
,= 1 (mod n), deci a = 5 verica condit iile lemei.
Sa vedem cum se utilizeaza 1exponentul maximal
0
(n) n proce-
sul de mbinare a cablurilor telefonice.
Cablurile telefonice sunt formate din mai multe straturi concentrice
de re izolate din cupru. Liniile telefonice se construiesc prin mbinarea
sect iunilor de cablu. Daca doua re din acelasi strat devin adiacente n
mai multe sect iuni, apar probleme de interferent a si de suprapuneri de
convorbiri. Din acest motiv, doua re adiacente din acelasi strat ntr-o
sect iune, nu trebuie sa e adiacente, n acelasi strat, n orice sect iune
apropiata. De asemenea, modalitatea de a realiza acest lucru trebuie sa
e simpla, t inand cont de mediul n care se realizeaza aceste mbinari.
Pentru mbinarea cablurilor, vom aplica urmatoarea regula:
Firele dintr-un strat concentric sunt mbinate cu re din stratul cores-
punzator al sect iunii urmatoare, folosind aceeasi direct ie de mbinare la
ecare jonct iune. Presupunem ca stratul are n re si conectam rul aat
pe pozit ia j, 1 j n, dintr-o sect iune cu cel de pe pozit ia S(j) din
sect iunea urmatoare. S(j) se deneste ca ind restul modulo n al lui
1 +(j 1)s, unde s poarta numele de ntinderea sistemului de mbinare.
Astfel, de fapt, se mbina rul j cu cel care se aa cu s modulo n pozit ii
mai departe (n sensul convenit) din sect iunea urmatoare.
6.4. EXPONENT I UNIVERSALI 111
Corespondent a denita trebuie sa e bijectiva, adica:
daca S(j) S(k) (mod n), atunci j = k, 1 j, k n.

Inlocuind,
rezulta congruent a js ks (mod n) care trebuie sa implice j = k. Deci,
(s, n) = 1.
Notam cu S
t
(j) rul cu care este mbinat n sect iunea t rul init ial
j, din prima sect iune.
Aplicand metoda induct iei matematice, se obt ine usor ca
S
t
(j) 1 + (j 1)s
t1
(mod n).
Pentru a ndeplinita regula precizata init ial, trebuie ca rele adia-
cente sa e separate n cat mai multe sect iuni posibile. Presupunem ca
rele j si j + 1 sunt adiacente n a ta sect iune facuta. Atunci,
S
t
(j) S
t
(j + 1) 1 (mod n), adica s
t1
1 (mod n).
Deci, pornind de la doua re adiacente n prima sect iune, pentru a
le pastra cat mai mult separate, trebuie sa alegem ntinderea s care are
1 exponentul maximal
0
(n).
De exemplu, daca n = 100,
0
(100) = (100) = 20 iar s = 27 a fost
calculat anterior.
Exercit ii propuse
1. Determinat i ord
10
3, ord
13
10, ord
17
9.
2. Determinat i toate radacinile primitive modulo 13.
3. Fie n 4, 8, 10, 18, 19, 25, 98, 100, 343, 1001. Precizat i pentru ce
valori ale lui n exista radacini primitive modulo n.
4. Determinat i o radacina primitiva modulo n, daca
n 22, 26, 121, 169.
5. Fie n un numar natural pentru care exista r, o radacina primitiva.
Folosind aceasta radacina, aratat i ca produsul numerelor mai mici decat
n si relativ prime cu n este congruent cu 1 modulo n.
6. Determinat i toate solut iile urmatoarelor congruent e:
i) 3x
5
1 (mod 23).
ii) 13
x
5 (mod 23).
112 CAPITOLUL 6. R

AD

ACINI PRIMITIVE
7. Pentru ce numere naturale a congruent a ax
4
2 (mod 13) are
solut ii?
8. Fie congruent a 8x
7
a (mod 29). Stabilit i toate valorile lui a
pentru ca aceasta congruent a sa aiba solut ie.
9. Fie r o radacina primitiva modulo p, cu p numar prim impar.
Aratat i ca ind
r
(p 1) =
p 1
2
.
10. Calculat i (n) si 1exponentul maximal pentru
n 11, 17, 22, 36, 38, 120, 144, 222.
11. Fie n 12, 15, 36, 47. Determinat i un numar al carui ordin
modulo n este cel mai mare posibil.
12. Fie n 13, 14, 15, 25, 30. Determinat i un numar a al carui
1exponent modulo n este egal cu
0
(n).
CAPITOLUL 7
Reciprocitate patratica
Diofante, n Arithmetica, a facut urmatoarea armat ie care a fost punctul
de plecare pentru obt inerea rezultatului cunoscut sub numele de legea
reciprocitat ii patratice:
65 se scrie n mod natural ca suma de doua patrate, adica 7
2
+ 4
2
si
8
2
+ 1
2
, datorita faptului ca 65 = 13 5 iar ecare dintre factori este
suma de doua patrate.
Evident, Diofante cunostea formula
(a
2
+b
2
)(c
2
+d
2
) = (ac bd)
2
+ (bc ad)
2
care arata ca un produs de sume de doua patrate este la randul ei o
suma de doua patrate.
De aici, Fermat a dedus ca pentru a cunoaste care numere se scriu
ca suma de doua patrate, trebuie sa e cunoscute numerele prime cu
aceasta proprietate. Este usor de aratat ca numerele prime de forma
4k + 3 nu sunt suma de doua patrate. Dicil este de aratat ca toate
numerele prime de forma 4k + 1 sunt sume de doua patrate.
1
Fermat a
gasit forme liniare si pentru numere prime de forma a
2
+2b
2
si a
2
+3b
2
.
Primele sunt numere prime de forma 8k +1 sau 8k +3 iar ultimele sunt
exact cele de forma 3k + 1.
1
Aceata teorema a fost enunt ata de Fermat n 1640, dar prima demonstrat ie cunos-
cuta este datorata lui Euler, n anul 1755.
113
114 CAPITOLUL 7. RECIPROCITATE P

ATRATIC

A
La mijlocul secolului al XVIII-lea, Euler observa ca aarea numerelor
prime de forma a
2
+b
2
, a
2
+2b
2
sau a
2
+3b
2
depinde daca p este patrat
(mod q) pentru anumit i ntregi p si q. Astfel, pentru p si q numere prime
impare, el a obt inut urmatorul rezultat:
1. Cand p, q sunt amandoi de forma 4k +3, atunci p este patrat mo-
dulo q daca si numai daca q nu este patrat modulo p.
2. Altfel, p este patrat modulo q daca si numai daca q este patrat
modulo p.
Datorita relat iei reciproce ntre p si q, aceasta armat ie se numeste
legea reciprocitat ii patratice.
2
7.1 Simbolul Legendre
Denit ie 7.1.1 Fie m un numar natural si a un ntreg, relativ prim cu
m. a se numeste rest patratic modulo m daca congruent a x
2
a (mod m)
are solut ii.

In caz contrar, spunem ca a nu este rest patratic modulo m.
Spre exemplu, din congruent ele:
1
2
10
2
1 (mod 11) 2
2
9
2
4 (mod 11)
3
2
8
2
9 (mod 11) 4
2
7
2
5 (mod 11)
5
2
6
2
3 (mod 11)
rezulta ca 1, 3, 4, 5, 9 sunt resturi patratice modulo 11 iar 2, 6, 7, 8, 10 nu
sunt.
Lema 7.1.1 Fie p numar prim impar si a Z, cu p a. Congruent a
x
2
a (mod p) (7.1)
are 2 solut ii necongruente modulo p, sau nu are solut ie.
2
Euler nu a putut demonstra acest rezultat, decat pe cateva cazuri particulare,
prima demonstrat ie ind data de Gauss. Exista aproape 200 de demonstrat ii diferite
pentru legea reciprocitat ii patratice. Astfel, aceasta a devenit a doua teorema cu cele
mai multe demonstrat ii, dupa teorema lui Pitagora.
7.1. SIMBOLUL LEGENDRE 115
Demonstrat ie. Presupunem ca congruent a ( 7.1) are o solut ie, pe x
0
.
Atunci, si x
0
este solut ie pentru ( 7.1). Daca x
0
x
0
(mod p),
atunci, p [ 2x
0
. Cum p este impar, p [ x
0
, de unde p [ a, ceea ce este fals.
Deci, x
0
si x
0
sunt solut ii necongruente modulo p. Ramane sa aratam
ca orice alta solut ie y a lui ( 7.1) este congruenta modulo p cu una din
acestea doua. Din y
2
a x
2
0
(mod p), obt inem p [ y
2
x
2
0
. Cum p este
prim, p [ y x
0
sau p [ y +x
0
de unde obt inem rezultatul dorit.
Propozit ie 7.1.1 Pentru p numar prim impar, exista exact
p 1
2
res-
turi patratice modulo p si
p 1
2
non-resturi patratice modulo p ntre
numerele 1, 2, . . . , p 1.
Demonstrat ie. Pentru a determina resturile patratice modulo p dintre
numerele 1, 2, . . . , p1, procedam can exemplul anterior. Calculam res-
turile modulo p ale patratelor celor p1 numere. Sunt p1 patrate care
trebuie considerate. Stim ca ecare congruent a ( 7.1) are 2 solut ii necon-
gruente modulo p sau niciuna. Deci, sunt exact
p 1
2
resturi patratice
modulo p. Cele ramase, n numar de p 1
p 1
2
=
p 1
2
sunt non-
resturi patratice modulo p.
Denit ie 7.1.2 Fie p numar prim impar si a un ntreg relativ prim cu
p. Denim simbolul lui Legendre
3
,
_
a
p
_
prin:
_
a
p
_
=
_
1, daca a este rest patratic mod p;
1, daca a nu este rest patratic mod p.
Observat ie 7.1.1

In unele lucrari de specialitate, simbolul lui Legendre
este denit si pentru cazul cand p [ a, luand valoarea 0 n aceasta situat ie.
Dar, acest caz nu ne intereseaza n studiul nostru.
Spre exemplu,
_
3
11
_
=
_
4
11
_
= 1 iar
_
2
11
_
=
_
6
11
_
= 1.
3
Adrien-Marie Legendre (1752-1833), n lucrarea sa de teoria numerelor din anul
1785, a prezentat multe rezultate importante legate de legea reciprocitat ii patratice
si a numerelor prime aate ntr-o progresie aritmetica.
116 CAPITOLUL 7. RECIPROCITATE P

ATRATIC

A
Pentru p numar prim si p a (mod p), din teorema 3.4.3 obt inem
a
p1
1 (mod p). Euler a folosit acest rezultat pentru a obt ine un
criteriu care sa stabileasca daca un numar este rest patratic modulo p
sau nu.
Teorema 7.1.1 (Criteriul Euler) Fie p numar prim impar, a Z cu
p a. Atunci,
_
a
p
_
a
p1
2
(mod p). (7.2)
Demonstrat ie. Presupunem mai ntai ca
_
a
p
_
= 1. Atunci, congruent a
( 7.1) are solut ie pe care o notam x
0
. Din teorema 3.4.3,
a
p1
2
=
_
x
2
0
_
p1
2
x
p1
0
1 (mod p).
Consideram acum
_
a
p
_
= 1. Deci, congruent a ( 7.1) nu are solut ie.
Din teorema 3.2.1, pentru orice 1 i p 1 exista 1 j p 1 astfel
ncat ij a (mod p).

In acest caz, i si j trebuie sa e diferite. Putem
grupa numerele 1, 2, . . . , p 1 n
p 1
2
perechi, ecare cu produsul egal
cu a. Atunci, (p 1)! a
p1
2
(mod p). Aplicand acum teorema Wilson,
rezulta a
p1
2
1 (mod p).
Propozit ie 7.1.2 Fie p numar prim impar si a, b Z cu p a si p b.
Atunci,
1. Daca a b (mod p), atunci
_
a
p
_
=
_
b
p
_
.
2.
_
a
p
_

_
b
p
_
=
_
ab
p
_
.
3.
_
a
2
p
_
= 1.
Demonstrat ie. 1) a b (mod p). Atunci, x
2
a (mod p) are solut ii daca
si numai daca x
2
b (mod p) are solut ii.
2) Folosind criteriul lui Euler,
_
a
p
_
a
p1
2
(mod p),
_
b
p
_
b
p1
2
(mod p)
7.1. SIMBOLUL LEGENDRE 117
si
_
ab
p
_
(ab)
p1
2
(mod p). Atunci,
_
a
p
_

_
b
p
_

_
ab
p
_
(mod p). Cum
valorile simbolului lui Legendre sunt 1, obt inem egalitatea ceruta.
3) Folosind 2), din
_
a
p
_
= 1, rezulta ultima armat ie.
Observam ca punctul 2) al propozit iei arma ca produsul a doua
resturi patratice sau a doua non-resturi patratice modulo p este rest
patratic, pe cand produsul dintre un rest patratic si un non-rest patratic
modulo p este un non-rest patratic modulo p.
Folosind criteriul lui Euler, vedem usor care numere prime impare au
pe -1 rest patratic. Obt inem astfel:
Teorema 7.1.2 Daca p este numar prim impar,
_
1
p
_
=
_
1, daca p 1 (mod 4);
1, daca p 1 (mod 4).
Un alt criteriu care stabileste daca un numar este rest patratic modulo
p a fost enunt at de Gauss.
Lema 7.1.2 (Lema lui Gauss) Fie p > 2 numar prim si a Z, prim
cu p. Daca dintre resturile modulo p ale numerelor a, 2a, 3a, . . . ,
p 1
2
a,
doar s sunt mai mari decat
p
2
, atunci
_
a
p
_
= (1)
s
.
Demonstrat ie. Fie u
1
, u
2
, . . . , u
s
resturile modulo p mai mari decat
p
2
si notam v
1
, v
2
, . . . , v
t
celelalte resturi. Din (j a, p) = 1 pentru orice
1 j
p 1
2
, toate resturile se aa n mult imea 1, 2, . . . , p 1.
Aratam ca p u
1
, p u
2
, . . . , p u
s
, v
1
, v
2
, . . . , v
t
acopera mult imea
1, 2, . . . ,
p 1
2
ntr-o anumita ordine.
Daca avem u
j
u
i
(mod p) sau v
i
v
i
(mod p), ar exista m, n
p 1
2
astfel ncat ma na (mod p). De aici, cum m ,= n (mod p), rezulta
p [ a, ceea ce contrazice ipoteza. Deci, pentru i ,= j, u
i
,= u
j
(mod p) si
v
i
,= v
j
(mod p).
Daca p u
i
v
j
(mod p), pentru i ,= j, atunci exista 1 m, n
p 1
2
118 CAPITOLUL 7. RECIPROCITATE P

ATRATIC

A
pentru care ma pna (mod p). Obt inem atunci, m n (mod p), ceea
ce este imposibil t inand cont de alegerea numerelor m, n. Deci, pentru
i ,= j, p u
i
,= v
j
(mod p).
Am demonstrat astfel ca p u
1
, p u
2
, . . . , p u
s
, v
1
, v
2
, . . . , v
t
sunt
numerele 1, 2, . . . ,
p 1
2
, ntr-o anumita ordine. Atunci,
(p u
1
)(p u
2
) . . . (p u
s
)v
1
v
2
. . . v
t

_
p 1
2
_
! (mod p) (7.3)
adica
(1)
s
u
1
u
2
. . . u
s
v
1
v
2
. . . v
t

_
p 1
2
_
! (mod p) (7.4)
Dar, u
1
u
2
. . . u
s
v
1
v
2
. . . v
t
a 2a . . .
_
p 1
2
_
a (mod p) de unde
u
1
u
2
. . . u
s
v
1
v
2
. . . v
t
a
p1
2
_
p 1
2
_
! (mod p) (7.5)
Din ( 7.4) si ( 7.5), obt inem
(1)
s
a
p1
2
_
p 1
2
_
!
_
p 1
2
_
! (mod p). (7.6)
De aici, cum p si
_
p 1
2
_
! sunt relativ prime, rezulta
(1)
s
a
p1
2
1 (mod p). (7.7)
Prin nmult ire cu (1)
s
, obt inem
_
a
p
_
a
p1
2
(1)
s
(mod p) ceea ce
nalizeaza demonstrat ia.
De exemplu, pentru p = 11 si a = 6, obt inem
p 1
2
= 5. Rezulta
1 6 6 (mod 11)
2 6 1 (mod 11)
3 6 7 (mod 11)
4 6 9 (mod 11)
5 6 8 (mod 11)
7.1. SIMBOLUL LEGENDRE 119
Cum sunt 4 resturi mai mari decat 5,
_
6
11
_
= (1)
4
= 1.
Folosind lema lui Gauss, caracterizam numerele prime impare care
au pe 2 rest patratic.
Teorema 7.1.3 Daca p este numar prim impar,
_
2
p
_
= (1)
p
2
1
8
=
_
1 daca p 1 (mod 8);
1 daca p 3 (mod 8).
Demonstrat ie. Pastam notat iile din demonstrat ia lemei lui Gauss.
Fie 1 j
p 1
2
. Din 2 j
p
2
pentru j
p
4
rezulta ca exista
_
p
4
_
numere strict mai mici decat
p
2
. Atunci, exista s =
p 1
2

_
p
4
_
resturi
mai mari decat
p
2
.
Ramane sa aratam ca
p 1
2

_
p
4
_

p
2
1
8
(mod 2).
Pentru aceasta, cum p este prim impar, avem situat iile:
p 1 (mod 8) sau p 3 (mod 8).
Pentru primul caz, p = 8k 1, pentru k natural. Obt inem
p
2
1
8
= 8k
2
2k 0 (mod 2),
p 1
2

_
p
4
_
=
_
2k 0 (mod 2), daca p = 8k + 1;
2k + 2 0 (mod 2), daca p = 8k + 7.
Rezulta astfel,
p 1
2

_
p
4
_

p
2
1
8
(mod 2).
Pentru p = 8k 3,
p
2
1
8
= 8k
2
6k +1 1 (mod 2). Pe de alta parte,
p 1
2

_
p
4
_
=
_
2k + 1 1 (mod 2), daca p = 8k + 3;
2k + 1 1 (mod 2), daca p = 8k + 5.
Obt inem si n aceasta situat ie congruent a dorita.
120 CAPITOLUL 7. RECIPROCITATE P

ATRATIC

A
De exemplu, sa calculam urmatoarele simboluri Legendre:
1.
_
317
11
_
. Pentru aceasta, cum 317 9 (mod 11), obt inem:
_
317
11
_
=
_
9
11
_
=
_
3
11
_
2
= 1.
2.
_
89
13
_
. Din 89 2 (mod 13) rezulta:
_
89
13
_
=
_
2
13
_
=
_
1
13
_

_
2
13
_
= 1, pentru ca:
din 13 1 (mod 4) rezulta
_
1
13
_
= 1 si, deoarece 13 3 (mod 8),
_
2
13
_
= 1.
7.2 Legea reciprocitat ii patratice
Teorema eleganta, datorata lui Gauss, leaga
_
p
q
_
de
_
q
p
_
unde p, q
sunt numere prime impare diferite. Cunoscuta sub numele de legea re-
ciprocitat ii patratice, ea precizeaza daca congruent a x
2
p (mod q) are
solut ii, stiind daca congruent a x
2
q (mod p) are solut ii.

Inainte de a o enunt a, sa vedem cum funct ioneaza urmatoarea lema,


necesara n demonstrat ia teoremei.
Lema 7.2.1 Fie p numar prim impar si a Z, impar, cu p a. Atunci,
_
a
p
_
= (1)
T(a,p)
(7.8)
unde
T(a, p) =
p1
2

j=1
_
ja
p
_
. (7.9)
7.2. LEGEA RECIPROCIT

AT II P

ATRATICE 121
Demonstrat ie. Consideram resturile modulo p ale numerelor a, 2a, . . . ,
p 1
2
a. Notam cu u
1
, u
2
, . . . , u
s
pe cele >
p
2
iar cu v
1
, v
2
, . . . , v
t
pe cele
<
p
2
. Teorema mpart irii cu rest arata ca
ja = p
_
ja
p
_
+r
unde r este restul mpart irii care nu poate decat un u
k
sau un v
l
.
Adunand cele
p 1
2
astfel de ecuat ii, obt inem:
p1
2

j=1
ja =
p1
2

j=1
p
_
ja
p
_
+
s

k=1
u
k
+
t

l=1
v
l
. (7.10)
Din lema 7.1.2, pu
1
, . . . , pu
s
, v
1
, . . . , v
t
sunt exact resturile 1, 2, . . . ,
p 1
2
, eventual n alta ordine.
Calculand suma lor, rezulta
p1
2

k=1
k =
s

j=1
(p u
j
) +
t

j=1
v
j
= ps
s

j=1
u
j
+
t

j=1
v
j
. (7.11)
De aici, scazand din ( 7.10) relat ia ( 7.11), rezulta
p1
2

j=1
ja
p1
2

j=1
j =
p1
2

j=1
p
_
ja
p
_
ps + 2
s

j=1
u
j
(7.12)
(a 1)
p1
2

j=1
j = pT(a, p) ps + 2
s

j=1
u
j
. (7.13)
Cum a si p sunt impare, 0 T(a, p) s (mod 2), de unde
T(a, p) s (mod 2).
Aplicand nca o data lema lui Gauss, obt inem
_
a
p
_
= (1)
s
= (1)
T(a,p)
. (7.14)
122 CAPITOLUL 7. RECIPROCITATE P

ATRATIC

A
Sa calculam simbolul lui Legendre pentru a = 7, p = 11.
5

j=1
_
7j
11
_
=
_
7
11
_
+
_
14
11
_
+
_
21
11
_
+
_
28
11
_
+
_
35
11
_
= 0 +1 +1 +2 +3 = 7.
De aici,
_
7
11
_
= (1)
7
= 1.

In mod analog,
3

j=1
_
11j
7
_
=
_
11
7
_
+
_
22
7
_
+
_
33
7
_
= 1 + 3 + 4 = 8,
de unde,
_
11
7
_
= (1)
8
= 1.
Teorema 7.2.1 (Legea reciprocitat ii patratice) Fie p, q numere
prime impare. Atunci,
_
p
q
_

_
q
p
_
= (1)
p1
2

q1
2
(7.15)
Sa vedem cum am aplica lema anterioara pentru a demonstra teorema
pe cazul numeric tratat anterior. Consideram p = 7 si q = 11.
Formam perechi (x, y) cu 1 x
7 1
2
= 3, 1 y
11 1
2
= 5.
Sunt n total 15 astfel de perechi pentru care nu se verica egalitatea
11x = 7y. Daca egalitatea ar vericata pentru o pereche (x, y), atunci
11 [ 7y, de unde 11 [ y, fals.

Impart im aceste perechi n doua grupe dupa
cum urmeaza:
Prima grupa este formata din perechile (x, y) cu 1 x 3, 1 y 5
si 11x > 7y. Atunci, 1 x 3, 1 y
11x
7
. Pentru o valoare xata a
lui x sunt
_
11x
7
_
valori posibile pentru y.
Astfel, prima grupa este formata din
3

j=1
_
11j
7
_
= 8 perechi care sunt:
(1, 1), (2, 1), (2, 2), (2, 3), (3, 1), (3, 2), (3, 3), (3, 4).
Cea de-a doua grupa cuprinde celelalte perechi, adica:
(x, y) cu 1 x 3, 1 y 5 si 11x < 7y. Atunci, 1 y 5 si
1 x
7y
11
. Pentru o valoare xata a lui y sunt
_
7y
11
_
valori posibile
7.2. LEGEA RECIPROCIT

AT II P

ATRATICE 123
pentru x.
Grupa este formata din
5

j=1
_
7j
11
_
= 7 perechi care sunt:
(1, 2), (1, 3), (1, 4), (1, 5), (2, 4), (2, 5), (3, 5).
Astfel,
11 1
2

7 1
2
= 5 3 = 15 =
3

j=1
_
11j
7
_
+
5

j=1
_
7j
11
_
= 8 + 7.
Rezulta, n nal,
(1)
11 1
2

7 1
2
= (1)
3

j=1

11j
7

(1)
5

j=1

7j
11

=
_
11
7
_

_
7
11
_
.
Sa ne ntoarcem acum la demonstrat ia teoremei.
Demonstrat ie. Formam perechi
(x, y), 1 x
p 1
2
, 1 y
q 1
2
.
Sunt n total
p 1
2

q 1
2
astfel de perechi. Daca qx = py, atunci q [ py,
de unde q [ y, ceea ce este fals. Astfel, pentru ecare pereche (x, y),
qx ,= py.

Impart im aceste perechi n doua grupe ca mai sus.
Astfel, prima grupa este formata din perechile
(x, y), 1 x
p 1
2
, 1 y
q 1
2
, qx > py.
Atunci, perechile cautate sunt exact cele pentru care 1 x
p 1
2
,
1 y
qx
p
. Pentru o valoare xata a lui x sunt
_
qx
p
_
valori posibile
pentru y. Deci, prima grupa este formata din
p1
2

j=1
_
qj
p
_
perechi.
124 CAPITOLUL 7. RECIPROCITATE P

ATRATIC

A
A doua grupa cuprinde perechile pentru care
1 x
p 1
2
, 1 y
q 1
2
, qx < py.
Atunci, 1 y
q 1
2
, 1 x
py
q
. Pentru o valoare xata a lui y
sunt
_
py
q
_
valori posibile pentru x. Deci, aceasta grupa este formata din
q1
2

j=1
_
pj
q
_
perechi.
Numarul total de perechi (x, y) este egal cu:
p 1
2

q 1
2
=
p1
2

j=1
_
qj
p
_
+
q1
2

j=1
_
pj
q
_
.
Folosind notat iile lemei 7.2.1, putem scrie:
p 1
2

q 1
2
= T(q, p) +
T(p, q).
Rezulta,
(1)
T(q,p)+T(p,q)
= (1)
T(q,p)
(1)
T(p,q)
= (1)
p1
2

q1
2
.
Din lema 7.2.1, (1)
T(q,p)
=
_
q
p
_
si (1)
T(p,q)
=
_
p
q
_
. Obt inem astfel
relat ia dorita.
Sa observam ca
p 1
2
este numar par daca p 1 (mod 4) iar, n caz
contrar, este numar impar. Astfel,
(1)
p1
2

q1
2
=
_
1, daca p 1 (mod 4) sau q 1 (mod 4);
1, daca p q 3 (mod 4).
Obt inem:
_
p
q
_
=
_

_
_
q
p
_
, daca p 1 (mod 4) sau q 1 (mod 4);

_
q
p
_
, daca p q 3 (mod 4).
7.3. SIMBOLUL JACOBI 125
Spre exemplu, consideram p = 11, q = 19. Din 11 19 3 (mod 4),
rezulta:
_
11
19
_
=
_
19
11
_
=
_
2
11
_
3
= (1)
3
= 1, pentru ca 11 3 (mod 8).
Folosind teorema 7.2.1, putem calcula acum anumite simboluri
Legendre. Pentru
_
217
1009
_
, din 217 = 31 7, rezulta:
_
217
1009
_
=
_
31
1009
_

_
7
1009
_
1009 1 (mod 4), de unde:
_
31
1009
_
=
_
1009
31
_
=
_
17
31
_
=
_
31
17
_
=
_
14
17
_
=
_
2
17
_

_
7
17
_
.
Din 17 1 (mod 8),
_
2
17
_
= 1.
Obt inem,
_
31
1009
_
=
_
7
17
_
=
_
17
7
_
=
_
3
7
_
=
_
7
3
_
=
_
4
3
_
=

_
2
3
_
2
= 1.
Procedam analog pentru
_
7
1009
_
si obt inem
_
7
1009
_
=
_
1009
7
_
=
_
8
7
_
=
_
2
7
_
3
= 1
3
= 1.
Deci,
_
217
1009
_
= (1) 1 = 1.
7.3 Simbolul Jacobi
Simbolul Jacobi
4
este o generalizare a simbolului Legendre. El este folo-
sitor n evaluarea acestuia si apare n denirea unui tip de numere pseu-
doprime (vezi capitolul 10.6).
Denit ie 7.3.1 Fie n = p
1
1
p
2
2
. . . p

m
m
un numar compus impar, unde
p
i
sunt numere prime distincte,
i
1, pentru ecare 1 i m.
4
Carl Gustav Jacob Jacobi (1804-1851) are contribut ii importante n teoria nu-
merelor, legate de resturi cubice, n studiul funct iilor eliptice cat si al ecuat iilor cu
diferent iale part iale.
126 CAPITOLUL 7. RECIPROCITATE P

ATRATIC

A
Consideram a Z cu (a, n) = 1. Denim simbolul Jacobi
_
a
n
_
prin:
_
a
n
_
=
_
a
p
1
_

_
a
p
2
_

2
. . .
_
a
p
m
_

m
.
Deoarece pentru n numar prim, simbolul coincide cu simbolul
Legendre, se foloseste aceeasi notat ie.
De exemplu,
_
2
1001
_
=
_
2
7
_

_
2
11
_

_
2
13
_
= 1 (1) (1) = 1.
Trebuie sa remarcam faptul ca, pentru n numar compus, valoarea
simbolului Jacobi nu precizeaza daca congruent a x
2
a (mod n) are
solut ii.
Daca congruent a are solut ii, atunci, pentru ecare 1 i m,
congruent a x
2
a (mod p
i
) are solut ii. Astfel,
_
a
p
i
_
= 1, pentru tot i
divizorii primi p
i
ai lui n. Din modul de denire al simbolului Jacobi,
obt inem
_
a
n
_
= 1.
Dar, daca
_
a
n
_
= 1, este posibil ca x
2
a (mod n) sa nu aiba solut ii.
Spre exemplu, congruent a x
2
2 (mod 55) este echivalenta cu sistemul
de congruent e:
_
x
2
2 (mod 5)
x
2
2 (mod 11)
Cele doua congruent e care formeaza sistemul nu au solut ii pentru ca
_
2
5
_
=
_
2
11
_
= 1. Deci, congruent a init iala nu are solut ii, cu toate
ca
_
2
55
_
= (1)(1) = 1.
Teorema 7.3.1 Fie n numar natural impar si a, b Z, cu (a, n) = 1,
(b, n) = 1. Atunci:
1) Daca a b (mod n) atunci,
_
a
n
_
=
_
b
n
_
.
7.3. SIMBOLUL JACOBI 127
2)
_
ab
n
_
=
_
a
n
_

_
b
n
_
.
3)
_
1
n
_
= (1)
n1
2
.
4)
_
2
n
_
= (1)
n
2
1
8
.
Demonstrat ie. 1) Fie n = p
1
1
p
2
2
. . . p
m
m
descompunerea n factori primi
a lui n. Din a b (mod n), rezulta a b (mod p
i
), pentru ecare
1 i m. Astfel,
_
a
p
i
_
=
_
b
p
i
_
, pentru ecare i.
Rezulta
_
a
n
_
=
m

i=1
_
a
p
i
_

i
=
m

i=1
_
b
p
i
_

i
=
_
b
n
_
.
2)
_
ab
n
_
=
m

i=1
_
ab
p
i
_
i
=
m

i=1
_
a
p
i
_
i

i=1
_
b
p
i
_
i
=
_
a
n
_

_
b
n
_
.
3) Din criteriul lui Euler obt inem ca, pentru ecare 1 i m,
_
1
p
i
_
= (1)
p
i
1
2
. (7.16)
Astfel,
_
1
n
_
=
m

i=1
_
1
p
i
_
i
= (1)

1
p
1
1
2
+...+
m
pm1
2
. (7.17)
Din descompunerea lui n, obt inem
n = (1 + (p
1
1))

1
(1 + (p
2
1))

2
. . . (1 + (p
m
1))

m
.
Fiecare p
i
1 ind un numar par, rezulta:
(1 + (p
i
1))

i
1 +
i
(p
i
1) (mod 4),
(1 +
i
(p
i
1)) (1 +
j
(p
j
1)) 1 +
i
(p
i
1) +
j
(p
j
1) (mod 4).
Deci,
n 1 +
1
(p
1
1) +
2
(p
2
1) +. . . +
m
(p
m
1) (mod 4).
128 CAPITOLUL 7. RECIPROCITATE P

ATRATIC

A
Atunci,
n 1
2


1
(p
1
1)
2
+

2
(p
2
1)
2
+. . . +

m
(p
m
1)
2
(mod 2) (7.18)
si astfel,
_
1
n
_
= (1)
n1
2
.
4) Conform lemei lui Gauss,
_
2
p
i
_
= (1)
p
2
i
1
8
, pentru ecare 1 i m.
Atunci,
_
2
n
_
=
m

i=1
_
2
p
i
_
i
= (1)

1
p
2
1
1
8
+...+
m
p
2
m
1
8
. (7.19)
Ca la subpunctul precedent,
n
2
= (1 + (p
2
1
1))

1
(1 + (p
2
2
1))

2
. . . (1 + (p
2
m
1))

m
.
Cum ecare p
2
i
1 0 (mod 8), obt inem
(1 + (p
2
i
1))

i
1 +
i
(p
2
i
1) (mod 64),
de unde:
n
2
1 +
1
(p
2
1
1) +
2
(p
2
2
1) +. . . +
m
(p
2
m
1) (mod 64).
De aici,
n
2
1
8


1
(p
2
1
1)
8
+

2
(p
2
2
1)
8
+. . . +

m
(p
2
m
1)
8
(mod 8). (7.20)
Din relat iile ( 7.19) si ( 7.20), obt inem relat ia ceruta.
Teorema 7.3.2 (Legea de reciprocitate pentru simbolul Jacobi)
Fie m, n doua numere naturale impare, relativ prime. Atunci,
_
n
m
_

_
m
n
_
= (1)
n1
2

m1
2
.
Demonstrat ie. Consideram descompunerile canonice:
n = p

1
1
p

2
2
. . . p

s
s
si m = q

1
1
q

2
2
. . . q

r
r
.
Atunci,
_
n
m
_
=
r

i=1
_
n
q
i
_

i
=
r

i=1
s

j=1
_
p
j
q
i
_

i
(7.21)
7.3. SIMBOLUL JACOBI 129
si
_
m
n
_
=
s

j=1
_
m
p
j
_
j
=
s

j=1
r

i=1
_
q
i
p
j
_
ji
(7.22)
Astfel,
_
n
m
_

_
m
n
_
=
r

i=1
s

j=1
__
p
j
q
i
_

_
q
i
p
j
__
ji
(7.23)
Dar, din teorema 7.2.1,
_
p
j
q
i
_

_
q
i
p
j
_
= (1)

p
j
1
2

(
q
i
1
2
)
. (7.24)
Deci,
_
n
m
_

_
m
n
_
=
r

i=1
s

j=1
(1)
j

p
j
1
2

i(
q
i
1
2
)
=
= (1)
r

i=1
s

j=1

p
j
1
2

i(
q
i
1
2
)
. (7.25)
Din relat ia ( 7.18), obt inem:
s

j=1

j
_
p
j
1
2
_

n 1
2
(mod 2) (7.26)
r

i=1

i
_
q
i
1
2
_

m1
2
(mod 2). (7.27)
Astfel,
r

i=1
s

j=1

j
_
p
j
1
2
_

i
_
q
i
1
2
_
=
s

j=1

j
_
p
j
1
2
_

i=1

i
_
q
i
1
2
_

n 1
2

m1
2
(mod 2). (7.28)

Inlocuind aceasta ultima relat ie n ( 7.25), rezulta:


_
n
m
_

_
m
n
_
= (1)
n1
2

m1
2
.
130 CAPITOLUL 7. RECIPROCITATE P

ATRATIC

A
Stabilim, n nal un algoritm ecient de determinare a simbolurilor
Jacobi.
Fie a, n numere naturale, relativ prime. Presupunem a > n. Notam
r
0
= a, r
1
= n. Aplicam algoritmul lui Euclid, punand n evident a
puterea maxima a lui 2 din ecare rest. Obt inem astfel,
r
0
= r
1
q
2
+ 2
s
1
r
2
(7.29)
r
1
= r
2
q
3
+ 2
s
2
r
3
(7.30)
r
2
= r
3
q
4
+ 2
s
3
r
4
(7.31)
(7.32)
r
n3
= r
n2
q
n1
+ 2
s
n2
r
n1
(7.33)
r
n2
= r
n1
q
n
+ 2
s
n1
1 (7.34)
unde pentru 1 j n 1, tot i s
j
N, r
j
impari si r
j
< r
j1
.
De exemplu, daca alegem a = 3027, n = 407, obt inem relat iile:
3027 = 407 7 + 2 89
407 = 89 4 + 2
0
51
89 = 51 1 + 2 19
51 = 19 2 + 2
0
13
19 = 13 1 + 2 3
13 = 3 4 + 2
0
1.
Teorema 7.3.3 Fie a > n numere naturale relativ prime. Atunci, sim-
bolul Jacobi
_
a
n
_
este egal cu:
(1)
s1
r
2
1
1
8
+...+sn1
r
2
n1
1
8
+
r
1
1
2

r
2
1
2
+...+
r
n2
1
2

r
n1
1
2
.
Demonstrat ie. Folosind rezultatele teoremei 7.3.1, obt inem
_
a
n
_
=
_
r
0
r
1
_
=
_
2
s
1
r
2
r
1
_
=
_
2
r
1
_
s
1

_
r
2
r
1
_
= (1)
s
1
r
2
1
1
8

_
r
2
r
1
_
.
Din teorema 7.3.2,
_
r
2
r
1
_
= (1)
r
1
1
2

r
2
1
2

_
r
1
r
2
_
.
7.3. SIMBOLUL JACOBI 131
Deci,
_
a
n
_
= (1)
s1
r
2
1
1
8
+
r
1
1
2

r
2
1
2

_
r
1
r
2
_
. (7.35)

In mod analog, folosind celelalte relat ii din algoritmul lui Euclid pen-
tru 2 j n 2, rezulta:
_
r
j1
r
j
_
= (1)
sj
r
2
j
1
8
+
r
j
1
2

r
j+1
1
2

_
r
j
r
j+1
_
. (7.36)

Inlocuind relat iile ( 7.36) n ( 7.35) vom obt ine rezultatul dorit.
Pentru exemplul anterior, vom obt ine exponentul lui 1 egal cu:
1
407
2
1
8
+ 0
89
2
1
8
+ 1
51
2
1
8
+ 0
19
2
1
8
+ 1
13
2
1
8
+
0
3
2
1
8
+
407 1
2

89 1
2
+
89 1
2

51 1
2
+
51 1
2

19 1
2
+
19 1
2

13 1
2
+
13 1
2

3 1
2
= 31369.
Atunci,
_
3027
407
_
= (1)
31369
= 1.
Algoritm 7.3.1 (Simbolul Jacobi)
INPUT: numerele naturale a, n.
OUTPUT:
_
a
n
_
1. u a mod n, v n, k 1.
2. Cat timp u > 1 calculeaza:
2.1. Daca u este par, atunci u u/2, k k (1)
(v
2
1)/8
2.1.1. Daca u = v, atunci returneaza (a, n) ,= 1 si
se opreste.
2.2. Daca u > v atunci u (u v)/2, k k (1)
(v
2
1)/8
2.2.1. u (v u)/2, v u,
k k (1)
(u1)(v1)/4
,
k k (1)
(v
2
1)/8
3. Returneaza k.
132 CAPITOLUL 7. RECIPROCITATE P

ATRATIC

A
Algoritmul poate propus si sub forma:
Algoritm 7.3.2
J(a, n)
INPUT: numerele naturale a < n, cu n 3 impar.
OUTPUT:
_
a
n
_
1. Daca a = 0, atunci returneaza 0 si se opreste.
2.Daca a = 1, returneaza 1 si se opreste.
3. Scrie a = 2
e
a
1
, unde a
1
este impar.
4. Daca e este par, pune s 1. Altfel, daca n 1 (mod 8)
pune s 1 si daca n 3 (mod 8) pune s 1.
5. Daca n 3 (mod 4) si a
1
3 (mod 4), pune s s.
6. Pune n
1
n mod a
1
7. Daca a
1
= 1, atunci returneaza s si se opreste;
altfel, returneaza s J(n
1
, a
1
)
Exercit ii propuse
1. Calculat i urmatoarele simboluri Legendre:
_
11
37
_
,
_
97
101
_
,
_
31
167
_
,
_
1801
8191
_
si simbolurile Jacobi:
_
5
21
_
,
_
27
101
_
,
_
111
1001
_
.
2. Aratat i ca:
i) 3 este rest patratic modulo p, cu p numar prim impar, daca si
numai daca p 1 (mod 3).
ii) 3 este non-rest patratic modulo orice numar prim Mersenne > 3.
3. Aratat i ca 5 este rest patratic modulo p, un numar prim impar,
daca si numai daca p 1 (mod 20) sau p 9 (mod 20).
4. Stabilit i pentru ce valori ale numarului prim impar p, 5 nu este
rest patratic modulo p.
5. Calculat i
_
5
F
n
_
si
_
7
F
n
_
, unde F
n
este un numar prim Fermat.
CAPITOLUL 8
Criptograe cu cheie
secreta
Criptograa
1
este studiul principiilor si tehnicilor prin care informat ia
poate ascunsa n texte cifrate si mai tarziu este dezvaluita de persoane
avizate folosind chei secrete (pentru persoane neautorizate este imposibil
sau computat ional imposibil).
Criptanaliza
2
studiaza redobandirea informat iei din textul cifrat, fara
a cunoaste cheia.
Criptologia
3
este stiint a ce nglobeaza cele doua domenii mai sus
denite.
Istoria criptograei ncepe nca de acum 4000 de ani (la egipteni). De
cele mai multe ori, rezultatele acesteia erau folosite n domeniul militar,
diplomatic si guvernamental. Criptograa a fost folosita ca un instru-
ment important n protejarea secretelor si strategiilor nat ionale.
Odata cu dezvoltarea n anii 60 a sistemelor de comunicat ie si a com-
puterelor, apare cerint a de a oferi sectorului privat mijloace de protejare
a informat iei n forma digitala si de asigurare a serviciilor de securi-
tate. Principiile criptograei, conceputa init ial pentru a secretiza mesaje
scrise, se aplica la fel de bine pentru securizarea uxului de date ntre
1
Provine din cuvintele grecesti kryptos-a ascunde si graphein-a scrie.
2
Provine din cuvintele grecesti kryptos-a ascunde si analyein-a dezlega.
3
Provine din cuvintele grecesti krypos-a ascunde si logos-cuvant.
133
134 CAPITOLUL 8. CRIPTOGRAFIE CU CHEIE SECRET

A
computere, a comunicat iilor de voce digitale cat si la cifrarea de facsimile
si a semnalelor de televiziune. De exemplu, majoritatea satelit ilor ci-
freaza n mod curent uxul de date catre si de la stat iile terestre pentru
a furniza securitate si condent ialitate abonat ilor.
Cateva dintre principalele scopuri urmarite n criptograe sunt:
1. Condent ialitatea, care presupune pastrarea secreta a informat iei
fat a de tot i cei care nu sunt autorizat i sa o cunoasca.
2. Integritatea datelor, realizeaza protejarea datelor la alterare sau
manipulare de catre persoane neautorizate.
Prin manipularea datelor nt elegem procese cum ar insert ii, ntar-
zieri sau substituiri.
3. Autenticarea, care presupune posibilitatea de identicare a infor-
mat iei si a entitat ii (o persoana, un terminal de computer, o carte
de credit).
4. Non-repudierea, care previne negarea unor angajamente sau act iuni
anterioare.
Criptograa trebuie sa acopere, n mod corespunzator, aceste patru
direct ii, atat n teorie, cat si n practica. Ea trebuie sa previna si sa
detecteze furtul si alte act iuni ilegale, ind doar una dintre tehnicile de
asigurare a securitat ii informat iei.
Pentru nceput, denim urmatoarele not iuni:
1. Alfabet de denit ie / care este o mult ime nita. De exemplu,
/ = 0, 1 se numeste alfabet binar. Trebuie sa remarcam ca orice
alfabet, spre exemplu alfabetul englezesc, poate scris n funct ie
de alfabetul binar. Literele vor deveni siruri de cate cinci cifre
binare.
2. Spat iul de mesaje / este format din siruri de simboluri ale unui
alfabet de denit ie. Un element al lui / se numeste text de baza.
De exemplu, /poate format din siruri binare, un text n engleza
sau n alta limba, codul unui computer, etc.
3. Spat iul de text cifrat ( este alcatuit din siruri de simboluri ale unui
alfabet de denit ie, care poate diferit de /. Un element al lui (
se numeste text cifrat.
135
4. Spat iul cheilor / este o mult ime de siruri (chei ) peste un alfabet.
Pentru ecare e /, aplicat ia bijectiva E
e
: /(, determinata
de e, se numeste funct ie sau transformare de criptare.

In mod analog, funct ia bijectiva D


d
: ( /, determinata de
d /, poarta numele de funct ie sau transformare de decriptare.
5. Procesul (algoritmul) de criptare E este procesul de aplicare a
transformarii E
e
lui /. Deci, E
e
(/) = (.
6. Procesul (algoritmul) de decriptare D este procesul de aplicare
a transformarii D
d
lui (. Astfel, D
d
(() = /. Subliniem fap-
tul ca algoritmii D si E trebuie sa aiba proprietatea D
d
(() =
D
d
(E
e
(/)) = /.
7. O schema de criptare, sau un cifru, este formata dintr-o mult ime
de transformari de criptare E
e
si din mult imea corespunzatoare
D
d
, de transformari de decriptare cu proprietatea ca, pentru
ecare e /, exista un unic d / astfel ncat D
d
= E
1
e
. Cheile
e si d cu aceasta proprietate se numesc pereche de chei si de multe
ori se noteaza (e, d). Pentru a construi o schema de criptare avem
nevoie de toate not iunile denite anterior.
Criptosistemele pot clasicate n:
1. Sisteme criptograce cu cheie secreta, numite si criptosisteme si-
metrice.
2. Sisteme criptograce cu cheie publica, numite si criptosisteme asi-
metrice.
Criptograa cu cheie secreta se ocupa de primul tip de criptosisteme.
Un sistem de criptare se numeste simetric
4
daca, din punct de vedere
computat ional, pentru ecare pereche de chei (e, d) se poate determina
usor d cunoscand doar pe e si invers.
De cele mai multe ori, ntr-un sistem cu cheie secreta, cheile e si
d coincid. Cheia comuna k, numita cheie secreta, este folosita atat la
criptare cat si la decriptare. De aceea aceste sisteme poarta numele de
sisteme simetrice.
4
Alt i termeni folosit i n literatura de specialitate pentru aceste sisteme sunt:
criptare tradit ional a, cu cheie unica, cu cheie secreta.
136 CAPITOLUL 8. CRIPTOGRAFIE CU CHEIE SECRET

A
Vom studia cum se pot transmite mesaje ntre doua persoane: ex-
peditorul A, de cele mai multe ori numit Alice si destinatarul B, numit
uzual Bob.
Astfel, Alice aplica funct ia bijectiva E
k
pentru a realiza un text cifrat
prin C = E
k
(M), pentru ecare M /, pe care l trimite lui Bob
printr-un canal nesigur (persoane neautorizate pot citi, schimba, sterge
informat ia). Cheia k trebuie si ea trimisa lui Bob, dar printr-un canal
sigur. Bob decripteaza textul cifrat prin transformarea inversa, D
k
, si
obt ine D
k
(C) = D
k
(E
k
(M)) = M, pentru C (, adica reconstituie
textul init ial.
8.1 Cifrari ux (binar)

In cifrarile ux, unitat ile de mesaj sunt cifre binare si cheia este produsa
de obicei de un generator aleator binar. Textul de baza este criptat bit
cu bit. Cheia este ncarcata ntr-un generator aleator de bit i pentru a
crea un sir lung de semnale binare. Cheia sir k este aplicata apoi textului
de baza M, (de obicei se face adunare modulo 2) pentru a obt ine textul
cifrat C. De exemplu:
M 0 1 1 0 0 0 1 1 1 1 1 1 1 . . .
k 1 0 0 1 1 0 0 1 0 0 0 1 0 . . .
C 1 1 1 1 1 0 1 0 1 1 1 0 1 . . .
Pentru decriptare, se foloseste aceeasi cheie.
8.2 Criptosisteme caracter
Primele sisteme de criptare erau bazate pe transformarea ecarei litere
din textul init ial ntr-o litera diferita pentru a obt ine textul cifrat. Astfel
de cifrari, n care unitatea de mesaj este formata dintr-o singura litera,
poarta numele de sisteme de criptare caracter, substitut ie sau mono-
grace.
Vom considera n toate exemplele ca / este alfabetul limbii engleze.
Cum acesta este format din 26 de litere, vom atribui ecareia un echiva-
8.2. CRIPTOSISTEME CARACTER 137
lent numeric de la 0 la 25 dupa cum urmeaza:
A B C D E F G H I J K L M

0 1 2 3 4 5 6 7 8 9 10 11 12
N O P Q R S T U V W X Y Z

13 14 15 16 17 18 19 20 21 22 23 24 25
Din considerente istorice, alegem ca prim sistem caracter, un sistem
de criptare care se presupune ca a fost inventat si folosit de Iulius Cezar.
Aici, cheia este k = 3 si transformarea de criptare este
C = E
3
(M) M + 3 (mod 26), 0 M 25.
Cu alte cuvinte, ecare litera este deplasata la dreapta cu trei pozit ii fat a
de pozit ia init iala din alfabet. De exemplu, A devine D, X se transforma
n A, Y n B, Z n C.
Presupunem ca textul init ial este:
THIS MESSAGE IS TOP SECRET
Pentru nceput, el este mpart it n blocuri de 5 litere pentru a preveni
recunoasterea unor cuvinte particulare
THISM ESSAG EISTO PSECR ET
si ecare litera este nlocuita cu echivalentul sau numeric
19 7 8 18 12 4 18 18 0 6 4 8 18 19 14 15 18 4 2 17 4 19.
Fiecare echivalent numeric este transformat dupa regula precizata:
22 10 11 21 15 7 21 21 3 9 7 11 21 22 17 18 21 7 5 20 7 22
si apoi se nlocuieste cu litera corespunzatoare. Textul cifrat rezul-
tat este:
WKLV P HV V DJ HLV WR SV HFU HW.
138 CAPITOLUL 8. CRIPTOGRAFIE CU CHEIE SECRET

A
Pentru decifrare, se foloseste transformarea
M = D
3
(C) C 3 (mod 26), 0 C 25.
Acest cifru face parte din categoria criptosistemelor de deplasare.

In
acest caz, cheia este 0 k 25, funct ia de criptare este
E
k
(M) M +k (mod 26), 0 M 25,
iar transformarea de decriptare este data de
D
k
(C) C k (mod 26), 0 C 25.
Daca vom generaliza, obt inem criptosistemele ane unde cheia este
perechea (a, b) cu 0 a, b 25 iar a este relativ prim cu 26. Observam
ca putem construi 12 26 = 312 astfel de chei. Transformarea de criptare
este data de funct ia
E
(a,b)
(M) aM +b (mod 26), 0 M 25
iar cea de decriptare este
D
(a,b)
(C) a(C b) (mod 26), 0 C 25.
De exemplu, daca aplicam o transformare ana textului SECURITY
folosind cheia (7, 10) obt inem: GMY UZONW dupa cum se remarca mai
jos:
S E C U R I T Y
18 4 2 20 17 8 19 24
6 12 24 20 25 14 13 22
G M Y U Z O N W
Pentru criptanaliza sistemelor caracter trebuie facuta o analiza a
frecvent ei de aparit ie a literelor n textul cifrat. Aceasta este com-
parata cu frecvent a literelor dintr-un text obisnuit.

In limba engleza,
cele mai frecvente litere dintr-un text sunt E, T, R, N, I, O, A (pentru
limba romana, ele ar I, E, A, B). Astfel, punand n corespondent a cea
8.3. CRIPTOSISTEME BLOC 139
mai des ntalnita litera din textul cifrat (de preferint a mai lung, pen-
tru a realiza o cat mai corecta corespondent a ntre literele cu frecvent a
maxima) cu litera care apare de cele mai multe ori ntr-un text arbitrar,
se pot dobandi informat ii legate de cheia de criptare.
De exemplu, consideram doua situat ii:
1. Presupunem ca un text, scris n limba engleza, a fost criptat
printr-un sistem de deplasare. Observam ca litera care apare cel mai
des n textul cifrat este P. Atunci, putem presupune ca ea corespunde
literei E, litera cu cea mai mare frecvent a ntr-un text scris n limba
engleza. T inand cont de echivalent ii numerici corespunzatori acestor
litere, obt inem relat ia 15 4 + k (mod 26), de unde k = 11 este o
posibila cheie de cifrare.
Cum exista doar 26 de transformari de deplasare, inclusiv cea iden-
tica, determinarea cheii nu presupune un volum foarte mare de munca.

In concluzie, acest sistem este usor de criptanalizat.


2. Presupunem acum ca un text, scris n limba engleza, a fost crip-
tat printr-o transformare ana. Analizand frecvent a literelor din textul
cifrat, vedem ca cele mai des folosite litere sunt Lsi U. Atunci, putem pre-
supune ca L este n corespondent a cu E iar U corespunde lui T. Rezulta
relat iile 11 4a + b (mod 26) si 20 19a + b (mod 26). Rezolvand sis-
temul de congruent e, o posibila cheie este (11, 19). Deci, transformarea
de criptare ar E
(11,19)
(M) 11M + 19 (mod 26). Pentru decriptare,
se foloseste D
(11,19)
(C) 19(C19) 19C+3 (mod 26) unde am t inut
cont ca a 19 (mod 26).
8.3 Criptosisteme bloc
Pentru a evita faptul ca primele criptosisteme prezentate sunt mult prea
vulnerabile, s-a preferat mpart irea textului de baza n blocuri de o anu-
mita lungime si transformarea acestora n blocuri cu aceeasi lungime.
Aceste sisteme se numesc sisteme bloc
5
sau poligrace.
Studiem mai ntai cazul cifrului diagrac pe un exemplu concret.
Aici blocurile sunt formate din doua cifre. Consideram textul init ial
THE GOLD IS BURIED IN ORONO.
5
Au fost prezentate de Hill, n anul 1930.
140 CAPITOLUL 8. CRIPTOGRAFIE CU CHEIE SECRET

A
Mai nt ai, textul init ial se mparte n blocuri de 2 litere. Daca
numarul de litere este impar, se completeaza ultimul bloc cu o litera,
de exemplu, X. Obt inem pentru exemplul nostru,
TH EG OL DI SB UR IE DI NO RO NO.
Fiecare litera din bloc este nlocuita cu echivalentul sau numeric:
19 7 4 6 14 11 3 8 18 1 20 17 8 4 3 8 13 14 17 14 13 14.
Fiecare bloc de numere M
1
M
2
din textul init ial estenlocuit cu blocul
C
1
C
2
dupa transformarea:
C
1
5M
1
+ 17M
2
(mod 26)
C
2
4M
1
+ 15M
2
(mod 26).
Acest criptosistem este mult mai usor de descris matriceal, si anume:
_
C
1
C
2
_

_
5 17
4 15
_

_
M
1
M
2
_
(mod 26).
Se observa ca matricea care intervine are invers modulo 26, matricea
inversa intervenind n procesul de decriptare.
Trecem acum la cazul general, n care blocurile n care este mpart it
textul init ial cont in n litere. Procesul de cifrare se realizeaza la fel cu
cazul anterior, numai ca, aici, unitatea este un bloc M =
_
_
_
M
1
.
.
.
M
n
_
_
_ cu
0 M
i
25, pentru 0 i n.

In acest caz cheia este A M
n
(Z), cu
(det A, 26) = 1, deci matricea A are invers modulo 26. Transformarea de
criptare este E
A
(M) AM (mod 26) iar pentru decriptare se foloseste
funct ia D
A
(C) AC (mod 26), C =
_
_
_
C
1
.
.
.
C
n
_
_
_, 0 C
i
25.
De exemplu, sa vedem cum criptam mesajul
STOP PAY MENT
8.3. CRIPTOSISTEME BLOC 141
folosind un astfel de algoritm.
Alegem n = 3 iar cheia A =
_
_
11 2 19
5 23 25
20 7 1
_
_
. A este corect aleasa
pentru ca, din det A 5 (mod 26), matricea este inversabila modulo 26.
Textul init ial este mpart it n blocuri de trei litere, adaugand pentru
blocul nal un X pentru ca si acest bloc sa aiba numarul corespunzator
de litere:
STO PPA Y ME NTX.

Inlocuim literele cu echivalent ii lor numerici


18 19 14 15 15 0 24 12 4 13 19 23
si aplicam ecarei unitat i de mesaj transformarea de criptare. De exem-
plu, pentru primul bloc, calculam
_
_
C
1
C
2
C
3
_
_

_
_
11 2 19
5 23 25
20 7 1
_
_

_
_
18
19
14
_
_

_
_
8
19
13
_
_
(mod 26).
Pentru obt inerea textului cifrat, n sirul rezultat
8 19 13 13 4 15 0 2 22 20 11 0
nlocuim echivalent ii numerici cu litere corespunzatoare:
ITN NEP ACW ULA.
La decriptare, vom folosi matricea inversa modulo 26 a lui A,
A =
_
_
6 5 11
5 1 10
7 3 7
_
_
.
Acest tip de criptosistem este si el vulnerabil la frecvent a blocurilor
de litere. De exemplu, n limba engleza, cele mai frecvente perechi de
litere dintr-un text sunt TH si HE iar THE, AND si THA sunt cele
mai des ntalnite blocuri de trei litere. Facand analiza corespunzatoare,
putem gasi cheia.
142 CAPITOLUL 8. CRIPTOGRAFIE CU CHEIE SECRET

A
De exemplu, daca ntr-un text cifrat, scris n limba engleza cele mai
frecvente grupe de doua litere sunt KX si V Z, presupunand ca algorit-
mul folosit este de tipul celui prezentat, putem pune n corespondent a
KX cu TH iar V Z cu HE.

Inlocuind literele cu echivalent ii lor nu-
merici, din relat ia
_
10 21
23 25
_
A
_
19 7
7 4
_
(mod 26) rezulta
A =
_
10 21
23 25
_

_
4 19
19 19
_

_
23 17
21 2
_
(mod 26) ca posibila
cheie.
8.4 Criptare exponent iala
Acest criptosistem a fost inventat de Pohlig si Helmann n anul 1976.
Se alege p un numar prim, si un numar natural e, prim cu p1, care
este cheia de criptare. Fiecare unitate de mesaj, n cazul nostru o litera,
se nlocuieste cu echivalent i numerici alcatuit i tot i din doua cifre. Astfel,
de exemplu echivalentul lui A este 00, C va avea echivalentul numeric
egal cu 02, etc.
Mesajul se mparte n blocuri de 2m cifre zecimale unde 2m este
cel mai mare numar par cu proprietatea ca toate numerele de 2m cifre
alcatuite din echivalent ii numerici ai celor m litere sunt mai mici decat
p. Astfel, daca p = 2633, din 2525 < p < 252525 rezulta m = 2.
Fiecarui bloc M cu 2m cifre zecimale i se aplica transformarea de
criptare C = E
e
(M) M
e
(mod p), deci ecare bloc din textul cifrat
va un numar mai mic decat p. De exemplu, consideram mesajul
THIS IS AN EXAMPLE OF AN EXPONENTIATION CIPHER
pe care vrem sa-l criptam folosind un algoritm exponent ial.
Alegem p = 2633 si e = 29. Transformam literele n echivalent i numerici
si formam blocuri de cate 4 cifre:
1907 0818 0818 0013 0423 0012 1511 0414 0500 1304
2315 1413 0413 1908 0019 0814 1302 0815 0704 1723

In acest caz, am adaugat la nalul ultimului bloc un X pentru a avea


aceeasi dimensiune.
8.4. CRIPTARE EXPONENT IAL

A 143
Aplicam transformarea C M
29
(mod 2633) pentru ecare bloc n
parte, de exemplu C 1907
29
2199 (mod 2633), si obt inem:
2199 1745 1745 1206 2437 2425 1729 1619 0935 0960
1072 1541 1701 1553 0735 2064 1351 1704 1841 1459
care constituie mesajul criptat. Remarcam ca, fat a de celelalte criptosis-
teme prezentate, n forma criptata mesajul nu mai poate transformat
n litere.
Pentru decriptare, se foloseste cheia d, unde d este inversul modulo
p 1 al cheii e. Din e d 1 (mod p 1), rezulta e d = k(p 1) + 1,
cu k, numar natural. Pentru a verica daca cheia d este cea corecta,
sa aratam ca transformarea D
d
este inversa transformarii E
e
. Pentru un
bloc C, arbitrar ales, folosind mica teorema a lui Fermat, obt inem:
D
d
(C) C
d
D
d
(E
e
(M)) M
ed
M
k(p1)+1
M
_
M
p1
_
k

M (mod p).
Pentru exemplul anterior, obt inem d 363 2269 (mod 2632)
rezolvand ecuat ia 29d 2632k = 1 cu ajutorul algoritmului extins al
lui Euclid. Pentru a decripta mesajul secret, vom calcula pentru ecare
bloc 0 C 2633, M C
2269
(mod 2633) si, apoi, ecare echivalent
numeric de doua cifre va nlocuit cu litera corespunzatoare, regasind
mesajul init ial.
Procesul de criptare si cel de decriptare pentru criptosistemul de
exponent iere modulara se face rapid, folosind algoritmul de ridicare
repetata la patrat si reducere modulo p, respectiv algoritmul lui Euclid
extins.

In general, criptanaliza nu mai poate facuta rapid. Presupunem


ca se stie numarul prim p folosit si s-a stabilit ca blocul C
0
corespunde
blocului M
0
, adica C
0
M
e
0
(mod p). Atunci, avem de rezolvat aceasta
congruent a pentru a aa cheia e (conform teoremei 6.3.1, congruent a are
solut ie unica). e este atunci logaritmul lui C
0
n baza M
0
modulo p. Vom
discuta despre algoritmii folosit i pentru calculul logaritmului discret n
capitolul 12. Oricum, acesti algoritmi, pentru p convenabil ales, sunt
foarte lent i. De obicei, se aleg numere prime p cu proprietatea ca p 1
nu are numai factori primi mici: de exemplu, p = 2q + 1, numar prim
unde q este si el un numar prim mare.
144 CAPITOLUL 8. CRIPTOGRAFIE CU CHEIE SECRET

A
Criptosistemele exponent iale pot utilizate si pentru a stabili chei
comune, chei ce pot folosite de doua sau mai multe persoane. Pentru
aceasta, se alege p, un numar prim mare si un ntreg a cu (a, p) = 1.
Consideram cazul a doua persoane.
Fiecare alege o cheie e
i
, cu (e
i
, p1) = 1, i 1, 2. Pentru a determina
cheia comuna, Alice trimite lui Bob x a
e
1
(mod p), 1 x p 1.
Bob gaseste cheia comuna k calculand k x
e
2
a
e
1
e
2
(mod p), k < p.
Analog, Bob trimite y a
e2
(mod p), y < p lui Alice care aa cheia
comuna prin k y
e1
a
e1e2
(mod p).
8.5 DES
Fara a intra n amanunte, prezentam cateva informat ii generale despre
Data Encryption Standard (DES). El este cel mai raspandit sistem crip-
tograc cu cheie secreta folosit n prezent, atat de guverne cat si de com-
panii particulare. DES a fost proiectat de IBM si aprobat n anul 1977
de U.S. National Bureau of Standards (NBS) care acum se numeste U.S.
National Institute of Standards and Technology (NIST). Acest standard
(algoritm) a fost publicat prima data n anul 1977 (FIPS 46- Federal
Information Proccesing Standard 46) si este revazut la ecare 5 ani.
Standardul este public si toate caracteristicile sale sunt xate. Al-
goritmul foloseste transformari de transpozit ie, substitut ie si operat ii
neliniare. Ele se aplica n 16 iterat ii ecarui bloc al unui mesaj. Mesajul
se mparte n blocuri de 64 bit i. Cheia secreta folosita este formata din
56 bit i alesi dintr-o cheie cu 64 bit i. Fiecare unitate de mesaj M de 64
bit i este transformata ntr-o unitate de aceeasi dimensiune C a textului
cifrat, dupa cum urmeaza:
Se aplica la nceput o permutare de bit i, M devenind M

. Aceasta
permutare nu are o semnicat ie criptograca aparenta.
Apoi, DES mparte M

n jumatate obt inand L


0
, (jumatatea din
stanga) si R
0
, cealalta jumatate. Fiecare au deci, 32 de bit i.

In a treia etapa, DES executa operat iile urmatoare de 16 ori, pentru


i 1, 2, . . . , 16:
_
L
i
= R
i1
,
R
i
= L
i1
f(R
i1
, k
i
),
8.5. DES 145
unde este operatorul sau exhaustiv, iar f este o funct ie care transforma
o jumatate dreapta de 32 bit i cu ajutorul unei chei k
i
, de ecare data
diferita, pentru a rezulta tot un bloc de 32 bit i.

In nal, textul pre-cifrat C

= (R
16
, L
16
) este permutat cu inversa
permut arii init iale pentru a obt ine textul cifrat C.
Pentru decriptare, algoritmul este parcurs n sens invers.
Toate aceste vaste act iuni binare pot ncorporate ntr-un singur mi-
crocip construit special n acest scop. Astfel, DES se poate implementa
ntr-un mod foarte ecient.
Deoarece s-a aratat ca o criptanaliza a acestui sistem poate reali-
zata relativ usor, se prefera sistemul Triple DES (TDES) care presupune
criptare multipla. Astfel, mesajului i se aplica de trei ori cate un DES
diferit. Daca E
k
, D
k
reprezinta transformarile de criptare si decriptare
pentru un DES cu cheia k, pentru criptarea mesajului M cu ajutorul
lui TDES, transformarea este data de C = E
k
3
(D
k
2
(E
k
1
(M))). Pentru
decriptare, aplicam M = D
k1
(E
k2
(D
k3
(C))).
Pentru mai multe informat ii, cei interesat i pot consulta [25].
Exercit ii propuse
Consideram ca, pentru toate exercit iile urmatoare, alfabetul este cel
al limbii engleze, format din 26 de litere.
1. Decriptat i textul cifrat RTOLK TOIK, stiind ca a fost criptat
folosind transformarea ana C 3M + 24 (mod 26).
2. Daca cea mai des folosita litera dintr-un text lung cifrat este Q si
presupunem ca pentru criptarea mesajului init ial s-a folosit o transfor-
mare de deplasare, aat i valoarea plauzibila a cheii de criptare.
3. Folosind o transformare ana si cheia de criptare (a, b) = (13, 9),
criptat i textul HELP ME.
4. Presupunem ca studiem un text lung cifrat, criptat cu ajutorul
unei transformari ane. Daca literele Y si V, n aceasta ordine, prezinta
cea mai mare frecvent a n text, gasit i o posibila valoare a cheii de
criptare.
5. Presupunem ca un text a fost criptat folosind un cifru diagrac.
Perechile de litere care apar cel mai des n textul cifrat sunt KH si XW.
Stabilit i o posibila matrice de criptare, folosita n aceasta situat ie.
146 CAPITOLUL 8. CRIPTOGRAFIE CU CHEIE SECRET

A
6. Determinat i cifrul produs, obt inut prin folosirea transformarii C
17M+3 (mod 26) urmata apoi de transformarea C 5M+13 (mod 26).
7. Cate perechi de litere raman neschimbate daca criptarea mesajului
se face folosind transformarea:
_
C
1
7M
1
+ 17M
2
(mod 26)
C
2
M
1
+ 6M
2
(mod 26) ?
8. Presupunem ca realizam produsul unui cifru de tip Hill cu blocuri
de lungime n cu un cifru de acelasi tip, dar pentru blocuri de lungime
m. Aratat i ca cifrul produs este tot un cifru Hill cu blocuri de lungime
[m, n].
9. Folosind o criptare exponent iala cu p = 101, e = 3 criptat i mesajul
WE ARE THE CHAMPIONS.
10. Textul 1213 0902 0539 1208 1234 1103 1374 este obt inut printr-o
criptare exponent iala unde p = 31 si e = 11. Determinat i textul init ial.
11. Mesajul 04 19 19 11 04 24 09 15 15 este obt inut printr-o criptare
exponent iala. Se presupune ca se cunoaste p = 29 si faptul ca blocul
24 corespunde literei U din mesajul de baza. Stabilit i care este mesajul
init ial.
CAPITOLUL 9
Criptograe cu cheie
publica

In criptarea tradit ionala, cheile de criptare si decriptare trebuie pastrate


secrete. Cum n trecut criptograa era folosita cel mai des n scopuri
militare sau diplomatice, exista de ecare data un grup restrans, bine
denit, de utilizatori care puteau usor mpart i si distribui periodic cheile.
Generarea, transmiterea si stocarea acestor chei se numeste managemen-
tul cheilor. Criptarea cu cheie secreta are deseori probleme n a oferi o
gestionare securizata de chei, mai ales pentru sisteme deschise, cu un
mare numar de utilizatori.

In prezent, aplicat iile criptograei s-au extins si includ multe alte


domenii n care sistemele de comunicat ii joaca un rol esent ial (colectarea
si stocarea de informat ii condent iale, tranzact ii nanciare electronice).
De multe ori exista o ret ea mare de utilizatori n care un grup restrans
trebuie sa pastreze secretul comunicat iei atat fat a de ceilalt i din ret ea,
cat si fat a de persoane din afara. La fel, este posibil ca n urma unei
comunicari avute, unul dintre parteneri trebuie sa transmita o parte a
informat iei secrete unei tert e persoane.

In loc sa rezolve problema managementului de chei, Whiteld Die


si Martin Hellman au introdus conceptul de criptograe cu cheie publica
n anul 1976 n lucrarea New Directions in Cryptography. Astfel, ei
furnizeaza o metoda noua, ingenioasa, pentru schimbul de chei la care
147
148 CAPITOLUL 9. CRIPTOGRAFIE CU CHEIE PUBLIC

A
securitatea se bazeaza pe imposibilitatea de a rezolva problema loga-
ritmilor discret i. Chiar daca cei doi nu au realizat la acel moment, n
mod practic, un criptosistem cu cheie publica, ideea a generat un interes
deosebit si o activitate intensa n domeniu.

In anul 1977, Rivest, Shamir
si Adleman au descoperit prima schema practica de criptare cu cheie
publica si de semnatura, RSA, bazata tot pe o problema dicila din
punct de vedere computat ional, problema factorizarii numerelor mari.
Cu toate ca anii 80 au adus noi metode de factorizare, acestea nu au
slabit securitatea criptosistemului RSA. O alta clasa de scheme practice
cu cheie publica, bazata pe problema logaritmului discret, este gasita de
ElGamal n anul 1985.
Criptosistemele cu cheie publica au doua utilizari principale: criptarea
si autenticarea (semnatura digitala). Fiecare persoana primeste o pere-
che de chei formata dintr-o cheie publica care este facuta cunoscuta si
o cheie privata care este pastrata secreta. Astfel, necesitatea mpart irii
informat iei secrete de catre doua persoane care comunica este eliminata.
Toate comunicat iile implica doar cheile publice; nici o cheie privata nu se
transmite sau se mparte cu cineva. Deci, nu mai este nevoie sa folosim
un canal sigur de comunicat ie. Singura cerint a este ca aceste chei publice
sa e asociate cu utilizatorii lor ntr-un mod autenticat (de ncredere).
Oricine poate trimite un mesaj condent ial, dar mesajul poate decrip-
tat cu o cheie privata, care este n posesia unica a destinatarului dorit.
Astfel, cu ajutorul criptarii cu cheie publica, este posibil sa se realizeze
o comunicat ie secreta ntre doua persoane fara ca acestea sa aiba un
contact init ial, fara sa stabileasca daca au ncredere unul n celalalt.

In criptosistemele cu cheie publica, cheia privata este mereu legata


matematic de cheia publica. De aceea, este ntotdeauna posibil sa ataci
un sistem cu cheie publica dobandind cheia privata din cheia publica.

In mod natural, pentru a putea sa aparam sistemul, trebuie sa facem


ca problema obt inerii cheii private sa e cat mai dicila posibil. Astfel,
criptosistemele cu cheie publica se bazeaza pe probleme care, din anumite
puncte de vedere sunt greu de rezolvat. Dicultatea se refera mai mult la
cerint ele computat ionale necesare gasirii unei solut ii, decat la conceperea
problemei. Aceste probleme se numesc probleme dicile.
Procesul de criptare se realizeaza sub urmatoarea forma, indiferent de
criptosistemul folosit: Alice trimite lui Bob un mesaj secret, criptandu-l
cu cheia publica a lui Bob. Acesta foloseste cheia sa privata pentru a
decripta mesajul primit si l citeste.
149
Pentru a semna un mesaj, Alice realizeaza un calcul ce foloseste cheia
ei privata si mesajul. Rezultatul este numit semnatura digitala si se
ataseaza mesajului. Bob, pentru a verica semnatura, efectueaza un
calcul ce implica mesajul, semnatura si cheia publica a lui Alice. Daca
rezultatul este corect conform cu o relat ie matematica simpla, prescrisa,
semnatura este cea originala.

In caz contrar, semnatura este falsa sau
mesajul a fost alterat.
Cele mai mari avantaje ale criptarii cu cheie publica sunt cresterea
securitat ii si posibilitatea de a furniza semnaturi digitale care nu pot
repudiate. Un mare dezavantaj al ei este viteza, multe sisteme cu
cheie secreta ind mult mai rapide decat cele cu cheie publica. Oricum,
criptarea cu cheie publica nu are rolul de a nlocui criptarea cu cheie
secreta, ci de a mari securitatea acesteia. Ele pot folosite si mpreuna,
un astfel de protocol numindu-se criptosistem hibrid.

In unele cazuri,
criptarea cu cheie publica nu este necesara, ind sucienta criptarea cu
cheie secreta. De exemplu, sunt situat ii n care utilizatorii se ntalnesc n
particular sau o singura autoritate cunoaste si administreaza toate cheile,
ca de exemplu un sistem bancar nchis. Cum acesta cunoaste deja toate
cheile, nu mai are rost ca unele sa e publice si altele secrete. Dar,
acest ultim caz poate deveni impracticabil daca numarul utilizatorilor
creste; astfel de limitari nu sunt necesare n criptarea cu cheie publica,
care se potriveste cel mai bine unui mediu deschis, cu un mare numar
de utilizatori.
Gasirea de noi criptosisteme cu cheie publica si mbunatat irea meca-
nismelor criptograce existente continua ntr-un ritm alert.
150 CAPITOLUL 9. CRIPTOGRAFIE CU CHEIE PUBLIC

A
9.1 RSA
Criptosistemul RSA a fost realizat de Ronald Rivest
1
, Adi Shamir
2
si
Leonard Adleman
3
, n anul 1977. El este un criptosistem cu cheie publica
care realizeaza atat criptare de mesaje, cat si autenticare (semnatura
digitala).
Algoritmul RSAfunct ioneaza astfel: se aleg doua numere prime mari,
p si q si se calculeaza n = pq, numit modul. Se alege e, e < n si prim
cu (p 1)(q 1) = (n). Atunci e are invers modulo (n). Fie d acesta.
e poarta numele de exponent public iar d se numeste exponent privat.
Cheia publica este perechea (n, e) iar cheia privata este (n, d). Factorii
p si q pot distrusi sau pastrat i cu cheia secreta.
Numerele folosite ca modul n = pq se numesc numere RSA. Ele sunt
listate n Factoring Challenge of RSA Security
4
si sunt alese pentru
proprietarea de a greu de factorizat. Aceste numere au fost denumite
la nceput dupa numarul de cifre zecimale pe care le au. De exemplu,
RSA 100 este un numar RSA cu 100 de cifre zecimale. Mai tarziu,
s-a trecut la indicarea numerelor n funct ie de scrierea lor binara. De
exemplu, RSA576 are 576 de cifre binare, adica 174 de cifre zecimale.
De obicei, numerele prime p si q sunt alese astfel ncat p 1 si q 1
sunt divizibile cu numere prime mari, altfel exista metode rapide de
factorizare, ca de exemplu, metoda Pollard rho (vezi 11.4). Ele se pot
genera aleator. De exemplu, se poate porni de la un numar aleator mare
m. Daca el este par, se alege m + 1. Cu ajutorul testului probabilistic
1
Profesor de inginerie electronica si informatica la Institutul de Tehnologie Mas-
sachussets (MIT), conducatorul laboratorului Cryptography and Information Security
Group. A fondat RSA Data Security.
2
Profesor la Departamentul de Matematici Aplicate si Informatica la Institutul
de Stiinte Weizmann, Israel. A studiat diferite tipuri de atacuri pe criptosisteme
diferite, cum ar criptosistemul rucsac, scheme si tehnici criptograce, criptanaliza
diferent iala.
3
Coleg cu Rivest la MIT. El a reusit sa sparga primele 42 de criptosisteme realizate
de Rivest si Shamir. Doar al 43-lea a rezistat si a fost considerat optim. Acum
este profesor la Departamentul de Informatica al Universitat ii California de Sud.
Activitatea sa principala se desfasoar a n domeniul informaticii teoretice.
4
RSA Security Data a nceput sa sponsorizeze n martie 1991 RSA Factoring
Challenge pentru a ncuraja cercetarea n teoria computat ionala a numerelor si n
studierea dicultat ilor practice a factorizarii numerelor mari. Acest lucru este folo-
sitor utilizatorilor algoritmului RSAn alegerea unei chei de lungime corespunzatoare
cu nivelul de securitate dorit.
9.1. RSA 151
Miller-Rabin (vezi 10.7) vedem daca numarul convine. Daca nu, repetam
pentru m+ 2, m+ 4, . . . pana gasim primul numar prim m.
Marimea unei chei n algoritmul RSA se refera la marimea lui n. Cele
doua numere prime p, q trebuie alese astfel ncat sa aiba o marime apro-
ximativ egala. Marimea modulului depinde de cerint ele de securitate.
Cu cat modulul este mai mare, cu atat securitatea este mai mare, dar, n
acelasi timp, scade viteza de operare. Lungimea modulului trebuie aleasa
n funct ie de valoarea datelor ce trebuie protejate, de timpul necesar de
protect ie, de cat de puternice pot posibilele amenint ari.

In anul 1999, un grup condus de Herman te Riele, utilizand 300 de


stat ii de lucru si PC-uri, a factorizat dupa sapte luni numarul RSA155
n doua numere prime cu 78 cifre binare. Pana n prezent s-au mai
factorizat RSA160, RSA200, RSA576. De aceea Laboratoarele
RSA recomanda chei de marime de 1024 de bit i pentru corporat ii si chei
de 2048 de bit i pentru chei de valoare deosebita, cum ar cheia pentru
autenticare.
Este normal sa ne asiguram ca o cheie a unui utilizator expira dupa o
anumita data, sa zicem doi ani. Aceasta ofera posibilitatea de a schimba
chei n mod regulat si de a asigura nivelul dorit de securitate, folosind
datele furnizate de Laboratoarele RSA.
Criptosistemul RSAeste folositn mod curent peste totn lume. El se
regaseste n multe produse comerciale software, este construit n sisteme
operat ionale curente de catre Microsoft, Apple, Sun, Novell.

In hard-
ware, algoritmul RSA se regaseste n securizarea telefoanelor, n ret eaua
de carduri Ethernet. Algoritmul este inclus n toate protocoalele impor-
tante pentru asigurarea securitat ii comunicat iilor Internet, este utilizat
n interiorul unor institut ii cum ar guvernul U.S.A., marile corporat ii,
laboratoare nat ionale si universitat i.
Sa vedem acum cum funct ioneaza acest algoritm pentru criptarea
mesajelor.
Presupunem ca mesajul este deja transformat ca n cazul criptarii
exponent iale, doar ca de aceasta data p estenlocuit cu n. Fiecare unitate
de mesaj M este transformata dupa regula C M
e
(mod n) pentru a
rezulta mesajul cifrat.
De exemplu, daca alegem n = 43 59 = 2537 si e = 13, pentru a
cripta mesajul
PUBLIC KEY CRY PTOGRAPHY
152 CAPITOLUL 9. CRIPTOGRAFIE CU CHEIE PUBLIC

A
grupam n blocuri de doua litere pe care le transformam n echivalent i
numerici de doua cifre. Obt inem astfel,
1520 0111 0802 1004 2402 1724 1519 1406 1700 1507 2423.
Fiecare bloc este transformat prin C M
13
(mod 2537) si vom obt ine
textul cifrat, format din
0095 1648 1410 1289 0811 2333 2132 0370 1185 1457 1084.
Pentru decifrare, este nevoie de d, care n acest caz este d = 937.

In practica, sistemul RSA este des folosit mpreuna cu DES. Atunci


cand Alice doreste sa trimita un mesaj lui Bob, mai ntai cripteaza
mesajul cu DES, folosind o cheie aleasa aleator, apoi foloseste cheia pu-
blica a lui Bob pentru a cripta cheia DES. Mesajul criptat DES si cheia
DES criptata RSA formeaza un criptosistem hibrid, care este transmis
lui Bob. Acesta decripteaza cheia DES cu cheia sa privata si apoi uti-
lizeaza cheia DES pentru a decripta mesajul.

In acest fel se combina
viteza ridicata a DES-ului cu managementul de chei al sistemului RSA.
Atat criptarea cat si autenticarea au loc fara a mpart i chei private;
sunt folosite doar cheile publice ale unei alte persoane si cheile private
ale persoanei n discut ie.

In nal, prezentam cateva din variantele de a ncerca criptanaliza


acestui sistem.
1. O varianta este aceea de a ncerca factorizarea lui n prin di-
verse metode.
2. De asemenea, cum problema factorizarii lui nn acest caz este
echivalenta cu cea a cunoasterii lui (n), putemncerca sa aam valoarea
lui (n). Daca aceasta este cunoscuta, din relat iile:
p +q = n (n) + 1
p q = (p +q)
2
4n,
rezulta
p =
1
2
[(p +q) + (p q)] , q =
1
2
[(p +q) (p q)] .
3. Presupunem acum ca putem determina d astfel ca a
de
a (mod n),
pentru tot i a primi cu n. Acest lucru nseamna ca de 1 este multiplu
9.1. RSA 153
al celui mai mic multiplu comun al numerelor p 1, q 1. A cunoaste
m = de 1 este un rezultat mai slab decat daca l-am cunoaste pe (n).
Cu toate acestea, si n acest caz, exista o metoda prin care n poate
factorizat, cu o mare probabilitate.
Deci, presupunem n = pq, produsul a doua numere prime mari, m, un
numar natural cu proprietatea ca a
m
1 (mod n), pentru orice a, prim
cu n. Observam ca m trebuie sa e numar par deoarece relat ia trebuie
sa se verice si pentru a = 1. Mai ntai vericam daca
m
2
are aceeasi
proprietate cu m, caz n care nlocuim m cu
m
2
. Daca nu, congruent a
a
m
2
1 (mod n) nu este vericata pentru cel put in jumatate din valorile
lui a modulo (n). Astfel, daca pentru o mult ime sucient de mare de
valori ale lui a, alese aleator, congruent a se verica, putem presupune
(cu probabilitate mare) ca m poate nlocuit cu
m
2
. Continuam acest
procedeu, pana cand congruent a nu se mai verica pentru
m
2
de la acel
pas.
Acum apar doua posibilitat i:
(i)
m
2
este multiplu de unul din numerele p 1, q 1, dar nu
de ambele. Presupunem ca
m
2
este multiplu de p 1. Atunci, a
m
2

1 (mod p) este adevarata pentru orice a, dar, pentru exact jumatate din
valorile lui a, a
m
2
1 (mod q) (vezi teorema 7.1.1).
(ii)
m
2
nu este multiplu nici de p 1, nici de q 1. Atunci,
a
m
2
1 (mod n) se verica pentru exact un sfert din valorile lui a,
a
m
2
1 (mod n) pentru acelasi numar de valori. Pentru cealalta
jumatate de valori a lui a, a
m
2
1 (mod p) si a
m
2
1 (mod q), sau
invers.
Astfel, alegand aleator valori pentru a, vom gasi cu mare probabili-
tate un a pentru care a
m
2
1 este multiplu de p dar nu de q, sau invers.
Cand am aat un astfel de a, din (n, a
m
2
1) = p rezulta un factor al lui
n.
Pana n prezent, nu s-au gasit metode de a criptanaliza un astfel de
sistem fara a factoriza numarul n.
154 CAPITOLUL 9. CRIPTOGRAFIE CU CHEIE PUBLIC

A
9.2 Criptosisteme bazate pe DLP
Problema logaritmului discret, cunoscuta si sub forma DLP, este o alta
problema dicila. Daca lucram cu numere reale, exponent ierea a
x
nu este mult mai usoara decat operat ia inversa. Daca presupunem ca
lucram nsa ntr-un grup nit, cum ar U(Z
n
), cu ajutorul metodei de
ridicare repetata la patrat, se poate calcula rapid a
x
pentru valori mari
ale lui x. Problema invers a, poarta numele de problema logaritmului
discret: cunoscand b, care stim ca este de forma a
x
, cum determinam
x = log
a
b? Cuvantul discret face distinct ia dintre cazul grupurilor nite
si situat ia clasica. Aceasta problema va tratata pe larg n capitolul 12.
Sistemul de schimbare de chei Die-Hellman-Merkle
Datorita faptului ca criptosistemele cu cheie publica sunt relativ
mai ncete decat criptosistemele clasice (cel put in n stadiul actual de
cunoastere tehnologica si teoretica), este bine sa le folosim mpreuna
cu acestea. De exemplu, daca doua persoane trebuie sa se puna de
acord asupra unei chei comune secrete, printr-o ret ea publica, pentru
a folosita apoi n schimbul de mesaje realizate cu criptosisteme cla-
sice, se poate folosi criptarea cu cheie publica pentru secretizarea cheii
si criptosistemul DES pentru transmiterea mesajelor.
Primul astfel de protocol a fost realizat de Whiteld Die
5
, Martin
Hellman
6
si Ralph Merkle
7
. El funct ioneaza astfel:
1. Se aleg q, un numar prim si g, un generator al grupului nit
Z

q
. Acestea sunt facute publice.
2. Alice alege aleator un a, 1 a q 1, calculeaza g
a
(mod q)
si l trimite lui Bob. a este pastrat secret.
3. Bob alege si el, n mod aleator b, 1 b q 1, calculeaza
g
b
(mod q) si transmite valoarea aceasta lui Alice. b este pastrat si el
5
Inginer la Sun Microsystems n Palo Alto, California. Este cunoscut n special
pentru ca a descoperit n anul 1975 conceptul de criptare cu cheie publica pentru
care i s-a decernat titlul de Doctor Honoris Causa de catre Swiss Federal Institute
of Technology, n 1992.
6
Este considerat tatal criptograei (cu cheie publica) moderne.
7
Teza sa de doctorat a avut tema Secrecy, Authentication and Public Key Sys-
tems, profesorul ndrum ator ind Hellman. Alaturi de Adleman, Die, Helmann,
Rivest si Shamir a primit premiul ACM Kenellakis Award n anul 1977.

In 1998 i
s-a decernat premiul Feyman n nanotehnologie iar n anul 2000, premiul RSA n
matematica.
9.2. CRIPTOSISTEME BAZATE PE DLP 155
secret.
4. Alice si Bob calculeaza amandoi g
ab
(mod q) care va cheia
secreta pe care o vor folosi n urmatoarele comunicat ii.
O a treia persoana cunoaste g, q, g
a
(mod q), g
b
(mod q) si trebuie sa
determine g
ab
(mod q). Securitatea sistemului se bazeaza pe urmatoarea
presupunere:
Presupunerea Die-Helman-Merkle. Este imposibil din punct
de vedere computat ional sa se calculeze g
ab
din g
a
si g
b
.
Pana n prezent nu s-a determinat o metoda prin care sa se ae g
ab
fara a calcula a si b, cu ajutorul logaritmului discret. Teoretic, o alta
cale ar exista, dar ea nu a fost gasita nca.
Criptosistemul ElGamal

In anul 1985, ElGamal


8
a propus un criptosistem cu cheie publica,
bazat pe logaritmi discret i, pentru a asigura securizarea comunicat iilor:
1. Se aleg q, un numar prim mare si un generator g pentru Z

q
,
care sunt facute publice.
2. Alice alege un a, 1 a q 1, care este cheia secreta de
decriptare, si calculeaza g
a
(mod q), care este cheia publica de criptare.
3. Presupunem ca Bob doreste sa-i trimita lui Alice un mesaj M
format cu echivalent i numerici mod q. El alege aleator b, 1 b q 1
si trimite lui Alice perechea de elemente
_
g
b
(mod q), Mg
ab
(mod q)
_
.
4. Cum Alice cunoaste a, ea poate regasi M, calculand g
ab
(mod q)
si apoi mpart ind al doilea element din pereche la acesta.
Oricine poate rezolva problema logaritmului discret n corpul nit cu
q elemente, poate gasi cheia secreta a din cheia publica g
a
. Securitatea
sistemului se bazeaza pe presupunerea Die-Helman-Merkle. Astfel,
criptosistemul ElGamal este echivalent cu sistemul de schimbare de chei
Die-Hellman.
8
Ahmed ElGamal este profesor conducator al Departamentului de Inginerie Struc-
turata al Universitat ii California, San-Diego. Activitatea sa de cercetare se desfasoara
n domenii ca tehnologie informatica, inginerie structurata, studiu seismologic.
156 CAPITOLUL 9. CRIPTOGRAFIE CU CHEIE PUBLIC

A
Criptosistemul Massey-Omura
Acest criptosistem este un alt sistem foarte cunoscut, folosit pentru
transmiterea mesajelor.
1. Se alege q, o putere a unui numar prim, deci vom lucra ntr-un
corp nit cu q elemente.
2. Fiecare utilizator si alege, n mod aleator, o cheie e, 1 e
q 1 astfel ncat (e, q 1) = 1 si calculeaza d e (mod q 1), folosind
algoritmul lui Euclid extins.
3. Pentru ca Alice sa trimita un mesaj M lui Bob, ea calculeaza
M
e
A
(mod q) si l trimite acestuia. Cand primeste mesajul, Bob nu l
poate citi nca. El returneaza lui Alice M
e
A
e
B
(mod q) care i trimite
napoi M
e
A
e
B
d
A
M
e
B
(mod q). Bob descifreaza mesajul prin M
M
e
B
d
B
(mod q).
9.3 Criptosisteme knapsack
Criptosistemul rucsac (knapsack) Merkle-Hellman a fost publicat n anul
1978. El se bazeaza pe problema sumei unei submult imi din combina-
torica, sau problema rucsacului, cum mai este ntalnita.
Aceasta problema presupune alegerea unui numar de obiecte cu greu-
tate cunoscuta dintr-o mult ime mare de astfel de obiecte asa ncat suma
greutat ilor lor sa e egala cu o valoare stabilita init ial. Tratata pe caz
general, ea este inclusa n categoria problemelor dicile.
Sub forma matematica, problema s-ar putea transcrie astfel:
Fie a
1
, a
2
, . . . , a
n
o mult ime de numere naturale si S, un numar natu-
ral. Sa se determine daca exista x
i
0, 1, 1 i n, pentru care
n

i=1
x
i
a
i
= S.

In anumite situat ii, problema se poate rezolva usor. De exemplu,


daca a
i
= 2
i1
, 1 i n, atunci problema se reduce la scrierea lui S n
baza 2.
Un caz particular al problemei rucsacului este problema rucsac su-
percrescatoare.
Spunem ca sirul de numere naturale (a
i
)
i1
este supercrescator daca
j1

i=1
a
i
< a
j
, pentru j 2.
9.3. CRIPTOSISTEME KNAPSACK 157
De exemplu, 2, 3, 6, 12, 25, 51 este o secvent a supercrescatoare. Sa
rezolvam problema:
2x
1
+ 3x
2
+ 6x
3
+ 12x
4
+ 25x
5
+ 51x
6
= 68.
Pentru aceasta, cum 2 + 3 + 6 + 12 + 25 < 51, x
6
= 1, altfel suma este
mai mica decat 51. Rezulta 2x
1
+ 3x
2
+ 6x
3
+ 12x
4
+ 25x
5
= 17 si
reluam procedeul. Din 25 > 17, obt inem x
5
= 0. Astfel, 2x
1
+ 3x
2
+
6x
3
+ 12x
4
= 17, de unde x
4
= 1 (altfel, suma ar < 12).

In nal, din
2x
1
+ 3x
2
+ 6x
3
= 5 rezulta x
3
= 0, x
2
= 1, x
1
= 1.
Pe caz general, problema rucsacului pentru siruri supercrescatoare,
n

i=1
x
i
a
i
= S unde a
1
, a
2
, . . . , a
n
formeaza un sir supercrescator, se
rezolva astfel:
1. Determinam x
n
prin:
x
n
=
_
1, S a
n
;
0, S < a
n
.
2. Determinam x
n1
, x
n2
, . . . , x
1
folosind relat iile:
x
j
=
_

_
1, S
n

i=j+1
x
i
a
i
a
j
;
0, S
n

i=j+1
x
i
a
i
< a
j
,
pentru j n1, n2, . . . , 1. Trebuie remarcat faptul ca, daca aceasta
problema are solut ie, ea este unica.
Sa vedem acum cum funct ioneaza criptosistemul Merkle-Hellman.
1. Mai ntai, mesajul este transformat nlocuind ecare litera cu
echivalentul sau numeric binar. Daca presupunem, ca si pana acum, ca
alfabetul este format din 26 de litere, cum 25 = (11001)
2
, ecare litera
va avea un echivalent numeric format din 5 cifre binare:
A(00000)
2
, B (00001)
2
, . . . , Z (11001)
2
.
2. Se alege un nuplu supercrescator a
1
, a
2
, . . . , a
n
(n este 5 sau
un multiplu de 5, t inand cont ca ecare litera este substituita cu un bloc
de 5 cifre), un modul m > 2a
n
si un numar natural w, prim cu m, numit
multiplu. Aceste alegeri se fac prin procese aleatoare. De exemplu,
158 CAPITOLUL 9. CRIPTOGRAFIE CU CHEIE PUBLIC

A
se poate considera o secvent a arbitrara l
1
, l
2
, . . . , l
n+1
, de numere mai
mici decat o anumita valoare convenabil aleasa, pe baza caruia se poate
construi a
1
= l
1
, a
j
= l
j
+ a
j1
+ a
j2
+ . . . + a
1
, 2 j n. m poate
ales de forma m = l
n+1
+
n

i=1
a
i
. Pentru w, alegem aleator un w
0
< m
iar w va primul numar mai mare decat w
0
, prim cu m.
3. Determinam nuplul b
i
wa
i
(mod m), 0 < b
i
< m pentru
1 i n. Acesta este facut public, el reprezentand cheia de criptare.
Cheia de decriptare, care trebuie pastrata secreta, este (w, m). Cu aju-
torul ei, se obt ine usor din b
1
, b
2
, . . . , b
n
nuplul init ial.
4. Alice, pentru a trimite mesajul lui Bob, mparte mesajul for-
mat din echivalent ii numerici binari ai literelor n blocuri de n cifre binare
x
1
x
2
. . . x
n
(daca este nevoie, se completeaza ultimul bloc cu cifre de 1
pentru a obt ine acelasi numar de cifre). Pentru ecare astfel de unitate
de mesaj, se calculeaza suma S =
n

i=1
x
i
b
i
. Sirul format cu aceste sume
formeaza mesajul cifrat.
5. Pentru a decripta mesajul, Bob calculeaza pentru ecare suma:
S
0
wS
n

i=1
wb
i
x
i

n

i=1
x
i
a
i
(mod m), 0 < S
0
< m.
Din
n

i=1
x
i
a
i
< m, rezulta S
0
=
n

i=1
x
i
a
i
. Aceasta ecuat ie se poate rezolva
usor pentru ca sirul a
1
, a
2
, . . . , a
n
este supercrescator. Rezulta astfel
M = x
1
x
2
. . . x
n
.

Intreg mesajul este regasit nlocuind echivalent ii binari


cu literele corespunzatoare.
De exemplu, folosim un 10uplu supercrescator:
(2, 11, 14, 29, 58, 119, 241, 480, 959, 1917),
m = 3837 (m > 2a
10
), w = 1001, pentru a aplica sistemul la criptarea
mesajului:
REPLY IMMEDIATELY
Formam unitat i de mesaj alcatuite din 10 cifre binare (echivalent ii a
doua litere):
1000100100 0111101011 1100001000 0110001100
0010000011 0100000000 1001100100 0101111000
9.4. SEMN

ATUR

A DIGITAL

A 159
Formam 10uplul b
i
1001a
i
(mod 3837), 1 i 10 si obt inem
(2002, 3337, 2503, 2170, 503, 172, 3347, 855, 709, 417). Pentru ecare bloc
determinat anterior calculam sumele
10

i=1
x
i
b
i
. Astfel, pentru primul bloc
obt inem S = b
1
+b
5
+b
8
= 3360.
Mesajul cifrat este
3360 12986 8686 10042 3629 3337 5530 9729
Pentru decriptare, din congruent a 1001w 1 (mod 3837) rezulta w =
23. Pentru ecare bloc rezolvam 23S
10

i=1
x
i
a
i
(mod 3837). Vericam
tot pentru primul bloc: 3360 23 540 (mod 3837). Din 540 = 480 +
58 + 2, rezulta x
1
= x
5
= x
8
= 1 iar restul nuli, adica 1000100100.
Pentru un timp, acest sistem a fost considerat sigur. Dar, tipul de
problema rucsac pe care se bazeaza acest sistem este tot un caz parti-
cular: se obt ine din problema supercrescatoare prin transformari simple
(multiplicarea si reducerea modulo m a ecarui element din sir).

In anul
1982, Shamir a spart acest criptosistem rucsac (ntr-o singura iterat ie),
gasind un algoritm de rezolvare a acestuia. Chiar daca Merkle a dezvoltat
un alt astfel de criptosistem cu multiple iterat ii, nici acesta nu s-a dovedit
imposibil de criptanalizat, Brickell ind cel care a oferit un algoritm
pentru acest caz.
Astfel, criptosistemul Merkle-Hellman nu mai este astazi considerat
sigur, el ind vulnerabil la o criptanaliza ecienta.
Un criptosistem rucsac, care nu se bazeaza pe exponent iere modulara,
este sistemul Chor-Rivest. El utilizeaza polinoame cu coecient i ntr-un
corp nit. Prima data, a fost publicat n anul 1984 si a fost revizuit n
1988.

In prezent, acesta este singurul criptosistem rucsac care nca nu a
fost spart. Pentru mai multe informat ii, se poate studia [12], [15].
9.4 Semnatura digitala
Presupunem ca Alice i trimite un mesaj criptat lui Bob. De obicei, pen-
tru a mai sigur, unul din blocurile mesajului este blocul de semnatura.
Bob poate identica acest bloc deoarece, la decriptare, acesta nu are
nt eles.
160 CAPITOLUL 9. CRIPTOGRAFIE CU CHEIE PUBLIC

A
Prezentam n continuare cateva scheme de semnatura:
Schema bazata pe criptosistemul RSA
1. Presupunem ca (n
A
, e
A
) este cheia publica a lui Alice iar
(n
B
, e
B
) cea a lui Bob. Cheile secrete de decriptare sunt d
A
, respec-
tiv, d
B
. Pentru ca Alice sa-i trimita lui Bob semnatura sa, ea calculeaza:
S
A

_
M
d
A
(mod n
A
)
_
e
B
(mod n
B
), daca n
A
< n
B
sau
S
A
(M
e
B
(mod n
B
))
d
A
(mod n
A
), pentru cazul n
A
> n
B
.
Ea trimite apoi S
A
ca unitate de mesaj cifrat lui Bob.

In ambele
situat ii, inegalitatea precizata ne asigura ca expresia din paranteza nu
este mai mare decat cheia care reprezinta modulul n raport cu care se
face calculul.
2.

In primul caz, Bob poate verica autenticitatea mesajului
ridicand la puterea d
B
modulo n
B
si apoi la puterea e
A
modulo n
A
.
Pentru celalalt caz, el va face acelasi calcul, dar n ordine inversa.
Schema bazata pe criptosistemul ElGamal
1. Alice alege un numar prim p si doua numere naturale aleatoare
g, x < p. Ea calculeaza y g
x
(mod p), face public (y, g, p) si pastreaza
secret x.
2. Apoi, Alice alege aleator k, prim cu p 1 si calculeaza:
a g
k
(mod p), b k(M xa) (mod p 1).
Acum Alice a generat semnatura (a, b). Ea trebuie sa pastreze secret si
pe k.
3. Pentru a verica semnatura, Bob vede daca y
a
a
b
g
M
(mod p)
este adevarata.
Semnatura digitala standard

In anul 1991, Institutul Nat ional de Standarde si Tehnologie al gu-


vernului U.S.A., NIST, a propus un algoritm pentru semnaturi digi-
tale. Algoritmul este cunoscut sub numele DSA, Digital Signature Al-
gorithm. DSA a devenit Standard pentru semnaturi digitale, DSS, ind
prima schema de semnatur a recunoscuta de orice guvern. El este desti-
nat a folosit n posta electronica, transferari electronice de bani, schimb
electronic de date, distribut ie software, stocare de date si alte aplicat ii
care necesita asigurarea integritat ii datelor si autenticarea acestora.
9.4. SEMN

ATUR

A DIGITAL

A 161
Rolul lui DSS este asemanator lui DES, adica trebuie sa furnizeze o
metoda standard de semnatura care sa e folosita atat de guvern cat si
de organizat ii comerciale. Deoarece, pentru a construi semnaturi digi-
tale, este necesara criptarea cu cheie publica, NIST a ales ca schema de
semnatura digitala sa se bazeze pe problema logaritmului discret.
DSA/DSS consta n doua procese principale: generarea semnaturii,
folosind o cheie privata, si vericarea acesteia cu ajutorul unei chei pub-
lice. Algoritmul funct ioneaza astfel:
1. Generarea cheii DSA
1.1. Fiecare expeditor, Alice, alege un numar prim q de aproxi-
mativ 160 bit i, folosind un generator aleator de numere si un test de
primalitate.
1.2. Ea alege un al doilea numar prim p, p 1 (mod q), de
aproximativ 512 bit i.
1.3. Alice alege un generator al unicului subgrup ciclic de ordin
q al grupului Z

p
. Pentru a realiza aceasta, verica daca pentru un g, ales
aleator, g
p1
q
,= 1 (mod p). Daca da, g este generator.
1.4. Alice alege aleator x, 0 < x < q, care este cheia ei secreta
si si calculeaza cheia publica y g
x
(mod p).
2. Generarea semnaturii DSA
Pentru a realiza aceasta etapa, Alice trebuie sa foloseasca o funct ie
hash. O funct ie hash este o aplicat ie usor de calculat, f : x h care
transforma siruri binare de lungime arbitrara foarte mare n siruri binare
de lungime xata, mult mai scurta, numita valoare hash. De exemplu,
siruri de 10
6
bit i pot transformate n siruri de 150 bit i. Funct ia trebuie
sa mai verice proprietatea ca, pentru x, x

diferit i, nu se poate obt ine


f(x) = f(x

).
2.1. Ea aplica o funct ie hash mesajului pentru a obt ine h < q.
2.2. Alice alege aleator k, 0 < k < q. Cu ajutorul acestuia si
construieste semnatura (r, s) prin:
r
_
g
k
(mod p)
_
(mod q)
s k(h +xr) (mod q).
162 CAPITOLUL 9. CRIPTOGRAFIE CU CHEIE PUBLIC

A
Pentru a verica semnatura:
Bob calculeaza u
1
sh (mod q) si u
2
sr (mod q).
Sa observam mai ntai ca, g
u
1
y
u
2
= g
s(h+xr)
g
k
(mod p).
Daca r (g
u1
y
u2
(mod p)) (mod q), atunci semnatura este corecta.
Daca congruent a nu se verica, atunci mesajul a fost semnat incorect sau
a fost semnat de un impostor.

In acest caz, mesajul nu este considerat
valid.
Aceasta schema de semnatura are avantajul ca semnaturile sunt destul
de scurte, ind formate din doua numere de 160 bit i. Pe de alta parte,
securitatea sistemului depinde de imposibilitatea de a rezolva problema
logaritmului discret n grupul multiplicativ Z

p
, cu p sucient de mare.
9.5

Impart irea secretelor
Schemele de mpart ire a secretelor au fost descoperite, independent, de
Blakley si Shamir. Principalul scop al acestora este gestionarea securi-
zata a cheilor.

In unele situat ii exista o singura cheie secreta care permite
accesul la mai multe siere importante. Daca o astfel de cheie este
pierduta (de exemplu, persoana care cunoaste cheia nu este disponibila
sau computerul care depoziteaza cheia este distrus), atunci toate sierele
sunt inaccesibile. Ideea de baza n mpart irea de secrete este de a diviza
cheia secreta n mai multe part i, numite umbre care sunt distribuite
la persoane diferite asa ncat cheia secreta sa poata regasita dintr-o
submult ime de umbre.
O schema generala de mpart ire a secretelor specica numarul minim
de umbre necesare la reconstituirea cheii secrete.
Un exemplu clasic de mpart ire a secretelor este schema k din n sau
schema (k, n)threshold cu 1 < k < n.

Intr-o astfel de schema, exista
un expeditor, sau dealer si n participant i. Dealer-ul mparte secretul n
n part i si da ecarui participant cate o parte astfel ncat orice k part i
pot reconstitui secretul, dar orice k 1 part i nu sunt suciente pentru
a-l determina. O astfel de schema se numeste perfecta daca orice grup
de cel mult k 1 participant i nu poate aa mai multe informat ii despre
secret decat o persoana din exteriorul grupului.
Cea mai simpla schema threshold este bazata pe teoria congruent elor
si pe teorema chinezeasca a resturilor. Pentru a construi o astfel de
9.5.

IMP

ART IREA SECRETELOR 163


schema (k, n)threshold putem folosi urmatorul algoritm, format din
doua etape principale: construirea umbrelor si reconstituirea secretului
din k umbre.
1. Notam cu S secretul (este un numar) si cu s
1
, s
2
, . . . , s
n
um-
brele care trebuie create.
Alegem secvent a m
1
, m
2
, . . . , m
n
de numere naturale care verica
condit iile:
(m
i
, m
j
) = 1, pentru i ,= j,
m
1
m
2
. . . m
k
> m
n
m
n1
. . . m
nk+2
.
Determinam secretul S astfel ncat
m
n
m
n1
. . . m
nk+2
< S < m
1
m
2
. . . m
k
,
unde m
n
m
n1
. . . m
nk+2
este cea mai mare valoare obt inuta calculand
produsul a k1 numere din sir, iar m
1
m
2
. . . m
k
reprezinta cea mai mica
valoare obt inuta dintre produsele de k numere.
Construim umbrele prin
s
i
S (mod m
i
), 1 i n.
Fiecare participant P
i
va primi (s
i
, m
i
, M), unde M = m
1
m
2
. . . m
n
.
2. Sa vedem acum daca am denit o schema (k, n)threshold.
Consideram umbrele s
j
1
, s
j
2
, . . . , s
j
k
cunoscute. Fiecare persoana P
j
i
,
folosind cheia sa secreta (s
ji
, m
ji
, M), calculeaza:
M
ji
=
M
m
ji
, N
ji
M
ji
(mod m
ji
) si, n nal I
ji
= s
ji
M
ji
N
ji
.
Folosind teorema chinezeasca a resturilor, gasims
k

i=1
I
j
i
(mod M
j
),
unde M
j
= m
j
1
m
j
2
. . . m
j
k
. Dar, din 0 < S < M
j
, rezulta S = s si, ast-
fel, am reconstituit secretul.
Spre exemplu, sa construim o schema (3, 5)threshold.
Administratorul schemei alege sirul de numere:
m
1
= 11, m
2
= 12, m
3
= 17, m
4
= 19, m
5
= 25.
El calculeaza M = 1065900, m
1
m
2
m
3
= 2244, m
4
m
5
= 475 si deneste
secretul S = 1011. Se observa ca 475 < S < 2244.

In nal, calculeaza umbrele s


i
S (mod m
i
), obt inand:
s
1
= 21, s
2
= 3, s
3
= 8, s
4
= 4, s
5
= 11. Fiecare persoana P
i
va primi
164 CAPITOLUL 9. CRIPTOGRAFIE CU CHEIE PUBLIC

A
(s
i
, m
i
, M). Sa vedem cum obt in persoanele P
1
, P
3
, P
4
secretul S.
P
1
calculeaza M
1
=
M
m
1
= 96900, N
1
M
1
(mod 11), de unde N
1
= 1
si I
1
= 2034900.
P
3
calculeaza M
3
=
M
m
3
= 62700, N
3
M
3
(mod 17), de unde N
3
= 13
si I
3
= 6520800.
P
4
calculeaza M
4
=
M
m
4
= 56100, N
4
M
4
(mod 19), de unde N
4
= 8
si I
4
= 1795200.

In nal, rezulta S I
1
+ I
3
+ I
4
= 10350900 1011 (mod 3553)
unde m
1
m
3
m
4
= 3553.
Daca ncercam sa regasim secretul folosind doar umbrele s
1
, s
3
, obt i-
nem S I
1
+I
3
= 8555700 76 (mod 187), ceea ce nu este corect.

Incheiem acest subcapitol cu prezentare schemei de mpart ire a se-


cretelor a lui Shamir. Aceasta este o schema perfecta care se bazeaza pe
interpolarea polinomiala si pe faptul ca un polinom de gradul k 1 este
unic determinat de cei k coecient i ai sai.
1. Construirea umbrelor.
Administratorul alege un numar prim p, cu p > maxS, n unde S
este secretul iar n, numarul de participant i. Apoi, deneste a
0
= S si
alege n mod aleator k 1 coecient i independent i a
1
, . . . , a
k1
astfel
ncat 1 a
i
p 1, 1 i k 1. Dealer-ul deneste polinomul
f =
k1

i=0
a
i
X
i
, care este de fapt un polinom cu coecient i ntr-un corp nit
cu p elemente. Umbrele secretului S vor create prin s
j
f(j) (mod p),
pentru n valori diferite j, 1 j p 1. Fiecare participant P
j
primeste
(s
j
, j), printr-un canal sigur.
2. Reconstituirea secretului.
Consideram ca un grup de k sau mai mult i participant i vor sa deter-
mine secretul. Fiecare pereche (j, s
j
) este considerata ca ind un punct
(x
j
, y
j
), unde y
j
= f(x
j
). Pentru a determina funct ia polinomiala al carei
grac trece prin aceste puncte, folosim formula de interpolare Lagrange:
f(x) =
k

j=1
y
j

1lk
l=j
x x
l
x
j
x
l
.
9.5.

IMP

ART IREA SECRETELOR 165


Cum S = a
0
= f(0), putem scrie S =
k

j=1
c
j
y
j
, unde c
j
=

1lk
l=j
x
l
x
l
x
j
.
Deci, ecare grup de k participant i va determina secretul calculand
o combinat ie liniara a umbrelor, coecient ii c
j
neind secret i.
Un caz simplu de vizualizat este pentru k = 2. Gracul funct iei
polinomiale este o dreapta. Punctul A, n care dreapta intersecteaza axa
Oy, are coordonatele (0, f(0)). Din S = f(0), rezulta ca secretul este
ordonata punctului A. Fiecare umbra este de fapt un punct pe dreapta.
Daca consideram orice doua puncte, acestea determina n mod unic
dreapta, deci gasim secretul. Daca consideram un singur punct, prin
acesta pot trece o innitate de drepte.

In acest caz, secretul poate
orice punct de pe axa Oy, deci nu l putem aa.
Exercit ii propuse
1. Fie n > 1 un numar liber de patrate, iar d si e numere naturale
astfel ncat p 1 [ de 1, pentru orice divizor prim p al lui n (de
exemplu, acesta poate cazul cand de 1 (mod (n))). Aratat i ca
a
de
a (mod n), pentru orice ntreg a.
2. Determinat i numerele prime p si q daca n = pq = 14647 iar
(n) = 14400.
3. Precizat i care dintre urmatoarele 5upluri sunt supercrescatoare:
i) (3, 5, 9, 19, 40)
ii) (2, 6, 10, 15, 36).
4. Fie A = 2, 3, 4, 7, 11, 13, 16. Determinat i toate submult imile B
ale mult imii A cu proprietatea ca suma tuturor elementelor din B este
egala cu 18.
5. Fie
i) (2, 3, 7, 20, 35, 69) si S = 45
ii) (1, 2, 5, 9, 20, 49) si S = 73
iii) (1, 3, 7, 12, 22, 45) si S = 67.
166 CAPITOLUL 9. CRIPTOGRAFIE CU CHEIE PUBLIC

A
Pentru ecare dintre aceste 6upluri si S, stabilit i care dintre pro-
blemele rucsac sunt supercrescatoare. Gasit i, pentru ecare problema
rucsac, toate solut iile, daca acestea exista.
6. Aratat i ca:
i) Pentru un nuplu supercrescator, (a
1
, a
2
, . . . , a
n
) se verica
a
j
2
j1
, pentru 1 j n.
ii) Orice nuplu (a
1
, a
2
, . . . , a
n
) care verica a
j+1
2a
j
, pentru
1 < j < n, este supercrescator.
7. Determinat i secvent a ce se obt ine din 7uplul (1, 3, 5, 10, 20, 41, 80)
pentru multiplul w = 17 si modulul m = 162.
8. Presupunem ca un mesaj a fost criptat folosind un sistem rucsac
cu cheia publica (57, 14, 3, 24, 8). Cunoscand si cheia privata b = 23,
m = 61, reconstituit i mesajul stiind ca mesajul cifrat are unitat ile
14 25 89 3 65 24 3 49 89 24 41 25 68 41 71.
CAPITOLUL 10
Teste de primalitate

Inca din antichitate, matematicienii au fost fascinat i de probleme ce


implicau numere prime.
O problema de baza ce se refera la numerele prime este aceea de a
stabili daca un anumit numar este prim sau nu. Un test care realizeaza
acest lucru poarta numele de test de primalitate. Ele sunt importante si
n prezent, mai ales din punct de vedere practic, t inand cont de utilizarea
acestor numere n criptograe.
Testele de primalitate pot deterministice sau probabilistice.
Cele deterministice stabilesc cu certitudine daca un numar este prim
pe cand testele probabilistice pot identica n mod fals (cu o mica proba-
bilitate) un numar compus ca ind prim (invers nu este posibil). Aceste
teste sunt mult mai rapide decat cele deterministice. Numerele care trec
un test de primalitate probabilistic vor numite probabil prime pana
cand primalitatea lor este demonstrata n mod deterministic. Testele
probabilistice de primalitate folosesc pe langa numarul n care este testat
si alte numere alese aleator dintr-o mult ime de probe. Orice astfel de test
trebuie sa dea raspunsul corect cu o mare probabilitate (de exemplu, mai
mare decat
2
3
). Probabilitatea erorii poate micsorata repetand testul
pentru mai multe valori proba independente.
167
168 CAPITOLUL 10. TESTE DE PRIMALITATE
Un test probabilistic de primalitate are urmatoarea structura de baza:
1. Aleg la ntamplare un numar b.
2. Veric o egalitate ce implica numerele b si n, numarul testat. Daca
egalitatea nu este adevarata, n este compus si b poarta numele de martor
al lui n, testul oprindu-se.
3. Repetam pasul 1 pana se obt ine certitudinea dorita. Daca, dupa
mai multe iterat ii, numarul n nu se dovedeste compus, el este declarat
probabil prim.
10.1 Ciurul lui Eratostene
Acesta este cel mai vechi test de primalitate cunoscut, aparut n jurul
anului 240 .e.n.
1
El funct ioneaza corect pentru orice numere prime.
Considerat un numar n, pentru a testa daca este prim, ntocmim o lista
cu toate numerele naturale pornind de la 2 pana la n. Din ea se nlatura
toate numerele care sunt multiplii de numerele prime

n. Cele care
raman n lista sunt toate numere prime.
De exemplu, pentru a gasi numerele prime impare, mai mici decat
100, listamntai numerele impare de la 3 la 100. Primul numar din lista
este 3, astfel el este primul numar prim impar.

Inlaturam din sir tot i
multiplii lui 3 si primul numar ramas este 5, care este deci, prim. Pentru
el aplicam acelasi procedeu. Cum 11 >

100, mai ramane sa aplicam


procedeul doar pentru 7. Toate numerele ramase n lista sunt numere
prime.
10.2 Cautare de divizori prin ncercari
Testul de cautare de divizori prinncercari, trial division, stabileste daca
numarul n este prim, vericand daca el are divizori primi

n conform
teoremei 1.1.1.
De exemplu, pentru a testa daca 211 este numar prim, vedem daca
unul dintre numerele 2,3,5,7,11 sau 13 este divizor al sau.
1
Eratostene (276-194.e.n,) a studiat la scoala lui Platonn Atena. El a scris multe
lucrari n domeniul matematicii, geograei, astronomiei, istoriei, lozoei, criticii
literare. El este cunoscut pentru masuratorile sale geograce printre care se numara
si faimoasa masurare a circumferint ei pamantului.
10.3. TESTE N-1. TESTUL PEPIN 169
Pentru ambunatat i aplicarea practica a acestei metode, facem obser-
vat ia urmatoare: toate numerele prime, mai put in 2 si 3 sunt de forma
6k 1.
Astfel, e mai practic sa facem mpart irile pentru 2,3,5 iar apoi sa
vedem daca numere congruente cu 1,7,11,13,17,19,23,29 modulo 30, mai
mici decat

n, sunt divizori pentru n. Acest fel de factorizare e uneori
numita factorizare circulara. Ea necesita mai multe mpart iri (unii di-
vizori vor numere compuse), dar are avantajul ca nu trebuie sa avem
la dispozit ie o lista de numere prime.
Oricum, cele doua teste prezentate nu se aplica decat pentru numere
mici; daca n are mai mult de 25 cifre, avem nevoie de teste mai rapide.
10.3 Teste n-1. Testul Pepin
Daca vom studia cu atent ie o lista formata din cele mai mari numere
prime cunoscute, p, vom observa usor ca majoritatea acestora au o forma
particulara, anume, p 1 sau p + 1 se pot descompune foarte repede.
Acest rezultat nu este neasteptat pentru ca exista teste deterministice
care verica primalitatea numerelor de aceasta forma.

In 1891, Lucas
2
a transformat mica teorema a lui Fermat ntr-un test
practic de primalitate, mbunatat it de Kraitchik si Lehmer
3
:
Teorema 10.3.1 Fie n > 1. Daca pentru orice factor prim p al lui
n 1 exista un ntreg a astfel ncat:
1. a
n1
1 (mod n) si
2. a
n1
p
,= 1 (mod n),
atunci, n este prim.
2
Francois Edouard Anatole Lucas (1842-1891) este cunoscut n special pentru
studiul facut asupra sirului Fibonacci si a sirurilor Lucas pe care le-a asociat acestuia.
El a inventat metode de testare a primalitat ii numerelor cu ajutorul carora, n 1876
a aratat ca M
127
este prim. Acest numar este cel mai mare numar prim descoperit
fara ajutorul computerelor.
3
Derrick Norman Lehmer (1905-1991), profesor la Berkeley, a obt inut rezultate
importante referitoare la funct iile Lucas, teste de primalitate, fract ii continue, ecuat ii
diofantice, tehnici computat ionale. El este considerat un pionier n aplicarea metode-
lor mecanice, incluzand si computerul, pentru rezolvarea unor probleme de teoria
numerelor.
170 CAPITOLUL 10. TESTE DE PRIMALITATE
Demonstrat ie. Pentru a arata ca n este prim, demonstram ca (n) =
n 1. De fapt, pentru a simplica, aratam ca n 1 [ (n).
Daca presupunem contrariul, exista p numar prim, r > 0 astfel ncat
p
r
[ n 1 si p
r
(n). Pentru acest p exista a care verica cele doua
condit ii din enunt ul teoremei. Fie m = ord
n
(a). Atunci, m [ n 1 dar
m
n 1
p
. Astfel, p
r
[ m si din m [ (n) ajungem la o contradict ie.
De fapt, n aceasta demonstrat ie, se arata ca grupul U(Z
n
) are or-
dinul n 1, deci n este numar prim. Acest procedeu sta la baza tuturor
testelor moderne de primalitate indiferent daca acestea sunt simple, ca
testul n discut ie, sau mai complicate, cum ar teste ce folosesc curbele
eliptice sau corpuri de numere.
Teorema are un inconvenient: necesita factorizarea completa a lui
n 1. Din acest motiv, Poklington a stabilit un rezultat care ntareste
teorema anterioara, ind necesara doar factorizarea unui divizor al lui
n 1.
Teorema 10.3.2 (Teorema Poklington) Fie n1 = p
k
R unde p este
numar prim, p R. Daca exista un ntreg a astfel ncat:
1. a
n1
1 (mod n) si
2. (a
n1
p
1, n) = 1,
atunci ecare factor prim al lui n are forma p
k
r + 1.
Demonstrat ie. Fie q un divizor al lui n si m = ord
q
(a). Din prima
condit ie, m [ n 1 iar din a doua, m
n 1
p
. Atunci, p
k
[ m. Astfel,
m = p
k
l. Din m [ q 1 rezulta q de forma ceruta.
Putem generaliza teorema Poklington, obt inand testul:
Teorema 10.3.3 Fie n 1 = F R unde F > R, R <

n,
F = p

1
1
p

2
2
. . . p

k
k
. Daca pentru ecare i = 1, . . . , k exista b
i
astfel ncat:
1. b
n1
i
1 (mod n),
2.
_
b
n1
p
i
i
1, n
_
= 1,
atunci n este prim.
10.4. TESTE N+1. TESTUL LUCAS-LEHMER 171
Dintre cazurile clasice ale teoremei 10.3.3, prezentam urmatoarele
doua:
Teorema 10.3.4 (Testul Pepin (1877)) Fie F
n
= 2
2
n
+ 1 al nlea
numar Fermat cu n > 1.
F
n
este prim daca si numai daca 3
F
n
1
2
1 (mod F
n
).
Demonstrat ie. Daca 3
Fn1
2
1 (mod F
n
), din teorema 10.3.3, luand
b = 3, obt inem F
n
numar prim. Reciproc, daca consideram F
n
prim,
Atunci,
_
3
F
n
_
3
F
n
1
2
(mod F
n
).
Dar,
_
3
F
n
_
=
_
F
n
3
_
=
_
2
3
_
= 1.
Teorema 10.3.5 (Teorema Proth (1878)) Fie n = h 2
k
+ 1 cu
2
k
> h. Daca exista a, numar ntreg, astfel ncat a
n1
2
1 (mod n),
atunci n este prim.
10.4 Teste n+1. Testul Lucas-Lehmer
Pentru nceput, denim sirurile Lucas.
Fie p si q numere ntregi astfel ncat d = p
2
4q > 0. Atunci, poli-
nomul X
2
pX +q are radacini distincte:
a =
1
2
_
p +

d
_
, b =
1
2
_
p

d
_
.
Prin induct ie, se arata ca:
Lema 10.4.1 a
m
=
V
m
+U
m

d
2
unde sirurile U
m
, V
m
sunt denite
recursiv prin:
U
0
= 0, U
1
= 1, U
m
= pU
m1
qU
m2
, m 2, (10.1)
V
0
= 2, V
1
= p, V
m
= pV
m1
qV
m2
, m 2. (10.2)
Obt inem, de fapt, pentru n 0:
U
n
=
a
n
b
n
a b
, V
n
= a
n
+b
n
.
172 CAPITOLUL 10. TESTE DE PRIMALITATE
Aceste siruri se numesc sirurile Lucas asociate numerelor p si q. Un
caz particular cunoscut se obt ine pentru p = 1, q = 1. Atunci, U
n
este
sirul numerelor Fibonacci.
Lema 10.4.2 Sirurile Lucas verica urmatoarele relat ii:
V
2n+2
= (p
2
2q)V
2n
q
2
V
2n2
, (10.3)
U
2n+2
= (p
2
2q)U
2n
q
2
U
2n2
, (10.4)
pentru orice n 1.
Demonstrat ie. Aplicam relat ia ( 10.1) si obt inem:
U
2n+2
= pU
2n+1
qU
2n
= p (pU
2n
qU
2n1
) qU
2n
= (p
2
q)U
2n
pqU
2n1
= (p
2
2q)U
2n
+q (U
2n
pU
2n1
)
= (p
2
2q)U
2n
q
2
U
2n2
.
Cealalta relat ie se obt ine n acelasi mod.
Lema 10.4.3 Fie m un numar natural, relativ prim cu p si cu q. Notam
p

q(p
2
2q) (mod m). Atunci, sirurile (U

n
)
n0
, (V

n
)
n0
denite prin
U

n
= pq
1n
U
2n
(mod m), (10.5)
V

n
= q
n
V
2n
(mod m), (10.6)
pentru orice n 0, sunt sirurile Lucas, calculate modulo m, asociate
numerelor p

si 1.
Demonstrat ie. Aratam ca sirul (U

n
)
n0
verica relat ia ( 10.1). Pentru
aceasta,
U

0
pqU
0
= 0 (mod m), U

1
pU
2
pp 1 (mod m).
Folosind lema 10.4.2, pentru n 1 obt inem:
U

n+1
p q
n
U
2n+2
p q
n
(p
2
2q)U
2n
pq
2n
U
2n2
pq
1n
U
2n
q(p
2
2q) pq
2n
U
2(n1)
p

n
1 U

n1
.

In mod analog, se arata ca


V

0
2 (mod m), V

1
p

(mod m), V

n+1
= p

n
V

n1
.
10.4. TESTE N+1. TESTUL LUCAS-LEHMER 173
Se poate stabili usor ca sirurile Lucas verica urmatoarele identitat i:
U
2n
= U
n
V
n
(10.7)
U
2n+1
= U
n+1
V
n
q
n
(10.8)
V
2n
= V
2
n
2q
n
, n 1 (10.9)
V
2
n
= dU
2
n
+ 4q
n
(10.10)
V
2n+1
= V
n+1
V
n
pq
n
. (10.11)
Aceste formule permit calculul elementelor din sir pentru valori mari
ale lui n, mai ales daca n descompunerea lui n apar mult i factori pari.
Lema 10.4.4 Pentru p, q, a, denit i anterior si d care nu este patrat
modulo n, e 2a s+t

d (mod n) pentru s, t numere ntregi cu aceeasi


paritate. Daca n este prim, atunci 2a
n
s t

d (mod n).
Sa reformulam aceasta lema folosind sirul U
n
. Observam ca lema
arma cu necesitate ca a
n
este conjugatul complex al lui a modulo n.
Din acest motiv, le nmult im si rezulta:
Lema 10.4.5 Cu p, q ca mai sus, daca n este prim, atunci
U
n+1
0 (mod n).
Folosind aceste rezultate putem enunt a teorema corespunzatoare teo-
remei 10.3.1:
Teorema 10.4.1 Fie n > 1 un numar impar. Daca exista un sir Lucas
astfel ncat sunt vericate condit iile:
1.
_
d
n
_
= 1, (n, dp) = 1, U
n+1
0 (mod n)
2. Pentru orice factor prim r al lui n + 1,
_
Un+1
r
, n
_
= 1,
atunci n este prim.
De ment ionat ca putem folosi valori diferite pentru p, q cat timp valoarea
lui d nu se modica.
174 CAPITOLUL 10. TESTE DE PRIMALITATE
Un caz particular al acestui test este urmatorul, specic numerelor
Mersenne:
Teorema 10.4.2 (Testul Lucas-Lehmer(1930)) Fie M
n
= 2
n
1,
al n lea numar Mersenne. Consideram sirul s
k
denit recurent:
s
0
= 4, s
k+1
s
2
k
2 (mod M
n
), k 1.
Pentru n 3 numar prim, M
n
este numar prim Mersenne daca si numai
daca s
n2
0 (mod M
n
).
Demonstrat ie. Vom aplica testul corespunzator sirurilor Lucas enunt at
n teorema 10.4.1.
Alegem p = 2, q = 2. Atunci, d = 12.
Calculam mai ntai simbolul
_
3
M
n
_
. Folosind legea reciprocitat ii
patratice si lema lui Gauss, obt inem:
_
3
M
n
_
=
_
M
n
3
_
=
_
2
3
_
= 1.
Obt inem
_
d
M
n
_
=
_
3
M
n
_
= 1.

In cazul n care, n teorema 10.4.1, alegem pentru n numarul Mersenne


M
n
, cele doua condit ii din enunt ul teoremei devin:
1. U
Mn+1
0 (mod M
n
)
2.
_
UM
n
+1
2
, M
n
_
= 1.
Aratam ca acestea sunt echivalente cu condit ia
VMn+1
2
0 (mod M
n
). (10.12)
Presupunem ca cele doua condit ii ale testului se verica. Atunci, din
a doua relat ie, rezulta ca UM
n
+1
2
are invers modulo M
n
.
Din ( 10.7), stim ca U
Mn+1
= UM
n
+1
2
VM
n
+1
2
. Prima condit ie implica
atunci, VM
n
+1
2
0 (mod M
n
).
Reciproc, daca ( 10.12) se verica, prima condit ie este imediata.
Fie t un divizor al lui M
n
. Atunci, t este numar impar. Sa presupunem
10.4. TESTE N+1. TESTUL LUCAS-LEHMER 175
ca t [ UM
n
+1
2
.

In cazul nostru, relat ia ( 10.10) arata ca


V
2
Mn+1
2
= dU
2
Mn+1
2
+ 4q
M
n
+1
2
.
Obt inem V
2
M
n
+1
2
12U
2
M
n
+1
2
= 4(2)
Mn+1
2
.
Aplicam (10.12) si astfel, M
n
[ 12U
2
M
n
+1
2
+ 4(2)
Mn+1
2
.

In nal rezulta t [ 4(2)


Mn+1
2
, adica t este numar par.
Aceasta contradict ie arata ca M
n
si UM
n
+1
2
sunt prime ntre ele.
Pentru a ncheia demonstrat ia acestui test, aplicam lema 10.4.3 pen-
tru p = 2, q = 2, m = M
n
. Atunci, p

= 4 si (2)
n
V

n
V
2n
(mod M
n
).
Astfel, folosind ( 10.9),
V

2n
= (2)
2n
V
4n
(2)
2n
_
V
2
2n
2(2)
2n
_
V
2
n
2 (mod M
n
).
Deci, V

2n
= V
2
n
2, pentru n > 0.
Daca notam s
j
= V

2
j
, pentru j 0, obt inem sirul:
s
0
= V

1
= p

= 4, s
j+1
= V

2
j+1
= V

22
j
=
_
V

2
j
_
2
2 = s
2
j
2, j > 0.
De aici, relat ia ( 10.12) este echivalenta cu
V
2
n1 = V
22
n2 = (2)
2
n2
V

2
n2 = (2)
2
n2
s
n2
.
Astfel, cele doua condit ii din testul de primalitate 10.4.1 sunt echiva-
lente cu s
n2
0 (mod M
n
).
Valoarea s
n2
poarta numele de reziduu Lucas-Lehmer al lui n.
Acest test este deosebit de rapid deoarece nu foloseste mpart iri.
Spre exenplu, pentru n = 7, M
7
= 2
7
1 = 127. Sirul este dat de
s
0
= 4, s
1
14 (mod 127), s
2
67 (mod 127), s
3
42 (mod 127),
s
4
111 (mod 127), s
5
0 (mod 127). Astfel, M
7
este prim.
Algoritm 10.4.1 (Algoritmul Lucas-Lehmer)
INPUT: un numar Mersenne M
n
= 2
n
1 cu n 3.
OUTPUT: un raspuns referitor la primalitatea lui M
n
.
1. Se verica prin metoda obisnuit a daca n are un divizor d cu
2 d

n. Daca exista, se returneaza numar compus si se opreste.


2. s 4.
176 CAPITOLUL 10. TESTE DE PRIMALITATE
3. Pentru k de la 1 la n 2 calculeaza:
3.1. s (s
2
2) mod M
n
.
4. Daca s = 0 returneaza numar prim. Altfel, returneaza
numar compus.
10.5 Testul Fermat
Din teorema 3.4.4 stim ca, daca n este numar prim si b Z, atunci
b
n
b (mod n). Cu alte cuvinte, daca exista un ntreg b pentru care
b
n
,= b (mod n), atunci n este numar compus.
De exemplu, pentru n = 129 si b = 2 obt inem 2
129
=
_
2
7
_
18
8 =
128
18
8 (1)
18
8 8 (mod 129).

In China antica numerele n pentru care 2


n
2 (mod n) se considerau
prime. Dar, reciproca micii teoreme a lui Fermat nu este adevarata. De
exemplu, pentru numarul compus n = 341 = 11 31 obt inem:
2
10
1 (mod 11) (10.13)
2
340
=
_
2
10
_
34
1 (mod 11) (10.14)
2
340
=
_
2
5
_
68
= 32
68
1 (mod 31) (10.15)
Din ( 10.14) si ( 10.15) rezulta ca 2
340
1 (mod 341). Astfel, chiar daca
341 este compus, 2
341
2 (mod 341).
Denit ie 10.5.1 Fie b 2 un numar natural. Un numarul natural
compus n care verica relat ia:
b
n
b (mod n) (10.16)
se numeste pseudoprim cu baza b.
Tabelul B.1 (vezi Anexa B) prezinta cele mai mici numere pseudo-
prime cu primele 100 de baze.
Observat ie 10.5.1 Daca (b, n) = 1, congruent a ( 10.16) este echiva-
lenta cu
b
n1
1 (mod n) (10.17)
10.5. TESTUL FERMAT 177
Lema 10.5.1 Fie d, n numere naturale astfel ncat d [ n. Atunci,
2
d
1 [ 2
n
1.
Teorema 10.5.1 Exista o innitate de numere pseudoprime cu baza 2.
Demonstrat ie. Aratam ca pentru n, numar pseudoprim impar cu baza
2, obt inem m = 2
n
1 numar pseudoprim cu baza 2. Daca demonstram
aceasta armat ie, cum 341 este pseudoprim cu baza 2, putem construi
o innitate de numere pseudoprime impare cu baza 2 formand sirul de
numere n
0
= 341, n
k
= 2
n
k1
1 pentru k 1. Sirul ind strict crescator,
toate numerele gasite sunt diferite ntre ele.
Daca n este pseudoprim impar, atunci n este compus si verica ( 10.17).
Consideram d un divizor netrivial al lui n. Din lema anterioara rezulta
ca 2
d
1 este divizor al lui m si se observa ca el este diferit de 1 si m.
Deci, m este compus.
Din 2
n
2 (mod n) obt inem 2
n
2 = kn pentru un k natural. Atunci,
2
m1
= 2
2
n
2
= 2
kn
. Aplicam din nou lema si obt inem 2
n
1 [ 2
kn
1
adica m [ 2
m1
1. Astfel, 2
m1
1 (mod m).
Presupunem ca relat ia 2
n1
1 (mod n) este vericata pentru
numarul impar n. Atunci, n poate numar prim sau pseudoprim cu baza
2. Pentru a stabili cu exactitate natura sa, trebuie testat n n raport cu
alte baze. Daca gasim un b, prim cu n, pentru care b
n1
,= 1 (mod n),
atunci n este compus.
De exemplu, pentru 341 care este pseudoprim cu baza 2, testam daca
relat ia ( 10.17) este vericata pentru b = 7. Observam ca:
7
3
= 343 2 (mod 341) (10.18)
2
10
= 1024 1 (mod 341) (10.19)
Din aceste relat ii,
7
340
=
_
7
3
_
113
7 2
113
7 =
_
2
10
_
11
2
3
7 8 7 56 ,= 1 (mod 341).
Deci, 341 este compus.
Dar, exista numere compuse n care verica relat ia ( 10.17), pentru
orice baze b prime cu n. Spre exemplu, daca alegem n = 561 = 3 11 17
178 CAPITOLUL 10. TESTE DE PRIMALITATE
si o baza b unde (b, n) = 1, obt inem ca (b, 3) = 1, (b, 11) = 1, (b, 17) = 1.
Aplicand teorema 3.4.3, obt inem:
b
560
=
_
b
2
_
280
1 (mod 3) (10.20)
b
560
=
_
b
10
_
56
1 (mod 11) (10.21)
b
560
=
_
b
16
_
35
1 (mod 17) (10.22)
de unde b
560
1 (mod 561).
Denit ie 10.5.2 Un numar natural compus n care verica relat ia
( 10.17) pentru orice b numar relativ prim cu n, se numeste numar
Carmichael.

In tabelul B.2, din cadrul Anexei B, alaturi de numerele pseudoprime cu


baza 2 mai mici decat 41041, sunt ment ionate si numerele Carmichael
existente pana la aceasta limita.
Propozit ie 10.5.1 Fie n un numar natural impar.
1) Daca n se divide cu patratul unui numar natural > 1, atunci n nu
este un numar Carmichael.
2) Daca n este liber de patrate, atunci n este numar Carmichael daca
si numai daca p 1 [ n 1 pentru ecare divizor prim p al lui n.
Demonstrat ie. 1) Presupunem ca p
2
[ n, unde p este un numar prim. Fie
r o radacina primitiv modulo p
2
. Atunci, ord
p
2r = p(p 1). Notam cu
n
1
produsul tuturor numerelor prime diferite de p care divid n. Aplicand
teorema chinezeasca a resturilor, sistemul
_
x r (mod p
2
)
x 1 (mod n
1
)
are solut ie unica pe b. Atunci, b este radacina primitiva modulo p
2
si
este prim cu n deoarece nu este divizibil cu p sau cu alt factor prim care
divide n
1
.
Vom arata ca n nu este pseudoprim cu baza b, deci nu va numar
Carmichael.
Pentru aceasta, presupunem contrariul, adica b
n1
1 (mod n). Atunci,
din p
2
[ n, rezulta b
n1
1 (mod p
2
). Dar, ord
p
2b = p(p 1) implica
10.5. TESTUL FERMAT 179
p(p 1) [ n 1 de unde obt inem p [ n 1. Din p [ n rezulta p = 1 ce
contrazice faptul ca p este prim.
2)

In acest caz, n = p
1
p
2
. . . p
k
unde p
i
sunt numere prime distincte.
Presupunem mai ntai ca p
i
1 [ n 1 pentru ecare 1 i k. Atunci,
pentru ecare i exista t
i
astfel ncat n1 = t
i
(p
i
1). Fie b unntreg prim
cu n. Aplicam teorema 3.4.3 si obt inem b
n1
=
_
b
pi1
_
ti
1 (mod p
i
).
Din corolarul 3.1.2, rezulta b
n1
1 (mod n).
Reciproc, presupunem ca n este numar Carmichael dar exista un p
j
pentru care p
j
1 n 1. Atunci, e r o radacina primitiva modulo p
j
.
Ca n demonstrat ia primului punct, gasim un ntreg b, prim cu n, care
verica
_
_
_
b r (mod p
j
)
b 1
_
mod
n
p
j
_
Atunci, ca si nainte, (b, n) = 1 si b
n1
r
n1
(mod p
j
). Dar, p
j
1 n1
de unde, r
n1
,= 1 (mod p
j
). Astfel, b
n1
,= 1 (mod p
j
) ceea ce arata ca
b
n1
,= 1 (mod n), fals.
Propozit ie 10.5.2 Un numar Carmichael trebuie sa e produsul a cel
put in trei factori primi distinct i.
Demonstrat ie. Propozit ia anterioara a stabilit ca orice numar Carmichael
este liber de patrate. Aratam ca un astfel de numar nu poate un
produs de doua numere prime distincte. Pentru aceasta, e n = pq
unde p, q sunt prime, distincte. Alegem p < q. Daca n este un numar
Carmichael, atunci, conform propozit iei anterioare, q 1 [ n 1. Deci,
n 1 0 (mod q 1). Pe de alta parte, din n 1 = p(q 1 + 1) 1,
obt inem n 1 p 1 (mod q 1).
Dar, din 0 < p 1 < q 1 rezulta n 1 ,= 0 (mod q 1). Aceasta
contradict ie ncheie demonstrat ia.
Observat ie 10.5.2

In anul 1992, deci sucient de recent, Alford, Gran-
ville si Pomerance au demonstrat ca exista o innitate de numere
Carmichael (vezi [1]).
Mica teorema a lui Fermat arma ca pentru un numar prim n si a un
ntreg , 1 a n 1, atunci a
n1
1 (mod n). Dupa cum am vazut,
reciproca teoremei lui Fermat nu este adevarata.
180 CAPITOLUL 10. TESTE DE PRIMALITATE
Ideea testului Fermat este urmatoarea:
Pentru numarul n, a carui primalitate o cercetam, alegem b > 1 si cal-
culam b
n1
(mod n). Daca rezultatul nu este 1, atunci numarul este
compus si b se numeste martor Fermat al faptului ca n este compus.
Daca este egal cu 1, atunci n este prim sau pseudoprim cu baza b.
Acest test sta la baza testelor probabilistice de primalitate. El nu
este cu adevarat un test probabilistic deoarece el nu poate distinge ntre
numerele prime si numerele Carmichael.
Algoritm 10.5.1 (Algoritm Fermat)
INPUT: un numar n > 2 impar, un parametru de securitate t > 1.
OUTPUT: un raspuns referitor la primalitatea lui n.
1. Pentru i de la 1 la t :
1.1. Alege aleator un ntreg b cu 2 b n 2.
1.2. Calculeaza r = b
n1
mod n folosind algoritmul 3.1.1.
1.3. Daca r ,= 1, atunci returneaza numar compus si
se opreste
2. Returneaza numar prim.
10.6 Testul Solovay-Strassen
Fie p numar prim impar si b Z, cu p b.
Conform criteriului lui Euler, b
p1
2

_
b
p
_
(mod p).
Deci, daca dorim sa testam daca un numar natural n este prim,
putem alege un b, prim cu n si vericam daca b
n1
2

_
b
n
_
(mod n).
Daca congruent a nu se verica, atunci n este compus.
De exemplu, pentru n = 341 si b = 2, obt inem 2
170
1 (mod 341).
Din 341 3 (mod 8), rezulta
_
2
341
_
= 1.
Deci, 2
170
,=
_
2
341
_
(mod 341), de unde, 341 este compus.
Denit ie 10.6.1 Un numar natural compus n, care verica congruent a
b
n1
2

_
b
n
_
(mod n), (10.23)
10.6. TESTUL SOLOVAY-STRASSEN 181
pentru b Z, (b, n) = 1, se numeste numar Euler pseudoprim cu baza b.
De exemplu, n = 1105 este Euler pseudoprim cu baza b = 2 deoarece
2
552
1 (mod 1105) si, din 1105 1 (mod 8), rezulta
_
2
1105
_
= 1.
Teorema 10.6.1 Daca n este Euler pseudoprim cu baza b, atunci n este
pseudoprim cu baza b.
Demonstrat ie. Cum n este Euler pseudoprim cu baza b, congruent a
b
n1
2

_
b
n
_
(mod n)
este vericata. Astfel, b
n1

_
b
n
_
2
(mod n). Dar,
_
b
n
_
= 1, de
unde b
n1
1 (mod n).
Observat ie 10.6.1 Trebuie sa remarcam faptul ca nu orice numar pseu-
doprim este Euler pseudoprim. Astfel, din exemplul anterior, 341, despre
care stim ca este pseudoprim cu baza 2, nu este Euler pseudoprim cu baza
2.
Lema 10.6.1 Fie n numar impar care nu este patrat perfect. Atunci
exista cel put in un numar natural b, 1 < b < n, relativ prim cu n, pentru
care
_
b
n
_
= 1.
Demonstrat ie. Daca n este numar prim, propozit ia 7.1.1 ne asigura de
existent a unui astfel de b.
Consideram acum ca n este compus. T inand cont de condit ia impusa
lui n, aceea ca n nu este patrat perfect, putem scrie n = r s, unde
(r, s) = 1 si r = p
a
, cu p prim impar, a numar impar. Fie t un non-
rest patratic modulo p (existent a lui este asigurata de propozit ia 7.1.1).
Folosind teorema chinezeasca a resturilor, exista 1 < b < n, prim cu n
care verica
_
b t (mod r)
b 1 (mod s)
182 CAPITOLUL 10. TESTE DE PRIMALITATE
Atunci,
_
b
r
_
=
_
b
p
a
_
=
_
b
p
_
a
= (1)
a
= 1 si
_
b
s
_
= 1. De aici,
_
b
n
_
=
_
b
r
_

_
b
s
_
= 1.
Lema 10.6.2 Fie n numar compus impar. Atunci, exista cel put in un
1 < b < n, prim cu n, pentru care b
n1
2
,=
_
b
n
_
(mod n).
Demonstrat ie. Vom presupune ca nu exista un astfel de b, adica, pen-
tru toate numerele b mai mici decat n si prime cu n, avem b
n1
2

_
b
n
_
(mod n). Atunci, pentru ecare astfel de b, obt inem:
b
n1

_
b
n
_
2
= (1)
2
= 1 (mod n).
De aici, rezulta ca n este numar Carmichael. Astfel, n = p
1
p
2
. . . p
k
,
unde p
i
sunt numere prime distincte.
Vom arata ca b
n1
2
1 (mod n), pentru orice 1 < b < n, prim cu n.
Pentru aceasta, reducem la absurd si presupunem ca exista un 1 < b < n,
prim cu n, pentru care b
n1
2
,= 1 (mod n). Aplicam teorema chinezeasca
a resturilor pentru a obt ine un numar 1 < a < n, prim cu n, care verica
sistemul:
_
a b (mod p
1
)
a 1 (mod p
2
. . . p
k
)
Rezulta a
n1
2
b
n1
2
1 (mod p
1
) si a
n1
2
1 (mod p
2
. . . p
k
).
Deci, a
n1
2
,= 1 (mod n), rezultat ce contrazice presupunerea facuta
la nceputul demonstrat iei.
Astfel, b
n1
2
1 (mod n), pentru orice 1 < b < n, prim cu n. De aici,
t inand cont de ipoteza de lucru, obt inem b
n1
2

_
b
n
_
= 1 (mod n),
pentru orice 1 < b < n, prim cu n.
Acest rezultat contrazice armat ia facuta n lema 10.6.1, deci pre-
supunerea facuta la nceputul demonstrat iei este falsa.
Teorema 10.6.2 (Solovay) Fie n numar compus impar. Numarul nu-
merelor mai mici decat n, prime cu n, n raport cu care n este Euler
pseudoprim este mai mic decat
(n)
2
.
10.6. TESTUL SOLOVAY-STRASSEN 183
Demonstrat ie. Din lema 10.6.2, exista un 1 < b < n, prim cu n, pentru
care b
n1
2
,=
_
b
n
_
(mod n). Fie a
1
, a
2
, . . . , a
m
toate numerele mai mici
dacat n, prime cu n pentru care
a
n1
2
j

_
a
j
n
_
(mod n) (10.24)
pentru 1 j m. Fie r
1
, r
2
, . . . , r
m
resturile modulo n ale numerelor
ba
1
, ba
2
, . . . , ba
m
. Se verica usor ca r
j
sunt distinct i si primi cu n, pentru
1 j m.
Daca pentru un j ar avea loc congruent a r
n1
2
j

_
r
j
n
_
(mod n), atunci
(ba
j
)
n1
2

_
ba
j
n
_
(mod n). Astfel, b
n1
2
a
n1
2
j

_
b
n
_

_
a
j
n
_
(mod n).
Din relat ia ( 10.24), obt inem b
n1
2

_
b
n
_
(mod n), ceea ce contrazice
alegerea lui b.
Deci, pentru orice 1 j m, r
n1
2
j
,=
_
r
j
n
_
(mod n).
Cum pentru ecare j, numerele a
j
verica congruent ele ( 10.24), n
timp ce r
j
nu le verica, cele doua mult imi formate cu aceste elemente
sunt disjuncte. Am obt inut astfel 2m numere mai mici decat n si prime
cu n. Deci, 2m (n), de unde m
(n)
2
.
Observat ie 10.6.2 Daca n este numar compus si se alege aleator un
numar 1 < b < n, prim cu n, probabilitatea ca n sa e Euler pseudoprim
cu baza b este mai mica decat
1
2
.
Testul probabilistic de primalitate Solovay
4
-Strassen
5
a fost primul
test popularizat la aparit ia criptograei cu cheie publica, n particular,
a criptosistemului RSA. El nu mai este folosit, deoarece testul Miller-
Rabin este o alternativa mai ecienta si cel put in la fel de corecta.
4
Robert Solovay, profesor la Berkeley, are multe contribut ii remarcabile n mate-
matica, gasind solut ii decisive pentru probleme dicile de interes general, cum ar
testarea primalitat ii.
5
Volker Strassen, matematician german, care, pentru munca sa n studiul testarii
primalitat ii, a primit n anul 2003 premiul Paris Kanellakis al ACM, Association for
Computing Machinery.
184 CAPITOLUL 10. TESTE DE PRIMALITATE
Criteriul lui Euler, teorema 7.1.1, precizeaza ca, pentru un numar
prim n, avem a
n1
2

_
a
n
_
(mod n), pentru orice ntreg a relativ prim
cu n.
Testul de fat a se bazeaza pe acest criteriu. Astfel, daca pentru un
a obt inem (a, n) ,= 1 sau a
n1
2
,=
_
a
n
_
(mod n), numarul este compus
iar a se numeste martor Euler (pentru faptul ca numarul este compus)
pentru n.

In caz contrar, n este prim sau Euler pseudoprim cu baza a.
Teorema 10.6.3 Fie n un numar compus impar. Probabilitatea ca tes-
tul Solovay-Strassen, aplicat pentru t baze diferite, sa declare numarul n
ca ind prim este mai mica decat
_
1
2
_
t
.
Algoritm 10.6.1 (Test Solovay-Strassen)
INPUT: un numar n > 2 impar, un parametru de securitate t > 1.
OUTPUT: un raspuns referitor la primalitatea lui n.
1. Pentru i de la 1 la t :
1.1. Alege aleator un ntreg a cu 2 a n 2.
1.2. Calculeaza r = a
n1
2
mod n folosind algoritmul 3.1.1.
1.3. Daca r ,= 1, si r ,= n 1, atunci returneaza
numar compus si se opreste.
1.4. Calculeaza simbolul Jacobi s =
_
a
n
_
folosind
algoritmul 7.3.1
1.5. Daca r ,= s mod n, returneaz a numar compus si
se opreste.
2. Returneaza numar prim.
Observam ca, daca d = (a, n) > 1, atunci, d [ a
n1
2
(mod n). Astfel,
testand la pasul 1.3. daca r ,= 1, eliminam necesitatea de a verica daca
(a, n) ,= 1.
10.7. TESTUL MILLER-RABIN 185
10.7 Testul Miller-Rabin
Sa presupunem ca n verica congruent a ( 10.17) pentru b prim cu n.
Putem luan considerare restul lui b
n1
2
modulo n. Astfel, daca x = b
n1
2
,
atunci congruent a devine x
2
1 (mod n).

In cazul n care n este prim,
x 1 (mod n).
Deci, daca congruent a ( 10.17) este vericata, putem vedea daca
b
n1
2
1 (mod n).

In situat ia n care aceasta relat ie nu se verica,
atunci n este compus.
Spre exemplu, daca alegem cel mai mic numar Carmichael n = 561,
pentru b = 5 obt inem 5
5611
2
= 5
280
67 (mod 561), deci 561 este
compus.
Denit ie 10.7.1 Fie n > 2 numar natural impar cu n 1 = 2
s
t unde
s, t sunt numere naturale cu t impar. Spunem ca n trece testul Miller
pentru baza b, un numar natural, prim cu n, daca este vericata una
dintre urmatoarele condit ii:
b
t
1 (mod n) (10.25)
0 j s 1, b
2
j
t
1 (mod n). (10.26)
Teorema 10.7.1 Fie n un numar prim si b un numar natural, prim cu
n. Atunci, n trece testul Miller pentru baza b.
Demonstrat ie. Fie n 1 = 2
s
t cu t impar. Pentru ecare 0 k s
consideram
x
k
= b
n1
2
k
= b
2
sk
t
.
Din teorema 3.4.3, cum n este prim, x
0
= b
n1
1 (mod n). Atunci,
x
2
1
=
_
b
n1
2
_
2
= x
0
1 (mod n), de unde x
1
1 (mod n).
Daca x
1
1 (mod n), atunci x
2
2
= x
1
1 (mod n), de unde x
2

1 (mod n). Pe caz general, daca am gasit
x
0
x
1
x
2
. . . x
k
1 (mod n), k < s,
atunci x
2
k+1
1 (mod n) si obt inem x
k+1
1 (mod n).
Continuand procedeul, obt inem x
k
1 (mod n) pentru orice k sau exista
un j pentru care x
j
1 (mod n). Deci, n trece testul Miller pentru
baza b.
186 CAPITOLUL 10. TESTE DE PRIMALITATE
Propozit ie 10.7.1 Daca n trece testul Miller pentru baza b, el este
pseudoprim cu baza b.
Demonstrat ie. Presupunem aceleasi notat ii. Daca n verica condit ia
( 10.25), atunci b
n1
= (b
t
)
2
s
1 (mod n).

In cazul n care este vericata


condit ia ( 10.26), b
n1
=
_
b
2
j
t
_
2
sj
(1)
2
sj
1 (mod n).
Denit ie 10.7.2 Spunem ca un numar compus n este tare pseudoprim
cu baza b unde (b, n) = 1 daca el trece testul Miller pentru baza b.
Spre exemplu, daca consideram n = 2047 = 23 89, n 1 = 2 1023.
Observam ca
2
2046
2
= 2
1023
= (2
11
)
93
1 (mod 2047).
Deci, 2047 este tare pseudoprim cu baza 2.
Teorema 10.7.2 Exista o innitate de numere tari pseudoprime cu
baza 2.
Demonstrat ie. Aratam ca daca n este pseudoprim impar cu baza 2,
atunci m = 2
n
1 este tare pseudoprim cu baza 2.
Fie n numar compus impar si 2
n1
1 (mod n). Atunci, 2
n1
1 = kn,
cu k impar.
m1 = 2
n
2 = 2(2
n1
1) = 2kn.
Deci, n acest caz, s = 1, t = kn impar.
2
m1
2
= 2
nk
= (2
n
)
k
= (m+ 1)
k
1 (mod m).
Astfel, m trece testul Miller pentru baza 2. Din teorema 10.5.1, exista o
innitate de numere pseudoprime cu baza 2, si astfel obt inem o innitate
de numere tari pseudoprime cu baza 2.
Teorema 10.7.3 Daca n este tare pseudoprim cu baza b, atunci el este
Euler pseudoprim cu baza b.
Demonstrat ie. Fie n 1 = 2
s
t, cu t impar si s natural nenul.
Fie n =
m

i=1
p
i
i
, descompunerea sa canonica n factori primi.
10.7. TESTUL MILLER-RABIN 187
Presupunem ntai cazul cand b
t
1 (mod n).
Fie p un divizor prim al lui n. Atunci, b
t
1 (mod p), de unde ord
p
b [ t.
Cum t este impar, rezulta ord
p
b numar impar.
Dar, ord
p
b [ (p) = p 1, de unde ord
p
b [
p1
2
.
Astfel, b
p1
2
1 (mod p) si, aplicand criteriul lui Euler,
_
b
p
_
= 1,
pentru orice divizor prim p al lui n. Atunci,
_
b
n
_
=
m

i=1
_
b
p
i
_

i
= 1.
Din b
t
1 (mod n) rezulta b
n1
2
= (b
t
)
2
s1
1 (mod n).
Pentru cazul n care exista 0 j s1 astfel ca b
2
j
t
1 (mod n),
obt inem ca b
2
j
t
1 (mod p), pentru orice divizor prim p al lui n.
Ridicand la patrat, rezulta b
2
j+1
t
1 (mod p), de unde ord
p
b [ 2
j+1
t.
Din ord
p
b 2
j
t, avem ord
p
b = 2
j+1
c, cu c numar impar.
2
j+1
[ ord
p
b si ord
p
b [ p 1, implica 2
j+1
[ p 1. Deci, exista d Z,
astfel ncat p = 2
j+1
d + 1.
Din b
ordpb
2
1 (mod p), rezulta
_
b
p
_
b
p1
2
=
_
b
ord
p
b
2
_
p1
ord
p
b
(1)
p1
2
j+1
c
(mod p).
Cum c este impar, (1)
c
1 (mod p), de unde
_
b
p
_
(1)
p1
2
j+1
(1)
d
(mod p).
Am aratat ca, pentru ecare 1 i m, exista d
i
Z, astfel ca
divizorii p
i
sa e de forma p
i
= 2
j+1
d
i
+ 1. Atunci,
n =
m

i=1
p

i
i
=
m

i=1
_
2
j+1
d
i
+ 1
_
i

i=1
_
1 + 2
j+1

i
d
i
_
1 + 2
j+1
m

i=1
d
i

i
(mod 2
j+2
).
Deci, 2
s1
t =
n 1
2
2
j
m

i=1
d
i

i
(mod 2
j+1
).
188 CAPITOLUL 10. TESTE DE PRIMALITATE
Astfel, obt inem t 2
sj1

i=1
d
i

i
(mod 2). De aici,
b
n1
2
=
_
b
2
j
t
_
2
sj1
(1)
2
sj1
= (1)
m

i=1
d
i

i
(mod n).
Pe de alta parte,
_
b
n
_
=
m

i=1
_
b
p
i
_

i
=
m

i=1
_
(1)
di
_
i
=
m

i=1
(1)
idi
= (1)
m

i=1
idi
.
Deci, si n acest caz, n este Euler pseudoprim cu baza b.
Observat ie 10.7.1 Nu orice numar Euler pseudoprim cu baza b este
tare pseudoprim cu baza b. De exemplu, am vazut ca 1105 este Euler
pseudoprim cu baza 2.
1104 = 2
4
69. Calculand, obt inem:
2
69
138 ,= 1 (mod 1105), 2
276
781 (mod 1105),
2
138
259 (mod 1105), 2
552
1 ,= 1 (mod 1105).
De aici, 1105 nu este tare pseudoprim cu baza 2.
Cu toate acestea, n anumite cazuri particulare, cele doua tipuri de
numere coincid.
Propozit ie 10.7.2 Daca n 3 (mod 4) si n este Euler pseudoprim cu
baza b, atunci el este tare pseudoprim cu baza b.
Demonstrat ie. Din n 3 (mod 4), putem scrie n 1 = 2 t, unde t este
impar. n este Euler pseudoprim, deci b
t
= b
n1
2

_
b
n
_
(mod n). Cum
_
b
n
_
= 1, rezulta b
t
1 (mod n), adica n este tare pseudoprim cu
baza b.
Propozit ie 10.7.3 Daca n este Euler pseudoprim cu baza b si
_
b
n
_
= 1, atunci n este tare pseudoprim cu baza b.
10.7. TESTUL MILLER-RABIN 189
Demonstrat ie. Fie n 1 = 2
s
t, unde t este impar si s natural. Din
ipoteza, obt inem b
2
s1
t
= b
n1
2

_
b
n
_
1 (mod n). Deci, n este tare
pseudoprim cu baza b.
Notam cu
k
cel mai mic numar tare pseudoprim cu primele k nu-
mere prime alese ca baze.

In anul 1993, Jaeschke a calculat


k
, pentru 5 k 8 si a dat
margini superioare pentru 9 k 11. Astfel,

1
= 2047

2
= 1373653

3
= 25326001

4
= 3215031751

5
= 2152302898747

6
= 3474749660383

7
= 341550071728321

8
= 341550071728321

9
41234316135705689041

10
1553360566073143205541002401

11
56897193526942024370326972321
De asemenea, el a aratat ca exista 101 numere tari pseudoprime cu
bazele 2,3 si 5 mai mici decat 10
12
. Daca adaugam si baza 7 sunt 9 iar
n cazul n care si 11 este ales drept baza, nu exista nici unul.
Observam ca primul numar tare pseudoprim cu bazele 2, 3, 5, 7 este
3215031751. Putem concluziona acum ca, daca aplicam testul Miller
pentru un numar 2, 5 10
10
, diferit de 3215031751, si acesta trece
testul pentru bazele 2, 3, 5, 7, el este prim.
La fel, daca aplicam un test n sapte pasi, rezultatele anterioare per-
mit vericarea primalitat ii tuturor numerelor 3, 4 10
14
.
Testul Miller-Rabin se bazeaza pe not iunea de numar tare pseudo-
prim, prezentata anterior.
Pentru a verica daca un numar impar n este prim sau nu, folosind
acest test, scriem ntai n 1 = 2
s
t unde t este impar si alegem la
ntamplare o baza b, 1 < b < n. Daca n nu trece testul Miller pen-
tru aceasta baza, atunci el este compus. Altfel, n este prim sau tare
pseudoprim cu baza b.
190 CAPITOLUL 10. TESTE DE PRIMALITATE
Teorema 10.7.4 (Rabin) Daca n este nu numar impar compus, acesta
trece testul Miller-Rabin pentru cel mult
n 1
4
baze b cu 1 b n 1.
Pentru a demonstra teorema, avem nevoie de urmatorul rezultat care
este un caz particular al teoremei 6.3.1:
Lema 10.7.1 Fie p un numar prim impar si k, t numere naturale.
Congruent a x
t
1(mod p
k
) are exact (t, p
k1
(p 1)) solut ii necongru-
ente modulo p
k
.
Demonstrat ia teoremei. Fie n = p
k
1
1
p
k
2
2
. . . p
k
m
m
un numar compus
care trece testul Miller pentru baza b. Fie n 1 = 2
s
t, cu t impar.
Atunci, b
n1
1 (mod n), indiferent de condit ia din denit ia testului
Miller care se verica. Conform lemei anterioare, pentru 1 i m,
congruent a x
n1
1 (mod p
ki
i
) are (n1, p
ki1
i
(p
i
1)) = (n1, p
i
1)
solut ii necongruente.
Astfel, folosind teorema chinezeasca a resturilor, obt inem ca exista
m

i=1
(n1, p
i
1) solut ii necongruente ale congruent ei x
n1
1 (mod n).
Consideram doua cazuri:
1. Mai nt ai, presupunem ca exista j, cu 1 j m, pentru care k
j
2.
Observam ca
p
j
1
p
kj
j
=
1
p
kj1
j

1
p
kj
j

2
9
pentru ca, valorile cele mai
mari ale expresiei se obt in cand p
j
= 3 si k
j
= 2. Atunci,
m

i=1
(n 1, p
i
1)
m

i=1
(p
i
1)
_
_

i=j
p
i
_
_

_
2
9
p
k
j
j
_

2
9
n.
Deci, numarul de solut ii necongruente modulo n ale congruent ei
x
n1
1 (mod n) este
2
9
n.
Observam ca pentru n 9,
2
9
n
1
4
(n 1). Astfel, exista cel mult
n 1
4
baze 1 b n, n raport cu care n este tare pseudoprim.
2. Presupunem acun n = p
1
p
2
. . . p
m
.
Pentru ecare i, e p
i
1 = 2
s
i
t
i
, cu tot i t
i
impari. Dupa o eventuala
10.7. TESTUL MILLER-RABIN 191
renumerotare, vom avea s
1
s
2
. . . s
m
.
Cu notat iile facute, pentru 1 i m,
(n 1, p
i
1) = 2
min(s,s
i
)
(t, t
i
).
Conform lemei, ecare congruent a x
t
1 (mod p
i
) are T
i
= (t, t
i
) solut ii
necongruente.
Consideram acum congruent ele
x
2
j
t
1 (mod p
i
), 1 i m.
Folosind teorema 6.3.1, stabilim n ce condit ii aceste congruent e au
solut ii.
Daca 0 j s
i
1, pentru ecare i, congruent a are 2
j
T
i
solut ii
necongruente.
Daca j s
i
, atunci (2
j
t, p
i
1) = 2
si
T
i
si
p
i
1
2
si
T
i
=
t
i
T
i
este impar.
Rezulta (1)
t
i
T
i
1 (mod p
i
) si astfel, n acest caz, nu exista solut ii.
Am obt inut urmatorul rezultat:
pentru congruent a x
t
1 (mod n) exista T = T
1
T
2
. . . T
m
solut ii necon-
gruente si
pentru x
2
j
t
1 (mod n), cu 0 j s
1
1 exista 2
jm
T
1
T
2
. . . T
m
solut ii necongruente.

In total, vor exista


T
_
_
1 +
s
1
1

j=0
2
jm
_
_
= T
_
1 +
2
ms
1
1
2
m
1
_
baze b n 1 n raport cu care n este tare pseudoprim.

In acest caz,
(n) = (p
1
1)(p
2
1) . . . (p
m
1) = t
1
t
2
. . . t
m
2
s
1
+s
2
+...+s
m
.
Aratam ca T
_
1 +
2
ms1
1
2
m
1
_

(n)
4
.
Pentru aceasta, cum T = T
1
T
2
. . . T
m
t
1
t
2
. . . t
m
, ramane de demon-
strat ca
_
1 +
2
ms
1
1
2
m
1
_

1
2
s
1
+s
2
+...+s
m

1
4
. (10.27)
192 CAPITOLUL 10. TESTE DE PRIMALITATE
Din s
1
s
2
. . . s
m
, rezulta
_
1 +
2
ms
1
1
2
m
1
_

1
2
s
1
+s
2
+...+s
m

_
1 +
2
ms
1
1
2
m
1
_

1
2
ms
1
=
=
1
2
ms1
+
2
ms1
1
2
ms1
(2
m
1)
=
1
2
ms1
+
1
2
m
1

1
2
ms1
(2
m
1)
=
=
1
2
m
1
+
2
m
2
2
ms
1
(2
m
1)

1
2
m
1
+
2
m
2
2
m
(2
m
1)
=
=
1
2
m
1
+
2
2
m

1
2
m
1
=
1
2
m1
.(10.28)
Daca m 3, din ( 10.28) rezulta ( 10.27).
Pentru m = 2, obt inem n = p
1
p
2
. Daca s
1
< s
2
,
_
1 +
2
2s1
1
3
_

1
2
s1+s2
=
_
1 +
2
2s1
1
3
_

1
2
2s1
2
s2s1
=
=
_
1
3
+
1
3 2
2s
1
1
_

1
2
s
2
s
1

1
2

_
1
3
+
1
6
_
=
1
4
. (10.29)
Astfel, ( 10.27) se verica si n acest caz.
Ramane cazul n care s
1
= s
2
.
Presupunem p
1
> p
2
. Daca T
1
= t
1
, atunci p
1
1 [ n 1.
Din n 1 (mod p
1
1) si n = p
1
p
2
p
2
(mod p
1
1), rezulta
p
2
1 (mod p
1
1). Deci, p
2
> p
1
, ceea ce contrazice alegerea noastra.
Astfel, T
1
,= t
1
. Pentru ca T
1
= (t, t
1
), rezulta t
1
= T
1
d, unde d > 1.
Dar, t
1
, T
1
ind impari, rezulta d 3. Astfel, T
1

t
1
3
.
Daca presupunem p
1
< p
2
si refacem rat ionamentul anterior, obt inem
T
2
,= t
2
, de fapt, T
2

t
2
3
.
Deci, indiferent de presupunerea facuta, T
1
T
2

t
1
t
2
3
. Cum s
1
1,
rezulta
_
1 +
2
2s
1
1
3
_

1
2
2s
1

1
2
.
Astfel, obt inem:
T
1
T
2
_
1 +
2
2s
1
1
3
_

t
1
t
2
2
2s
1
6
=
(n)
6

n 1
6
<
n 1
4
.
10.7. TESTUL MILLER-RABIN 193
Teorema 10.7.5 (Rabin (1980)) Daca n este nu numar impar com-
pus, probabilitatea ca acesta sa treac a testul Miller-Rabin pentru k baze
b cu 1 b n 1 este mai mica decat
1
4
k
.
Astfel, daca alegem 25 de iterat ii pentru testul Miller aplicat unui
numar, probabilitatea ca acesta sa nu e compus este mai mica decat
2
50
.
Cu aceeasi probabilitate, calculatorul poate da erori datorate hardware-
ului, virusilor, utilizatorul poate muri de inima n timpul rularii progra-
mului. Acest lucru subliniaza, nca o data, avantajul folosirii testului.

In practica, nu avem de ales un numar mare de baze b pentru a


aproape siguri ca n este prim. De exemplu, cum am stabilit deja, singurul
numar tare pseudoprim cu bazele 2,3,5,7, mai mic decat 2, 5 10
10
este
3215031751. Astfel, daca n trece testul pentru bazele ment ionate si este
diferit de acesta, el este prim.
Daca consideram un numar impar de 1024 cifre binare si s-ar folosi
44 de valori diferite ale bazei b, am declara, cu o probabilitate mai mica
decat 2
80
, ca numarul este prim. Aceasta probabilitate arata ca n poate
folosit sigur n scopuri criptograce. Oricum, de obicei, se testeaza n
general 6 valori diferite pentru baza pentru a garanta aceasta probabili-
tate, spre deosebire de 90 de iterat ii necesare testului Solovay-Strassen
pentru a asigura aceeasi probalilitate.
Din pacate, nu este total sigur sa ne sprijinim pe un test probabilistic,
chiar daca acesta este rapid si probabilitatea ca el sa esueze este foarte
mica.
O armat ie facuta de

Emile Borel, cred ca merita sa e ment ionata
n acest cadru:
Un fenomen a carui probabilitate de a nu se ntampla este de 10
50
,
nu se va produce de loc sau, cel put in, nu va observat.
(Les Probabilitee et la vie)
Daca am presupune ca exista un numar destul de mic B (depinde de
marimea lui n) astfel ncat, daca n este compus, exista o baza b < B
pentru care n nu trece testul Miller, am spune cu sigurant a ca numarul
n este compus. Astfel, pentru a verica n mod sigur daca numarul
este prim, ar trebui sa aplicam testul pentru primele B baze. O astfel de
194 CAPITOLUL 10. TESTE DE PRIMALITATE
armat ie exista, dar se bazeaza pe Ipoteza generalizata Rieman (GRH),
6
o problema de un milion de dolari a Institutului de Matematica Clay.
7

In forma sa init iala, testul Miller era un test deterministic, bazat pe


GRH, si anume:
Teorema 10.7.6 (Miller) Daca GRH este adevarata si n este numar
compus impar, atunci n nu trece testul Miller pentru o baza b < 2 lg
2
n.
Modicarea facuta de Rabin a transformat testul ntr-un test proba-
bilistic, dar care nu este condit ionat de nici o armat ie nedemonstrata.
Algoritm 10.7.1 (Miller-Rabin)
INPUT: un numar n > 2 impar, un parametru de securitate r > 1.
OUTPUT: un raspuns referitor la primalitatea lui n.
1. Determina s si t astfel nc at n 1 = 2
s
t cu t impar.
2. Pentru i de la 1 la r:
2.1. Alege aleator un ntreg b cu 2 b n 2.
2.2. Calculeaza y = b
t
mod n folosind algoritmul 3.1.1.
2.3. Daca y ,= 1 si y ,= n 1, atunci:
2.3.1. j 1.
2.3.2. Cat timp j s 1 si y ,= n 1 executa:
2.3.2.1. y y
2
mod n.
2.3.2.2. Daca y = 1, atunci returneaza
numar compus si se opreste.
2.3.2.3. j j + 1
2.3.3. Daca y ,= n 1, returneaza numar compus
si se opreste.
3. Returneaza numar prim.

In a 5-a linie a pasului 2.3., daca y = 1, atunci b


2
j
r
1 (mod n). Cum
acesta este cazul cand b
2
j1
r
,= 1 (mod n), n este compus. De fapt,
6
Ipoteza Riemann este o conjectura care a fost enunt at a prima data n 1859 de
Bernhard Riemannn lucrarea sa On the Number of Primes Less Than a Given Mag-
nitude De fapt, sub o forma echivalent a, ea spune ca numerele prime sunt distribuite
cat de regulat posibil, t inand cont de aparit ia lor, ce pare aleatoare n sirul numerelor
naturale.
7
Pentru a sarb atori matematicienii acestui mileniu, Institutul de Matematica Clay
din Cambridge, Massachusetts, a nominalizat sapte probleme importante care nu au
putut demonstrate pan a acum. Gasirea unei demonstrat ii este rasplatita cu cate
un milion de dolari, ecare.

In iunie 2004, Louis DeBranges de Bourcia a armat ca
a demonstrat GRH, fapt care nca nu este conrmat.
10.8. PRIMALITATE FOLOSIND CURBELE ELIPTICE 195
_
b
2
j1
r
1, n
_
este un divizor propriu al lui n.

In ultima linie a pasului
2.3., daca y ,= n1, atunci b este un martor al faptului ca n este compus.
Testul Solovay-Strassen foloseste, spre deosebire de testul Miller-
Rabin, si calculul unui simbol Jacobi, ind mai dicil de implementat si
necesitand mai multe calcule. Din acest motiv, t inand cont si de faptul
ca probabilitatea n acest caz este mai mica, putem renunt a la testul
Solovay-Strassen n favoarea lui Miller-Rabin.
10.8 Primalitate folosind curbele eliptice

In anii 70 s-a ncercat mbunatat irea testele n + 1 si n 1. Adleman,


Pomerance si Rumely au fost cei care au introdus testul de primalitate
APR, n 1979. Acesta este considerat ca ind nceputul erei moderne a
testelor de primalitate. Cohen si Lenstra au mbunatat it acest test care
lucreaza cu numere de 100 cifre n cateva secunde.
Pornind de la ideea de baza a testului Fermat, aceea de a determina
ordinul grupului U (Z
n
) si de a vedea daca acesta este n 1, pasul
urmator facut n vederea obt inerii de noi teste de primalitate a fost de
a modica grupul init ial.
Astfel, n 1986, Goldwasser si Kilian au propus un algoritm bazat pe
curbele eliptice.
Teoria curbelor eliptice, studiata n teoria nunerelor cat si n geome-
tria algebrica, nu se va regasi n cont inutul acestei cart i. Pentru mai
multe informat ii legate de aceasta teorie, se poate studia [12].

In con-
tinuare, va prezentata doar ideea de baza a acestui algoritm.
O curba eliptica este o mult ime de puncte (x, y) care verica ecuat ia
E(a, b) : y
2
= x
3
+ ax + b unde 4a
3
+ 27b
2
,= 0 si un singur punct O,
numit punctul de la innit. Punctele rat ionale de pe o astfel de curba
formeaza un grup n care adunarea este denita prin metoda tangentei
si a coardei. Astfel, daca doua puncte P
1
, P
2
sunt rat ionale (au coordo-
natele rat ionale), dreapta determinata de acestea intersecteaza curba tot
ntr-un punct rat ional pe care l vom nota (P
1
+ P
2
) (Semnul negativ
este necesar pentru ca operat ia sa e asociativa). Daca punctele nu sunt
distincte, folosim tangenta n P
1
la curba. Daca unul dintre puncte este
O, de exemplu P
1
= O, atunci P
1
+P
2
= P
2
.
196 CAPITOLUL 10. TESTE DE PRIMALITATE
Conform unei teoreme datorate lui Mordell, acest grup este nit gene-
rat.
Pentru a aplica algoritmul, se reduce acest grup modulo un numar
prim p si obt inem un grup al carui ordin va folosit aproape la fel ca n
teorema Poklington. S-anlocuit astfel un grup de ordin n1 sau n+1 cu
un altul al carui ordin se aa n intervalul
_
p + 1 2

p, p + 1 + 2

p
_
(teorema Hasse).
10.9 Algoritmul AKS

In anul 2002, Agrawal, Kayal si Saxena au gasit un algoritm determi-


nistic, relativ simplu, care nu se bazeaza pe nici o presupunere nedemon-
strata.
Ideea pentru AKS rezulta dintr-o alta versiune simpla a micii teoreme
a lui Fermat:
Teorema 10.9.1 Fie p > 1 si a un ntreg, relativ prim cu p. Atunci, p
este prim daca si numai daca (x a)
p
(x
p
a) (mod p).
Demonstrat ie. Daca p este prim, p [ C
k
p
, pentru k 1, . . . , p 1.
Atunci, (x a)
p
(x
p
a
p
) (mod n) dupa care nu mai avem decat sa
aplicam mica teorema a lui Fermat pentru a obt ine congruent a nala.
Reciproc, daca presupunem ca p este compus, el are un divizor prim
q. Fie k astfel ncat q
k
este cea mai mare putere a lui q care divide p.
Atunci, q
k
C
q
p
. Daca (q
k
, a
pq
) ,= 1, rezulta q [ a si astfel (a, p) ,= 1,
fals. Deci, (q
k
, a
pq
) = 1.

In nal, obt inem ca x
q
are n membrul stang
al congruent ei coecientul nenul, ceea ce este fals.

In aceasta forma este dicil sa folosim algoritmul, ind prea mult i


coecient i pe care trebuie sa-i vericam. Urmator pas facut a fost acela
de a gasi o condit ie mai simpla si anume:
(x a)
p
(x
p
a) (mod x
k
1, p)
unde a b (mod n, m) nseamna ca a b este suma dintre un multiplu
de n si un multiplu de m.
Congruent a trebuie sa se verice daca p este prim.
O armat ie, fara demonstrat ie pana acum, precizeaza urmatoarele:
daca k > 1 nu divide p si congruent a este adevarata, atunci p este prim
10.9. ALGORITMUL AKS 197
sau p
2
1 (mod k). Odata rezolvata aceasta problema, se va putea da
o versiune mai ecienta acestui test.
Algoritm 10.9.1 (AKS)
INPUT: un numar n > 2.
OUTPUT: un raspuns referitor la primalitatea lui n.
1. Daca n este de forma a
b
cu b > 1, returneaza numar compus
si se opreste.
2. r 2
3. Cat timp r < n, executa:
3.1. Daca (n, r) ,= 1, returneaza numar compus si
se opreste.
3.2. Daca r 2 este prim, executa:
Fie q cel mai mare factor al lui r 1.
Daca q > 4

r lg n si n
r1
q
,= 1 (mod r),
atunci salt la 4.
3.3. r r + 1
4. Pentru a de la 1 la 2

r lg n executa:
4.1. Daca (x a)
n
,= (x
n
a) (mod x
r
1, n),
atunci returneaza numar compus si se opreste.
5. Returneaza numar prim.
Exercit ii propuse
1. Folosind testul Pepin, aratat i ca urmatoarele numere Fermat sunt
prime: F
1
= 5, F
3
= 257, F
4
= 65537.
2. Cu ajutorul testului Pepin, aratat i ca 3 este radacina primitiva
pentru orice numar prim Fermat.
3. Folosind testul Lucas-Lehmer, stabilit i care dintre numerele
Mersenne M
3
, M
5
, M
11
, M
13
sunt prime.
4. Explicat i de ce nu trebuie vericat cu ajutorul testului Fermat
daca un numar Fermat sau un numar Mersenne este prim.
5. Aratat i ca 91 este pseudoprim cu baza 3 iar 45 este pseudoprim
cu bazele 17 si 19.
198 CAPITOLUL 10. TESTE DE PRIMALITATE
6. Fie n un numar impar compus si (b, n) = 1. Daca p este un divizor
prim al lui n, e n

=
n
p
. Aratat i ca n este pseudoprim cu baza b daca
si numai daca b
n

1
1 (mod p). Folosind acest rezultat, aratat i ca nu
exista un numar pseudoprim cu baza 2, 5, sau 7 care sa e de forma
n = 3p cu p numar prim > 3.
7. Gasit i toate bazele b pentru care 15, respectiv 21 este pseudoprim.
8. Determinat i cel mai mic pseudoprim cu baza 5.
9. Fie n = pq cu p, q numere prime impare.
Fie d = (p 1, q 1). Aratat i ca n este pseudoprim cu baza b daca si
numai daca b
d
1 (mod n).
10. Fie m numar natural astfel ncat 6m+ 1, 12m+ 1, 18m+ 1 sunt
toate numere prime. Aratat i ca n = (6m + 1)(12m + 1)(18m + 1) este
numar Carmichael.
11. Aratat i ca urmatoarele numere
1105 = 5 13 17, 1729 = 7 13 19, 2465 = 5 17 29
sunt numere Carmichael.
12. Aratat i ca 561 este cel mai mic numar Carmichael.
13. Fie n Euler pseudoprim cu bazele b
1
si b
2
. Aratat i ca n este Euler
pseudoprim cu bazele b
1
b
2
.
14. Fie n 5 (mod 8) un numar Euler pseudoprim cu baza 2. Aratat i
ca n este tare pseudoprim cu baza 2.
15. Aratat i ca:
i) 561 este tare pseudoprim cu baza 101.
ii) 65 este tare pseudoprim cu bazele 8 si 18.
iii) 1387 este pseudoprim cu baza 2 dar nu este tare pseudoprim cu
baza 2.
16. Aratat i ca daca gasim b astfel ncat n este pseudoprim dar nu
tare pseudoprim cu baza b, atunci putem factoriza rapid n. Explicat i
cum se poate proteja criptosistemul RSA, prin alegerea lui n, de aceasta
situat ie.
CAPITOLUL 11
Problema factorizarii
Problema factorizarii este cea mai cunoscuta problema dicila. Am
vazut ca ea este ideea ce sta la baza criptosistemului RSA. Factorizarea
presupune determinarea tuturor divizorilor primi ai unui numar ntreg
compus. Problema factorizarii reprezinta un domeniu de cercetare foarte
activ, atat pentru matematicieni, cat si pentru informaticieni. Algoritmii
de factorizare pot mpart it i n doua categorii:
1) algoritmi cu scop special, care sunt ecient i n factorizarea nu-
merelor cu divizori mici. Astfel de algoritmi sunt: metoda Pollard
rho, metoda Pollard p-1, metoda curbelor eliptice.
2) algoritmi cu scop general, a caror ecient a depinde de numarul
care se factorizeaza. Ele sunt cele mai importante n domeniul sis-
temelor criptograce si al securitat ii acestora. Dintre ele putem
ment iona ltrul corpului numerelor (NFS), cel mai des folosit al-
goritm de factorizare la acest moment, ltrul patratic polinomial
multiplu (MPQS).
Un numar general este un numar care nu are o forma particulara ce ar
putea conduce usor la determinarea divizorilor sai. Astfel de numere sunt
folosite la crearea modulului n criptosistemul RSA. Daca un numar are
o forma usoara de reprezentare, el se numeste numar cu forma speciala.
De exemplu, numerele Fermat sunt astfel de numere.
Problema factorizarii a devenit mai usoara n ultimii 15 ani datorita
faptului ca numarul computerelor, puterea de procesare si performant ele
199
200 CAPITOLUL 11. PROBLEMA FACTORIZ

ARII
acestora au crescut foarte mult si au fost gasit i algoritmi superiori de
factorizare.
11.1 Factorizare prin cautare directa
Metoda de cautare a divizorilor prin ncercari, prezentata n 10.2, este
cea mai simpla metoda de determinare a divizorilor primi ai unui numar
si mai poate ntalnita sub denumirea de trial division.
La informat iile furnizate anterior, n 10.2, mai facem doar o scurta
observat ie care poate simplica testul:
Daca cel mai mic factor prim p al lui n este >
3

n, atunci
n
p
este numar
prim. Pentru a arata ca aceasta armat ie este adevarata, sa presupunem
ca m =
n
p
este compus. Atunci, m = a b. Putem presupune ca a, b p.
Astfel, ajungem la o contradict ie, si anume n = pm = pab p
3
> n.
Deci, m este prim.
11.2 Metoda Fermat
De obicei, metoda este recomandata n cazul n care n are doi factori
de marime similara. Pentru un numar natural n, se cauta ntregi x, y
astfel ncat n = x
2
y
2
. Atunci n = (x y)(x +y) si se obt ine o prima
descompunere a lui n, n care un factor este foarte mic. La baza acestui
rezultat sta urmatoarea propozit ie, usor de demonstrat:
Propozit ie 11.2.1 Fie n un numar natural impar. Exista o corespon-
dent a bijectiva ntre descompunerile lui n de forma n = ab cu a b > 0
si reprezentarile lui n de forma n = x
2
y
2
unde x, y sunt numere
naturale. Corespondent a este data de relat iile:
x =
a +b
2
, y =
a b
2
, a = x +y, b = x y.
Daca n = ab, cu a si b de valori apropiate, y va un numar mic iar
x put in mai mare decat

n.

In acest caz, cautam patrate perfecte de
forma x
2
n, pornind cu x
1
= [

n] +1. Testam daca x


2
1
n este patrat
perfect. Cum exista doar 22 de combinat ii pentru ultimele doua cifre ale
unui numar patrat perfect, multe cazuri pot eliminate.
11.2. METODA FERMAT 201
Daca x
2
1
n nu este patrat perfect, alegem x
2
= x
1
+ 1 si refacem
rat ionamentul.
Procesul se opreste pentru ca descompunerea triviala n = n 1 conduce
la n =
_
n + 1
2
_
2

_
n 1
2
_
2
.
Spre exemplu, sa aplicam metoda pentru n = 4429.
Din 66 <

4429 < 67, pornim cu x


1
= 67. Obt inem:
x
1
= 67, 67
2
n = 60 - nu este patrat perfect,
x
2
= 68, 68
2
n = 195 - nu este patrat perfect,
x
3
= 69, 69
2
n = 332 - nu este patrat perfect,
x
4
= 70, 70
2
n = 471 - nu este patrat perfect,
x
5
= 71, 71
2
n = 612 - nu este patrat perfect,
x
6
= 72, 72
2
n = 755 - nu este patrat perfect,
x
7
= 73, 73
2
n = 900 - este patrat perfect.
Deci, 4429 = (73 30)(73 + 30) = 43 103. Apoi, reluam procesul
pentru factorii gasit i. La noi, acestia sunt primi.
Aceasta factorizare poate inecienta daca cei doi factori a si b nu
au valori apropiate: este posibil sa e necesare
n + 1
2

n vericari
pentru a testa daca numerele generate sunt patrate perfecte.

In aceasta situat ie se poate folosi o metoda Fermat generalizata care


act ioneaza mai bine n astfel de cazuri. Pentru aceasta, se alege k numar
mic si x va lua succesiv valorile
_

kn
_
+1,
_

kn
_
+2, . . . . Ne vom opri
cand x
2
kn este patrat perfect. Presupunem x
2
kn = y
2
. Atunci, din
(x +y)(x y) = kn, (x +y, n) este un divizor propriu al lui n.
De exemplu, ca sa factorizam usor n = 68987 folosind metoda Fermat
generalizata, alegem k = 3.
Atunci 454 <

3n < 455. Chiar la prima iterat ie obt inem:


455
2
3 68987 = 64, adica 3n = 455
2
8
2
.
Calculand (455 + 8, 68987) = 463, rezulta 68987 = 463 149.
Algoritm 11.2.1 (Fermat generalizata)
INPUT: un numar n, impar compus si k, factor de apropiere.
OUTPUT: doi factori a, b cu n = ab.
1. N [

kn], i 1, t 0.
202 CAPITOLUL 11. PROBLEMA FACTORIZ

ARII
2. Cat timp i N si t = 0, efectueaza:
2.1. y
_
(N +i)
2
kn.
2.2. Daca y = [y], atunci x N +i, t 1.
2.3. i i + 1.
3. Daca t = 1, atunci returneaza a = (x +y, n), b = n/a si se
opreste.
4. Returneaza mesaj de esec.
11.3 Metoda Euler
Metoda Euler de factorizare se poate aplica pentru numere n impare
care se pot scrie ca suma de doua patrate n doua feluri diferite. Astfel,
n = a
2
+b
2
= c
2
+d
2
unde a si c sunt pare iar b si d impare. Obt inem ca a
2
c
2
= d
2
b
2
,
sau (a c)(a +c) = (d b)(d +b).
Notam k = (a c, d b). Deci, k este par si a c = kl, d b = km,
cu (l, m) = 1.

Inlocuind, obt inem l(a +c) = m(b +d). De aici, m [ a +c.
Fie a + c = mr. Atunci, b + d = lr unde r = (a + c, b + d) este numar
par. T inand cont de toate aceste rezultate, obt inem:
_
_
k
2
_
2
+
_
r
2
_
2
_
_
l
2
+m
2
_
=
1
4
_
k
2
+r
2
_ _
l
2
+m
2
_
=
=
1
4
_
(km)
2
+ (kl)
2
+ (mr)
2
+ (lr)
2

=
=
1
4
_
(d b)
2
+ (a c)
2
+ (a +c)
2
+ (b +d)
2

=
=
1
4
_
2a
2
+ 2b
2
+ 2c
2
+ 2d
2
_
=
1
4
(2n + 2n) = n.
11.4 Metoda Pollard-rho
Presupunem ca un numar mare n este compus; de exemplu, nu a trecut
un test de primalitate prezentat n capitolul anterior. Cel mai simplu
test, mult mai rapid decat metoda mpart irilor, este datorat lui J. M.
Pollard. El poarta numele de metoda rho, sau metoda Monte Carlo.
Acest test este un test cu scop special folosit pentru a gasi factori primi
mici pentru un numar compus.
11.4. METODA POLLARD-RHO 203
Algoritmul Pollard-rho prezinta doua aspecte care trebuie subliniate.
Primul consta n ideea de a itera o formula pana se cade ntr-un
ciclu. Fie S o mult ime nita si f : S S o funct ie oarecare. Fie x
0
S
punctul de plecare. Denim x
k+1
= f(x
k
) pentru k 0. Cum S este
nita, exista o pereche (p, q) pentru care x
p+q
= x
p
. Aplicand n mod
repetat pe f n ambii membri, obt inem x
r+q
= x
r
, pentru tot i r p.
Cel mai mic p pentru care x
p
se repeta se numeste pre-perioada M. Cel
mai mic q se numeste perioada T. Ele depind de alegerea lui x
0
, de f
si S. Punctele x
0
, . . . , x
M
se numesc coada si punctele x
M+r
cu r 0
poarta numele de ciclul lui . Numele algoritmului provine din forma pe
care o are sirul de numere.
Consideram ca mult imea S are n elemente (se poate alege, S = Z
n
).
Funct ia f trebuie sa e aleasa astfel ncat valorile ei sa poata usor
calculate. Astfel, f este de obicei o funct ie polinomiala; de exemplu
f(x) = x
2
+a unde a / 0, 2.
Fie n = unde , sunt divizori relativi primi necunoscut i ai lui
n. Iterand x
k+1
x
2
k
+a (mod n) (sau orice alta formula polinomiala),
pentru orice valoare init iala x
0
, se obt ine un sir de numere care va intra
ntr-un ciclu. Timpul pana cand x
i
vor intrantr-un ciclu, cat si lungimea
ciclului sunt proport ionale cu

n.
Din teorema chinezeasca a resturilor, ecare x (mod n) corespunde
perechii (x (mod ), x (mod )) .
Din x
k+1
x
2
k
+ a (mod ) si x
k+1
x
2
k
+ a (mod ), rezulta ca sirul
modulo intra ntr-un ciclu de lungime mai mica.
Comparam diferit i x
i
pentru a obt ine doi care sunt resturi diferite
modulo n, dar sunt congruent i modulo un divizor al lui n. Fie x
i
si
x
j
doua astfel de elemente.

In acest caz, spunem ca avem o coliziune.
Atunci, (x
i
x
j
, n) este egal cu un divizor propriu al lui n.
De exemplu, pentru factorizarea lui n = 91 alegem f(x) = x
2
+ 1 si
x
0
= 1. Atunci, x
1
= 2, x
2
= 5, x
3
= 26. Nu mai continuam pentru ca
am gasit un divizor propriu (26 5, 91) = 7.
Al doilea aspect consta n detectarea faptului ca sirul de numere
devine periodic. Cantitatea mare de stocare a numerelor x
i
necesara
obt inerii unei coliziuni, a fost eliminata de Pollard care a folosit algorit-
mul lui Floyd de gasire a unui ciclu.

In aceasta metoda se porneste cu
y
0
= x
0
si se calculeaza y
k+1
= f (f(y
k
)) . Se obt ine rapid, folosind
204 CAPITOLUL 11. PROBLEMA FACTORIZ

ARII
induct ia matematica, y
k
= x
2k
. Astfel, daca k este multiplu de T,
obt inem y
k
= x
k
. Vericand la ecare pas daca se obt ine identitatea
vom gasi un multiplu de T. Daca M si T sunt de marime comparabila,
atunci vom gasi chiar un multiplu mic al lui T.
Algoritm 11.4.1 (Pollard-rho)
INPUT: un numar n > 2 compus, care nu este putere a unui
numar prim.
OUTPUT: un divizor propriu al lui n.
1. Pune a 2, b 2.
2. Pentru i = 1, 2, . . . executa:
2.1. Calculeaza a a
2
+ 1 mod n, b b
2
+ 1 mod n,
b b
2
+ 1 mod n.
2.2. Calculeaza d = (a b, n).
2.3. Daca 1 < d < n, atunci returneaza d si se opreste.
2.4. Daca d = n, atunci returneaza mesaj de esec
( trebuie aleasa o alta funct ie polinomiala).
De exemplu, pentru n = 455459 si x
0
= 2 obt inem:
x
1
= 5, y
1
= f(f(x
1
)) 26 (mod 455459), (y
1
x
1
, n) = 1;
x
2
= 26, y
2
2871 (mod 455459), (y
2
x
2
, n) = 1;
x
3
= 677, y
3
179685 (mod 455459), (y
3
x
3
, n) = 1;
x
4
= 2871, y
4
155260 (mod 455459), (y
4
x
4
, n) = 1;
x
5
= 44380, y
5
416250 (mod 455459), (y
5
x
5
, n) = 1;
x
6
= 179685, y
6
43670 (mod 455459), (y
6
x
6
, n) = 1;
x
7
= 121634, y
7
164403 (mod 455459), (y
7
x
7
, n) = 1;
x
8
= 155260, y
8
247944 (mod 455459), (y
8
x
8
, n) = 1;
x
9
= 44567, y
9
68343 (mod 455459), (y
9
x
9
, n) = 743.
Deci, 743 este un divizor netrivial al lui 455459.
Obt inem 455459 = 743 613.
Pentru ca n aceasta situat ie, la ecare pas este necesar sa aplicam
de trei ori funct ia, putem pierde mult timp. De aceea, ultima parte a
algoritmului a fost modicata de catre Brent care a nlocuit algoritmul
lui Floyd cu un altul.
Mai ntai sa presupunem ca M si T au m cifre binare. Atunci, ar
trebui sa gasim o repetit ie pentru k = 2
m
1. Deoarece T 2
m
1,
11.5. METODA POLLARD P-1 205
k + T = 2
m
+ T 1 este mai mic decat 2
m+1
2. Astfel vom stoca
y
m
= x
2
m
1
si l vom compara cu x
k
pentru 2
m
k 2
m+1
2. La
ecare pas, se aplica f o singura data. Pe de alta parte, M este aproape
dublat, deci facem aproape un numar dublu de testari fat a de cazul
init ial Pollard. Este evident ca alegerea ntre cele doua versiuni se va
face t inand cont de care dintre urmatoarele doua procese este mai mare
consumatoare de timp: calcularea funct iei sau compararea.
11.5 Metoda Pollard p-1
Aceasta metoda este o metoda cu scop special, ind folosita pentru fac-
torizarea numerelor n care au un factor prim p cu proprietatea ca p 1
este produs de factori primi mai mici dacat un numar relativ mic B.
Ideea este urmatoarea:
Fie m cel mai mic multiplu comun al tuturor puterilor de numere prime
B care sunt n. Daca q
l
n, atunci l lnq lnn si, deci l
_
lnn
lnq
_
.
Astfel, m =

qB
q
[
ln n
ln q
]
unde produsul se face dupa toate numerele prime
q B.
Daca p este un factor prim al lui n astfel ncat p1 are tot i factorii primi
B, atunci p1 [ m. Astfel, din mica teorema a lui Fermat, pentru orice
(a, p) = 1 avem a
m
1 (mod p). De aici, daca notam d = (a
m
1, n),
obt inem p [ d. Este posibil ca d = n, caz n care algoritmul esueaza.
Oricum, aceasta situat ie este put in probabil sa apara daca n are doi
factori primi mari distinct i.
Algoritm 11.5.1 (Pollard p-1)
INPUT: un numar n > 2 compus, care nu este putere a unui
numar prim.
OUTPUT: un divizor propriu al lui n.
1. Alege o margine B.
2. Alege, aleator, un a, 2 a n 1 si calculeaza d = (a, n).
Daca d 2, returneaza d si se opreste.
3. Pentru ecare numar prim q B, executa:
3.1. Calculeaza l = [lnn/ lnq].
3.2. Calculeaza a a
q
l
mod n.
206 CAPITOLUL 11. PROBLEMA FACTORIZ

ARII
4. Calculeaz a d = (a 1, n).
5. Daca d = 1 sau d = n, returneaza mesaj de esec; altfel,
returneaza d.
De exemplu, pentru n = 19048567, B = 19, a = 3 obt inem:
q = 2, l = 24, a 2293244 (mod 19048567);
q = 3, l = 15, a 13555889 (mod 19048567);
q = 5, l = 10, a 16937223 (mod 19048567);
q = 7, l = 8, a 15214586 (mod 19048567);
q = 11, l = 6, a 9685355 (mod 19048567);
q = 13, l = 6, a 13271154 (mod 19048567);
q = 17, l = 5, a 11406961 (mod 19048567);
q = 19, l = 5, a 554506 (mod 19048567).

In acest caz, (554506 1, 19048567) = 5281.


Se obt ine 19048567 = 5281 3607, care este chiar descompunerea n
factori primi a lui n. Trebuie remarcat ca:
5280 = 5281 1 = 2
5
3 5 11, 3606 = 3607 1 = 2 3 601.
Deci, 5280 are factorii primi mai mici decat 19, n timp ce celalalt numar
nu are aceasta proprietate.
11.6 Factorizare folosind curbele eliptice
Ca si n cazul testului de primalitate ce utilizeaza teoria curbelor eliptice,
si aici vom prezenta doar ideea ce sta la baza acestui algoritm. Algorit-
mul generalizeaza algoritmul Pollard p1n sensul ca grupul Z

p
, al carui
ordin este p 1 (p este prim) este nlocuit cu grupul unei curbe eliptice
aleatoare peste Z
p
. Daca ordinul grupului ales are tot i factorii primi
mai mici decat un numar init ial considerat, atunci algoritmul furnizeaza
un divizor propriu al lui n.

In caz contrar, trebuie ales un alt grup.

In practica, acest algoritm este folosit pentru a determina factori


primi cu mai put in de 40 cifre zecimale pentru numere mari compuse.
Astfel, el este considerat un algoritm cu scop special.
11.7. METODA BAZEI FACTOR 207
11.7 Metoda bazei factor
Ideea ce se aa la baza acestei metode de factorizare este de fapt comuna
tuturor metodelor de factorizare cu patrate aleatoare, si anume:
Daca gasimntregi x, y astfel ncat x
2
y
2
(mod n) si x ,= y (mod n),
atunci am aat de fapt un divizor netrivial al lui n, anume (x+y, n) sau
(xy, n). Aceasta se obt ine t inand cont ca n xy si n [ (xy)(x+y).
Pentru un modul n, si a un numar ntreg, vom spune ca a
0
este
cel mai mic rest n valoare absoluta al lui a daca a a
0
(mod n) si

n
2
a
0

n
2
.
Denit ie 11.7.1 O baza factor este o mult ime B = p
1
, p
2
, . . . , p
k
de
numere prime distincte, mai put in, eventual, p
1
care poate 1.
Spunem ca patratul unui numar ntreg b este B numar, relativ la
numarul n, daca cel mai mic rest n valoare absoluta al lui b
2
(mod n)
se poate scrie ca un produs de numere din B.
De exemplu, pentru n = 2701 si B = 1, 2, 3 :
Din 52
2
3 (mod 2701), 53
2
108 2
2
3
3
(mod 2701), obt inem ca
52
2
si 53
2
sunt Bnumere.
Consideram n natural si B o baza factor formata din k numere.
Fiecarui Bnumar b
2
i vom pune n corespondent a un vector
e = (e
1
, e
2
, . . . , e
k
)
unde e
i
0, 1, pentru ecare i, dupa cum urmeaza:
Scriem cel mai mic rest n valoare absoluta b
2
(mod n) sub forma
k

i=1
p

i
i
si denim e
i

i
(mod 2). Astfel, e
i
= 0, daca
i
este par si e
i
= 1,
pentru
i
impar.

In exemplul nostru, lui 52


2
i corespunde vectorul (0, 0, 1) iar lui 53
2
,
acelasi vector.
Fie e
j
= (e
j1
, e
j2
, . . . , e
jk
) vectorul corespunzator lui a
j
, cel mai mic
rest n valoare absoluta al B numarului b
2
j
(mod n), pentru 1 j s.
Daca suma vectorilor este vectorul nul (suma se calculeaza modulo 2),
atunci produsul tuturor a
j
este un produs de puteri pare ale numerelor
208 CAPITOLUL 11. PROBLEMA FACTORIZ

ARII
prime din B. Astfel,
s

j=1
a
j
=
k

i=1
p

j=1,s

ji
i
=
_
k

i=1
p
1
2

j=1,s

ji
i
_
2
.
Am gasit astfel x, y cele mai mici resturi n valoare absoluta pentru
numerele
s

j=1
b
j
(mod n),
k

i=1
p
1
2

j=1,s

ji
i
(mod n)
ale caror patrate sunt congruente modulo n. Trebuie sa observam faptul
ca ecare numar este construit altfel, unul ca produs de b
j
, celalalt ca
produs de p
i
.
Daca x y (mod n), trebuie sa reluam rat ionamentul pentru alta
mult ime de B numere pentru care suma vectorilor este vectorul nul.
Cum n este compus, probabilitatea sa ntalnim o astfel de situat ie
este de
1
2
. Va trebui continuat pana cand gasim o pereche (x, y) care ne
furnizeaza un divizor propriu al lui n.

In exemplul considerat, (0, 0, 1) + (0, 0, 1) = (0, 0, 0). Obt inem:


52
2
53
2
3 108 (2 3
2
)
2
(mod 2701).
Atunci, x 52 53 55 (mod 2701), y 18 (mod 2701).
Calculam (55 + 18, 2701) = 73 si rezulta 2701 = 73 37.

In practica, baza factor si numerele b


j
se aleg prin diverse metode.
O alegere este de a porni cu B formata din primele k sau k 1 numere
prime, dupa cum alegem p
1
= 1 sau nu. Numerele b
j
se aleg aleator
pana se gasesc cateva ale caror patrate sunt Bnumere.
O alta cale de lucru consta n a ncepe cu alegerea unor b
j
pentru
care cel mai mic rest n valoare absoluta b
2
j
(mod n) este mic (n valoare
absoluta); de exemplu, alegem b
j
apropiat i de

hn, pentru multiplii mici


hn. Atunci, B va formata din numerele prime mici, eventual si 1, care
apar n descompunerea n factori primi a mai multor b
2
j
(mod n).
Sa rezumam acum modul de factorizare a unui numar mare n prin
alegerea aleatoare a numerelor b
j
.
Se alege un numar c de marime intermediara; de exemplu, daca n
are 50 de cifre n scrierea zecimala, putem alege c un numar cu 5 sau 6
cifre zecimale. B este formata din -1 si din toate numerele prime c,
11.8. METODA FRACT IILOR CONTINUE 209
deci va avea (c) +1 elemente. Se cauta aleator mai multe numere b
j
si
se calculeaza cel mai mic rest n valoare absoluta pentru b
2
j
(mod n). Se
verica daca acesta se poate scrie ca produs de primi din B. Cautarea se
opreste cand am gasit suciente B numere b
2
j
(mod n) ((c) + 2 sunt
de ajuns). Pentru ecare dintre ele se scrie vectorul corespunzator si se
formeaza o submult ime de numere b
j
care au proprietatea ca suma vecto-
rilor este zero. Apoi se calculeaza x =

j
b
j
(mod n), y =

j
p

j
j
(mod n)
care stim ca verica x
2
y
2
(mod n). Daca x ,= y (mod n), am gasit
un divizor propriu al lui n, calculand (x +y, n).
11.8 Metoda fract iilor continue
Am vazut ca metoda bazei factor se aplica cel mai bine daca exista
o metoda avantajoasa de a gasi ntregi b astfel ncat cel mai mic rest
n valoare absoluta al lui b
2
(mod n) sa e produs de numere prime
mici. Aceasta situat ie apare n mod sigur daca valoarea absoluta a lui
b
2
(mod n) este mica. Prezentamn cele ce urmeaza o metoda de a gasi
ntregi b pentru care [ b
2
(mod n) [< 2

n. Pentru aceasta, este necesar


sa reprezentam numarul

n sub forma unei fract ii continue.
Propozit ie 11.8.1 Fie > 1 un numar real a carui fract ie continua
are convergentele
p
k
q
k
. Atunci, pentru orice k 0,

p
2
k

2
q
2
k

< 2.
Demonstrat ie. Stim ca
p
k
q
k
< <
p
k+1
q
k+1
si, din corolarul 2.1.2,

p
k
q
k

p
k+1
q
k+1

=
1
q
k
q
k+1
. De aici,

p
2
k

2
q
2
k

= q
2
k


p
k
q
k

+
p
k
q
k

< q
2
k
1
q
k
q
k+1
_
+
_
+
1
q
k
q
k+1
__
.
Astfel,

p
2
k

2
q
2
k

2 < 2
_
1 +
q
k
q
k+1
+
1
2q
2
k+1
_
<
< 2
_
1 +
q
k
q
k+1
+
1
q
k+1
_
< 2
_
1 +
q
k+1
q
k+1
_
= 0.
210 CAPITOLUL 11. PROBLEMA FACTORIZ

ARII
Aceasta propozit ie conduce la urmatorul rezultat:
Propozit ie 11.8.2 Fie n numar natural, care nu este patrat perfect.
Fie
p
k
q
k
convergentele fract iei continue simple a lui

n. Atunci, pentru
orice k 0, cel mai mic rest n valoare absoluta al lui p
2
k
(mod n) este
mai mic decat 2

n.
Demonstrat ie. Folosim rezultatul demonstrat anterior pentru =

n.
Astfel, p
2
k
p
2
k
nq
2
k
(mod n), de unde

p
2
k
(mod n)

< 2

n.
Acest rezultat sta la baza algoritmului fract iilor continue. Astfel, se
precizeaza ca, alegand numaratorii p
k
ai convergentelor fract iei continue
a lui

n, se poate obt ine un sir de numere ale caror patrate au resturi
mici. Pe langa faptul ca ne intereseaza doar numaratorii acestor fract ii,
se opereaza doar cu resturi modulo n, deci, nu vom lucra cu numere
foarte mari.
Vom preciza acum modul de realizare a algoritmul de factorizare
folosind fract iile continue utilizand o baza factor. De aceasta data, nu
mai alegem aleator elementele b
j
.
Astfel, ncepem prin a init ializa:
b
1
= 1, b
0
= [

n] = a
0
, x
0
=

n a
0
. Calculam b
2
0
(mod n).
Pentru j = 1, 2, . . . executam:
1. a
j
=
_
1
x
j1
_
si apoi x
j
=
1
x
j1
a
j
.
2. b
j
a
j
b
j1
+b
j2
(mod n).
3. Calculam b
2
j
(mod n).
Dupa ce realizam aceste calcule pentru mai multe valori ale lui j,
vedem care numere de la punctul 3. se scriu ca produse de numere
mici prime. Alegem n funct ie de acestea baza B care va formata din
1 si din numerele prime mici ce apar n scrierea mai multor b
2
j
(mod n).
Apoi, procedam ca n cazul metodei bazei factor.
De exemplu, pentru n = 9509,
b
0
= 97, x
0
= 0, 514101, b
2
0
100 (mod 9509).
Obt inem:
a
1
=
_
1
x
0
_
= 1, b
1
= 1 97 + 1 = 98, x
1
=
1
x
0
a
1
= 0, 945143,
11.8. METODA FRACT IILOR CONTINUE 211
b
2
1
= 9604 95 (mod 9509);
a
2
=
_
1
x
1
_
= 1, b
2
= 1 98 + 97 = 195, x
2
=
1
x
1
a
2
= 0, 0580409,
b
2
2
= 38025 11 (mod 9509);
a
3
=
_
1
x
2
_
= 17, b
3
= 17 195 + 98 = 3413, x
3
=
1
x
2
a
3
= 0, 229229,
b
2
3
= 11648569 44 (mod 9509).
Observam ca 100 = 1 2
2
5
2
, 95 = 5 19, 11 = 1 11, 44 = 2
2
11.
Alegem B = 1, 2, 5, 11 si numerele b
0
, b
2
, b
3
. Vectorii corespunzatori
sunt (1, 0, 0), (1, 0, 1), (0, 0, 1) a caror suma vedem ca este vectorul nul.
Atunci,
x = 97 195 3413 = 64556895 294 (mod 9509) si y = 2
2
5 11 = 220.
Calculam (294 + 220, 9509) = 257 si (294 220, 9509) = 37.

In nal, prezentam o varianta a metodei de factorizare cu ajutorul


fract iilor continue n care nu folosim o baza factor.
Pentru aceasta, sa facem mai ntai urmatoarea observat ie: n cazul
metodei Fermat se cautau numere naturale x, y cu proprietatea ca
n = x
2
y
2
si x y ,= 1.
Factorizarea lui n este posibila si n cazul n care impunem niste
condit ii mai slabe asupra numerelor x, y si anume:
n = x
2
y
2
, 0 < y < x < n, x +y ,= n.
Din aceste relat ii obt inem n xy si n [ (xy)(x+y). Atunci, (xy, n)
si (x +y, n) sunt divizori netriviali ai lui n.
Pentru a determina solut iile congruent ei se poate folosi reprezentarea
lui

n sub forma de fract ie continua.
Propozit ie 11.8.3 Fie n numar natural, care nu este patrat perfect.
Denim:

0
=

n,
k
=
P
k
+

n
Q
k
, a
k
= [
k
] , P
k+1
= a
k
Q
k
P
k
,
Q
k+1
=
n P
2
k+1
Q
k
, pentru k 0.
Fie
p
k
q
k
kconvergenta fract iei continue simple a lui

n. Atunci,
p
2
k
nq
2
k
= (1)
k1
Q
k+1
.
212 CAPITOLUL 11. PROBLEMA FACTORIZ

ARII
Demonstrat ie. Fie

n =
0
= [a
0
; a
1
, a
2
, . . . ,
k
] .
Astfel,

n =

k+1
p
k
+p
k1

k+1
q
k
+q
k1
. Cum
k+1
=
P
k+1
+

n
Q
k+1
, rezulta

n =
_
P
k+1
+

n
_
p
k
+Q
k+1
p
k1
_
P
k+1
+

n
_
q
k
+Q
k+1
q
k1
.
Obt inem astfel,
nq
k
+ (P
k+1
q
k
+Q
k+1
q
k1
)

n = (P
k+1
p
k
+Q
k+1
p
k1
) +p
k

n.
De aici,
nq
k
= P
k+1
p
k
+Q
k+1
p
k1
(11.1)
p
k
= P
k+1
q
k
+Q
k+1
q
k1
(11.2)

Inmult im prima relat ie cu q


k
, a doua cu p
k
si scadem. Daca t inem cont
si de propozit ia 2.1.1, rezulta:
p
2
k
nq
2
k
= (p
k
q
k1
p
k1
q
k
) Q
k+1
= (1)
k1
Q
k+1
.
Cu ajutorul acestei propozit ii sa vedem cum funct ioneaza algoritmul,
fara a mai alege o baza factor.
Conform propozit iei, p
2
k
(1)
k1
Q
k+1
(mod n), pentru ecare k.
Presupunem k impar si Q
k+1
s
2
(mod n), un patrat perfect. Atunci
p
2
k
s
2
(mod n). Astfel, vom cauta patrate perfecte s
2
n sirul Q
j
pentru
indici j pari. Atunci, pentru ecare p
j1
vedem daca (p
j1
+ s, n) este
divizor propriu al lui n.
De exemplu, pentru n = 9509, obt inem:

0
=

9509, P
0
= 0, Q
0
= 1, a
0
=
_
9509

= 97;
P
1
= 97 1 0 = 97, Q
1
=
9509 97
2
1
= 100,

1
=

9509 + 97
100
, a
1
= [
1
] = 1;
P
2
= 100 1 97 = 3, Q
2
=
9509 3
2
100
= 95,

2
=

9509 + 3
95
, a
2
= [
2
] = 1;
11.9. METODA FILTRULUI P

ATRATIC 213
P
3
= 95 1 3 = 92, Q
3
=
9509 92
2
95
= 11,

3
=

9509 + 92
11
, a
3
= [
3
] = 17;
P
4
= 17 11 92 = 95, Q
4
=
9509 95
2
11
= 44,

4
=

9509 + 95
44
, a
4
= [
4
] = 4;
P
5
= 44 4 95 = 81, Q
5
=
9509 81
2
44
= 67,

5
=

9509 + 81
67
, a
5
= [
5
] = 2;
P
6
= 67 2 81 = 53, Q
6
=
9509 53
2
67
= 100,

6
=

9509 + 53
100
, a
6
= [
6
] = 1.
Calculam acum p
5
.
p
0
= a
0
= 97, p
1
= a
0
a
1
+ 1 = 98
p
2
= 1 98 + 97 = 195,
p
3
= 17 195 + 98 = 3413,
p
4
= 4 3413 + 195 = 13847,
p
5
= 2 13847 + 3413 = 31107 2580 (mod n).
Atunci, 2580
2
10
2
(mod 9509).
Prin calcul, obt inem (2580 10, 9509) = 257 si (2580 + 10, 9509) = 37.
Deci, 9509 = 257 37.
11.9 Metoda ltrului patratic
Metoda ltrului patratic, realizata de Pomerance, la nceputul anilor 80,
a fost mult timp mai performanta decat alte metode de factorizare de
tip general. Ea este folosita pentru a factoriza numere mari n care nu
au factori primi de marime mult mai mica decat

n.
Filtrul patratic este o varianta a metodei bazei factor. Ca baza B,
vom alege n acest caz toate numerele prime p P (P este un numar
214 CAPITOLUL 11. PROBLEMA FACTORIZ

ARII
limita ales ntr-un fel optim) pentru care
_
n
p
_
= 1 pentru p impar. p = 2
va si el inclus n baza, n mod automat. Vom nota cu S mult imea de
B numere pe care le caut am. Ea va aceeasi mult ime ca cea folosita
n metoda Fermat, si anume:
S = t
2
n [
_
n

t
_
n

+A
cu A, o limita potrivit aleasa.
Ideea principala a acestei metode consta ntr-o ltrare asemanatoare
ciurului lui Eratostene pentru elementele bazei alese init ial.
Fie n un numar compus impar.
1. Alegem marginile P si A, ambele de marime apropiata cu e

ln nln ln n
.

In general, A este ales mai mare decat P, dar nu mai mare decat o putere
mica a lui P. De exemplu, P < A < P
2
.
2. Pentru ecare prim p P, vericam mai ntai daca
_
n
p
_
= 1.
Daca relat ia nu se verica, p este eliminat din baza.
3. Pentru t = [

n] +1, [

n] +2, . . . , [

n] +A, realizam o coloana de


numere t
2
n.
4. Alegem din coloana de la punctul 3. doar numerele t
2
n care
sunt B numere.
5. Mai departe, se procedeaza ca n metoda bazei factor.
Pentru a exemplica aceasta metoda, factorizam n = 24961 folosind
cea mai simpla varianta de ltru patratic.
Consideram P = 23. Pentru simplicarea aplicat iei, vom alege pentru
t valorile [

n] , [

n] 1, [

n] 2, . . . .
Calculand
_
n
p
_
, pentru numerele prime p 7, 11, 17, 19, n nu este rest
patratic. Deci, ele se elimina din baza. Obt inem B = 1, 2, 3, 5, 13, 23.
Baza avand 6 elemente, trebuie sa determinam cel put in 7 B numere
din care sa putem alege pe cele pentru care aplicam metoda bazei factor.
Obt inem:
a
0
= 157, b
0
a
2
0
24961 312 (mod 24961),
312 = 1 2
3
3 13, v
0
= (1, 1, 1, 0, 1, 0).
a
1
= 158, b
1
a
2
1
24961 3 (mod 24961),
11.10. FILTRUL CORPULUI DE NUMERE 215
v
1
= (0, 0, 1, 0, 0, 0).
a
2
= 156, b
2
a
2
2
24961 625 (mod 24961),
625 = 1 5
4
, v
2
= (1, 0, 0, 0, 0, 0).
a
3
= 159, b
3
a
2
3
24961 320 (mod 24961),
320 = 2
6
5, v
3
= (0, 0, 0, 1, 0, 0).
a
4
= 155, b
4
a
2
4
24961 936 (mod 24961),
936 = 1 2
3
3
2
13, v
4
= (1, 1, 0, 0, 1, 0).
a
5
= 161, b
5
a
2
5
24961 960 (mod 24961),
960 = 2
6
3 5, v
5
= (0, 0, 1, 1, 0, 0).
a
6
= 151, b
6
a
2
6
24961 2160 (mod 24961),
2160 = 1 2
4
3
3
5, v
6
= (1, 0, 1, 1, 0, 0).
Observam v
0
+v
1
+v
4
= (0, 0, 0, 0, 0, 0). Atunci,
x 157 158 155 936 (mod 24961),
y 1 2
3
3
2
13 24025 (mod 24961).

In aceasta situat ie, x y (mod 24961), deci trebuie sa cautam alta


combinat ie.
Din v
2
+v
5
+v
6
= (0, 0, 0, 0, 0, 0), rezulta:
x 23405 (mod 24961),
y 1 2
5
3
2
5
3
13922 (mod 24961).
Acum 23405 ,= 13922 (mod 24961), si calculam:
(23405 13922, 24961) = (9483, 24962) = 109.
O situat ie mai complexa de tratare a acestei metode poate ntalnita
n [12]. De asemenea, alte variante folosesc mai multe polinoame n
selectarea B numerelor (noi am folosit doar f = X
2
n), pentru a
asigura o mai mare sansa de factorizare si un interval de ltrare mai
scurt, ind aplicabil procesarii paralele.
11.10 Filtrul corpului de numere
Problema factorizarii nu a cunoscut mbunatat iri majore pana n anul
1990 cand Pollard a realizat un algoritm foarte rapid, cu ajutorul caruia
a factorizat numarul RSA-130.
216 CAPITOLUL 11. PROBLEMA FACTORIZ

ARII

In unele privint e, algoritmul este asemanator cu cele anterioare, el


cautand ntregi x, y astfel ncat x
2
y
2
(mod n) si x ,= y (mod n).
Pentru a realiza acest lucru, se folosesc doua baze factor; una este for-
mata din toate numere prime mai mici decat o anumita limita si cealalta
baza este formata din toate idealele prime de norma mai mica decat o
valoare considerata, din inelul de ntregi al unui corp de numere algebrice
potrivit ales.
Astfel, avand la baza tehnica ltrului patratic, algoritmul foloseste
teoria algebrica a numerelor, ind considerat cel mai complicat algoritm
cunoscut.
O versiune speciala a algoritmului este folosita pentru a factoriza
numere de forma n = r
e
s pentru valori mici ale lui r si [s[ (vezi [14]).
S-a dovedit ca acest algoritm este mult mai rapid decat ltrul patratic
n factorizarea numerelor de aproximativ 115 cifre zecimale. La ora
actuala, el det ine locul nt ai n ierarhia algoritmilor de factorizare cu
scop general.
Exercit ii propuse
1. Factorizat i numerele: 8633, 200819, 809009 folosind metoda Fer-
mat. Pentru 68987 aplicat i metoda Fermat generalizata.
2. Aratat i ca numarul 23360947609 nu poate folosit ntr-un crip-
tosistem RSA.
3. Aplicat i metoda rho pentru a obt ine o descompunere n factori
primi pentru urmatoarele situat ii. De ecare data, comparat i x
k
numai
cu x
j
unde j = 2
h
1 si k este un numar cu (h + 1) cifre binare.
i) f(x) = x
2
1, x
0
= 2, n = 91;
ii) f(x) = x
2
+ 1, x
0
= 1, n = 8051;
iii) f(x) = x
2
1, x
0
= 5, n = 7031.
4. Factorizat i n = 4633. folosind numerele 68, 152, 153 mpreuna cu
o baza factor B potrivit aleasa.
5. Factorizat i numerele 13561, 8777, 14429, 12403, 197209 prin metoda
fract iilor continue.
6. Factorizat i numerele 1046603 si 998771 folosind metoda ltrului
patratic.
CAPITOLUL 12
Problema logaritmului
discret
Dupa cum am vazut n capitolul 9, securitatea multor criptosisteme se
bazeaza pe problema logaritmului discret, o alta problema conside-
rata n prezent ca ind dicila.
Daca consideram un grup ciclic G, de ordin n, cu g un generator
al sau, atunci G = 1, g, g
2
, . . . , g
n1
. Pentru b G, denim log
g
b
logaritmul discret al lui b n baza g ca ind unicul numar 1 x n 1
care verica b = g
x
.
Un caz particular a fost deja studiat n capitolul 6, si anume situat ia
n care grupul U(Z
n
) este ciclic.

In acest caz, un generator al grupu-
lui este radacina primitiva r, iar logaritmul discret a fost numit index
aritmetic.
De exemplu, U(Z
17
) este un grup ciclic de ordin 16. Cum ord
17
3 =
16, 3 este un generator sau, radacina primitiva modulo 17. Deoarece
3
4
= 81 13 (mod 17), obt inem log
3
13 = 4.
Problema logaritmului discret, DLP, este formulata astfel:
Daca consideram un numar prim p, g un generator al grupului Z

p
(radacina primitiva modulo p) si un element b Z

p
, sa se determine
1 x p 1 pentru care b g
x
(mod p).
Daca n locul lui Z

p
alegem un grup ciclic oarecare, spunem ca am
enunt at problema generalizata a logaritmului discret, GDLP.
217
218 CAPITOLUL 12. PROBLEMA LOGARITMULUI DISCRET
Trebuie sa subliniem un fapt important. Daca consideram g
1
si g
2
doi generatori diferit i ai grupului G, ciclic de ordin n, iar b G obt inem:
b = g
log
g
1
b
1
= g
log
g
2
b
2
=
_
g
log
g
1
g
2
1
_
log
g
2
b
.
Astfel, log
g
1
b log
g
2
b log
g
1
g
2
(mod n). De aici rezulta ca un algoritm
care calculeaza logaritmi relativ la baza g
1
poate calcula logaritmi n
orice baza g, cu g un generator oarecare al grupului. Aceasta observat ie
arata ca dicultatea problemei logaritmului discret nu depinde de gene-
ratorul ales.
Spre deosebire de algoritmii de factorizare care au fost studiat i timp
de sute de ani, algoritmii de calcul a logaritmilor discret i au o perioada
mult mai scurta de cercetare, anume ncepand cu anul 1970. De cele mai
multe ori, acesti algoritmi sunt mpart it i n doua clase:
1. metode de calculare a indexului, care sunt asemanatoare cu cele
mai rapide metode de factorizare. Exista doua metode clasice,
strans legate de algoritmii ltrului patratic si cel al ltrul corpu-
lui numerelor. Ele sunt eciente numai n anumite grupuri, ind
necesar sa se verice anumite proprietat i matematice.
2. metode de gasire de coliziuni, aplicate n cazuri generale. Cea mai
performanta dintre acestea este metoda Pollard-rho.
Vom prezenta n continuare cei mai cunoscut i algoritmi de rezolvare
a DLP. Grupul ciclic G va grupul multiplicativ al unui corp nit cu
p elemente, deci un grup de ordin p 1. Generatorul acestui grup va
notat cu g si vom avea de calculat log
g
b, unde b G.
12.1 Algoritmul Shanks
Fie m =
_
p 1

. Daca b = g
x
G, atunci putem scrie x = cm+d, cu
0 c, d m1. Atunci, b = g
x
= g
cm
g
d
, de unde bg
d
= (g
m
)
c
.
Pornind de la aceasta observat ie, Shanks a propus o metoda de
cautare succesiva pentru a determina log
g
b, numita si algoritmul baby-
step giant-step.
12.1. ALGORITMUL SHANKS 219
Se creeaza doua liste :
Giant step Baby step
1 b
g
m
bg
1
g
2m
bg
2
.
.
.
.
.
.
g
(m1)m
bg
(m1)
si vedem pentru ce valori ale lui c si d obt inem g
cm
= bg
d
. Atunci,
log
g
b = cm+d.
Algoritm 12.1.1 (Shanks)
INPUT: g, p, b cu semnicat iile anterioare.
OUTPUT: log
g
b.
1. m [

p 1]
2. Pentru c = 0, . . . , m1, construieste un tabel cu (c, g
mc
), care
se ordoneaza dupa a doua componenta.
3. Calculeaza g
1
si pune a b.
4. Pentru d = 0, . . . , m1, executa:
4.1. Verica daca a este a doua componenta a
unui element din tabel.
4.2. Daca a = g
mc
, returneaza x = cm+d si se opreste.
4.3. Pune a ag
1
.
Spre exemplu, daca alegem grupul ciclic G = Z

181
, de ordin 180,
un generator al sau este g = 2.

In acest caz, m = 13. Vrem sa aplicam
algoritmul pentru a determina log
2
30.
Pentru 0 c 12,
_
2
13
_
c
ia valorile nscrise n tabel:
c 0 1 2 3 4 5
2
13c
1 47 37 110 102 88
c 6 7 8 9 10 11 12
2
13c
154 179 87 107 142 158 5
Din 2
180
1 (mod 181), rezulta 2
1
2
179
91 (mod 181).
Calculam b2
d
, pana gasim o valoare egala cu un 2
13c
anterior calculat.
220 CAPITOLUL 12. PROBLEMA LOGARITMULUI DISCRET
Pentru d 7 valorile obt inute sunt:
d 0 1 2 3 4 5 6 7
30 2
d
30 15 98 49 115 148 74 37
Am obt inut
_
2
13
_
2
30 2
7
(mod 181). Astfel, c = 2 iar d = 7.
Rezulta log
2
30 = 2 13 + 7 = 33.
12.2 Algoritmul Pohlig-Hellman
Acest algoritm este utilizabil daca ordinul grupului ciclic are factori primi
mici. Presupunem ca p 1 =
m

i=1
q
ki
i
, cu q
i
numere prime distincte.
Fie g
x
b (mod p). Din capitolul 6.3, stim ca aceasta congruent a este
echivalenta cu x log
g
b (mod p 1). Folosind teorema chinezeasca a
resturilor, este sucient sa determinam x
i
x (mod q
ki
i
), pentru ecare
1 i m. Cu aceste valori, vom calcula apoi x (mod p 1).
Fie q un divizor prim al lui p1 astfel ncat q
k
|p1. Pentru a calcula
x
q
x (mod q
k
), consideram x a
0
+ a
1
q + . . . + a
k1
q
k1
(mod q
k
),
cu 0 a
i
q 1. Vom determina succesiv acesti coecient i.
Pentru aceasta, e g
p1
q
(mod p). Atunci,
q
1 (mod p).
Vom determina toate elementele r
q,i

i
(mod p) de ordin q, pentru
0 i q 1, folosind metoda ridicarii succesive la patrat si le vom
pastra ntr-un tabel. Lucrand n ipoteza ca divizorii primi ai lui p 1
sunt mici, dimensiunea tabelului este rezonabila.
Congruent a g
x
b (mod p) devine:
b
p1
q
(g
x
)
p1
q
g
a
0
p1
q
+a
1
(p1)+...
g
a
0
p1
q

a
0
(mod p).
Deci, r
q,a
0
=
a
0
b
p1
q
(mod p). Astfel, vom compara b
p1
q
cu toate
elementele r
q,j
si a
0
va egal cu valoarea j pentru care obt inem egalitate.
Pentru a determina a
1
, consideram b
1
bg
a0
(mod p), adica:
g
xa
0
b
1
(mod p).
12.2. ALGORITMUL POHLIG-HELLMAN 221
Atunci:
b
p1
q
2
1
(g
xa
0
)
p1
q
2
g
a
1
p1
q
+a
2
(p1)+...
g
a
1
p1
q

a1
r
q,a1
(mod p).
Vom compara b
p1
q
2
1
cu elementele din mult imea r
q,j

0j<q
dupa care
identicam a
1
cu indicele j pentru care se obt ine egalitatea.
Procedam inductiv, pentru a obt ine tot i coecient ii a
i
. Vom nota:
b
i
= bg
(a
0
+a
1
q+...+a
i1
q
i1
)
.
Atunci, b
p1
q
i
i
1 (mod p) si b
p1
q
i+1
i
r
q,a
i
.

In nal, obt inem x (mod q


k
). Aplicand procedeul pentru ecare di-
vizor q [ p 1 si folosind teorema chinezeasca a resturilor, obt inem
x = log
g
b.
Algoritm 12.2.1 (Pohlig-Hellman)
INPUT: g, p, b cu semnicat iile anterioare.
OUTPUT: log
g
b.
1. Factorizeaza p 1 =
m

i=1
q
ki
i
.
2. Pentru i de la 1 la m efectueaza:
2.1. q q
i
, k k
i
.
2.2. b
1
1, a
1
0.
2.3. Calculeaza g
(p1)/q
2.4. Pentru j de la 0 la k 1, efectueaz a:
2.4.1. Calculeaza b
1
b
1
g
aj1q
j1
,
b

(bb
1
1
)
(p1)/q
j+1
.
2.4.2. Calculeaza a
j
log

folosind
algoritmul Shanks.
2.5. x
i
a
0
+a
1
q +. . . +a
k1
q
k1
.
3. Aplica algoritmul Gauss pentru a rezolva sistemul
x x
i
(mod q
k
i
i
), 1 i m.
4. Returneaza x.
De exemplu, sa recalculam log
2
30 n grupul G = Z

181
, de ordin
180 = 2
2
3
2
5. Vom avea p = 181, g = 2, b = 30 si q 2, 3, 5.
222 CAPITOLUL 12. PROBLEMA LOGARITMULUI DISCRET
Calculam pentru ecare q valorile r
q,j
pentru 0 j q 1.
1. q = 2. Atunci, x a
0
+a
1
2 (mod 4), a
0
, a
1
0, 1.
= 2
180
2
= 2
90
180 1 (mod 181).
r
2,0
=
0
= 1, r
2,1
= = 1.
b
180
2
= 30
90
180 (mod 181), deci a
0
= 1.
Fie b
1
= bg
1
30 91 15 (mod 181). Din b
180
2
2
1
15
45
1 (mod 181),
rezulta b
180
2
2
1
r
2,0
(mod 181), adica a
1
= 0. Deci, x 1 (mod 4).
2. q = 3. Reluam procedeul anterior, si, pentru x a
0
+a
1
3 (mod 9),
cu 0 a
0
, a
1
2, rezulta:
r
3,0
1 (mod 181), r
3,1
2
180
3
2
60
48 (mod 181),
r
3,2

2
132 (mod 181).
30
180
3
= 30
60
1 r
3,0
(mod 181), deci a
0
= 0.
Acum, b
1
= b = 30. Din b
180
3
2
1
30
20
132 r
3,2
(mod 181), rezulta
a
1
= 2, deci x 6 (mod 9).
3. q = 5.

In acest caz, x a
0
(mod 5), 0 a
0
4.
r
5,0
1 (mod 181), r
5,1
2
180
5
2
36
59 (mod 181),
r
5,2

2
42 (mod 181), r
5,3

3
125 (mod 181),
r
5,4

4
135 (mod 181).
b
180
5
30
36
125 r
5,3
(mod 181). Astfel, a
0
= 3 si x 3 (mod 5).
Rezolvam sistemul:
_
_
_
x 1 (mod 4)
x 6 (mod 9)
x 3 (mod 5)
folosind teorema chinezeasca a resturilor si obt inem x 33 (mod 180).
Deci, log
2
30 = 33.
12.3 Algoritmul Pollard rho
Algoritmul Polard rho pentru calculul logaritmului discret este preferat
algoritmului Shanks datorita faptului ca acesta necesita o cantitate mai
mica de date ce trebuie stocate. Pentru a simplica prezentarea acestui
algoritm vom considera cazul n care grupul ciclic G este Z

p
, cu p numar
prim.
12.3. ALGORITMUL POLLARD RHO 223
Grupul G este partit ionat n trei mult imi S
1
, S
2
, S
3
, de cardinale
aproximativ egale. Alegerea celor trei submult imi trebuie facuta cu grija:
1 / S
2
si criteriul dupa care se face distribuirea elementelor grupului n
ecare mult ime trebuie sa cont ina condit ii usor de vericat. Cele mai
simple si mai des ntalnite moduri de partit ionare sunt urmatoarele:
S
1
= x G [ 0 < x <
p
3

S
2
= x G [
p
3
< x <
2p
3

S
3
= x G [
2p
3
< x < p
sau
S
1
= x G [ x 1 (mod 3)
S
2
= x G [ x 0 (mod 3)
S
3
= x G [ x 2 (mod 3)
Denim sirul (x
i
)
i0
de elemente ale grupului G prin x
0
= 1 si,
pentru i > 0:
x
i+1
=
_
_
_
bx
i
, x
i
S
1
;
x
2
i
, x
i
S
2
;
gx
i
, x
i
S
3
.
Sirul astfel construit determina alte doua siruri de numere naturale
(c
i
)
i0
si (d
i
)
i0
care verica x
i
= g
c
i
b
d
i
. Astfel, c
0
= 0, d
0
= 0 si pentru
i > 0,
c
i+1
=
_
_
_
c
i
, x
i
S
1
;
2c
i
(mod p 1), x
i
S
2
;
c
i
+ 1 (mod p 1), x
i
S
3
.
si
d
i+1
=
_
_
_
d
i
+ 1 (mod p 1), x
i
S
1
;
2d
i
(mod p 1), x
i
S
2
;
d
i
, x
i
S
3
.
Algoritmul lui Floyd de ciclare, prezentat n 11.2, este folosit n con-
tinuare pentru a determina o coliziune x
i
= x
2i
.
224 CAPITOLUL 12. PROBLEMA LOGARITMULUI DISCRET
Atunci, g
c
i
b
d
i
g
c
2i
b
d
2i
(mod p), de unde g
c
i
c
2i
b
d
2i
d
i
(mod p).
Daca notam e d
2i
d
i
(mod p 1) si f c
i
c
2i
(mod p 1),
0 e, f p 2, obt inem
b
e
g
f
(mod p) (12.1)
de unde,
e log
g
b f (mod p 1). (12.2)
Aceasta congruent a ofera o posibilitate de a determina log
g
b daca
e ,= 0 (mod p 1).

In cazul n care e 0 (mod p 1), trebuie alese alte
valori pentru c
0
, d
0
si repetat procedeul.
Fie d = (e, p1) si u, v numerele ntregi pentru care d = eu+(p1)v.
Din congruent a ( 12.1) rezulta b
eu
g
fu
(mod p). Obt inem:
b
d
b
eu
_
b
p1
_
v
b
eu
g
fu
(mod p).
Cum b g
log
g
b
(mod p), deducem
g
d log
g
b
g
fu
(mod p)
si, n nal,
d log
g
b fu (mod p 1).
Fie k numar natural pentru care d log
g
b = fu+k(p1). Din d [ p1,
rezulta d [ fu si astfel,
log
g
b =
k(p 1) +fu
d
pentru un k, 0 k d 1.
Daca d = 1, e are invers modulo p 1 si, din ( 12.2), obt inem
log
g
b ef (mod p 1).
Daca d ,= 1, se calculeaza log
g
b, dand valori lui k, pana se verica
congruent a g
log
g
b
b (mod p). Daca valoarea lui d este foarte mare,
atunci trebuie cautata o alta varianta de lucru datorita volumului mare
de veric ari ce trebuie facute.
Putem face urmatoarea observat ie: daca grupul G are ordinul n, un
numar prim si e ,= 0 (mod n), atunci, d = 1 si determinarea logaritmului
discret se simplica.
12.3. ALGORITMUL POLLARD RHO 225
Pentru acest caz, propunem urmatorul algoritm:
Algoritm 12.3.1 (Polard-rho)
INPUT: g, b cu semnicat iile anterioare si
n numar prim, egal cu ordinul grupului G.
OUTPUT: log
g
b.
1. x
0
1, c
0
0, d
0
0.
2. Pentru i = 1, 2, . . . efectueaza:
2.1. Folosind x
i1
, c
i1
, d
i1
si x
2i2
, c
2i2
, d
2i2
calculeaza x
i
, c
i
, d
i
si x
2i
, c
2i
, d
2i
folosind relat iile anterioare.
2.2. Daca x
i
= x
2i
atunci:
2.2.1. e d
2i
d
i
(mod n)
2.2.2. Daca e 0 (mod n), returneaz a mesaj de esec
si se opreste; altfel calculeaza si returneaza
log
g
b = e(c
i
c
2i
) (mod n).
Sa vedem, pe un caz concret, cum funct ioneaza algoritmul. Calculam
log
2
153 n Z

181
. Alegem pentru partit ionare grupului, a doua varianta
prezentata. Rezultatele sunt cuprinse n urmatorul tabel:
i x
i
c
i
d
i
x
2i
c
2i
d
2i
1 153 0 1 60 0 2
2 60 0 2 141 1 4
3 161 0 4 123 3 8
4 141 1 4 109 6 17
5 152 2 8 24 6 19
6 123 3 8 3 24 76
7 106 6 16 81 96 124
8 109 6 17 34 24 136
9 25 6 18 87 25 137
10 24 6 19 19 50 95
11 33 12 38 22 51 96
12 3 24 76 80 102 14
13 9 48 152 45 103 15
14 81 96 124 134 26 31
15 45 12 68 148 54 62
226 CAPITOLUL 12. PROBLEMA LOGARITMULUI DISCRET
i x
i
c
i
d
i
x
2i
c
2i
d
2i
16 34 24 136 11 54 64
17 134 24 137 108 55 65
18 87 25 137 160 111 130
19 148 50 94 34 42 82
17 134 24 137 108 55 65
18 87 25 137 160 111 130
19 148 50 94 34 42 82
20 19 50 95 87 43 83
21 11 50 96 19 86 167
22 22 51 96 22 87 168
Am gasit o coliziune x
22
= x
44
. Atunci, avem de rezolvat congruent a
(168 96)y 51 87 (mod 180).
Ea este echivalenta cu 72y 36 (mod 180), adica y 2 (mod 5). Deci,
y = 2 + 5k, k < 36.
Pentru k = 21 obt inem y = 107 care verica 2
107
153 (mod 181). Deci,
log
2
153 = 107.
12.4 Algoritmul index-calculus
Acest algoritm reprezinta cea mai puternica metoda cunoscuta pentru
determinarea logaritmului discret. Ea este nsa aplicabila doar unor
grupuri, cum ar Z

p
sau pentru grupul multiplicativ al unui corp nit cu
p
n
elemente, unde p este numar prim. Algoritmul este n multe privint e
asemanator cu metoda bazei factor, prezentata n capitolul 11.7.
Pentru o prezentare cat mai simplicata a acestui algoritm, vom stu-
dia doar cazul lui G = Z

p
. Pentru cazul G = F

p
n unde F
p
n este un corp
nit cu p
n
elemente, trebuie mai ntai studiate proprietat ile corpurilor
nite, construct ia acestora, algoritmul Berlekamp de factorizare a poli-
noamelor cu coecient i ntr-un corp nit (ce pot gasite n [9]). Doar
dupa aceea se poate nt elege algoritmul prezentat n [12].
12.4. ALGORITMUL INDEX-CALCULUS 227
Algoritmul este format din doua etape importante:
Pregatirea calcului.
1. Se alege mai ntai o baza B Z

p
.

In cazul nostru, de obicei


se aleg primele t numere prime avand grija ca majoritatea elementelor
grupului sa poata exprimate n funct ie de acestea.
Fie B = p
1
, p
2
, . . . , p
t
.
2. Se determina log
g
p
i
pentru ecare element al bazei. Pentru
aceasta, se alege aleator k, 0 k p 2, si se calculeaza g
k
(mod p).
Vedem daca
g
k

i=1
p
a
i
i
(mod p),
unde a
i
0.
Daca relat ia nu se verica, se alege alta valoare pentru k.
Daca congruent a are loc, rezulta
k
t

i=1
a
i
log
g
p
i
(mod p 1).
Se repeta acest procedeu pana obt inem un sistem liniar de congruent e cu
solut ie unica, adica determinantul matricei sistemului este numar prim
cu p 1.

In acest moment, rezolvand sistemul obt inem o baza de date ce
este folosita n etapa urmatoare.
T inand cont de cele prezentate, rezulta ca dimensiunea bazei trebuie
aleasa cu grija. Baza trebuie sa cont ina un numar redus de elemente,
pentru ca sistemul de congruent e ce trebuie rezolvat sa nu e prea mare.

In acelasi timp, daca t este prea mic, exista riscul ca relat iile ce trebuie
aate sa nu se gaseasca usor.
Calculul logaritmului discret.
1. Se alege aleator k, cu 0 k p 2 si se calculeaza
bg
k
(mod p).
2. Daca bg
k

i=1
p
b
i
i
(mod p), b
i
0, aplicam logaritmul n
ambii membri ai congruent ei si obt inem valoarea dorita
log
g
b
t

i=1
b
i
log
g
p
i
k (mod p 1).
228 CAPITOLUL 12. PROBLEMA LOGARITMULUI DISCRET

In caz contrar, se repeta calculul pentru o alta valoare a lui k.


Spre exemplu, sa calculam log
2
62n Z

181
. Alegem baza B = 2, 3, 5.
Din 2
56
3 (mod 181) rezulta log
2
3 = 56.
2
90
180 2
2
3
2
5 (mod 181) conduce la congruent a
90 2 + log
2
3 + log
2
5 (mod 180).

Inlocuind, rezulta log
2
5 = 156.
Deci, log
2
2 = 1, log
2
3 = 56, log
2
5 = 156.
Din 62 2
8
5
3
(mod 181), obt inem
log
2
62 + 8 3 log
2
5 (mod 180).
Atunci, log
2
62 468 100 (mod 180). Deci, log
2
62 = 100.
Exercit ii propuse
1. Folosind algoritmul Shanks determinat i:
log
11
14 (mod 23), log
3
57 (mod 113).
2. Cu ajutorul algoritmului Pohlig-Hellman, calculat i:
log
2
28 (mod 37), log
11
8 (mod 41).
3. Aplicat i algoritmul Pollard-rho pentru a aa
log
2
228 (mod 191)
4. Folosind algoritmul index-calculus:
i) rezolvat i congruent a 3
x
76 (mod 89).
ii) aat i valoarea lui log
6
13 (mod 229).
CAPITOLUL 13
Problema radacinilor
patrate modulo n
Folosind algoritmul 7.3.1, putem determina usor daca un ntreg a cu
1 < a < p, este rest patratic modulo p, adica stabilim daca congruent a
x
2
a (mod p) are solut ii.
Daca consideram acum un numar compus, n, spre deosebire de cazul
precedent(n = p prim), aici stabilirea daca a este rest patratic modulo
n este mult mai complicata.
Daca simbolul Jacobi
_
a
n
_
= 1, atunci este simplu, a este non-rest
patratic modulo n.
Problema apare cand
_
a
n
_
= 1.

In acest caz, stabilirea daca a este rest
patratic sau nu modulo n este considerata o problema dicila. Aceasta
poarta numele de problema resturilor patratice si sta la baza secu-
ritat ii unor scheme criptograce cu cheie publica.
Funct iile criptograce folosesc frecvent operat ii de ridicare la patrat
modulo n sau de extragere a radacinii patrate modulo n. Din pacate,
daca n este compus si nu i se cunoaste descompunerea n factori primi,
este foarte dicil sa determinam radacini patrate modulo n. Aceasta
problema este cunoscuta sub numele de problema radacinilor patrate
modulo n. S-a demonstrat ca aceasta problema este computat ional
echivalenta cu problema factorizarii (vezi [15]).
229
230 CAPITOLUL 13. R

AD

ACINI P

ATRATE
13.1 Radacini patrate mod p
Pentru a determina solut iile congruent ei x
2
a (mod p) unde a este un
rest patratic modulo p, ne vom folosi de b, un non-rest patratic modulo
p, pe care l determinam prin ncercari.
Mai ntai scriem p 1 = 2
s
t, unde t este impar. Facem notat iile:
c b
t
(mod p), r a
t+1
2
(mod p),
cu c, r < p.
Aratam ca c are ordinul egal cu 2
s
modulo p.
Observam ca c
2
s
b
2
s
t
b
p1
1 (mod p). Deci, ord
p
c [ 2
s
. Pre-
supunem ord
p
c = 2
s1
, unde s
1
< s. Fie o radacina primitiva modulo
p. Atunci, conform propozit iei 6.1.3, exista k cu 1 k (p) astfel
ca c =
k
. Din
k2
s
1
1 (mod p), rezulta 2
s
t [ k2
s
1
. Din presupunerea
facuta, 2
ss
1
t [ k deci, k este numar par. Rezulta c =
2k
1
si c devine
patrat modulo p. Aceasta armat ie nu este nsa adevarata, pentru ca
_
c
p
_
=
_
b
p
_
t
= (1)
t
= 1.

In concluzie, ord
p
c = 2
s
.
Observam ca
_
r
2
a
1
_
2
s1
a
2
s1
t
= a
p1
2

_
a
p
_
1 (mod p).
Vomnlocui r cu un element x de ordin 2
s
modulo p astfel ca x
2
a
1

1 (mod p). Ramane sa gasim o putere convenabila c


j
, cu 0 j < 2
s
,
pentru care x = c
j
r este radacina patrata modulo p a lui a.
Pentru aceasta, scriem j n baza 2 astfel
j = j
0
+ 2j
1
+ 4j
2
+. . . + 2
s2
j
s2
si sa vedem cum determinam cifrele sale binare.

Inainte de a realiza
acest lucru, subliniem ca putem presupune j < 2
s1
deoarece c
2
s1

1 (mod p). Prin nlocuirea lui j cu 2


s1
, obt inem un alt j pentru care
c
j
r este cealalta radacina patrata modulo p a lui a.
Procedeul inductiv de determinare a cifrelor binare ale lui j consta
n:
1) Calculam
_
r
2
a
1
_
2
s2
(mod p). Am vazut ca patratul acestei ex-
presii este 1 (mod p). Deci, vom obt ine 1 (mod p). Daca valoarea gasita
13.1. R

AD

ACINI P

ATRATE MOD P 231


este 1, luam j
0
= 0, altfel j
0
= 1. Deci, j
0
este ales astfel ncat
_
c
j
0
r
_
2
a
1
sa aiba ordinul modulo p egal cu 2
s2
.
2) Presupunem ca am determinat j
0
, . . . , j
k1
astfel ca
_
c
j
0
+2j
1
+...+2
k1
j
k1
r
_
2
a
1
sa aiba ordinul 2
sk1
modulo p. Pentru a determina j
k
, ridicam acest
numar la o putere egala cu jumatate din ordinul sau. Obt inem astfel,
_
_
c
j0+2j1+...2
k1
j
k1
r
_
2
a
1
_
2
sk2
1 (mod p).
Pentru valoarea 1, alegem j
k
= 0 iar pentru -1, j
k
= 1.
Astfel,
_
c
j0+2j1+...+2
k
j
k
r
_
2
a
1
va avea ordinul 2
sk2
modulo p.
Cand ajungem la j = s 2, vom avea
_
c
j
0
+2j
1
+...+2
s2
j
s2
r
_
2
a
1
1 (mod p),
de unde c
j
r este cel cautat.
Sa gasim o radacina patrata a lui a = 186 modulo p = 401.
Primul non-rest patratic gasit este b = 3. Avem p1 = 2
4
25. Atunci,
c 3
25
268 (mod 401) si r a
13
103 (mod 401).
Aplicam algoritmul de determinare al inversului lui a modulo 401 si
obt inem a
1
235 (mod 401).
Calculam r
2
a
1
98 (mod 401) cu ord
401
98 = 8.
Din 98
4
1 (mod 401), rezulta j
0
= 1.
Calculam apoi (cr)
2
a
1
(268 103)
2
235 1 (mod 401). Cum, la
patrat, numarul va 1, obt inem j
1
= 0 si j
2
= 1. Astfel, j = 1 + 2 0 +
4 1 = 5. Radacina patrata cautata este c
5
r 304 (mod 401).
232 CAPITOLUL 13. R

AD

ACINI P

ATRATE
Algoritm 13.1.1 (Radacini patrate mod p prim)
INPUT: numerele naturale a < p, cu p prim impar.
OUTPUT: Doua radacini patrate ale lui a mod p.
1. Calculeaz a
_
a
p
_
folosind algoritmul 7.3.1.
2. Daca
_
a
p
_
= 1, atunci returneaza a nu are radacini patrate
( mod p) si se opreste.
3.Cauta 1 b p 1, pana cand
_
b
p
_
= 1.
4. Scrie p 1 = 2
s
t, unde t este impar.
5. Calculeaz a a (mod p), folosind algoritmul 3.2.1.
6. Pune c b
t
(mod p), r a
(t+1)/2
(mod p) (algoritmul 3.1.1)
7. Pentru i = 1, . . . , p 1 executa:
7.1. d (r
2
a)
2
si1
(mod p)
7.2. Daca d 1 (mod p), atunci r r c (mod p).
7.3. c c
2
(mod p)
8. Returneaza r,-r.
Cea mai simpla situat ie ce poate apare pentru acest algoritm este cea
n care p 3 (mod 4). Atunci, s = 1, de unde
t + 1
2
=
p + 1
4
. Atunci,
_
a
p+1
4
_
2
= a
p+1
2
= a
p1
2
a
_
a
p
_
a a (mod p), presupunand ca a
este rest patratic modulo p.
Deci, x r a
p+1
4
(mod p) sunt radacinile patrate pentru a modulo
p.
Astfel, algoritmul precedent capata urmatoarea forma simplicata:
Algoritm 13.1.2 (Radacini patrate mod p prim, p 3 (mod 4))
INPUT: numerele naturale p 3 (mod 4), prim si a un rest patratic
modulo p.
OUTPUT: Doua radacini patrate ale lui a mod p.
1. Calculeaz a r a
p+1
4
(mod p) folosind algoritmul 3.1.1.
2. Returneaza r, r.
13.2. R

AD

ACINI P

ATRATE MOD N 233


Daca particularizam algoritmul 13.1.1 pentru cazul s = 2 si ne
folosim de faptul ca 2 este non-rest patratic modulo un numar prim
p 5 (mod 8), obt inem o forma simplicata, si anume:
Algoritm 13.1.3 (Radacini patrate mod p 5 (mod 8))
INPUT: numerele naturale p 5 (mod 8), prim si a un rest patratic
modulo p.
OUTPUT: Doua radacini patrate ale lui a mod p.
1. Calculeaza d a
p1
4
(mod p), folosind algoritmul 3.1.1.
2. Daca d = 1, calculeaza r a
(p+3)/8
(mod p).
3.Daca d = p 1, calculeaza r 2a(4a)
(p5)/8
(mod p).
4. Returneaza r, r.
Daca p 1 = 2
s
t cu s mare, este preferabil sa se foloseasca un alt
algoritm, n locul celui init ial. Acesta utilizeaza polinoame cu coecient i
ntregi modulo p. Cei interesat i pot gasi mai multe date referitoare la
aceasta problema, consultand [15].
13.2 Radacini patrate mod n
Vom studia doar cazul n care n este produs de doua numere prime im-
pare diferite p si q. Pentru a gasi radacinile patrate ale lui a modulo
n = pq, aam mai ntai radacinile patrate ale lui a modulo p si modulo
q, dupa care aplicam teorema chinezeasca a resturilor pentru a aa
radacinile patrate modulo n ale lui a.
Astfel, presupunem ca 1 a n 1 este un rest patratic modulo n,
adica congruent a
x
2
a (mod n) (13.1)
are solut ii. Fie x
0
o solut ie a acesteia. Aratam ca ea are exact 4 solut ii
necongruente modulo n. Pentru aceasta, e
x
1
x
0
(mod p), 0 < x
1
< p (13.2)
x
2
x
0
(mod q), 0 < x
2
< q (13.3)
Atunci, congruent a
x
2
a (mod p) (13.4)
234 CAPITOLUL 13. R

AD

ACINI P

ATRATE
are exact doua solut ii necongruente, pe x
1
si p x
1
iar
x
2
a (mod q) (13.5)
pe x
2
si q x
2
.
Congruent a ( 13.1) este echivalenta cu sistemul format din congruent ele
( 13.4) si ( 13.5).
Astfel, folosind teorema chinezeasca a resturilor, exista exact 4 solut ii
necongruente modulo n = pq, ce se obt in rezolvand urmatoarele sisteme:
(S
1
)
_
x x
1
(mod p)
x x
2
(mod q)
(S
2
)
_
x x
1
(mod p)
x q x
2
(mod q)
(S
3
)
_
x p x
1
(mod p)
x x
2
(mod q)
(S
4
)
_
x p x
1
(mod p)
x q x
2
(mod q)
Daca notam solut ia sistemului (S
1
) cu x si solut ia lui (S
2
) cu y, atunci
solut ia sistemului (S
3
) este n y iar cea a ultimului sistem este n x,
dupa cum se poate verica usor.
Algoritmul urmator realizeaza cele prezentate:
Algoritm 13.2.1 (Radacini patrate mod n = pq)
INPUT: numerele naturale p, q prime impare cu n = pq
si a un rest patratic modulo n.
OUTPUT: Cele patru radacini patrate ale lui a mod n.
1. Folosind algoritmul 13.1.1, determina cele doua radacini
patrate r ale lui a mod p.
2. Folosind algoritmul 13.1.1, determina cele doua radacini
patrate s ale lui a mod q.
3. Foloseste algoritmul 1.2.2 pentru a determina c, d
astfel ca cp +dq = 1.
4. Pune x rdq +scp (mod n), y rdq scp (mod n).
5. Returneaza x (mod n), y (mod n).
Daca consideram acum cazul particular
n = pq, p q 3 (mod 4),
congruent a ( 13.4) are solut iile x
1
a
p+1
4
(mod p), dupa cum am
vazut mai nainte, cand modulul era prim.
La fel, ( 13.5) va avea solut iile x
2
a
q+1
4
(mod q).
13.2. R

AD

ACINI P

ATRATE MOD N 235


Pentru a exemplica cele prezentate, sa consideram un caz numeric
unde a = 860, n = 11021 = 103 107.
Sa rezolvam congruent a x
2
860 (mod 11021). Ea este echivalenta cu
sistemul:
_
x
2
860 36 (mod 103)
x
2
860 4 (mod 107)
Solut iile primei congruent e din sistem sunt
36
103+1
4
= 36
26
6 (mod 103)
iar pentru a doua congruent a, solut iile sunt
4
107+1
4
= 4
27
2 (mod 107).
Aplicand acum teorema chinezeasca a resturilor, obt inem pentru
congruent a init iala solut iile:
x 212 (mod 11021) si x 109 (mod 11021).

In nal, dam un exemplu de metoda ip coin.


Presupunem ca Alice si Bob comunica electronic.
1. Alice alege doua numere prime mari p si q cu p q 3 (mod 4),
calculeaza n = pq si trimite rezultatul n lui Bob.
2. Bob alege aleator un numar x < n, calculeaza x
2
a (mod n) si
trimite numarul a < n lui Alice.
3. Alice gaseste cele 4 solut ii necongruente x, y, n y, n x ale
congruent ei x
2
a (mod n) si trimite una dintre ele lui Bob.
4. Daca Bob primeste y sau n y el va putea descompune n factori
numarul n astfel:
x +y 2x
1
,= 1 (mod p) si x +y 0 (mod q), de unde, (x +y, n) = q.

In mod analog, pentru cealalta situat ie se obt ine (x+(ny), n) = p.


Daca Bob primeste x sau n x, el nu poate factoriza n timp util pe n.

In consecint a, Bob castiga ip coin daca poate factoriza pe n si


pierde, n caz contrar. T inand cont de observat iile anterioare, exista
sanse egale ca Bob sa primeasca o solut ie a congruent ei care sa-l ajute
sa factorizeze rapid pe n, sau o solut ie care sa nui e utila. Deci, aceasta
metoda ip coin este corecta.
236 CAPITOLUL 13. R

AD

ACINI P

ATRATE
Exercit ii propuse
1. Fie p = 2081. Notam cu b cel mai mic non-rest patratic modulo p.
Aat i b si, folosind metoda prezentata, determinat i o radacina patrata
a lui 302 modulo p.
2. Determinat i o radacina patrata a lui 55 modulo 89.
3. Rezolvat i urmatoarele congruent e:
i) x
2
1 (mod 15).
ii) x
2
31 (mod 75).
iii) x
2
16 (mod 105).
ANEXA A
Numere prime Mersene
Tabel A.1: Numerele prime Mersene cunoscute.
nr. p cifreM
p
Observat ii
1 2 1 antichitate
2 3 1 antichitate
3 5 2 antichitate
4 7 3 antichitate
5 13 4 Reguis, Cataldi (1461)
6 17 6 Cataldi (1588)
7 19 6 Cataldi (1588)
8 31 10 Euler (1750)
9 61 19 Pervouchine, Seelhoff (1883)
10 89 27 Powers (1911)
11 107 33 Powers (1913)
12 127 39 Lucas (1876)
13 521 157 Robinson (1952)
237
238 ANEXA A. NUMERE PRIME MERSENE
nr. p cifreM
p
Observat ii
14 607 183 Robinson (1952)
15 1279 386 Robinson (1952)
16 2203 664 Robinson (1952)
17 2281 687 Robinson (1952)
18 3217 969 Riesel (1957)
19 4253 1281 Hurwitz (1961)
20 4423 1332 Hurwitz (1961)
21 9689 2917 Gillies (1963)
22 9941 2993 Gillies (1963)
23 11213 3376 Gillies (1963)
24 19937 6002 Tuckerman (1971)
25 21701 6533 Noll, Nickel (1978)
26 23209 6987 Noll (1979)
27 44497 13395 Nelson, Slowinski (1979)
28 86243 25962 Slowinski (1982)
29 110503 33265 Colquitt, Welsh (1988)
30 132049 39751 Slowinski (1983)
31 216091 65050 Slowinski (1985)
32 756839 227832 Slowinski, Gage (1992)
33 859433 258716 Slowinski, Gage (1994)
34 1257787 378632 Slowinski, Gage (1996)
35 1398269 420921 Armengaud/GIMPS (1996)
36 2976221 895832 Spence/GIMPS (1997)
37 3021377 909526 Clarkson/GIMPS (1998)
38 6972593 2098960 Hajratwala/GIMPS (1999)
39 13466917 4053946 Cameron/GIMPS (2001)
40? 20996011 6320430 Shafer/GIMPS (2003)
41? 24036583 7235733 Findley/GIMPS (2004)
42? 25964951 7816230 Nowak/GIMPS (2005)
ANEXA B
Numere pseudoprime
Tabel B.1: Cele mai mici numere pseudoprime n cu primele 100 de baze
b.
b n b n b n b n b n
2 341 15 341 28 45 41 105 54 55
3 91 16 51 29 35 42 205 55 63
4 15 17 45 30 49 43 77 56 57
5 124 18 25 31 49 44 45 57 65
6 35 19 45 32 33 45 76 58 133
7 25 20 21 33 85 46 133 59 87
8 9 21 55 34 35 47 65 60 341
9 28 22 69 35 51 48 49 61 91
10 33 23 33 36 91 49 66 62 63
11 15 24 25 37 45 50 51 63 341
12 65 25 28 38 39 51 65 64 65
13 21 26 27 39 95 52 85 65 112
14 15 27 65 40 91 53 65 66 91
239
240 ANEXA B. NUMERE PSEUDOPRIME
b n b n b n b n b n
67 85 74 75 81 85 88 91 95 141
68 69 75 91 82 91 89 99 96 133
69 85 76 77 83 105 90 91 97 105
70 169 77 247 84 85 91 115 98 99
71 105 78 341 85 129 92 93 99 145
72 85 79 91 86 87 93 301 100 153
73 111 80 81 87 91 94 95
Tabel B.2: Numerele pseudoprime cu baza 2 si numerele Carmichael
(cele boldate) mai mici dacat 41041.
a n a n a n a n
1 341 14 4369 27 13741 40 29341
2 561 15 4371 28 13747 41 30121
3 645 16 4681 29 13981 42 30889
4 1105 17 5461 30 14491 43 31417
5 1387 18 6601 31 15709 44 31609
6 1729 19 7957 32 15841 45 31621
7 1905 20 8321 33 16705 46 33153
8 2047 21 8481 34 18705 47 34945
9 2465 22 8911 35 18721 48 35333
10 2701 23 10261 36 19951 49 39865
11 2821 24 10585 37 23001 50 41041
12 3277 25 11305 38 23377
13 4033 26 12801 39 25761
Bibliograe
[1] Alford, W.R., Granville, A., Pomerance, C., There are Innitely
Many Carmichael Numbers, Annals Math., 140 (1994), 703-722.
[2] Albu, T., Ion, I.D., Capitole speciale de teoria numerelor, Editura
Academiei, Bucuresti, 1984.
[3] Albu, T., Ion, I.D., Itinerar elementar n algebra superioara, Edi-
tura All, 1997.
[4] Bobancu, V., Caleidoscop matematic, Editura Albatros, Bucuresti,
1979.
[5] Busneag, D., Boboc, F., Piciu, D., Aritmetica si teoria numerelor,
Editura Universitaria, Craiova, 1999.
[6] Cohen, H., A Course in Computational Algebric Number Theory,
Springer-Verlag, 1995.
[7] Cucurezeanu, I., Probleme de aritmetica si teoria numerelor, Edi-
tura Tehnica, Bucuresti, 1976.
[8] Depman, J., Din istoria matematicii, Editura Cartea Rusa, Bu-
curesti, 1952.
[9] Dinca, Al., Lect ii de algebra, Editura Universitaria, Craiova, 2000.
[10] Kiran, K., Is this number prime?, Berkeley Math Circle, November,
2002.
[11] Koblitz, N., Algebric Aspects of Cryptography, Springer-Verlag,
Berlin, 1988.
241
242 BIBLIOGRAFIE
[12] Koblitz, N., A Course in Number Theory and Cryptography, ed. a
II-a, Springer-Verlag, Berlin, 1994.
[13] Knuth, D.E., The Art of Computer Programming, vol.I, ed. a II-a,
Addison-Wesley, 1973.
[14] Lenstra, A.K., Lenstra, H.W. jr., Manasse, M.S., Pollard, J.M., The
Number Field Sieve, The Developement of the Number Field Sieve,
Springer-Verlag, 1993.
[15] Menezes, A., Oorschot, P., Vanstone, S., Handbook of Applied Cryp-
tography, CRC Press, Boca Raton, Florida, 1998.
[16] Nast asescu, C., Nit a, C., Vraciu, C., Aritmetica si algebra, Editura
Didactica si Pedagogica, Bucuresti, 1993.
[17] Pomerance, C., The Quadratic sieve factoring algorithm, Advances
in Cryptology, Proceedings of Eurocrypt 84, Paris, 1984, Lectures
notes in Computer Sci, 209 (1985), 169-182.
[18] Popovici, C.P., Teoria numerelor, Editura Didactica si Pedagogica,
Bucuresti, 1973.
[19] Robin, G., Algorithmique et Criptographie, Mathematique et Appli-
cations, Ellipses, 1991.
[20] Rosen, K.H., Elementary Number Theory and Cryptography,
Addison-Wesley, 1993.
[21] Sierpinski, W., Elementary Theory of Numbers, Polski Academic
Nauk, Warsaw, 1964.
[22] Sierpinski. W., Ce stim si ce nu stim despre numerele prime, Edi-
tura Stiint ica, Bucuresti, 1966.
[23] Stillwell, J., Elements of Number Theory, Springer-Verlag, New-
York, 2003.
[24] Stinson, D.R., Cryptography: Theory and Practice, CRC Press,
Boca Raton, Florida, 1995.
[25] Yan Song, Y., Number Theory for Computing, ed. a II-a, Springer-
Verlag, 2002.
Index
alfabet de denit ie, 134
algoritm
AKS, 196
cu scop general, 199, 213,
216
cu scop special, 199, 202,
205, 206
de criptare, 135
de decriptare, 135
DSA, 160
Euclid, 15
Euclid extins, 20
Floyd de ciclare, 203, 223
index-calculus, 226
Pohlig-Hellman, 220
Pollard rho, 222
Shanks, 218
asociere n divizibilitate, 13
autenticare, 134, 148
B-numar, 207
Bezout
coecient i, 18
relat ii, 19
teorema, 19
baby-step giant-step, 218
baza factor, 207
metoda, 207
c.m.m.d.c., 13
c.m.m.m.c., 22
caturi part iale, 34
calendar, 85
Gregorian, 86
Iulian, 86
Carmichael, numar, 178
cel mai mic rest n valoare abso-
luta, 207
cheie
de criptare, 135
de decriptare, 135
pereche, 135
privata, 148
publica, 148
secreta, 135
ciclu, 203
cifru, 135
ciurul lui Eratostene, 168
coecient i Bezout, 18
coliziune, 223
condent ialitate, 134
congruent e, 57
liniare, 60
sistem, 63, 65, 67
conjectura lui Goldbach, 26
conjugatul unui irat ional, 43
convergent a, 36
criptanaliza, 133
243
244 INDEX
criptare
cheie, 135
funct ie, 135
criptograe, 133
cu cheie publica, 148, 150,
154156
cu cheie secreta, 135, 136,
138, 139, 142, 144
criptologie, 133
criptosistem
an, 138
asimetric, 135
bloc, 139
caracter, 136
Cezar, 137
cu cheie publica, 135
cu cheie secreta, 135
de deplasare, 138
DES, 144
Die-Hellman, 154
ElGamal, 155
exponent ial, 142
hibrid, 149
Hill, 139
Massey-Omura, 156
Merkle-Hellman, 157
monograc, 136
poligrac, 139
RSA, 150
simetric, 135
structura, 135
curbe eliptice, 195
metoda de factorizare, 206
test de primalitate, 196
decriptare
cheie, 135
funct ie, 135
DES, 144
Die-Hellman
criptosistem, 154
presupunere, 155
divizor, 11
netrivial, 11
propriu, 11
DSA, 160
ecuat ie diofantica, 30
ElGamal
criptosistem, 155
semnatura digitala, 160
Euclid
algoritm, 15
algoritm extins, 20
Euler
criteriu, 116
funct ie , 70
martor, 184
metoda factorizare, 202
pseudoprimi, 181
teorema, 70
exponent 1, 108
maximal, 108
exponent universal, 105
minimal, 106
Fermat
metoda de factorizare, 200
metoda generalizata, 201
mica teorema, 69
numere, 27
test, 180
Fibonacci sir, 17
ltru
al corpurilor de numere, 216
patratic, 213
INDEX 245
fract ie continua
caturi part iale, 34
convergenta, 36
nita, 33
innita, 39
metoda de factorizare, 210,
211
periodica, 43
pur periodica, 48
simpla, 34
funct ie
, 23
, 76
, 76
p
n
, 23
aritmetica, 73
de criptare, 135
de decriptare, 135
Euler , 70
hash, 161
multiplicativa, 73
Gauss, lema, 117
hash
funct ie, 161
valoare, 161
hibrid, criptosistem, 149
Hill, criptosistem, 139
index aritmetic, 102
index-calculus, 226
inegalitat i Cebsev, 25
integritatea datelor, 134
invers mod n
pentru un element, 62
algoritm, 62
pentru matrice, 66
ipoteza Riemann generalizata, 194
irat ional patratic, 43
conjugatul unui, 43
redus, 48
Jacobi, simbol, 126
Lagrange,teorema, 46, 95
legea reciprocitat ii patratice, 120,
122, 128
Legendre,simbol, 115
lema lui Gauss, 117
logaritm discret, 217
algoritm index-calculus, 226
algoritm Pohlig-Hellman, 220
algoritm Pollard rho, 222
algoritm Shanks, 218
problema, 217
Lucas, siruri, 171
Lucas-Lehmer, test primalitate,
174
managementul cheilor, 147
martor, 168
Euler, 184
Massey-Omura, criptosistem, 156
Mersenne
numar, 78
numar prim, 78, 174
test primalitate, 174
metoda
bazei factor, 207
curbelor eliptice pentru fac-
torizare, 206
de calculare a indexului, 218
de gasire de coliziuni, 218
Euler, 202
Fermat, 200
246 INDEX
Fermat generalizata, 201
ltrului corpului de numere,
216
ltrului patratic, 213
fract iilor continue, 210, 211
Pollard p-1, 205
Pollard-rho, 202
ridicarii succesive la patrat,
59
Miller, test, 186, 189, 194
Miller-Rabin, test primalitate, 189,
194
non-repudiere, 134
non-rest patratic, 114
numere
Carmichael, 178
compuse, 11
cu forma speciala, 199
Euler pseudoprime, 181
Fermat, 27, 171
generale, 199
Mersenne, 78, 174
perfecte, 77
prime, 11
prime pereche, 25
pseudoprime, 176
relativ prime, 13
RSA, 150
tari pseudoprime, 186
ordin
al unui element mod n, 93
al lui n la p, 21
Pepin, test primalitate, 171
pereche de chei, 135
perioada, 203
Pohlig-Hellman, algoritm, 220
Poklington, teorema, 170
Pollard
p-1, 205
rho
algoritm DLP, 222
metoda de factorizare, 202
pre-perioada, 203
prim, 11
Mersenne, 78
pereche, 25
teorema, 25
probabil prim, 167
problema
factorizarii, 199
logaritmului discret, 217
logaritmului discret gener-
alizata, 217
radacinilor patrate, 229
resturilor patratice, 229
rucsac supercrescatoare, 156
rucsacului, 156
sumei unei submult imi, 156
probleme dicile, 148, 154, 156,
199, 217, 229
pseudoprim, 176
Euler, 181
tare, 186
putere reziduala, 104
radacini
patratice, 230
primitive, 94
relat ie
asociere n divizibilitate, 13
Bezout, 19
de congruent a, 57
de divizibilitate, 11
INDEX 247
rest
cel mai mic n valoare abso-
luta, 207
patratic, 114
RSA
criptosistem, 150
numere, 150
problema, 152
semnatura digitala, 160
schema
dempart ire a secretelor, 162
Shamir, 164
treshold, 162
de criptare, 135
semnatura digitala, 149, 160
ElGamal, 160
RSA, 160
standard, 160
simbol
Jacobi, 126
Legendre, 115
sistem
complet de resturi, 58
congruent e liniare, 63, 65,
67
redus de resturi, 70
Solovay-Strassen, test primalitate,
183
spat iu
pentru chei, 135
de mesaje, 134
de text cifrat, 134
supercrescator
sir, 156
problema rucsac, 156
TDES, 145
teorema
mpart irii cu rest, 12, 14
Bezout, 19
chinezeasca a resturilor, 63
criteriul Euler, 116
Dirichlet, 25
Euler, 70
Fermat, 69
fundamentala a aritmeticii,
21
Lagrange, 46, 95
Lame, 17
legea reciprocitat ii patratice,
120, 128
Miller, 194
numerelor prime, 25
Poklington, 170
Proth, 171
Rabin, 189, 193
Solovay, 182
Wilson, 68
test
de primalitate folosind curbe
eliptice , 196
de divizibilitate, 8385
de primalitate, 167
deterministic, 167, 169, 171,
194, 196
Fermat, 180
Lucas-Lehmer, 174
Miller, 185, 194
Miller-Rabin, 194
Pepin, 171
probabilistic, 167, 183, 194
Solovay-Strassen, 183
text
cifrat, 134
de baza, 134
248 INDEX
transformare
de criptare, 135
de decriptare, 135
trial division, 168, 200
unitate de text, 134
Wilson, teorema, 68

You might also like