13.07.2015 Views

Matematici discrete pentru CS - Departamentul Automatica ...

Matematici discrete pentru CS - Departamentul Automatica ...

Matematici discrete pentru CS - Departamentul Automatica ...

SHOW MORE
SHOW LESS

Create successful ePaper yourself

Turn your PDF publications into a flip-book with our unique Google optimized e-Paper software.

Lecţia 10PrimalitateStudiem acum complexitatea a douǎ probleme de calcul foarte importante sifoarte legate una de alta.PRIMALITATEA: Fiind dat un întreg, este el prim?FACTORIZAREA: Fiind dat un întreg, care sunt factorii primi ai acestuia?Evident, calitatea de a fi prim a unui numǎr întreg (primalitatea) nu poate fi maidificil de stabilit decât factorizarea lui, deoarece dacǎ se cunoaste cum sestabileste un factor, ar trebui hotǎrît sǎ se cunoascǎ si cum se face testareaprimalitǎtii. Ceea ce este surprinzǎtor si fundamental – si baza criptografieimoderne – este cǎ primalitatea este usoarǎ în timp ce factorizarea este dificilǎ!Cum se stie, primalitatea poate fi rezolvatǎ trivial într-un timp O(x) – de faptsunt de testat numai factorii pânǎ la x . Dar, e limpede, ambii acesti algoritmisunt exponentiali – exponentiali în numǎrul n de biti ai lui x, o mǎsurǎ maiprecisǎ si mai plinǎ de sens a dimensiunii problemei (vǎzut asa, timpul de rularea algoritmului devine O(2 n ) si O(2 n/2 ), respectiv). În fapt, urmarea acestei linii(de testare a din ce în ce mai putini factori) nu duce nicǎieri: deoarecefactorizarea este dificilǎ, singura sperantǎ de a gǎsi un algoritm rapid <strong>pentru</strong>primalitate este de a cǎuta unul care sǎ decidǎ dacǎ un numǎr n este prim fǎrǎ adescoperi un factor al lui n în cazul în care rǎspunsul este negativ.Imediat, este descris un astfel de algoritm. Acest algoritm se bazeazǎ pe faptulurmǎtor relativ la exponentierea modulo un-numǎr-prim.Teorema 10.1 (Mica teoremǎ a lui Fermat): Dacǎ p este numǎr prim, atunci<strong>pentru</strong> orice a ≠ 0 mod p are loc a p – 1 = 1 mod p.Demonstratie: Se considerǎ toate numerele nenule modulo p, Φ = {1, 2, …, p –1}. Acum, dacǎ se ia un a din aceastǎ multime si dacǎ se multiplicǎ toate acestenumere prin a modulo p, se obtine o altǎ multime Φ a = {a.1, a.2, …, a.(p – 1)},toate mod p. Afirmǎm cǎ toate cele p – 1 numere din Φ a sunt distincte si înconsecintǎ Φ a = Φ. Ca demonstratie, dacǎ a.i = a.j mod p, atunci, prinmultiplicarea ambilor membri cu a – 1 mod p (deoarece p este prim si a ≠ 0 modp se stie cǎ a are un invers) se obtine i = j. Prin urmare, produsele ∏∏x∈Φx six∈ Φx sunt egale, adicǎa(a.1).(a.2)….(a.(p – 1)) = 1.2….(p – 1) mod pAcum, prin multiplicarea egalitǎtii cu 1 –1 mod p, apoi cu 2 –1 mod p s.a.m.d.pânǎ la (p – 1) –1 mod p se obtine teorema.□85

Hooray! Your file is uploaded and ready to be published.

Saved successfully!

Ooh no, something went wrong!