edp 2010. isbn 978-973-3-3370-7 dáné károly andrás dan...

208

Upload: others

Post on 02-Sep-2019

6 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: EDP 2010. ISBN 978-973-3-3370-7 Dáné Károly András Dan ...edituradp.ro/site_img/downloads/2013/04/interior-alg-comp-i.pdf · Se ³tie c , metoda lui Gauss de rezolvare a unui
Page 2: EDP 2010. ISBN 978-973-3-3370-7 Dáné Károly András Dan ...edituradp.ro/site_img/downloads/2013/04/interior-alg-comp-i.pdf · Se ³tie c , metoda lui Gauss de rezolvare a unui

© EDP 2010. © Horváth Alexandru ISBN 978-973-3-3370-7

Director general: Dáné Károly András Redactor-şef: Dan Dumitru Copertă: Otilia-Elena Borş

Page 3: EDP 2010. ISBN 978-973-3-3370-7 Dáné Károly András Dan ...edituradp.ro/site_img/downloads/2013/04/interior-alg-comp-i.pdf · Se ³tie c , metoda lui Gauss de rezolvare a unui

Memoriei p rinµilor mei

Page 4: EDP 2010. ISBN 978-973-3-3370-7 Dáné Károly András Dan ...edituradp.ro/site_img/downloads/2013/04/interior-alg-comp-i.pdf · Se ³tie c , metoda lui Gauss de rezolvare a unui
Page 5: EDP 2010. ISBN 978-973-3-3370-7 Dáné Károly András Dan ...edituradp.ro/site_img/downloads/2013/04/interior-alg-comp-i.pdf · Se ³tie c , metoda lui Gauss de rezolvare a unui

Prefaµ 

A ceast  carte se dore³te a � o introducere într-un domeniu almatematicii, care de abia î³i �xeaz  contururile: matematicacomputaµional . Pentru a risipi de la bun început neînµelegerile,trebuie precizat faptul, c  sensul termenului "computaµional"

nu se rezum  aici la calcul numeric, ³i în nici un caz nu se refer  la metode decalcul numeric aproximativ.

Termenul "computaµional" acoper  � în percepµia autorului � mai degrab str dania de a face efective rezultatele clasice sau noi ale întregii matema-tici. Pentru a � mai explicit, cititorul este invitat a se gândi spre exem-plu la problema "calculului" structurii unui grup, sau chiar la problemavalid rii/invalid rii unui enunµ, care exprim  o proprietate de geometrie eu-clidian  plan , în limbaj clasic numit  teorem .

Aceast  str danie de a face construcµiile ideatice ale matematicii cât maioperaµionale este favorizat  cu succes de mijloacele de calcul din ce în ce maiperformante de care dispunem. Aceste mijloace ne permit, pe de o parte, s implement m algoritmi din ce în ce mai so�sticaµi, pe de alt  parte, l rgescesenµial aria experiment rilor în cercetarea fundamental  matematic . Au-torul s-a str duit ca acest impact al posibilit µii calculelor efective � impactcare forµeaz  chiar schimbarea de paradigme, ³i regândirea unor concepte fun-damentale ale ³tiinµei, cum ar � o "demonstraµie matematic " � s  transpar cât mai pregnant în paginile acestei c rµi.

Algebra computaµional  reprezint  un capitol relativ nou al matematicii,dar sintagma simbolizeaz  o direcµie de dezvoltare recent  deosebit de vigu-roas  a întregii matematici. Momentul de na³tere � evident convenµional ³isubiectiv � poate � considerat descoperirea bazei Gröbner ³i a algoritmu-lui de calcul al acesteia de c tre Bruno Buchberger în 1965. În clasi�careacapitolelor matematicii promovat  de AMS, Societatea de Matematic  Ame-rican , se poate constata c  dup  versiunile din 1991, 2000, în recenta clasi-�care MSC2010 apare deja de peste 40 de ori sintagma "computaµional", înleg tur  cu, practic, toate capitolele majore ale matematicii, sugerând o am-

5

Page 6: EDP 2010. ISBN 978-973-3-3370-7 Dáné Károly András Dan ...edituradp.ro/site_img/downloads/2013/04/interior-alg-comp-i.pdf · Se ³tie c , metoda lui Gauss de rezolvare a unui

6

ploare deosebit  a studiului aspectelor computaµionale. Sintagma "algebr computaµional " se extinde generic, într-o oarecare m sur , asupra tuturoracestora, fapt care justi�c  apariµia în paginile unui aceluia³i volum a diver-sit µilor de aplicaµii, a³a cum se întâmpl  ³i în cazul volumului de faµ .

Cartea conµine, în afara unui capitol introductiv, trei capitole majore de-dicate câte unui domeniu de aplicaµie a algebrei computaµionale.

Primul capitol vizeaz  demonstrarea automat  a teoremelor de geometrieeuclidian  elementar , ³i se orienteaz  oarecum c tre specializarea de "geome-trie algebric  computaµional ". Fundamentarea se constituie asfel din algebracomutativ  v zut  dinspre geometria algebric .

Al doilea capitol trateaz  subiectul mereu viu al rezolv rii sistemelor deecuaµii polinomiale, studiu care în esenµ , µine tot de geometria algebric , îns aici ne ocup m doar de câteva aspecte computaµionale legate de descriereamulµimii soluµiilor, cu exempli�c ri preponderent pentru cazul num rului �nitde soluµii.

Al treilea capitol vizeaz  teoria codurilor algebrice corectoare de erori, carese construie³te pe teoria corpurilor �nite, prin urmare pe ansamblu su�cientde mult  algebr  computaµional  pentru a � inclus  în aceast  prezentare.

Capitolele sunt relativ independente, îns  exist  cel puµin o punte de leg -tur  între ele: prezenµa efectiv  ³i utilizarea bazei Gröbner ³i a algoritmului decalcul al acesteia. O caracteristic  unitar  a textului este prezenµa calculelorefective prin prezentarea a numeroase exemple concrete. Aceste calcule suntefectuate în dou  medii de programare folosite, pe alocuri, chiar ³i concomi-tent. Este vorba de GAP ³i Singular, pachete de programe deosebite, accesibileliber pe internet, utilizate în cercetarea matematic  fundamental , rod al efor-tului unor colective de matematicieni de prim rang ³i al unui numeros cercde utilizatori care contribuie ³i la permanenta dezvoltare a acestora. Carteanu conµine îns  nicio iniµiere în folosirea acestora, documentaµiile care însoµescaceste pachete sunt oricum accesabile de pe internet, cititorii dornici s  testezeexemplele prezentate pot oricând s  se l mureasc  în privinµa chestiunilor desintax  ale comenzilor, dar ³i de facilit µile lor complete la zi. Capitolele suntînsoµite de problemele propuse, a c ror rezolvare implic  ³i aceste programe.

În încheierea acestei scurte prefeµe, datorez cititorului o m rturisire: carteade faµ  nu se na³te neap rat ³i exclusiv din imperativul de a comunica expe-rienµe acumulate, ci ³i din propria nevoie a autorului de a înv µa. Autorulîmp rt ³e³te ideea c  încercarea de a-i înv µa pe alµii este o cale de aprofun-dare a cuno³tinµelor proprii. Consider a³adar �ecare cititor al acestor paginidrept un partener, care m  însoµe³te în c l toria � sper fascinant  � pe care opropun prin rândurile de faµ .

Autorul

Page 7: EDP 2010. ISBN 978-973-3-3370-7 Dáné Károly András Dan ...edituradp.ro/site_img/downloads/2013/04/interior-alg-comp-i.pdf · Se ³tie c , metoda lui Gauss de rezolvare a unui

Cuprins

Introducere 9

1 Teoreme de geometrie pe calculator 17

1.1 Concepte de baz  . . . . . . . . . . . . . . . . . . . . . . . . . . 171.1.1 Polinoame cu mai multe variabile . . . . . . . . . . . . . 171.1.2 Variet µi a�ne . . . . . . . . . . . . . . . . . . . . . . . . 201.1.3 Ideale . . . . . . . . . . . . . . . . . . . . . . . . . . . . 241.1.4 Inel factor. Inel de fracµii. Localizare . . . . . . . . . . . 311.1.5 Leg tura dintre variet µile a�ne ³i ideale . . . . . . . . . 36

1.2 Construcµia bazei Gröbner . . . . . . . . . . . . . . . . . . . . . 411.2.1 Împ rµirea polinoamelor cu o variabil  . . . . . . . . . . 411.2.2 Împ rµirea polinoamelor cu mai multe variabile . . . . . 451.2.3 Ideale monomiale . . . . . . . . . . . . . . . . . . . . . . 471.2.4 Baze Gröbner . . . . . . . . . . . . . . . . . . . . . . . . 501.2.5 Algoritmul lui Buchberger . . . . . . . . . . . . . . . . . 52

1.3 Demonstraµia teoremelor de geometrie . . . . . . . . . . . . . . 541.4 Aplicaµii � Exemple în Singular . . . . . . . . . . . . . . . . . . 561.5 Probleme propuse . . . . . . . . . . . . . . . . . . . . . . . . . . 61

2 Rezolvarea sistemelor de ecuaµii 67

2.1 Sisteme de ecuaµii polinomiale . . . . . . . . . . . . . . . . . . . 672.1.1 Sisteme liniare . . . . . . . . . . . . . . . . . . . . . . . 682.1.2 Teorema lui Hilbert a zerourilor . . . . . . . . . . . . . . 692.1.3 Sisteme neliniare . . . . . . . . . . . . . . . . . . . . . . 722.1.4 Sisteme cu un num r �nit de soluµii . . . . . . . . . . . 73

2.2 Aplicaµii � Exemple in Singular . . . . . . . . . . . . . . . . . . 752.2.1 Sisteme de ecuaµii liniare . . . . . . . . . . . . . . . . . . 752.2.2 Sisteme de ecuaµii neliniare . . . . . . . . . . . . . . . . 78

2.3 Rezolvarea numeric  a unui sistem nepolinomial . . . . . . . . . 922.3.1 Exemplu cu aproximare Bernstein . . . . . . . . . . . . 93

7

Page 8: EDP 2010. ISBN 978-973-3-3370-7 Dáné Károly András Dan ...edituradp.ro/site_img/downloads/2013/04/interior-alg-comp-i.pdf · Se ³tie c , metoda lui Gauss de rezolvare a unui

8 CUPRINS

2.3.2 Exemplu cu aproximare spline . . . . . . . . . . . . . . . 952.4 Probleme propuse . . . . . . . . . . . . . . . . . . . . . . . . . . 98

3 Coduri corectoare de erori 101

3.1 Un exemplu concret . . . . . . . . . . . . . . . . . . . . . . . . 1023.1.1 O prim  utilizare a programului GAP în coduri . . . . . 105

3.2 Corpuri �nite . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1083.2.1 O problem  de concurs în informatic  . . . . . . . . . . 1083.2.2 Construirea corpurilor �nite . . . . . . . . . . . . . . . . 1153.2.3 Caracteristica unui corp �nit . . . . . . . . . . . . . . . 1223.2.4 Grupul multiplicativ al unui corp �nit . . . . . . . . . . 1233.2.5 Unicitatea corpurilor �nite . . . . . . . . . . . . . . . . . 1253.2.6 Automor�smele unui corp �nit . . . . . . . . . . . . . . 1273.2.7 Existenµa unui corp cu pn elemente . . . . . . . . . . . . 1323.2.8 Polinoame ireductibile . . . . . . . . . . . . . . . . . . . 1343.2.9 Polinomul minimal ³i baza Gröbner . . . . . . . . . . . . 139

3.3 Coduri corectoare de erori . . . . . . . . . . . . . . . . . . . . . 1433.3.1 Concepte de baz  . . . . . . . . . . . . . . . . . . . . . . 1453.3.2 Margini pentru coduri generale . . . . . . . . . . . . . . 147

3.4 Coduri liniare . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1483.4.1 Margini pentru coduri liniare . . . . . . . . . . . . . . . 1553.4.2 Codi�carea ³i decodi�carea codurilor liniare . . . . . . . 156

3.5 Coduri liniare speciale . . . . . . . . . . . . . . . . . . . . . . . 1583.5.1 Coduri Hamming . . . . . . . . . . . . . . . . . . . . . . 1593.5.2 Coduri liniare ciclice . . . . . . . . . . . . . . . . . . . . 1613.5.3 Coduri BCH . . . . . . . . . . . . . . . . . . . . . . . . 1733.5.4 Baza Gröbner ³i decodi�carea codurilor BCH . . . . . . 1783.5.5 Coduri Reed-Solomon . . . . . . . . . . . . . . . . . . . 180

3.6 Aplicaµii � exemple în GAP - GUAVA . . . . . . . . . . . . . . 1823.6.1 Utilizarea codurilor . . . . . . . . . . . . . . . . . . . . . 197

3.7 Probleme propuse . . . . . . . . . . . . . . . . . . . . . . . . . . 198

Bibliogra�e 201

List  de �guri 205

Glosar 206

Page 9: EDP 2010. ISBN 978-973-3-3370-7 Dáné Károly András Dan ...edituradp.ro/site_img/downloads/2013/04/interior-alg-comp-i.pdf · Se ³tie c , metoda lui Gauss de rezolvare a unui

Introducere

S   începem cu sfâr³itul. Pentru a incita curiozitatea cititoru-lui presupunem c  am parcurs deja câteva zeci de pagini deteorie ³i am ajuns la aplicaµii. S  ilustr m deci, ce ³tiu algorit-mii pe care îi vom cunoa³te în continuare, ³i la ce rezultate ne

vor conduce fundament rile teoretice care urmeaz .Prima problem  pe care o consider m este problema rezolv rii sistemelor

de ecuaµii algebrice. Iat  ³i câteva exemple.Consider m mai întâi un sistem liniar.

x − y − z − u + 2v = 32x + y − z − u − 3v = −33x + 2y + z + 2u + v = 14x + y − z − 3u + 3v = 9x + y + z + u + v = 2

Se ³tie c , metoda lui Gauss de rezolvare a unui asemenea sistem de ecuaµiiconst  în eliminarea pe rând a variabilelor, mai precis, se exprim  o variabil dintr-o ecuaµie, apoi se înlocuie³te în (se elimin  din) celelalte ecuaµii, ³i serepet  acest pas, pân  când se termin  variabilele, sau ecuaµiile. În cazulnostru se obµine cam a³a ceva:

x + y + z + u + v = 2

3y + 5z + 7u + v = −1z − 4u + 5v = 16

3u − v = −7v = 1

Sistemul iniµial se transform  astfel într-un sistem "triunghiular", care serezolv  prin determinarea valorilor variabilelor exprimate, în ordine invers .

9

Page 10: EDP 2010. ISBN 978-973-3-3370-7 Dáné Károly András Dan ...edituradp.ro/site_img/downloads/2013/04/interior-alg-comp-i.pdf · Se ³tie c , metoda lui Gauss de rezolvare a unui

10 Introducere

Aceste valori sunt: v = 1u = −2z = 3y = −1x = 1.

Frumuseµea este faptul c  acest rezultat a fost obµinut de un algoritm im-plementat într-un pachet de software specializat pentru algebr  ³i geometriealgebric  computaµional , Singular. Acesta este disponibil gratuit pe internet.

Programul scris în Singular pentru rezolvarea sistemului de mai sus esteurm torul:

ring R=0,(x,y,z,u,v),lp;poly p1=x-y-z-u+2v-3;poly p2=2x+y-z-u-3v+3;poly p3=3x+2y+z+2u+v-1;poly p4=4x+y-z-3u+3v-9;poly p5=x+y+z+u+v-2;ideal I=p1,p2,p3,p4,p5;groebner(I);

LIB "solve.lib";solve(I);

Instrucµiunea cheie este groebner, cea care face triangularizarea sistemului.Despre algoritmul care se a�  în spatele acesteia vom mai vorbi pe larg încapitolele ce urmeaz . Instrucµiunea solve calculeaz  soluµiile în mulµimeanumerelor complexe, ³i are în spate ³i metode numerice aproximative de calcul.

S  lu m un alt exemplu. Se dau dou  (sau mai multe) polinoame de osingur  variabil . Se cere cel mai mare divizor comun al lor.

Iat  un exemplu concret. S  se calculeze cel mai mare divizor comun alpolinoamelor:

p1 = x20 − 1,p2 = x120 − 1,p3 = x5 + x4 + x3 + x2 + x+ 1.

Nimic deosebit, str vechiul algoritm al lui Euclid se descurc  cu aceast problem : am putea calcula cel mai mare divizor comun al lui p1 ³i p2, apoicel mai mare divizor comun al acestuia cu p3, ³i avem rezultatul.

Noi vom folosi totu³i o alt  metod . Scriem în Singular urm torul program:

Page 11: EDP 2010. ISBN 978-973-3-3370-7 Dáné Károly András Dan ...edituradp.ro/site_img/downloads/2013/04/interior-alg-comp-i.pdf · Se ³tie c , metoda lui Gauss de rezolvare a unui

Introducere 11

ring R=0,x,lp;poly p1=x^20-1;poly p2=x^120-1;poly p3=x^5+x^4+x^3+x^2+x+1;ideal I=p1,p2,p3;groebner(I);

Instrucµiunea cheie este tot groebner, ³i ne furnizeaz  rezultatul:

(p1, p2, p3) = x+ 1.

Partea cea mai spectaculoas  îns  de-abia acum începe. Consider m unsistem de ecuaµii polinomiale neliniar. Ne propunem spre exemplu s  rezolv murm torul sistem:

x3 − 3xy + 3z2 = 1x2z + 3yz2 − z2 = 3−x2z + 2y2 + z3 = 2

Poate p rea chiar incredibil, dar exist  algoritm de rezolvare "exact " pen-tru astfel de sisteme! Ghilimelele la termenul exact se refer  la faptul, c rezolvarea acestui sistem se reduce la rezolvarea unei ecuaµii polinomiale de osingur  variabil , de grad superior.

Se ³tie c  formule de rezolvare � implicând pe lâng  operaµiile de baz ³i extragerea de r d cin  � i.e. exprimarea explicit  a soluµiei ecuaµiei cuajutorul coe�cienµilor, exist  doar pentru ecuaµii de ordin 4 inclusiv. Esteclar, c  situaµia pentru sisteme de ecuaµii algebrice neliniare nu poate � maibun  decât pentru ecuaµii de o singur  necunoscut . Faptul îns , c  rezolvareasistemelor cu mai multe necunoscute se reduce la rezolvarea ecuaµiilor, este cutotul remarcabil.

Iat  ³i programul de rezolvare, scris în Singular, precum ³i rezultatul:

ring R=0,(x,y,z),lp;poly p1=x3-3xy+3z2-1;poly p2=x2z+3yz2-z2-3;poly p3=-x2z+2y2+z3-2;ideal I=p1,p2,p3;groebner(I);

LIB "solve.lib";solve(I);

Page 12: EDP 2010. ISBN 978-973-3-3370-7 Dáné Károly András Dan ...edituradp.ro/site_img/downloads/2013/04/interior-alg-comp-i.pdf · Se ³tie c , metoda lui Gauss de rezolvare a unui

12 Introducere

729z21 + 2916z20 − 3645z19 − 14094z18 − 25677z17

−32400z16 − 31482z15 + 16344z14 + 88686z13 + 42056z12

−118191z11 − 199656z10 − 75580z9 + 89238z8 + 151884z7

+129122z6 + 48708z5 − 16038z4 − 41256z3 − 17496z2 + 5832 = 02232410395758457512330353365018920y

+62953278157657061878263952050306z20

+328637503773493952207748257766195z19

−62397440973359733749716933302465z18

−1771894988021516305832097520091391z17

−3282192153596917521513297834207264z16

−4853135198394541361739678228691389z15

−4781168509603021473439992260622447z14

−475503506424356564667271411785366z13

+10895074263712307248945699738718043z12

+10885321992788471886332698014740002z11

−10048957321797036014384419174098447z10

−29016557864084728430842957672957731z9

−20818642913693083613050943983927706z8

+7370805159208119974747905321937016z7

+22490449340981635887207889673569842z6

+24423399071228492619080343470514460z5

+11594581064876178787291365792620682z4

−1477844013372536320473869906881950z3

−7325270924681631854820377218307094z2

−6896584960128782739286342791723108z+526517724286697003778697349660892 = 0

43182x−481824y6z − 481824y6 + 1058076y5z2

+1384380y5z + 165696y5 − 240912y4z4

+649494y4z3 + 1802826y4z2 + 2173528y4z+1927296y4 + 529038y3z5 + 449790y3z4

−806016y3z3 − 524802y3z2 − 3004020y3z−1845048y3 + 445203y2z6 + 901413y2z5

+1167564y2z4 + 598378y2z3 − 2073066y2z2

−1286810y2z − 4290012y2 − 121200yz7 − 444432yz6

+98967yz5 − 524238yz4 + 105078yz3 − 547668yz2

+1619640yz + 1679352y + 40400z7 − 305323z6 − 375117z5

−251184z4 − 2051753z3 + 390696z2 − 419288z + 2844540 = 0

Page 13: EDP 2010. ISBN 978-973-3-3370-7 Dáné Károly András Dan ...edituradp.ro/site_img/downloads/2013/04/interior-alg-comp-i.pdf · Se ³tie c , metoda lui Gauss de rezolvare a unui

Introducere 13

Am inclus aici sistemul transformat, mai mult pentru a impresiona ³i toto-dat  pentru a crea un sentiment de admiraµie vizavi de algoritmul care poaterealiza aceast  performanµ .

S  observ m c  prima ecuaµie conµine doar necunoscuta z ³i este o ecuaµiealgebric  de gradul 21, deci are 21 de r d cini. Remarcabil este acum faptul,c  a doua ecuaµie conµine un singur y, ³i în rest numai puteri ale lui z (evidentcu exponent cel mult 20)! A³adar pentru �ecare valoare a lui z, avem ³i câteun y. În sfâr³it a treia ecuaµie are un singur x, ³i ceilalµi termeni îl conµinnumai pe y ³i z.

Astfel problema rezolv rii sistemului iniµial s-a transformat în problemarezolv rii unui sistem "triunghiular" (în sensul celor spuse mai sus) ³i practics-a redus la problema rezolv rii unei ecuaµii algebrice de grad superior. În acestmoment pot intra pe scen  clasicele metode de rezolvare numeric  aproximativ a ecuaµiilor algebrice. Pachetul Singular conµine asemenea metode. Soluµiilesistemului arat  cam a³a:

x y z

1 −0.072062 + i · 0.952039 0.94443− i · 0.648006 1.070608 + i · 0.573752 −0.072062− i · 0.952039 0.94443 + i · 0.648006 1.070608− i · 0.573753 −0.848005 + i · 1.618178 −0.483605 + i · 0.669006 0.349704− i · 1.5743774 −0.848005− i · 1.618178 −0.483605− i · 0.669006 0.349704 + i · 1.5743775 0.721738 + i · 0.179155 −1.119805 + i · 0.183733 0.101215− i · 0.787526 0.721738− i · 0.179155 −1.119805− i · 0.183733 0.101215 + i · 0.787527 −0.0229623 + i · 1.663995 −1.199549− i · 0.368324 −0.353684− i · 0.6638388 −0.0229623 + i · 1.663995 −1.199549 + i · 0.368324 −0.353684 + i · 0.6638389 −0.447467 + i · 2.451932 −1.6714− i · 0.721403 −0.657404− i · 0.49235610 −0.447467− i · 2.451932 −1.6714 + i · 0.721403 −0.657404 + i · 0.49235611 −1.418637− i · 0.490479 0.733779− i · 0.72217 −0.781963− i · 1.03097312 −1.418637 + i · 0.490479 0.733779 + i · 0.72217 −0.781963 + i · 1.03097313 1.367663− i · 1.832259 −1.053835− i · 1.465191 −0.790929− i · 0.82425314 1.367663 + i · 1.832259 −1.053835 + i · 1.465191 −0.790929 + i · 0.82425315 0.697941 + i · 0.407091 1.229042− i · 0.0362325 −1.107462− i · 0.13509716 0.697941− i · 0.407091 1.229042 + i · 0.0362325 −1.107462 + i · 0.13509717 −2.673561 −0.393312 2.78478418 1 1 119 −2.03556 1.414218 0.5158120 2.097668 1.4258 0.49746321 −4.344962 1.795171 −4.458227

Remarcaµi soluµia 18, ea este un fel de control, întrucât ea a fost de laînceput încorporat  în sistemul de ecuaµii: coe�cienµii au fost ale³i astfel caaceasta s  �e una din soluµii.

Page 14: EDP 2010. ISBN 978-973-3-3370-7 Dáné Károly András Dan ...edituradp.ro/site_img/downloads/2013/04/interior-alg-comp-i.pdf · Se ³tie c , metoda lui Gauss de rezolvare a unui

14 Introducere

Urm torul exemplu pe care-l amintim aici este problema g sirii ecuaµieiimplicite pentru curbe în plan ³i suprafeµe în spaµiu.

Fie spre exemplu curba din plan dat  prin ecuaµiile parametrice{x = t2−1

t2+1

y = 2tt2+1

Problema este g sirea ecuaµiei implicite a acestei curbe. Iat  soluµia dat  de"calculator" prin intermediul programului de mai jos � care apeleaz  evidentinstrucµiunea atotcuprinz toare groebner :

ring R=0,(t,x,y),(dp(1),dp(2));ideal I=(t2+1)*x-t2+1,(t2+1)*x-2t;J=groebner(I);J[1];

Se obµine � conform a³tept rilor � ecuaµia cercului: x2 + y2 = 1.

Pân  aici nimic spectaculos. Dar dac  curba este dat  de ecuaµiile urm toare?{x = t4+t2−t−1

t4+t2+1

y = t3−t+2t4+t2+1

Acum ecuaµia implicit  este:

90701x16 + 447554x15y + 2023428x14y2 + 4503660x13y3 + 10096072x12y4 +10447462x11y5 + 17470008x10y6 + 16556976x9y7 + 20935280x8y8 +17106146x7y9 + 14775850x6y10 + 8973146x5y11 + 5150058x4y12 +2114208x3y13+774389x2y14+172476xy15+32361y16+34047x15−288034x14y+60178x13y2− 1200159x12y3+1927237x11y4− 10014527x10y5− 5322620x9y6−18463460x8y7−13965529x7y8−17943051x6y9−11235129x5y10−7848518x4y11

− 3443299x3y12 − 1471855x2y13 − 320929xy14 − 76567y15 + 10354x14 −123155x13y + 629218x12y2 − 1674363x11y3 + 3241421x10y4 − 3527140x9y5 +1668464x8y6 − 3208231x7y7 + 1533200x6y8 + 211816x5y9 + 1087280x4y10 +743647x3y11 + 514924x2y12 + 60620xy13 + 30884y14 − 106x13 + 2650x11y2 −3922x10y3 − 23956x9y4 +57452x8y5 +60526x7y6 − 252068x6y7 +35616x5y8 +313336x4y9−107590x3y10−101866x2y11+13390xy12+3693y13+106y12 = 0.

Suprafaµa dat  parametric x = u2+v

u4+v2+1

y = u−vu4+v2+1

z = u−v2

u4+v2+1

Page 15: EDP 2010. ISBN 978-973-3-3370-7 Dáné Károly András Dan ...edituradp.ro/site_img/downloads/2013/04/interior-alg-comp-i.pdf · Se ³tie c , metoda lui Gauss de rezolvare a unui

Introducere 15

are ecuaµia implicit :

3x8 − 4x7y + 4x6y2 + 82x5y3 + 173x4y4 + 182x3y5 + 122x2y6 + 50xy7 + 9y8 −12x6yz − 110x5y2z − 272x4y3z − 342x3y4z − 248x2y5z − 98xy6z − 16y7z +10x6z2 +40x5yz2 +112x4y2z2 +178x3y3z2 +160x2y4z2 +80xy5z2 +20y6z2 −4x4yz3−34x3y2z3−56x2y3z3−44xy4z3−16y5z3+3x4z4+12x3yz4+24x2y2z4+24xy3z4+12y4z4−2x7+6x6y+28x5y2+46x4y3+22x3y4−18x2y5−22xy6−6y7−2x6z−28x5yz−44x4y2z−12x3y3z+36x2y4z+40xy5z+16y6z+2x5z2+6x4yz2−22x3y2z2−48x2y3z2−50xy4z2−24y5z2+2x4z3+8x3yz3+22x2y2z3+28xy3z3 +20y4z3 +4x4y2 +4x3y3 +3x2y4 +4xy5 +3y6 − 8x3y2z− 12x2y3z−18xy4z − 12y5z + 4x2y2z2 + 8xy3z2 + 11y4z2 − 2xy4 − 2y5 + 2y4z = 0.

S  mai vedem o aplicaµie, de data aceasta una de cu totul alt tip: demon-straµia automat  a teoremelor de geometrie euclidian  plan .

Iat  ³i aici un exemplu, prezentat f r  preg tirile necesare înµelegerii de-taliilor.

// Problem :// Fie ABCD un p trat. Împ rµim// latura CD în 3 p rµi egale:// DE=EF=FC.// Dreapta AE taie latura BC în punctul G.// Fie H mijlocul segmentului AG.// Atunci:// DH este jum tate din diagonala p tratului.// (Sursa: N.M.Examen Fac. Mat. Bucure³ti,// 1961,enunµ parµial)

Problema de geometrie se trensform  în limbaj algebric, folosind un sistemde coordonate. Aici am ales drept axe laturile AB ³i AD ale p tratului.

Programul scris în Singular arat  astfel:

// u - latura p tratului// ...a³adar coordonatele vârfurilor p tratului sunt:// A(0,0), B(u,0), C(u,u), D(0,u)// Consider m punctele// E(x1,u), G(u,x2), H(x3,x4)// ³i transpunem condiµiile geometrice:// h1 - condiµia de coliniaritate a punctelor A,E,G.// h2 - condiµia de coliniaritate a punctelor A,H,G.// h3 - H mijlocul segmentului AG.// h4 - DE este 1/3 din DC.// g - concluzia: DH este jum tatea diagonalei.

Page 16: EDP 2010. ISBN 978-973-3-3370-7 Dáné Károly András Dan ...edituradp.ro/site_img/downloads/2013/04/interior-alg-comp-i.pdf · Se ³tie c , metoda lui Gauss de rezolvare a unui

16 Introducere

A u B

D CE F

G

H

Figura 1: Problema

ring R=(0,u),(x1,x2,x3,x4,y),lp;poly h1=x1*x2-u^2;poly h2=x2*x3-u*x4;poly h3=x2^2-2*x2*x4-2*u*x3+u^2;poly h4=3*x1-u;poly g=2*x3^2+2*x4^2-4*u*x4+u^2;ideal I=(h1,h2,h3,h4,1-y*g);groebner(I);

Dac  instrucµiunea-minune groebner întoarce rezultatul 1, atunci teoremaeste adev rat , în caz conrar este fals ! Pentru problema noastr  rezultatuleste 1, deci teorema este demonstrat !

Consider m, c  aceste exemple sunt mai mult ca su�ciente pentru a motivaconµinutul paginilor ce urmeaz .

Page 17: EDP 2010. ISBN 978-973-3-3370-7 Dáné Károly András Dan ...edituradp.ro/site_img/downloads/2013/04/interior-alg-comp-i.pdf · Se ³tie c , metoda lui Gauss de rezolvare a unui

Capitolul 1

Teoreme de geometrie

demonstrate pe calculator

G eometria este una din cele mai vechi ramuri ale matematicii.Simbioza ei cu aritmetica dateaz  înc  din antichitate. Leg -turile strânse ³i fecunde cu algebra sunt mai noi, ³i au la originecoordonatizarea descoperit  de Descartes.

În acest capitol va � vorba de leg turi descoperite mai recent, denumite ast zigeometrie algebric . Vom face o introducere în geometria algebric  com-putaµional , care se bazeaz  esenµial pe teoria bazelor Gröbner . Contextulgeneral va � în acela³i timp algebric ³i geometric. Din punct de vedere al-gebric, obiectele de studiu vor � idealele inelelor de polinoame cu mai multevariabile, iar din punct de vedere geometric, variet µile a�ne sau proiective.

1.1 Concepte de baz 

Î n aceast  secµiune reamintim câteva concepte de baz  ale algebrei poli-noamelor cu mai multe variabile, precum ³i a noµiunilor geometrice aferente

acestora, a variet µilor algebrice.

1.1.1 Polinoame cu mai multe variabile

Polinoamele sunt expresii algebrice construite din variabile ³i numere (coe�-cienµi) cu ajutorul operaµiilor de adunare, sc dere ³i înmulµire.

Prin urmare aceste trei operaµii se pot efectua neîngr dit ³i între polinoame.Pentru a putea încerca împ rµirea (cu rest) a polinoamelor este convenabil caîntre coe�cienµii acestora s  dispunem ³i de împ rµire neîngr dit , în termeni

17

Page 18: EDP 2010. ISBN 978-973-3-3370-7 Dáné Károly András Dan ...edituradp.ro/site_img/downloads/2013/04/interior-alg-comp-i.pdf · Se ³tie c , metoda lui Gauss de rezolvare a unui

18 CAPITOLUL 1. TEOREME DE GEOMETRIE PE CALCULATOR

tehnici mulµimea coe�cienµilor este bine s  formeze un corp de numere. Cor-purile de numere cele mai familiare sunt:

• corpul numerelor raµionale Q

• corpul numerelor reale R

• corpul numerelor complexe C

• corpri de numere algebrice, ex. Q(√2)

• corpuri �nite, ex. Z2,Z3,Z5.

Aceste corpuri de numere le vom avea în vedere ³i în realizarea computaµio-nal  a polinoamelor. Ocazional, vor mai apare ³i corpuri de fracµii raµionale,dar ele vor avea o prezentare satisf c toare în locul respectiv.

În cele ce urmeaz  cititorul este invitat s  gândeasc  în primul rând corpulnumerelor complexe drept corp al coe�cienµilor.

De�niµie 1.1.1. Un monom în variabilele x1, x2, . . . , xn este un produs deforma

xα = xα11 · xα2

2 · · · · · xαnn ,

unde exponenµii sunt întregi nenegativi. Suma acestora |α| = α1+α2+· · ·+αn

se nume³te gradul total al monomului.

D m acum o de�niµie formal  pentru noµiunea de polinom.

De�niµie 1.1.2. Un polinom f în variabilele x1, x2, . . . , xn cu coe�cienµi încorpul k este o combinaµie liniar  �nit  de monoame, cu coe�cienµi din k,adic 

f =∑α

aαxα, aα ∈ k,

unde α = (α1, α2, . . . , αn). Mulµimea acestor polinoame se noteaz  cu k[x] =k[x1, x2, . . . , xn].

Urm toarea de�niµie practic �xeaz  o terminologie.

De�niµie 1.1.3. Fie f =∑

α aαxα un polinom în k[x].

• Num rul aα ∈ k se nume³te coe�cientul lui xα.

• Dac  aα = 0, aαxα se nume³te termen al polinomului.

• Gradul polinomului, notat deg(f) este maxα{|α|; α = 0}.

Page 19: EDP 2010. ISBN 978-973-3-3370-7 Dáné Károly András Dan ...edituradp.ro/site_img/downloads/2013/04/interior-alg-comp-i.pdf · Se ³tie c , metoda lui Gauss de rezolvare a unui

1.1. CONCEPTE DE BAZ� 19

De�niµie 1.1.4. Se nume³te spaµiu a�n n-dimensional peste corpul k

kn = {(a1, a2, . . . , an); ai ∈ k, i = 1, 2, . . . , n}.

Cu ajutorul unui polinom de n variabile putem de�ni o funcµie pe spaµiul a�nn-dimensional, folosind "formula" polinomului pentru calculul valorii funcµiei.Mai exact polinomul f =

∑α aαx

α din k[x1, x2, . . . , xn] de�ne³te o funcµie

f : kn → k,

prin asocierea lui (a1, a2, . . . , an) cu f(a1, a2, . . . , an), valoare a polinomului cese obµine prin înlocuirea lui x1 cu a1, a lui x2 cu a2, etc.

Se pune imediat întrebarea, în ce m sur  polinomul ³i funcµia polinomial asociat  se determin  reciproc? Întrucât diferenµei polinoamelor corespundediferenµa funcµiilor, ³i polinomul nul (cu toµi coe�cienµii nuli) de�ne³te evidentfuncµia identic nul , întrebarea de mai sus se reformuleaz  astfel: exist  oarepolinoame nenule, care s  de�neasc  funcµia polinomial  identic nul ?

R spunsul la aceast  întrebare este negativ � cum ne a³tept m de altfel �doar în cazul corpurilor in�nite. Dac  un corp k este �nit, ³i spre exemplu aren elemente, c1, c2, . . . , cn, atunci polinomul f(x) = (x−c1)·(x−c2)·· · ··(x−cn)are gradul n, deci este nenul în k[x], ³i evident de�ne³te funcµia polinomial nul  pe k.

Are loc deci urm toarea propoziµie.

Propoziµie 1.1.5. Fie k un corp in�nit ³i f ∈ k[x1, x2, . . . , xn] un polinom.Atunci f = 0 în k[x1, x2, . . . , xn] dac  ³i numai dac  f : kn → k, este funcµiaidentic nul .

Demonstraµie. Dac  polinomul este nul, funcµia polinomial  este evident nul .Invers, raµionamentul este o inducµie dup  num rul variabilelor n. Pentru n = 1�e polinomul de grad m,

f = cmxm + cm−1xm−1 + · · ·+ c1x+ c0.

Corpul k �ind in�nit, putem considera m + 1 valori, a0, a1, . . . , am, distictedou  câte dou . Presupunând, c  funcµia polinomial  este nul , egalit µilef(a0) = 0, f(a1) = 0, . . . , f(am) = 0 formeaz  un sistem de ecuaµii omogen,necunoscutele �ind cei m coe�cienµi ai polinomului. Determinantul acestuisistem este ∣∣∣∣∣∣∣∣

am0 am−10 . . . a0 1

am1 am−11 . . . a1 1

. . . . . . . . . . . . . . .amm am−1

m . . . am 1

∣∣∣∣∣∣∣∣ =∏i<j

(ai − aj) = 0,

Page 20: EDP 2010. ISBN 978-973-3-3370-7 Dáné Károly András Dan ...edituradp.ro/site_img/downloads/2013/04/interior-alg-comp-i.pdf · Se ³tie c , metoda lui Gauss de rezolvare a unui

20 CAPITOLUL 1. TEOREME DE GEOMETRIE PE CALCULATOR

un determinant de tip Vandermonde, diferit de 0. Prin urmare singura soluµiea sistemului este cel nul, deci toµi coe�cienµii polinomului, în concluzie ³i poli-nomul, este 0.

Pasul inductiv este simplu, ³i este l sat pe seama cititorului.

1.1.2 Variet µi a�ne

Trecând la punctul de vedere geometric, trebuie s  începem cu o de�niµiefundamental .

De�niµie 1.1.6. Fie f1, f2, . . . , fm polinoame în variabilele x1, x2, . . . , xn cucoe�cienµi în corpul k. Se nume³te varietate a�n  de�nit  de aceste polinoame,mulµimea zerourilor comune ale lor, adic  mulµimea notat  V (f1, f2, . . . , fm)dat  prin

{(a1, a2, . . . , an) : fi(a1, a2, . . . , an) = 0, pentru orice i = 1, 2, . . . ,m}.

Pentru a accentua caracterul geometric al acestei noµiuni s  consider mni³te exemple, pentru care putem face ³i reprezent ri gra�ce. Va trebui decis  consider m corpul k = R al scalarilor reali.

Iat  mai întâi câteva exemple de variet µi plane.

Exemplu 1.1.7.

Figura 1.1: V (xy · (x2 + y2− 25)) ³i V (xy(x3− 20x− 15− y2))

Iat  ³i programul Singular cu care am obµinut reprezentarea gra�c  din �guraal turat  1.1.2. În exemplele care urmeaz  se schimb  doar rândul în care sede�ne³te idealul I generat de polinomul corespunz tor exemplului.

LIB "surf.lib";ring R=0,(x,y),dp;ideal I=xy*(x2+y2-25);plot(I);

Page 21: EDP 2010. ISBN 978-973-3-3370-7 Dáné Károly András Dan ...edituradp.ro/site_img/downloads/2013/04/interior-alg-comp-i.pdf · Se ³tie c , metoda lui Gauss de rezolvare a unui

1.1. CONCEPTE DE BAZ� 21

În exemplul de mai sus, factorul xy are un dublu rol. El reprezint  pe deo parte componente ale variet µii algebrice, dar are ³i rolul unui "truc", princare am inclus axele de coordonate în varietatea algebric  reprezentat .

Iat  acum câteva exemple de variet µi în spaµiu. Acestea pot � puncte,curbe, sau suprafeµe, respectiv reuniuni ale acestora. În general zerourile unuipolinom cu trei variabile reale este o suprafaµ . Programul surf apelat dinSingular este capabil s  reprezinte gra�cul acestor suprafeµe chiar din ecuaµialor implicit .

Exemplu 1.1.8.

Figura 1.2: V (x2− y2 + z2) ³i V (x2y − z2), "Withney umbrella."

Exemplele care urmeaz  prezint  singularit µi izolate ale unor suprafeµe.

Exemplu 1.1.9.

Figura 1.3: V (z3− zx2 + y2) ³i V (z4− zx2 + y2)

Page 22: EDP 2010. ISBN 978-973-3-3370-7 Dáné Károly András Dan ...edituradp.ro/site_img/downloads/2013/04/interior-alg-comp-i.pdf · Se ³tie c , metoda lui Gauss de rezolvare a unui

22 CAPITOLUL 1. TEOREME DE GEOMETRIE PE CALCULATOR

În �nal câteva suprafeµe de interes special. Mai întâi o suprafaµ  cuartic (ecuaµie de grad 4), având num rul maxim de singularit µi.

Apoi o serie de suprafeµe de interes pentru clasi�carea singularit µiilorsuprafeµelor complexe (aici varianta lor în spaµiul real). Prima este o sin-gularitate de tip A3. Ecuaµia implicit  a unei singularit µi de tipul Ak esteAk = V (xk+1 − y2− z2), k >= 1. Aici k = 3.

Exemplu 1.1.10. O quartic C = V (x4 + y4 + z4 + 1− x2− y2− z2− y2z2− z2x2− x2y2),

respectiv singularitatea de tipulAk = V (xk+1 − y2− z2), k >= 1.

Figura 1.4: O quartic  ³i A3 = V (x3 − y2− z2).

Exemplu 1.1.11. Iat  ³i celelalte singularit µi de tip ADE.Dk = V (x(xk−2 + y2) + z2).E6 = V (x4 + y3 + z2).E7 = V (y(x3 + y2) + z2).E8 = V (x5 + y3 + z2).

Figura 1.5: D5 = V (x(x3 + y2) + z2) ³i E6 = V (x4 + y3 + z2).

Page 23: EDP 2010. ISBN 978-973-3-3370-7 Dáné Károly András Dan ...edituradp.ro/site_img/downloads/2013/04/interior-alg-comp-i.pdf · Se ³tie c , metoda lui Gauss de rezolvare a unui

1.1. CONCEPTE DE BAZ� 23

Figura 1.6: E7 = V (y(x3 + y2) + z2) ³i E8 = V (x5 + y3 + z2).

Revenind la aspecte teoretice, s  ne aducem aminte de întreb rile pe carele punem în leg tur  cu problema rezolv rii unui sistem de ecuaµii liniare:Are sistemul soluµii sau nu (sunt ecuaµiile sistemului compatibile)? Dac  are,atunci are o singur  soluµie, sau mai multe (sistemul este determinat, saunedeterminat)?

Pentru un sistem de ecuaµii polinomiale neliniar, � deci în leg tur  cu ovarietate algebric , � întreb rile se formuleaz  similar:

• Sunt ecuaµiile compatibile sau nu?

• Dac  sistemul este compatibil, are un num r �nit de soluµii sau nu?

• Dac  num rul soluµiilor nu este �nit, care este dimensiunea geometric a mulµimii soluµiilor (num rul parametrilor liberi independenµi)?

Pentru a contura r spunsuri la aceste întreb ri, mai avem nevoie de unconcept de baz , cel introdus în secµiunea urm toare.

Mai înainte îns , s  vedem ce operaµii putem face cu variet µile algebrice?Mai concret, este reuniunea, respectiv intersecµia a dou  variet µi algebrice toto varietate algebric ? R spunsul este dat în urm toarea propoziµie.

Propoziµie 1.1.12. Fie V ³i W variet µi a�ne în kn. Atunci V ∪W ³i V ∩Wsunt variet µi a�ne.

Demonstraµie. Demonstraµia acestor propriet µi este una constructiv . Putemda explicit sistemul de ecuaµii polinomiale, ale c ror soluµii sunt reuniunea,respectiv intersecµia celor dou  variet µi. Fie V = V (f1, f2, . . . , fk) ³i W =V (g1, g2, . . . , gl). Atunci:

V ∪W = V (figj ; i = 1, . . . , k, j = 1, . . . , l)

V ∩W = V (f1, f2, . . . , fk, g1, g2, . . . , gl).

Page 24: EDP 2010. ISBN 978-973-3-3370-7 Dáné Károly András Dan ...edituradp.ro/site_img/downloads/2013/04/interior-alg-comp-i.pdf · Se ³tie c , metoda lui Gauss de rezolvare a unui

24 CAPITOLUL 1. TEOREME DE GEOMETRIE PE CALCULATOR

Este clar c  V,W ⊆ V (figj), deci V ∪ W ⊆ V (figj). Invers, �e(a1, a2, . . . , an) ∈ V (figj) pentru orice i, j. Dac  acest punct este în V , atunciV (figj) ⊆ V ∪ W. Dac  îns  acest punct nu se a�  în V , atunci pentru m -car un indice i0 avem fi0(a1, a2, . . . , an) = 0. Îns  fi0gj(a1, a2, . . . , an) = 0pentru orice j, deci gj(a1, a2, . . . , an) = 0 pentru orice j, ceea ce arat  c (a1, a2, . . . , an) ∈ W. Prin urmare V (figj ; i = 1, . . . , k, j = 1, . . . , l) ⊆ V ∪W.

Cealalt  egalitate este imediat .

1.1.3 Ideale

Vom introduce în aceast  secµiune, corespondentul algebric al conceptului ge-ometric de varietate a�n . Acesta este conceptul de ideal.

S  începem cu de�niµia conceptului abstract de inel.

De�niµie 1.1.13. O mulµime A înzestrat  cu o operaµie de adunare notat  ′+′,³i o operaµie de înmulµire compatibil  cu aceasta (distributiv  faµ  de aceasta)notat  ′·′, pentru care (A,+) este grup comutativ, ³i (A, ·) este semigrup, senume³te inel .

Inelul este comutativ dac  înmulµirea este comutativ , ³i este unitar , dac înmulµirea are element unitate.

În cele ce urmeaz  prin inel vom înµelege un inel comutativ ³i unitar, f r a mai preciza explicit aceste propriet µi.

Observaµia fundamental  pentru contextul nostru este formulat  în urm -toarea propoziµie:

Propoziµie 1.1.14. Fie k un corp comutativ. Atunci k[x1, x2, . . . , xn] este uninel comutativ.

Demonstraµie. Veri�carea propriet µilor care de�nesc structura de inel esteimediat  ³i este l sat  pe seama cititorului.

S  remarc m faptul c  singura diferenµ  în de�niµia unui inel faµ  dede�niµia unui corp este c  aici nu mai pretindem existenµa unui invers pentru�ecare element nenul. Altfel spus, un corp este un inel în care �ecare elementnenul este inversabil. Rezult  de aici c  problemele legate de divizibilate î³ig sesc ca mediu general ³i abstract de studiu, structura de inel.

O prim  clasi�care a elementelor unui inel este dat  prin intermediul con-ceptelor urm toare:

De�niµie 1.1.15. Fie A un inel comutativ ³i unitar. Un element f ∈ A, f = 0se nume³te divizor al lui 0 dac  exist  g ∈ A, g = 0 astfel încât f · g = 0.

Page 25: EDP 2010. ISBN 978-973-3-3370-7 Dáné Károly András Dan ...edituradp.ro/site_img/downloads/2013/04/interior-alg-comp-i.pdf · Se ³tie c , metoda lui Gauss de rezolvare a unui

1.1. CONCEPTE DE BAZ� 25

Un element f ∈ A, f = 0 se nume³te inversabil sau unitate dac  exist g ∈ A, g = 0 astfel încât f · g = 1.

Un element nenul, care nu este divizor al lui zero se nume³te regulat . Uninel în care nu exist  divizori ai lui zero se nume³te domeniu de integritate.

Evident, elementele inversabile sunt ³i regulate. De asemenea este u³orde v zut c  într-un inel �nit orice element regulat f , este inversabil. Pentruaceasta este su�cient s  consider m aplicaµia φ : A → A dat  de φ(g) = fg.Din fg = fh rezult  f(g − h) = 0 deci g − h = 0, sau g = h. A³adar φeste injectiv , deci ³i surjectiv , de unde rezult  c  exist  b ∈ A astfel caf(b) = ab = 1, ceea ce înseamn  c  a este inversabi.

De�nim acum conceptul de ideal.

De�niµie 1.1.16. O submulµime nevid  I ⊆ A al inelului A se nume³te idealdac  are propriet µile

(1) Dac  f, g ∈ I atunci f − g ∈ I.

(2) Dac  f ∈ I µi h ∈ A, atunci hf ∈ I.

O prim  observaµie imediat  este faptul c  în de�niµie în locul condiµieif − g ∈ I, se poate lua echivalent condiµia f + g ∈ I. De asemenea, se vede c elementul 0 face parte din orice ideal.

O dat  cu de�nirea unui concept se pune automat problema caracteriz riiobiectelor pe care aceast concept le descrie. Altfel spus, este natural s  d mexemple caracteristice de ideale. S  menµion m totu³i, c  aceast  abordare,de³i tipic  pentru orice prezentare, ascunde ideile care au dus la cristalizareatreptat  a conceptului respectiv, ³i nici m car nu se refer  în mod necesar lacontextul original care a generat aceast  cristalizare. În cazul de faµ  pentruconceptul de ideal rolul determinant a avut efortul de a demonstra mareateorem  a lui Fermat, îns  detaliile acestei istorii ne-ar duce prea departe deideile pe care le urm rim aici.

Revenind la exemple carecteristice de ideale, d m urm toarea propoziµie.

Propoziµie 1.1.17. Fie A un inel ³i f1, f2, . . . , fm ∈ A. Atunci mulµimea

< f1, f2, . . . , fm >= {g1f1 + g2f2 + · · ·+ gmfm| gi ∈ A, i = 1, . . . ,m}

este ideal în inelul A.

Acest ideal se nume³te idealul generat de elementele f1, f2, . . . , fm. De aseme-nea dac  I =< f1, f2, . . . , fm >, atunci spunem c  elementele f1, f2, . . . , fmformeaz  o baz  pentru I. În acest caz idealul I se nume³te �nit generat .

Evident un ideal �nit generat are mai multe baze. Dintre bazele unui ideala³a numitele baze Gröbner au propriet µi speciale, despre care va � vorba însecµiunile care urmeaz .

Page 26: EDP 2010. ISBN 978-973-3-3370-7 Dáné Károly András Dan ...edituradp.ro/site_img/downloads/2013/04/interior-alg-comp-i.pdf · Se ³tie c , metoda lui Gauss de rezolvare a unui

26 CAPITOLUL 1. TEOREME DE GEOMETRIE PE CALCULATOR

De�niµie 1.1.18. Un ideal de forma I =< f > se nume³te ideal principal .Un inel în care orice ideal este principal se nume³te inel principal .

Exemple de inele principale sunt date în urm toarea propoziµie:

Propoziµie 1.1.19. Inelul Z al întregilor ³i inelul polinoamelor de o nedeter-minat  cu coe�cienµi într-un corp sunt inele principale.

Demonstraµie. Fie I un ideal în Z. Dac  I = {0}, atunci I = 0 · Z =< 0 >³i suntem gata. Dac  I = {0}, atunci I conµine atât numere pozitive cât ³inegative, deoarece odat  cu un num r din I ³i opusul acestuia (multiplul cu−1) este în I. Fie n cel mai mic num r întreg strict pozitiv din I. Atunci esteclar c  n · Z ⊆ I. Invers, �e x ∈ I arbitrar. Pe baza teoremei fundamentale aaritmeticii, exist  un cât q ³i un rest r unic astfel ca

x = n · q + r, 0 ≤ r < n.

Din egalitatea r = x− n · q se cite³te c  r ∈ I, ceea ce nu e posibil � conformalegerii lui n � decât dac  r = 0. Astfel x ∈ n ·Z, deci I ⊆ n ·Z. Rezult  decic  I = n · Z.

Pentru inelul polinoamelor cu coe�cienµi într-un corp demonstraµia esteidentic  în esenµ . Diferenµa const  în faptul c  se compar  gradele poli-noamelor, ³i se folose³te teorema împ rµirii întregi a polinoamelor, care asigur � ca ³i în cazul numerelor întregi � existenµa ³i unicitatea câtului ³i restuluiîmp rµirii.

Aceast  propoziµie este important  mai ales prin consecinµa ei dat  înpropoziµia 1.1.23 de la pagina 27. Pentru preg tirea enunµului acesteia tre-buie s  de�nim conceptul abstract de cel mai mare divizor comun.

De�niµie 1.1.20. Fie A un domeniu de integritate, ³i a, b ∈ A. Spunem c elementul a îl divide pe b, sau c  a este un divizor al lui b, (notat a|b), dac exist  un element c ∈ A astfel ca a · c = b.

Spunem c  elementele a ³i b sunt asociate în divizibilitate dac  se dividreciproc, adic  a|b ³i b|a.

Relaµia de divizibilitate este evident re�exiv  ³i tranzitiv . De asemenea, sevede imediat, c  elementele a ³i b sunt asociate dac  ³i numai dac  a = bu,unde u este un element inversabil. Într-adev r, dac  u este inversabil atunciexist  v astfel ca uv = 1, deci av = b, prin urmare a ³i b se divid reciproc.Invers, dac  a ³i b se divid reciproc, adic  a = bu ³i av = b, atunci a = avu,deci a − avu = 0, adic  a(1 − vu) = 0, de unde rezult  c  1 − vu = 0, sauuv = 1, deci u este inversabil.

Page 27: EDP 2010. ISBN 978-973-3-3370-7 Dáné Károly András Dan ...edituradp.ro/site_img/downloads/2013/04/interior-alg-comp-i.pdf · Se ³tie c , metoda lui Gauss de rezolvare a unui

1.1. CONCEPTE DE BAZ� 27

De�niµie 1.1.21. Fie A un domeniu de integritate, ³i a, b ∈ A. Un elementd ∈ A se nume³te cel mai mare divizor comun al elementelor a ³i b, ³i se noteaz d = (a, b), dac 

(i) d|a ³i d|b, adic  d este divizor comun, ³i

(ii) dac  d′|a ³i d′|b, atunci d′|d, adic  d este cel mai mare divizor, în sensulrelaµiei de divizibilitate.

S  observ m, c  cel mai mare divizor comun a dou  elemente nu este unic.Mai precis, dac  d1 ³i d2 este �ecare cel mai mare divizor comun al elementelora ³i b, atunci d1 ³i d2 sunt elemente asociate, deoarece din de�niµia celui maimare divizor comun 1.1.21(ii) rezult  imediat, c  d1 ³i d2 se divid reciproc.Expresia d = (a, b) conµine a³adar un u³or abuz de notaµie.

În inele principale cel mai mare divizor comun a dou  elemente are o carac-terizare aparte, exprimat  cu ajutorul idealelor. Vom da aceast  caracterizareîn inelul întregilor.

S  facem mai întâi o observaµie.

Observaµie 1.1.22. Într-un domeniu de integritate

< d >=< d′ >,

dac  ³i numai dac  elementele d ³i d′ sunt asociate.

Demonstraµie. Într-adev r, din < d >=< d′ >, sau d · A = d′ · A rezult  c d = d · 1 ∈ d′ ·A ³i d′ = d′ · 1 ∈ d ·A, adic  d = d′u ³i d′ = dv, deci elementeled ³i d′ se divid reciproc. Invers, dac  d|d′, sau du = d′ atunci d′ · A ⊆ d · A,deci < d′ >⊆< d >. Similar, dac  d′|d atunci < d >⊆< d′ >. A³adar dac  d³i d′ sunt asociate, atunci < d >=< d′ >.

Iat  ³i caracterizarea celui mai mare divizor comun în domenii de integritate(aici Z).

Propoziµie 1.1.23. Fie a, b, d ∈ Z trei numere întregi. Num rul d este celmai mare divizor comun al numerelor a ³i b, d = (a, b), dac  ³i numai dac 

d · Z = a · Z+ b · Z.

În alt  exprimare, dac  d = (a, b), atunci exist  dou  numere întregi x, y ∈ Zastfel ca d = ax+ by, ³i invers, dac  d = ax+ by, ³i d este un divizor comunal lui a ³i b, atunci el este un cel mai mare divizor, d = (a, b).

În particular, numerele a ³i b sunt relativ prime exact atunci când 1 are oreprezentare de forma 1 = ax+ by, unde x, y sunt numere întregi potrivite.

Page 28: EDP 2010. ISBN 978-973-3-3370-7 Dáné Károly András Dan ...edituradp.ro/site_img/downloads/2013/04/interior-alg-comp-i.pdf · Se ³tie c , metoda lui Gauss de rezolvare a unui

28 CAPITOLUL 1. TEOREME DE GEOMETRIE PE CALCULATOR

Demonstraµie. Fie d = (a, b). Din d|a ³i d|b rezult  c  a·Z ⊆ d·Z ³i b·Z ⊆ d·Z,deci ³i a ·Z+ b ·Z ⊆ d ·Z. Dar pe baza propoziµiei 1.1.19 de la pagina 26, a ·Z³i b ·Z �ind ideale (principale) în Z suma lor este un ideal principal, deci avem

a · Z+ b · Z = d′ · Z,

de unde d′ · Z ⊆ d · Z. Rezult  deci c  d|d′. Din relaµia de de�niµie a lui d′ sevede îns  c  d′ este un divizor comun al lui a ³i b, deci avem ³i d′|d. A³adar d³i d′ sunt asociate prin urmare < d >=< d′ >. Astfel avem

a · Z+ b · Z = d · Z.

Invers, �e d astfel ca a · Z + b · Z = d · Z. Din a · Z ⊆ a · Z + b · Z = d · Zrezult  c  d|a, ³i similar d|b, deci d este un divizor comun.

Din exprimarea lui d sub forma d = ax+ by, posibil  deoarece d = d · 1 ∈d · Z = a · Z + b · Z, deducem, c  orice divizor comun al lui a ³i b este ³i undivizor al lui d, deci d este un cel mai mare divizor.

Restul a�rmaµiilor din enunµ sunt simple consecinµe ale celor de mai sus.

S  vedem acum ce operaµii putem efectua cu ideale. Intersecµia a dou ideale este ideal, întrucât propriet µi care se de�nesc numai cu ajutorul cuan-ti�catorului universal ("pentru orice"), se mo³tenesc la intersecµia mulµimilor.Este u³or de v zut îns , c  reuniunea idealelor nu este în general ideal.

De�niµie 1.1.24. Fie I ³i J ideale în A. De�nim suma, produsul , intersecµia³i câtul celor dou  ideale, respectiv radicalul unui ideal, precum urmeaz :

• I + J = {f + g| f ∈ I, g ∈ J} este suma idealelor,

• IJ =< fg| f ∈ I, g ∈ J >= {f1g1 + f2g2 + · · ·+ fmgm| fi ∈ I, gi ∈ J, i =1, . . . ,m}, adic  idealul generat de produsele elementelor din cele dou ideale, este produsul idealelor,

• I ∩ J = {f | f ∈ I, ³i f ∈ J} este intersecµia idealelor,

• I : J = {f | f ∈ A astfel ca pentru orice g ∈ J, fg ∈ I} este câtul ide-alelor,

•√I = {f | f ∈ A, ³i exist  n > 0, astfel încât fn ∈ I} este radicalul

idealului I.

Se arat  u³or, c  suma, produsul, intersecµia ³i câtul a dou  ideale, conformde�niµiei de mai sus, este tot un ideal. Deasemenea ³i radicalul unui ideal estetot un ideal.

Propriet µi simple ale acestora sunt date în observaµiile care urmeaz .

Page 29: EDP 2010. ISBN 978-973-3-3370-7 Dáné Károly András Dan ...edituradp.ro/site_img/downloads/2013/04/interior-alg-comp-i.pdf · Se ³tie c , metoda lui Gauss de rezolvare a unui

1.1. CONCEPTE DE BAZ� 29

Observaµii 1.1.25. Fie I ³i J dou  ideale.

• I + J este cel mai mic ideal care conµine idealul I ³i J.

• I ∩ J este cel mai mare ideal care este conµinut în idealul I ³i J.

• I ∪ J este ideal dac  ³i numai dac  I ⊆ J sau J ⊆ I.

• Dac  I =< f1, f2, . . . , fk > ³i J =< g1, g2, . . . , gl >, atunci I + J =< f1, f2, . . . , fk, g1, g2, . . . , gl > .

• Dac  I =< f1, f2, . . . , fk > ³i J =< g1, g2, . . . , gl >, atunci IJ =< figj | i = 1, . . . , k, j = 1, . . . , l > .

Demonstraµiile acestor propriet µi sunt simple, ³i sunt l sate pe seama citi-torului.

Alte propriet µi sunt date în propoziµiile care urmeaz .

Propoziµie 1.1.26. Fie I, J,K ideale în A. Atunci

(a) I : I = A.

(b) I : A = I.

(c) IJ ⊆ K dac  ³i numai dac  I ⊆ K : J.

(d) J ⊆ I dac  ³i numai dac  I : J = A.

Demonstraµie.Punctul (a): Pentru orice f ∈ I ³i pentru orice g ∈ A avem fg ∈ I, deci

A ⊆ I : I. Pe de alt  parte I : I ⊆ A este clar din de�niµia unui ideal. DeciI : I = A.

Punctul (b): I ⊆ I : A este clar din de�niµia unui ideal. Pe de alt  parte�e f ∈ I. Atunci f = f · 1 arat  c  f ∈ I : A. Prin urmare A \ I ⊆ A \ I : A,deci I : A ⊆ I. Rezult  c  I : A = I.

Punctul (c): Fie f ∈ I. Dac  pentru g ∈ J arbitrar fg ∈ K, (deoareceIJ ⊆ K), atunci f ∈ K : J, deci I ⊆ K : J . Invers, �e f ∈ I ³i g ∈ J arbitrar.Din I ⊆ K : J rezult  c  fg ∈ K, deci ³i IJ ⊆ K.

Punctul (d): J · A ⊆ J ⊆ I, implic  I : J ⊇ A, deci I : J = A. Inversrezult  din 1 ∈ A.

Propoziµie 1.1.27. Fie I, J,K, I1, I2, J1, J2 ideale în A. Atunci

(a) (I1 ∩ I2) : J = (I1 : J) ∩ (I2 : J).

(b) I : (J1 + J2) = (I : J1) ∩ (I : J2).

Page 30: EDP 2010. ISBN 978-973-3-3370-7 Dáné Károly András Dan ...edituradp.ro/site_img/downloads/2013/04/interior-alg-comp-i.pdf · Se ³tie c , metoda lui Gauss de rezolvare a unui

30 CAPITOLUL 1. TEOREME DE GEOMETRIE PE CALCULATOR

(c) (I : J) : K = I : (JK).

Demonstraµie.Punctul (a): Din I1 ∩ I2 ⊆ I1, I2 rezult  c  I1 ∩ I2 : J ⊆ I1 : J, I2 : J, deci

I1∩I2 : J ⊆ I1 : J∩I2 : J. Invers, �e f ∈ I1 : J∩I2 : J. Atunci f ∈ I1 : J, I2 : J,deci fg ∈ I1, I2, pentru orice g ∈ J. Rezult  c  fg ∈ I1 ∩ I2 pentru orice g ∈ J,prin urmare f ∈ (I1 ∩ I2) : J, deci I1 ∩ I2 : J ⊇ I1 : J ∩ I2 : J. A³adarI1 ∩ I2 : J = I1 : J ∩ I2 : J.

Punctul (b): Din J1+J2 ⊇ J1, J2 rezult  c  I : (J1+J2) ⊆ (I : J1), (I : J2),deci I : (J1 + J2) ⊆ (I : J1) ∩ (I : J2). Invers, �e f ∈ (I : J1) ∩ (I : J2), decif ∈ (I : J1) ³i f ∈ (I : J2). Rezult  c  fg ∈ I ³i fh ∈ I pentru orice g ∈ J1³i h ∈ J2, de unde fg + fh = f(g + h) ∈ I, deci f ∈ I : (J1 + J2). Avem deciI : (J1 + J2) ⊇ (I : J1) ∩ (I : J2), deci ³i I : (J1 + J2) = (I : J1) ∩ (I : J2).

Punctul (c): Începem cu o observaµie: Fie I ³i J =< g1, g2, . . . , gk >ideale în A. Atunci I : J = {f ∈ A| fgi ∈ I, i = 1, 2, . . . , k}. Într-adev r,I : J ⊆ {f ∈ A| fgi ∈ I, i = 1, 2, . . . , k}, din cauza incluziunii bazei în idealulgenerat de aceasta. Pe de alt  parte îns  dac  fgi ∈ I, i = 1, 2, . . . , k atunci ³ifg ∈ I pentru orice g = h1g1+h2g2+ · · ·+hkgk ∈ J, deci I : J ⊇ {f ∈ A| fgi ∈I, i = 1, 2, . . . , k}. Acest raµionament se extinde neschimbat pentru cazul cândJ =< gj | j ∈ IJ > este un ideal generat de orice familie de polinoame.

S  introducem acum o notaµie: J ·K = {gh| g ∈ J, h ∈ K}.Trecând la demonstraµia propriu zis , �e f ∈ (I : J) : K. Aceasta aparte-

nenµ  este echivalent  cu fK ⊆ I : J , care este echivalent  cu (fK · J) ⊆ I,echivalent  cu f(K · J) ⊆ I, echivalent  � conform observaµiei de mai înainte� cu f(KJ) ⊆ I, echivalent  cu f ∈ I : (KJ) sau f ∈ I : (JK). Prin urmare(I : J) : K = I : (JK).

Propoziµie 1.1.28. Fie I, J ideale în A. Atunci

(a) I ⊆√I.

(b) Dac  I ⊆ J atunci√I ⊆

√J.

(c)√IJ =

√I ∩ J =

√I ∩

√J.

(d)√I + J =

√√I +

√J.

(e)√√

I =√I.

Demonstraµie.Punctul (a): f1 = f ∈ I pentru orice f ∈ I, deci I ⊆

√I.

Punctul (b): Dac  f ∈√I atunci exist  n ≥ 1 astfel ca fn ∈ I deci fn ∈ J ,

de unde f ∈√J. A³adar

√I ⊆

√J.

Page 31: EDP 2010. ISBN 978-973-3-3370-7 Dáné Károly András Dan ...edituradp.ro/site_img/downloads/2013/04/interior-alg-comp-i.pdf · Se ³tie c , metoda lui Gauss de rezolvare a unui

1.1. CONCEPTE DE BAZ� 31

Punctul (c): S  observ m c  IJ ⊆ I, J deci IJ ⊆ I ∩ J de unde pe bazapunctului precedent

√IJ =

√I ∩ J.

Similar, I ∩ J ⊆ I, J , deci√I ∩ J ⊆

√I,√J , deci

√I ∩ J ⊆

√I ∩

√J.

Pentru a încheia demonstraµia, �e f ∈√I ∩

√J, deci f ∈

√I,√J. Prin

urmare exist  k ³i l, astfel încât fk ∈ I ³i f l ∈ J , de unde fk+l = fkf l ∈ IJdeci f ∈

√IJ. De aici avem

√I ∩

√J ⊆

√IJ.

Toate acestea arat  c √IJ =

√I ∩ J =

√I ∩

√J.

Punctul (d): Avem I ⊆√I ³i J ⊆

√J , pe baza punctului (a). Este clar atunci

c  I+J ⊆√I+

√J. Pe baza punctului (b) avem de aici

√I + J =

√√I +

√J.

Punctul (d): Pe baza punctului (a) e clar c √√

I ⊇√I. Invers, �e f ∈√√

I. Atunci fk ∈√I deci (fk)l ∈ I, pentru k ³i l întregi pozitivi, potrivit

ale³i. A³adar fkl ∈ I, deci f ∈√I ceea ce înseamn 

√√I ⊆

√I. În concluzie√√

I =√I.

1.1.4 Inel factor. Inel de fracµii. Localizare

Un procedeu de construcµie de inele din inele deja construite este considerareainelelor factor. Pe analogia situaµiei de la grupuri � unde un subgrup normalde�ne³te o relaµie de congruenµ  compatibil  cu operaµia din grup � un idealva de�ni o relaµie de congruenµ  compatibil  cu cele dou  operaµii din inel.Clasele de echivalenµ  faµ  de aceast  relaµie de echivalenµ  vor de�ni inelulfactor.

Exemplul caracteristic care trebuie avut în vedere este aritmetica claselorde resturi ale numerelor întregi.

Propoziµie 1.1.29. Fie I ⊆ A un ideal. Relaµia notat  f ∼ g, ³i de�nit  prin

f ∼ g dac  f − g ∈ I,

este o relaµie de echivalenµ  pe A compatibil  cu operaµiile de adunare ³i în-mulµire din A.

Demonstraµie. Relaµia ∼ este o relaµie de echivalenµ  dac  este

• re�exiv , adic  f ∼ f pentru orice f ∈ A,

• simetric , adic  dac  f ∼ g atunci g ∼ f , pentru orice f, g ∈ A ³i

• tranzitiv , dac  f ∼ g ³i g ∼ h atunci f ∼ h, pentru orice f, g, h ∈ A.

Compatibilitatea cu operaµiile de adunare ³i înmulµire înseamn 

• dac  f ∼ h ³i g ∼ k, atunci f + g ∼ h+ k pentru orice f, g, h, k ∈ A ³i

• dac  f ∼ h ³i g ∼ k, atunci fg ∼ hk pentru orice f, g, h, k ∈ A.

Page 32: EDP 2010. ISBN 978-973-3-3370-7 Dáné Károly András Dan ...edituradp.ro/site_img/downloads/2013/04/interior-alg-comp-i.pdf · Se ³tie c , metoda lui Gauss de rezolvare a unui

32 CAPITOLUL 1. TEOREME DE GEOMETRIE PE CALCULATOR

Toate aceste propriet µi sunt imediate folosind de�niµia noµiunii de ideal.

Propoziµia de mai sus st  la baza de�niµiei care urmeaz . S  not m clasa deechivalenµ  a polinomului f cu

f = {g | g ∼ f ; g ∈ A} = f + I.

În concluzie propoziµia anterioar  se reformuleaz  astfel: mulµimea claselor deechivalenµ  are structura unui inel.

De�niµie 1.1.30. Mulµimea claselor de echivalenµ  date de relaµia deechivalenµ  de�nit  de idealul I se noteaz  cu A/I, ³i se nume³te inelul factorde�nit de idealul I.

S  observ m totu³i c  aceast  de�niµie, ca ³i propoziµia precedent  nu serefer  în mod speci�c la inele de polinoame, ele sunt valabile în contextulgeneral al teoriei inelelor.

De�niµie 1.1.31. Fie I un ideal în A. Idealul I se nume³te maximal , dac este element maximal în muµimea ordonat  de incluziune a idealelor proprii aleinelului A, adic  dac  avem pentru orice ideal J al lui A, I ⊆ J ⊆ A implic J = I sau J = A.

Din lema lui Zorn rezult  c  orice ideal I este inclus într-un ideal maximal.Acest fapt rezult  din observaµia c  reuniunea idealelor unui ³ir ascendent deideale este un ideal, care include (este mai mare decât) toate idealele ³irului.

S  vedem acum cum se caracterizeaz  idealele maximale cu ajutorul ineluluifactor, de�nit de ace³tia. Avem urm toarea propoziµie:

Propoziµie 1.1.32. Un ideal M al lui A este maximal dac  ³i numai dac inelul factor A/M este corp.

Demonstraµie. Fie M ideal maximal în A. Fie f = f +M un element nenul alinelului factor A/M , adic  f ∈ M. Idealul I generat de f ³i M , este deci strictmai mare decât M . Acesta �ind maximal, rezult  c  I = A, deci rezult  c 1 ∈ A are o reprezentare de forma 1 = gf + h unde h ∈ M. Trecând la clasede echivalenµe, avem 1 = gf , deci f = f +M este inversabil, deci inelul factoreste corp.

Invers, presupunem c  A/M este corp. Fie I un ideal astfel ca M ⊆ I ⊆ A.Presupunem c  exist  un element f ∈ I care f ∈ M , adic  M = I. Avematunci f = 0 deci exist  g astfel ca gf = 1 sau 1− gf ∈ M ⊆ I. Din egalitatea1 = (1− gf) + gf rezult  c  1 ∈ I adic  I = A. Rezult  deci c  M este idealmaximal.

Page 33: EDP 2010. ISBN 978-973-3-3370-7 Dáné Károly András Dan ...edituradp.ro/site_img/downloads/2013/04/interior-alg-comp-i.pdf · Se ³tie c , metoda lui Gauss de rezolvare a unui

1.1. CONCEPTE DE BAZ� 33

De�niµie 1.1.33. Un inel care are un singur ideal maximal se nume³te inellocal .

Introducerea conceptului de inel local are o justi�care geometric : este legat de studiul propriet µilor variet µilor a�ne în jurul unui punct al lor.

O caracterizare a inelelor locale este dat  în urm toarea propoziµie:

Propoziµie 1.1.34. Un inel este local dac  ³i numai dac  elementele nein-versabile ale inelului formeaz  un ideal.

Demonstraµie. Dac  un ideal conµine un element inversabil, atunci îl conµine ³ipe 1, deci conµine orice element al inelului, a³adar coincide cu acesta. Rezult c  dac  elementele neinversabile formeaz  un ideal, atunci acesta este cel maimare, deci ³i maximal. Menµion m, c  orice inel conµine elemente neinversabile,întrucât 0 este neinversabil (inelul trebuie s  aib  totu³i cel puµin 2 elemente).

Invers, Fie A un inel local ³i M singurul s u ideal maximal. S  not mmulµimea elementelor neinversabile ale inelului cu N. Atunci evident M ⊆ N .Fie f ∈ N . Atunci Af este un ideal propriu (in caz contrar f ar � inversabil)al lui A. Cum orice ideal este inclus într-un ideal maximal, avem Af ⊆ M ,deci ³i f = f · 1 ∈ Af ⊆ M , prin urmare N ⊆ M . În concluzie M = N , decielementele neinversabile formeaz  un ideal (maximal).

În cele ce urmeaz  de�nim inelul de fracµii, într-un context mai general, deciinelul considerat nu este neap rat un inel de polinoame. Aceast  construcµieextinde ideea construcµiei numerelor raµionale din numere întregi: mai întîi sede�nesc fracµiile, apoi operaµiile cu acestea, iar în �nal conceptul de num rraµional apare cu ajutorul echivalenµei între fracµii, dat  de posibilitatea desimpli�care ³i ampli�care.

De�niµie 1.1.35. Fie A un inel comutativ ³i unitar. O submulµime S a luiA care este sub-semigrup multiplicativ, se nume³te sistem multiplicativ sausistem multiplicativ închis al lui A.

Fie acum S un sistem multiplicativ închis al inelului A. Presupunem c elementele lui S sunt regulate. De�nim o relaµie notat  ∼ pe mulµimea A× Sprin

(a1, s1) ∼ (a2, s2) dac  a1s2 = a2s1.

Propoziµie 1.1.36. Relaµia ∼ este o relaµie de echivalenµ , compatibil  cuoperaµia de înmulµire din inelul A.

Demonstraµie. Relaµia ∼ este o relaµie de echivalenµ  pentru c 

• re�exiv , adic  (a, s) ∼ (a, s) pentru orice (a, s) ∈ A× S,

Page 34: EDP 2010. ISBN 978-973-3-3370-7 Dáné Károly András Dan ...edituradp.ro/site_img/downloads/2013/04/interior-alg-comp-i.pdf · Se ³tie c , metoda lui Gauss de rezolvare a unui

34 CAPITOLUL 1. TEOREME DE GEOMETRIE PE CALCULATOR

• simetric , adic  dac  (a1, s1) ∼ (a2, s2) atunci (a2, s2) ∼ (a1, s1), pentruorice (a1, s1), (a2, s2) ∈ A× S ³i

• tranzitiv  adic  dac  (a1, s1) ∼ (a2, s2) ³i (a2, s2) ∼ (a3, s3) atunci(a1, s1) ∼ (a3, s3), pentru orice (a1, s1), (a2, s2), (a3, s3) ∈ A× S.

Compatibilitatea cu operaµia de înmulµire înseamn 

• dac  (a1, s1) ∼ (a′1, s′1) ³i (a2, s2) ∼ (a′2, s

′2), atunci (a1a2, s1s2) ∼

(a′1a′2, s

′1s

′2) pentru orice (a1, s1), (a

′1, s

′1), (a2, s2), (a

′2, s

′2) ∈ A× S.

Toate aceste propriet µi sunt imediate folosind de�niµia relaµiei ∼.

S  observ m, c  (s, s) ∼ (p, p) pentru orice s, p ∈ S, ³i de asemenea (a, s) ∼(ap, sp), pentru orice (a, s) ∈ A× S, ³i p ∈ S.

Vom nota clasele de resturi în raport cu relaµia de echivalenµ  ∼ prin

a/s = (a, s) = {(a′, s′) ∈ A× S | (a′, s′) ∼ (a, s)}.

S  observ m, c  aceast  construcµie imit  de�nirea unei împ rµiri, prinintroducerea unui raport formal între elemente, numitorul acestui raport �-ind considerat dintr-un sistem multiplicativ, pentru a permite apoi de�nireaprodusului a dou  asemenea rapoarte.

La adunarea fracµiilor îns  numitorii se înmulµesc între ei, a³adar se poateb nui c  adunarea din inel se extinde ³i pentru aceste "fracµii". O formulareprecis  a acestor idei este dat  în urm toarea propoziµie:

Propoziµie 1.1.37. Fie A un inel comutativ ³i unitar, ³i S un sistem multi-plicativ format din elemente regulate (nondivizori ai lui 0). Atunci mulµimeaclaselor de resturi notat 

AS = {(a, s) | (a, s) ∈ A× S}

formeaz  un monoid în raport cu înmulµirea de�nit  pe componente alereprezentanµilor claselor de echivalenµ .

Mai mult, aplicaµia

iS : A → AS , de�nit  prin iS(a) = (as, s), s ∈ S

este injectiv , prin ea adunarea din A se extinde în mod unic, astfel ca AS

s  devin  un inel, în care A este scufundat prin homomor�smul injectiv iS.Elementul s ∈ S în de�niµia lui iS este arbitrar �xat, el poate � ales ³i 1, încazul în care 1 ∈ S.

Page 35: EDP 2010. ISBN 978-973-3-3370-7 Dáné Károly András Dan ...edituradp.ro/site_img/downloads/2013/04/interior-alg-comp-i.pdf · Se ³tie c , metoda lui Gauss de rezolvare a unui

1.1. CONCEPTE DE BAZ� 35

Demonstraµie. În primul rând s  observ m, c  înmulµirea de�nit  pe com-ponente ale reprezentanµilor claselor este o înmulµire bine de�nit  a claselor:rezultatul înmulµirii nu depinde de reprezentantul ales. Acest fapt este o con-secinµ  a ultimei propriet µi a relaµiei de echivalenµ  ∼ prezentat  mai sus.

Dac  iS(a) = iS(b), deci (as, s) ∼ (bp, p) atunci asp = bps deci a = b, deunde rezult  injectivitatea aplicaµiei iS .

Pentru a extinde adunarea din A prin intermediul injecµiei iS , pe care dorims -l facem homomor�sm de inele, calcul m în felul urm tor:

(a1, s1) ∼ (a1s2, s1s2) = (a1s2s, s)(s, s1s2s),

(a2, s2) ∼ (a2s1, s1s2) = (a2s1s, s)(s, s1s2s).

Pentru a p stra distributivitatea înmulµirii faµ  de adunare în AS va trebuis  de�nim suma reprezentanµilor celor dou  clase de echivalenµ  astfel

(a1, s1) + (a2, s2) ∼ (a1s2s, s)(s, s1s2s) + (a2s1s, s)(s, s1s2s)

= ((a1s2s, s) + (a2s1s, s))(s, s1s2s)

= (iS(a1s2) + iS(a2s1))(s, s1s2s)

= iS(a1s2 + a2s1)(s, s1s2s)

= ((a1s2 + a2s1)s, s)(s, s1s2s)

= (a1s2 + a2s1, s1s2).

De aici rezult  ³i de�niµia compatibil  cu relaµia ∼ a adun rii claselor, pe dealt  parte rezult  ³i unicitatea acestei sume:

(a1, s1) + (a2, s2) = (a1s2 + a2s1, s1s2).

Se arat  acum prin simpla veri�care a propriet µilor c  adunarea este binede�nit  (rezultatul unei adun ri nu depinde de reprezentanµii ale³i), este aso-ciativ , comutativ , are element nul, ³i anume (0, s), respectiv �ecare elementare un opus, −(a, s) = (−a, s). Deasemenea prin veri�care direct  se arat  c înmulµirea este distributiv  faµ  de adunarea astfel de�nit  ³i în �nal tot prinveri�care direct  rezult  ³i faptul c  iS este homomor�sm de inele.

De�niµie 1.1.38. Inelul AS cu operaµiile de adunare ³i înmulµire de�nite maisus se nume³te inelul de fracµii asociat sistemului multiplicativ S, ³i se mainoteaz  S−1A.

Dac  A este un domeniu de integritate (nu are divizori ai lui 0) atuncielementele nenule A∗ formeaz  evident un sistem S multiplicativ (maximal).În acest caz S−1A este un corp comutativ. Acest corp este numit corpul defracµii al inelului A.

Page 36: EDP 2010. ISBN 978-973-3-3370-7 Dáné Károly András Dan ...edituradp.ro/site_img/downloads/2013/04/interior-alg-comp-i.pdf · Se ³tie c , metoda lui Gauss de rezolvare a unui

36 CAPITOLUL 1. TEOREME DE GEOMETRIE PE CALCULATOR

Exemple 1.1.39. S  d m ³i câteva exemple.

• ZZ∗ = Q, corpul numerelor raµionale este corpul de fracµii al ineluluiîntregilor.

• Corpul de fracµii al inelului polinoamelor cu n necunoscute este corpulde fracµii raµionale, notat

K(x1, x2, . . . , xn) = {f/g | f, g ∈ k[x1, x2, . . . , xn]}.

1.1.5 Leg tura dintre variet µile a�ne ³i ideale

În aceast  secµiune vom investiga leg tura dintre cele dou  concepte funda-mentale introduse pân  acum: conceptul cu caracter geometric de varietatea�n , ³i conceptul algebric de ideal.

O varietate a�n  este de�nit  ca mulµimea zerourilor unui set de ecuaµiialgebrice, vezi de�niµia 1.1.6 de pe pagina 20. Ne intereseaz  în ce mod putemschimba setul de ecuaµii, f r  ca mulµimea zerourilor comune acestora s  seschimbe? Evident, înlocuirea unei ecuaµii cu ecuaµia obµinut  din suma acesteiacu o alt  ecuaµie nu va schimba mulµimea zerourilor comune acestora. Putemîns  descrie toate seturile de ecuaµii echivalente cu un set de ecuaµii dat?

Conceptul de ideal ne va da r spunsul la aceast  întrebare. Practic urm -toarea propoziµie constituie un r spuns satisf c tor.

Propoziµie 1.1.40. Fie f1, f2, . . . , fk ∈ k[x1, x2, . . . , xn] ³i g1, g2, . . . , gl ∈k[x1, x2, . . . , xn] dou  seturi de polinoame. Dac  ele genereaz  acela³i ideal,atunci mulµimea zerourilor comune celor dou  seturi de polinoame coincid.Reformulat puµin mai formal: dac 

< f1, f2, . . . , fk >=< g1, g2, . . . , gl >

atunciV (f1, f2, . . . , fk) = V (g1, g2, . . . , gl).

Pentru idealul generat de un set de polinoame vezi propoziµia 1.1.17 de pepagina 25 ³i comentariul care urmeaz  dup  ea.

Demonstraµie. O prim  observaµie este faptul c  pe baza acestei propoziµii ovarietate a�n  trebuie asociat  practic unui ideal: dat un ideal, alegem o baz a acestuia, ³i avem un set de ecuaµii care determin  varietatea dat .

Fie V = V (f1, f2, . . . , fk) ³i �e I =< f1, f2, . . . , fk >. Atunci V estemulµimea zerourilor comune ale tuturor polinoamelor din I, adic  V ={(a1, a2, . . . , an) ∈ kn | f(a1, a2, . . . , an) = 0, pentru orice f ∈ I}.

Într-adev r, dac  not m W = {(a1, a2, . . . , an) ∈ kn | f(a1, a2, . . . , an) =0, pentru orice f ∈ I}, avem evident W ⊆ V . Fie acum (a1, a2, . . . , an) ∈ V ,

Page 37: EDP 2010. ISBN 978-973-3-3370-7 Dáné Károly András Dan ...edituradp.ro/site_img/downloads/2013/04/interior-alg-comp-i.pdf · Se ³tie c , metoda lui Gauss de rezolvare a unui

1.1. CONCEPTE DE BAZ� 37

adic  fi(a1, a2, . . . , an) = 0 pentru orice i = 1, 2, . . . , k, ³i �e f ∈ I arbitrar.Avem f = g1f1 + g2f2 + · · · + gkfk, pentru anumite polinoame g1, g2, . . . , gkpotrivit alese, deci f(a1, a2, . . . , an) = 0, de unde rezult  V ⊆ W , deci inde�nitiv V = W .

Vom vedea în secµiunile care urmeaz , c  orice ideal de polinoame cu maimulte variabile admite o baz  �nit , deci num rul ecuaµiilor care de�nesc ovarietate poate � într-adev r limitat la un num r �nit de ecuaµii.

Demonstraµia anterioar  sugereaz  urm toarele de�niµii:

De�niµie 1.1.41. Fie I un ideal în k[x1, x2, . . . , xn] ³i �e V o varietate a�n .Vom de�ni ³i vom nota varietatea de�nit  de idealul I

V (I) = {(a1, a2, . . . , an) ∈ kn | f(a1, a2, . . . , an) = 0, pentru orice f ∈ I},

respectiv idealul de�nit de varietatea a�n  V

I(V ) = {f ∈ k[x1, x2, . . . , xn] | f(a) = 0, pentru orice a ∈ V },

unde am notat a = (a1, a2, . . . , an).

Cu aceste notaµii începem investigaµia propriet µilor asocierilor V −→ I(V )respectiv I −→ V (I). Primele propriet µi ale acestora sunt date în urm toareapropoziµie:

Propoziµie 1.1.42. Fie V o varietate a�n . Atunci I(V ) este un ideal înk[x1, x2, . . . , xn].

Demonstraµie. Evident, dac  dou  polinoame f ³i g se anuleaz  pe punctele luiV atunci ³i suma lor f + g se va anula pe V . De asemenea dac  f se anuleaz pe punctele lui V atunci pentru orice polinom g ∈ k[x1, x2, . . . , xn] produsulgf se va anula pe punctele lui V .

Se pune acum întrebarea analoag : Dat un ideal de polinoame I în ine-lul k[x1, x2, . . . , xn], este V (I) o varietate a�n ? R spunsul este a�rmativ,³i se bazeaz  pe teorema lui Hilbert a bazei, care a�rm  c  orice ideal înk[x1, x2, . . . , xn] este �nit generat. S  trecem la detaliile acestui crucial rezul-tat. Începem cu o de�niµie care se refer  natural la proprietatea a�at  îndiscuµie, ³i pe care o plas m iar ³i într-un context abstract general:

De�niµie 1.1.43. Fie A un inel comutativ. Spunem c  A este Noetherian,dac  orice ideal al s u este �nit generat.

O caracterizare a inelelor Noetheriene este dat  în urm toarea propoziµie:

Page 38: EDP 2010. ISBN 978-973-3-3370-7 Dáné Károly András Dan ...edituradp.ro/site_img/downloads/2013/04/interior-alg-comp-i.pdf · Se ³tie c , metoda lui Gauss de rezolvare a unui

38 CAPITOLUL 1. TEOREME DE GEOMETRIE PE CALCULATOR

Propoziµie 1.1.44. Un inel A este Noetherian dac  ³i numai dac  orice ³irascendent de ideale ale sale este staµionar, adic  dac  Ik, k ∈ N sunt ideale alelui A astfel ca

I1 ⊆ I2 ⊆ I3 ⊆ . . .

atunci exist  un indice l astfel ca

Il = Il+1 = Il+2 = . . .

sau altfel spus, nu exist  în inelul A ³iruri in�nite de ideale strict cresc toare.

Demonstraµie. Fie A un inel Noetherian. Consider m un ³ir ascendent in�nitde ideale

I1 ⊆ I2 ⊆ I3 ⊆ . . .

ale lui A. Fie idealul I = ∪∞i=1Ik (o astfel de reuniune de ideale este ideal). El

este �nit generat, deciI =< f1, f2, . . . , fk > .

Acum �ecare element f1, f2, . . . , fk se a�  în câte unul din idealele ³irului as-cendent de ideale, deci toate se a�  în cel cu indicele cel mai mare dintreacestea. Astfel ³i I este inclus în acesta, ³i este clar c  ³irul de ideale devinedeci staµionar.

Invers, �e I un ideal în A ³i presupunem c  orice ³ir ascendent de idealeeste staµionar în A. Fie f1 ∈ I, ³i alegem recursiv fi+1 ∈ I \ Ii unde Ii =<f1, f2, . . . , fi >. Este clar c  ³irul Ii este un ³ir strict ascendent de ideale, ³iel �ind staµionar trebuie s  �e �nit, deci dup  un anumit rang k, fk+1 nu maiexist . De aici rezult  c  I =< f1, f2, . . . , fk >, deci I este �nit generat.

Teorema care urmeaz  clari�c  relaµia dintre idealele inelului de polinoamek[x1, x2, . . . , xn] ³i variet µile a�ne. R mânem pentru moment tot la enunµulpentru contextul abstract.

Teorem  1.1.45 (Teorema lui Hilbert a bazei). Fie A un inel comutativ. Dac A este Noetherian atunci ³i A[x] este Noetherian.

Demonstraµie. Fie I un ideal în A[x]. Trebuie s  ar t m, c  I este �nit generat.Consider m ³irul de elemente din I în construit în felul urm tor: Alegem

f1 = 0 din I astfel ca deg(f1) s  �e minim, ³i apoi recursiv pentru i ≥ 1 alegemfi+1 ∈ I\ < f1, f2, . . . , fi > tot de grad minim.

Dac  la un anumit indice alegerea lui fi+1 nu mai e posibil , atunci I =<f1, f2, . . . , fi >, ³i idealul I este �nit generat, ³i suntem gata.

Dac  admitem, c  procesul de construcµie al termenilor ³irului ar � nelim-itat, atunci raµionamentul se continu  astfel: Fie ai coe�cientul termenului

Page 39: EDP 2010. ISBN 978-973-3-3370-7 Dáné Károly András Dan ...edituradp.ro/site_img/downloads/2013/04/interior-alg-comp-i.pdf · Se ³tie c , metoda lui Gauss de rezolvare a unui

1.1. CONCEPTE DE BAZ� 39

principal (de grad cel mai mare) al polinomul fi. Idealul generat de ace³tiaJ =< a1, a2, . . . , > este un ideal în A. Acest inel �ind Noetherian, idealul Jeste �nit generat, ³i anume chiar de primele k elemente a1, a2, . . . , ak. Aceast ultim  proprietate se vede din faptul c  ³irul de ideale Ji =< a1, a2, . . . , ai >este ascendent ³i conform propoziµiei anterioare 1.1.44 el este staµionar, deciîncepând de la un anumit indice k, avem Jk = Jk+1 = Jk+2 = . . . , deci în fapt

J =< a1, a2, . . . , ak > . (1.1)

A�rm m acum, c  I =< f1, f2, . . . , fk >. Într-adev r, dac  am avea incluz-iune strict  < f1, f2, . . . , fk >⊂ I, atunci procesul de alegere al polinoamelorar continua cel puµin înc  un pas, ³i am avea înc  un element nenul de gradminim fk+1 ∈ I\ < f1, f2, . . . , fk >. Observaµia crucial  acum este c  gradulpolinomului fk+1 este egal sau mai mare decât gradul oric rui polinom alesanterior, f1, f2, . . . , fk. Prin urmare cu ajutorul acestora putem construi unpolinom de acela³i grad, ba chiar are acela³i termen principal ca ³i fk+1, darcare este în idealul generat de ace³tia, < f1, f2, . . . , fk >.

Explicit acest polinom se construie³te astfel. Coe�cientul termenului degrad maxim al lui fk+1 este ak+1 ∈ J , ³i conform celor de mai sus (relaµia 1.1)avem

ak+1 =k∑

i=1

ciai.

pentru anumiµi coe�cienµi ci ∈ A, i = 1, . . . , k, potrivit ale³i. Polinomul

g =k∑

i=1

cifixdeg(fk+1)−deg(fi)

este evident un polinom în idealul < f1, f2, . . . , fk >, deci ³i în I. Astfel,polinomul fk+1 − g este în I, nu este în < f1, f2, . . . , fk >, ³i are gradul strictmai mic decât gradul lui fk+1, ceea ce contrazice alegerea lui fk+1. A³adarpolinomul fk+1 nu exist , deci

I =< f1, f2, . . . , fk > .

Consecinµ  1.1.46. Fie k un corp. Atunci orice ideal al inelului de polinoamek[x1, x2, . . . , xn] este �nit generat.

Demonstraµie. Corpul k este un inel în care exist  numai dou  ideale: {0}³i corpul k însu³i. Primul este generat de elementul 0, al doilea de ele-mentul 1, deci toate idealele lui k sunt �nit generate. Prin urmare k este

Page 40: EDP 2010. ISBN 978-973-3-3370-7 Dáné Károly András Dan ...edituradp.ro/site_img/downloads/2013/04/interior-alg-comp-i.pdf · Se ³tie c , metoda lui Gauss de rezolvare a unui

40 CAPITOLUL 1. TEOREME DE GEOMETRIE PE CALCULATOR

Noetherian. Acum aplic m recursiv Teorema lui Hilbert a bazei, (teorema1.1.45), ³i obµinem k[x1], k[x1, x2] = k[x1][x2], ... ³i în �nal k[x1, x2, . . . , xn] =k[x1, . . . , xn−1][xn] este �ecare inel Noetherian.

A³adar orice ideal al inelului k[x1, x2, . . . , xn] este �nit generat.

Analog propoziµiei 1.1.42 de pe pagina 37 este urm toarea propoziµie:

Propoziµie 1.1.47. Fie I un ideal în k[x1, x2, . . . , xn]. Atunci V (I) este ovarietate a�n .

Demonstraµie. Conform consecinµei 1.1.46 idealul I este �nit generat, deciI =< f1, f2, . . . , fk >. S  ar t m c  V (I) = V (f1, f2, . . . , fk). IncluziuneaV (I) ⊆ V (f1, f2, . . . , fk) este clar .

Fie (a1, a2, . . . , an) ∈ V (f1, f2, . . . , fk). Fie f ∈ V (I) arbitrar. Întru-cât fse poate scrie sub forma f = g1f1 + g2f2 + · · · + gkfk, ³i deoarece fi(a) = 0pentru orice i = 1, 2, . . . , k avem f(a) = 0. A³adar (a1, a2, . . . , an) ∈ V (I),deci V (f1, f2, . . . , fk) ⊆ V (I). În concluzie V (I) = V (f1, f2, . . . , fk).

S  începem concret acum investigaµia propriet µilor corespondenµei ideal�varietate a�n , respectiv varietate a�n �ideal. O prim  proprietate este dat în urm toarea propoziµie.

Propoziµie 1.1.48. Corespondenµele (vezi de�niµia 1.1.41 de pe pagina 37)

V −→ I(V )

³iI −→ V (I)

sunt antimonotone, adic  dac  V1 ⊆ V2, atunci I(V2) ⊆ I(V1), respectiv dac I1 ⊆ I2, atunci V (I2) ⊆ V (I1).

În plus, corespondenµa V −→ I(V ) este injectiv , ³i V (I(V )) = V .

Demonstraµie. Fie V1 ⊆ V2. Este clar c  orice polinom care se anuleaz  pe omulµime de puncte, se anuleaz  ³i pe o submulµime a acesteia, deci I(V2) ⊆I(V1).

Invers, �e I1 ⊆ I2. Mulµimea zerourilor comune a mai multor polinoameeste mai mic , deci este clar c  V (I2) ⊆ V (I1).Pentru a demonstra egalitatea V (I(V )) = V s  observ m, c  incluziuneaV ⊆ V (I(V )) este o consecinµ  imediat  a de�niµiilor, întru-cât orice f ∈ I(V )se anuleaz  pe V . În cel lalt sens, �e V = V (f1, f2, . . . , fk). Atuncif1, f2, . . . , fk ∈ I(V ) deci avem ³i < f1, f2, . . . , fk >∈ I(V ). Dar pe de oparte V = V (f1, f2, . . . , fk) = V (< f1, f2, . . . , fk >) conform demonstraµieipropoziµiei 1.1.40 de pe pagina 36, pe de alt  parte asocierea variet µii la idealeste antimonoton , deci V (I(V )) ⊆ V . În concluzie V (I(V )) = V . De aicirezult  ³i injectivitatea asocierii idealului.

Page 41: EDP 2010. ISBN 978-973-3-3370-7 Dáné Károly András Dan ...edituradp.ro/site_img/downloads/2013/04/interior-alg-comp-i.pdf · Se ³tie c , metoda lui Gauss de rezolvare a unui

1.2. CONSTRUC�IA BAZEI GRÖBNER 41

Leg tura dintre operaµiile cu ideale ³i operaµiile cu variet µile a�ne poate� studiat  în detaliu. Se constat  spre exemplu c , sumei a dou  ideale îicorespunde intersecµia variet µilor a�ne asociate acestora, iar produsului a dou ideale îi corespunde reuniunea variet µilor a�ne asociate. În acest fel se poateconstrui un veritabil dicµionar de algebr �geometrie, care permite studiereafenomenelor geometrice cu mijloace algebrice ³i invers.

1.2 Construcµia bazei Gröbner

V om prezenta în aceast  secµiune fundamentul algebric � teoretic ³ialgoritmic � al investigaµiei variet µilor a�ne. Acest fundament este baza

Gröbner . �tim deja c  orice ideal al inelului k[x1, x2, . . . , xn] are o baz  �nit .O baza Gröbner este o baz  cu propriet µi speciale, care genereaz  acela³iideal. Ea se poate calcula plecând de la baza dat  cu ajutorul unui algoritm,algoritmul Buchberger.

1.2.1 Împ rµirea polinoamelor cu o variabil 

Structura de inel a mulµimii polinoamelor k[x1, x2, . . . , xn] înseamn  � exprimatîntr-un limbaj vag ³i degajat � posibilitatea adun rii, sc derii ³i înmulµiriineîngr dite a polinoamelor între ele. Exact ca ³i în cazul numerelor întregi, sepune a³adar problema studierii împ rµirii.

S  vedem mai întâi câteva exemple. Împ rµim 37 la 5, în inelul întregilor.Obµinem câtul 7, ³i restul 2.

37 5- 35 7 7 · 5 = 35

2

A³adar 37 = 7 · 5 + 2, sau în exprimarea academic  37 = 2( mod 5),respectiv 37−2 ∈< 5 >, adic  diferenµa dintre 37 ³i 2 se a�  în idealul generatde 5 în inelul întregilor.Similar, în inelul Q[x] al polinoamelor de o nedeterminat  x, cu coe�cienµi încorpul numerelor raµionale Q, polinomul x2+3x+3 împ rµit la x+1 d  câtulx+ 2 ³i restul 1.

x2 + 3x+ 3 x+ 1(-) x2 + 3x+ 2 x+ 2 (x+ 2) · (x+ 1) = x2 + 3x+ 2

1

Avem deci relaµia x2 + 3x+ 3 = (x+ 1) · (x+ 2) + 1, sau x2 + 3x+ 3 = 1(mod (x+ 1)), respectiv x2 + 3x+ 3− 1 ∈< x+ 1 >, adic  x2 + 3x+ 2 se a� în idealul generat de polinomul x+ 1.

Page 42: EDP 2010. ISBN 978-973-3-3370-7 Dáné Károly András Dan ...edituradp.ro/site_img/downloads/2013/04/interior-alg-comp-i.pdf · Se ³tie c , metoda lui Gauss de rezolvare a unui

42 CAPITOLUL 1. TEOREME DE GEOMETRIE PE CALCULATOR

În ambele exemple câtul ³i restul sunt univoc determinate de deîmp rµitul³i împ rµitorul dat: condiµia ca restul s  �e strict mai mic decât împ rµitorul15 (dar pozitiv), respectiv gradul polinomului rest s  �e strict mai mic decâtgradul împ rµitorului x + 1 determin  valoarea câtului ³i al restului în modunic (vezi teorema fundamental  a aritmeticii respectiv teorema împ rµirii poli-noamelor de o singur  nedeterminat ).

Ce s-ar întâmpla dac  am împ rµi un num r întreg (sau un polinom) lamai multe numere (mai multe polinoame)?

S  începem cu o "împ rµire" de numere întregi. Împ rµim spre exemplu 87la 15 ³i 6. Un sens al acestei "împ rµiri" neobi³nuite poate � reg sit în "proba"împ rµirii: 87 = 15 · x + 6 · y + r, unde x, y sunt cele dou  câturi iar r esteun rest, care urmeaz  toate s  �e determinate. Am spus un rest ³i nu restuldeoarece nu ³tim înc  dac  acest rest este unic!

S  examin m cazul exemplului nostru de "împ rµire". Avem:

87 15 6- 60 4 4 · 15 = 60

27 3 3 · 6 = 18- 18

9

87 15 6- 30 2 2 · 15 = 30

57 9 9 · 6 = 54- 54

3

Astfel 87 = 15 · 4+ 6 · 3+ 9 sau 87 = 15 · 2+ 6 · 9+ 3, pentru a aminti doarcâteva din posibilit µile de exprimare a "deîmp rµitului" 87 cu ajutorul uneicombinaµii liniare a celor doi "împ rµitori" 15 ³i 6.

Page 43: EDP 2010. ISBN 978-973-3-3370-7 Dáné Károly András Dan ...edituradp.ro/site_img/downloads/2013/04/interior-alg-comp-i.pdf · Se ³tie c , metoda lui Gauss de rezolvare a unui

1.2. CONSTRUC�IA BAZEI GRÖBNER 43

Putem obµine chiar ³i restul 0, spre exemplu în modul urm tor:

87 15 6- 45 3 3 · 15 = 45

42 7 7 · 6 = 42- 42

0

Similar, în inelul Q[x] al polinoamelor de o nedeterminat  x, cu coe�cienµiîn corpul numerelor raµionale Q, "împ rµim" polinomul f = 2x3 − x − 1 lapolinoamele g = x2 − x ³i h = x2 − 1. Avem printre altele urm toarele schemede împ rµire:

2x3 − x− 1 x2 − x x2 − 1(-) x3 − x x x · (x2 − 1) = x3 − x

x3 − 1(-) x3 − x2 x x · (x2 − x) = x3 − x2

x2 − 1x2 − x 1 1 · (x2 − x) = x2 − xx− 1

2x3 − x− 1 x2 − x x2 − 1(-) x3 − x x x · (x2 − 1) = x3 − x

x3 − 1(-) x3 − x2 x x · (x2 − x) = x3 − x2

x2 − 1x2 − 1 1 1 · (x2 − 1) = x2 − 10

Acestea pot da deci "câturile" x+ 1 ³i x iar restul x− 1, deoarece

f = (x+ 1) · g + x · h+ (x− 1),

dar ³i "câturile" x ³i x+ 1 iar restul 0, deoarece

f = x · g + (x+ 1) · h.

Putem conchide deci c  polinoamele f − (x− 1) ³i f se a�  în idealul generatde polinoamele g ³i h, I =< g, h >.

Sunt oare unice câturile ³i restul obµinute în aceste "împ rµiri"? Exemplelede mai sus arat  c  ele nu sunt unice, chiar dac  impunem condiµia ca restuls  �e mai mic decât cel mai mic dintre numere, respectiv gradul restului s  �emai mic decât gradul celui mai mic dintre împ rµitori!

Page 44: EDP 2010. ISBN 978-973-3-3370-7 Dáné Károly András Dan ...edituradp.ro/site_img/downloads/2013/04/interior-alg-comp-i.pdf · Se ³tie c , metoda lui Gauss de rezolvare a unui

44 CAPITOLUL 1. TEOREME DE GEOMETRIE PE CALCULATOR

Pot � f cute oare câturile ³i restul unice? R spunsul este a�rmativ. Ideeade baz  este reducerea "împ rµirii" la mai multe numere (respectiv polinoame)la împ rµirea obi³nuit  la un singur num r respectiv un singur polinom!

Procedeul se bazeaz  pe propoziµia 1.1.19 de pe pagina 26. Într-adev r,inelul întregilor precum ³i inelul polinoamelor cu o nedeterminat  ³i coe�cienµiîntr-un corp este inel principal, prin urmare idealul generat de dou  sau maimulte elemente poate � generat ³i de un singur element. Pe baza propoziµiei1.1.23 de la pagina 27 acest element este chiar cel mai mare divizor comun al"împ rµitorilor".

S  vedem cum transform m concret împ rµirile din exemplele noastre an-terioare.

În exemplul numeric avem (15, 6) = 3, deci 15Z + 6Z = 3Z. Astfel "îm-p rµirea echivalent " este

87 3- 87 29 29 · 3 = 87

0

unde câtul ³i restul sunt unice! Pe baza unei exprim ri al celui mai mare divizorcomun sub forma unei combinaµii liniare ale celor dou  numere de genul

3 = 1 · 15− 2 · 6,

orice exprimare ("împ rµire") a lui 87 ca o combinaµie liniar  a lui 15 ³i 6 poate� redus  la restul unic al împ rµirii, spre exemplu 87 = 15 · 4 + 6 · 3 + 9 poate� redus astfel:

87 = 4 · 15 + 3 · 6 + 3 · (1 · 15− 2 · 6) + 0

= 7 · 15− 3 · 6 + 0.

Similar, în cazul exemplului cu polinoame, avem:

(x2 − 1, x2 − x) = x− 1,

deci împ rµirea echivalent  � în care câtul ³i restul sunt unic determinate �este urm toarea

2x3 − x− 1 x− 1(-) 2x3 − x− 1 2x2 + 2x+ 1 (2x2 + 2x+ 1) · (x− 1) = 2x3 − x− 1

0.

Page 45: EDP 2010. ISBN 978-973-3-3370-7 Dáné Károly András Dan ...edituradp.ro/site_img/downloads/2013/04/interior-alg-comp-i.pdf · Se ³tie c , metoda lui Gauss de rezolvare a unui

1.2. CONSTRUC�IA BAZEI GRÖBNER 45

La fel ca pentru numere întregi, ³i în acest caz exprimarea celor dou  polinoamesub forma unor combinaµii liniare a celor doi "împ rµitori" are ca efect faptulc , orice "împ rµire" poate � redus  la o împ rµire care are restul unic, în cazulnostru 0.

Menµion m aici, c  cel mai mare divizor comun, precum ³i "coe�cienµii"combinaµiei liniare care îl exprim  pe acesta cu ajutorul numerelor (poli-noamelor) date, se calculeaz  efectiv cu algoritmului lui Euclid extins.

1.2.2 Împ rµirea polinoamelor cu mai multe variabile

S  trecem acum la împ rµirea polinoamelor cu mai multe variabile (n >= 2).Se pune întrebarea în ce m sur  cele de mai sus sunt valabile ³i în acest noucontext? Mai precis, putem formula urm toarele întreb ri:

• Este inelul polinoamelor k[x1, x2, . . . , xn] un inel principal?

• În inelul k[x1, x2, . . . , xn] funcµioneaz  algoritmul lui Euclid?

• Exist  descompunere în factori ireductibili pentru orice polinom dink[x1, x2, . . . , xn], ³i dac  da, este unic  oare o astfel de descompunere?

• Exist  un cel mai mare divizor comun pentru oricare dou  polinoame dink[x1, x2, . . . , xn]?

R spunsul la primele dou  întreb ri este u³or. Un raµionament simplu(detaliile sunt l sate pe seama cititorului) arat  c  în inelul K[x, y] idealulI =< x, y > generat de cele dou  variabile nu este principal, adic  nu poate �generat de un singur polinom.

Întru-cât orice inel euclidian este ³i principal, inelul de polinoame cu maimulte variabile nu este euclidian. Este deci natural s  ne întreb m cât dedeparte este acest inel de inelele euclidiene, respectiv cum poate � facut  îm-p rµirea polinoamelor cu p strarea a cât mai mult din proprietatea de unicitatea câturilor ³i a restului.

Pentru a r spunde la celelalte dou  întreb ri este momentul s  d m câtevade�niµii noi ³i reamintim câteva rezultate de baz  ale algebrei comutative.

De�niµie 1.2.1. Fie A un inel comutativ unitar f r  divizori ai lui zero.Spunem c  un element a ∈ A este ireductibil , dac  nu poate � scris ca unprodus de dou  elemente ambele neinversabile, adic  dac  a = bc atunci b sauc este inversabil (unitate).

De�niµie 1.2.2. Fie A un inel comutativ unitar f r  divizori ai lui zero.Spunem c  un element p ∈ A este prim, dac  divide un produs de dou 

Page 46: EDP 2010. ISBN 978-973-3-3370-7 Dáné Károly András Dan ...edituradp.ro/site_img/downloads/2013/04/interior-alg-comp-i.pdf · Se ³tie c , metoda lui Gauss de rezolvare a unui

46 CAPITOLUL 1. TEOREME DE GEOMETRIE PE CALCULATOR

elemente numai dac  divide unul din cei doi factori, adic  dac  p|bc atunci p|bsau p|c.

Un ideal propriu P ⊂ A se nume³te ideal prim dac  conµine un produsde elemente numai dac  conµine unul din factorii acestuia, adic  dac  ab ∈ Patunci a ∈ P sau b ∈ P .

Se observ  c  un element prim este ³i ireductibil (exerciµiu) pe când inversîn general nu este adev rat (contraexemple se pot da în inele în care descom-punerea în factori ireductibili nu este unic !).

De�niµie 1.2.3. Fie A un inel comutativ unitar f r  divizori ai lui zero. InelulA se nume³te factorial (sau inel cu descompunere unic  în factori), orice ele-ment al inelului se poate scrie ca un produs de elemente ireductibile ³i aceast scriere este în esenµ  unic .

Formal, A este factorial dac  pentru orice element a al lui se poate scriea = q1 ·q2 ·. . .·qn, unde elementele qi sunt ireductibile, ³i dac  a = p1 ·p2 ·. . .·pmeste o alt  reprezentare în produs de elemente ireductibile, atunci m = n³i pi = qi, dup  o eventual  permutare a indicilor (³i ignorarea/colectareaeventualelor elemente inversabile).

Observaµie 1.2.4. Orice ideal maximal este ideal prim.

Demonstraµie. Fie M un ideal maximal în inelul unitar comutativ A. Pre-supunem c  ab ∈ M . Trebuie s  ar t m c  M conµine unul din cei doi factori.Dac  a ∈ M atunci idealul generat de a ³i M , < a,M > (prin maximali-tatea lui M) este egal cu inelul A, deci avem o reprezentare a lui 1 de forma1 = ax +m, unde m ∈ M . Obµinem de aici b = abx +mb ∈ M , deci M esteprim.

Are loc urm toarea propoziµie important .

Propoziµie 1.2.5. Dac  A este un inel factorial, atunci A[x] este totinel factorial. În consecinµ  inelul polinoamelor cu mai multe variabilek[x1, x2, . . . , xn] este factorial.

Pentru demonstraµie trimitem cititorul la oricare din tratatele clasice dealgebr .

Putem acum r spunde ³i la celelalte dou  întreb ri. Întru-cât orice corpeste inel factorial (în mod banal), inelul polinoamelor cu una sau mai multevariabile k[x1, x2, . . . , xn] este inel factorial.

Deoarece într-un inel factorial orice element ireductibil este ³i prim, rezult c  în aceste inele oricare dou  elemente au un cel mai mare divizor comun. Else poate de�ni chiar cu ajutorul descompunerii celor dou  elemente în factoriireductibili (deci primi) în modul obi³nuit: se aleg toµi factorii comuni (i.e.

Page 47: EDP 2010. ISBN 978-973-3-3370-7 Dáné Károly András Dan ...edituradp.ro/site_img/downloads/2013/04/interior-alg-comp-i.pdf · Se ³tie c , metoda lui Gauss de rezolvare a unui

1.2. CONSTRUC�IA BAZEI GRÖBNER 47

asociaµi în divizibilitate) la puterea cea mai mic  la care acestea apar în celedou  descompuneri.

S  trecem acum la formularea problemei "împ rµirii" în inelulk[x1, x2, . . . , xn]. Fie idealul I =< f1, f2, . . . , fk >. S  reamintim c  oriceideal al acestui inel este �nit generat, conform teoremei lui Hilbert a bazei,vezi 1.1.45 de pe pagina 38, deci problema este pus  în termenii cei mai gen-erali. Fie f ∈ k[x1, x2, . . . , xn] un polinom. Dorim s  exprim m acest polinomca o "combinaµie liniar " a polinoamelor f1, f2, . . . , fk, admiµând un rest, cualte cuvinte dorim s  investig m în ce m sur  f aparµine idealului I? Formal,c ut m o exprimare de forma

f = f1 · q1 + f2 · q2 + . . .+ fk · qk + r,

în care vom numi (aici) polinoamele q1, q2, . . . , qk drept "câturi", iar polinomulr "rest" al "împ rµirii".

Pentru aceasta este clar c  avem nevoie mai întâi de o ordonare a termenilorunui polinom. În secµiunea care urmeaz  investig m posibilit µile de ordonareale monoamelor.

1.2.3 Ideale monomiale

Este clar c  pentru a stabili o relaµie de ordine între monoamele polinoamelorinelului k[x1, x2, . . . , xn], care au forma

xα = xα11 xα2

2 · · ·xαnn ,

este necesar ³i su�cient s  stabilim o astfel de relaµie între exponenµii (i.e.multiexponenµii) acestora,

α = (α1, α2, . . . , αn)

deci s  de�nim o ordonare pe mulµimea Nn. Este natural s  cerem ca aceast relaµie de ordonare s  �e total  (oricare dou  monoame s  �e comparabile) ³is  �e compatibil  cu înmulµirea monoamelor (înmulµirea a dou  monoame cuun al treilea s  nu afecteze relaµia de ordine existent  între acestea).

Pentru a putea s  �e aplicat  într-un algoritm de împ rµire, în care prinsc deri succesive gradele monoamelor vor descre³te în raport cu aceast  or-donare, pentru a asigurat terminarea algoritmului într-un num r �nit de pa³i,va trebui s  cerem s  nu existe ³iruri in�nite de exponenµi strict descresc tori.

Toate aceste criterii merit  o de�niµie proprie.

De�niµie 1.2.6. O relaµie de ordine > pe Nn se nume³te ordonare monomial dac  are urm toarele trei propriet µi:

Page 48: EDP 2010. ISBN 978-973-3-3370-7 Dáné Károly András Dan ...edituradp.ro/site_img/downloads/2013/04/interior-alg-comp-i.pdf · Se ³tie c , metoda lui Gauss de rezolvare a unui

48 CAPITOLUL 1. TEOREME DE GEOMETRIE PE CALCULATOR

• este o relaµie total  (ordonare liniar ),

• dac  α > β atunci α+ γ > β + γ,

• este o relaµie de bineordonare, adic  orice submulµime nevid  are un celmai mic element.

A treia proprietate este evident echivalent  cu faptul c  orice ³ir strict de-scresc tor este �nit.

Se pune acum problema dac  exist  asemenea relaµii de ordine pe mulµimeaNn ³i eventual cum se caracterizeaz  ele. Pentru a r spunde la prima între-bare vom da câteva exemple de ordon ri monomiale pe care le vom reg si ³iîn împlement rile algoritmilor polinoamelor cu mai multe variabile. În ceea ceprive³te cea de a doua întrebare menµion m aici doar faptul c  problema carac-teriz rii este rezolvat  ³i orice ordonare monomial  este descris  de o matrice,având anumite propriet µi.

De�niµie 1.2.7. Relaµie de ordine > pe Nn de�nit  astfel: α > β dac  îndiferenµa α−β prima component  nenul  din stânga este pozitiv , se nume³teordonare lexicogra�c  (notat , dac  contextul cere în mod explicit, >lex).

Se poate veri�ca u³or, c  aceast  ordonare este ordonare monomial .Introducem urm toarea notaµie pentru exprimarea "gradul total" al unui

monom:|α| = α1 + α2 + . . .+ αn.

De�niµie 1.2.8. Relaµia de ordine > pe Nn de�nit  astfel: α > β dac 

• |α| > |β| sau

• dac  |α| = |β| atunci în diferenµa α − β prima component  nenul  dinstânga este pozitiv ,

se nume³te ordonare lexicogra�c  graduat  (notat  uneori >grlex).

�i înc  o ordonare utilizat  mai des este urm toarea.

De�niµie 1.2.9. Relaµia de ordine > pe Nn de�nit  prin: α > β dac 

• |α| > |β| sau

• dac  |α| = |β| atunci în diferenµa α − β prima component  nenul  dindreapta este negativ ,

se nume³te ordonare invers lexicogra�c  graduat  (notat  >invgrlex).

Exemple 1.2.10. S  d m câteva exemple.

Page 49: EDP 2010. ISBN 978-973-3-3370-7 Dáné Károly András Dan ...edituradp.ro/site_img/downloads/2013/04/interior-alg-comp-i.pdf · Se ³tie c , metoda lui Gauss de rezolvare a unui

1.2. CONSTRUC�IA BAZEI GRÖBNER 49

• (1, 2, 3) >lex (1, 0, 4)

• (2, 2, 3) >grlex (3, 2, 1)

• (2, 1, 2) >grlex (1, 2, 2)

• (2, 0, 1) >invgrlex (1, 1, 1)

Odat  �xat  o ordonare monomial , evident putem aranja termenii unui poli-nom într-o ordine � prefer m în mod uzual ordinea descresc toare � dar putemrede�ni ³i conceptele obi³nuite la polinoame cu o singur  variabil  de termen-³i coe�cient principal respectiv gradul unui polinom.

De�niµie 1.2.11. Fie f un polinom nenul în k[x1, x2, . . . , xn] ³i �e > o or-donare monomial . Atunci:

(1) gradul polinomului f este

mdeg(f) = max{α ∈ Nn : aα = 0},

(2) coe�cientul principal al lui f este

LC(f) = amdeg(f) ∈ k,

(3) monomul principal al lui f este

LM(f) = xmdeg(f) ∈ k,

(4) iar termenul principal al lui f este

LT(f) = LC(f) · LM(f).

De�niµia care urmeaz  va � important  în de�nirea bazei Gröbner .

De�niµie 1.2.12. Un ideal I ⊂ k[x1, x2, . . . , xn] se nume³te ideal monomialdac  exist  o submulµime de multiexponenµi A ⊂ Nn astfel ca I este formatdin toate polinoamele ale c ror termeni sunt monoame având multiexponentuldin A. Vom nota un ideal monomial deci I =< xα : α ∈ A >.

D m f r  demonstraµie o caracterizare important  a idealelor monomiale:

Propoziµie 1.2.13 (lema lui Dickson). Fie I un ideal monomial înk[x1, x2, . . . , xn]. Atunci I este generat de o mulµime �nit  de monoame.

În sfâr³it vom mai avea nevoie de o de�niµie.

Page 50: EDP 2010. ISBN 978-973-3-3370-7 Dáné Károly András Dan ...edituradp.ro/site_img/downloads/2013/04/interior-alg-comp-i.pdf · Se ³tie c , metoda lui Gauss de rezolvare a unui

50 CAPITOLUL 1. TEOREME DE GEOMETRIE PE CALCULATOR

De�niµie 1.2.14. Fie I ⊂ k[x1, x2, . . . , xn] un ideal nenul.

(1) De�nim ³i not m mulµimea termenilor principali ai lui I prin

LT(I) = {cxα : exist  f ∈ I, astfel ca LT(f) = cxα},

(2) respectiv idealul termenilor principali ca �ind idealul generat de acesteelemente LT(I), care va � notat prin < LT(I) >.

Este u³or de v zut c  idealul termenilor principali al unui ideal I este unideal monomial ³i este �nit generat de mulµimea termenilor principali ai unuiset �nit de polinoame ale idealului I.

1.2.4 Baze Gröbner

Având la dispoziµie ordon rile monomiale, putem trece la experimentarea "îm-p rµirilor" polinoamelor la un set �nit de divizori. Vom folosi ordonarea ceamai la îndemân , ordonarea lexicogra�c . Iat  un exemplu. Fie f = 2x2y"deîmp rµitul" iar "împ rµitorii" f1 = x2 − x ³i f2 = xy + y.

2x2y x2 − x xy + y(-) 2x2y − 2xy 2y 2y · (x2 − x) = 2x2y − 2xy

2xy(-) 2xy + 2y 2 2 · (xy + y) = 2xy + 2y

−2y

A³adar, putem scrie "proba" împ rµirii:

2x2y = 2y · (x2 − x) + 2 · (xy + y) + (−2y).

Restul −2y ne-ar putea sugera c  f nu este o combinaµie a polinoamelor f1³i f2, altfel spus f nu este în idealul generat de f1 ³i f2. S  nu tragem îns concluzii pripite. S  efectu m acum acela³i procedeu schimbând ordinea celordoi împ rµitori. Vom obµine:

2x2y x2 − x xy + y(-) 2x2y + 2xy 2x 2x · (xy + y) = 2x2y + 2xy

−2xy(-) −2xy − 2y -2 −2 · (xy + y) = −2xy − 2y

2y

De data aceasta am obµinut urm toarea reprezentare a lui f :

2x2y = 0 · (x2 − x) + (2x− 2) · (xy + y) + 2y.

Page 51: EDP 2010. ISBN 978-973-3-3370-7 Dáné Károly András Dan ...edituradp.ro/site_img/downloads/2013/04/interior-alg-comp-i.pdf · Se ³tie c , metoda lui Gauss de rezolvare a unui

1.2. CONSTRUC�IA BAZEI GRÖBNER 51

Din nou avem un rest, dar diferit de cel anterior. În consecinµ  procedeul deîmp rµire depinde pîn  ³i de ordinea în care alegem între împ rµitori în procesulde generare a resturilor parµiale.

O alt  observaµie pentru care nu d m acum o ilustraµie este criteriul determinare a împ rµirii. Se poate imagina u³or c  generarea resturilor nu trebuies  se opreasc  atunci când termenul principal al restului parµial nu mai estedivizibil cu nici unul dintre termenii principali ai împ rµitorilor. Într-un astfelde moment putem a³eza acest termen rest, ³i putem cuntinua împ rµirea cuurm torul termen al restului parµial. Doar când nici unul dintre termeniirestului parµial nu mai este divizibil cu termenii principali ai împ rµitorilor,procedeul se opre³te. Proprietatea ordon rii monomiale ne asigur  c  acestase va întâmpla dup  un num r �nit de pa³i.Revenind la exemplul nostru, urmeaz  surpriza:

2x2 = y · (x2 − x) + x · (xy + y),

deci f = y · f1 + x · f2, ceea ce înseamn  c  f ∈< f1, f2 >, sau în limbajulnostru degajat, f este "divizibil" cu f1, f2!

Se pune deci problema natural : cum poate � salvat algoritmul nostru deîmp rµire? R spunsul este urm torul: schimbând împ rµitorii! Mai precis, vatrebui s -i schimb m în mod potrivit, f r  s  schimb m idealul generat de ei!Setul nou potrivit, care face decidabil  problema apartenenµei lui f la idealulI generat de împ rµitori, deci pentru care restul împ rµirii este în cazul nostru0, este baza Gröbner !

Pentru idealul nostru I acesta este G = {x2 − x, y}. Se veri�c  u³or c aceasta este o baz  echivalent : genereaz  acela³i ideal I! Într-adev r, dac not m g1 = x2 − x ³i g2 = y, atunci avem exprim rile reciproce:{

f1 = g1f2 = (x+ 1) · g2,

³i {g1 = f1g2 = 1

2y · f1 + (−12x+ 1)f2,

deci este clar c  I =< f1, f2 >=< g1, g2 >.Este momentul s  d m de�niµia bazei Gröbner .

De�niµie 1.2.15. Fie I un ideal în k[x1, x2, . . . , xn]. O mulµime �nit  depolinoame G = {g1, . . . , gk} din I se nume³te baz  Gröbner pentru idealul I,dac 

< LT(g1), . . . ,LT(gk) >=< LT(I) > .

Page 52: EDP 2010. ISBN 978-973-3-3370-7 Dáné Károly András Dan ...edituradp.ro/site_img/downloads/2013/04/interior-alg-comp-i.pdf · Se ³tie c , metoda lui Gauss de rezolvare a unui

52 CAPITOLUL 1. TEOREME DE GEOMETRIE PE CALCULATOR

O u³oar  adaptare a demonstraµiei dat  pentru teorema lui Hilbert a bazeine permite s  enunµ m propoziµia urm toare:

Propoziµie 1.2.16. Orice ideal I din k[x1, x2, . . . , xn] are o baz  Gröbner .Aceasta este în acela³i timp o baz  pentru I, adic  I este generat de polinoameledin baza Gröbner .

S  demonstr m aici în schimb urm toarea propoziµie, care ne convinge c într-adev r baza Gröbner este cea care asigur  unicitatea restului împ rµirii.

Propoziµie 1.2.17. Consider m un ideal I în k[x1, x2, . . . , xn] ³i o baz  Gröb-ner G = {g1, g2, . . . , gk} pentru acest ideal. Fie f ∈ k[x1, x2, . . . , xn] un poli-nom arbitrar. Atunci exist  polinoamele g ∈ I ³i r ∈ k[x1, x2, . . . , xn] cuurm toarele propriet µi:

• f = g + r (împ rµirea),

• nici unul din termenii lui r nu este divizibil cu vre-unul din termeniiprincipali ai polinoamelor bazei, LT(g1), . . . ,LT(gk) (criteriul opririi îm-p rµirii) ³i

• r este unic cu aceste dou  propriet µi.

Demonstraµie. Existenµa lui g ³i r cu primele dou  propriet µi este dat  chiarde algoritmul împ rµirii. Trebuie s  dovedim doar unicitatea lui r. Fie f =g+ r = g′+ r′. Atunci r′− r = g− g′ ∈ I deci evident LT(r′− r) ∈< LT(T ) >.Dar datorit  bazei Gröbner avem < LT(T ) >=< LT(G) >, ceea ce nu esteposibil decât dac  r′ − r = 0, deci unicitatea lui r este demonstrat .

1.2.5 Algoritmul lui Buchberger

Baza Gröbner a fost introdus  de Buchberger în teza sa de doctorat ³i denumit astfel în onoarea conduc torului tezei. Buchberger a dat în aceast  tez  ³i unalgoritm de calcul al acestei baze. Algoritmul pleac  de la o baz  a idealului, unset �nit de polinoame, ³i într-un num r �nit de pa³i calculeaz  o baz  Gröbnerpentru idealul dat.

Suntem datori s  schiµ m acest algoritm. Fie deci I =< f1, f2, . . . , fk >= 0un ideal. Iat  algoritmul lui Buchberger:

Input: F = (f1, f2, . . . , fk)Output: G = (g1, g2, . . . , gl), o baz  Gröbner pentru I, astfel ca F ⊂ G

G := Frepeat

G′ := G

Page 53: EDP 2010. ISBN 978-973-3-3370-7 Dáné Károly András Dan ...edituradp.ro/site_img/downloads/2013/04/interior-alg-comp-i.pdf · Se ³tie c , metoda lui Gauss de rezolvare a unui

1.2. CONSTRUC�IA BAZEI GRÖBNER 53

for (p, q), p, q ∈ G′, p = qS := S(p, q) mod G′

if S = 0 then G := G ∪ {S}until G = G′

Notaµia S := S(p, q) mod G′ trebuie explicat . Fie xγ c.m.m.m.c almonoamelor LM(p) ³i LM(p). Atunci

S(p, q) =xγ

LT(p)· p− xγ

LT(q)· q,

iar "mod" este un abuz de limbaj, pentru restul împ rµirii.S  observ m c  algoritmul de mai sus calculeaz  o baz  Gröbner care poate

conµine polinoame "inutile". Mai precis avem urm toarea remarc , a c reidemonstraµie este imediat  din de�niµia bazei Gröbner .

Observaµie 1.2.18. Fie G o baz  Gröbner pentru idealul I. Fie g ∈ G unpolinom astfel ca LT(g) ∈ LT(G \ {g}. Atunci G \ {g} este tot o baz  Gröbnerpentru I.

Rezult  de aici c  putem elimina aceast  redundanµ  din baza Gröbnercalculat  cu ajutorul algoritmului lui Buchberger.

De�niµie 1.2.19. O baz  Gröbner G pentru idealul I se nume³te minimal ,dac :

• LC(g) = 1 pentru orice g ∈ G, ³i

• LT(g) ∈< LT(G \ {g} > pentru orice g ∈ G.

Având la dispoziµie o baz  Gröbner pentru un ideal I putem elimina pascu pas polinoamele care violeaz  proprietatea de minimalitate a bazei. Sevede îns  u³or c  aceast  eliminare poate � f cut  în multe moduri, deci bazaGröbner obµinut  nu este unic . Putem îns  face o "reducere" mai substanµial a bazei Gröbner , care va avea ³i o proprietate de unicitate!

De�niµie 1.2.20. O baz  Gröbner G pentru idealul I se nume³te redus , dac :

• LC(g) = 1 pentru orice g ∈ G, ³i

• nici unul din monoamele lui g nu se a�  în < LT(G \ {g} > pentru oriceg ∈ G.

De�niµia de mai sus este justi�cat  de propoziµia care urmeaz .

Propoziµie 1.2.21. Fix m o ordonare monomial  în k[x1, x2, . . . , xn], ³i �e Iun ideal nenul. Atunci baza Gröbner redus  a lui I este unic .

Page 54: EDP 2010. ISBN 978-973-3-3370-7 Dáné Károly András Dan ...edituradp.ro/site_img/downloads/2013/04/interior-alg-comp-i.pdf · Se ³tie c , metoda lui Gauss de rezolvare a unui

54 CAPITOLUL 1. TEOREME DE GEOMETRIE PE CALCULATOR

Demonstraµie. S  de�nim în aceast  demonstraµie un polinom g ∈ G ca �indredus în G dac  nici un monom al lui g nu este în < LT(G \ {g} >. Evident,reducerea lui G se va termina, când �ecare element al lui este redus în el.

O prim  observaµie imediat  este c  dac  un polinom g ∈ G este redus înG, atunci ele este redus în orice alt  baz  Gröbner minimal  din care face ³iel parte, ³i care are acela³i set de termeni principali.

A doua observaµie este faptul c  orice polinom g al unei baze Gröbnerminimale G poate � înlocuit cu restul împ rµirii acestuia la G \ {g}, (adic  gmod (G \ {g})), aceasta �ind tot a baz  Gröbner minimal . Aceasta rezult direct din algoritmul lui Buchberger, deoarece LT(g) = LT(g mod (G \ {g})).

În �ne s  mai observ m c  g mod (G\{g}) este redus pentru baza Gröbnerobµinut  prin dislocarea din G a lui g ³i cooptarea în locul lui al lui g mod (G\{g}).

Aceste observaµii arat  c  procesul de reducere a unei baze Gröbner prineliminarea respectiv dislocarea elementelor sale conform cu observaµiilor ante-rioare conduce la o baz  Gröbner redus .

Trebuie s  mai analiz m deci unicitatea bazei reduse. Fie G1 ³i G2 dou baze Gröbner reduse pentru I. Este u³or de v zut c  mulµimea termenilorprincipali coincid, deci LT(G1) = LT(G2). Fie g1 ∈ G1 arbitrar. Atunci exist g2 ∈ G2 astfel ca LT(g1) = LT(g2). Va trebui s  ar t m c  g1 = g2.

Pentru aceasta s  consider m diferenµa g1 − g2. Aceasta �ind în idealul Iavem (g1− g2) mod G1 = 0. Dar deoarece LT(g1) = LT(g2), ace³ti termeni seanuleaz  în diferenµ , iar termenii r ma³i nu sunt divizibili cu nici un monomdin LT(G1) = LT(G2), deoarece G1 ³i G2 sunt baze Gröbner reduse pentru I.A³adar (g1 − g2) mod G1 = (g1 − g2). Rezult  c  g1 = g2.

Din cele de mai sus rezult  un criteriu algoritmic de a decide egalitatea adou  ideale.

Observaµie 1.2.22. Seturile de polinoame {f1, f2, . . . , fk} ³i {g1, g2, . . . , gl}genereaz  acela³i ideal, dac  bazele Gröbner reduse ale celor dou  ideale gen-erate coincid.

1.3 Demonstraµia teoremelor de geometrie

S   trecem acum la una din cele mai spectaculoase aplicaµii ale aces-tui algoritm: demonstraµia teoremelor de geometrie euclidian  plan .

Prezentarea noastr  încearc  s  �e cât mai scurt , pentru a da loc unor ex-emple edi�catoare. Evident, materialul inclus aici nu este decât o iniµiere înacest domeniu, ³i are drept scop principal trezirea interesului pentru apro-fundarea acestor tehnici. Este întotdeauna fascinant  � în opinia autorului �

Page 55: EDP 2010. ISBN 978-973-3-3370-7 Dáné Károly András Dan ...edituradp.ro/site_img/downloads/2013/04/interior-alg-comp-i.pdf · Se ³tie c , metoda lui Gauss de rezolvare a unui

1.3. DEMONSTRA�IA TEOREMELOR DE GEOMETRIE 55

descoperirea unor leg turi profunde între diverse ramuri ale matematicii, încazul de faµ  între algebr  ³i geometrie!

În continuare ne �x m contextul presupunând urm toarele fapte: propri-et µile geometrice admise sunt cele care se pot exprima prin ecuaµii polinomiale(nu neap rat liniare!). Acestea se obµin cu ajutorul coordonatiz rii. Dateleproblemei geometrice vor � variabile algebrice, ele putând � de dou  tipuri:cele arbitrare (acestea vor � notate cu litera u, ³i sunt parametrii construcµi-ilor geometrice f cute în ipoteza enunµului) ³i cele legate de propriet µile geo-metrice date (notate cu x), num rul acestora din urm  �ind egal cu num rulpropriet µilor. Presupunem deci c  �ecare proprietate se exprim  cu ajutorulunei ecuaµii algebrice (în general neliniare), iar polinoamele acestea vor � no-tate cu h. Proprietatea care exprim  concluzia enunµului este ³i ea o ecuaµiepolinomial , notat  cu g.

Iat  descrierea sumar  a metodei. Începem cu o de�niµie.

De�niµie 1.3.1. Concluzia g rezult  strict din ipotezele h1, . . . , hn, dac  g ∈I(V ) ⊂ R[u1, . . . , um, x1, . . . , xn], unde V este varietatea a�n  generat  deh1, . . . , hn, i.e. mulµimea zerourilor acestui set de polinoame.

Avem urm toarea propoziµie.

Propoziµie 1.3.2. Dac  g este în√< h1, . . . , hn >, atunci g rezult  strict din

ipotezele h1, . . . , hn.

Pentru demonstraµie trimitem la [12]. În continuare avem nevoie de ode�niµie care exprim  leg tura dintre independenµa algebric  a parametrilor ³idegenerarea condiµiilor geometrice.

De�niµie 1.3.3. Concluzia g rezult  generic din ipotezele h1, . . . , hn, dac g ∈ I(V ′) ⊂ R[u1, . . . , um, x1, . . . , xn], unde V ′ este reuniunea acelor com-ponente ale variet µii a�ne V generat  de h1, . . . , hn pe care ui sunt algebricindependente.

Reamintim, c  independenµa algebric  a variabilelor ui pe o varietate a�n ireductibil  înseamn  c  nu exist  polinom nenul având numai aceste variabilecare s  se anuleze identic pe aceast  varietate. În mod uzual în teoremelegeometrice concluzia exprim  o proprietate geometric  generic , i.e. situaµiadegenerat  a propriet µilor din ipoteze se exclude.

Urm toarea teorem  reprezint  cheia aplic rii teoriei bazelor Gröbner îndemonstrarea teoremelor de geometrie (vezi [12]).

Teorem  1.3.4. Concluzia g rezult  generic din ipotezele h1, . . . , hn, dac  unadin condiµiile echivalente urm toare este îndeplinit :

Page 56: EDP 2010. ISBN 978-973-3-3370-7 Dáné Károly András Dan ...edituradp.ro/site_img/downloads/2013/04/interior-alg-comp-i.pdf · Se ³tie c , metoda lui Gauss de rezolvare a unui

56 CAPITOLUL 1. TEOREME DE GEOMETRIE PE CALCULATOR

(1) Exist  un polinom nenul c(u1, . . . , um) ∈ R[u1, . . . , um] astfel ca

c · g ∈√H,

unde H =< h1, . . . , hn >⊂ R[u1, . . . , um, x1, . . . , xn].

(2) Dac  not m H =< h1, . . . , hn >⊂ R(u1, . . . , um)[x1, . . . , xn], atunci

g ∈√

H.

(3) 1 este baza Gröbner (redus ) a idealului

< h1, . . . , hn, 1− yg >⊂ R(u1, . . . , um)[x1, . . . , xn, y].

În exemplele care urmeaz  rolul principal va juca condiµia (3) care se vareg si ³i în comenzile din codul surs  al programului Singular, pe care-l vomfolosi în aplicaµii.

1.4 Aplicaµii � Exemple în Singular

S   vedem acum, cum arat  toate acestea în Singular . Acest pachet esteconstruit pe baza furnizat  de teoria inelelor de polinoame cu mai multe

variabile ³i are ca scop iniµial furnizarea suportului computaµional pentru in-vestigaµii în teoria singularit µiilor. Este accesibil liber pe internet la adresahttp://www.singular.uni-kl.de/ de unde se poate obµine versiunea 3.1.1, la carea ajuns în momentul redact rii acestui manuscris.

Inelele în pachetul Singular pot �:

• Un inel de polinoame peste un corp.• Localizarea unui inel de polinoame.• Inelul factor al celor de mai sus, cu un ideal al acestora.• Produsul tensorial al inelelor de la punctul 1 sau 2.

Corpul de coe�cienµi poate �:

• Corpul numerelor raµionale Q, cu reprezentarea numerelor întregi în pre-cizie in�nit .

• Zp unde p este un num r prim mai mic decât 2147483629.• Un corp �nit GF(pn), unde p este un num r prim, ³i pn ≤ 215.• Extinderi transcendente ale lui Q ³i Zp.• Extinderi algebrice simple ale lui Q ³i Zp.• Corpul numerelor reale ³i complexe (cu reprezentarea numerelor în vir-gul  mobil , cu precizie in�nit ).

Page 57: EDP 2010. ISBN 978-973-3-3370-7 Dáné Károly András Dan ...edituradp.ro/site_img/downloads/2013/04/interior-alg-comp-i.pdf · Se ³tie c , metoda lui Gauss de rezolvare a unui

1.4. APLICA�II � EXEMPLE ÎN SINGULAR 57

Exemple 1.4.1. De�nim în Singular inelele de polinoame:

(1) Q[x, y, z],(2) Z5[x],(3) Z11(a, b)[x, y, z],(4) Z2[a]/(a

3 + a+ 1)[x, y].(5) R[x, y, z].

Iat  ³i secvenµele de program corespunz toare:

// (1)ring R=0,(x,y,z),dp;R;// (2)ring R=5,x,dp;R;// (3)ring R=(11,a,b),(x,y,z),dp;R;// (4)ring R=(2,a),(x,y),dp;minpoly = a^3+a+1;R;ring R=(2^3,a),(x,y),dp;R;// (5) numere reale cu 50 cifre zecimalering R=(real,50),(x,y),dp;R;

Comanda (4) spre exemplu de�ne³te inelul caracterizat de program astfel:

// characteristic : 2// 1 parameter : a// minpoly : (a3+a+1)// number of vars : 2// block 1 : ordering dp// : names x y// block 2 : ordering C

În cele ce urmeaz  � semnal m de pe acum � nu vom insista asupra sintaxeicomenzilor programelor pe care le folosim pentru exempli�c ri ³i rezolvareaexerciµiilor. Aceste programe dispun de un ajutor (help) extensiv ³i acoperitor,pentru ca cititorul dornic s  pun  în funcµiune matematica prezentat , s  sel mureasc  asupra acestor aspecte � din punctul de vedere al scopului urm ritde textul de faµ  � neesenµiale.

Page 58: EDP 2010. ISBN 978-973-3-3370-7 Dáné Károly András Dan ...edituradp.ro/site_img/downloads/2013/04/interior-alg-comp-i.pdf · Se ³tie c , metoda lui Gauss de rezolvare a unui

58 CAPITOLUL 1. TEOREME DE GEOMETRIE PE CALCULATOR

S  consider m urm toarea teorem  de geometrie plan .

Teorem  1.4.2. Fie A, B, C ³i D patru puncte arbitrare în planul euclidian.Presupunem c  ele sunt câte trei necoliniare, ³i nici unul nu este ortocentrultriunghiului format de celelalte trei puncte. Consider m cele patru cercuri alecelor nou  puncte (numit ³i cercul Euler sau cercul Feuerbach) al celor patrutriunghiuri formate de punctele date. Cele patru cercuri au un punct comun.

A

B

C

D

Figura 1.7: Patru cercuri (A)

Demonstraµia acestei teoreme este conµinut în codul surs  Singular de maijos. Comentariile din cod trebuie s  �e su�ciente pentru a înµelege constituireaacestui program.

Aceast  teorem  se bazeaz  pe o teorem  a lui Brianchon-Poncelet (1820),care a�rm  c  centrul unei hiperbole echilaterale care trece prin trei punctedate, se a�  pe cercul celor nou  puncte al triunghilui.

A³adar punctul de intersecµie al celor patru cercuri este centrul hiperboleiechilaterale determinat unic de cele patru puncte date.

// --------------------------------------------------------//

Page 59: EDP 2010. ISBN 978-973-3-3370-7 Dáné Károly András Dan ...edituradp.ro/site_img/downloads/2013/04/interior-alg-comp-i.pdf · Se ³tie c , metoda lui Gauss de rezolvare a unui

1.4. APLICA�II � EXEMPLE ÎN SINGULAR 59

// Program Singular//// Fie A1, A2, A3, A4 patru puncte arbitrare în plan.// Coordonatele acestora sunt parametrii// A(u1,u2), B(u3,u4), C(u5,u6), D(u7,u8)// Ecuaµia unui cerc Euler conµine trei variabile legate// a,b,c, iar cercul trece prin trei puncte deja date:// (x-a1)^2+(y-b1)^2-c1^2=0 is the Euler circle of BCD...// de unde rezult  trei condiµii h1=0, h2=0, h3=0...// În final (x1,x2) sunt coordonatele punctului de intersecµie.//ring r=(0,u1,u2,u3,u4,u5,u6,u7,u8),

(a1,a2,a3,a4,b1,b2,b3,b4,c1,c2,c3,c4,x1,x2,y),lp;poly h1=(u3+u5-2*a1)^2+(u4+u6-2*b1)^2-4*c1*c1;poly h2=(u3+u7-2*a1)^2+(u4+u8-2*b1)^2-4*c1*c1;poly h3=(u5+u7-2*a1)^2+(u6+u8-2*b1)^2-4*c1*c1;poly h4=(u1+u5-2*a2)^2+(u2+u6-2*b2)^2-4*c2*c2;poly h5=(u1+u7-2*a2)^2+(u2+u8-2*b2)^2-4*c2*c2;poly h6=(u5+u7-2*a2)^2+(u6+u8-2*b2)^2-4*c2*c2;poly h7=(u1+u3-2*a3)^2+(u2+u4-2*b3)^2-4*c3*c3;poly h8=(u1+u7-2*a3)^2+(u2+u8-2*b3)^2-4*c3*c3;poly h9=(u3+u7-2*a3)^2+(u4+u8-2*b3)^2-4*c3*c3;poly h10=(u1+u3-2*a4)^2+(u2+u4-2*b4)^2-4*c4*c4;poly h11=(u1+u5-2*a4)^2+(u2+u6-2*b4)^2-4*c4*c4;poly h12=(u3+u5-2*a4)^2+(u4+u6-2*b4)^2-4*c4*c4;poly h13=(x1-a1)^2+(x2-b1)^2-c1^2-((x1-a2)^2+(x2-b2)^2-c2^2);poly h14=(x1-a1)^2+(x2-b1)^2-c1^2-((x1-a3)^2+(x2-b3)^2-c3^2);// Concluzia este reprezentat  de:poly g=(x1-a1)^2+(x2-b1)^2-c1*c1;// Definim idealul:ideal I=(1-y*g,h1,h2,h3,h4,h5,h6,h7,h8,h9,h10,h11,h12,h13,h14);// Baza Gröbner este 1, deci teorema este adev rat :groebner(I);// --------------------------------------------------------

Programul va întoarce 1, deci teorema este demonstrat . (De fapt în loculcomenzii groebner(I) se folose³te o variant  modi�cat , std(I), prescurtare dela "standard bases". Pentru detalii vezi [12]).

Autorul nu a g sit referinµe pentru urm toarea variant  a precedentului rezul-tat vechi.

Page 60: EDP 2010. ISBN 978-973-3-3370-7 Dáné Károly András Dan ...edituradp.ro/site_img/downloads/2013/04/interior-alg-comp-i.pdf · Se ³tie c , metoda lui Gauss de rezolvare a unui

60 CAPITOLUL 1. TEOREME DE GEOMETRIE PE CALCULATOR

Teorem  1.4.3. Fie A, B, C ³i D patru puncte arbitrare în planul euclidian,ca în teorema precedent . Consider m cele patru cercuri care trec prin cele câtetrei picioare ale perpendicularelor duse dintr-un punct pe laturile triunghiuluiformat de celelalte trei puncte. Cele patru cercuri au din nou un punct comun.

A

B

C

D

O

Figura 1.8: Patru cercuri (B)

Este remarcabil c  cele dou  puncte de intersecµie coincid! Demonstraµia esteun exerciµiu de programare în Singular, l sat pe seama cititorului.

A

B

C

D

O

Figura 1.9: Patru cercuri (C)

Page 61: EDP 2010. ISBN 978-973-3-3370-7 Dáné Károly András Dan ...edituradp.ro/site_img/downloads/2013/04/interior-alg-comp-i.pdf · Se ³tie c , metoda lui Gauss de rezolvare a unui

1.5. PROBLEME PROPUSE 61

1.5 Probleme propuse

1. S  se reprezinte gra�c variet µile a�ne � din R2 � ³i s  se precizeze câtmai multe informaµii despre natura ³i dimensiunea acestora.

1-1. V (x2 − 2y).1-2. V ((x2 − 2y) · (2x− y2)).1-3. V (xy(x2 − 2y) · (2x− y2 + 1)).1-4. V (x− 2y + 1) ∩ V (2x− y2).1-5. V (x2 − 2y) ∩ V (2x− y2).

2. S  se reprezinte gra�c variet µile a�ne � din R3 � ³i s  se precizeze deasemenea cât mai multe informaµii despre natura ³i dimensiunea acestora.

2-1. V (x2 + y2 − z2 − 1).2-2. V (x2 − y2 − z2 − 1).2-3. V (x2 − y2 − z).2-4. V (x2 + y2 − 1).2-5. V (x2 − y2 − 1).2-6. V ((x2 − 2y) · (2x− y2)).2-7. V ((x2 − 2y) · (2x− z2)).2-8. V (xyz(x2 − 2y)).2-9. V (x− 2y + z + 1) ∩ V (2x− y − z + 2).2-10. V (x2 − 2y) ∩ V (x− y + z + 1).

3. S  se stabileasc  dac  apartenenµele de mai jos sunt adev rate sau nu îninelul R[x, y] respectiv R[x, y, z].

3-1. x6 + y6 ∈< x3 + x2y, xy3 + y4 >.3-2. x6 − y6 ∈< x3 + x2y, xy3 + y4 >.3-3. x6 + y6 ∈< x3 + y3, x2 + y2 >.3-4. x2 + y2 ∈< x3 + y3, x2 + y2 >.3-5. x2y2 ∈< x3 + y3, x2 + y2 >.3-6. x3 + yz2 ∈< x3 + y3, xy + yz, y2 − z2 >.3-7. x2 + y2 + z2 ∈< x3 + y3, xy + yz, y2 − z2 >.3-8. x3 + y4 + z5 ∈< x3 + y3, xy + yz, y2 − z2 >.3-9. xyz ∈< x3 + y3 + z3, xy + yz + zx, x2 + y2 + z2 >.3-10. x+ y + z ∈< x3 + y3 + z3, xy + yz + zx, x2 + y2 + z2 >.3-11. x7 + y7 + z7 ∈< x3 + y3 + z3, xy + yz + zx, x2 + y2 + z2 >.

Indicaµie:

ring R=0,(x,y),dp;ideal I=x3+x2y,xy3+y4;ideal J=std(I);poly f=x6+y6;reduce(f,J);// -> 0: f este in I// -> diferit de 0: f nu este in I

Page 62: EDP 2010. ISBN 978-973-3-3370-7 Dáné Károly András Dan ...edituradp.ro/site_img/downloads/2013/04/interior-alg-comp-i.pdf · Se ³tie c , metoda lui Gauss de rezolvare a unui

62 CAPITOLUL 1. TEOREME DE GEOMETRIE PE CALCULATOR

4. S  se stabileasc  care din relaµiile (posibil mai multe)

(a). I ⊆ J .(b). I ⊇ J .(c). I = J .(d). I ⊆ J .(e). I ⊇ J .

au loc pentru urm toarele ideale ale inelului R[x, y] respectiv R[x, y, z].

4-1. I =< x, y >, J =< x+ 2y, 2x− y >.4-2. I =< x, y >, J =< x2, x+ y >.4-3. I =< x2, y2, xy >, J =< x+ y, x3y3 >.4-4. I =< x, y, z >, J =< x+ 2y + z, 2x− y − x, y + z >.4-5. I =< x+ y, xy, x+ z >, J =< xyz, x− z, y − z >.

Indicaµie:

ring R=0,(x,y),dp;ideal I=x,y;ideal J=x+2y,2x-y;reduce(I,std(J));// daca ambele generatoare ale lui I sunt in J -> I inclus J// exact in acest caz comanda intoarce numai 0-uri// in caz contrar -> I nu este inclus in J, etc...

5. S  se calculeze "restul" ³i "câturile" împ rµirii polinomului f la idealulI, ³i s  se scrie "proba" împ rµirii.

5-1. f = x+ 3y, I =< x+ 2y, 2x− y >.5-2. f = x3y3, I =< x2 + y, x+ y2 >.5-3. f = x3 + y3 + z3, I =< x+ y + z, x2 + y2 + z2 >.

Indicaµie:

ring R=0,(x,y),dp;ideal I=x+2y,2x-y;poly f=x+3y;poly r=reduce(f,std(I));matrix Q=lift(I,f-r);r;Q;f-Q[1,1]*I[1]-Q[2,1]*I[2]-r;// -> r este "restul" impartirii// -> Q este "caturile" impartirii// ultima relatie trebuie sa dea 0 -> "proba" impartirii

Page 63: EDP 2010. ISBN 978-973-3-3370-7 Dáné Károly András Dan ...edituradp.ro/site_img/downloads/2013/04/interior-alg-comp-i.pdf · Se ³tie c , metoda lui Gauss de rezolvare a unui

1.5. PROBLEME PROPUSE 63

sau

ring R=0,(x,y),dp;ideal I=x+2y,2x-y;poly f=x+3y;list L=division(f,I);L;L[3]*f-matrix(I)*L[1]-L[2];// -> L[1] este "caturile" impartirii// -> L[2] este "restul" impartirii// -> L[3] este un factor care inmulteste f// ultima relatie trebuie sa dea 0 -> "proba" impartirii

6. S  se calculeze ecuaµiile implicite ale curbelor ³i suprafeµelor de�niteparametric de ecuaµiile date (parametrii sunt t, u, v...).

6-1. x = 2t2, y = t3.6-2. x = t2 + t+ 1, y = t3.6-3. x = t2, y = t3, z = t5.6-4. x = uv, y = uv2, z = u2 (aceast  suprafaµ  se nume³te umbrela lui

Whitney).6-5. x = u+ v, y = u− v, z = u2 − v2.6-6. x = u+ v, y = u− v, z = u2 + v2.6-7. x = u+ v, y = uv, z = u2 + v2.6-8. x = u2 + v2, y = u2 − v2, z = 2uv.6-9. x = 1 + u2 + v, y = 1− u− v2, z = u2 + v2.

Indicaµie:

ring R=0,(t,x,y),dp;ideal I=x-2t2,y-t3;ideal J=eliminate(I,t);J;// -> J este generat de ecuaµiile implicite

7. S  se stabileasc  dac  polinomul dat este sau nu un element al radicaluluiidealului dat.

7-1. f = x+ y, I =< x2, xy, y2 >.7-2. f = x− y, I =< x3, x2y, xy2, y3 >.7-3. f = x+ y + z, I =< x6, xy2, y3, z4 + xyz >.7-4. f = x+ y + z, I =< x9, xy8, y9, xyz >.7-5. f = x2 + y2 + z2, I =< x9, xy8, z9, xyz >.

Page 64: EDP 2010. ISBN 978-973-3-3370-7 Dáné Károly András Dan ...edituradp.ro/site_img/downloads/2013/04/interior-alg-comp-i.pdf · Se ³tie c , metoda lui Gauss de rezolvare a unui

64 CAPITOLUL 1. TEOREME DE GEOMETRIE PE CALCULATOR

Indicaµie:

ring A=0,(x,y),dp;ideal I=x2,2xy,y2;poly f=x+y;ring B=0,(t,x,y),dp;ideal I=imap(A,I);poly f=imap(A,f);I=I,1-t*f;std(I);// -> 1, inseamna f este in radicalul lui I,// -> != 1, f nu este in radicalul lui I

8. S  se determine radicalul idealului urm tor dat.

8-1. I =< x2, xy, y2 >.8-2. I =< x3, x2y, xy2, y3 >.8-3. I =< x4, y3 >.8-4. I =< x2 + xy, y3 >.8-5. I =< x6, xy2, y3, z4 + xyz >.8-6. I =< x9, xy8, y9, xyz >.8-7. I =< x9, xy8, z9, xyz >.

Indicaµie:

LIB "primedec.lib";ring R=0,(x,y),dp;ideal I=x2,2xy,y2;setring(R);radical(I);// -> idealul radical(I)

9. S  se calculeze intersecµia idealelor, I ∩ J pentru idealele urm toare.

9-1. I =< x2, xy, y2 >, J =< x3 >.9-2. I =< x3, x2y, xy2, y3 >, J =< x3, y3 >.9-3. I =< x4, y3 >, J =< x2 + y3 >.9-4. I =< x2 + xy, y3 >, J =< x4, z2 >.9-5. I =< x3, xy2 >, J =< z >.9-6. I =< x5, xy, xy >, J =< x, xz >.9-7. I =< x3 + xy2, xyz >, J =< x+ y, x+ z >.9-8. I =< x+ y2, z >, J =< x+ y, z >.9-9. I =< x+ y + z, xyz >, J =< x+ y, x+ z, y + z >.

Page 65: EDP 2010. ISBN 978-973-3-3370-7 Dáné Károly András Dan ...edituradp.ro/site_img/downloads/2013/04/interior-alg-comp-i.pdf · Se ³tie c , metoda lui Gauss de rezolvare a unui

1.5. PROBLEME PROPUSE 65

Indicaµie:

ring R=0,(x,y),dp;ideal I=x2,xy,y2;ideal J=x3;intresect(I,J);// -> idealul intersectia lui I si J

10. S  se calculeze câtul idealelor, I : J pentru idealele urm toare.

10-1. I =< x2, xy >, J =< x3 >.10-2. I =< x, y >, J =< x3, y3 >.10-3. I =< x3, y3 >, J =< x, y >.10-4. I =< x2, y >, J =< x, z2 >.10-5. I =< x3, xy, z2 >, J =< z >.10-6. I =< x3, xy, z2 >, J =< x, z >.10-7. < x, z >, J = I =< x3, xy, z2 >.

Indicaµie:

ring R=0,(x,y),dp;ideal I=x2,xy;ideal J=x3;quotient(I,J);// -> idealul cat al lui I si J// -> 1, inseamna intreg inelul

11. S  se studieze dependenµa algebric  a polinoamelor date, ³i în cazul de-pendenµei algebrice s  se determine polinomul care realizeaz  aceast  de-pendenµ . (Reamintim c  polinoamele f1, f2, . . . , fk ∈ k[x1, x2, . . . , xn]sunt algebric dependente dac  exist  un polinom g ∈ K[y1, y2, . . . , yk]astfel ca g(f1, f2, . . . , fk) = 0.)

11-1. f1 = 2x+ y, f2 = x− 3y, f3 = 5x+ 7y.11-2. f1 = x+ y, f2 = x− y, f3 = x2 − y2.11-3. f1 = x+ y, f2 = x− y, f3 = x2 + y2.11-4. f1 = x+ y + z, f2 = x2 + y2 + z2, f3 = xy + xz + yz.11-5. f1 = x+ y, f2 = xy, f3 = x5 + y5.11-6. f1 = x+ y, f2 = xy, f3 = x5 − y5.

Page 66: EDP 2010. ISBN 978-973-3-3370-7 Dáné Károly András Dan ...edituradp.ro/site_img/downloads/2013/04/interior-alg-comp-i.pdf · Se ³tie c , metoda lui Gauss de rezolvare a unui

66 CAPITOLUL 1. TEOREME DE GEOMETRIE PE CALCULATOR

Indicaµie:

ring R=0,(x,y),dp;poly f1=2x+y;poly f2=x-3y;poly f3=5x+7y;LIB "algebra.lib";list L=algDependent(ideal(f1,f2,f3))[1];// -> L[1]=1, inseamna algebric dependent

def S=L[2]; // defineste inelul de 2+3 (x,y,f1,f2,f3) variabilesetring(S); // selecteaza acest inelker; // listeaza relatiile de dependenta

12. S  se demonstreze teoremele urm toare � folosind programe scrise înSingular.

12-1. Teorema lui Pitagora.12-2. Reciproca teoremei lui Pitagora.12-3. Teorema în lµimilor.12-4. Teorema medianelor.12-5. Teorema bisectoarelor.12-6. Teorema mediatoarelor.12-7. Teorema bisectoarei.

13. S  se demonstreze teorema 1.4.3 de la pagina 60 � ambele a�rmaµii,corespunz toare �gurilor (B) ³i (C) respectiv.

Page 67: EDP 2010. ISBN 978-973-3-3370-7 Dáné Károly András Dan ...edituradp.ro/site_img/downloads/2013/04/interior-alg-comp-i.pdf · Se ³tie c , metoda lui Gauss de rezolvare a unui

Capitolul 2

Rezolvarea sistemelor de ecuaµii

E cuaµiile polinomiale cu o singur  variabil  se studiaz  încadrul unor capitole de matematic  care nu intr  în obiectiveleprezentului volum. Sisteme de ecuaµii am întâlnit îns  în capi-tolul precedent: am v zut c  mulµimea soluµiilor unui sistem de

ecuaµii algebrice este un obiect "geometric" numit varietate a�n . Ecuaµiileunui sistem pot � schimbate dup  anumite reguli cu p strarea mulµimii soluµi-ilor sistemului, ecuaµiile (polinoamele) obµinute în acest fel dau na³tere la unobiect algebric, numit ideal. Am v zut de asemenea c  aceast  corespondenµ varietate algebric  � ideal, este pro�tabil  din punctul de vedere al studiuluiambelor obiecte.

În acest capitol vom încerca s  fructi�c m acest studiu în direcµia studiuluirezolvabilit µii sistemelor de ecuaµii algebrice.

2.1 Sisteme de ecuaµii polinomiale

S istemele de ecuaµii pe care le vom considera în acest capitol vor �formate din ecuaµii polinomiale. Coe�cienµii vor � elementele unui corp

de numere. În exemplele concrete vor � numere raµionale, numere reale, clasede resturi modulo un num r prim, sau extensii algebrice �nite ale acestora.Forma general  a unui astfel de sistem este deci

f1(x1, x2, . . . , xn) = 0

f2(x1, x2, . . . , xn) = 0

. . .

fm(x1, x2, . . . , xn) = 0

(2.1)

67

Page 68: EDP 2010. ISBN 978-973-3-3370-7 Dáné Károly András Dan ...edituradp.ro/site_img/downloads/2013/04/interior-alg-comp-i.pdf · Se ³tie c , metoda lui Gauss de rezolvare a unui

68 CAPITOLUL 2. REZOLVAREA SISTEMELOR DE ECUA�II

unde x1, x2, . . . , xn sunt necunoscutele sistemului iar f1, f2, . . . , fm ∈K[x1, x2, . . . , xn] sunt polinoame cu coe�cienµi în corpul de numere K.

2.1.1 Sisteme liniare

Cele mai simple sisteme de ecuaµii sunt cele liniare. În acest caz polinoamelef1, f2, . . . , fm sunt liniare, deci au forma

f = a1x1 + a2x2 + . . .+ anxn − b,

unde numerele a1, a2, . . . , an, b ∈ K sunt elemente ale corpului de numere K.Teoria acestor sisteme este binecunoscut . Sunt posibile trei situaµii: sis-

temul are soluµie unic , sistemul are o in�nitate de soluµii (ace³tia sunt funcµiiliniare de un num r �nit de parametrii), respectiv sistemul nu are soluµii.Toate aceste situaµii sunt decise de rangul matricii coe�cienµilor sistemului ³ide rangul matricii extinse, adic  rangurile matricilor:

A =

a11 a12 . . . a1na21 a22 . . . a2n...

.... . .

...am1 am2 . . . amn

respectiv

A =

a11 a12 . . . a1n b1a21 a22 . . . a2n b2...

.... . .

......

am1 am2 . . . amn bm

.

Reamintim c  rangul unei matrici este num rul maxim r de linii (sau coloane)liniar independente, sau ordinul r celui mai mare minor (i.e. subdeterminant)nenul format din elementele a r linii ³i r coloane alese din matrice.

Teoria acestor sisteme se poate formula concis în felul urm tor. Not mr = rank(A) ³i r = rank(A). Atunci avem:

r = r sistem compatibil are soluµiir = n sistem determinat soluµie unic r < n sistem nedeterminat in�nitate parametric  de soluµii

r < r sistem incompatibil nu are soluµii

În toate cazurile anterioare, dac  r < m atunci un num r de m − r ecuaµiipotrivit alese sunt combinaµii liniare ale celorlalte r ecuaµii, deci aceste ecuaµiipot � eliminate din sistem f r  ca rezolvabilitatea ³i soluµiile sistemului s  �eafectate. În secµiunea de aplicaµii d m exemple pentru �ecare caz.

Page 69: EDP 2010. ISBN 978-973-3-3370-7 Dáné Károly András Dan ...edituradp.ro/site_img/downloads/2013/04/interior-alg-comp-i.pdf · Se ³tie c , metoda lui Gauss de rezolvare a unui

2.1. SISTEME DE ECUA�II POLINOMIALE 69

2.1.2 Teorema lui Hilbert a zerourilor

Înainte de a intra în studiul sistemelor de ecuaµii neliniare va trebui s  contin-u m analiza "dicµionarului" algebr -geometrie început în capitolul precedent.S  ne aducem aminte a³adar, c  mulµimea soluµiilor unui sistem de ecuaµiipolinomiale se nume³te varietate algebric . Polinoamele care de�nesc sistemulde ecuaµii de�nesc ³i un ideal, ³i orice polinom al acestui ideal se anuleaz  pepunctele acestei variet µi.

Invers, dat un ideal de polinoame � conform teoremei lui Hilbert a bazei(vezi teorema 1.1.45 de la pagina 38), mai precis a consecinµei acesteia careurmeaz  dup  teorem  � acest ideal este �nit generat, deci exist  un sistemformat dintr-un num r �nit de ecuaµii, ale c ror r d cini comune sunt puncteleîn care se anuleaz  toate polinoamele idealului (propoziµia 1.1.47 e la pagina40).

Am v zut de asemenea c  atât corespondenµa varietate-ideal, cât ³i core-spondenµa ideal-varietate este antimonoton  (vezi propoziµia 1.1.48 de la pag-ina 40).

Am demonstrat tot acolo, c  V (I(V )) = V , ³i asocierea idealului la vari-etate este injectiv . Se pune deci problema natural , în ce m sur  o variatea�n  asociat  unui ideal determin  idealul din care provine.

Avem evident I(V (I)) ⊇ I. Este u³or de v zut pe un contraexemplu simpluc  incluziunea este strict . Într-adev r, �e n = 1, I = (x2), deci V (I) = {0}³i deci I(V (I)) = (x) ' I. Teorema lui Hilbert a zerourilor clari�c  tocmaiaceast  incluziune strict .

Înainte de a enunµa teorema lui Hilbert a zerourilor demonstr m dou  lemecare vor � folosite în demonstraµia acesteia respectiv vom demonstra ³i formaslab  a acestei teoreme.

Lem  2.1.1. Fie I un ideal propriu în k[x1, x2, . . . , xn]. Atunci exist  un idealmaximal m $ k[x1, x2, . . . , xn] care îl conµine pe I.

Demonstraµie. Într-adev r, ad ugând unul câte unul elemente ale inelului laidealul I ³i generând astfel un ³ir strict ascendent de ideale � acesta �ind �nit,la un moment dat el coincide cu întreg inelul k[x1, x2, . . . , xn]. Idealul construitîn pasul anterior acestui moment este evident maximal ³i conµine idealul I.

Ideea de mai sus reluat  mai explicit arat  astfel. �tim din teorema luiHilbert a bazei (teorema 1.1.45 de la pagina 38) c  inelul k[x1, x2, . . . , xn] esteNoetherian, ³i conform propoziµiei 1.1.44 de la pagina 38 aceasta înseamn  c orice ³ir de ideale ascendent este staµionar sau altfel spus orice ³ir de idealestrict ascendent este �nit.

Consider m idealul I1 = I. Acesta �ind ideal propriu, exist  un ele-ment f1 ∈ k[x1, x2, . . . , xn] \ I1. Idealul generat I2 =< f1, I1 > este ori

Page 70: EDP 2010. ISBN 978-973-3-3370-7 Dáné Károly András Dan ...edituradp.ro/site_img/downloads/2013/04/interior-alg-comp-i.pdf · Se ³tie c , metoda lui Gauss de rezolvare a unui

70 CAPITOLUL 2. REZOLVAREA SISTEMELOR DE ECUA�II

întreg inelul ori ideal propriu. A³adar ori I1 ⊃ I este maximal ori exist f2 ∈ k[x1, x2, . . . , xn] \ I2. Raµionamentul se repet , ³i se obµine astfel un ³irstrict ascendent de ideale I1 & I2 & . . ., care �ind �nit, exist  un indice kpentru care Ik = k[x1, x2, . . . , xn]. Atunci m = Ik−1 este idealul maximal careîl conµine pe I.

Idealele maximale ale inelelor de polinoame cu coe�cienµi într-un corp al-gebric închis (e su�cient s  ne limit m aici la corpul numerelor complexe) auo form  particular . S  ne aducem aminte c  asocierea la un ideal a uneivariet µi algebrice este antimonoton : cu cât idealul este mai mare, cu atâtvarietatea este mai mic . Nu este chiar atât de surprinz tor a³adar c  unuiideal maximal îi va corespunde cea mai "mic " varietate algebric : punctul.Dac  coordonatele acestuia sunt (a1, a2, . . . , an), atunci funcµiile polinomialecele mai simple care se anuleaz  în acest punct sunt cele liniare. Avem a³adarurm toarea a�rmaµie:

Lem  2.1.2. Fie m un ideal maximal (deci propriu) în k[x1, x2, . . . , xn].Atunci exist  un punct (a1, a2, . . . , an) ∈ kn astfel ca

m =< x1 − a1, x2 − a2, . . . , xn − an >,

adic  idealul maximal este generat de polinoamele de gradul întâi xi − ai.

Demonstraµie. Demonstraµia nu este chiar simpl . Red m aici o idee a demon-straµiei pentru a sublinia atât plauzibilitatea rezultatului cât ³i di�cultateademonstraµiei îns ³i. Pentru orice i, 1 ≤ i ≤ n intersecµia m ∩ k[xi] nu estevid , adic  idealul maximal conµine pentru �ecare variabil  un polinom înnumai variabila respectiv  (aceasta este partea di�cil  a demonstraµiei, vezi[?]). Acest polinom nu poate � o constant  nenul , deoarece atunci am aveam = k[x1, x2, . . . , xn]. Corpul k �ind algebric închis acest polinom de grad celpuµin 1 se descompune în factori liniari. Dar idealul m �ind maximal este ³iprim, deci conµine unul din factorii acestei descompuneri, s  spunem factorul(xi−ai). Prin urmare idealulm conµine idealul< x1−a1, x2−a2, . . . , xn−an > .Acesta îns  este un ideal maximal, deci avem egalitatea din enunµ.

Teorema lui Hilbert a zerourilor în forma sa slab  (week Nullstellensatz)are urm torul enunµ:

Teorem  2.1.3 (Teorema lui Hilbert a zerourilor � forma slab ). Fie k uncorp algebric închis. Fie I un ideal în k[x1, x2, . . . , xn], pentru care V (I) = ∅.Atunci I = k[x1, x2, . . . , xn].

Demonstraµie. A�rmaµia teoremei se poate reformula astfel: dac  idealulI ⊂ k[x1, x2, . . . , xn] este ideal propriu, atunci V (I) = ∅. Fie m un ideal

Page 71: EDP 2010. ISBN 978-973-3-3370-7 Dáné Károly András Dan ...edituradp.ro/site_img/downloads/2013/04/interior-alg-comp-i.pdf · Se ³tie c , metoda lui Gauss de rezolvare a unui

2.1. SISTEME DE ECUA�II POLINOMIALE 71

maximal care îl conµine pe I � acesta exist  conform lemei 2.1.1. Atunciconform lemei 2.1.2 exist  un punct (a1, a2, . . . , an) ∈ kn astfel ca m =<x1−a1, x2−a2, . . . , xn−an >. Atunci punctul (a1, a2, . . . , an) este o r d cin comun  a polinoamelor din m deci ³i a polinoamelor din I.

În sfâr³it teorema lui Hilbert a zerourilor � dup  cum am pus la vedere înînceputul acestei secµiuni are urm torul enunµ:

Teorem  2.1.4 (Teorema lui Hilbert a zerourilor). Fie k un corp algebricînchis ³i �e I un ideal propriu al inelului de polinoame k[x1, x2, . . . , xn]. Atunci

I(V (I)) =√I.

Demonstraµie. Incluziunea I(V (I)) ⊇√I este simpl . Într-adev r, dac  f i ∈ I

pentru un i ≥ 1 (i.e. f ∈√I), atunci nu numai nu numai f i(x) = 0 pentru

orice x ∈ V (I) dar odat  cu aceasta ³i f(x) = 0, deci f ∈ I(V (I)).Demonstr m deci incluziunea contrar  I(V (I)) ⊆

√I. Dac  I = (0),

atunci avem I(V (I)) = I =√I = (0). Fie deci I = 0. Fie f ∈ I(V (I)), f = 0,

³i �e {g1, g2, . . . , gs} un sistem de generatori ai lui I. S  not m totodat R = k[x1, x2, . . . , xn]. Consider m a nou  variabil  y. Consider m în inelul depolinoame R[y] = k[x1, x2, . . . , xn, y] idealul

J =< I, yf − 1 > .

Pentru orice punct (a1, a2, . . . , an, b) în varietatea algebric  a�n  V (J) avembf(a1, a2, . . . , an) = 1 ³i gi(a1, a2, . . . , an) = 0, pentru orice i = 1, . . . , s. De aiciîns  se deduce c  (a1, a2, . . . , an) ∈ V (I) ³i f(a1, a2, . . . , an) = 0, în contradicµiecu alegerea lui f . Prin urmare un asemenea punct (a1, a2, . . . , an, b) nu exist ,deci V (J) = ∅, ³i forma slab  a teoremei lui Hilbert a zerourilor implic  1 ∈ J .Astfel rezult  c  exist  polinoamele h1, h2, . . . , hs, h ∈ R[y] astfel ca

1 = h1 · g1 + h2 · g2 + . . .+ hs · gs + h · (yf − 1).

Aceast  egalitate v zut  în corpul de fracµii raµionale k(x1, x2, . . . , xn, y) nepermite s  substituim y cu 1/f , de unde vom obµine

1 =s∑

i=1

hi(x1, x2, . . . , xn,1

f) · gi.

Acum nu mai avem decât s  elimin m numitorul printr-o înmulµire corespun-z toare ³i vom obµine c  a exist  o putere a lui f care este o combinaµie ageneratorilor lui I, deci f ∈

√I.

Page 72: EDP 2010. ISBN 978-973-3-3370-7 Dáné Károly András Dan ...edituradp.ro/site_img/downloads/2013/04/interior-alg-comp-i.pdf · Se ³tie c , metoda lui Gauss de rezolvare a unui

72 CAPITOLUL 2. REZOLVAREA SISTEMELOR DE ECUA�II

2.1.3 Sisteme neliniare

Scopul principal al acestui capitol este studiul sistemelor de ecuaµii neliniarepolinomiale. A³adar în 2.1 de la pagina 67 polinoamele f vor � neliniare: vor� sume de monoame ale variabilelor, de diverse grade.

A³a cum vom vedea în cele ce urmeaz , studiul acestor sisteme ne va con-duce la trei alternative similare cu cele de la sisteme liniare, ³i anume: sis-tem compatibil � cu o in�nitate de soluµii, sau cu un num r �nit de soluµii� respectiv sistem incompatibil, deci f r  soluµie. Interesant este îns  faptulc  toate aceste alternative pot � recunoscute efectiv cu ajutorul algoritmuluibazei Gröbner ! S  vedem acum ³i detaliile.

Ca un rezultat imediat s  observ m c  teorema lui Hilbert a zerourilorîn forma slab  permite s  caracteriz m (inclusiv algoritmic!) rezolvabilitateaunui sistem de ecuaµii polinomiale neliniare.

Propoziµie 2.1.5. Un sistem de ecuaµii algebrice de forma 2.1 are soluµii exactatunci când idealul generat de polinoamele care îl de�nesc este propriu (nu esteîntregul inel de polinoame în cele n variabile).

Altfel spus, un sistem algebric este incompatibil dac  ³i numai dac  bazaGröbner al idealului generat de polinoamele care de�nesc sistemul conµine poli-nomul constant 1.

Demonstraµie. Enunµul propoziµiei este doar a reformulare a teoremei luiHilbert a zerourilor în forma slab . Pentru cea de a doua variant , s  ob-serv m c  dac  un ideal al unui inel conµine elementul unitate, atunci conµineorice element, adic  coincide cu inelul, deci nu este ideal propriu (³i invers).

�tim a³adar s  decidem dac  un sistem de ecuaµii polinomial are sau nusoluµie. În cazul în care sistemul are soluµii, se pune problema dac  num rulacestora este �nit sau in�nit.

S  relu m în acest scop ideile din propoziµia 1.2.17 de la pagina 52 subforma unui enunµ care este practic o reformulare a acesteia.

Propoziµie 2.1.6. Fie I un ideal în k[x1, x2, . . . , xn], ³i �e o ordonare mono-mial  �xat  în acest inel. Atunci:

• Orice f ∈ k[x1, x2, . . . , xn] este congruent modulo I cu un unic polinomr, care este o combinaµie liniar  cu coe�cienµi numerici ai unor monoamedin complementara mulµimii < LT(I) >, adic  din mulµimea de monoame{xα |xα ∈< LT(I) >}.

• Elementele mulµimii {xα |xα ∈< LT(I) >} sunt liniar independente mod-ulo I, adic  din

∑α cαx

α = 0 mod I, rezult  cα = 0 pentru orice α.

Page 73: EDP 2010. ISBN 978-973-3-3370-7 Dáné Károly András Dan ...edituradp.ro/site_img/downloads/2013/04/interior-alg-comp-i.pdf · Se ³tie c , metoda lui Gauss de rezolvare a unui

2.1. SISTEME DE ECUA�II POLINOMIALE 73

Demonstraµie. Fie G baza Gröbner pentru I. Atunci existenµa ³i unicitatea luir este garantat  de propoziµia 1.2.17. Algoritmul de împ rµire a polinoamelorcu mai multe nedeterminate � vezi condiµia de terminare a algoritmului �asigur  faptul c  r este o combinaµie liniar  a doar monoame din mulµimea{xα |xα ∈< LT(I) >}.

Partea a doua este o consecinµ  a unicit µii restului tot de la propoziµia1.2.17.

A�rmaµiile conµinute în propoziµia precedent  pot � acum reinterpretate îninelul factor k[x1, x2, . . . , xn]/I. Prin urmare avem:

Corolar 2.1.7. Fie I ∈ k[x1, x2, . . . , xn] un ideal. Atunci inelul factork[x1, x2, . . . , xn]/I � ca spaµiu vectorial peste corpul k � este izomorf cu spaµiulvectorial generat de mulµimea de monoame {xα |xα ∈< LT(I) >}. În particu-lar clasa unui polinom f ∈ k[x1, x2, . . . , xn]/I este reprezentat în mod standardde restul (unic determinat) al împ rµirii lui f la baza Gröbner al lui I. Aceast reprezentare a claselor este compatibil  cu operaµiile de adunare ³i de înmulµirea polinoamelor.

Într-adev r, restul împ rµirii sumei este suma resturilor, iar restul împ rµiriiunui produs este produsul resturilor, mai precis restul împ rµirii acestui produs.

2.1.4 Sisteme cu un num r �nit de soluµii

Partea frumoas  a celor discutate mai sus este c  toate acestea pot � con-vertite u³or într-un criteriu algoritmic de a decide dac  un sistem de ecuaµiipolinomiale are un num r �nit de soluµii (vezi [12]).

Propoziµie 2.1.8. Fie V = V (I) o varietate a�n  în Cn. Fix m o ordonaremonomial  în C[x1, x2, . . . , xn]. Atunci urm toarele a�rmaµii sunt echivalente.

1. V este o mulµime �nit .

2. Pentru �ecare i, 1 ≤ i ≤ n, exist  un exponent mi ≥ 0, astfel ca xmii ∈<

LT(I) >.

3. Fie G o baz  Gröbner pentru I. Atunci pentru �ecare i, 1 ≤ i ≤ n, exist un mi ≥ 0, astfel ca xmi

i = LM(gi), pentru un element potrivit al bazeigi ∈ G.

4. C-spaµiul vectorial generat de de mulµimea de monoame {xα |xα ∈<LT(I) >} este �nit dimensional.

5. C-spaµiul vectorial C[x1, x2, . . . , xn]/I este �nit dimensional.

Page 74: EDP 2010. ISBN 978-973-3-3370-7 Dáné Károly András Dan ...edituradp.ro/site_img/downloads/2013/04/interior-alg-comp-i.pdf · Se ³tie c , metoda lui Gauss de rezolvare a unui

74 CAPITOLUL 2. REZOLVAREA SISTEMELOR DE ECUA�II

Demonstraµie. (1)⇒(2). Fie mai întâi V = ∅. Atunci 1 ∈ I (conform teo-remei lui Hilbert a zerourilor, forma slab ), ³i putem alege mi = 0 pentruorice 1 ≤ i ≤ n. Dac  îns  V este nevid, atunci pentru �ecare coordonat  iculegem numerele complexe (distincte) a1, a2, . . . , ak care apar ca ³i valori alecoordonatei i ale punctelor din V ³i construim polinomul de o variabil 

f(xi) =

k∏j=1

(xi − aj).

Prin construcµie, polinomul f se anuleaz  în punctele lui V , deci f ∈ I(V ). Pebaza teoremei lui Hilbert a zerourilor exist  deci m ≥ 1 astfel ca fm ∈ I. Daraceasta ne arat  imediat c  termenul principal al lui fm � o putere a lui xi �este în < LT(I) >.

(2)⇒(3). Fie mi ≥ 0, astfel ca xmii ∈< LT(I) >. Dac  G este o baz 

Gröbner pentru I, atunci < LT(I) >=< LT(g) | g ∈ G >. Rezult  c  exist un polinom gi ∈ G astfel ca LT(gi) s  divid  xmi

i , deci LT(gi) este o putere alui xi.

(3)⇒(2). Aceasta rezult  din de�niµia lui LT(G).(2)⇒(4). Dac  o putere mi a �ec rei necunoscute xi este în < LT(I) >,

atunci monoamele din complementul lui< LT(I) > au exponentul lui xi limitatde mi, deci num rul total al acestora este m rginit de m1 ·m2 · . . . ·mn.

(4)⇒(5). Este a�rmaµia corolarului 2.1.7 de la pagina 73.(5)⇒(1). Pentru a ar ta c  V este o mulµime �nit , este su�cient s  ar t m

c  proiecµia ei pe �ecare ax  de coordonat  este �nit . Fix m deci un indicei, ³i consider m clasa de echivalenµ  [xji ] în C[x1, x2, . . . , xn]/I, pentru toatevalorile naturale ale exponentului. Deoarece C[x1, x2, . . . , xn]/I este �nit di-mensional, aceste clase de echivalenµ  sunt liniar dependente, deci exist  orelaµie de forma

m∑j=0

cj [xji ] = [

m∑j=0

cjxji ] = [0],

unde nu toµi coe�cienµii sunt nuli. Aceast  egalitate înseamn  c ∑m

j=0 cjxji ∈

I. Un polinom de grad m are cel mult m r d cini distincte în C, deci avemun num r �nit de valori ale coordonatei în direcµia i.

Putem caracteriza acum sistemele de ecuaµii cu un num r �nit de soluµii.

Teorem  2.1.9. Fie I un idealul generat în C[x1, x2, . . . , xn] de polinoamelecare de�nesc sistemul de ecuaµii 2.1. Fie G o baz  Gröbner pentru I. Sistemulde ecuaµii are un num r �nit de soluµii exact atunci când pentru �ecare i exist un mi mi ≥ 0, astfel ca xmi

i = LM(gi), pentru un polinom gi ∈ G al bazei.

Page 75: EDP 2010. ISBN 978-973-3-3370-7 Dáné Károly András Dan ...edituradp.ro/site_img/downloads/2013/04/interior-alg-comp-i.pdf · Se ³tie c , metoda lui Gauss de rezolvare a unui

2.2. APLICA�II � EXEMPLE IN SINGULAR 75

Demonstraµie. Rezult  direct din punctul (3) al propoziµiei anterioare 2.1.8.

Se vede în plus, c  o margine superioar  a num rului de soluµii a sistemuluide ecuaµii, este dat de produsul acestor exponenµi. Menµion m c  egalitate areloc dac  idealul I este ideal radical, adic  I =

√I.

2.2 Aplicaµii � Exemple in Singular

P rezent m în aceast  secµiune un num r mai mare de exemple.Toate acestea utilizeaz  mediul de programare oferit de Singular ³i ape-

leaz  algoritmul bazei Gröbner . Vom da atât programul scris în Singular, cât³i rezultatul rul rii acestuia.

2.2.1 Sisteme de ecuaµii liniare

D m aici câteva exemple de sisteme liniare, care ilustreaz  toate tipurile �compatibil determinat/nedeterminat, respectiv incompatibil � al acestor sis-teme.

Sistem de ecuaµii, 3 necunoscute, gradul 1, compatibil determinat

//// Sistem de ecuaµii 3 necunoscute, gradul 1, coeficienti in Q//// are un num r finit de soluµii//ring R = 0,(x,y,z),lp;ideal I = 2x+y-2z+2,x-3y-2z-25,x-y+z-4;ideal J = groebner(I);J;

// scriere intr-un fisier, codificare LaTeXLIB "latex.lib";string file = "file.tex";int TeXwidth = 0;opentex(file);texobj(file,I);texobj(file,J);closetex(file);

Page 76: EDP 2010. ISBN 978-973-3-3370-7 Dáné Károly András Dan ...edituradp.ro/site_img/downloads/2013/04/interior-alg-comp-i.pdf · Se ³tie c , metoda lui Gauss de rezolvare a unui

76 CAPITOLUL 2. REZOLVAREA SISTEMELOR DE ECUA�II

// rezolvarea efectiva a sistemuluioption(redSB);simplify(std(I),1);

// pregatire pentru un alt sistemkill R;

Sistemul de ecuaµii iniµial:2x + y − z = −1x − 3y − 2z = −6x − y + z = 2

Sistemul de ecuaµii echivalent, care se poate rezolva, având forma "triunghi-ular " (descris de idealul J):

z = 22y + 3z = 8

x − y + z = 2

Soluµia sistemului este: x = 1y = 1z = 2

Sistem de ecuaµii, 3 necunoscute, gradul 1, incompatibil

//// Sistem de ecuaµii, 3 necunoscute, gradul 1, coeficienti in Q// baza Gröbner este 1,// nu are soluµii//ring R = 0,(x,y,z),lp;ideal I = 2x+y-2z+2,x-y-z-2,x+2y-z-5;groebner(I);

Sistemul de ecuaµii iniµial:2x + y − 2z = −2x − y − z = 2x + 2y − z = 5

Baza Gröbner este 1. Prin urmare sistemul este incompatibil.

Page 77: EDP 2010. ISBN 978-973-3-3370-7 Dáné Károly András Dan ...edituradp.ro/site_img/downloads/2013/04/interior-alg-comp-i.pdf · Se ³tie c , metoda lui Gauss de rezolvare a unui

2.2. APLICA�II � EXEMPLE IN SINGULAR 77

Sistem de ecuaµii, 3 necunoscute, gradul 1, compatibil, nedeterminat

//// Sistem de ecuaµii, 3 necunoscute, gradul 1, coeficienti in Q//// are o infinitate de soluµii, nedeterminat, z parametru//ring R = 0,(x,y,z),lp;ideal I = 2x+y+2z+2,x-3y+2z-5,3x-2y+4z-3;groebner(I);option(redSB);simplify(std(I),1);

Sistemul de ecuaµii iniµial:2x + y + 2z = −2x − 3y + 2z = 53x − 2y + 4z = 3

Sistemul de ecuaµii echivalent, de forma "triunghiular ":{7y − 2z = −12

3x − 2y + 4z = 3

Sistemul este nedeterminat, z este parametru. Soluµia este:x = −8/7α− 1/7y = 2/7α+ 12/7z = α

Sistem de ecuaµii, 3 necunoscute, gradul 1, cu 1 parametru

//// Sistem de ecuaµii, 3 necunoscute, gradul 1, 1 parametru// coeficienti in Q(a)//// are un num r finit de soluµii//ring R = (0,a),(x,y,z),lp;ideal I = 2x+ay-2z+a2,ax-3y-2z-25a,x-y+az-4a+1;groebner(I);option(redSB);simplify(std(I),1);

Page 78: EDP 2010. ISBN 978-973-3-3370-7 Dáné Károly András Dan ...edituradp.ro/site_img/downloads/2013/04/interior-alg-comp-i.pdf · Se ³tie c , metoda lui Gauss de rezolvare a unui

78 CAPITOLUL 2. REZOLVAREA SISTEMELOR DE ECUA�II

Sistemul de ecuaµii iniµial, parametric:2x + ay − 2z = −a2

ax + y − 2z = 2ax − y + az = 4a− 1

Sistemul de ecuaµii echivalent:(a3 − 2a+ 2)z + (−3a3 + 4a2 + 12a− 2) = 0(a3 − 2a+ 2)y + (a4 − 2a2 + 22a− 4) = 0(a3 − 2a+ 2)x+ (−3a3 − 6a2 + 14a− 2) = 0

Soluµia sistemului se obµine prin împ rµirea cu coe�cientul necunoscutelor.

Sistem de ecuaµii, 3 necunoscute, gradul 1, 2 parametrii

//// Sistem de ecuaµii, 3 necunoscute, gradul 1, coeficienti in Z_11//ring R = 11,(x,y,z),lp;ideal I = 5x+y-2z+2,x-3y-2z-1,x-y+7z-4;groebner(I);

Sistemul de ecuaµii iniµial, cu 2 parametrii:5x + y − 2z = −2x − 3y − 2z = 1x − y + 7z = 4

Sistemul de ecuaµii echivalent:z = 1y = −3x = 5

2.2.2 Sisteme de ecuaµii neliniare

Sistem de ecuaµii, 2 necunoscute, gradul 2

//// Sistem de ecuaµii, 2 necunoscute, gradul 2, coeficienti in Q// aducere la forma triunghiulara// are soluµie//ring R = 0,(x,y),lp;

Page 79: EDP 2010. ISBN 978-973-3-3370-7 Dáné Károly András Dan ...edituradp.ro/site_img/downloads/2013/04/interior-alg-comp-i.pdf · Se ³tie c , metoda lui Gauss de rezolvare a unui

2.2. APLICA�II � EXEMPLE IN SINGULAR 79

ideal I = xy-x-y-22,x2+y2+3x+3y-88;groebner(I);

Sistemul de ecuaµii iniµial:

{xy − x− y = 22x2 + 3x+ y2 + 3y = 88

Sistemul de ecuaµii echivalent, de forma "triunghiular ":

{y4 + y3 − 89y2 + 286y + 330 = 023x+ y3 + 2y2 − 87y + 176 = 0

Sistem de ecuaµii, 3 necunoscute, gradul 2

//// Sistem de ecuaµii 3 necunoscute, gradul 2// aducere la forma triunghiular //// termenii principali ai bazei Gröbner nu conµin toate// necunoscutele la câte o putere convenabil , prin urmare// sistemul are o infinitate de soluµii//ring R = 0,(x,y,z),lp;ideal I = xz+xy-x+z2-2,xy2+2xz-3x+y+z-1,2z2+zy2-3z+2zy+y3-3y;groebner(I);

Sistemul de ecuaµii dat:

xy + xz − x+ z2 = 2xy2 + 2xz − 3x+ y + z = 1y3 + y2z + 2yz − 3y + 2z2 − 3z = 0

Sistemul de ecuaµii echivalent, având forma "triunghiular ":

z6 + 2z5 − 7z4 − 8z3 + 15z2 + 8z − 10 = 0y + z4 + 2z3 − 5z2 − 3z + 5 = 0xz2 − 2x− yz2 + 3y + z3 − z2 − z + 1 = 0

sistemul are o in�nitate de soluµii.

Page 80: EDP 2010. ISBN 978-973-3-3370-7 Dáné Károly András Dan ...edituradp.ro/site_img/downloads/2013/04/interior-alg-comp-i.pdf · Se ³tie c , metoda lui Gauss de rezolvare a unui

80 CAPITOLUL 2. REZOLVAREA SISTEMELOR DE ECUA�II

Sistem de ecuaµii, 2 necunoscute, gradul 2, cu 1 parametru

//// Sistem de ecuaµii 2 necunoscute, gradul 2, 1 parametru// coeficienti in Q(a)// aducere la forma triunghiular //ring R = (0,a),(x,y),lp;ideal I = a+axy-x+y,2+x+y+xy;groebner(I);

Sistemul de ecuaµii iniµial, parametric:

{axy − x+ y = −axy + x+ y = −2

Sistemul de ecuaµii echivalent, de forma "triunghiular ":

{(a− 1)y2 + (a− 2)y − (a+ 2) = 0−(a+ 1)x− (a− 1)y − a = 0

Sistem de ecuaµii, 3 necunoscute, gradul 2, incompatibil

//// Sistem de ecuaµii 3 necunoscute, gradul 2, coeficienti in Q// Dac  baza Gröbner este 1, atunci ³i numai atunci// sistemul de ecuaµii nu are soluµii// nu are soluµii//ring R = 0,(x,y,z),lp;ideal I = x2y+4y2-17,2xy-3y2+8,xy2-5xy+1;groebner(I);

Sistemul de ecuaµii dat:

x2y + 4y2 = 172xy − 3y2 = −8xy2 − 5xy = −1

Baza Gröbner este 1, deci sistemul nu are soluµie.

Page 81: EDP 2010. ISBN 978-973-3-3370-7 Dáné Károly András Dan ...edituradp.ro/site_img/downloads/2013/04/interior-alg-comp-i.pdf · Se ³tie c , metoda lui Gauss de rezolvare a unui

2.2. APLICA�II � EXEMPLE IN SINGULAR 81

Sistem de ecuaµii, 3 necunoscute, gradul 2, num r �nit de soluµii

//// Sistem de ecuaµii, 3 necunoscute, gradul 2, coeficienti in Q//// termenii principali ai bazei Gröbner conµin toate necunoscutele// la câte o putere convenabil ...// sistemul are un num r finit de soluµii//ring R = 0,(x,y,z),lp;ideal I = 2xy+yz-27,3yz-2xz-25,xz-xy-4;groebner(I);

Sistemul de ecuaµii iniµial:2xy + yz = 27−2xz + 3yz = 25−xy + xz = 4

Sistemul de ecuaµii echivalent, de form  "triunghiular ":z2 − 25 = 05y − 3z = 030x− 3y2z + 25y = 0

Sistemul are un num r �nit (dou ) soluµii (2 < 3× 2× 3).

Sistem de ecuaµii, 3 necunoscute, gradul 3

//// Sistem de ecuaµii, 3 necunoscute, gradul 3, coeficienti in Q//// are un num r finit de soluµii//ring R = 0,(x,y,z),lp;ideal I = 2x2+xy2-2z+2,x3-3zy-2z-25+z,x3-y3+xz-4;groebner(I);

Sistemul de ecuaµii dat:2x2 + xy2 − 2z + 2 = 0x3 − 3yz − z − 25 = 0x3 + xz − y3 − 4 = 0

Sistemul de ecuaµii echivalent:

Page 82: EDP 2010. ISBN 978-973-3-3370-7 Dáné Károly András Dan ...edituradp.ro/site_img/downloads/2013/04/interior-alg-comp-i.pdf · Se ³tie c , metoda lui Gauss de rezolvare a unui

82 CAPITOLUL 2. REZOLVAREA SISTEMELOR DE ECUA�II

486z13 + 840294z12 + 2179519z11 − 18625847z10−−66952171z9 − 7843427z8 + 864097117z7 + 8298367485z6+

+25162261044z5 − 22542925824z4 − 487702971614z3−−723757819752z2 + 2144327757537z + 4109489307937 = 0

77868818920376452884002811866907927673441157293810718339707101119008169629924900821074y−

−316596417365893513431871954655956175686913855729382559718764947097089412685574z12−

−546866011870061631830086149553761652704609914070317456131250225276053752487210842z11−

−506265571539125034328107265791380861696769344759638472523854301571083149345549117z10+

+12035253269677046587539530663243242579900239127645919306621852750963467045157880067z9+

+21836099404337043463298656198062721725265110037556553500984050074577338350969027336z8−

−15976435100265801555591297364861581681284875131652370380435238355883589904576870620z7−

−491858694157017886759882740856242150024435214828609356548339447678061044391805476356z6−

−4547731012299438430399486296727284507537002149137493051746934356874890912603084713661z5−

−9327763490789532911836051672446234989487360511203537630956287478096418183048087158993z4+

+22074279066510888443725021661194684080526833593253821243194012994480276581591309059380z3+

+256557590565714416943576658869393209368803656394454537686316620821332822604623919532697z2+

+30241778865372650692751774511807740516361159056991713443488775463490120854023159339556z−

−1116574640642650517254952303223042003058428039235345713199512234484182234329397469281893 = 0

154238x− 2440y6 + 4782y5 + 3477y4z + 21090y4−−1730y3z + 37457y3 + 366y2z2 − 72397y2z − 4891y2−

−272yz2 − 115170yz − 457590y − 8714z2 − 64132z − 691370 = 0

Sistemul are un num r �nit (mai exact 13) soluµii (13 < 3× 3× 3).

Page 83: EDP 2010. ISBN 978-973-3-3370-7 Dáné Károly András Dan ...edituradp.ro/site_img/downloads/2013/04/interior-alg-comp-i.pdf · Se ³tie c , metoda lui Gauss de rezolvare a unui

2.2. APLICA�II � EXEMPLE IN SINGULAR 83

Sistem de ecuaµii, 3 necunoscute, gradul 3

//// Sistem de ecuaµii 3 necunoscute, gradul 3, coeficienti in Q//// are un num r finit de soluµii//// 27 soluµii//ring R = 0,(x,y,z),lp;ideal I = x3-y3-z2+1,y3-z3-2,z3-x3+x2y-5;groebner(I);

Sistemul de ecuaµii iniµial:x3 − y3 − z2 = −1

y3 − z3 = 2−x3 + x2y + z3 = 5

Sistemul de ecuaµii echivalent, de forma "triunghiular ":

z9 + 2z8 + z7 + 3z6 + 6z5 − 16z4 + 5z3 − 104z2 = 214

y3 − z3 = 226510x− 9y4z5 − 122y4z4 − 50y4z3 + 818y4z2+

+51y4z − 3778y4 − 9yz7 − 131yz6 − 154yz5 + 886yz4−−532yz3 − 4031yz2 + 219yz + 7168y = 0

În �ne, sistemul are num rul cel mai mare posibil de soluµii, 27 = 3×3×3.

Sistem de ecuaµii, 3 necunoscute, gradul 4

//// Sistem de ecuaµii 3 necunoscute, gradul 4//// are un num r finit de soluµii//// difer  doar un singur termen fata de exemplul precedent//ring R = 0,(x,y,z),lp;ideal I = x3-y3-z2+1,y4-z3-2,z3-x3+x2y-5;groebner(I);

Page 84: EDP 2010. ISBN 978-973-3-3370-7 Dáné Károly András Dan ...edituradp.ro/site_img/downloads/2013/04/interior-alg-comp-i.pdf · Se ³tie c , metoda lui Gauss de rezolvare a unui

84 CAPITOLUL 2. REZOLVAREA SISTEMELOR DE ECUA�II

Sistemul de ecuaµii dat:

x3 − y3 − z2 = −1

y4 − z3 = 2−x3 + x2y + z3 = 5

Sistemul echivalent este:

z36 − 12z35 + 66z34 − 259z33 + 999z32 − 3488z31++9987z30 − 26924z29 + 71037z28 − 164116z27 + 359443z26−

−780638z25 + 1522005z24 − 2868548z23 + 5334964z22−−9004370z21 + 14960556z20 − 24199784z19 + 35734788z18−

−52610260z17 + 74313032z16 − 95421684z15 + 124149152z14−−153093600z13 + 166826600z12 − 193202392z11++205778048z10 − 183765969z9 + 197770992z8−−170755968z7 + 123037466z6 − 137062368z5+

+73700992z4 − 49132044z3 + 65651520z2 + 30689784 = 0

54175812527227677578937850059775495948584375611905207387944543099287040000y−

−38040725900610625515711522654817823865797278257309017260913123255939z35+

+490198400501144742354695108750377701491564890301772523468574460255845z34−

−2910942286049931696213517023987261719649727091767734546848226339326909z33+

+11894109713643975734705869323519740312667694310575376779427135535697288z32−

−44776611822160692360844844939628485898829142555306938628944226550656845z31+

+155481032106091955235618175888045998356975249687775422634405962696466767z30−

−453925669452102709794358138333732483280913563754486955176336819707784974z29+

+1199154705455785651931907656116527787425036735498124374853234801665372318z28−

−3060965035284861979556205845465449619177060505747972131636339074865585217z27+

Page 85: EDP 2010. ISBN 978-973-3-3370-7 Dáné Károly András Dan ...edituradp.ro/site_img/downloads/2013/04/interior-alg-comp-i.pdf · Se ³tie c , metoda lui Gauss de rezolvare a unui

2.2. APLICA�II � EXEMPLE IN SINGULAR 85

+7061417681628377658868907249732071693114423499847330734744479426938761255z26−

−15081300421293293069446704551618037480042215193220677488620802875205959942z25+

+31422540745976920810116047111391970108142595134265674320061835871812036188z24−

−60522153066189393243649271868901757915549540470011983282747242353580588979z23+

+110164401681394388896911248883884296975432656308392873955296908293520677469z22−

−196054373944301284242043010489125964899733600938851600354007242789634115963z21+

+324535592506944280136405443212958710199613453549327322753893192609477691039z20−

−514245835856854922228146149985885797367655445996926529523751328479118237561z19+

+793693832095180314625421525269560263653275970371691784743928623618909791499z18−

−1136371513113947114599155747871740781392561631343844084708931468958221009189z17+

+1567780156213778817820948407410934251220481285449339713493801987059899410867z16−

−2098511191135196330288654057773142737941510478411959109990677659894275330729z15+

+2566292793749237251927076900165048757754414933382597382131543433641385881023z14−

−3043565675070583019766542664640203279167238360158696282168131798217396619317z13+

+3524657612232504892799269211975458812200031801318093855638821081195101975431z12−

−3588890760534762872669581142459364247809381102128601393425703381436599648933z11+

+3638674763244057274532276604955506031985670425970582777868195266618253468607z10−

−3653449422196564336096487819114681530704444573911469343775803672178271701973z9+

+2953394391326199874505721890458993339373026194836154089366418183800006905530z8−

Page 86: EDP 2010. ISBN 978-973-3-3370-7 Dáné Károly András Dan ...edituradp.ro/site_img/downloads/2013/04/interior-alg-comp-i.pdf · Se ³tie c , metoda lui Gauss de rezolvare a unui

86 CAPITOLUL 2. REZOLVAREA SISTEMELOR DE ECUA�II

−2695337429691567543509627563039813196876826367114242860078910200928419409678z7+

+2310741356479626245316910394232130063681648949199517700353367450118256943706z6−

−1227566154947272957135733717442594055391938438093570514249623863941654919532z5+

+1258261769574668095200338346351073718210631082130150274552967957610159749828z4−

−792393052250852353861702261514644310895862492263359648244917536941034339692z3+

+206420917632076173539312189584954666865392013564015533912916656529156102472z2−

−545032840828031924370745138552277174455467026003060892852426931006456412376z−

−47757519436113782469341353363503277170890921231329052188185989675769736632 = 0

62991746510x+ 15680280y7z4 − 15384600y7z3++228629170y7z2 − 751931950y7z − 148004780y7−−54880980y6z5 − 28475370y6z4 − 952677110y6z3+

+1255557380y6z2 + 333425400y6z + 4144133840y6++8084508y5z6 + 184487376y5z5 − 50366107y5z4−

−7779821886y5z3 + 2109920478y5z2 − 862842666y5z++27763204727y5 − 31360560y4z7 + 81363558y4z6−

−1072320383y4z5 + 1684477410y4z4 + 3136861377y4z3++3398577110y4z2 − 4970014728y4z − 18905747224y4++109761960y3z8 − 131212620y3z7 + 1799884240y3z6−

−6149990770y3z5 + 3373349980y3z4 − 13439494530y3z3++23467200680y3z2 − 639717540y3z + 25160812600y3−

−4042254y2z9 − 113620797y2z8 + 107139602y2z7++3297002108y2z6 − 6747256212y2z5 + 2933764325y2z4−

−26334378960y2z3 + 22610651624y2z2 − 1070851684y2z++55112549848y2 + 15680280yz10 − 58383186yz9 + 490325587yz8−

−1805926200yz7 + 272802136yz6 + 683921420yz5++8931171310yz4 + 3761772605yz3 − 12212905339yz2−

−9866757747yz − 16027982146y − 54880980z11 + 120487290z10−−985148780z9 + 4192131790z8 − 5317148760z7 + 12605234180z6−

−30092670300z5 + 19097764840z4 − 40862175200z3++56844430720z2 − 544519360z + 52097682560 = 0

Page 87: EDP 2010. ISBN 978-973-3-3370-7 Dáné Károly András Dan ...edituradp.ro/site_img/downloads/2013/04/interior-alg-comp-i.pdf · Se ³tie c , metoda lui Gauss de rezolvare a unui

2.2. APLICA�II � EXEMPLE IN SINGULAR 87

Sistem de ecuaµii omogen, 2 necunoscute, gradul 2, parametric

//// Sistem de ecuaµii 2 necunoscute, gradul 2, polinom omogen,// 8 parametrii// are soluµie, 4 soluµii în general// se va rezolva o ecuaµie de gradul 4 bicuadratic //ring R = (0,a,b,c,d,e,f,g,h),(x,y),lp;ideal I = ax2+2bxy+cy2-d,ex2+2fxy+gy2-h;groebner(I);

Sistemul de ecuaµii iniµial, omogen general de gradul 2:{ax2 + 2bxy + cy2 = dex2 + 2fxy + gy2 = h

Sistemul echivalent este:

(a2g2 − 4abfg − 2aceg + 4acf2 + 4b2eg − 4bcef + c2e2)y4−−(2a2gh− 4abfh− 2aceh− 2adeg + 4adf2 + 4b2eh− 4bdef + 2cde2)y2+

+(a2h2 + 2adeh− d2e2) = 0

(2a2fh− 2abeh− 2adef + 2bde2)x++(a2g2 − 4abfg − 2aceg + 4acf2 + 4b2eg − 4bcef + c2e2)y3−

−(a2gh− 4abfh− aceh− adeg + 4adf2 + 4b2eh− 4bdef + cde2)y = 0

Sistem de ecuaµii omogen, 2 necunoscute, gradul 3, parametric

//// Sistem de ecuaµii 2 necunoscute, gradul 3, polinom omogen,// 10 parametrii// are soluµie, în general 9 soluµii//ring R = (0,a,b,c,d,e,f,g,h,k,l),(x,y),lp;ideal I = ax3+bx2y+cxy2+dy3-e,fx3+gx2y+hxy2+ky3-l;groebner(I);

Sistemul de ecuaµii iniµial, general, omogen de gradul 3:{ax3 + bx2y + cxy2 + dy3 = efx3 + gx2y + hxy2 + ky3 = l

Sistemul de ecuaµii echivalent este:

Page 88: EDP 2010. ISBN 978-973-3-3370-7 Dáné Károly András Dan ...edituradp.ro/site_img/downloads/2013/04/interior-alg-comp-i.pdf · Se ³tie c , metoda lui Gauss de rezolvare a unui

88 CAPITOLUL 2. REZOLVAREA SISTEMELOR DE ECUA�II

−(a3k3 − a2bhk2 − 2a2cgk2 + a2ch2k− 3a2dfk2 +3a2dghk− a2dh3 + ab2gk2 +3abcfk2−abcghk−abdfhk−2abdg2k+abdgh2−2ac2fhk+ac2g2k+acdfgk+2acdfh2 − acdg2h+3ad2f2k− 3ad2fgh+ ad2g3 − b3fk2 + b2cfhk+2b2dfgk−b2dfh2 − bc2fgk − 3bcdf2k + bcdfgh + 2bd2f2h − bd2fg2 + c3f2k − c2df2h +cd2f2g − d3f3)y9 ++(3a3k2l−2a2bhkl−4a2cgkl+a2ch2l−6a2dfkl+3a2dghl−3a2efk2+3a2eghk−a2eh3 + 2ab2gkl+ 6abcfkl− abcghl− abdfhl− 2abdg2l− abefhk − 2abeg2k +abegh2 − 2ac2fhl+ ac2g2l+ acdfgl+ acefgk+ 2acefh2 − aceg2h+ 3ad2f2l+6adef2k−6adefgh+2adeg3−2b3fkl+ b2cfhl+2b2dfgl+2b2efgk− b2efh2−bc2fgl − 3bcdf2l − 3bcef2k + bcefgh+ 4bdef2h− 2bdefg2 + c3f2l − c2ef2h+2cdef2g − 3d2ef3)y6 −−(3a3kl2−a2bhl2−2a2cgl2−3a2dfl2−6a2efkl+3a2eghl+ab2gl2+3abcfl2−abefhl − 2abeg2l + acefgl + 6adef2l + 3ae2f2k − 3ae2fgh + ae2g3 − b3fl2 +2b2efgl − 3bcef2l + 2be2f2h− be2fg2 + ce2f2g − 3de2f3)y3 ++(a3l3 + 3a2efl2 − 3ae2f2l + e3f3) = 0

−(a5h3l2−2a4bgh2l2−3a4cfh2l2+a4cg2hl2+a4dg3l2−2a4efh3l−a4eg3kl+a4eg2h2l + 2a3b2fh2l2 + a3b2g2hl2 + 2a3bcfghl2 − a3bcg3l2 − 3a3bdfg2l2 +3a3befg2kl+ 2a3befgh2l− a3beg3hl+ 3a3c2f2hl2 − a3c2fg2l2 + 6a3cef2h2l−4a3cefg2hl + a3ceg4l − a3defg3l + a3e2f2h3 + a3e2fg3k − a3e2fg2h2 −2a2b3fghl2 − 3a2b2cf2hl2 + 2a2b2cfg2l2 + 3a2b2df2gl2 − 3a2b2ef2gkl −3a2b2ef2h2l+a2b2efg2hl−a2bcefg3l+3a2bdef2g2l−3a2be2f2g2k+a2be2fg3h−a2c3f3l2− 6a2c2ef3hl+3a2c2ef2g2l− 3a2ce2f3h2+3a2ce2f2g2h−a2ce2fg4+ab4f2hl2−ab3cf2gl2−ab3df3l2+ab3ef3kl+ab3ef2ghl+ab2c2f3l2+4ab2cef3hl−ab2cef2g2l−3ab2def3gl+3ab2e2f3gk+ab2e2f3h2−2ab2e2f2g2h−2abc2ef3gl−2abce2f3gh + 2abce2f2g3 + 2ac3ef4l + 3ac2e2f4h − 2ac2e2f3g2 − b4ef3hl +b3cef3gl+ b3def4l− b3e2f4k + b3e2f3gh− b2c2ef4l− b2ce2f4h− b2ce2f3g2 +2bc2e2f4g − c3e2f5)x−−(a5gk4 − a5h2k3 − a4bfk4 + a4bh3k2 + 2a4cfhk3 − 3a4cg2k3 + 3a4cgh2k2 −a4ch4k − 4a4dfgk3 + 3a4dfh2k2 + 3a4dg2hk2 − 4a4dgh3k + a4dh5 +a3b2g2k3 − 2a3b2gh2k2 +6a3bcfgk3 − 6a3bcfh2k2 − 2a3bcg2hk2 +2a3bcgh3k+4a3bdf2k3 − 6a3bdfghk2 + 2a3bdfh3k − 2a3bdg3k2 + 6a3bdg2h2k − 2a3bdgh4 −a3c2f2k3− 6a3c2fghk2+4a3c2fh3k+3a3c2g3k2− 2a3c2g2h2k− 6a3cdf2hk2+6a3cdfg2k2+6a3cdfgh2k− 4a3cdfh4− 4a3cdg3hk+2a3cdg2h3+6a3d2f2gk2−3a3d2f2h2k − 6a3d2fg2hk + 4a3d2fgh3 + a3d2g4k − a3d2g3h2 − 2a2b3fgk3 +2a2b3fh2k2+a2b3g2hk2−3a2b2cf2k3+8a2b2cfghk2−2a2b2cfh3k−a2b2cg3k2−a2b2cg2h2k + 3a2b2df2hk2 + 3a2b2dfg2k2 − 8a2b2dfgh2k + 2a2b2dfh4 −2a2b2dg3hk + a2b2dg2h3 + 9a2bc2f2hk2 − 7a2bc2fg2k2 − 2a2bc2fgh2k +2a2bc2g3hk − 12a2bcdf2gk2 + 4a2bcdfg2hk + 2a2bcdfgh3 + 2a2bcdg4k −2a2bcdg3h2 − 6a2bd2f3k2 + 12a2bd2f2ghk − 3a2bd2f2h3 − 3a2bd2fg2h2 +a2bd2g4h+ 3a2c3f2gk2 − 6a2c3f2h2k + 4a2c3fg2hk − a2c3g4k + 3a2c2df3k2 +

Page 89: EDP 2010. ISBN 978-973-3-3370-7 Dáné Károly András Dan ...edituradp.ro/site_img/downloads/2013/04/interior-alg-comp-i.pdf · Se ³tie c , metoda lui Gauss de rezolvare a unui

2.2. APLICA�II � EXEMPLE IN SINGULAR 89

6a2c2df2h3−2a2c2dfg3k−4a2c2dfg2h2+a2c2dg4h+6a2cd2f3hk−3a2cd2f2g2k−9a2cd2f2gh2 +6a2cd2fg3h− a2cd2g5 − 4a2d3f3gk+ a2d3f3h2 +3a2d3f2g2h−a2d3fg4 + ab4f2k3 − 2ab4fghk2 − 6ab3cf2hk2 + 2ab3cfg2k2 + 2ab3cfgh2k +2ab3df2h2k + 4ab3dfg2hk − 2ab3dfgh3 + 3ab2c2f2gk2 + 4ab2c2f2h2k −4ab2c2fg2hk + 6ab2cdf3k2 − 4ab2cdf2ghk − 4ab2cdf2h3 − 4ab2cdfg3k +4ab2cdfg2h2 − 6ab2d2f3hk − 3ab2d2f2g2k + 7ab2d2f2gh2 − 2ab2d2fg3h −4abc3f3k2−2abc3f2ghk+2abc3fg3k−6abc2df3hk+8abc2df2g2k+2abc2df2gh2−2abc2dfg3h+6abcd2f3gk+6abcd2f3h2−8abcd2f2g2h+2abcd2fg4+4abd3f4k−6abd3f3gh + 2abd3f2g3 + 4ac4f3hk − 2ac4f2g2k − 2ac3df3gk − 4ac3df3h2 +2ac3df2g2h − 3ac2d2f4k + 6ac2d2f3gh − 2ac2d2f2g3 − 2acd3f4h + ad4f4g +b5f2hk2 − b4cf2gk2 − b4cf2h2k− b4df3k2 − 2b4df2ghk+ b4df2h3 + b3c2f3k2 +2b3c2f2ghk+4b3cdf3hk+2b3cdf2g2k− 2b3cdf2gh2+2b3d2f3gk− 3b3d2f3h2+b3d2f2g2h− 2b2c3f3hk− b2c3f2g2k− 6b2c2df3gk+ 2b2c2df3h2 + b2c2df2g2h−3b2cd2f4k + 2b2cd2f3gh − b2cd2f2g3 + 3b2d3f4h − b2d3f3g2 + 2bc4f3gk +4bc3df4k − 2bc3df3gh − 3bc2d2f4h + 2bc2d2f3g2 − bd4f5 − c5f4k + c4df4h −c3d2f4g + c2d3f5)y7 ++(2a5gk3l − 3a5h2k2l − 2a4bfk3l + 2a4bghk2l + 2a4bh3kl + 6a4cfhk2l −5a4cg2k2l+4a4cgh2kl−a4ch4l−6a4dfgk2l+6a4dfh2kl−2a4dgh3l−2a4efgk3+3a4efh2k2 + 3a4eg2hk2 − 4a4egh3k + a4eh5 − 2a3b2fhk2l + a3b2g2k2l −4a3b2gh2kl+8a3bcfgk2l−10a3bcfh2kl−2a3bcg2hkl+2a3bcgh3l+6a3bdf2k2l−4a3bdfghkl+4a3bdg2h2l+2a3bef2k3−8a3befghk2+2a3befh3k−2a3beg3k2+6a3beg2h2k − 2a3begh4 − 3a3c2f2k2l − 8a3c2fghkl + 4a3c2fh3l + 4a3c2g3kl −2a3c2g2h2l−12a3cdf2hkl+10a3cdfg2kl+2a3cdfgh2l−2a3cdg3hl−6a3cef2hk2+2a3cefg2k2+8a3cefgh2k−4a3cefh4−4a3ceg3hk+2a3ceg2h3+6a3d2f2gkl−3a3d2f2h2l−a3d2g4l+6a3def2gk2−6a3def2h2k−6a3defg2hk+6a3defgh3+2a3deg4k−2a3deg3h2−2a2b3fgk2l+4a2b3fh2kl+2a2b3g2hkl−3a2b2cf2k2l+12a2b2cfghkl − 2a2b2cfh3l − 2a2b2cg3kl − a2b2cg2h2l + 4a2b2df2hkl −2a2b2dfg2kl − 4a2b2dfgh2l − 2a2b2dg3hl + 5a2b2ef2hk2 + 5a2b2efg2k2 −8a2b2efgh2k + 2a2b2efh4 − 2a2b2eg3hk + a2b2eg2h3 + 14a2bc2f2hkl −10a2bc2fg2kl − 2a2bc2fgh2l + 2a2bc2g3hl − 16a2bcdf2gkl + 4a2bcdf2h2l +2a2bcdg4l − 2a2bcef2gk2 − 2a2bcef2h2k + 2a2bcefg2hk + 2a2bcefgh3 +2a2bceg4k−2a2bceg3h2−6a2bd2f3kl+2a2bd2f2ghl+4a2bd2fg3l−6a2bdef3k2+16a2bdef2ghk − 4a2bdef2h3 − 4a2bdefg3k − 4a2bdefg2h2 + 2a2bdeg4h +4a2c3f2gkl− 6a2c3f2h2l+ 4a2c3fg2hl− a2c3g4l+ 6a2c2df3kl+2a2c2df2ghl−2a2c2dfg3l+3a2c2ef3k2−4a2c2ef2ghk+6a2c2ef2h3−4a2c2efg2h2+a2c2eg4h+6a2cd2f3hl − 5a2cd2f2g2l + 12a2cdef3hk − 4a2cdef2g2k − 14a2cdef2gh2 +10a2cdefg3h−2a2cdeg5−2a2d3f3gl−6a2d2ef3gk+3a2d2ef3h2+3a2d2ef2g2h−a2d2efg4 + ab4f2k2l− 4ab4fghkl− 10ab3cf2hkl+ 4ab3cfg2kl+ 2ab3cfgh2l+4ab3df2gkl+4ab3dfg2hl−4ab3ef2gk2+2ab3ef2h2k+4ab3efg2hk−2ab3efgh3+4ab2c2f2gkl + 4ab2c2f2h2l − 4ab2c2fg2hl + 6ab2cdf3kl − 2ab2cdf2ghl −4ab2cdfg3l − 4ab2cef2h3 − 4ab2cefg3k + 4ab2cefg2h2 − 2ab2d2f3hl −

Page 90: EDP 2010. ISBN 978-973-3-3370-7 Dáné Károly András Dan ...edituradp.ro/site_img/downloads/2013/04/interior-alg-comp-i.pdf · Se ³tie c , metoda lui Gauss de rezolvare a unui

90 CAPITOLUL 2. REZOLVAREA SISTEMELOR DE ECUA�II

5ab2d2f2g2l − 10ab2def3hk + 2ab2def2g2k + 10ab2def2gh2 − 4ab2defg3h −6abc3f3kl−2abc3f2ghl+2abc3fg3l−8abc2df3hl+8abc2df2g2l−2abc2ef3hk+4abc2ef2g2k + 2abc2ef2gh2 − 2abc2efg3h + 8abcd2f3gl + 4abcdef3gk +8abcdef3h2−12abcdef2g2h+4abcdefg4+2abd3f4l+6abd2ef4k−8abd2ef3gh+2abd2ef2g3 + 4ac4f3hl − 2ac4f2g2l − 2ac3df3gl − 4ac3ef3h2 + 2ac3ef2g2h −3ac2d2f4l−6ac2def4k+10ac2def3gh−4ac2def2g3−6acd2ef4h+2acd2ef3g2+2ad3ef4g+2b5f2hkl−2b4cf2gkl−b4cf2h2l−2b4df3kl−2b4df2ghl+b4ef3k2−2b4ef2ghk + b4ef2h3 + 2b3c2f3kl + 2b3c2f2ghl + 4b3cdf3hl + 2b3cdf2g2l +2b3cef3hk+2b3cef2g2k−2b3cef2gh2+2b3d2f3gl−4b3def3h2+2b3def2g2h−2b2c3f3hl− b2c3f2g2l− 6b2c2df3gl− 4b2c2ef3gk+ 2b2c2ef3h2 + b2c2ef2g2h−3b2cd2f4l + 2b2cdef3gh − 2b2cdef2g3 + 5b2d2ef4h − b2d2ef3g2 + 2bc4f3gl +4bc3df4l + 2bc3ef4k − 2bc3ef3gh − 4bc2def4h + 4bc2def3g2 − 2bcd2ef4g −2bd3ef5 − c5f4l + c4ef4h− 2c3def4g + 3c2d2ef5)y4 −−(a5gk2l2−2a5h2kl2−a4bfk2l2+2a4bghkl2+a4bh3l2+4a4cfhkl2−2a4cg2kl2+a4cgh2l2 − 2a4dfgkl2 + 2a4dfh2l2 − a4dg2hl2 − 2a4efgk2l + 4a4efh2kl +a4eg2hkl − 2a4egh3l − 2a3b2fhkl2 − 2a3b2gh2l2 + 2a3bcfgkl2 − 4a3bcfh2l2 +2a3bdf2kl2 + a3bdg3l2 + 2a3bef2k2l − 6a3befghkl − a3beg3kl + 4a3beg2h2l −2a3c2f2kl2 − 2a3c2fghl2 + a3c2g3l2 − 4a3cdf2hl2 + 3a3cdfg2l2 − 8a3cef2hkl+3a3cefg2kl+4a3cefgh2l−2a3ceg3hl+a3d2f2gl2+4a3def2gkl−4a3def2h2l+a3defg2hl − a3deg4l + a3e2f2gk2 − 2a3e2f2h2k − a3e2fg2hk + 2a3e2fgh3 +a3e2g4k − a3e2g3h2 + 2a2b3fh2l2 + a2b3g2hl2 + 4a2b2cfghl2 − a2b2cg3l2 +a2b2df2hl2 − 3a2b2dfg2l2 + 5a2b2ef2hkl + 3a2b2efg2kl − 4a2b2efgh2l −2a2b2eg3hl + 5a2bc2f2hl2 − 3a2bc2fg2l2 − 4a2bcdf2gl2 − 2a2bcef2gkl +2a2bcef2h2l−2a2bcefg2hl+2a2bceg4l−a2bd2f3l2−4a2bdef3kl+2a2bdef2ghl+3a2bdefg3l−a2be2f3k2+4a2be2f2ghk−a2be2f2h3−3a2be2fg3k−a2be2fg2h2+a2be2g4h+ a2c3f2gl2 +2a2c2df3l2 +4a2c2ef3kl− 2a2c2ef2ghl+8a2cdef3hl−5a2cdef2g2l + 4a2ce2f3hk − a2ce2f2g2k − 5a2ce2f2gh2 + 4a2ce2fg3h −a2ce2g5 − 2a2d2ef3gl− 2a2de2f3gk+ 2a2de2f3h2 − 2ab4fghl2 − 4ab3cf2hl2 +2ab3cfg2l2+3ab3df2gl2− 3ab3ef2gkl+4ab3efg2hl+ ab2c2f2gl2+ ab2cdf3l2−ab2cef3kl+2ab2cef2ghl−4ab2cefg3l−3ab2def3hl−3ab2def2g2l−3ab2e2f3hk+3ab2e2f2g2k + 3ab2e2f2gh2 − 2ab2e2fg3h − 2abc3f3l2 − 4abc2ef3hl +4abc2ef2g2l+6abcdef3gl+2abce2f3h2−4abce2f2g2h+2abce2fg4+2abd2ef4l+2abde2f4k−2abde2f3gh−4ac2def4l−2ac2e2f4k+4ac2e2f3gh−2ac2e2f2g3−4acde2f4h+2acde2f3g2+ad2e2f4g+ b5f2hl2− b4cf2gl2− b4df3l2+ b4ef3kl−2b4ef2ghl+b3c2f3l2+2b3cef3hl+2b3cef2g2l+b3def3gl−b3e2f3gk−b3e2f3h2+b3e2f2g2h − 4b2c2ef3gl − b2cdef4l + b2ce2f4k − b2ce2f2g3 + 2b2de2f4h +2bc3ef4l−bc2e2f4h+2bc2e2f3g2−2bcde2f4g−bd2e2f5−c3e2f4g+2c2de2f5)y =0.

Page 91: EDP 2010. ISBN 978-973-3-3370-7 Dáné Károly András Dan ...edituradp.ro/site_img/downloads/2013/04/interior-alg-comp-i.pdf · Se ³tie c , metoda lui Gauss de rezolvare a unui

2.2. APLICA�II � EXEMPLE IN SINGULAR 91

Sistem de ecuaµii, coe�cienµi complec³i algebrici

//// Sistem de ecuaµii cu coeficienµi Z_7(i)//ring R = (7,i),(x,y),lp;minpoly = i2+1;ideal I = (xy+(-1-i))*(x2+x+(i)*y+(-2+i)),(xy+(-1-i))*(x2+(-2+3i));groebner(I);

Sistemul dat este (polinoame din Z7(i)[X,Y ]):

{x3y + x2y − (i+ 1)x2 + ixy2 + (i− 2)xy − (i+ 1)x− (i− 1)y + (i+ 3) = 0

x3y − (i+ 1)x2 + (3i− 2)xy − (i+ 2) = 0

Sistemul echivalent este:{−y5 − y4 − (i− 2)y3 + (i− 3)y2 − iy + (2i+ 1) = 0

−(2i− 2)x+ (2i+ 2)y4 + 3y3 + (i+ 2)y2 + y − 3i = 0

Sistem de 2 ecuaµii, 2 necunoscute, coe�cienµi complec³i algebrici

din Q(i)

//// Sistem de 2 ecuatii cu 2 necunoscute,// coeficienti complecsi, Q(i)//// exista solutie//ring R = (0,i),(x,y),lp;minpoly = i2+1;ideal I = (xy+(-1-i))*(x2+x+(i)*y+(-2+i)),(xy+(-1-i))*(x2+(-2+3i));groebner(I);

Sistemul de ecuaµii dat este (coe�cienµi din Q(i)):

{x3y + x2y − (i+ 1)x2 + ixy2 + (i− 2)xy − (i+ 1)x− (i− 1)y + (i+ 3) = 0

x3y − (i+ 1)x2 + (3i− 2)xy − (i− 5) = 0

Sistemul echivalent este:

Page 92: EDP 2010. ISBN 978-973-3-3370-7 Dáné Károly András Dan ...edituradp.ro/site_img/downloads/2013/04/interior-alg-comp-i.pdf · Se ³tie c , metoda lui Gauss de rezolvare a unui

92 CAPITOLUL 2. REZOLVAREA SISTEMELOR DE ECUA�II

2y5 − 12y4 − (5i− 31)y3+

(12i− 36)y2 − (19i− 21)y + (24i+ 12) = 0−(44i− 100)x−

−(12i− 16)y4 + (56i− 88)y3 − (146i− 170)y2++(196i− 132)y − (206i− 14) = 0

2.3 Rezolvarea numeric  a unui sistem nepolinomial

În aceast  secµiune facem o incursiune scurt  în afara domeniului variet µiloralgebrice. Tot ce discut m aici are doar o valoare informativ  ³i teoria prezen-tat  nu va � fundamentat  în toate am nuntele sale. Practic accentul cade pecele dou  exemple, care ilustreaz  su�cient de clar ideea expus .

Pentru sistemele de ecuaµii neliniare nepolinomiale nu exist  metode derezolvare globale (cel puµin dup  cuno³tinµele autorului prezentei c rµi). Totce se poate face pentru astfel de sisteme este rezolvarea lor local . Mai precis,pentru astfel de sisteme dispunem de metode iterative (metode de tip Newton-Kantorovich), care construiesc ³iruri de aproximaµii pentru soluµii care se a� în "raza de atracµie" a punctului de start al iteraµiei. Repetând construireaacestor ³iruri cu alte ³i alte puncte de start, obµinem � eventual � alte soluµiiale sistemului.

Cum trebuie ales punctul de start al iteraµiei? Câte soluµii are un sistemdat într-un domeniu �nit dat? La aceste întreb ri nu avem r spunsuri generale.

În cele de mai jos vom ar ta prin exemple concrete c  teoria bazelor Gröb-ner poate � aplicat  ³i în acest context, astfel ca vom putea da r spunsuri re-zonabile ³i la aceste întreb ri. Ideea de baz  este simpl : aproxim m sistemulneliniar dat pe un domeniu, cu sisteme de ecuaµii polinomiale pe subdomeniiconvenabil alese. Rezolv m sistemele neliniare polinomiale cu metoda bazeiGröbner , ³i folosim soluµiile g site ca puncte de start pentru metode iterativeclasice pentru a obµine soluµiile numerice cu precizia dorit .

Formal avem deci urm toarea problem . Fie sistemul de ecuaµii neliniar:f1(x1, x2, . . . , xn) = 0

f2(x1, x2, . . . , xn) = 0

. . .

fn(x1, x2, . . . , xn) = 0

unde f1, . . . , fn sunt funcµii de�nite ³i diferenµiabile pe un domeniu dreptunghi-ular D ⊂ Rn.

Problem  2.3.1. Presupunem c  sistemul de ecuaµii de mai sus are un num r�nit de soluµii în domeniul D. Presupunem de asemenea c  matricea Iacobi

Page 93: EDP 2010. ISBN 978-973-3-3370-7 Dáné Károly András Dan ...edituradp.ro/site_img/downloads/2013/04/interior-alg-comp-i.pdf · Se ³tie c , metoda lui Gauss de rezolvare a unui

2.3. REZOLVAREA NUMERIC� A UNUI SISTEM NEPOLINOMIAL 93

F = (f1, . . . , fn) este nesingular  în aceste puncte de r d cin . S  se g seasc toate (!) aceste puncte cu o precizie dat .

2.3.1 Exemplu cu aproximare Bernstein

Metoda de rezolvare numeric  propus  în [23] are urm torii pa³i:Pasul 1. Se aproximeaz  funcµiile fi cu polinoame (Bernstein [37] sau

spline).

Teorem  2.3.2. Fie domeniul D =∏n

k=1[0, 1] ³i �e Bm operatorul Bernsteinde�nit de

(Bmf)(x) =

m∑i1=0

m∑i2=0

· · ·m∑

in=0

f(i1m,i2m, . . . ,

inm) ·

n∏j=1

Cijm · xijj · (1− xj)

m−ij ,

unde x = (x1, x2, . . . , xn) ∈ D ³i f este o funcµie continu  pe D.Atunci limm→∞ ||Bmf − f ||∞ = 0.

Aproxim m fi cu Bmfi pentru orice i = 1, . . . , n.Pasul 2. Se aplic  algoritmul de calcul al bazei Gröbner sistemului poli-

nomial de ecuaµii Bmfi = 0, i = 1, . . . , n pentru a obµine sistemul echivalent"triunghiular".

Pasul 3. Se aplic  o metod  numeric  standard pentru rezolvarea ecuaµieipolinomiale cu o singur  necunoscut . (În exemplele care vor urma am utilizatmetoda Bairstow's ([36]), dar sistemele CAS dispun de metode incorporatepentru rezolvarea numeric  a sistemelor algebrice neliniare). Se reµin soluµiilereale din intervalul [0, 1]. Se calculeaz  toate soluµiile sistemului triunghiulardin domeniul D.

Pasul 4. Se ra�neaz  soluµiile g site în pasul anterior folosindu-se acestevalori ca puncte de start pentru metode numerice iterative standard apli-cate sistemului iniµial. (În exemplele de mai jos am folosit metoda Newton-Kantorovich).

Exemplu 2.3.3. S  se g seasc  toate soluµiile din [0, 1] × [0, 1] × [0, 1] alesistemului de ecuaµii:

z = cos(x+ y)

z = x2 + y2

z = x+ y − 1

4

Page 94: EDP 2010. ISBN 978-973-3-3370-7 Dáné Károly András Dan ...edituradp.ro/site_img/downloads/2013/04/interior-alg-comp-i.pdf · Se ³tie c , metoda lui Gauss de rezolvare a unui

94 CAPITOLUL 2. REZOLVAREA SISTEMELOR DE ECUA�II

Rezolvare:Pasul 1. m = 2,

28x2y2 + 170x2y − 216x2 + 170xy2 − 864xy

−244x− 1000z − 216y2 − 244y + 1000 = 0

−x2 + z − y2 = 0

−4x+ 4z − 4y + 1 = 0

Pasul 2.

3136y8 + 31808y7 + 178784y6 − 1139456y5 + 2960232y4

+3963400y3 + 15306185y2 − 17019304y + 1317904 = 0

239377264285440264z

+38801387759680y7

+361771065106752y6

+2064375688512992y5

−13760573122605696y4

+64582070537855400y3

−18298549871869160y2

−21651628400988375y

−144393016743385558 = 0

−4x+ 4z − 4y + 1 = 0

Soluµiile sistemului algebric sunt:Pasul 3.

x1 = 0.1, y1 = 0.777, z1 = 0.627

x2 = 0.81, y2 = 0.084, z2 = 0.644

Pasul 4.

x1 = 0.093, y1 = 0.791, z1 = 0.634

x2 = 0.791, y2 = 0.093, z2 = 0.634

Page 95: EDP 2010. ISBN 978-973-3-3370-7 Dáné Károly András Dan ...edituradp.ro/site_img/downloads/2013/04/interior-alg-comp-i.pdf · Se ³tie c , metoda lui Gauss de rezolvare a unui

2.3. REZOLVAREA NUMERIC� A UNUI SISTEM NEPOLINOMIAL 95

2.3.2 Exemplu cu aproximare spline

Presupunem de la început n = 2. De asemenea presupunem c  domeniulD estede forma [a, b]× [c, d]. Alegem nodurile echidistante a = x0 < x1 < . . . xN = b³i c = y0 < y1 < . . . yM = d. Not m Dij = [xi, xi+1]× [yj , yj+1] ³i

h =b− a

N, l =

d− c

M.

Vom considera funcµii spline bicubice, care sunt polinomiale de grad treiîn ambele variabile pe porµiuni, ³i interpoleaz  valorile funcµiei diferenµiabilef : D → R în nodurile (xi, yj) ³i a valorilor derivatelor parµiale de ordinul întâiD1,0f ³i D0,1f în acelea³i noduri.

De fapt se determin  funcµia spline bicubic  S(f) în dou  variabile avândurm toarele propriet µi:

(1) pe dreptunghiul Dij avem

S(f)(x, y) = Si,j(f)(x, y) =∑

α,β=0,α+β≤4

Aα,βi,j (x− xi)

α(y − yj)β

(2) în nodurile (xi, yj), i = 0, 1, . . . , N , j = 0, 1, . . . ,M avem

Dr,sS(f)(xi, yj) = Dr,sf(xi, yj) := f(r,s)ij

unde r + s ≤ 1 ³i Dr,s este operatorul de derivare parµial .

S  reiter m teorema 2.3 din [29] (se poate consulta ³i [11] sau [34]).

Teorem  2.3.4. Dac  A2,2i,j = 0 atunci exist  o funcµie spline bicubic  S(f)

care satisface condiµiile (1) ³i (2) pe domeniul D.

Mai mult, S(f) poate � construit efectiv. Iat  expresia acesteia. Not m:

t =x− xi

h, v =

y − yjl

,

pentru o pereche �xat  de indici (i, j) ³i punctul (x, y) ∈ Di,j . Putem exprimafuncµia spline bicubic  S(f) pe subdomeniul Di,j în felul urm tor:

Page 96: EDP 2010. ISBN 978-973-3-3370-7 Dáné Károly András Dan ...edituradp.ro/site_img/downloads/2013/04/interior-alg-comp-i.pdf · Se ³tie c , metoda lui Gauss de rezolvare a unui

96 CAPITOLUL 2. REZOLVAREA SISTEMELOR DE ECUA�II

Si,j(f)(x, y) =

(1− v) · (Φ1(t)fi,j +Φ2(t)fi+1,j +Φ3(t)hf(1,0)i,j +Φ4(t)hf

(1,0)i+1,j)

+v · (Φ1(t)fi,j+1 +Φ2(t)fi+1,j+1 +Φ3(t)hf(1,0)i,j+1 +Φ4(t)hf

(1,0)i+1,j+1)

+v(1− v) · (v((1− t)(fi,j+1 − fi,j − lf(0,1)i,j+1)

+t(fi+1,j+1 − fi+1,j − lf(0,1)i+1,j+1))

+(1− v)((1− t)(−fi,j+1 + fi,j + lf(0,1)i,j )

+t(−fi+1,j+1 + fi+1,j + lf(0,1)i+1,j))),

unde

Φ1(t) = (1− t)2(1 + 2t),

Φ2(t) = t2(3− 2t),

Φ3(t) = t(1− t)2,

Φ4(t) = −t2(1− t).

Fiecare funcµie f1 ³i f2 poate � aproximat  deci cu astfel de funcµii spline,a³adar în locul sistemului neliniar nepolinomial

F (x, y) = 0

vom avea un num r de N ·M sisteme polinomiale de forma{S(f1)(x1, x2) = 0

S(f2)(x1, x2) = 0,

unde x = (x1, x2) ∈ Di,j pentru �ecare subdomeniu Dij , i = 0, 1, . . . , N − 1 ³ij = 0, 1, . . . ,M − 1.

Metoda din [22] are urm torii pa³i:Pasul 1. Se aproximeaz  funcµiile diferenµiabile fi cu funcµii spline, ca mai

sus.Pasul 2. Se aplic  algoritmul bazei Gröbner pentru cele N · M sisteme

polinomiale {Si,j(f1)(x1, x2) = 0

Si,j(f2)(x1, x2) = 0,

de unde pentru �ecare subdomeniuDij , i = 0, 1, . . . , N−1 ³i j = 0, 1, . . . ,M−1se obµine un sistem "triunghiular" echivalent.

Page 97: EDP 2010. ISBN 978-973-3-3370-7 Dáné Károly András Dan ...edituradp.ro/site_img/downloads/2013/04/interior-alg-comp-i.pdf · Se ³tie c , metoda lui Gauss de rezolvare a unui

2.3. REZOLVAREA NUMERIC� A UNUI SISTEM NEPOLINOMIAL 97

Pasul 3. Se rezolv  numeric aceste sisteme cu metode standard. Se reµinsoluµiile reale din subdomenii.

Pasul 4. Soluµiile aproximative de lapasul anterior se consider  ca punctede start pentru metode iterative numerice standard de reyolvare a sistemelorneliniare.

S  relu m exemplul anterior în acest context.

Exerciµiu 2.3.5. cos(x+ y)− x− y +

1

4= 0

x2 + y2 − x− y +1

4= 0

Soluµie:Pasul 1. Alegem N = 3 ³i M = 3. Formula de aproximare cu funcµii

spline ne d  3 × 3 = 9 sisteme polinomiale. Primul din ele, pentru i = 0 ³ij = 0 sau D0,0 = [0, 0.333]× [0, 0.333] avem

1.564 ∗ 10−1x3y + 2.757 ∗ 10−2x3 + 8.394 ∗ 10−2x2y

−5.046 ∗ 10−1x2 + 1.564 ∗ 10−1xy3 + 8.391 ∗ 10−2xy2

−1.027xy − x+ 2.757 ∗ 10−2y3 − 5.046 ∗ 10−1y2 − y + 1.250 = 0

x2 − x+ y2 − y + 2.500 ∗ 10−1 = 0

Pentru i = 0 ³i j = 1, sau D0,1 = [0, 0.333]× [0.333, 0.666] avem

1.301 ∗ 10−1x3y + 3.643 ∗ 10−2x3 + 2.414 ∗ 10−1x2y

−5.570 ∗ 10−1x2 + 1.300 ∗ 10−1xy3 + 1.114 ∗ 10−1xy2

−1.086xy − 9.824 ∗ 10−1x+ 7.969 ∗ 10−2y3 − 5.563 ∗ 10−1y2

−9.829 ∗ 10−1y + 1.248 = 0

x2 − x+ y2 − y + 2.500 ∗ 10−1 = 0

Pentru i = 0 ³i j = 2, sau D0,2 = [0, 0.333]× [0.666, 1] avem

8.940 ∗ 10−2x3y + 6.349 ∗ 10−2x3 + 3.722 ∗ 10−1x2y

−6.443 ∗ 10−1x2 + 8.934 ∗ 10−2xy3 + 1.934 ∗ 10−1xy2

−1.180xy − 9.439 ∗ 10−1x+ 1.230 ∗ 10−1y3 − 6.422 ∗ 10−1y2

−9.261 ∗ 10−1y + 1.236 = 0

x2 − x+ y2 − y + 2.500 ∗ 10−1 = 0

Page 98: EDP 2010. ISBN 978-973-3-3370-7 Dáné Károly András Dan ...edituradp.ro/site_img/downloads/2013/04/interior-alg-comp-i.pdf · Se ³tie c , metoda lui Gauss de rezolvare a unui

98 CAPITOLUL 2. REZOLVAREA SISTEMELOR DE ECUA�II

Pasul 2. y − 9.239 ∗ 10−2 = 0

x+ 1.716 ∗ 10−2y5 − 1.076 ∗ 10−1y4

+3.785 ∗ 10−1y3 − 1.969 ∗ 10−1y2

+9.593 ∗ 10−1y − 8.771 ∗ 10−1 = 0

y6 − 4.633y5 + 1.185 ∗ 10y4 + 1.495y3

+3.531 ∗ 10y2 − 3.707 ∗ 10y + 3.043 = 0

x+ 2.048 ∗ 10−2y5 − 1.070 ∗ 10−1y4

+4.079 ∗ 10−1y3 − 3.297 ∗ 10−1y2

+1.042y − 8.772 ∗ 10−1 = 0

y6 − 4.244y5 + 1.025 ∗ 10y4

−6.669 ∗ 10−1y3 + 2.922 ∗ 10y2

−2.930 ∗ 10y + 2.291 = 0

x+ 2.416 ∗ 10−2y5 − 1.153 ∗ 10−1y4

+4.322 ∗ 10−1y3 − 3.864 ∗ 10−1y2

+1.062y − 8.678 ∗ 10−1 = 0

Pasul 3.

Pentru primul sistem soluµia este: (0.797, 0.09239) ∈ D0,0.Pentru cel de al doilea obµinem dou  soluµii reale (0.786, 0.09) ³i

(0.093, 0.791), care nu aparµin domeniului D0,1.Al treilea sistem are dou  soluµii reale: (0.78, 0.085) ∈ D0,2 dar

(0.093, 0.791) ∈ D0,2.Pasul 4.

Metoda Newton cu punctul de start obµinut anterior d : (0.093, 0.791) ∈D0,2. Celelalte ³ase sisteme mai dau înc  o soluµie, simetric  faµ  de ceaobµinut  deja.

2.4 Probleme propuse

1. S  se rezolve sistemele de ecuaµii cu coe�cienµi în corpul numerelorraµionale, Q.

1-1. {2x− 3y = −1

x− 2y = −1

Page 99: EDP 2010. ISBN 978-973-3-3370-7 Dáné Károly András Dan ...edituradp.ro/site_img/downloads/2013/04/interior-alg-comp-i.pdf · Se ³tie c , metoda lui Gauss de rezolvare a unui

2.4. PROBLEME PROPUSE 99

1-2. 2x− 3y + 4z = 10

x− 5y + 2z = −10

3x− 4y + 3z = 10

1-3. 5x− 3y + z = 9

x− 2y − 2z = −1

4x− y + 3z = 10

1-4. 2x− 3y + z = 1

x+ 2y + 2z = −1

3x− y + 3z = 10

1-5. 2x− y − z − u = 1

−x+ 2y − z − u = 1

−x− y + 2z − u = 1

−x− y − z + 2u = 1

Indicaµie:

ring R=0,(x,y),lp;poly f1=2x-3y+1;poly f2=x-2y+1;ideal I=f1,f2;ideal J=groebner(I);J;LIB "solve.lib";list s=solve(I,6);s;// -> J: este forma echivalenta "triunghiulara" a sistemului// -> s: este lista solutiilor in numere complexe

2. S  se reyolve sistemele neliniare cu coe�cienµi complec³i.

2-1. {2x2 − 3y2 = −1

x− 2y = −1

2-2. {2x− 3y = −1

x2 − 2y2 = −1

Page 100: EDP 2010. ISBN 978-973-3-3370-7 Dáné Károly András Dan ...edituradp.ro/site_img/downloads/2013/04/interior-alg-comp-i.pdf · Se ³tie c , metoda lui Gauss de rezolvare a unui

100 CAPITOLUL 2. REZOLVAREA SISTEMELOR DE ECUA�II

2-3. {2x2 − 3y2 = −1

x2 − 2y2 = −1

2-4. {2x5 − 3y4 = −1

x3 − 2y2 = −1

2-5. 2x2 − 3y2 + 2z2 = 1

x2 − 2y3 − xz2 = −2

x2y − 2zy2 − yz3 = −2

2-6. {(x+ y − 1)(2x− 3y − 1) = 0

(x+ 5y − 2)(4x+ 2y − 1) = 0

2-7. {(x2 + x− 2)(2x− 3y − 1) = 0

x3 + xy − y − 1 = 0

2-8. {(x2 + x− 2)(2x− 3y − 1) = 0

x3 + xy − y + 1 = 0

2-9. {x7 + xy4 − 3y3 = −1

x3y + xy4 − y7 = 1

Indicaµie:

ring R=0,(x,y),lp;poly f1=2x2-3y2+1;poly f2=x-2y+1;ideal I=f1,f2;ideal J=groebner(I);J;LIB "solve.lib";list s=solve(I,6);s;// -> J: este forma echivalenta "triunghiulara" a sistemului// -> s: este lista solutiilor in numere complexe

Page 101: EDP 2010. ISBN 978-973-3-3370-7 Dáné Károly András Dan ...edituradp.ro/site_img/downloads/2013/04/interior-alg-comp-i.pdf · Se ³tie c , metoda lui Gauss de rezolvare a unui

Capitolul 3

Coduri corectoare de erori

N umerele raµionale, numerele reale ³i numerele complexe, îm-preun  cu operaµiile de adunare ³i înmulµire între ele, avândpropriet µi algebrice naturale obi³nuite constituie exemple destructuri numite corpuri. Corpul numerelor reale este o ex-

tindere a corpului numerelor raµionale, iar corpul numerelor complexe este oextindere a acestuia din urm . În acest capitol vom vedea mai în detaliu as-pectele speci�ce ale extinderilor corpurilor �nite. Câteva dintre de�niµiile ³irezultatele întâlnite deja sunt reiterate ³i în acest context, pentru a asigura orelativ  independenµ  a lecturii capitolelor.

Mai înainte îns  � a³a cum am mai procedat ³i în alte capitole ale acesteic rµi � s  începem cu sfâr³itul. S  vedem ³i aici o problem  su�cient de concret ³i incitant , pentru a motiva efortul îndreptat pentru înfrângerea di�cult µilorparcurgerii ³i înµelegerii construcµiilor teoretice care vor urma.

S  presupunem c  dorim s  transmitem un mesaj printr-un canal de co-municaµie, care nu poate garanta certitudinea nealter rii mesajului nostru. Caorice sistem technic, el poate altera mesajul, �e ³i într-o m sur  mic . Dac  lareceptor sose³te mesajul "gre³eal  de tipar", mesajul corect poate � reconsti-tuit eventual din context, cu condiµia ca acest context s  nu �e o examinare ladistanµ  a unor studenµi la materia numit  Ortogra�a limbii române. Contex-tul poate s  lipseasc  îns  cu des vâr³ire, spre exemplu în cazul unei secvenµede mesaj codi�cat de genul "AGECGKTSDTMVKUFTEWDXTFSAKL", încare literele semni�c  niveluri de gri, ale unei porµiuni de imagine transmis de o sond  spaµial  înregistrat  de pe suprafaµa unei planete.

Pretenµia noastr  este cu alte cuvinte de a codi�ca informaµia util  astfelîncât, dac  în cursul transmiterii se produc unele alter ri, acestea s  poat  �detectate, ³i � de ce nu � ³i corectate! Este posibil oare a³a ceva? Vom ar tape un exemplu concret, c  este posibil!

101

Page 102: EDP 2010. ISBN 978-973-3-3370-7 Dáné Károly András Dan ...edituradp.ro/site_img/downloads/2013/04/interior-alg-comp-i.pdf · Se ³tie c , metoda lui Gauss de rezolvare a unui

102 CAPITOLUL 3. CODURI CORECTOARE DE ERORI

3.1 Un exemplu concret

S   presupunem c  dorim s  transmitem o informaµie util  constând dinpatru cifre binare 0 sau 1 a c ror semni�caµie nu este important  pentru

noi, ele putînd reprezenta orice informaµie convenit  ca �ind inteligent  ³iinteligibil  între cei doi parteneri ai transmisiei, respectiv expeditorul/cel caretransmite ³i destinatarul/cel care recepteaz .

Fie acest mesaj spre exemplu

u = ”1011”.

Înainte de a-l transmite s  complet m mesajul cu alte trei cifre binare în modulurm tor. S  consider m matricea de generare

G =

1 0 0 0 0 1 10 1 0 0 1 0 10 0 1 0 1 1 00 0 0 1 1 1 1

.

Dac  privim mesajul nostru de patru cifre binare ca un vector

u =(1 0 1 1

),

atunci putem calcula produsul (matricial) v = u · G � calculat dup  regulilearitmeticii (mod 2) � ³i astfel obµinem un ³ir de 7 cifre binare:

v =(1 0 1 1 0 1 0

).

Acesta va � mesajul pe care îl vom transmite. Mesajul preparat astfel estecapabil de "minuni": dac  oricare din cele 7 cifre este recepµionat eronat,adic  se recepteaz  1 în loc de 0 sau 0 în loc de 1 undeva în acest  secvenµ ,atunci nu numai c  faptul alter rii poate � descoperit, dar mai mult, putemspeci�ca ³i locul exact al alter rii, ³i astfel eroarea poate � corectat !

S  simul m o eroare. S  presupunem spre exemplu c  receptorul a înregis-trat mesajul sub forma

v =(1 0 1 0 0 1 0

).

Evident cel care recepteaz  nu vede sub aceast  form , ci mai degrab  astfel:

v =(1 0 1 0 0 1 0

).

Page 103: EDP 2010. ISBN 978-973-3-3370-7 Dáné Károly András Dan ...edituradp.ro/site_img/downloads/2013/04/interior-alg-comp-i.pdf · Se ³tie c , metoda lui Gauss de rezolvare a unui

3.1. UN EXEMPLU CONCRET 103

Este acest mesaj corect? Dac  nu, unde este gre³ala, care este cifra alterat ?Iat  cum putem depista cifra alterat . Consider m matricea

H =

0 0 0 1 1 1 10 1 1 0 0 1 11 0 1 0 1 0 1

,

pe care o vom numi matrice de control al parit µii , sau matrice de veri�carea parit µii . Cu ajutorul acesteia vom detecta eroarea, dac  ea s-a produs.Privim acum mesajul recepµionat v ca un vector, astfel

vt =

1010010

³i îl înmulµim cu matricea H. S  not m rezultatul înmulµirii cu s = H · vt.Acesta este

s =

100

.

Tot ce avem de f cut acum este s  citim rezultatul de sus în jos în baza doi, ³iastfel obµinem 100 adic  num rul 4. Cifra a patra este eronat !

Cititorul mai puµin credul poate veri�ca faptul c , oricare cifr  ar � fostalterat  din cele 7 cifre, procedeul funcµioneaz , matricea detectoare e bun  înacest scop.

Dup  corectarea erorii mesajul corect este

v =(1 0 1 1 0 1 0

).

Acum putem ignora cele 3 cifre adiµionale, ³i obµinem mesajul original nealteratnotat cu u.

S  observ m, c  procedeul nostru poate detecta ³i corecta cel mult o eroarede o cifr  binar .

Se nasc în mod natural urm toarele întreb ri incitante: cum pot � constru-ite astfel de matrici-minune G ³i H? Sau ³i mai fundamental: pe ce fundamentteoretic pot � inventate astfel de mecanisme de detectare ³i corectare a eror-ilor? Dezideratul este evident de a obµine o capacitate de detectare ³i corectarecât mai mare cu un num r de cifre adiµionale cât mai mic posibil.

Page 104: EDP 2010. ISBN 978-973-3-3370-7 Dáné Károly András Dan ...edituradp.ro/site_img/downloads/2013/04/interior-alg-comp-i.pdf · Se ³tie c , metoda lui Gauss de rezolvare a unui

104 CAPITOLUL 3. CODURI CORECTOARE DE ERORI

Toate acestea pot � fundamentate ³i realizate cu ajutorul extensiei concep-tului de num r. O nou  mulµime de numere utilizabil  minunat în acest scopse nume³te... corp �nit! În secµiunea 3.2 de pe pagina 108 începem studiulsistematic al acestora.

Exerciµii 3.1.1.

1. Scrieµi un program în GAP pentru efectuarea tuturor calculelor de maisus.

2. Testaµi ³i alte mesaje utile, respectiv simulaµi erori în diverse poziµii,efectuînd toate calculele cu ajutorului acestui program.

3. Daµi un r spuns argumentat la întrebarea: Dac  în mesajul recepµionatnu se detecteaz  eroare, putem � siguri c  nu s-a produs nici o eroare încursul transmisiei?

Problem  3.1.2. Încercaµi s  daµi o explicaµie, de ce funcµioneaz  corect acestmecanism de detectare ³i corectare a erorilor de cel mult o cifr  binar  (f r s  citiµi mai întâi indicaµia de mai jos)!

Indicaµie Observaµi faptul c  matricea H are drept coloane numerele de la 1la 7 reprezentate în baza 2. C utaµi o analogie între modul de determinare acifrei binare eronate ³i o soluµie posibil  dat  problemei de mai jos.

Problem  3.1.3. Între 8 monezi � care în aparenµ  par identice � exist b nuiala, c  una este fals , ea, dac  exist , are o greutate puµin mai mare decâto moned  veritabil . S  presupunem c  dispunem de un cântar cu braµe egalecu care putem efectua doar m sur tori de comparaµie a greut µilor. Întrebareaeste: sunt oare su�ciente 3 cânt riri potrivite pentru a detecta existenµa uneimonezi false, ³i a chiar a identi�c rii ei, în caz c  exist ?

O soluµie posibil  este urm toarea: numerot m monezile cu numerele dela 0 la 7, apoi efectu m 3 cânt riri, comparând gruprurile de monezi 0,1,2,3 ³i4,5,6,7, apoi 0,1,4,5 ³i 2,3,6,7, iar în �nal 0,2,4,6 ³i 1,3,5,7. Cântarul r mâne înechilibru dac  nu avem moned  fals . Îns  în cazul unei monezi false, braµulcare coboar  al cântarului indic  pe rând cifrele binare ale num rului de ordineal monezii false: înclinare la stânga înseamn  0, la dreapta înseamn  1.

0,1,2,3 4,5,6,7 0,1,4,5 2,3,6,7 0,2,4,6 1,3,5,70→ 000 4→ 100 0→ 000 2→ 010 0→ 000 1→ 0011→ 001 5→ 101 1→ 001 3→ 011 2→ 010 3→ 0112→ 010 6→ 110 4→ 100 6→ 110 4→ 100 5→ 1013→ 011 7→ 111 5→ 101 7→ 111 6→ 110 7→ 111

Page 105: EDP 2010. ISBN 978-973-3-3370-7 Dáné Károly András Dan ...edituradp.ro/site_img/downloads/2013/04/interior-alg-comp-i.pdf · Se ³tie c , metoda lui Gauss de rezolvare a unui

3.1. UN EXEMPLU CONCRET 105

3.1.1 O prim  utilizare a programului GAP în coduri

�tim deja c  mediul de programare GAP este interpretor, adic  a³teapt comenzi pe un prompter, pe care le execut  imediat. Un set de instrucµi-uni succesive poate � salvat într-un �³ier, ³i executat la o singur  comand ,prin înc rcarea �³ierului.

S  facem o introducere brusc  în programarea elementar  a pachetuluiGAP, prin intermediul prezent rii unui exemplu de program surs  comentat,scris în acest mediu. Programul de mai jos scris în limbajul de programareoferit de GAP este cu siguranµ  u³or de descifrat. Numele �³ierului este progr.g³i va � înc rcat ³i executat la comanda Read("progr.g"); tastat pe prompterul

gap>

dup  ce acest �³ier a fost copiat în catalogul \bin existent în catalogul-r d cin  în care a fost instalat programul GAP.

###################################################################### progr.g## program în GAP## Un prim exemplu de utilizare a programului GAP în coduri####################################################################

#################################################################### Funcµie de conversie a num rului de ordine## input: s - o matrice 3x1, cu elemente din Z(2)## output: convs - un num r între 0..7####convs:=function(s)local k,i;k:=0;for i in [1..3] do

if s[i][1]=1*Z(2) thenk:=k*2+1;

elsek:=k*2+0;

fi;od;return k;end;;

Page 106: EDP 2010. ISBN 978-973-3-3370-7 Dáné Károly András Dan ...edituradp.ro/site_img/downloads/2013/04/interior-alg-comp-i.pdf · Se ³tie c , metoda lui Gauss de rezolvare a unui

106 CAPITOLUL 3. CODURI CORECTOARE DE ERORI

###################################################################### Programul principal:#### Semnificaµia variabilelor din program#### u - mesaj util, 4 cifre binare Z(2) (matrice tip 1x4)## G - matrice de generare, elemente din Z(2) (tip 4x7)## H - matrice de control, elemente din Z(2) (tip 3x7)## v - mesajul codificat ³i transmis, apoi recepµionat## (eventual) eronat, (matrice-linie, tip 1x7)## s - vector, locul erorii, (matrice coloan , tip 3x1)####################################################################

## Definiµia corpului finit Z(2)F:=GF(2);

## Definirea matricii de generare (codificare)G:=[[ 1, 0, 0, 0, 0, 1, 1],

[ 0, 1, 0, 0, 1, 0, 1],[ 0, 0, 1, 0, 1, 1, 0],[ 0, 0, 0, 1, 1, 1, 1]]*One(F);

## ...³i a matricii control al parit µii (detectare a erorii)H:=[[ 0, 0, 0, 1, 1, 1, 1],

[ 0, 1, 1, 0, 0, 1, 1],[ 1, 0, 1, 0, 1, 0, 1]]*One(F);

## Mesajul utilu:=[[1, 0, 1, 1]]*One(F);

## Mesajul transmisv:=u*G;

Print("\n G - matricea de generare a codului este \n\n");Display(G);

Print("\n H - matricea detectoare de erori este \n\n");Display(H);

Page 107: EDP 2010. ISBN 978-973-3-3370-7 Dáné Károly András Dan ...edituradp.ro/site_img/downloads/2013/04/interior-alg-comp-i.pdf · Se ³tie c , metoda lui Gauss de rezolvare a unui

3.1. UN EXEMPLU CONCRET 107

Print("\n u - mesajul util \n\n");Display(u);

Print("\n v - mesajul codificat ³i transmis \n\n");Display(v);

## ! Simularea unei erori## aici se poate modifica, pentru a testa deverse eroriv[1][4]:=1 - v[1][4];Print("\n simularea erorii ³i \n v - mesajul recepµionat \n\n");Display(v);

## Descoperirea eroriis:=H*TransposedMat(v);Print("\n s - descoperirea erorii \n\n");Display(s);

## Corectarea erorii## cifra binar  eronat  are num rul de ordine kk:=conv(s);Print("\n ...cifra recepµionat  eronat este, \n\n");Display(k);

Print("\n ...corectarea erorii, \n\n");if k > 0 thenv[1][k]:=1-v[1][k];

elsePrint("\n Mesajul probabil nu conµine erori \n\n");

fi;Display(v);

## Reconstituire mesajului original, primele 4 cifreu:=v{[1]}{[1,2,3,4]};Print("\n ...³i în sfâr³it mesajul original este \n\n");Display(u);##################################################################

Page 108: EDP 2010. ISBN 978-973-3-3370-7 Dáné Károly András Dan ...edituradp.ro/site_img/downloads/2013/04/interior-alg-comp-i.pdf · Se ³tie c , metoda lui Gauss de rezolvare a unui

108 CAPITOLUL 3. CODURI CORECTOARE DE ERORI

3.2 Corpuri �nite

E xemple de corpuri finite sunt bine cunoscute: inelele claselor de res-turi modulo p, unde p este un num r prim sunt de fapt corpuri �nite cu p

elemente. Acesta se datoreaz  faptului c  clasele de resturi nenule în acest cazsunt inversabile. Într-adev r, dac  a este nenul ³i a < p, atunci a este relativprim cu p, deci cel mai mare divizor comun al lor este (a, p) = 1. Algorit-mul extins al lui Euclid asigur  existenµa a dou  numere întregi b, c, astfel caab+ pc = 1. Trecînd la clase de resturi, rezult  ab = 1 mod (p), adic  a esteinversabil.

Concluzia este c  "numerele" dintr-o clas  de resturi de modul prim suntla fel de potrivite ca numerele raµionale, reale sau complexe în orice context încare avem de efectuat numai cele patru operaµii de baz : adunarea, sc derea,înmulµirea ³i împ rµirea. (Atenµie, analogia funcµioneaz  strict pân  la cele pa-tru operaµii amintite, ne lipse³te spre exemplu ordonarea numerelor, obi³nuit ³i speci�c  spre exemplu la numerele raµionale!)

Este oare lista Zp unde p este un num r prim, lista complet  a corpurilor�nite? R spunsul la aceast  întrebare este NU: exist  ³i corpuri cu alt num rde elemente, spre exemplu 4, 9, 8, 16 etc. (dar nu ³i cu 6 elemente!).

În subsecµiunea care urmeaz  începem aceste investigaµii, tot în spiritul "cudi�cultatea faµ -în-faµ ", adic  s  vedem mai întâi fenomenul care st  la bazaconstrucµiei corpurilor �nite.

3.2.1 O problem  de concurs în informatic 

La un concurs înformatic autorul acestei c rµi a propus urm toarea problem .

Problem  3.2.1. Se d  mulµimea formal in�nit 

F = {0, 1, a, a2, a3, a4, ...},

unde simbolul a nu este nici 0 nici 1. Presupunem c  operaµiile de adunare (+)³i de înmulµire (·) cu propriet µile lor obi³nuite pot � efectuate între elementeleacestei mulµimi F , spre exemplu a · a = a2, 1 · a = a, 0 + a = a, 0 · a = 0,a · (1 + a2) = a + a3 etc. În acest mod se genereaz  expresii algebrice, careconµin simbolul a.

Presupunem c  mai avem ³i dou  reguli speci�ce de calcul:

1 + 1 = 0

³i

a6 = a+ 1,

Page 109: EDP 2010. ISBN 978-973-3-3370-7 Dáné Károly András Dan ...edituradp.ro/site_img/downloads/2013/04/interior-alg-comp-i.pdf · Se ³tie c , metoda lui Gauss de rezolvare a unui

3.2. CORPURI FINITE 109

care afecteaz  � ³i probabil simpli�c  � aceste expresii algebrice.Se cere scrierea unui program � în orice limbaj care v  st  la dispoziµie � cares  calculeze:

• cea mai mic  valoare pozitiv  a lui n pentru care an = 1, conform acestorreguli de calcul (a0 = 1 prin convenµie), ³i

• a22 + a43, ca un element al mulµimii iniµiale F , ³i

• r dacinile din F ale ecuaµiei x2 + a · x+ a2 = 0.

Înainte de a începe discuµia soluµiei acestei probleme, se impun câteva ob-servaµii preliminare.

Observaµii 3.2.2.

• Numerele 0 ³i 1 genereaz  prin adunare ³i sc dere toate numerele întregi(³i numai acestea). Spre exemplu 1+1 = 2, 1+1+1 = 3, etc., respectiv0− 1 = −1, −1− 1 = −2, etc.

• În prima instanµ  operaµiile de adunare ³i înmulµire aplicate elementelormulµimii F conduc la expresii polinomiale de tipul

c0 + c1 · a+ c2 · a2 + . . .+ ak · ak, (3.1)

unde ci sunt numere întregi.

• Dac  µinem cont de ipoteza special  legat  de adunarea lui 1, atuncicercul gener rii numerelor se închide la 0 ³i 1. Acestea sunt singurelenumere întregi posibile. Practic numerele vor � elemente ale clasei deresturi modulo 2, dac  µinem cont ³i de structura dat  de adunarea ³iînmulµirea acestora.

• Apriori, nu este evident câtu³i de puµin, dac  operaµia de adunare înmulµimea F este sau nu operaµie intern  a mulµimii F . Ea este intern în mulµimea generat  de F cu operaµiile de adunare µi înmulµire, adic mulµimea expresiilor 3.1 (polinoamelor cu nedeterminata a, ³i coe�cienµinumere întregi sau clase de resturi modulo 2).

• Puterile lui a se pot transforma în polinoame ale nedeterminatei a. Spreexemplu a6 = a + 1, a7 = a6 · a = (a + 1) · a = a2 + a, a8 = a3 + a2,a9 = a4 + a3, a10 = a5 + a4, etc.

• Dac  facem transform rile pân  la cap t, gradele acestor polinoame nudep ³esc 5. Spre exemplu a11 = a6 + a5 = a+ 1 + a5 = a5 + a+ 1, etc.

Page 110: EDP 2010. ISBN 978-973-3-3370-7 Dáné Károly András Dan ...edituradp.ro/site_img/downloads/2013/04/interior-alg-comp-i.pdf · Se ³tie c , metoda lui Gauss de rezolvare a unui

110 CAPITOLUL 3. CODURI CORECTOARE DE ERORI

Consecinµ  3.2.3.

• Setul de coe�cienµi numerici posibili este �nit, {0, 1}, iar setulmonoamelor este de asemenea �nit, {1, a, a2, a3, a4, a5}, prin urmare setulpolinoamelor generat de F este �nit.

• În particular, mulµimea F este �nit .

Se pun acum în mod natural urm toarele întreb ri.

Probleme 3.2.4.

• Este mulµimea polinoamelor generate de mulµimea F mulµimea tuturorpolinoamelor (nenule) cu coe�cienµi din Z2 de grad cel mult 5?

• Este mulµimea F � cu elementele rescrise ca polinoame de grad cel mult5 � submulµime proprie a mulµimii tuturor polinoamelor de grad cel mult5?

S  observ m c , dac  r spunsul la prima întrebare este DA, iar la a douaeste NU, atunci ambele operaµii � adunarea ³i înmulµirea � în mulµimea Fdevin operaµii interne.

S  trecem la rezolvarea problemei 3.2.1 de pe pagina 108. Calcul m puterilesuccesive ale lui a folosind ³i regulile speciale de calcul. Obµinem urm torultabel, care con�rm  observaµiile de mai sus.

an exprimarea polinomial  vectorul coe�cienµilora0 1 (1, 0, 0, 0, 0, 0)a1 a (0, 1, 0, 0, 0, 0)a2 a2 (0, 0, 1, 0, 0, 0). . . . . . . . .a6 a+ 1 (1, 1, 0, 0, 0, 0)a7 a2 + a (0, 1, 1, 0, 0, 0). . . . . . . . .a22 a5 + a4 + a2 + 1 (1, 0, 1, 0, 1, 1). . . . . . . . .a43 a5 + a4 + a2 + a+ 1 (1, 1, 1, 0, 1, 1). . . . . . . . .a61 a5 + a4 + 1 (1, 0, 0, 0, 1, 1)a62 a5 + 1 (1, 0, 0, 0, 0, 1)

a63 1 (1, 0, 0, 0, 0, 0)

Page 111: EDP 2010. ISBN 978-973-3-3370-7 Dáné Károly András Dan ...edituradp.ro/site_img/downloads/2013/04/interior-alg-comp-i.pdf · Se ³tie c , metoda lui Gauss de rezolvare a unui

3.2. CORPURI FINITE 111

Tabelul este �nit, i.e. puterile lui a se repet  periodic!Ce se mai poate a�a din acest tabel? Iat  câteva fapte care se pot citi

direct din acest tabel (din tabelul complet, evident).

• Prima coloan  poate � utilizat  pentru a efectua u³or înmulµirile. În-mulµirile se reduc evident la adunarea ( mod 63) a exponenµilor.

• Coloana a treia poate � utilizat  pentru a efectua u³or adun rile. Acestease reduc de fapt la adunarea ( mod 2) a vectorilor.

• Propriet µi structurale pot � citite de asemenea din acest tabel: toatepolinoamele (nenule) cu coe�cienµi în Z2 de grad mai mic decât 6 aparîn acest tabel!

� Prin urmare r spunsul la întrebarea 3.2.4 de pe pagina 110 este DA:toate cele 63 de polinoame nenule de grad mai mic decât 6 apar caputeri ale lui a!

� iar r spunsul la întrebarea 3.2.4 de pe pagina 110 este NU: mulµimeaF coincide ³i ea cu toate aceste polinoame!

• Cel mai important îns  este urm torul fapt, citit tot din tabel: Fiecareelement al mulµimii F are un invers (multiplicativ)! Într-adev r a−1 =a62, etc. (deoarece ak · a63−k = a63 = 1, k = 1, 2, . . . , 62)

Într-un mediu de programare adecvat întocmirea acestui tabel este simpl .Iat  o variant  scris  în Singular, apoi o variant  scris  în GAP.

link l=":a outfile"; // fi³ier outfile mod "append"ring F=(2,a),x,dp; // inel polinoame (Z_2[a])[x]minpoly=a^6+a+1; // "polinomul minimal" pt. "a"for( int i=0; i <= 63; i=i+1 ) // ciclu, exponentul lui "a"{ // string

write(l,"a^"+string(i)+" = "+string(a^i)); // - a^i -} // outfileclose(l); // închide fi³ierul outfile

Iat  ³i rezultatul rul rii programului scris în Singular, a�at în �³ierul numit"out�le". Acesta se poate deschide cu orice editor de texte.

Page 112: EDP 2010. ISBN 978-973-3-3370-7 Dáné Károly András Dan ...edituradp.ro/site_img/downloads/2013/04/interior-alg-comp-i.pdf · Se ³tie c , metoda lui Gauss de rezolvare a unui

112 CAPITOLUL 3. CODURI CORECTOARE DE ERORI

a^0 = 1a^1 = (a)a^2 = (a2)a^3 = (a3)a^4 = (a4)a^5 = (a5)a^6 = (a+1)a^7 = (a2+a)a^8 = (a3+a2)a^9 = (a4+a3)a^10 = (a5+a4)a^11 = (a5+a+1)a^12 = (a2+1)a^13 = (a3+a)a^14 = (a4+a2)a^15 = (a5+a3)a^16 = (a4+a+1)a^17 = (a5+a2+a)a^18 = (a3+a2+a+1)a^19 = (a4+a3+a2+a)a^20 = (a5+a4+a3+a2)a^21 = (a5+a4+a3+a+1)a^22 = (a5+a4+a2+1)a^23 = (a5+a3+1)a^24 = (a4+1)a^25 = (a5+a)a^26 = (a2+a+1)a^27 = (a3+a2+a)a^28 = (a4+a3+a2)a^29 = (a5+a4+a3)a^30 = (a5+a4+a+1)a^31 = (a5+a2+1)

a^32 = (a3+1)a^33 = (a4+a)a^34 = (a5+a2)a^35 = (a3+a+1)a^36 = (a4+a2+a)a^37 = (a5+a3+a2)a^38 = (a4+a3+a+1)a^39 = (a5+a4+a2+a)a^40 = (a5+a3+a2+a+1)a^41 = (a4+a3+a2+1)a^42 = (a5+a4+a3+a)a^43 = (a5+a4+a2+a+1)a^44 = (a5+a3+a2+1)a^45 = (a4+a3+1)a^46 = (a5+a4+a)a^47 = (a5+a2+a+1)a^48 = (a3+a2+1)a^49 = (a4+a3+a)a^50 = (a5+a4+a2)a^51 = (a5+a3+a+1)a^52 = (a4+a2+1)a^53 = (a5+a3+a)a^54 = (a4+a2+a+1)a^55 = (a5+a3+a2+a)a^56 = (a4+a3+a2+a+1)a^57 = (a5+a4+a3+a2+a)a^58 = (a5+a4+a3+a2+a+1)a^59 = (a5+a4+a3+a2+1)a^60 = (a5+a4+a3+1)a^61 = (a5+a4+1)a^62 = (a5+1)a^63 = 1

OutputLogTo("logfile"); // define³te fi³ier "logfile"a:=Indeterminate(GF(2),"a");; // variabila "a", peste Z_2f:=a^6+a+1;; // define³te poinomul ffor i in [0..63] do // ciclu, exponentul lui "a"

elem:=a^i mod f; // calculeaz  a^i mod fDisplay(elem); // afi³eaz 

od; // (scrie ³i în fi³ier)OutputLogTo(); // închide fi³ierul "logfile"

Page 113: EDP 2010. ISBN 978-973-3-3370-7 Dáné Károly András Dan ...edituradp.ro/site_img/downloads/2013/04/interior-alg-comp-i.pdf · Se ³tie c , metoda lui Gauss de rezolvare a unui

3.2. CORPURI FINITE 113

Rezultatul rul rii variantei programului de listare în mediul de progra-mare GAP, a�at în �sierul numit "log�le" este reprodus mai jos. (Constanta"Z(2)^0" din acest �³ier, preferat  de GAP, trebuie înlocuit  cu varianta maipuµin exact  dar mult mai prietenoas  "1".)

Z(2)^0 = Z(2)^0a = aa^2 = a^2a^3 = a^3a^4 = a^4a^5 = a^5a^6 = a+Z(2)^0a^7 = a^2+aa^8 = a^3+a^2a^9 = a^4+a^3a^10 = a^5+a^4a^11 = a^5+a+Z(2)^0a^12 = a^2+Z(2)^0a^13 = a^3+aa^14 = a^4+a^2a^15 = a^5+a^3a^16 = a^4+a+Z(2)^0a^17 = a^5+a^2+aa^18 = a^3+a^2+a+Z(2)^0a^19 = a^4+a^3+a^2+aa^20 = a^5+a^4+a^3+a^2a^21 = a^5+a^4+a^3+a+Z(2)^0a^22 = a^5+a^4+a^2+Z(2)^0a^23 = a^5+a^3+Z(2)^0a^24 = a^4+Z(2)^0a^25 = a^5+aa^26 = a^2+a+Z(2)^0a^27 = a^3+a^2+aa^28 = a^4+a^3+a^2a^29 = a^5+a^4+a^3a^30 = a^5+a^4+a+Z(2)^0a^31 = a^5+a^2+Z(2)^0

a^32 = a^3+Z(2)^0a^33 = a^4+aa^34 = a^5+a^2a^35 = a^3+a+Z(2)^0a^36 = a^4+a^2+aa^37 = a^5+a^3+a^2a^38 = a^4+a^3+a+Z(2)^0a^39 = a^5+a^4+a^2+aa^40 = a^5+a^3+a^2+a+Z(2)^0a^41 = a^4+a^3+a^2+Z(2)^0a^42 = a^5+a^4+a^3+aa^43 = a^5+a^4+a^2+a+Z(2)^0a^44 = a^5+a^3+a^2+Z(2)^0a^45 = a^4+a^3+Z(2)^0a^46 = a^5+a^4+aa^47 = a^5+a^2+a+Z(2)^0a^48 = a^3+a^2+Z(2)^0a^49 = a^4+a^3+aa^50 = a^5+a^4+a^2a^51 = a^5+a^3+a+Z(2)^0a^52 = a^4+a^2+Z(2)^0a^53 = a^5+a^3+aa^54 = a^4+a^2+a+Z(2)^0a^55 = a^5+a^3+a^2+aa^56 = a^4+a^3+a^2+a+Z(2)^0a^57 = a^5+a^4+a^3+a^2+aa^58 = a^5+a^4+a^3+a^2+a+Z(2)^0a^59 = a^5+a^4+a^3+a^2+Z(2)^0a^60 = a^5+a^4+a^3+Z(2)^0a^61 = a^5+a^4+Z(2)^0a^62 = a^5+Z(2)^0a^63 = Z(2)^0

Page 114: EDP 2010. ISBN 978-973-3-3370-7 Dáné Károly András Dan ...edituradp.ro/site_img/downloads/2013/04/interior-alg-comp-i.pdf · Se ³tie c , metoda lui Gauss de rezolvare a unui

114 CAPITOLUL 3. CODURI CORECTOARE DE ERORI

Soluµia problemei 3.2.1 de pe pagina 108.

• Cea mai mic  valoare pozitiv  pentru n pentru care an = 1 este (conformlistelor de mai sus)

63.

• În mulµimea F avem (conform listelor, veri�caµi)

a22 + a43 = a.

• Dac  observ m c  22 + 43 = 65 = 63 + 2, atunci putem scrie a22 ·a43 = a2. Aceasta ne aminte³te de relaµiile lui Viete, privind r d cinile³i coe�cienµii unei ecuaµii algebrice. Calculul

(x− a22) · (x− a43) = x2 − (a22 + a43) · x+ a22 · a43

= x2 − a · x+ a2

= x2 + a · x+ a2,

arat  c  a22 ³i a43 sunt r d cini ale ecuaµiei date. Faptul c  nu mai exist ³i alte soluµii rezult  prin testarea tuturor celorlalte elemente ale lui F ,sau... din propoziµia de mai jos!

Propriet µile mulµimii F , constatate mai sus, pot � formulate condensat într-opropoziµie.

Propoziµie 3.2.5. Mulµimea F cu operaµiile de adunare ³i înmulµire de�niteca mai sus formeaz  o structur  de corp (�nit).

Deoarece într-un corp orice element nenul este inversabil, nu exist  divizoriai lui 0 (de ce?), deci din egalitatea x2+a ·x+a2 = (x−a22) · (x−a43) = 0 varezulta ori x = a22 ori x = a43. Reamintim, c  se nume³te divizor al lui 0 unelement nenul pentru care exist  un alt element nenul astfel ca produsul celordou  este nul.

Ca fapt divers, includem aici ³i comanda Singular (continuare a comenzilorde listare) pentru descompunerea polinomului/rezolvarea ecuaµiei x2 + a · x+a2 = 0, precum ³i rezultatul întors de aceast  comand . Se recunosc � conformlistei puterilor lui a � cele dou  r d cini a43 respectiv a22!

factorize(x^2+a*x+a^2);[1]:

_[1]=1_[2]=x+(a5+a4+a2+a+1)_[3]=x+(a5+a4+a2+1)

[2]:1,1,1

Page 115: EDP 2010. ISBN 978-973-3-3370-7 Dáné Károly András Dan ...edituradp.ro/site_img/downloads/2013/04/interior-alg-comp-i.pdf · Se ³tie c , metoda lui Gauss de rezolvare a unui

3.2. CORPURI FINITE 115

Întrebarea natural  care se pune acum este: de ce relaµia special  a6 = a+1presupus  pentru simbolul a a avut pân  la urm  drept consecinµ  proprietateastructural  puternic  a lui F?

R spunsul în sine este simplu:

Fapt 3.2.6. În inelul de polinoame Z2[a] polinomul a6−a− 1 este ireductibil !

Se pune acum urm toarea întrebare de fond. Cum pot � construite astfelde mulµimi F , care s  funcµioneze ca ³i corpuri de numere �nite? R spunsul laaceast  întrebare cere dezvoltarea ideilor matematice care se ascunde în spateleacestui mecanism... teoria corpurilor �nite ³i a polinoamelor cu coe�cienµi înaceste corpuri.

3.2.2 Construirea corpurilor �nite

Fie p un num r prim. Clasele de resturi modulo p, notat Zp formeaz  cuadunarea ³i înmulµirea natural  (de�nite prin intermediul reprezentanµi arbi-trar ale³i) un corp. Datorit  faptului c  p este num r prim, �ecare elementnenul din Zp are un invers. Avem deci exemple de corpuri cu un num r �nitde elemente, mai exact pentru �ecare num r prim p avem un corp �nit cu pelemente notat ³i Fp sau GF(p) (Galois Field, în onoarea lui Everist Galois).

Pe de alt  parte propoziµia 1.1.32 de pe pagina 32 este o modalitate degenerare de corpuri: inelul factor al unui inel (comutativ, unitar, f r  divizoriai lui zero) cu un ideal maximal al s u este corp.

S  consider m deci un corp k. Inelul k[x] al polinoamelor de o nedetermi-nat  x, cu coe�cienµi în k, este un inel potrivit pentru a construi un corp �trebuie s  alegem doar un inel maximal în el. Pe de alt  parte, inelul k[x] esteeuclidian (funcµioneaz  teorema/algoritmul împ rµirii cu rest al polinoamelor,cu restul de grad minim unic!), deci este ³i principal. A³adar orice ideal în k[x]este ideal principal (vezi propoziµia 1.1.19 de pe pagina 26), deci este generatde un polinom.

S  alegem un polinom ireductibil f (nenul). Fie idealul I = (f) formatdin toate polinoamele divizibile cu f . A�rm m, c  idealul I este maximal!Într-adev r, Fie J , un ideal mai mare, I ⊂ J . El trebuie s  �e deasemeneaideal principal, deci J = (g). Rezult  c  f ∈ J deci f = gh. Acum deoarecef este ireductibil g nu poate � un divizor propriu al lui f , deci ori g = 1 (sauorice constant  nenul ) ori g = f (sau g = cf , unde c este o constant  nenul din k). A³adar, ori J = (1) = k[x] ori J = (f) = I, deci I = (f) este maximal.

Am demonstrat a³adar c  inelul factor K = k[x]/(f), unde f este unpolinom ireductibil, este un corp! Fie acum k unul din corpurile �nite k = Fp,unde p este un num r prim, ³i �e f un polinom ireductibil de grad n ≥ 2 cucoe�cienµi din k (presupunem c  exist  un asemenea polinom). Inelul factor

Page 116: EDP 2010. ISBN 978-973-3-3370-7 Dáné Károly András Dan ...edituradp.ro/site_img/downloads/2013/04/interior-alg-comp-i.pdf · Se ³tie c , metoda lui Gauss de rezolvare a unui

116 CAPITOLUL 3. CODURI CORECTOARE DE ERORI

�ind format de clasele de resturi, elementele acestuia sunt reprezentate deresturile posibile ale împ rµirilor cu polinomul f , adic  sunt toate polinoamelede grad cel mult n − 1. Num rul acestora este exact pn (un polinom de gradcel mult n− 1 are exact n coe�cienµi, ale³i independent unii de alµii din cele pelemente ale lui Fp). În concluzie, corpul K = Fp[x]/(f) are pn elemente, decieste un corp �nit! Dac  not m clasa de echivalenµ  a lui x cu a se vede c  Keste un k spaµiu vectorial în care {1, a, a2, . . . , an−1} este o baz .

Avem ³i f(a) = 0, deci polinomul f are o r d cin  în K. Se vede c  k esteun subcorp al lui K. Spunem c  K este o extensie a lui k.

Fie b ∈ K arbitrar. Elementele 1, b, b2, . . . , bn nu pot � liniar independente,deci exist  c0, c1, . . . , cn ∈ k nu toate nule astfel ca c0+c1b+c2b

2+. . .+cnbn = 0,

altfel spus polinomul g = c0 + c1x+ c2x2 + . . .+ cnx

n are în K r d cina b. Unasemenea polinom se nume³te polinom anulator pentru b. Mulµimea acestoraeste un ideal în inelul k[x], care este inel Euclidian, deci principal, de underezult  c  acest ideal este generat de un polinom gb.

Polinomul minimal al lui a în k[x] este chiar f ! Într-adev r, f este anulatorpentru a, deci divizibil cu fa ∈ k[x], dar f este ireductibil deci fa = f .

Consideraµiile de mai sus constituie demonstraµia urm toarei propoziµii.

Propoziµie 3.2.7. Fie f un polinom ireductibil de grad n ≥ 2 în inelul Zp[x],unde p este un num r prim. Atunci inelul factor Zp[x]/(f) este un corp �nit,cu pn elemente.

Se pune imediat urm toarea întrebare: cât de general  este aceast  con-strucµie? R spunsul este fascinant. Toate corpurile �nite se pot construi înmodul ar tat mai sus! Di�cultatea a³adar se mut  la problema factoriz rii ³i lastabilirea "primalit µii", polinoamelor cu coe�cienµi în Fp respectiv a gener riide polinoame ireductibile de grad dat n!

Pentru ca raµionamentul de mai sus s  nu �e gol de conµinut � în lipsapolinoamelor ireductibile � vom da câteva exemple concrete.

Corpul GF(22)

Corpul coe�cienµilor este F2. Avem nevoie de un polinom ireductibil de gradul2. Polinoame de grad 2 sunt patru: x2 = x·x, x2+1 = (x+1)2, x2+x = x·(x+1)³i x2+x+1 = x·(x+1)+1. Acesta din urm  este ireductibil! Într-adev r, dac ar � reductibil, ar avea doi factori de gradul unu, deci ar avea dou  r d ciniîn F2 = {0, 1}. Îns , nici 0, nici 1 nu este r d cin  pentru acest polinom(substituµia acestora ne convinge imediat), a³adar polinomul este ireductibil.

S  not m clasa de echivalenµ  a lui x în inelul factor F2[x]/(x2 + x+1) cu

α. A³adar α2 + α+ 1 = 0 sau α2 = α+ 1 sau α · (α+ 1) = 1 etc.

Page 117: EDP 2010. ISBN 978-973-3-3370-7 Dáné Károly András Dan ...edituradp.ro/site_img/downloads/2013/04/interior-alg-comp-i.pdf · Se ³tie c , metoda lui Gauss de rezolvare a unui

3.2. CORPURI FINITE 117

Corpul de 22 = 4 elemente astfel generat se noteaz  GF(22) ³i el areurm toarele elemente: {0, 1, α, α + 1}, corespunz toare tuturor resturilor degrad cel mult 1.

S  mai consemn m, c  α3 = α2 · α = (α + 1) · α = α2 + α = 1, ceea ceera de a³teptat, deoarece în grupul multiplicativ al unui corp �nit � conformteoremei lui Lagrange � ordinul oric rui element este un divizor al ordinuluigrupului, în cazul nostru acesta �ind 4− 1 = 3. Avem tabela

1 = 1a = aa^2 = a+1----------------a^3 = 1

Aceast  tabel  ne poate servi la efectuarea operaµiilor: prima coloan  estepropice pentru a face înmulµirile (adunarea modulo 3 a exponenµilor), iar ceade a doua pentru a face adun rile (adunarea modulo 2 a coe�cienµilor poli-noamelor în α).

Corpul GF(23)

Corpul coe�cienµilor este tot F2. Avem nevoie acum de un polinom ireductibilde gradul 3. Polinoame de grad 3 sunt opt: x3 + x2, x3 + x2 + 1, x3 + x2 + x,x3 + x2 + x+ 1, x3 + x, x3 + x+ 1, x3 + 1 ³i x3.

Dac  un polinom de gradul 3 este reductibil, atunci are un factor de gradulunu, deci are o r d cin . Prin testarea direct  a celor opt polinoame existentedepist m dou  dintre ele care nu au r d cini în F2: x3 + x + 1 respectivx3 + x2 + 1.

Not m clasa de echivalenµ  a lui x în inelul factor F2[x]/(x3 + x+1) cu α.

A³adar α3 + α+ 1 = 0 sau α3 = α+ 1 sau α · (α2 + 1) = 1 etc.

Corpul de 23 = 8 elemente astfel generat se noteaz  GF(23). El are urm -toarele elemente: {0, 1, α, α+ 1, α2, α2 + 1, α2 + α, α2 + α+ 1}, corespunz tortuturor resturilor de grad cel mult 2 posibili.

S  mai consemn m, c  ar � de a³teptat α7 = 1, deoarece în grupul mul-tiplicativ al corpului �nit � conform teoremei lui Lagrange � ordinul oric ruielement este un divizor al ordinului grupului, în cazul nostru 8−1 = 7. Putemefectua calculul lui α7 manual, dar mai elegant este s  apel m la un mediu deprogramare adecvat � GAP.

Page 118: EDP 2010. ISBN 978-973-3-3370-7 Dáné Károly András Dan ...edituradp.ro/site_img/downloads/2013/04/interior-alg-comp-i.pdf · Se ³tie c , metoda lui Gauss de rezolvare a unui

118 CAPITOLUL 3. CODURI CORECTOARE DE ERORI

1 = 1a = aa^2 = a^2a^3 = a+1a^4 = a^2+aa^5 = a^2+a+1a^6 = a^2+1--------------------a^7 = 1

Am substituit elementul unitate "Z(2)^0" cu mai laconicul 1. Tabela estede fapt tabela condensat  a operaµiilor: prima coloan  ne serve³te pentruînmulµiri (adunarea modulo 7 a exponenµilor), iar cea de a doua pentru adun ri(adunarea modulo 2 a coe�cienµilor polinoamelor în α).

Ce s-ar � întâmplat dac  am � ales cel lalt polinom ireductibil, x3+x2+1?S  observ m c  cele dou  polinoame sunt reciproce � inversele r d cinilor unuiasunt r d cini ale celuilalt. A³adar β = 1/α = 1 + α2 = α6 este o r d cin  aacestui polinom.S  not m f = x3 + x+ 1 ∈ Z2[x] ³i g = x3 + x2 + 1 ∈ Z2[x]. Fie α o r d cin a polinomului f , deci α3 + α+ 1 = 0 respectiv �e β o r d cin  a polinomuluig, deci β3 + β2 + 1 = 0. Fie F = Z2[x]/(f) = Z2[α] ³i G = Z2[x]/(g) = Z2[β].S  construim un izomor�sm explicit între F ³i G.

�tim deja c  F = {0, 1, α, α2, . . . , α6} ³i s  observ m mai întâi c  avem³i G = {0, 1, β, β2, . . . , β6}, respectiv la fel ca pentru α avem ³i β7 = 1. Overi�care simpl  arat  c  polinomale f ³i g se descompun în F astfel:

f = (x− α) · (x− α2) · (x− α4)

g = (x− α3) · (x− α6) · (x− α5).

Sursa de inspiraµie pentru aceste descompuneri r mîne pentru momentnedezv luit , va � divulgat  mai târziu (în subsecµiunea 3.2.6, de pe pagina127). În corpul G avem descompunerea:

g = (x− β) · (x− β2) · (x− β4)

f = (x− β3) · (x− β6) · (x− β5).

Un izomor�sm de corpuri las  polinoamele cu coe�cienµii în Z2 invariante,deci duce o r d cin  a unui polinom tot într-o r d cin  a aceluia³i polinom. Pede alt  parte r d cinile unui polinom ireductibil "nu se disting" între ele, deci or d cin  a lui f (ca polinom cu r d cini din F ) poate � pus în corespondenµ cu oricare dintre r d cinile lui f (ca polinom cu r d cini din G). A³adarcorespondenµa

Page 119: EDP 2010. ISBN 978-973-3-3370-7 Dáné Károly András Dan ...edituradp.ro/site_img/downloads/2013/04/interior-alg-comp-i.pdf · Se ³tie c , metoda lui Gauss de rezolvare a unui

3.2. CORPURI FINITE 119

α −→ β3

(ca ³i celelalte dou  posibilit µi cu β5 ³i β6) are ³ansa de a genereaz  unizomor�sm φ : F −→ G, prin relaµia

φ(αk) = β3k mod 7, k = 1 . . . 6,

� relaµie obligatorie pentru a transforma corect înmulµirea din F . Evidentφ(0) = 0, prin de�niµie. S  menµion m aici c  toate r d cinile lui f dinF sunt generatoarele grupului multiplicativ al acestuia, precum ³i r d cinileacestuia din G sunt generatoare pentru grupul multiplicativ al acestuia dinurm . Interesant este îns  c  φ se comport  corect ³i faµ  de adunare, adic φ(αk + αl) = φ(αk) + φ(αl), pentru orice k, l! L s m pentru moment demon-straµia general  a acestui fapt, în acest caz particular cititorul poate face ver-i�carea manual  sau asistat  de calculator. Reproducem aici numai tabele cuajutorul c rora aceste veri�c ri sunt u³oare.

a^0 = 1a^1 = aa^2 = a^2a^3 = a+1a^4 = a^2+aa^5 = a^2+a+1a^6 = a^2+1----------------a^7 = 1

b^0 = 1b^1 = bb^2 = b^2b^3 = b^2+1b^4 = b^2+b+1b^5 = b+1b^6 = b^2+b----------------b^7 = 1

Corpul GF(24)

Consider m polinoamele cu coe�cienµi din F2. Ne trebuie un polinom ire-ductibil de gradul 4. Polinoame de grad 4 sunt 16, invit m cititorul s  leenumere.

Dac  un polinom de gradul 4 este reductibil, atunci are un factor de gradulunu (deci are o r d cin  în F2), sau un factor de gradul doi. Prin testareadirect  a divizibilit µii celor 16 polinoame cu polinoamele de grad unu ³i doi,descoperim polinoamele ireductibile de grad patru: x4 + x + 1, x4 + x3 + 1respectiv x4 + x3 + x2 + x+ 1.

S  not m clasa de echivalenµ  a lui x în inelul factor F2[x]/(x4 + x+1) cu

α. A³adar α4 + α+ 1 = 0 sau α4 = α+ 1 sau α · (α3 + 1) = 1 etc.Inelul factor Z2[α] este un corp de 24 = 16 elemente, se noteaz  GF(24) ³i

are urm toarele elemente: GF(24) = {c0+c1α+c2α2+c3α

3 | c0, . . . , c3 ∈ Z2},adic  toate resturilor de grad cel mult 3 posibili.

Page 120: EDP 2010. ISBN 978-973-3-3370-7 Dáné Károly András Dan ...edituradp.ro/site_img/downloads/2013/04/interior-alg-comp-i.pdf · Se ³tie c , metoda lui Gauss de rezolvare a unui

120 CAPITOLUL 3. CODURI CORECTOARE DE ERORI

1 = 1a = aa^2 = a^2a^3 = a^3a^4 = a+1a^5 = a^2+aa^6 = a^3+a^2a^7 = a^3+a+1a^8 = a^2+1a^9 = a^3+aa^10 = a^2+a+1a^11 = a^3+a^2+aa^12 = a^3+a^2+a+1a^13 = a^3+a^2+1a^14 = a^3+1--------------------a^15 = 1

Tabelul de mai sus conµine lista puterilor lui α. Am substituit elementul uni-tate "Z(2)^0" ³i aici cu 1. Lista arat  c  ordinul elementului α în grupulmultiplicativ al elementelor nenule, (grup ciclic de ordin 24 − 1 = 15) este 15,deci este un generator al grupului.

Dac  am � ales polinomul x4 + x3 + 1 pentru generarea corpului de 16elemente, situaµia era similar . Dac  îns  alegem polinomul ireductibil x4 +x3+x2+x+1, clasa de echivalenµ  a lui x notat  α nu va mai � un generatoral grupului multiplicativ!

1 = 1a = aa^2 = a^2a^3 = a^3a^4 = a^3+a^2+a+1--------------------a^5 = 1

În schimb tabelul de mai jos arat  c  α + 1 este un generator al grupuluimultiplicativ al corpului. Acest element este o r d cin  a polinomului x4 +x3 + 1, ceea ce se veri�c  simplu prin calcul direct.

Page 121: EDP 2010. ISBN 978-973-3-3370-7 Dáné Károly András Dan ...edituradp.ro/site_img/downloads/2013/04/interior-alg-comp-i.pdf · Se ³tie c , metoda lui Gauss de rezolvare a unui

3.2. CORPURI FINITE 121

(a+1)^0 = 1(a+1)^1 = a+1(a+1)^2 = a^2+1(a+1)^3 = a^3+a^2+a+1(a+1)^4 = a^3+a^2+a(a+1)^5 = a^3+a^2+1(a+1)^6 = a^3(a+1)^7 = a^2+a+1(a+1)^8 = a^3+1(a+1)^9 = a^2(a+1)^10 = a^3+a^2(a+1)^11 = a^3+a+1(a+1)^12 = a(a+1)^13 = a^2+a(a+1)^14 = a^3+a-----------------------(a+1)^15 = 1

Corpul GF(26)

Acest corp este chiar corpul prezentat în secµiunea 3.2.1 de pe pagina 108! Totce avem de f cut este s  veri�c m faptul c  polinomul x6 + x+ 1 ∈ Z2[x] esteireductibil. Gradul polinomului �ind mic, testarea tuturor polinoamelor degrad cel mult trei ne convinge de ireductibilitate. În plus, clase de echivalenµ a necunoscutei este un generator al grupului multiplicativ al corpului.

Corpul GF(32)

Corpul de coe�cienµi este F3 = {−1, 0, 1} (1 + 1 = −1). Avem nevoie de unpolinom ireductibil de gradul 2. Polinoame de grad 2 sunt 18 = (3 + 3 · 2) · 2.Polinoamele reductibile sunt: ±x2 = (±x) · (±x), ±x · (x ± 1) = ±x2 ± x,±(x± 1) · (x± 1) = ±(x2±x+1),±(x2− 1). A³adar polinoamele x2+x− 1 ³ix2 + 1 sunt ireductibile (Ele nu se anuleaz  pentru nici unul dintre numerele−1, 0, 1).

Alegem unul dintre aceste polinoame, spre exemplu x2+1. S  not m clasade echivalenµ  a lui x în inelul factor F3[x]/(x

2 + 1) cu i. A³adar i2 + 1 = 0sau i2 = −1.

Corpul de 32 = 9 elemente generat se noteaz  GF(32) ³i are urm toareleelemente: {−1, 0, 1, i, i ± 1,−i,−i ± 1}, corespunz toare tuturor resturilor degrad cel mult 1.

S  calcul m ordinul elementului i în grupul multiplicativ al corpului. Eleste doar 4, oarecum conform a³tept rilor. S  calcul m ³i ordinul lui 1 + i. El

Page 122: EDP 2010. ISBN 978-973-3-3370-7 Dáné Károly András Dan ...edituradp.ro/site_img/downloads/2013/04/interior-alg-comp-i.pdf · Se ³tie c , metoda lui Gauss de rezolvare a unui

122 CAPITOLUL 3. CODURI CORECTOARE DE ERORI

este maximal, adic  8.

i^0 = 1i^1 = ii^2 = -1i^3 = -i----------i^4 = 1

(1+i)^0 = 1(1+i)^1 = i+1(1+i)^2 = -i(1+i)^3 = -i+1(1+i)^4 = -1(1+i)^5 = -i-1(1+i)^6 = i(1+i)^7 = i-1----------------(1+i)^8 = 1

3.2.3 Caracteristica unui corp �nit

În secµiunea precedent  am dat o modalitate general  de construcµie a cor-purilor �nite.

S  observ m c  pasul de construcµie se poate aplica în lanµ: odat  construitun corp, putem considera polinoame cu coe�cienµi în acest corp, apoi putemc uta polinoame ireductibile peste acest corp, ³i construcµia se repet .

Se pune întrebarea natural , cât de general  este aceast  construcµie, dintretoate corpurile �nite câte se pot construi în acest mod?

R spunsul la aceast  întrebare este simplu, dar argumentaµia puµin mai lung .Pentru �ecare num r prim p ³i num r natural n ≥ 2 exist  un singur corp cupn elemente!

Începînd cu aceast  secµiune vom începe s  parcurgem deci drumul oare-cum invers celui parcurs pentru construirea corpurilor �nite: din propriet µilestructurale ale corpurilor �nite vom deduce existenµa ³i unicitatea (pâna laizomor�sm) a corpurilor cu pn elemente.

Fie deci F un corp �nit. Cum orice corp conµine 0 (elementul neutru laadunare) ³i 1 (elementul neutru la înmulµire) care difer  între ele (altfel corpular avea un singur element, ³i deci numai o singur  operaµie, caz exclus ca �indneinteresant), putem s  c ut m cel mai mic subcorp, care conµine aceste dou elemente.

Page 123: EDP 2010. ISBN 978-973-3-3370-7 Dáné Károly András Dan ...edituradp.ro/site_img/downloads/2013/04/interior-alg-comp-i.pdf · Se ³tie c , metoda lui Gauss de rezolvare a unui

3.2. CORPURI FINITE 123

S  începem cu adunarea. Avem

1 = 1 · 1,1 + 1 = 2 · 1,

1 + 1 + 1 = 3 · 1,...

1 + 1 + . . .+ 1︸ ︷︷ ︸n termeni

= n · 1.

Acest ³ir de elemente trebuie s  �e �nit, deci la un moment dat apar repetiµiide valori. Dac  r · 1 = s · 1, r < s, atunci avem 0 = (s − r) · 1. Este u³or dev zut de aici c  mulµimea I = {n ∈ Z |n · 1 = 0 este un ideal (nenul!) în Z((−n) · 1 = −(n · 1)). Inelul întregilor este inel principal, deci acest ideal esteformat din multiplii unui num r p. Dac  p = r · s, unde r ³i s sunt divizoriproprii, atunci 0 = p · 1 = (rs) · 1 = (r · 1) · (s · 1) ³i cum corpul nu aredivizori ai lui zero avem r · 1 = 0 sau s · 1 = 0, adic  r sau s este multiplual lui p, ceea ce este contradicµie. Rezult  deci c  p este num r prim. Din(nm) · 1 = (n · 1) · (m · 1) rezult  c  φ : Zp −→ F , φ(n) = n · 1 este unhomomor�sm de corpuri. Acest homomor�sm este injectiv, a³a cum rezult din chiar raµionamentul de mai sus. De altfel orice homomor�sm de corpurieste injectiv. Într-adev r, dac  φ(a) = φ(b), rezult  c  φ(a − b) = 0. Dac c = a − b = 0 atunci 1 = φ(1) = φ(c · c−1 = φ(c) · φ(c−1 = 0, ceea ce este ocontradicµie.

A³adar Zp poate � privit ca un subcorp al corpului F . Din toate acestease desprinde urm toarea de�niµie.

De�niµie 3.2.8. Fie F un corp �nit. Subcorpul generat de 1, izomorf cu Zp,unde p este num r prim, se nume³te subcorpul prim al lui F . Num rul prim pse nume³te caracteristica corpului F .

3.2.4 Grupul multiplicativ al unui corp �nit

Mai întâi s  facem o observaµie important .

Observaµie 3.2.9. Orice corp �nit este spaµiu vectorial peste corpul s u prim.Mai general, orice corp este spaµiu vectorial peste orice subcorp al s u.

Demonstraµia acestor fapte este imediat . Aceast  simpl  observaµie îns are o consecinµ  important .

Consecinµ  3.2.10. Num rul elementelor unui corp �nit este o putere a unuinum r prim, pn. Ordinul grupului multiplicativ al unui corp �nit este pn − 1.

Page 124: EDP 2010. ISBN 978-973-3-3370-7 Dáné Károly András Dan ...edituradp.ro/site_img/downloads/2013/04/interior-alg-comp-i.pdf · Se ³tie c , metoda lui Gauss de rezolvare a unui

124 CAPITOLUL 3. CODURI CORECTOARE DE ERORI

Într-adev r, Fie Fp corpul prim al corpului F , unde p este num r prim.Alegem o baz  a lui F , {a1, a2, . . . , an}. Num rul elementelor spaµiului vecto-rial F peste Fp este evident pn. Grup multiplicativ al lui F este F ∗ = F \ {0},deci are ordinul pn − 1.

Conform teoremei lui Lagrange, ordinul �ec rui element al grupului multi-plicativ al lui F este un divizor al ordinului grupului, deci dac  not m q = pn,atunci pentru orice element a al lui F ∗ avem

aq−1 = 1.

A³adar orice element nenul al corpului F este r d cin  a polinomuluixq−1 − 1, cu coe�cienµi în Fp. Situaµia speci�c  aici este faptul c  o ecuaµiepolinomial  cu coe�cienµi într-un corp nu poate avea mai multe r d cini decâtgradul polinomului. Într-adev r, conform teoremei lui Bezout, dac  un poli-nom de grad n are o r d cin  a, atunci ele este divizibil cu x − a, ³i celelalter d cini ale sale sunt r d cini ale câtului împ rµirii cu x− a, deci r d cini aleunui polinom de grad n− 1.

Consecinµa acestei situaµii speci�ce este faptul c  grupul multiplicativ alunui corp are o structur  mai simpl , ³i anume este un grup ciclic. S  ar t macest fapt.

Lem  3.2.11. Dac  un grup �nit comutativ G are n elemente, ³i pentru �ecaredivizor al acestuia, m|n, ecuaµia xm − 1 = 0 are exact m soluµii în G, atuncigrupul G este ciclic.

Demonstraµie. Mai întîi �e n = pk. Atunci este clar c  trebuie s  avem unelement de ordin pk în grup, în caz contrar toate cele n = pk > pk−1 elementeleale grupului ar � r d cini ale ecuaµiei xp

k−1 −1 = 0, ceea ce contrazice ipoteza.Fie acum pk|n. Soluµiile ecuaµiei xpk = 1 în G formeaz  un subgrup, deci

avem un grup cu un num r de elemente putere a unui num r prim ³i careevident veri�c  ipoteza. Conform celor de mai sus acest subgrup este ciclic.Fie acum n = pk11 · pk22 · . . . · pkmm descompunerea lui n în factori primi dis-tincµi. Conform celor de mai sus exist  în G elementele a1, a2, . . . am de ordink1, k2, . . . , km respectiv. Elementul a1 · a2 · . . . · am are ordinul n. Într-adev r,s  observ m dac  a, b ∈ G sunt dou  elemente de ordin p, q respectiv dingrupul comutativ G, astfel ca (p, q) = 1, atunci elementul ab are ordinul pq.Acest lucru se vede astfel. Fie d ordinul elementului ab, deci (ab)d = 1. Dar(ab)pq = (ap)q · (bq)p = 1 · 1 = 1, deci d|pq.

Pe de alt  parte putem scrie ³i 1 = (ab)d = ((ab)d)p = (ap)d · bpd = bpd deunde q|pd. Dar (p, q) = 1 deci q|d. Similar p|d, ³i din nou datorit  faptuluic  (p, q) = 1 rezult  c  pq|d. Avem deci d = pq. Aplicând acest fapt în lanµrezult  în �nal c  grupul G are un generator, deci este ciclic.

Page 125: EDP 2010. ISBN 978-973-3-3370-7 Dáné Károly András Dan ...edituradp.ro/site_img/downloads/2013/04/interior-alg-comp-i.pdf · Se ³tie c , metoda lui Gauss de rezolvare a unui

3.2. CORPURI FINITE 125

Putem enunµa deci propoziµia urm toare.

Propoziµie 3.2.12. Grupul multiplicativ al unui corp �nit cu q = pn elementeeste ciclic ³i are q − 1 elemente.

De�niµie 3.2.13. Un generator al grupului multiplicativ ciclic al unui corp�nit F se nume³te element primitiv în corpul F .

Toate tabelele de operaµii calculate în secµiunea precedent  furnizeaz  ex-emple de elemente primitive în corpurile date. Spre exemplu 1 + i ∈ GF(32)este un element primitiv în acest corp.

Din teorema lui Lagrange rezult  c  ordinul oric rui element nenul a alcorpului F de q = pn elemente este un divizor al lui q − 1, deci aq−1 = 1.Rezult  deci urm toarea observaµie:

Observaµie 3.2.14. Fie F un corp �nit cu q = pn elemente. Atunci elementelecorpului F sunt r d cini ale ecuaµiei

xq − x = 0.

De asemenea în corpul F avem urm toarea descompunere:

xq − x =∏a∈F

(x− a).

Spre exemplu avem în corpul GF(22):

x4 − x = x(x− 1)(x− α)(x− α2),

unde "regula de calcul" este α2 = α+1. Dac  efectu m înmulµirile parantezelorfolosind aceast  regul  de calcul obµinem într-adev r polinomul x4 − x.

3.2.5 Unicitatea corpurilor �nite

Suntem deja în m sur  s  demonstr m unicitatea corpurilor �nite. Avempropoziµia:

Propoziµie 3.2.15. Pentru �ecare num r prim p ³i num r natural n ≥ 1exist  cel mult un singur corp �nit cu pn elemente.

Demonstraµie. Cu alte cuvinte, avem de ar tat cu dou  corpuri �nite cu ace-la³i num r de elemente sunt izomorfe. Fie F ³i G dou  corpuri cu q = pn

elemente. Alegem un element primitiv α în F . Fie f polinomul minimal al lui

Page 126: EDP 2010. ISBN 978-973-3-3370-7 Dáné Károly András Dan ...edituradp.ro/site_img/downloads/2013/04/interior-alg-comp-i.pdf · Se ³tie c , metoda lui Gauss de rezolvare a unui

126 CAPITOLUL 3. CODURI CORECTOARE DE ERORI

α. Reamintim, c  acesta este un polinom ireductibil în Fp[x], unde Fp = Zp

este corpul prim al ambelor corpuri F ³i G. Deoarece

xq − x =∏a∈F

(x− a) =∏b∈G

(x− b),

polinomul xq − x este anulator (i.e.αq − α = 0) pentru α, deci este divizibilcu polinomul minimal al lui α, adic  f |(xq − x). Aceasta deoarece mulµimeapolinoamelor anulatoare pentru α este un ideal în Fp[x], unde orice ideal �indideal principal, este generat de un polinom, polinomul minimal al lui α, adic chiar polinomul f .

Rezult  a³adar c , avem o descompunere în factori liniari al lui f în F , ³iuna în G. Alegem o r d cin  β a lui f în G. S  observ m c , β trebuie s  �eelement primitiv în G. Într-adev r, dac  ordinul lui β ar � d mai mic strictdecât q− 1, atunci am avea βd − 1 = 0, deci β ar � r d cin  pentru polinomulxd − 1, altfel spus polinomul xd − 1 ar � un polinom anulator pentru β, deciar � divizibil cu f . Cum f(α) = 0, am avea ³i αd − 1 = 0, în contradicµie cualegerea lui α.

În concluzie, corespondenµa α −→ β între F ³i G, genereaz  un izomor�smφ între grupurile ciclice F \ {0} ³i G \ {0}. Avem

φ : F −→ G, φ(αk) = (φ(α))k = βk, φ(0) = 0,

³i evident avemφ(αi · αj) = φ(αi) · φ(αj),

pentru orice i ³i j. A�rm m c  aceast  corespondenµ  p streaz  ³i adunarea,adic 

φ(αi + αj) = φ(αi) + φ(αj).

Avem de analizat dou  cazuri, ³i anume: αi + αj = 0 sau αi + αj = 0.Fie mai întâi αi + αj = 0, adic  αi + αj = αk sau

αi + αj − αk = 0.

Rezult  c f |(xi + xj − xk),

deci avem ³iβi + βj − βk = 0.

Aceasta înseamn  c  în acest caz avem φ(αi + αj) = φ(αi) + φ(αj).Fie acum αi + αj = 0. Dac  caracteristica p a corpurilor este 2, atunci

aceasta înseamn  simplu αi = αj , deci nu avem ce demonstra. Dac  îns caracteristica este impar , atunci mai întâi s  observ m c  singurul element de

Page 127: EDP 2010. ISBN 978-973-3-3370-7 Dáné Károly András Dan ...edituradp.ro/site_img/downloads/2013/04/interior-alg-comp-i.pdf · Se ³tie c , metoda lui Gauss de rezolvare a unui

3.2. CORPURI FINITE 127

ordinul doi al corpurilor �nite este −1, deoarece (−1)2 = 1 ³i cealalt  r d cin a polinomului x2 − 1 = (x− 1) · (x+1) este 1, al c rui ordin este 1. Pe de alt parte în acest caz ambele elemente −1, α

q−12 �ind de ordin 2, trebuie s  avem

αq−12 = −1.

Acum dac  presupunem i > j, (f r  a restrânge genaralitatea), putem scrie

αi + αj = 0 ⇒ αi−j = −1

⇒ i− j =q − 1

2

⇒ βi−j = −1

⇒ βi + βj = 0.

Aceasta demonstreaz  c  φ comut  ³i cu operaµia de adunare, deci este unizomor�sm de corpuri.

3.2.6 Automor�smele unui corp �nit

Fie F un corp �nit cu pn elemente, unde p este un num r prim. Între elementelecorpului putem efectua operaµiile de adunare ³i înmulµire cu propriet µile obi³-nuite ale acestora, deci avem dispunem ³i de toate formulele obi³nuite carerezult  din aceste reguli, printre ele ³i formula binomului lui Newton. Avem înFp = Zp coe�cientul binomial pentru 1 ≤ i ≤ p− 1

Cip =

p(p− 1) . . . (p− i+ 1)

1 · 2 · . . . · i= 0, (3.2)

deoarece toµi ace³ti coe�cienµi sunt divizibili cu p. Avem a³adar pentruorice a, b ∈ GF(pn)

(a+ b)p = ap + bp.

Deoarece avem ³i (a · b)p = ap · bp, rezult  c  aplicaµia a −→ ap este unendomor�sm de corpuri.

Am v zut mai sus c  apn= a pentru orice element a al corpului �nit cu

pn elemente. Dac  ap = bp prin ridicare la puterea p de n − 1 ori, obµinema = b. A³adar endomor�smul de mai sus este injectiv. O aplicaµie injectiv  peo mulµime �nit  în ea îns ³i este ³i surjectiv , deci endomor�smul nostru esteautomor�sm.

De�niµie 3.2.16. Fie F un corp �nit cu pn elemente, unde p este un num rprim. Automor�smul Φ : F −→ F , de�nit prin Φ(x) = xp se nume³te auto-mor�smul Frobenius al corpului.

Page 128: EDP 2010. ISBN 978-973-3-3370-7 Dáné Károly András Dan ...edituradp.ro/site_img/downloads/2013/04/interior-alg-comp-i.pdf · Se ³tie c , metoda lui Gauss de rezolvare a unui

128 CAPITOLUL 3. CODURI CORECTOARE DE ERORI

Importanµa automor�smului Frobenius este dat  de propoziµia urm toare.

Propoziµie 3.2.17. Fie F un corp �nit cu pn elemente, unde p este un num rprim. Automor�smele lui F formeaz  un grup ciclic de ordin n, al c rui gen-erator este automor�smul Frobenius.

Demonstraµie. Automor�smele unui corp formeaz  evident un grup, cu ele-mentul neutru aplicaµia identic  I.

De asemenea, deoarece pentru orice element a al corpului F avem apn= a

avem ³i Φn = I. Dac  am avea Φm = I pentru 0 < m < n, atunci amavea ap

m= a pentru orice a ∈ F , deci ecuaµia xp

m − x = 0 ar avea mai multer d cini decât este gradul s u, ceea ce este imposibil într-un corp. Deci ordinulautomor�smului Φ este chiar n.

S  ar t m c  F nu mai are ³i alte automor�sme. Vom face câteva observaµii.

Observaµii 3.2.18.

1. O prim  observaµie imediat  este faptul c  orice automor�sm Ψ al lui Flas  invariante elementele corpului prim al lui F ,

Ψ(k · 1) = Ψ(1 + . . .+ 1) = Ψ(1) + . . .Ψ(1) = 1 + . . .+ 1 = k · 1.

2. Mai interesant este c  automor�smul Frobenius las  invariant numaiaceste elemente. Într-adev r, elementele l sate invariante de acest au-tomor�sm sunt cele care au proprietatea ap = a, deci sunt soluµii aleecuaµiei xp − x = 0. Conform teoremei lui Fermat orice element al luiZp veri�c  aceast  ecuaµie, ³i ecuaµia nu mai poate avea ³i alte r d cinidatorit  limit rii dat  de gradul ei.

3. S  mai observ m c  un automor�sm al lui F este determinat de acµiunealui asupra unui element primitiv al lui F . Într-adev r, acesta genereaz grupul multiplicativ al corpului, iar imaginea lui 0 este 0.

4. O ultim  observaµie este faptul c  polinomul minimal al unui elementprimitiv al lui F are o descompunere special  exprimat  cu ajutorulautomor�smului Frobenius.

S  consider m un element primitiv a, ³i s  consider m polinomul

f = (x− a)(x− Φ(a))(x− Φ2(a)) . . . (x− Φn−1(a)). (3.3)

Dac  extindem automor�smele Psi ale lui F asupra polinoamelor F [x],prin (suma este �nit )

Ψ(a0 + a1x+ a2x2 + . . .) = Ψ(a0) + Ψ(a1)x+Ψ(a2)x

2 + . . .

Page 129: EDP 2010. ISBN 978-973-3-3370-7 Dáné Károly András Dan ...edituradp.ro/site_img/downloads/2013/04/interior-alg-comp-i.pdf · Se ³tie c , metoda lui Gauss de rezolvare a unui

3.2. CORPURI FINITE 129

atunci avem

Φ(f) = (x− Φ(a))(x− Φ2(a))(x− Φ3(a)) . . . (x− a) = f.

A³adar coe�cienµii lui f sunt în corpul prim, ³i f(a) = 0 deci f este unpolinom anulator pentru a, deci divizibil cu polinomul minimal al lui a.Acesta din urm  are îns  gradul n, de unde rezult  el este chiar f .

A³adar polinomul minimal al unui element primitiv a are descompunereadat  de (3.3).

Putem trece acum la demonstraµia propriu-zis  a propoziµiei. Fie Ψ unautomor�sm al lui F . Fie a un element primitiv, ³i f polinomul lui minimal,cu coe�cienµi în Fp. Conform 1 Ψ(f) = f , pe de alt  parte conform 2 ³i 4

Ψ(f) = (x−Ψ(a))(x−ΨΦ(a))(x−ΨΦ2(a)) . . . (x−ΨΦn−1(a)),

dând o alt  descompunere a lui f . Cele dou  descompuneri trebuie s  coincid îns , deci

Ψ(a) = Φk(a),

pentru o anumit  valoare a exponentului k, ³i se aplic  3.

Consecinµ  3.2.19. Fie p un polinom ireductibil în Fp[x] de grad m. Dac polinomul p are o r d cin  α într-o extensie F a corpului Fp,atunci toater d cinile lui p se a�  în aceast  extensie ³i ele sunt imaginile succesive ale luiα prin automor�smul Frobenius Φ, deci p are în F urm toarea descompunere:

p = (x− α)(x− Φ(α))(x− Φ2(α)) . . . (x− Φm−1(α)).

Demonstraµie. Mai întâi s  observ m c ,

p(α) = 0 ⇒ p(Φ(α)) = 0,

deci elementele α,Φ(α),Φ2(α), . . . sunt r d cini ale lui p. Pe de alt  parte, amv zut mai sus c , pentru un anumit n (pn este num rul elementelor corpuluiF ), polinomul f de�nit

f = (x− α)(x− Φ(α))(x− Φ2(α)) . . . (x− Φn−1(α)),

este invariant la automor�smul Frobenius, deci are coe�cienµii în Fp. Avem deasemenea f(α) = 0, deci f este polinom anulator pentru α, deci este divizibilcu p. În consecinµ  r d cinile lui p se a�  în mulµimea

{α,Φ(α)), . . . ,Φn−1(α))}.

Page 130: EDP 2010. ISBN 978-973-3-3370-7 Dáné Károly András Dan ...edituradp.ro/site_img/downloads/2013/04/interior-alg-comp-i.pdf · Se ³tie c , metoda lui Gauss de rezolvare a unui

130 CAPITOLUL 3. CODURI CORECTOARE DE ERORI

Pentru a identi�ca r d cinile lui p în aceast  mulµime, s  not m

e = min{k > 0 | Φk(α) = α}.

Atunci evident elementele mulµimii

{α,Φ(α)), . . . ,Φe−1(α))}.

sunt distincte între ele, ³i sunt r d cinile polinomului p. S  observ m c , defapt acestea sunt toate r d cinile lui p. Într-adev r, orice r d cin  a lui p ester d cin  ³i a lui f , deci este de forma Φi(α). Dar exponentul i poate � redussub valoarea lui e, prin împ rµire la e. Mai precis, avem împ rµirea întreag i = e · q + r, de unde

Φi(α) = Φr(α),

de unde rezult  m = e.

S  analiz m puµin urm toarea construcµie. Fie p un num r prim, ³i n ³i mdou  numere naturale mai mari decât 1. Dac  avem un polinom ireductibil fde grad n în Fp[x], putem construi o extensie a lui Fp, corpul K1 = GF(pn).Acesta este un spaµiu vectorial de dimensiune n peste Fp.

Fie acum g ∈ K1[x] un polinom ireductibil, de grad m. Putem construideci extensia K2 = K1[x]/(g), un spaµiu vectorial de dimensiune m peste K1.Evident corpul prim al lui K2 este tot Fp, deci K2 este spaµiu vectorial ³i pesteFp. Ce dimensiune are acest spaµiu vectorial?

Este destul de simplu de ar tat c  dac 

{a1, a2, . . . , an}

este o baz  a lui K1 peste Fp, ³i

{b1, b2, . . . , bn}

este o baz  a lui K2 peste K1, atunci

{ai · bj | 1 ≤ i ≤ n, 1 ≤ j ≤ m}

este o baz  a lui K2 peste Fp. Deci dimensiunea spaµiului vectorial K2 pesteFp este mn.

Fie acum F o extindere a corpului Fp realizat  cu ajutorul unui polinomireductibil de grad n. Fie G un subcorp al corpului F . Atunci G este spaµiuvectorial peste Fp de dimensiune m, F este spaµiu vectorial peste Fp de di-mensiune n, deci pe baza celor de mai sus este clar c  m este un divizor allui n, deci trebuie s  avem m|n. Acest fapt limiteaz  existenµa subcorpurilor:

Page 131: EDP 2010. ISBN 978-973-3-3370-7 Dáné Károly András Dan ...edituradp.ro/site_img/downloads/2013/04/interior-alg-comp-i.pdf · Se ³tie c , metoda lui Gauss de rezolvare a unui

3.2. CORPURI FINITE 131

într-un corp �nit cu pn elemente pot exista numai subcorpuri cu pm elemente,unde m|n.

Se pune întrebarea natural , dac  pentru orice divizor m al lui n exist  unsubcorp în GF(pn) având pm elemente?

R spunsul la aceast  întrebare este dat de propoziµia care va urma. Înaintede a o enunµa intercal m aici o proprietate interesant  a polinoamelor specialeale c ror r d cini sunt elementele corpurile �nite cu pn elemente.

Lem  3.2.20. Fie un ∈ Fp[x] polinomul dat de formula un(x) = xpn − x.

Atunci avem

• (un, um) = u(n,m), unde notaµia (f, g) sau (n,m) înseamn  ca de obiceicel mai mare divizor comun al celor dou  polinoame respectiv numerenaturale, ³i

• um|un dac  ³i numai dac  m|n.

Demonstraµie. Presupunem, f r  a restrânge generalitatea, c  n > m. Fien−m = d. Pe baza formulei 3.2 de la pagina 127 avem

upm(x) = (xpm − x)p = xp

m+1 − xp.

Repetând ridicarea la puterea p de d ori, obµinem

upd

m (x) = (xpm − x)p

d= xp

m+d − xpd= un(x)− ud(x).

A³adar � dac  facem împ rµirea întreag  n = q · m + r, 0 ≤ r < m, putemcalcula cel mai mare divizor comun al polinoamelor un ³i um în felul urm tor

(un, um) = (upn−m

m + un−m, um) =

= (un−m, um) =

= (un−2m, um) = . . .

= (un−q·m, um) =

= (um, ur) = . . .

= (u(n,m), u0) =

= (u(n,m), 0) =

= u(n,m)

Aceasta demonstreaz  prima a�rmaµie a lemei. Pentru partea a doua, �e m|n.Atunci (n,m) = m, ³i prima parte ne d 

(un, um) = um,

Page 132: EDP 2010. ISBN 978-973-3-3370-7 Dáné Károly András Dan ...edituradp.ro/site_img/downloads/2013/04/interior-alg-comp-i.pdf · Se ³tie c , metoda lui Gauss de rezolvare a unui

132 CAPITOLUL 3. CODURI CORECTOARE DE ERORI

adic  um|un. Invers, dac  um|un atunci u(n,m) = (un, um) = um, deci avemdou  polinoame egale de grade strict mai mici decât pn, num rul elementelorcorpuluiGF(pn). Rezult  deci ca ³i coe�cienµii sunt identici, adic  (n,m) = m,deci m|n.

Acum vom putea demonstra propoziµia:

Propoziµie 3.2.21. În corpul GF(pn) exist  pentru �ecare divizor m al lui n,(m|n) exact un subcorp de pm elemente.

Demonstraµie. Fie F un subcorp al corpului GF(pn). Am v zut mai sus c ,num rul elementelor lui F este pm, unde m|n. Elementele acestui corp veri�c ecuaµia

um(x) = xpm − x = 0.

Deci F = InvΦm = {a ∈ GF(pn) |Φm(a) = a}, deci subcorpul F este unic(elementele invariante la un automor�sm într-un corp formeaz  un subcorp).

Invers, �e m|n. S  dovedim existenµa unui subcorp al lui GF(pn) care arepm elemente. Candidatul natural este evident F = InvΦm. Trebuie s  dovedimdoar c  acest subcorp are exact pm elemente. Acum trebuie s  folosim lemaanterioar :

um|un,

³i un se descompune în GF(pn) în factori liniari, deci la fel se întâmpl  ³i cuum. A³adar um are pm r d cini distincte în GF(pn), deci subcorpul F are pm

elemente.

3.2.7 Existenµa unui corp cu pn elemente

Suntem în m sur  s  demonstr m c  pentru orice num r prim p ³i orice num rnatural n ≥ 2 exist  un corp �nit cu pn elemente. Se cuvine s  repet m enunµulîn cadrul unei propoziµii.

Propoziµie 3.2.22. Fie p un num r prim ³i n un num r natural mai maredecât 2. Atunci exist  un corp �nit F , cu pn elemente.

Demonstraµie. S  consider m polinomul un(x) = xpn − x, un ∈ Fp[x]. El se

descompune în factori ireductibili (deci primi) astfel

un(x) = xpn − x = x · (x− 1) · f1(x) · f2(x) · . . . · fk(x).

Observaµia crucial  � dup  toate discuµiile teoretice anterioare destul de nat-ural  � este c , unul dintre factorii acestei descompuneri trebuie s  nu �edivizibil cu nici unul din polinoamele um(x) unde m|n este un divizor propriu

Page 133: EDP 2010. ISBN 978-973-3-3370-7 Dáné Károly András Dan ...edituradp.ro/site_img/downloads/2013/04/interior-alg-comp-i.pdf · Se ³tie c , metoda lui Gauss de rezolvare a unui

3.2. CORPURI FINITE 133

al lui n. Într-adev r, nu este greu de ar tat, c  suma gradelor tuturor divi-zorilor ireductibili ai polinoamelor um(x), unde m|n este divizor propriu, estemai mic decât gradul lui un(x).

Pentru aceasta s  constat m c , pentru un m dat∑f |um, f ireductibil, monic

deg f = pm. (3.4)

Într-adev r, Fp[x] este inel factorial, deci orice polinom se descompune în modunic în factori ireductibili. În cazul nostru îns  factorii nu se pot repeta!Aceasta deoarece dac  am avea un factor care se repet  de cel puµin dou  ori,atunci derivata formal  a lui um(x) ar � ³i ea divizibil  cu acest factor. Îns u′m(x) = (xp

m − x)′ = pm · xpm−1 − 1 = −1, ceea ce face imposibil acest fapt.Prin însumarea acestor egalit µi pentru toµi divizorii proprii ai lui n obµinem∑

f |um, f ireductibil, monic,m|n,m<n

deg f =∑

m|n,m<n

pm

≤∑m<n

pm

=pn − 1

p− 1

< pn.

Din 3.4 scris  pentru m = n deducem c  trebuie s  existe un factor ireductibilf al lui un care nu divide nici unul din polinoamele um, unde m|n, ³i m estedivizor propriu.

Tot ce mai avem de ar tat este c  gradul acestui polinom este chiar n ³ideci construcµia standard al inelului factor este corpul c utat cu pn elemente.

Fie deci F = Fp[x]/(f) = GF(pm), unde m = deg f ³i s  not m clasa deresturi al lui x cu α. A³adar f(α) = 0, dar întru-cât f |un avem ³i

un(α) = 0.

Dar α ∈ GF(pm), deci avem ³i

um(α) = 0.

Rezult  c , α este o r d cin  a polinomului

(un, um) = u(n,m).

S  lu m acum în considerare faptul c  f este polinom minimal al lui α, deci

f |u(n,m).

Page 134: EDP 2010. ISBN 978-973-3-3370-7 Dáné Károly András Dan ...edituradp.ro/site_img/downloads/2013/04/interior-alg-comp-i.pdf · Se ³tie c , metoda lui Gauss de rezolvare a unui

134 CAPITOLUL 3. CODURI CORECTOARE DE ERORI

Dac  (n,m) < n ((n,m)|n) atunci f ar divide un divizor propriu al lui un,ceea ce nu se poate, deci (n,m) = n, adic  n|m.

Acum aplic m propoziµia 3.2.21 de la pagina 132 pentru a avea concluziapropoziµiei.

3.2.8 Polinoame ireductibile

Am v zut în secµiunile precedente, c  un polinom ireductibil cu coe�cienµiîntr-un corp poate juca rolul unui num r indecompozabil (prim) în construcµiaunei noi mulµimi de numere, în care împ rµirea s  �e posibil  necondiµionat.În termeni puµini mai tehnici avem o analogie perfect  între

Z,+, · k[x],+, ·�������������� �����������������inelul întregilor inelul polinoamelor cu coef. într-un corpnumerele prime polinoame ireductibile (prime)teorema împ rµirii întregi teorema împ rµirii întregiinel Euclidian inel Euclidianexist  cel mai mare div. comun exist  cel mai mare div. comunalgoritmul lui Euclid algoritmul lui Euclidvaloarea absolut  a num rului gradul polinomuluidescomp. unic  în factori primi descomp. unic  în factori ireductibiliinel principal inel principalinelul factor mod prim -> corp inelul factor mod ireductibil -> corpnum. prim p -> corp Zp, p elem pol. ired. Zp[x] gard n -> corp pn elem.

Construcµia corpurilor �nite cu p elemente cu un num r prim p mare nece-sit  algoritmi de testare a primalit µii, de generare a numerelor prime, ³i puneproblema factoriz rii numerelor întregi. Analog, construcµia corpurilor �nite cun mare necesit  algoritmi de testare a ireductibilit µii polinoamelor, de gener-are a polinoamelor ireductibile, ³i pune problema factoriz rii polinoamelor.

Nu ne vom aventura în tratarea sistematic  a acestor problematici, îns pentru a asigura un sentiment de confort dat de certitudinea c  obiectelematematice descrise exist  cu adev rat, complet m analiza noastr  cu r spun-sul la o singur  întrebare: cât de multe numere prime, respectiv cât de multepolinoame ireductibile exist ?

În ceea ce prive³te numerele prime s  reamintim faptele clasice binecunos-cute.

Page 135: EDP 2010. ISBN 978-973-3-3370-7 Dáné Károly András Dan ...edituradp.ro/site_img/downloads/2013/04/interior-alg-comp-i.pdf · Se ³tie c , metoda lui Gauss de rezolvare a unui

3.2. CORPURI FINITE 135

Fapte 3.2.23.

• Exist  o in�nitate de numere prime (Euclid).

• Num rul numerelor prime mai mici decât n (notat π(n)) este asimptotic

π(n) ∼ n

lnn.

(Logaritmul este natural.)

Nu vom da demonstraµiile acestor fapte, cititorul poate consulta practicorice carte de teoria numerelor. S  vedem care este situaµia în cazul poli-noamelor cu coe�cienµi într-un corp �nit.

Fapte 3.2.24.

• Pentru �ecare p num r prim, ³i �ecare n exist  un polinom ireductibil înZp[x] de grad n.

Not m cu Iq(n) num rul polinoamelor ireductibile monice (coe�cientuldominant este 1) de grad n din GF(q)[x], unde q este un num r primsau o putere a unui num r prim q = pm. De fapt are loc formula:

Iq(n) =1

n

∑d|n

µ(nd

)qd.

• Dac  not m cu Nq(n) num rul total al polinoamelor de grad exact n dinGF(q)[x], este u³or de v zut c 

Nq(n) = qn+1 − qn.

Are loc estimarea asimptotic :

Iq(n)

Nq(n)∼ 1

n.

S  schiµ m în schimb demonstraµia acestor fapte legate de polinoame ire-ductibile.

Formula 3.4 de la pagina 133 � este adev rat  ³i pentru q = pn � ³i poate� convertit  u³or în formula: ∑

d|n

d · Iq(d) = qn, (3.5)

valabil  pentru orice n ∈ N.Aceste relaµii, considerate ca ecuaµii trebuie rezolvate în raport cu necunos-

cutele Iq(n). Aceasta se face cu formula de inversare a lui Moebius, pe care oprezent m aici în ambele variante: aditiv  ³i multiplicativ .

Page 136: EDP 2010. ISBN 978-973-3-3370-7 Dáné Károly András Dan ...edituradp.ro/site_img/downloads/2013/04/interior-alg-comp-i.pdf · Se ³tie c , metoda lui Gauss de rezolvare a unui

136 CAPITOLUL 3. CODURI CORECTOARE DE ERORI

De�niµie 3.2.25. Funcµia µ : N −→ N de�nit  prin

µ(n) =

1, dac  n = 1,(−1)k, dac  n este un produs de k numere prime distincte,0, dac n este divizibil cu p tratul unui num r prim,

se nume³te funcµia lui Moebius.

Avem nevoie de urm toarele propriet µi ale funcµiei Moebius:

Propoziµie 3.2.26.

1. Funcµia lui Moebius este multiplicativ  în sensul urm tor. Fie m,n nu-mere naturale relativ prime. Atunci

µ(m · n) = µ(m) · µ(n).

2. Pentru orice num r natural n avem∑d|n

µ(d) =

{1, dac  n = 1,0, dac  n > 1.

Demonstraµie. Prima proprietate este evident  din de�niµia funcµiei µ. A douaeste evident  pentru n = 1, deci �e n > 1. Fie

n = pα11 · pα2

2 · . . . · pαkk

descompunerea lui n în factori primi. Valoarea sumei este dat  de suma ter-menilor nenuli, adic ∑

d|n

µ(d) =∑

d|p1p2...pk

µ(d)

= µ(1) +∑

1≤i≤k

µ(pi) +∑

1≤i1<i2≤k

µ(pi1pi2) + . . .+ µ(p1p2 . . . pk)

= 1 + C1k(−1) + C2

k(−1)2 + . . .+ Ckk (−1)k

= (1 + (−1))k = 0.

Teorem  3.2.27 (Formula de inversare a lui Moebius). Formula se d  deobicei în dou  variante: o formulare aditiv  ³i o formulare multiplicativ .

Page 137: EDP 2010. ISBN 978-973-3-3370-7 Dáné Károly András Dan ...edituradp.ro/site_img/downloads/2013/04/interior-alg-comp-i.pdf · Se ³tie c , metoda lui Gauss de rezolvare a unui

3.2. CORPURI FINITE 137

• Formula aditiv : Fie f, F : N −→ G dou  funcµii într-un grup aditiv G.Atunci

F (n) =∑d|n

f(d) pentru orice n (3.6)

dac  ³i numai dac 

h(n) =∑d|n

µ(nd

)F (d) =

∑d|n

µ(d)F(nd

)pentru orice n. (3.7)

• Formula multiplicativ : Fie f, F : N −→ G dou  funcµii într-un grupmultiplicativ G. Atunci

F (n) =∏d|n

f(d) pentru orice n (3.8)

dac  ³i numai dac 

h(n) =∏d|n

F (d)µ(nd) =

∏d|n

F(nd

)µ(d)pentru orice n. (3.9)

Demonstraµie. Presupunem c  are loc relaµia 3.6. Folosind propoziµia 3.2.26obµinem ∑

d|n

µ(nd

)F (d) =

∑d|n

µ(d)F(nd

)=

∑d|n

µ(d)∑c|n

d

f(c)

=∑c|n

∑d|n

d

µ(d)f(c)

=∑c|n

f(c)∑d|n

c

µ(d)

= f(n).

Invers, calculul este absolut similar. În ceea ce prive³te varianta multiplicativ ,aceasta este practic doar o schimbare a notaµiei pentru operaµia comutativ valabil  pentru cele dou  funcµii f ³i F .

Suntem acum în m sur  s  demonstr m rezultatul fundamental al acesteisecµiuni.

Page 138: EDP 2010. ISBN 978-973-3-3370-7 Dáné Károly András Dan ...edituradp.ro/site_img/downloads/2013/04/interior-alg-comp-i.pdf · Se ³tie c , metoda lui Gauss de rezolvare a unui

138 CAPITOLUL 3. CODURI CORECTOARE DE ERORI

Teorem  3.2.28. Num rul Iq(n) al polinoamelor ireductibile monice de gradn din GF(q)[x], (unde q este un num r prim sau o putere a unui num r primq = pm) veri�c  relaµiile:

1. ∑d|n

d · Iq(d) = qn,

2.Iq(n) =

1

n

∑d|n

µ(nd

)qd =

1

n

∑d|n

µ(d)qnd ,

3.Iq(n) ≥ 1,

altfel spus, pentru �ecare n avem cel puµin un polinom ireductibil, ³i

4.

Iq(n) ∼qn

n,

adic  asimptotic, num rul polinoamelor ireductibile este 1/n din num rultotal de polinoame de grad n.

Demonstraµie. Punctul 1 este numai o reiterare a relaµiei 3.5 de la pagina 135.Pentru a demonstra punctul principal 2 nu avem altceva de f cut decât

s  aplic m formula de inversare Moebius (varianta aditiv , ³i G = N) pentrufuncµiile

f(n) = n · Iq(n),³i

F (n) = qn,

³i s  observ m c  relaµia 3.6 este valabil  datorit  punctului 1.Punctul 3 rezult  din punctul 2 astfel:

Iq(n) ≥ 1

n

qn −∑1<d|n

qnd

≥ 1

n

(qn −

n−1∑d=0

qd

)

=1

n

(qn − qn − 1

q − 1

)=

1

n(qn − (qn − 1)) =

1

n> 0.

În sfâr³it punctul 4 este evident pe baza punctului 2.

Page 139: EDP 2010. ISBN 978-973-3-3370-7 Dáné Károly András Dan ...edituradp.ro/site_img/downloads/2013/04/interior-alg-comp-i.pdf · Se ³tie c , metoda lui Gauss de rezolvare a unui

3.2. CORPURI FINITE 139

3.2.9 Polinomul minimal ³i baza Gröbner

Cele mai spectaculoase descoperiri matematice sunt acele rezultate caredezv luie leg turi strânse între domenii aparent îndep rtate. Asocierea din-tre polinomul minimal al unui element algebric într-o extindere de corpuri cubazele Gröbner ale idealelor polinomiale în inele de polinoame cu mai multenedeterminate poate p rea la prim  vedere o astfel de întâlnire nea³teptat .Ea m re³te în orice caz admiraµia pentru "omniprezenµa" bazei Gröbner ³iutilitatea deosebit  a algoritmului lui Buchberger.

Problemele pe care ni le formul m sunt urm toarele.

Probleme 3.2.29.

1. Fie corpul �nit F = GF(pn) construit cu ajutorul unui polinom ire-ductibil f ∈ Fp[x] de grad n. Dac  not m ca de obicei clasa deechivalenµ  a lui x cu α, atunci avem f(α) = 0 ³i nu exist  polinomanulator de grad mai mic în Fp[x] pentru α, adic  f este polinomul min-imal al lui α. Elementele corpului F sunt polinoame de grad cel multn−1 în α. Fie a = g(α) ³i b = h(α) dou  elemente ale lui F . S  ne ream-intim c  a± b se calculeaz  simplu prin intermediul lui g± h, înmulµireaa · b prin g · h( mod f), iar împ rµirea a/b prin a · 1/b, unde inversul luib corespunde polinomului v, obµinut cu ajutorul algoritmului lui Euclidextins aplicat polinoamelor relativ prime f ³i h. Întru-cât (f, h) = 1(h(α) = 0, f |h) exist  u, v astfel ca uf + vh = 1 de unde 1/b = v(α).

S  se calculeze polinomul minimal al lui

• a+ b,

• a− b,

• a · b,• a/b.

2. Fie acum dou  polinoame ireductibile f, g ∈ Fp[x], de grad n,m respec-tiv. Putem face câte o extensie a lui Fp cu ajutorul lui f ³i g respectiv,notând cu α respectiv β clasele de echivalenµ  ale lui x în cele dou extinderi. Cele dou  extinderi sunt corpurile �nite GF(pn) ³i GF(pm)respectiv. Am v zut în secµiunile precedente c  exist  ³i este unic corpul�nit cu pk elemente, respectiv pentru �ecare divizor d|k corpul GF(pk)are un singur subcorp GF(pd). Rezult  c  cele dou  corpuri GF(pn) ³iGF(pm) sunt subcorpurile (unice) ale corpului GF(pnm).

S  se calculeze polinoamele minimale ale urm toarelor elemente din acestcorp:

Page 140: EDP 2010. ISBN 978-973-3-3370-7 Dáné Károly András Dan ...edituradp.ro/site_img/downloads/2013/04/interior-alg-comp-i.pdf · Se ³tie c , metoda lui Gauss de rezolvare a unui

140 CAPITOLUL 3. CODURI CORECTOARE DE ERORI

• α+ β,

• α− β,

• α · β,• α/β.

S  începem prezentarea soluµiilor acestor probleme cu enunµul rezultatelorteoretice necesare.

Propoziµie 3.2.30. Fie deci corpul �nit F = GF(pn). Fie α un elementprimitiv ³i �e f ∈ Fp[x] polinomul minimal al lui α (de grad n). Fie a = g(α) =a0+a1α+a2α

2+ . . .+an−1αn−1 ³i b = h(α) = b0+b1α+b2α

2+ . . .+bn−1αn−1

dou  elemente ale lui F .Cu ajutorul polinoamelor

g(x) = a0 + a1x+ a2x2 + . . .+ an−1x

n−1

³ih(x) = b0 + b1x+ b2x

2 + . . .+ bn−1xn−1

din Fp[x] construim idealele

Ia+b = (f, y − g − h)

Ia−b = (f, y − g + h)

Iaxb = (f, y − gh)

Ia/b = (f, hy − g)

ale inelului Fp[x, y]. Atunci polinomul minimal al lui a+b, a−b, a ·b, a/b esteunicul polinom (monic) în variabila y, care este generator al idealului I∗∩Fp[y].

Demonstraµie. Vom demonstra cazul mai "di�cil" a/b (celelalte sunt exerciµiiu³oare). Întru-cât h(α) = 0 exist  un polinom v ∈ Fp[x] astfel ca vh = 1mod f . Am efectuat astfel împ rµirea c = a/b = g(α)/h(α) = g(α) · v(α). S consider m polinomul F = gv. Deci c = F (α). Consider m homomor�smulΦ, dat de compunerea de aplicaµii

Fp[y] −→ Fp[x]/(f) −→ Fp(α)y −→ F + (f) −→ c.

S[observ m c , un polinom G este în kerΦ dac  ³i numai dac  G(c) = 0, decipolinomul minimal al lui c este un generator al nucleului lui Φ. Acesta îns este (f, y − F ) ∩ Fp[y]. A³adar r mâne s  ar t m c  (f, y − F ) = (f, hy − g).

Pentru aceasta s  observ m c , y−F = y−gv = v(hy−g) mod f deci avemy−F ∈ (f, hy−g), de unde rezult  incluziunea (f, y−F ) ⊂ (f, hy−g). Invers,avem hy−g = h(y−gv) = h(y−F ) mod f . De aici rezult  hy−g ∈ (f, y−F )deci cealalt  incluziune (f, y − F ) ⊃ (f, hy − g).

Page 141: EDP 2010. ISBN 978-973-3-3370-7 Dáné Károly András Dan ...edituradp.ro/site_img/downloads/2013/04/interior-alg-comp-i.pdf · Se ³tie c , metoda lui Gauss de rezolvare a unui

3.2. CORPURI FINITE 141

Din aceast  propoziµie rezult  un "algoritm" de calcul al polinomului mi-nimal al elementului c = a/b (³i celelalte operaµii): calcul m baza Gröbnerpentru idealul (f, hy − g) ∈ Fp[x, y] folosind ordonarea lexicogra�c  în carex > y. Polinomul acestei baze care conµine numai variabila y este polinomulminimal al lui c!

Pentru a rezolva problema a doua ne vom baza pe o propoziµie analoag pe care o d m f r  demonstraµie.

Propoziµie 3.2.31. Fie α1, α2, . . . , αn r d cini ale polinoamelor ireductibilef1, f2, . . . , fn cu coe�cienµi în corpul Fp. Fie

a = g(α1, α2, . . . , αn)

b = h(α1, α2, . . . , αn),

unde g, h ∈ Fp[x1, x2, . . . , xn] sunt polinoame arbitrare.Construim idealele

Ia+b = (f1, f2, . . . , fn, y − g − h)

Ia−b = (f1, f2, . . . , fn, y − g + h)

Iaxb = (f1, f2, . . . , fn, y − gh)

Ia/b = (f1, f2, . . . , fn, hy − g)

ale inelului Fp[x1, x2, . . . , xn, y]. Atunci polinomul minimal al lui c = a + b,c = a − b, c = a · b, c = a/b este unicul polinom (monic) în variabila y, careeste generator al idealului I∗ ∩ Fp[y].

Dac  toate acestea nu sunt su�cient de clare, ne va ajuta un exempluconcret.

Exemplu 3.2.32. În corpul GF(26) construit cu ajutorul polinomului

f(x) = x6 + x+ 1,

�e α o r d cin  a lui f , ³i �e

a = α4 + α3 + α2 + α+ 1,

³ib = α3 + α+ 1.

S  calcul m polinomul minimal al elementului c = a/b.

Soluµia este acest scurt program scris în Singular.

Page 142: EDP 2010. ISBN 978-973-3-3370-7 Dáné Károly András Dan ...edituradp.ro/site_img/downloads/2013/04/interior-alg-comp-i.pdf · Se ³tie c , metoda lui Gauss de rezolvare a unui

142 CAPITOLUL 3. CODURI CORECTOARE DE ERORI

ring R=2,(x,y),lp;ideal I=x6+x+1,y*(x3+x+1)-(x4+x3+x2+x+1);ideal G=groebner(I);G;

Rezultatul este

G = (y2 + y + 1, x3 + x2 + xy + x+ y2 + 1)

deci polinomul minimal al lui a/b este y2 + y + 1.Iat  acum un exemplu cu dou  extinderi succesive.

Exemplu 3.2.33. Consider m polinoamele ireductibile cu coe�cienµi în F2

f(x) = x2 + x+ 1,

³ig(y) = y3 + y + 1.

Fie α o r d cin  a lui f , ³i β o r d cin  a lui g.S  calcul m polinomul minimal al elementelor α+ β, α− β, α · β, α/β în

extensia lui F2 cu α ³i β.

Soluµia este obµinut  cu programul de mai jos.

ring R=2,(x,y,y),lp;ideal I=x2+x+1,y3+y+1,z-(x+y);groebner(I);ideal I=x2+x+1,y3+y+1,z-(x-y);groebner(I);ideal I=x2+x+1,y3+y+1,z-xy;groebner(I);ideal I=x2+x+1,y3+y+1,yz-x);groebner(I);

Concret polinomul minimal al lui α+ β = α− β este

z6 + z5 + z3 + z2 + 1,

al lui α · β estez6 + z4 + z2 + z + 1,

respectiv al lui α/β este

z6 + z5 + z4 + z2 + 1.

Gradele acestor polinoame �ind 6 = 2 · 3, aceste polinoame genereaz  acela³icorp GF(26).

Page 143: EDP 2010. ISBN 978-973-3-3370-7 Dáné Károly András Dan ...edituradp.ro/site_img/downloads/2013/04/interior-alg-comp-i.pdf · Se ³tie c , metoda lui Gauss de rezolvare a unui

3.3. CODURI CORECTOARE DE ERORI 143

3.3 Coduri corectoare de erori

D up  aceast  preg tire destul de consistent  � care a avut totu³i ³imotivaµii intrinseci � suntem în m sur  acum s  trecem la aplicaµia

anunµat : coduri corectoare de erori.În introducerea acestui capitol am v zut deja un exemplu concret de un

astfel de cod. Având în minte acest exemplu, vom înµelege mai bine motivaµiaconstrucµiilor matematice care vor urma mai jos.

Fix m de la bun început urm toarele. Informaµia pe care o trimitem esteorganizat . Ea se exprim  cu ajutorul unui alfabet, ³i se grupeaz  în cuvinte(blocuri) de aceea³i lungime. Literele acestor cuvinte transmise se pot altera.S  analiz m puµin statistica acestor alter ri în cazul unui canal de comunicaµieprin care transmitem informaµie binar . S  consider m deci c  literele suntcifrele binare � 0 ³i 1 � ³i c  lungimea unui cuvânt este de n de litere. S presupunem c  probabilitatea cu care pe acest canal cifra binar  0 devine larecepµie 1 este aceea³i cu care cifra 1 este recepµionat  0. Un astfel de canalde comunicaµie se nume³te canal binar simetric. S  presupunem de asemeneac  probabilitatea recepµion rii eronate a unei cifre binare este aceea³i pentru�ecare cifr , ³i este independent de cifrele anterioare sau viitoare. S  not mprobabilitatea recepµion rii corecte a unei cifre binare cu p. Atunci într-osecvenµ  de lungime n probabilitatea unui num r de t erori este

Ctnp

n−t(1− p)t.

Pentru p = 0.99 ³i n = 50 putem întocmi urm torul tabel:

t probabilitatea producerii a exact t erori cel mult t erori0 60.50 % 60.50 %1 30.56 % 91.06 %2 7.56 % 98.62 %3 1.22 % 99.84 %4 0.145 % 99.99 %...

S  observ m mai întâi c  probabilitatea producerii mai multor erori este maimic . Aceasta se întâmpl  totdeauna dac  pentru orice t, (0 ≤ t ≤ n− 1 avem

Ct+1n pn−t−1(1− p)t+1

Ctnp

n−t(1− p)t< 1,

adic n− t

t+ 1· 1− p

p< 1

Page 144: EDP 2010. ISBN 978-973-3-3370-7 Dáné Károly András Dan ...edituradp.ro/site_img/downloads/2013/04/interior-alg-comp-i.pdf · Se ³tie c , metoda lui Gauss de rezolvare a unui

144 CAPITOLUL 3. CODURI CORECTOARE DE ERORI

decin <

p

1− p.

Ce putem a�a din acest tabel? În primul rînd putem a�a, c  de³i probabilitateade producere a erorii este mic  � doar 1% � totu³i probabilitatea recepµion riicorecte a unui cuvînt (de 50 de litere) este de doar 60.5%, adic  în medieaproape �ecare al doilea cuvânt conµine erori! Este clar c , f r  un mecan-ism de detectare ³i corectare a erorilor informaµia recepµionat  este practicneutilizabil .

Pe de alt  parte vestea bun  este c  este foarte improbabil ca un cuvînt s conµin  multe erori. În exemplul dat în tabel în medie numai unul din 10.000de cuvinte va conµine mai mult de 5 erori!Este clar deci c , informaµia util  trebuie completat  cu o informaµie redun-dant  care s  fac  posibil  descoperirea ³i corectarea erorilor. Într-un cuvântde cod de n litere numai k < n litere vor codi�ca informaµia util , restul den−k litere vor servi la implementarea mecanismelor de detectare ³i corectare aerorilor, rezultând un raport r = k/n < 1 subunitar al transmisiei informaµieiutile.

Se pune deci problema de principiu: putem oare controla detectabilitateaerorilor, adic  putem oare construi coduri care s  asigure un procent oricâtde mic dorim al erorilor nedetectabile? R spunsul la aceast  întrebare estea�rmaµia unei teoreme pe care Claude Shannon a publicat-o în 1948, consideratast zi punctul de plecare al teoriei codurilor, ³i pe care o formul m aici (f r demonstraµie).

Teorem  3.3.1. Pentru orice canal binar simetric de comunicaµie, pentruorice ε > 0, pentru orice probabilitate 1 > p > 0 ³i orice rat  util  de informaµier > 0 pentru care avem

r < 1 + p ln(p) + (1− p) ln(1− p),

exist  un cod ale c ror cuvinte au lungimea su�cient de lung  n ³i pentru careprobabilitatea recepµion rii corecte a literelor codului este p dar probabilitatearecepµion rii eronate a cuvintelor este cel mult ε.

Demonstraµia acestei teoreme nu este constructiv , ea nu furnizeaz  ³i ometod  de construcµie pentru coduri bune. Are sens a³adar c utarea de co-duri care s  se apropie cât mai mult de performanµa asigurat  de teorema luiShannon.

În cele ce urmeaz  vom prezenta câteva coduri, ³i vom schiµa ³i o analizaparametrilor acestora pentru a intui în ce m sur  ele se apropie de performanµamaxim  posibil  pentru o rat  de eroare dat .

Page 145: EDP 2010. ISBN 978-973-3-3370-7 Dáné Károly András Dan ...edituradp.ro/site_img/downloads/2013/04/interior-alg-comp-i.pdf · Se ³tie c , metoda lui Gauss de rezolvare a unui

3.3. CODURI CORECTOARE DE ERORI 145

3.3.1 Concepte de baz 

Leg tura dintre corpurile �nite ³i coduri rezid  în faptul c  literele alfabetuluide codi�care vor � numere speciale: elemente ale unui corp �nit de numere!Cuvinte ale acestui alfabet vor � "cuvinte" de cod, blocuri. Iat  dicµionarulcorespunz tor pe care-l vom folosi în continuare.

concept teoria codurilor obiect matematicABC (colecµie simboluri) corp �nit, Fq, q = pm

liter , simbol element al corpului �nit, αi ∈ Fq

mesaj util, vector de elemente, α = (α1, α2, . . . , αk)cuvânt cod, mesaj codi�cat x = (x1, x2, . . . , xn), n ≥ k, xi ∈ Fq

³i transmismesaj recepµionat, eventual diferit vector y = (y1, y2, . . . , yn), yi ∈ Fq

de cel transmisvector eroare e = y − x

În cazul în care x1 = α1, . . . , xk = αk simbolurile xk+1, . . . , xn se numescsimboluri de control . Conform tabelului de mai sus se impune deci o de�niµie.

De�niµie 3.3.2. Un cod de lungime n peste corpul Fq este o submulµime(nevid ) C a spaµiului vectorial Fn

q peste Fq.

În cursul transmisiei cuvântele de cod pot suferi modi�c ri, deci avemnevoie de un mecanism de evaluare a m surii acestei modi�c ri. Se vede ime-diat c  num rul simbolurilor alterate este o m sur  potrivit  pentru evaluarea"distanµei" între cele dou  cuvinte de cod: cel transmis ³i cel recepµionat.

De�niµie 3.3.3. Concepte importante noi:

• Dac  x ³i y sunt cuvinte cod vom numi distanµ  Hamming între elenum rul simbolurilor diferite dintre perechile de simboluri care se core-spund, deci

d(x, y) = ♯{i|xi = yi}.

• Dac  x este un vector vom numi m sura Hamming al acestui vector,notat w(x), distanµa lui faµ  de vectorul nul, adic  w(x) = d(x, 0).

• Vom numi distanµa minim  a codului C num rul

d(C) = min{d(x, y) |x, y ∈ C, x = y},

adic  cea mai mic  distanµ  între dou  cuvinte de cod.

Page 146: EDP 2010. ISBN 978-973-3-3370-7 Dáné Károly András Dan ...edituradp.ro/site_img/downloads/2013/04/interior-alg-comp-i.pdf · Se ³tie c , metoda lui Gauss de rezolvare a unui

146 CAPITOLUL 3. CODURI CORECTOARE DE ERORI

• Vom numi de asemenea bil  de raz  r cu centru în x mulµimea

Sr(x) = {y ∈ Fnq | d(x, y) ≤ r},

adic  mulµimea vectorilor a�ate la distanµa cel mult r de vectorul x.

Se veri�c  u³or c , funcµia d(x, y) are propriet µile unei distanµe:

• d(x, y) = 0 dac  ³i numai dac  x = y,

• este simetric  adic  d(x, y) = d(y, x) ³i

• are loc ³i inegalitatea triunghiului, adic  d(x, z) ≤ d(x, y)+d(y, z), pentruorice x, y, z ∈ Fn

q .

Cuvântul de cod transmis x poate sosi la receptor alterat, y. Decodi�carea caredintr-un vector y recepµionat restabile³te cel mai probabil cuvânt de cod care afost transmis, se nume³te decodi�care de probabilitate maxim . Decodi�careacare îl decodi�c  vectorul y cu ajutorul cuvântului de cod x a�at cel maiaproape de y în sensul distanµei Hamming (dac  exist  numai unul singur), senume³te decodi�care prin distanµ .

Am v zut mai sus c  probabilitatea alter rii unui num r de 1, 2, 3, . . . sim-boluri ale unui cuvânt de cod se micsoreaz  rapid, în anumite condiµii. Practicam v zut c  dac  pe un canal de comunicaµie binar ³i simetric

n <p

1− p,

atunci decodi�carea prin cuvântul de cod cel mai apropiat este o decodi�carede probabilitate maxim ! Vom p stra aceast  ipotez  în continuare, adic vom considera c  decodi�carea prin cuvântul de cod cel mai apropiat este³i decodi�care de probabilitate maxim , ³i vom înµelege prin "decodi�care"decodi�care prin cuvântul de cod cel mai apropiat.

De�niµie 3.3.4. Vom spune c  un cod C ⊂ Fnq corecteaz  t (t ∈ N∗) erori

dac  pentru orice y ∈ Fnq exist  cel mult un cuvânt de cod x ∈ C astfel ca

d(y, x) ≤ t.

Dac  avem un cod care poate corecta t erori ³i am transmis cuvântul decod x ∈ C ³i în cursul transmisiei se produc cel mult t erori, atunci la recepµieputem restabili mesajul deoarece x este singurul cuvânt de cod pentru cared(y, x) ≤ t.

S  observ m c , pentru a putea decodi�ca cât mai multe mesaje recepµion-ate eronat distanµa minim  a codului, adic  parametrul d = d(C) trebuie s �e cât mai mare posibil. Acesta îns  atrage dup  sine sc derea num rului decuvinte cod pentru o lungime dat  n a codului, ceea ce scade cantitatea deinformaµie transmis . În concluzie problema de baz  a teoriei codurilor este:

Page 147: EDP 2010. ISBN 978-973-3-3370-7 Dáné Károly András Dan ...edituradp.ro/site_img/downloads/2013/04/interior-alg-comp-i.pdf · Se ³tie c , metoda lui Gauss de rezolvare a unui

3.3. CODURI CORECTOARE DE ERORI 147

Problem  3.3.5. Pentru un n, d ³i q = pm dat s  g sim în Fnq o submulµime

maximal  C, cu un num r de elemente cât mai mare, pentru care d(C) ≥ d.

Maximalitatea lui C înseamn , c  orice vector cu care am completamulµimea C ar avea ca efect d(C) < d. Întru-cât mulµimi maximale cud(C) ≥ d pot � mai multe, suntem interesaµi s  g sim pe cal pentru carenum rul de elemente M = |C| este cel mai mare posibil.

Observaµie 3.3.6. S  observ m c  un cod C pentru care d(C) = d, poatedetecta d−1 erori, ³i poate corecta ⌊d−1

2 ⌋ erori (partea întreag  a lui (d−1)/2).

3.3.2 Margini pentru coduri generale

Fie C un cod din Fnq cu distanµ  minim  d = d(C), care poate corecta t erori

³i s  not m num rul cuvintelor de cod cu M = |C|. Între parametrii coduluiC au loc anumite inegalit µi, care prescriu valor limit  intrinseci care nu pot� dep ³ite.

Propoziµie 3.3.7.

1. marginea Hamming :

M(1 + (q − 1)C1n + C2

n(q − 1)2 + · · ·+ (q − 1)tCtn ≤ qn.

2. marginea Singleton :M ≤ qn−d+1.

Demonstraµie. Pentru a demonstra punctul 1 s  observ m c  num rul total alvectorilor de m sur  k în Fn

q este Ckn(q − 1)k. Pe de alt  parte �ecare bil  de

raz  t cu centrul într-un vector-cod din C conµine un num r de

1 + C1n(q − 1) + C2

n(q − 1)2 + . . .+ Ctn(q − 1)t

vectori. Întru-cât bilele sunt disjuncte ³i num rul lor este M iar numrul totalal vectorilor din spaµiu este qn, rezult  inegalitatea din 1.

Pentru a demonstra punctul 2 s  observ m c  dac  din cuvintele unui codC de distanµ  minim  d ³tergem ultimele d−1 simboluri, cuvintele de lungimen− d+ 1 astfel formate înc  vor � diferite între ele. Pe de alt  parte num rultotal al vectorilor de aceast  lungime este qn−d+1, ceea ce implic  2.

Pe baza propoziµiei anterioare se impun urm toarele de�niµii:

De�niµie 3.3.8.

• Dac  pentru codul C marginea Hamming este atins , atunci codul senume³te cod perfect .

• Dac  pentru codul C marginea Singleton este atins , atunci codul senume³te cod MDS , (Maximum Distance Separable).

Page 148: EDP 2010. ISBN 978-973-3-3370-7 Dáné Károly András Dan ...edituradp.ro/site_img/downloads/2013/04/interior-alg-comp-i.pdf · Se ³tie c , metoda lui Gauss de rezolvare a unui

148 CAPITOLUL 3. CODURI CORECTOARE DE ERORI

3.4 Coduri liniare

A m avansat ideea în secµiunea precedent  c  o alegere bun  pentru cu-vintele unui cod, constituie o parte din vectorii unui spaµiul vectorial �nit

dimensional peste un corp �nit. Dac  avem în minte intenµia de a a³eza câtmai compact bile de raz  dat  cu centrul în punctele acestui spaµiu, f r  s  seintersecteze îns , e de a³teptat ca o astfel de a³ezare s  �e ³i regulat  întru-unanumit sens � s  ne gândim la nodurile unei reµele p tratice sau triunghiulareregulate în plan ³i cercuri identice a³ezate pe aceast  reµea, spre exemplu.

O astfel de ordine poate � introdus  în mulµimea C dac  facem uz destructura de spaµiu vectorial � mulµimea C ar putea s  �e un subspaµiu. AstfelC devine o "reµea" generat  (în sensul chiar al combinaµiilor liniare) de un setde vectori de baz  bine ale³i (care ar ³i forma baza acestui subspaµiu). Unastfel de cod se va numi cod liniar.

În termeni tehnici ideea de mai sus se realizeaz  astfel. Fie H o matrice detip (n− k, n) cu elemente din corpul �nit Fq. Presupunem c  rangul matriciiH este maxim, adic  n− k.

De�niµie 3.4.1. Codul C se nume³te cod liniar de tip (n, k) dac  cuvintele xale codului veri�c  ecuaµia

H · xt = 0,

adic  sunt soluµiile unui sistem liniar ³i omogen de ecuaµii cu coe�cienµi într-uncorp �nit.

Num rul n se nume³te lungimea codului iar num rul k dimensiunea codului .Forma standard a matricii H este H = (A, In−k), unde In−k este matriceaunitate de ordin n− k. Matricea H se nume³te matrice de control al parit µii .Dac  matricea H are forma standard, codul se nume³te cod sistematic. Dac q = 2, codul se nume³te cod liniar binar .

Evident mulµimea C este un subspaµiu al spaµiului vectorial Fnq .

Propoziµie 3.4.2. Pentru un cod sistematic C de�nit de matricea H dac α = (α1, α2, . . . , αk) = (x1, x2, . . . , xk) este partea util  a mesajului, ³i

H · xt =(A In−k

)· xt = 0,

atuncix = α ·

(Ik −At

).

Astfel codi�carea mesajului util (i.e. calculul cuvântului de cod corespunz tormesajului) se poate face prin înmulµirea mesajului cu o matrice adecvat .

Page 149: EDP 2010. ISBN 978-973-3-3370-7 Dáné Károly András Dan ...edituradp.ro/site_img/downloads/2013/04/interior-alg-comp-i.pdf · Se ³tie c , metoda lui Gauss de rezolvare a unui

3.4. CODURI LINIARE 149

Demonstraµie. Calculele sunt simple. Le reproducem totu³i aici, datorit  im-portanµei conceptuale a acestora. Fie x = (x1, x2, . . . , xn) mesajul codi�cat.Avem

H · xt = 0 ⇔(A In−k

)· xt = 0

⇔ A ·

x1x2...xk

+

xk+1

xk+2...xn

= 0

xk+1

xk+2...xn

= −A ·

α1

α2...αk

x1x2...xn

=

(Ik−A

α1

α2...αk

⇔ (x1, x2, . . . , xn) = (α1, α2, . . . , αk) ·

(Ik −At

)⇔ x = α ·G

De�niµie 3.4.3. Matricea G = (Ik,−At) se nume³te matricea generatoarecanonic  pentru codul C. În general o matrice G se nume³te matrice genera-toare pentru codul C dac  liniile matricii G formeaz  o baz  a lui C.

Se veri�c  imediat c  între matricea generatoare ³i matricea de control alparit µii are loc relaµia

G ·Ht = 0.

De�niµie 3.4.4. Dac  C este un cod liniar de tipul (n, k) atunci codul

C⊥ = {u ∈ Fnq |u · v = 0, pentru orice v ∈ C}

se nume³te codul dual al lui C. Aici am notat

u · v = u1v1 + u2v2 + . . .+ unvn,

³i a³a cum e de a³teptat u · v se nume³te produsul scalar al celor doi vectori.Vectorii u ³i v se numesc vectori ortogonali dac  u · v = 0, în notaµie u⊥v.

Produsul scalar este biliniar ³i simetric, ceea ce se veri�c  imediat.

Page 150: EDP 2010. ISBN 978-973-3-3370-7 Dáné Károly András Dan ...edituradp.ro/site_img/downloads/2013/04/interior-alg-comp-i.pdf · Se ³tie c , metoda lui Gauss de rezolvare a unui

150 CAPITOLUL 3. CODURI CORECTOARE DE ERORI

Observaµie 3.4.5. Se observ  c  matricea generatoare pentru codul dual estematricea de control al parit µii pentru cod, ³i invers.

Demonstraµie. Într-adev r, s  ne reamintim, c  liniile matricii G sunt vectoridin C, ³i formeaz  o baz  pentru C (H · Gt = 0). Rangul lui H este maxim,k, deci dimensiunea lui C este n − k, egal cu num rul liniilor lui G. Decirangul lui G este de asemenea maxim, n− k. Se vede deci c  rolul lui G ³i Heste simetric, putem scrie ³i G ·Ht = 0, ³i rangulambelormatrici este maxim:liniile lui H sunt vectori liniar independenµi, perpendiculari pe liniile lui G,³i num rul lor �ind maximal, k, formeaz  o baz  pentru subspaµiul vectorilorperpendiculari pe liniile lui G, care este codul dual.

S  menµion m c  este posibil ca u · u = 0, f r  ca u = 0, deci este posibilca u⊥u f r  ca vectorul u s  �e nul. În consecinµ , este posibil ca C ∩C⊥ = ∅respectiv C + C⊥ $ Fn

q , adic  suma subspaµiilor C ³i C⊥ s  nu �e întregspaµiul. Mai mult, este posibil s  avem ³i C = C⊥.

De�niµie 3.4.6. Un cod C pentru care C = C⊥ se nume³te cod autodual .

Vom vedea printre exemplele care urmeaz , ³i un cod autodual.Este momentul deci s  d m câteva exemple. Aceste exemple vor � reluate

³i analizate mai detaliat în secµiunea 3.6 de la pagina 182, în care prezent mun mediu de programare specializat pentru teoria codurilor algebrice, în cadrulsistemului GAP.

Exemple 3.4.7.

1. Fie codul binar de dimensiune k = n−1 ³i lungime n construit în felul ur-m tor: cuvintele de cod sunt formate din mesajul util (x1, x2, . . . , xn−1)³i un simbolul xn de paritate, care este 1 dac 

∑n−1i=1 xi = 1( mod 2) ³i

este 0 dac ∑n−1

i=1 xi = 0( mod 2). Cuvântele cod x = (x1, x2, . . . , xn)veri�c  deci ecuaµia

n∑i=1

xi = 0.

Dac  de�nim matricea cu n coloane ³i de o singur  linie (de rang 1)

H =(1 1 . . . 1

),

atunci cuvintele codului veri�c  ecuaµia H · xt = 0. Se vede c  acest coddetecteaz  o singur  eroare (sau un num r impar de erori).

Page 151: EDP 2010. ISBN 978-973-3-3370-7 Dáné Károly András Dan ...edituradp.ro/site_img/downloads/2013/04/interior-alg-comp-i.pdf · Se ³tie c , metoda lui Gauss de rezolvare a unui

3.4. CODURI LINIARE 151

2. Fie codul binar de dimensiune k ³i lungime n = 2k construit în felulurm tor: cuvintele de cod sunt formate din mesajul util (x1, x2, . . . , xk)repetate înc  o dat . Astfel în �ecare cuvânt de cod avem

xi = xi+k, pentru orice i = 1, 2, . . . , k.

Aceste relaµii pot � privite ca un sistem de ecuaµii liniar ³i omogen înnecunoscutele

x = (x1, x2, . . . , xk, xk+1, . . . , x2k),

având matricea (de tip (k, 2k)) de rang k

H =(Ik −Ik

),

³i va � capabil de detectarea unei singure erori, f r  a � posibil corectarea acesteia. S  observ m, c  acest cod face acela³i lucru ca ³icodul descris în primul exemplu, îns  într-un mod mult mai ine�cient:lungimea codului este aici este 2k faµ  de numai k+1 din primul exemplu.

3. S  construim un cod acum repetând de dou  ori mesajul util. Acesta va� un cod binar de dimensiune k ³i lungime n = 3k. Cuvintele de cod auproprietatea

xi = xi+k = xi+2k, pentru orice i = 1, 2, . . . , k.

Aceste relaµii formeaz  un sistem de ecuaµii liniar ³i omogen în necunos-cutele

x = (x1, x2, . . . , xk, xk+1, . . . , x2k, x2k+1, . . . , x3k),

având matricea de tip (2k, 3k) ³i de rang 2k

H =

(Ik −Ik 0Ik 0 −Ik

)=(A I2k

),

unde Ik (respectiv I2k) este matricea unitate de ordinul k (respectiv 2k),iar matricea A = (Ik Ik)

t. Cuvintele codului veri�c  din nou ecuaµiaH · xt = 0. Se vede de asemenea c  acest cod detecteaz  dou  erori ³icorecteaz  o singur  eroare. El se nume³te cod de repetiµie, ³i este clarc  dac  s-a produs o singur  eroare, repetiµia face posibil  identi�carea³i corectarea erorii.

Pentru k = 3 avem urm torul sistem de ecuaµii i.e. relaµii de calcul alesimbolurilor de control:

Page 152: EDP 2010. ISBN 978-973-3-3370-7 Dáné Károly András Dan ...edituradp.ro/site_img/downloads/2013/04/interior-alg-comp-i.pdf · Se ³tie c , metoda lui Gauss de rezolvare a unui

152 CAPITOLUL 3. CODURI CORECTOARE DE ERORI

x4 = x1x5 = x2x6 = x3x7 = x1x8 = x2x9 = x3.

Matricea de control al parit µii este a³adar

H =

1 0 0 1 0 0 0 0 00 1 0 0 1 0 0 0 00 0 1 0 0 1 0 0 01 0 0 0 0 0 1 0 00 1 0 0 0 0 0 1 00 0 1 0 0 0 0 0 1

=

(I3 I3 0I3 0 I3

).

Matricea de generare a acestui cod este deci

G =(I3 −At

)=(I3 I3 I3

)=

1 0 0 1 0 0 1 0 00 1 0 0 1 0 0 1 00 0 1 0 0 1 0 0 1

.

Prin urmare o informaµie util  α = (α1, α2α3) de 3 simboluri se codi�c în cuvântul de cod de 9 simboluri:

x = (α, α, α) = α ·G.

care este o combinaµie liniar  a liniilor matricii G, cu coe�cienµi α1, α2α3.

4. S  mai consider m un cod de repetiµie binar, o variant  extrem , de�nit în felul urm tor. Fie k = 1, deci avem numai dou  mesaje utile posibile,0 ³i 1. S  repet m mesajul util de n− 1 ori. Astfel �ecare cuvânt de codare proprietatea x1 = x2 = . . . = xn. Considerate ca sistem de ecuaµii,aceste egalit µi se descriu matricial sub forma H · xt = 0, unde

H =

1 1 0 0 · · · 01 0 1 0 · · · 01 0 0 1 · · · 0...

......

.... . .

...1 0 0 0 . . . 1

este o matrice de tip (n− 1, n), de rang evident n− 1. Practic vom aveanumai dou  cuvinte în acest cod: (0, 0, . . . , 0) ³i (1, 1, . . . , 1), ³i se vede

Page 153: EDP 2010. ISBN 978-973-3-3370-7 Dáné Károly András Dan ...edituradp.ro/site_img/downloads/2013/04/interior-alg-comp-i.pdf · Se ³tie c , metoda lui Gauss de rezolvare a unui

3.4. CODURI LINIARE 153

c  acest cod poate detecta n− 1 erori ³i poate corecta pân  la (n− 1)/2erori. Avem deci ³i un exemplu de cod care poate corecta multe erori,dar preµul pl tit este raportul de informaµie util  mic, de numai 1/n. Deasemenea num rul cuvintelor de cod (2) este foarte mic în comparaµie cunum rul total al vectorilor (2n).

5. In acest exemplu �e k = 3, ³i la cele trei simboluri ale informaµiei utileα1 = x1, α2 = x2 ³i α3 = x3 s  mai ad ug m alte trei simboluri decontrol, calculate conform relaµiilor de mai jos:

x4 = x1 + x2x5 = x1 + x3x6 = x2 + x3.

Matricea de control al parit µii este a³adar

H =

1 1 0 1 0 01 0 1 0 1 00 1 1 0 0 1

=(A I3

).

Matricea de generare a acestui cod este deci

G =(I3 −At

)=

1 0 0 1 1 00 1 0 1 0 10 0 1 0 1 1

.

Prin urmare o informaµie util  α = (α1, α2α3) se codi�c  în cuvântul decod:

x = (α1, α2α3, α1 + α2, α1 + α3, α2 + α3) = α ·G,

care este o combinaµie liniar  a liniilor matriciiG, cu coe�cienµii α1, α2α3.S  observ m, c  acest cod este capabil de detectarea a dou  erori, ³ide corectarea unei erori (de ce?). A³adar ³tie exact atât, cât ³tie ³icodul de la punctul 3, în schimb lungimea lui este numai 6 faµ  de 9 alcodului cu repetiµie de la punctul 3. Exemplul acesta arat , c  simplarepetare a transmiterii informaµiei utile nu este optim  pentru detectarea³i corectarea erorilor.

6. În sfâr³it s  consider m codul liniar binar generat de matricea genera-toare de la începutul acestui capitol

G =

1 0 0 0 0 1 10 1 0 0 1 0 10 0 1 0 1 1 00 0 0 1 1 1 1

. (3.10)

Page 154: EDP 2010. ISBN 978-973-3-3370-7 Dáné Károly András Dan ...edituradp.ro/site_img/downloads/2013/04/interior-alg-comp-i.pdf · Se ³tie c , metoda lui Gauss de rezolvare a unui

154 CAPITOLUL 3. CODURI CORECTOARE DE ERORI

Cuvintele de cod sunt combinaµii liniare ale liniilor acestei matrici, decideci dimensiunea codului este 4, iar lungimea este 7. Dac  neuit m ³i lamatricea de control al parit µii al acestui exemplu

H =

0 0 0 1 1 1 10 1 1 0 0 1 11 0 1 0 1 0 1

, (3.11)

se veri�c  u³or c  liniile celor dou  matrici sunt ortogonale, adic 

G ·Ht = 0,

de unde rezult  c  toate cuvintele de cod veri�c  ecuaµia H · xt = 0.Am v zut deja c , acest cod poate detecta dou  erori ³i poate corectao eroare. Se vede deci c , de³i atât acest cod, cât ³i cel de la exemplulanterior 5 corecteaz  o eroare ³i detecteaz  dou , acest cod este totu³imai bun, deoarece raportul informaµiei utile în cuvintele de cod este maimare � 4/7 faµ  de numai 3/6. Codul acesta nu este sistematic, a³a cumse vede din structura matricii H, care nu are forma standard.

S  menµion m c , pentru un cod dat nici matriceaH nici matriceaG nu esteunic . Într-adev r, baza unui (sub-)spaµiu vectorial nu este unic . Este u³orde v zut c , permutând liniile matricii H (sau G) respectiv prin transform riale acestora elementare (adunarea unei linii la alta etc.) codul nu se schimb :C = kerH = Im G � în termenii algebrei liniare a aplicaµiilor liniare de�nitede matricile G ³i H � r mâne neschimbat. Totu³i, dac  permut m coloaneleacestor matrici, codul se schimb .

De�niµie 3.4.8. Dou  coduri liniare C ³i C ′ de acela³i tip (n, k) se numesccoduri echivalente, dac  exist  o permutare a indicilor σ : {1, 2, . . . , n} −→{1, 2, . . . , n}, astfel ca

(x1, x2, . . . , xn) ∈ C ⇔ (xσ(1), xσ(2), . . . , xσ(n)) ∈ C ′

pentru orice cuvânt cod.

Pentru coduri liniare distanµa minim  se poate calcula mai simplu.

Observaµie 3.4.9. Distanµa minim  d a unui cod liniar C este m sura ceamai mic  a unui cuvânt de cod din C.

Într-adev r, s  observ m c  distanµa este invariant  la translaµie, adic d(x, y) = d(x+ z, y + z). De aici rezult  d(x, y) = d(x− y, 0) = w(x− y).

De�niµie 3.4.10. Un cod liniar de lungime n, de dimensiune k ³i de distanµ minim  d se nume³te cod de tip (n, k, d).

Page 155: EDP 2010. ISBN 978-973-3-3370-7 Dáné Károly András Dan ...edituradp.ro/site_img/downloads/2013/04/interior-alg-comp-i.pdf · Se ³tie c , metoda lui Gauss de rezolvare a unui

3.4. CODURI LINIARE 155

S  not m cu mld(H) (Minimal Linear Dependent) num rul minim alcoloanelor liniar dependente ale lui H. Avem urm toarea propoziµie.

Propoziµie 3.4.11. Fie H matricea de control al parit µii unui cod liniar Cde tip (n, k, d), dim(C) = k < n. Atunci avem:

1. mld(H) ≤ rank(H) + 1,

2. k = n− rank(H),

3. d = mld(H),

4. d < n− k + 1.

Demonstraµie. Punctul 1 ³i 2 este evident din de�niµia lui mld(H) respectiva matricii H. Pentru a demonstra punctul 3, s  not m coloanele matricii Hcu c1, c2, . . . , cn. Pentru un cuvânt de cod x = (x1, x2, . . . , xn) ∈ C avemH · xt = x1c1 + x2c2 + . . .+ xncn = 0. Dac  µinem cont de observaµia 3.4.9 dela pagina 154, rezult  d = mld(H).

Acum punctul cod:mld4 este o consecinµ  a punctelor precedente. Într-adev r, k = n−rank(H) ≤ n−mld(H)+1 = n−d+1, ³i de aici d ≤ n−k+1.

3.4.1 Margini pentru coduri liniare

Pentru coduri liniare se pot stabili ³i alte relaµii limitative între parametrii aces-tora, respectiv unele dintre acestea constituie condiµii su�ciente de existenµ pentru coduri liniare având parametrii daµi.

Propoziµie 3.4.12.

1. marginea Gilbert-Varshamov : Dac  avem

qn−k >

d−2∑i=0

Cin−1(q − 1)i,

atunci exist  un cod liniar de tipul (n, k) care are distanµa minim  celpuµin d.

2. marginea Plotkin : Pentru orice cod liniar este valabil  inegalitatea

d ≤ nM(q − 1)

(M − 1)q.

Page 156: EDP 2010. ISBN 978-973-3-3370-7 Dáné Károly András Dan ...edituradp.ro/site_img/downloads/2013/04/interior-alg-comp-i.pdf · Se ³tie c , metoda lui Gauss de rezolvare a unui

156 CAPITOLUL 3. CODURI CORECTOARE DE ERORI

Demonstraµie. Demonstraµia punctului 1 se face prin a ar ta c  se poate con-strui o matrice de control al parit µii H care s  de�neasc  un cod cu propri-etatea cerut . Alegem mai întâi d − 1 vectori coloan  liniar independenµi dinFn−kq , lucru posibil datorit  punctului 4 din propoziµia 3.4.11 de la pagina 155.

Acum prin inducµie, dac  am ales deja j − 1 ≥ d− 1 coloane astfel ca oricared− 1 dintre ele sunt liniar independente atunci num rul tuturor combinaµiilorliniare ale a cel mult d− 2 vectori din ace³ti j − 1 este

d−2∑i=0

Cij−1(q − 1)i,

deci conform ipotezei (³i a faptului c  coe�cienµii binomiali sunt cresc tori înraport cu indicele inferior) rezult  c  alegerea unor noi vectori este posibil pân  valoarea lui j − 1 ajunge la n− 1, adic  valoarea lui j devine n.

S  demonstr m acum punctul 2. Fie C un cod liniar de tipul (n, k) pesteFq ³i �e indicele i, 0 ≤ i ≤ n ales astfel ca exist  în codul C un cuvânt decod al c rui element de ordinul i este nenul. S  not m cu Ci subspaµiul lui Cformat din cuvintele care au zero pe poziµia i. Spaµiul factor C/Ci are evidentq elemente. Dac  num rul total al cuvintelor de cod este M = |C| = qk undek este dimensiunea codului, atunci qk−1 = qk/q = M/|Ci| = |C/Ci|, deci Ci

are qk−1 elemente. Suma total  a m surilor cuvintelor de cod nu dep ³e³tenqk−1(q−1). Num rul cuvintelor de cod nenule este evident qk−1. Avem deci

nqk−1(q − 1) ≥ suma m surilor cuvintelor de cod ≥ d(qk − 1).

De aici obµinem

d ≤ nqk−1(q − 1)

qk − 1=

nqk(q − 1)

q(qk − 1)=

nM(q − 1)

(M − 1)q.

3.4.2 Codi�carea ³i decodi�carea codurilor liniare

Fie C un cod liniar de tip (n, k) peste un corp �nit Fq de�nit cu ajutorulmatricii de control al parit µii H.

Codi�carea este simpl . Dac  codul este sistematic, atunci se construie³teimediat matricea generatoare a codului, ³i codi�carea se reduce la înmulµireamatricial  a p rµii utile a mesajului conform propoziµiei 3.4.2 de la pagina 148.Dac  codul nu este sistematic se rezolv  sistemul de ecuaµii omogen H ·xt = 0unde rank(H) = n− k în raport cu n− k variabile, ³i partea util  a mesajuluipoate � mapat  pe cei k parametrii ai soluµiei. În alµi termeni, se determin 

Page 157: EDP 2010. ISBN 978-973-3-3370-7 Dáné Károly András Dan ...edituradp.ro/site_img/downloads/2013/04/interior-alg-comp-i.pdf · Se ³tie c , metoda lui Gauss de rezolvare a unui

3.4. CODURI LINIARE 157

o baz  a nucleului ker(H) care va constitui matricea generatoare a codului.Codi�carea este atunci din nou o înmulµire matricial .

Decodi�carea în ambele cazuri începe prin înmulµirea matricial  s = H ·yt,unde y este mesajul recepµionat. Dac  rezultat este s = 0, atunci y = x ∈ C,³i dând la o parte simbolurile de control, avem mesajul util transmis.

Ce se întâmpl  îns  dac  s = 0, adic  y = x pentru �ecare cuvânt de codx? Iat  un algoritm "simplu" de decodi�care. Mai întâi trebuie s  introducemo m sur  a erorii prin urm toarea de�niµie.

De�niµie 3.4.13. Dac  vectorul recepµionat este y atunci vectorul

S(y) = H · yt

se nume³te sindromul lui y.

Cu ajutorului sindromului putem construi un algoritm de decodi�care acodului liniar C. S  observ m c , dac  e = y − x este eroarea propriu zis produs  în procesul transmisiei mesajului x, atunci sindromul lui y este ³isindromul erorii! Într-adev r, H · e = H · (y− x) = H · y−H · x = H · y− 0 =H · y. A³adar mulµimile de vectori y + C ³i e + C coincid, y + C = e + C, ³ireprezint  clasa de echivalenµ  a mesajului recepµionat în raport cu subspaµiulC. Bineînµeles sindromul este nul exact atunci când H · y = 0, adic  y estecuvânt de cod.

Dac  ne aducem aminte c , am f cut ipoteza c  erori mai multe sunt maipuµin probabile, eroarea cea mai probabil  trebuie identi�cat  cu vectorul eavând acela³i sindrom cu y, dar care are m sura Hamming cea mai mic !

Iat  deci algoritmul. Întocmim un tabel (se nume³te tabela Slepian) cutoate clasele de echivalenµ  y+C � pentru �ecare sindrom posibil avem o clas � ale vectorilor din Fn

q , desemnând drept reprezentanµi vectorul de m sur Hamming cea mai mic . C ut m apoi în acest tabel mesajul recepµionat ³iidenti�c m reprezentantul e al clasei în care se a� . Cuvântul de cod trimiscel mai probabil este x = y − e.Se cuvine s  d m ³i un exemplu concret. S  întocmim tabela Slepian pentruunul din codurile date în exemplele 3.4.7 de la pagina 150. Normal, alegemcodul de lungime minim ... deci exemplul 5. Iat  tabelul (incomplet; clasele deechivalenµ  se a�  pe coloane, prima coloan  este C, conµine vectorii codului):

Page 158: EDP 2010. ISBN 978-973-3-3370-7 Dáné Károly András Dan ...edituradp.ro/site_img/downloads/2013/04/interior-alg-comp-i.pdf · Se ³tie c , metoda lui Gauss de rezolvare a unui

158 CAPITOLUL 3. CODURI CORECTOARE DE ERORI

A 000 001 010 011 100 101 110 111

B 000000 000001 000010 100000 000100 010000 001000 001001C 001110 001111 001100 101110 001010 011110 000110 000111

010101 . . . . . . .011011 . . . . . . .100011 . . . . . . .101101 . . . . . . .110110 . . . . . . .111000 . . . . . . .

A. sindromulB. reprezentanµii claselor, codurile de m sur  minim C. celelalte elemente ale claselor (tabel incomplet)

Oricum, tabelul este necesar doar pentru a selecta din �ecare clas  deechivalenµ  (coloan ) vectorul de m sur  Hamming minim  (sau unul dintreace³tia în cazul în care exist  mai mulµi vectori de m sur  minim ) S  pre-supunem c  am recepµionat mesajul y = (1, 1, 0, 0, 0, 1). Cum îl decodi�c m?Calcul m mai întâi sindromul s = S(y) prin

S(y) = H · yt =

1 1 0 1 0 01 0 1 0 1 00 1 1 0 0 1

·

110001

=

010

.

Sindromul ne�ind nul, s-au produs erori. În tabela Slepian coloana corespun-z toare sindromului calculat este coloana a treia, iar reprezentantul clasei dem sur  Hamming minim  este e = (0, 0, 0, 0, 1, 0). Cuvântul cod transmis afost (cu mare probabilitate) x = y − e = (1, 1, 0, 0, 1, 1). Aceste este cuvântulde cod (unic) a�at la distanµa Hamming minim  faµ  de cuvântul recepµionat.

3.5 Coduri liniare speciale

Metoda de decodificare descris  în secµiunea precedent  are o impor-tanµ  mai mult de principiu. În practic , pentru coduri mai lungi tabelul

Slepian este foarte mare, în plus selectarea reprezentantului de m sur  minim este de asemenea problematic . Metode mai e�ciente de decodi�care presupunpropriet µi speciale pentru codurile liniare folosite. În secµiunea care urmeaz facem cuno³tinµ  cu câteva astfel de coduri.

Page 159: EDP 2010. ISBN 978-973-3-3370-7 Dáné Károly András Dan ...edituradp.ro/site_img/downloads/2013/04/interior-alg-comp-i.pdf · Se ³tie c , metoda lui Gauss de rezolvare a unui

3.5. CODURI LINIARE SPECIALE 159

3.5.1 Coduri Hamming

De�niµie 3.5.1. Fie n = 2m − 1,m ≥ 2, q = 2, ³i �e matricea H de tipulm× (2m − 1) construit  din toµi vectorii coloan  binari nenuli de lungime m.Codul liniar binar de�nit de matricea H se nume³te cod Hamming binar , ³i senoteaz  cu Cm.

Mai general, dac  q = 2, atunci matricea H construit  similar din toµivectorii nenuli de lungime m � dintre perechile de vectori în care unul este unmultiplu scalar al celuilalt reµinându-se numai unul � se nume³te cod Hamming .

Codul Cm este deci un cod liniar binar, de tipul (2m − 1, 2m − 1 −m, 3).Într-adev r, deoarece 1 + 2 = 3 (sic! � egalitatea trebuie v zut  totu³i înreprezentarea binar ), num rul minim de coloane liniar dependente este 3, deciconform punctului 3 din propoziµia 3.4.11 de la pagina 155, distanµa minim a codului este d = 3. Astfel codul Hamming Cm detecteaz  dou  erori ³icorecteaz  una, conform observaµiei 3.3.6 de la pagina 147. Mai general, codulHamming peste corpul Fq este un cod liniar de tipul ((qm − 1)/(q − 1), (qm −1)/(q − 1) −m, 3). S  remarc m, c  un cod Hamming este de�nit practic denum rul m (³i bineînµeles corpul de scalari dat de q).

D m ca exemplu codul C3, matricea de veri�care a parit µii ³i matriceade generare a acestuia. Vom folosi programul GAP, mai precis un pachetspecializat al acestuia, GUAVA, conceput pentru ca suport pentru cercet riîn coduri algebrice corectoare de erori (vezi ³i secµiunea 3.6 pentru mai multedetalii).

gap> C_3:=HammingCode(3,GF(2));a linear [7,4,3]1 Hamming (3,2) code over GF(2)gap> Display(CheckMat(C_3));. . . 1 1 1 1. 1 1 . . 1 11 . 1 . 1 . 1gap> Display(GeneratorMat(C_3));1 1 1 . . . .1 . . 1 1 . .. 1 . 1 . 1 .1 1 . 1 . . 1

Pentru m = 3 avem matricea de control al parit µii 3.11 din exemplul 6 de lapagina 153, reluat de la exemplul introductiv de la începutul acestui capitol.

Analogia cu descoperirea monezii false descris acolo constituie cheia algo-ritmului de decodi�care pentru orice cod Hamming Cm: sindromul s = S(y)

Page 160: EDP 2010. ISBN 978-973-3-3370-7 Dáné Károly András Dan ...edituradp.ro/site_img/downloads/2013/04/interior-alg-comp-i.pdf · Se ³tie c , metoda lui Gauss de rezolvare a unui

160 CAPITOLUL 3. CODURI CORECTOARE DE ERORI

� în cazul în care nu este nul � citit în baza doi, este num rul de ordineal simbolului recepµionat eronat (vezi secµiunea 3.6 pentru tabela Slepian alacestui cod)!

Ideea bitului de paritate ad ugat la vectorul biµilor utili poate � fructi�catmai general. Dac  aplic m aceast  idee unui cod liniar de tip (n, k, d) obµinemun nou cod liniar de lungime n + 1, unde ultimul simbol este suma negativ a simbolurilor cuvântului de cod. În termenii matricii de veri�care a parit µii,acest mecanism este descris în de�niµia care urmeaz .

De�niµie 3.5.2. Dac  complet m matricea de veri�care a parit µii H a unuicod liniar C de tipul (n, k, d) cu o coloan  de zerouri, apoi cu o linie de 1,atunci obµinem o matrice H care de�ne³te codul extins al codului C.

Astfel matricea de control al parit µii pentru codului extins al codului C3

este

H =

1 1 1 1 1 1 1 10 0 0 1 1 1 1 00 1 1 0 0 1 1 01 0 1 0 1 0 1 0

.

Acest cod are tipul (8, 4, 4), deci corecteaz  numai o eroare dar detecteaz  trei!Pachetul GUAVA furnizeaz  matricea de veri�care a parit µii în forma

standard (partea dreapt  este matricea unitate).

gap> C_3ext:=ExtendedCode(C_3);a linear [8,4,4]2 extended codegap> Display(CheckMat(C_3ext));. 1 1 1 1 . . .1 . 1 1 . 1 . .1 1 . 1 . . 1 .1 1 1 . . . . 1gap> Display(GeneratorMat(C_3ext));1 1 1 . . . . 1. 1 1 1 1 . . .. . 1 . 1 1 . 1. . . 1 1 1 1 .

Pe lâng  extinderea unui cod, mai avem la dispoziµie ca mecanism de generarede noi coduri, considerarea codului dual, conform de�niµiei 3.4.4 de la pagina149. Folosind acest mecanism, avem urm toarele coduri.

De�niµie 3.5.3. Codul dual al codului Hamming binar Cm de tipul (2m −1, 2m − 1−m, 3) se nume³te codul binar simplex .

Page 161: EDP 2010. ISBN 978-973-3-3370-7 Dáné Károly András Dan ...edituradp.ro/site_img/downloads/2013/04/interior-alg-comp-i.pdf · Se ³tie c , metoda lui Gauss de rezolvare a unui

3.5. CODURI LINIARE SPECIALE 161

Parametrii acestuia sunt (2m − 1,m, 2m−1).

gap> C_BinSim:=DualCode(C_3);a linear [7,3,4]2..3 dual codegap> CoveringRadius(C_BinSim);3gap> Display(CheckMat(C_BinSim));1 1 1 . . . .1 . . 1 1 . .. 1 . 1 . 1 .1 1 . 1 . . 1gap> Display(GeneratorMat(C_BinSim));. 1 1 1 1 . .1 . 1 1 . 1 .1 1 . 1 . . 1

De�niµie 3.5.4. Consider m codul extins Hamming, având tipul (2m, 2m −1 − m, 4). Codul dual al acestui cod se nume³te cod Reed-Muller de ordinulîntâi.

Parametrii acestui cod sunt (2m,m+ 1, 2m−1).

gap> C_RM:=DualCode(C_3ext);a linear [8,4,4]2 dual codegap> IsSelfDualCode(C_RM);truegap> Display(CheckMat(C_RM));1 1 1 . . . . 1. 1 1 1 1 . . .. . 1 . 1 1 . 1. . . 1 1 1 1 .gap> Display(GeneratorMat(C_RM));. 1 1 1 1 . . .1 . 1 1 . 1 . .1 1 . 1 . . 1 .1 1 1 . . . . 1

3.5.2 Coduri liniare ciclice

De�niµie 3.5.5. Un cod C ⊂ Fnq liniar se nume³te cod ciclic, dac  permut rile

ciclice ale cuvintelor de cod sunt tot cuvinte de cod. În formule, aceast  inva-rianµ  a mulµimii C la permut rile ciclice se exprim  astfel:

(c0, c1, . . . , cn−1) ∈ C ⇒ (cn−1, c0 . . . , cn−2) ∈ C.

Page 162: EDP 2010. ISBN 978-973-3-3370-7 Dáné Károly András Dan ...edituradp.ro/site_img/downloads/2013/04/interior-alg-comp-i.pdf · Se ³tie c , metoda lui Gauss de rezolvare a unui

162 CAPITOLUL 3. CODURI CORECTOARE DE ERORI

Fie c = (c0, c1, . . . , cn−1) un vector din Fnq . Introducem notaµia Z(c) =

(cn−1, c0, . . . , cn−2) pentru permutatrea ciclic  a elementelor vectorului c. Dac identi�c m spaµiul vectorial Fn

q cu spaµiul factor al polinoamelor cu coe�-cienµi în Fq cu idealul generat de polinomul Xn − 1, deci cu spaµiul vectorialFq[X]/(Xn − 1), atunci se vede c  permutarea ciclic  a elementelor unui vec-tor, descris  de aplicaµia liniar  Z corespunde în acest spaµiu înmulµirii cu X,modulo Xn − 1.

Avem în propoziµia care urmeaz  o caracterizare natural  a codurilor ciclice.Fie C ⊂ Fn

q un cod ciclic. S  de�nim aplicaµia

f : C −→ Fq[X]/(Xn − 1)

c = (c0, c1, . . . , cn−1) ∈ C −→ c0 + c1X + . . .+ cn−1Xn−1 ∈ Fq[X]/(Xn − 1).

Aplicaµia f este evident liniar  ³i bijectiv . S  observ m ³i faptul c , inelulFq[X]/(Xn − 1) este inel principal. Orice ideal al lui este generat de (imag-inea unui-) un singur polinom, i.e. este format din toµi multiplii acestuia.Într-adev r, preimaginea unui ideal al inelului factor este ideal în Fq[X], care�ind ideal principal, este generat de un polinom. Idealul din inelul factor estegenerat astfel de imaginea acestui polinom.

Propoziµie 3.5.6. Codul liniar C este ciclic exact atunci când imaginea luieste ideal în inelul factor Fq[X]/(Xn − 1) (polinoame modulo Xn − 1).

Demonstraµie. Deoarece Xn = 1 mod (Xn − 1), avem

f(Z(c)) = cn−1 + c0X + . . .+ cn−2Xn−1 mod (Xn − 1)

= cn−1Xn + c0X + . . .+ cn−2X

n−1 mod (Xn − 1)

= X · f(c) mod (Xn − 1).

Astfel f(C) este ideal în Fq[X]/(Xn − 1).Invers, dac  f(C) este ideal în Fq[X]/(Xn − 1), atunci în particular în-

mulµirea cu X transform  un element

c0 + c1X + . . .+ cn−1Xn−1 ∈ Fq[X]/(Xn − 1)

într-un element

X(c0 + c1X + . . .+ cn−1Xn−1) =

= c0X + c1X2 + . . .+ cn−1X

n

= cn−1 + c0X + . . .+ cn−2Xn−1 ∈ Fq[X]/(Xn − 1)

deci odat  cu c ∈ C avem ³i Z(c) ∈ Fnq . Acum dac  f(C) este generat de

polinomul g, de grad m, atunci unui cod c ∈ C îi corespunde f(c) = h · g

Page 163: EDP 2010. ISBN 978-973-3-3370-7 Dáné Károly András Dan ...edituradp.ro/site_img/downloads/2013/04/interior-alg-comp-i.pdf · Se ³tie c , metoda lui Gauss de rezolvare a unui

3.5. CODURI LINIARE SPECIALE 163

mod (Xn − 1), deci orice cod este multiplu mod (Xn − 1) al polinomuluig. În particular, codul 0 reprezentat ³i de polinomul Xn − 1 este multiplu (mod (Xn − 1)) al polinomului g, deci g|(Xn − 1). Într-adev r, dac  cel maimare divizor comun (g,Xn − 1) = d este un polinom de grad strict mai micdecât m, atunci d = gh + (Xn − 1)p = gh mod (Xn − 1) deci d ∈ f(C) încontradicµie cu alegerea generatorului idealului f(C). Deci (g,Xn − 1) = gadic  g|(Xn−1). Dac  polinomul g este ³i monic (i.e. coe�cientul lui Xm este1), atunci ele este unic.

În felul acesta aplicaµia f identi�c  cuvintele de cod din C cu polinoamede grad cel mult n− 1 cu coe�cienµi din Fq. Vom face aceast  identi�care f r s  ne mai referim la aplicaµia f , prin urmare putem spune (în sensul acesteiidenti�c ri) c  C este un ideal în Fq[X]/(Xn − 1).

S  presupunem în continuare faptul c  n ³i q sunt relativ prime, (n, q) = 1.

De�niµie 3.5.7. Polinomul g care genereaz  idealul C în inelul factorFq[X]/(Xn − 1), se nume³te polinom generator al codului C.

A³adar polinomul generator al codului ciclic C de lungime n este un divizoral polinomului Xn − 1. S  calcul m matricea generatoare a acestui cod liniarciclic C.

Propoziµie 3.5.8. Fie C un cod liniar ciclic de lungime n ³i dimensiune k,generat de polinomul g = g0 + g1X + . . .+ gmXm de grad m = n− k. Atuncimatricea generatoare a codului C este

G =

g0 g1 . . . gm 0 . . . 00 g0 . . . gm−1 gm . . . 0. . . . . . .0 0 . . . g0 g1 . . . gm

,

matrice având k linii.

Demonstraµie. Ideea construcµiei acestei matrici este înmulµirea polinomuluigenerator cu X. Cu un u³or abuz de notaµie putem scrie deci

G =

gXg...

Xk−1g

Page 164: EDP 2010. ISBN 978-973-3-3370-7 Dáné Károly András Dan ...edituradp.ro/site_img/downloads/2013/04/interior-alg-comp-i.pdf · Se ³tie c , metoda lui Gauss de rezolvare a unui

164 CAPITOLUL 3. CODURI CORECTOARE DE ERORI

S  ar t m c  aceast  matrice genereaz  codul C. Codul �ind ciclic, ³iprima linie a matricii �ind cuvânt de cod, rezult  c  celelalte k − 1 linii sunttot cuvinte de cod. Mai avem de ar tat c  ultima linie permutat  ciclic estetot cuvânt de cod.

Pentru aceasta s  observ m c , exist  un polinom h de grad k

h = h0 + h1X + . . .+ hkXk,

unde deci hk = 0, astfel ca Xn − 1 = g · h, sau g · h = 0 mod (Xn − 1). Scris aceast  egalitate mai explicit este potrivit  pentru exprimarea lui Xkg:

Xkg = − 1

hk(h0g + h1(Xg) + . . .+ hk−1X

k−1g),

ceea ce este o combinaµie liniar  a celor k linii ale matricii G. Mai avem demenµionat c  în mod vizibil � gm = o � matricea G are rangul k, deci estematrice generatoare pentru codul C.

S  mai facem o observaµie: �e informaµia util  α = (α0, α1, . . . , αk−1). S calcul m α ·G. Avem

α ·G =(α0 α1 . . . αk−1

gXg...

Xk−1g

= α0g + α1Xg + . . .+ αk−1X

k−1g

= f(α)g.

Pe scurt, putem a�rma:

Propoziµie 3.5.9. Codi�carea mesajului α este înmulµirea "polinomului" α cugeneratorul codului g.

Cu alte cuvinte operaµia de codi�care este o înmulµire polinomial ! Co-durile liniare ciclice sunt într-adev r speciale, ³i au avantaje în aplicaµii carecer o codi�care rapid .

S  vedem cum se face decodi�care în cazul codurilor liniare ciclice. Începemcu o de�niµie.

De�niµie 3.5.10. Polinomul

h =Xn − 1

g

se nume³te polinom de veri�care a parit µii al codului C.

Page 165: EDP 2010. ISBN 978-973-3-3370-7 Dáné Károly András Dan ...edituradp.ro/site_img/downloads/2013/04/interior-alg-comp-i.pdf · Se ³tie c , metoda lui Gauss de rezolvare a unui

3.5. CODURI LINIARE SPECIALE 165

Numele acestui polinom este justi�cat în urm toarea propoziµie.

Propoziµie 3.5.11. Fie g ³i h polinomul generator ³i polinomul de veri�carea parit µii respectiv pentru un cod liniar ciclic C. Atunci

c ∈ C ⇔ c · h = 0 mod (Xn − 1).

Demonstraµie. Dac  c ∈ C atunci exist  un polinom α astfel ca c = α · g.Atunci c · h = α · g · h = α · (Xn − 1) = 0 mod (Xn − 1), ³i invers.

Astfel detectarea erorii este tot o înmulµire polinomial  (modulo Xn− 1)!Rezultatul nul semni�c  lipsa erorii, iar cel nenul existenµa erorii.

Din egalitatea g · h = Xn − 1 se vede c  rolul polinoamelor g ³i h esteinterschimbabil. Mai precis are loc urm toarea propoziµie.

Propoziµie 3.5.12. Fie C un cod liniar ciclic de tip (n, k), ³i �e g polinomuls[u generator. Atunci codul dual C⊥ este un cod ciclic de tip (n, n− k) avândpolinomul generator

h⊥ = Xdeg(h)h(1

X),

unde h = Xn−1g .

Demonstraµie. Not m ca mai înainte h = h0 + h1X + . . . + hk−1Xk−1 ³i c =

c0 + c1X + . . .+ cn−1Xn−1. Coe�cientul lui xi în produsul polinoamelor c · h

este∑n−1

j=0 cjhi−j ³i evident exponenµii puterilor lui x sunt redu³i modulo n.S  observ m deci c  matricea de veri�care a parit µii codului C este:

0 . . . 0 0 hk 0 . . . h1 h00 . . . 0 hk hk−1 0 . . . h0 0. . . . . . . . .hk . . . h2 h1 h0 0 . . . 0 0

pentru care are loc H · ct = 0 pentru orice cuvânt de cod. Rangul lui H esteîn mod vizibil n− k deci dimensiunea nucleului este n− (n− k) = k, de underezult  c  H este matricea de veri�care a parit µii pentru codul C generat depolinomul g.

De�niµie 3.5.13. Polinomul hk + hk−1X + . . .+ h0Xk se nume³te polinomul

reciproc al polinomului h.

S  d m în sfâr³it ³i un exemplu care se poate urm ri ³i f r  suport de calculdeosebit.

Page 166: EDP 2010. ISBN 978-973-3-3370-7 Dáné Károly András Dan ...edituradp.ro/site_img/downloads/2013/04/interior-alg-comp-i.pdf · Se ³tie c , metoda lui Gauss de rezolvare a unui

166 CAPITOLUL 3. CODURI CORECTOARE DE ERORI

Exemplu 3.5.14. Fie q = 2 ³i n = 7. Avem descompunerea X7 − 1 = (X3 +X+1)(X4+X2+X+1). Alegem g = X3+X+1. Atunci h = X4+X2+X+1iar h⊥ = X4 +X3 +X2 + 1. Matricile de generare ³i de veri�care a parit µiiG respectiv H sunt:

G =

1 1 0 1 0 0 00 1 1 0 1 0 00 0 1 1 0 1 00 0 0 1 1 0 1

respectiv

H =

0 0 1 0 1 1 10 1 0 1 1 1 01 0 1 1 1 0 0

.

Cum putem obµine forme canonice pentru matricea generatoare ³i matriceade veri�care a parit µii pentru un cod ciclic C? R spunsul este dat în propoziµiacare urmeaz .

Propoziµie 3.5.15. Fie C un cod liniar ciclic de lungime n ³i dimensiune k,generat de polinomul g de grad m = n − k. Fie r(i) resturile împ rµirilor luiXi la g, i = 0, 1, . . . , (n− 1), respectiv �e g(i) = Xk(Xi − r(i)). Atunci:

1. Matricea de veri�care a parit µii codului C este

H =(r(0) r(1) . . . r(n−1)

),

unde coloanele sunt evident coe�cienµii polinoamelor r(i).

2. Matricea generatoare a lui C este

G =(g(m) g(m+1) . . . g(n−1)

),

unde coloanele sunt coe�cienµii polinoamelor.

Demonstraµie. Pentru a demonstra 1 s  observ m c  polinoamele X i − r(i)

sunt divizibile cu g, deci Xi− r(i) ∈ C. Polinoamele g(i) mod (Xn−1) sunt liniarindependente ³i formeaz  de liniile unei matrici generatoare pentru C. S  maiobserv m c  aceast  matrice va avea ³i forma canonic .

Pentru punctul 2 s  observ m c  polinoamele r(i) sunt diferite dou  câtedou , ³i matricea H are pentru orice cuvânt de cod c proprietatea:

H · ct = c0r0 + c1r1 + . . .+ cn−1rn−1

= c0 + c1X + . . .+ cn−1Xn−1 mod (g)

= 0 mod (g).

Page 167: EDP 2010. ISBN 978-973-3-3370-7 Dáné Károly András Dan ...edituradp.ro/site_img/downloads/2013/04/interior-alg-comp-i.pdf · Se ³tie c , metoda lui Gauss de rezolvare a unui

3.5. CODURI LINIARE SPECIALE 167

S  vedem un exemplu concret pentru toate acestea. Vom face calculele înGUAVA.

gap> x:=Indeterminate(GF(2),"x");xgap> m:=3;3gap> g:=x^m+x+1;x^3+x+Z(2)^0gap> C:=GeneratorPolCode(f,7,GF(2));a cyclic [7,4,1..3]1 code defined by generator polynomial over GF(2)gap> n:=7;7gap> k:=n-m;4gap> IsCyclicCode(C);truegap> GeneratorPol(C);x^3+x+Z(2)^0gap> h:=CheckPol(C);x^4+x^2+x+Z(2)^0gap> G:=GeneratorMat(C);[ [ Z(2)^0, Z(2)^0, 0*Z(2), Z(2)^0, 0*Z(2), 0*Z(2), 0*Z(2) ],[ 0*Z(2), Z(2)^0, Z(2)^0, 0*Z(2), Z(2)^0, 0*Z(2), 0*Z(2) ],[ 0*Z(2), 0*Z(2), Z(2)^0, Z(2)^0, 0*Z(2), Z(2)^0, 0*Z(2) ],[ 0*Z(2), 0*Z(2), 0*Z(2), Z(2)^0, Z(2)^0, 0*Z(2), Z(2)^0 ] ]

gap> Display(G);1 1 . 1 . . .. 1 1 . 1 . .. . 1 1 . 1 .. . . 1 1 . 1gap> H:=CheckMat(C);[ [ Z(2)^0, 0*Z(2), Z(2)^0, Z(2)^0, Z(2)^0, 0*Z(2), 0*Z(2) ],[ 0*Z(2), Z(2)^0, 0*Z(2), Z(2)^0, Z(2)^0, Z(2)^0, 0*Z(2) ],[ 0*Z(2), 0*Z(2), Z(2)^0, 0*Z(2), Z(2)^0, Z(2)^0, Z(2)^0 ] ]

gap> Display(H);1 . 1 1 1 . .. 1 . 1 1 1 .. . 1 . 1 1 1gap> for i in [m..n-1] do

Display(x^k*(x^i-(x^i mod g)) mod (x^n-1));

Page 168: EDP 2010. ISBN 978-973-3-3370-7 Dáné Károly András Dan ...edituradp.ro/site_img/downloads/2013/04/interior-alg-comp-i.pdf · Se ³tie c , metoda lui Gauss de rezolvare a unui

168 CAPITOLUL 3. CODURI CORECTOARE DE ERORI

od;% matricea G

x^5+x^4+Z(2)^0 % 1 0 0 0 1 1 0x^6+x^5+x % 0 1 0 0 0 1 1x^6+x^5+x^4+x^2 % 0 0 1 0 1 1 1x^6+x^4+x^3 % 0 0 0 1 1 0 1gap> for i in [0..(n-1)] do

Display(x^i mod g);od;

% matricea H^tZ(2)^0 % 1 0 0x % 0 1 0x^2 % 0 0 1x+Z(2)^0 % 1 1 0x^2+x % 0 1 1x^2+x+Z(2)^0 % 1 1 1x^2+Z(2)^0 % 1 0 1

A³adar matricea generatoare în forma canonic  a codului C este

G =

1 0 0 0 1 1 00 1 0 0 0 1 10 0 1 0 1 1 10 0 0 1 1 0 1

=(I4 A

).

Este interesant s  remarc m � m car ³i pentru frumuseµea leg turilor dintre"teoria corpurilor de numere �nite" ³i teoria codurilor corectoare de erori �urm torul fapt:

Propoziµie 3.5.16. Codurile binare Hamming sunt ciclice.

Demonstraµie. Consider m corpul �nit Fq = GF (q), unde q = 2m. Grupulmultiplicativ F ∗

q al acestui corp se poate scrie cu ajutorul unui element primitivα sub forma mulµimii puterilor acestuia, (vezi spre exemplu tabelele exemplelorde corpuri 3.2.2, de la paginile 116, 117, 119, 121 respectiv). A³adar �ecareputere a elementului primitiv se poate scrie astfel

αi = a0 + a1α+ a2α2 + . . .+ am−1α

m−1.

Matricea format  din ace³ti coe�cienµi scri³i pe coloane este

H =(1 α α2 . . . α2m−1

),

o matrice de tip (m, 2m − 1) ³i conµine toµi vectorii binari nenului de lungimem. Codul de�nit de H este deci codul Hamming de tipul (2m − 1,m, 3)!

Page 169: EDP 2010. ISBN 978-973-3-3370-7 Dáné Károly András Dan ...edituradp.ro/site_img/downloads/2013/04/interior-alg-comp-i.pdf · Se ³tie c , metoda lui Gauss de rezolvare a unui

3.5. CODURI LINIARE SPECIALE 169

Un vector de lungime n = 2m−1, c = (c0, c1, . . . , cn−1), este cuvânt de coddac  H · ct = 0, adic  în termenii polinomiali c(α) = 0. S  ne aducem aminteacum c  α este r d cin  numai pentru polinoamele multiplii ai polinomului s uminimal � s -l not m pe acesta acum g � deci g|c, adic  codul C este generatde g!

S  amintim f r  demonstraµie ³i propoziµia

Propoziµie 3.5.17. Orice cod simplex este ciclic.

Ultima întrebare pe care o punem acum este: cum se face corectarea eroriiîn cazul codurilor liniare ciclice?

Propoziµie 3.5.18. Fie codul liniar ciclic C generat de polinomul g, matriceade veri�care a parit µii H. Atunci sindromul S(y) al unui mesaj recepµionat yare proprietatea

S(y) = y mod (g).

Prin urmare dac  diferenµa e = y − c faµ  de un cuvânt de cod c este eroareaprodus  în cursul transmisiei, atunci S(y) = S(e). Dac  în plus algem cuvântulde cod c astfel ca deg(e) < deg(g), atunci S(y) = e.

Demonstraµie. Fie y = (y0, y1, . . . , yn−1). Atunci

S(y) = H · yt = y0r0 + y1r1 + . . .+ yn−1rn−1

= y0 + y1X + . . .+ yn−1Xn−1 mod (g)

= y mod (g).

Pe baza acestei propoziµii se observ  deci c  sindromul cuvântului y estenul exact atunci când polinomul y este nul mod y. A³adar în loc s  înmulµimmesajul recepµionat cu polinomul de veri�care a parit µii h putem împ rµi cupolinomul de generare g. Mai mult, deoarece codul este ciclic dintr-un singurreprezentant al unei clase de echivalenµ  se pot obµine toate prin înmulµire modXn − 1. Toate acestea se pot însuma în urm torul algoritm de decodi�care:

Propoziµie 3.5.19. Fie C un cod ciclic de lungime n generat de polinomul gpeste un corp �nit Fq. S  presupunem c  C poate corecta t erori.

1. Detectarea erorii. Împ rµim mesajul recepµionat y la polinomul g, ³ireµinem restul r. Avem deci r = S(y) = S(e) = e, unde vectorul e esteeroarea cea mai probabil .

Page 170: EDP 2010. ISBN 978-973-3-3370-7 Dáné Károly András Dan ...edituradp.ro/site_img/downloads/2013/04/interior-alg-comp-i.pdf · Se ³tie c , metoda lui Gauss de rezolvare a unui

170 CAPITOLUL 3. CODURI CORECTOARE DE ERORI

2. Corectarea erorii.Calcul m si = Xir( mod g) pentru toµi i : 0 ≤ i ≤(n−1). Dac  în lista si se g se³te un cuvânt sj de m sur  Hamming maimic  decât t, atunci eroarea cea mai probabil  este Xn−jsj mod (Xn−1).În caz contrar eroarea nu poate � corectat .

Exemple 3.5.20. Iat  ³i dou  exemple de calcul comentate.

• S  consider m un polinom divizor al polinomului x7 − 1. Pentru aceastadescompunem polinomul x7 − 1 în factori...bineînµeles cu sprijinul GAP.

gap> Factors(PolynomialRing(GF(2)),x^7-1);[ x+Z(2)^0,x^3+x+Z(2)^0,x^3+x^2+Z(2)^0 ]

Vom alege ca polinom generator al unui cod ciclic de lungime 7 polinomul

g = x3 + x+ 1.

gap> x:=Indeterminate(GF(2),"x");xgap> g:=x^3+x+1; % polinom generatorx^3+x+Z(2)^0gap> C:=GeneratorPolCode(g,7,GF(2)); % cod ciclic generata cyclic [7,4,3]1 code defined by generator pol. over GF(2)gap> MinimumDistance(C);3gap> Display(GeneratorMat(C));1 1 . 1 . . .. 1 1 . 1 . .. . 1 1 . 1 .. . . 1 1 . 1

gap> Display(CheckMat(C));1 . 1 1 1 . .. 1 . 1 1 1 .. . 1 . 1 1 1

gap> p:=x^6+x^4+x^3+x+1; % mesaj recepµionatx^6+x^4+x^3+x+Z(2)^0gap> r:=p mod g;x+Z(2)^0gap> for i in [0..6] do Print(i," ",x^i*r mod g,"\n"); od;0 x+Z(2)^0

Page 171: EDP 2010. ISBN 978-973-3-3370-7 Dáné Károly András Dan ...edituradp.ro/site_img/downloads/2013/04/interior-alg-comp-i.pdf · Se ³tie c , metoda lui Gauss de rezolvare a unui

3.5. CODURI LINIARE SPECIALE 171

1 x^2+x2 x^2+x+Z(2)^03 x^2+Z(2)^04 Z(2)^0 % pol. m s. minim ,5 x % sau,6 x^2 % sau.gap> e:=x^3*(x^4*r mod g) mod (x^7-1); % polinom eroare...x^3gap> e:=x^2*(x^5*r mod g) mod (x^7-1); % sau...x^3gap> e:=x*(x^6*r mod g) mod (x^7-1); % sau.x^3gap> p-e;x^6+x^4+x+Z(2)^0; % mesaj corectat

• S  consider m un polinom divizor al polinomului x15−1. Descompunem� tot cu ajutorul GAP � polinomul x7 − 1 în factori.

gap> Factors(PolynomialRing(GF(2)),x^15-1);[ x+Z(2)^0,x^2+x+Z(2)^0,x^4+x+Z(2)^0,x^4+x^3+Z(2)^0,x^4+x^3+x^2+x+Z(2)^0 ]

S  alegem ca polinom generator al unui cod ciclic de lungime 15 polino-mul

g = (x4 + x+ 1) · (x4 + x3 + x2 + x+ 1) = x8 + x7 + x6 + x4 + 1.

gap> g:=x^8+x^7+x^6+x^4+1; % polinom generatorx^8+x^7+x^6+x^4+Z(2)^0gap> C:=GeneratorPolCode(g,15,GF(2)); % cod ciclic generata cyclic [15,7,1..5]3..5 code defined by gen. pol. over GF(2)gap> MinimumDistance(C); % distanµa minim 5gap> Display(GeneratorMat(C));1 . . . 1 . 1 1 1 . . . . . .. 1 . . . 1 . 1 1 1 . . . . .. . 1 . . . 1 . 1 1 1 . . . .. . . 1 . . . 1 . 1 1 1 . . .

Page 172: EDP 2010. ISBN 978-973-3-3370-7 Dáné Károly András Dan ...edituradp.ro/site_img/downloads/2013/04/interior-alg-comp-i.pdf · Se ³tie c , metoda lui Gauss de rezolvare a unui

172 CAPITOLUL 3. CODURI CORECTOARE DE ERORI

. . . . 1 . . . 1 . 1 1 1 . .

. . . . . 1 . . . 1 . 1 1 1 .

. . . . . . 1 . . . 1 . 1 1 1gap> Display(CheckMat(C));1 1 . 1 . . . 1 . . . . . . .. 1 1 . 1 . . . 1 . . . . . .. . 1 1 . 1 . . . 1 . . . . .. . . 1 1 . 1 . . . 1 . . . .. . . . 1 1 . 1 . . . 1 . . .. . . . . 1 1 . 1 . . . 1 . .. . . . . . 1 1 . 1 . . . 1 .. . . . . . . 1 1 . 1 . . . 1

gap> p:=x^5+x^4+x^3+1; % mesaj recepµionatx^5+x^4+x^3+Z(2)^0gap> r:=p mod g;x^5+x^4+x^3+Z(2)^0gap> for i in [0..14] do Print(i," ",x^i*r mod g,"\n"); od;0 x^5+x^4+x^3+Z(2)^01 x^6+x^5+x^4+x2 x^7+x^6+x^5+x^23 x^4+x^3+Z(2)^04 x^5+x^4+x5 x^6+x^5+x^26 x^7+x^6+x^37 x^6+Z(2)^0 % m sur  minim  (2)8 x^7+x % sau... (tot 2)9 x^7+x^6+x^4+x^2+Z(2)^010 x^6+x^5+x^4+x^3+x+Z(2)^011 x^7+x^6+x^5+x^4+x^2+x12 x^5+x^4+x^3+x^2+Z(2)^013 x^6+x^5+x^4+x^3+x14 x^7+x^6+x^5+x^4+x^2gap> e:=x^(15-7)*(x^7*r mod g) mod (x^15-1); % eroarea prob.,x^14+x^8gap> e:=x^(15-8)*(x^8*r mod g) mod (x^15-1); % sau...x^14+x^8gap> p-e; % mesaj trimisx^14+x^8+x^5+x^4+x^3+1

Page 173: EDP 2010. ISBN 978-973-3-3370-7 Dáné Károly András Dan ...edituradp.ro/site_img/downloads/2013/04/interior-alg-comp-i.pdf · Se ³tie c , metoda lui Gauss de rezolvare a unui

3.5. CODURI LINIARE SPECIALE 173

3.5.3 Coduri BCH

Printre codurile ciclice cele mai performante se num r  codurile BCH. Avan-tajulprincipal pe care-l prezint  aceste coduri este faptul c  distanµa minim a lor poate � prev zut  de la început prin construcµia codului.

Începem scurta lor prezentare prin intermediul unui exemplu, care dezv luieoarecum ideea care se a�  în spatele construcµiei acestor coduri.

Plec m cu ideea aritmeticii binare ³i a codurilor Hamming, de�nite dematrici de veri�care a parit µii care conµin pe coloan  toate numerele nenulepân  la 2m− 1, pentru un m dat. �tim c  aceste coduri au distanµa minim  3,deci detecteaz  dou  erori ³i corecteaz  una. Sindromul unei erori este chiarnum rul de ordine al simbolului eronat. S  alegem m = 4, ³i deci "numerele"corpului �nit GF(24) de 16 elemente.

S  ne propunem construirea unui cod care corecteaz  dou  erori! Pentruaceasta este natural încercîm dublarea num rul liniilor matricii de veri�carea parit µii codului Hamming de lungime 15 = 24 − 1, în ideea de a aveaun sindrom al erorii mai bogat în informaµie. S  consider m deci un cod cumatricea de detectare a erorii de tipul urm tor:

H =

(1 2 . . . 15

f(1) f(2) . . . f(15)

),

unde numerele se înµeleg în forma binar  scrise pe coloan , iar funcµia f ne-precizat  urmeaz  s  �e aleas  corespunz tor. S  presupunem c  vectorul yrecepµionat nu conµine eroare. Atunci sindromul S(y) =

(0 f(0)

), ³i nu

avem nevoie de funcµia f . S  presupunem acum c  avem exact o eroare înpoziµia i. Acum sindromul este S(y) =

(i f(i)

). Funcµia f trebuie aleas 

astfel c , dac  pentru sindromul mesajului recepµionat valoarea acestei funcµiipentru prima jum tate a sindromului este egal  cu cea de a doua jum tate, s putem ³ti c  avem o singur  eroare!

S  presupunem acum c  avem exact dou  erori, în poziµiile i ³i j respectiv.Atunci sindromul va �

S(y) =

(i+ j

f(i) + f(j)

).

Conform cerinµei precedente funcµia f trebuie s  NU aib  proprietatea f(i +j) = f(i)+f(j), pentru a nu se confunda cu sindromul pentru o singur  eroare!Se exclude deci funcµia f(i) = i, dar ³i funcµia f(i) = i2, deoarece în aritmeticabinar  (i + j)2 = i2 + j2. Ne trebuie o funcµie deci pentru care sistemul deecuaµii {

i+ j = s1f(i) + f(j) = s2,

Page 174: EDP 2010. ISBN 978-973-3-3370-7 Dáné Károly András Dan ...edituradp.ro/site_img/downloads/2013/04/interior-alg-comp-i.pdf · Se ³tie c , metoda lui Gauss de rezolvare a unui

174 CAPITOLUL 3. CODURI CORECTOARE DE ERORI

s  aib  soluµie unic . S  facem un experiment cu funcµia f(i) = i3. Avem decide rezolvat sistemul {

i+ j = s1i3 + j3 = s2,

Avem îns  (i+ j)3 = i3+ j3+ ij(i+ j), deci i ³i j sunt r d cini ale unei ecuaµiide gradul doi (s1 = 0):

X2 + s1X +s31 − s2

s1= 0. (3.12)

Acum deoarece totul se întâmpl  într-un corp de numere, este valabil  "teoriaecuaµiei de gradul doi" adic : dac  discriminantul ecuaµiei este p trat perfectnenul, avem dou  soluµii diferite, deci dou  erori! Dac  discriminantul este nul,avem o singur  r d cin , deci suntem în cazul unei singure erori. Ca bonus,am obµinut ³i situaµia a patra neconsiderat  înc , a unui num r de erori maimare decât doi: dac  discriminantul ecuaµiei nu este p trat perfect, avem 3sau mai multe erori.

Observaµie 3.5.21. S  observ m c , folosirea polinomului reciproc polinomu-lui 3.12 adic  a polinomului

1 + s1X +X2 s31 − s2s1

= 0 (3.13)

este mai convenabil , deoarece gradul acestuia arat  direct num rul erorilor:pentru dou  erori acesta are gradul doi, pentru o eroare are gradul unu, iarpentru nici o eroare este constant.

S  d m acum de�niµia general  a codurilor BCH. Începem cu o teorem care pune bazele de�niµiei acestor coduri. O d m aici f r  demonstraµie.

Teorem  3.5.22. Fie c, d, n, q ∈ N, q = pn, p un num r prim, ³i 2 ≤ d ≤ n.Fie m ordinul multiplicativ al lui num rului q mod n. Fie de asemenea ζ or d cin  primitiv  de ordin n în corpul �nit Fqm ³i �e mζi polinomul minimalal lui ζi. Not m cu I mulµimea I = {c, c + 1, . . . , c + d − 2}. Fie în sfâr³it Cun cod ciclic de lungime n peste corpul Fq.

Sunt echivalente urm toarele a�rmaµii:

1. c ∈ C ⇔ c(ζi) = 0, pentru orice i ∈ I.

2. Polinomul generator al codului C este cel mai mic multiplu comun alpolinoamelor mζi , i ∈ I.

Page 175: EDP 2010. ISBN 978-973-3-3370-7 Dáné Károly András Dan ...edituradp.ro/site_img/downloads/2013/04/interior-alg-comp-i.pdf · Se ³tie c , metoda lui Gauss de rezolvare a unui

3.5. CODURI LINIARE SPECIALE 175

3. Matricea de veri�care a parit µii codului C este

H =

1 ζc . . . ζc(n−1)

1 ζc+1 . . . ζ(c+1)(n−1)

1...

. . ....

1 ζc+d−2 . . . ζ(c+d−2)(n−1)

De�niµie 3.5.23. Codul C care are propriet µile din propoziµia precedent se nume³te cod BCH (dup  numele celor trei descoperitori, Bose, Chaudhuri,Hocquenghem). Distanµa minim  a acestui cod � datorit  chiar construcµieilui � este cel puµin d, ³i se nume³te distanµ  proiectat .

Dac  c = 1 atunci spunem c  C este cod BCH în sens restrâns.Dac  n = qm − 1, codul C se nume³te primitiv .

De�niµia dat  codului BCH este justi�cat  de urm toarea propoziµie.

Propoziµie 3.5.24. Fie C un cod BCH cu distanµa proiectat  d. Atunci dis-tanµa minim  a codului C este cel puµin d.

Demonstraµie. Trebuie s  ar t m c  matricea de control al parit µii H al co-dului C are cel mult d − 1 coloane liniar dependente peste corpul GF(pm),conform punctului 3 din propoziµia 3.4.11 de la pagina 155. S  alegem d − 1coloane arbitrare. Fie primele elemente ale ale acestora

ζci1 , ζci2 , . . . , ζcid−1 .

Subdeterminantul de ordinul d− 1 este

ζc(i1+i2+...+id−1) ·

∣∣∣∣∣∣∣∣∣1 1 . . . 1ζi1 ζi2 . . . ζid−1

......

. . ....

ζ(d−2)i1 ζ(d−2)i2 . . . ζ(d−2)id−1

∣∣∣∣∣∣∣∣∣= ζc(i1+i2+...+id−1)

∏1≤l<k≤d−1(ζ

ik − ζil) = 0,

deci diferit de 0, ceea ce demonstreaz  a�rmaµia propoziµiei.

Cum se face codi�carea ³i decodi�carea codurilor BCH? Fie x un cuvântde cod ³i �e y cuvântul recepµionat. S  not m ca de obicei vectorul de eroarecu e = w − v. Fie ζ o r d cin  primitiv  a unit µii de ordin n. Sindromul luiy este:

S(y) = H · yt =(Sc Sc+1 . . . Sc+d−2

)t,

Page 176: EDP 2010. ISBN 978-973-3-3370-7 Dáné Károly András Dan ...edituradp.ro/site_img/downloads/2013/04/interior-alg-comp-i.pdf · Se ³tie c , metoda lui Gauss de rezolvare a unui

176 CAPITOLUL 3. CODURI CORECTOARE DE ERORI

undeSj = y(ζj) = x(ζj) + e(ζj), c ≤ j ≤ c+ d− 2.

Fie exprimarea lui e sub forma polinomial 

e = ei1Xi1 + ei2X

i2 + . . .+ eirXir , (eik = 0, pentru orice 1 ≤ k ≤ r).

Presupunem c  r ≤ (d− 1)/2, deci avem ³i 2r ≤ d. Deoarece x(ζj) = 0 pentruorice c ≤ j ≤ c+ d− 2 putem scrie sitemul de ecuaµii

Sj = e(ζij) = ei1ζi1j + ei2ζ

i2j + . . .+ eirζirj = 0,

unde necunoscutele sunt coe�cienµii eik . S  de�nim

s = (X − ζi1) · (X − ζi2) · . . . · (X − ζir)= s0 + s1X + . . .+ sr−1X

r−1 +Xr,

de unde putem scrie

s0 + s1ζik + . . .+ sr−1ζ

ik(r−1) + ζikr = 0, pentru orice 1 ≤ k ≤ r.

Dac  înmulµim aceste ecuaµii cu eikζikj ³i adunând ecuaµiile obµinem sistemul

de ecuaµii

s0Sj + s1Sj+1 + . . .+ sr−1Sr+j−1 + Sr+j = 0, j = c, c+ 1, . . . , c+ r − 1,

unde necunoscutele sunt coe�cienµii s0, s1, . . . , sr−1. Matricea acestui sistemde ecuaµii este

S =

Sc Sc+1 . . . Sc+r−1

Sc+1 Sc+2 . . . Sc+r...

.... . .

...Sc+r−1 Sc+r . . . Sc+2r−2

.

S  remarc m c  S = V DV t, unde

V =

1 1 . . . 1ζi1 ζi2 . . . ζir

1...

. . ....

ζ(r−1)i1 ζ(r−1)i2 . . . ζ(r−1)ir

³i

D =

ei1ζ

ci1 0 . . . 00 ei2ζ

ci2 . . . 0...

.... . .

...0 0 . . . eirζ

cir

.

S  observ m acum c  det(S) = 0 ⇔ det(V ) = 0 ⇔ i1, i2, . . . , ir sunt distinctedou  câte dou .

Astfel avem urm torul algoritm de decodi�care a codurilor BCH.

Page 177: EDP 2010. ISBN 978-973-3-3370-7 Dáné Károly András Dan ...edituradp.ro/site_img/downloads/2013/04/interior-alg-comp-i.pdf · Se ³tie c , metoda lui Gauss de rezolvare a unui

3.5. CODURI LINIARE SPECIALE 177

Propoziµie 3.5.25 (Decodi�carea codurilor BCH). Fie C un cod BCH cudistanµa proiectat  d ≥ 2t+1. Presupunem c  într-un cuvânt de cod recepµionaty exist  cel mult t erori. Decodi�care va avea urm torii pa³i:

1. Determin m sindromul

S(y) =(Sc Sc+1 . . . Sc+d−2

)t.

2. determin m num rul maxim r ≤ t al ecuaµiilor

s0Sj + s1Sj+1 + . . .+ sr−1Sr+j−1 + Sr+j = 0,

astfel ca matricea sistemului s  �e nesingular . Acest num r r este egalcu num rul efectiv de erori în cuvântul recepµionat. Rezolv m acest sis-tem maximal.

3. Determin m r d cinile polinomului

s = s0 + s1X + . . .+ sr−1Xr−1 +Xr.

4. Determin m poziµiile erorilor rezolvând sistemul de ecuaµii

ei1Xi1 + ei2X

i2 + . . .+ eirXir , (eik = 0, pentru orice 1 ≤ k ≤ r).

S  d m un exemplu de calcul pentru codi�care ³i decodi�care.

Exemplu 3.5.26. Fie α un element primitiv al corpului GF(24), ³i �e α4 +α+1 = 0. Fie g = x10+x8+x5+x4+x2+x+1 polinomul generator al unui codBCH de tip (15, 5). S  presupunem c  recepµion m mesajul 110000011010000.S  determin m cuvântul de cod transmis ³i mesajul util.

Presupunem cel mult dou  erori. Determin m sindromul erorii, deci sin-dromul cuvântului recepµionat.

Si = S(αi) = e(αi) = (αi)i1 + (αi)i2 = X i + Y i,

unde am notat X = αi1 ³i Y = αi2 . Avem

S31 = S3 +XY S1,

de unde obµinem sistemul{X + Y = S1

XY = S2 − S3/S1.

Page 178: EDP 2010. ISBN 978-973-3-3370-7 Dáné Károly András Dan ...edituradp.ro/site_img/downloads/2013/04/interior-alg-comp-i.pdf · Se ³tie c , metoda lui Gauss de rezolvare a unui

178 CAPITOLUL 3. CODURI CORECTOARE DE ERORI

Vom folosi tabela puterilor elementului primitiv α din corpul �nit GF(24) dela pagina 120. Obµinem pentru cuvântul recepµionat:

S1 = y(α) = α3 + α = α9

S2 = y(α2) = α3

S3 = y(α3) = α3 + α2 + α = α11

S4 = y(α4) = α3

³i avem de rezolvat ecuaµia de gradul doi

z2 + α9z + α3 + α2 + 1 = 0.

R d cinile acestei ecuaµii sunt α2 ³i α11, ³i întru-cât codul este binar, putemspune imediat c  avem dou  erori, în poziµia 2 ³i 11 respectiv.Cuvântul de cod transmis este deci

111000011011000,

iar mesajul util111000.

3.5.4 Baza Gröbner ³i decodi�carea codurilor BCH

Exist  o leg tur  profund  între codurile algebrice ciclice ³i baza Gröbner ,care este obiectul cercet rilor curente. Nu vom intra în detalii în spaµiul acesteic rµi, îns  nu ne putem abµine s  nu ilustr m aceast  leg tur  cu prezentareachiar ³i numai cu minime comentarii ale unor exemple preluate din [35].

Fie C un cod BCH care are capacitatea de corectare proiectat  a t erori³i �e (s1, s2, . . . , s2t) vectorul sindromului unui mesaj recepµionat. Ideea (luiCooper) este de a interpreta poziµiile eronate ale mesajului recepµionat dreptr d cinile unui sistem de ecuaµii ale sindromurilor, de forma urm toare:

f1 = ζ1 + ζ2 + . . .+ ζt − s1 = 0

f2 = ζ31 + ζ32 + . . .+ ζ3t − s2 = 0

. . .

ft = ζ2t−11 + ζ2t−1

2 + . . .+ ζ2t−1t − st = 0.

(3.14)

În consecinµ , polinomul ale c rui r d cini sunt erorile mesajului recepµionat,este generatorul idealului principal{

t∑i=1

gifi | gi ∈ F2(s1, s2, . . . , st)[ζ1, ζ2, . . . , ζt]

}∩ F2(s1, s2, . . . , st)[ζ1],

prin urmare poate � calculat cu algoritmul bazei Gröbner ! Aceasta este în liniimari ideea metodei de detectare a eroriilor. S  vedem dou  exemple concrete.

Page 179: EDP 2010. ISBN 978-973-3-3370-7 Dáné Károly András Dan ...edituradp.ro/site_img/downloads/2013/04/interior-alg-comp-i.pdf · Se ³tie c , metoda lui Gauss de rezolvare a unui

3.5. CODURI LINIARE SPECIALE 179

Exemple 3.5.27.

• Fie C un cod BCH binar care corecteaz  t = 2 erori. Consider m inelulde polinoame P = F2(s1, s2)[z1, z2] ³i idealul

I = (z1 + z2 − s1, z31 + z32 − s2).

Baza Gröbner al idealului I este

{s1z22 + s21z2 + s31 + s2, z1 + z2 + s1}.

Primul polinom d  chiar ecuaµia 3.12 de la pagina 174! Iat  ³i programulscris în Singular:

ring R=(2,s1,s2),(z1,z2),lp;ideal I=z1+z2-s1,z1^3+z2^3-s2groebner(I);

Astfel exemplul 3.5.26 de la pagina 177 se poate repeta identic aici.

• Fie C un cod BCH binar care corecteaz  t = 3 erori. Consider m inelulde polinoame P = F2(s1, s2, s3)[z1, z2, y] ³i idealul

I = (z1 + z2 + z3− s1, z31 + z32 + z33 − s2, z

51 + z52 + z53 − s3).

Baza Gröbner al idealului I este

{(s31 + s2) · z33 + (s41 + s1 ∗ s2) · z23 + (s21 ∗ s2 + s3) · z3+(s61 + s31 ∗ s2 + s1s3 + s22),

(s31 + s2) · z22 + (s31 + s2) · z2 · z3 + (s41 + s1s2) · z2+(s31 + s2) · z23 + (s41 + s1s2) · z3 + (s21s2 + s3),

z1 + z2 + z3 + s1}

Primul polinom are o singur  necunoscut  z3, ³i este polinomul care aredrept r d cini erorile cuvântului recepµionat. Programul scris în Singularpentru calculul acestui polinom este:

ring R=(2,s1,s2,s3),(z1,z2,3),lp;ideal I=z1+z2+z3-s1,z1^3+z2^3+z3^3-s2,z1^5+z2^5+z3^5-s3;groebner(I);

Page 180: EDP 2010. ISBN 978-973-3-3370-7 Dáné Károly András Dan ...edituradp.ro/site_img/downloads/2013/04/interior-alg-comp-i.pdf · Se ³tie c , metoda lui Gauss de rezolvare a unui

180 CAPITOLUL 3. CODURI CORECTOARE DE ERORI

S  mai concretiz m exemplul pentru a simula o eroare, dou  erori sautrei erori. Dac  codul C este codul BCH de tip (15, 5, 7) ³i polinomulreciproc primului polinom al bazei Gröbner este (dup  o normalizare aacestuia)

σ(z) = 1 + s1 · z +s31s2 + s3s31 + s2

· z2 + s61 + s31s2 + s1s3 + s22s31 + s2

· z3, (3.15)

1. S  presupunem c  avem o singur  eroare. Fie polinomul eroriie(α) = α3. Sindromul va �(

α3 α9 1)t

Aceste componente vor concretiza polinomul 3.15 sub forma

σ(z) = 1 + α3 · z,

deci va localiza eroarea în mod corect.

2. S  presupunem acum c  avem dou  erori. Fie polinomul eroriie(α) = α2 + α3. Sindromul va �(

α6 α5 α5)t

Polinomul 3.15 devine

σ(z) = 1 + α6 · z + α5 · z2 = (1 + α2 · z)(1 + α3 · z),

deci din nou erorile sunt identi�cate.

3. În sfâr³it s  presupunem acum c  avem trei erori. Fie polinomulerorii e(α) = α+ α2 + α3. Sindromul va �(

α11 α11 0)t

Polinomul 3.15 devine

σ(z) = 1+α11 ·z+α13 ·z2+α6 ·z3 = (1+α ·z)(1+α2 ·z)(1+α3 ·z),

³i erorile sunt identi�cate.

3.5.5 Coduri Reed-Solomon

O form  particular  a codului BCH este codul RS (Reed-Solomon).

De�niµie 3.5.28. Un cod BCH peste Fq în sens restâns (m = 1), care aredistanµa proiectat  d ³i lungimea n = q − 1 se nume³te cod Reed-Solomon, pescurt cod RS .

Page 181: EDP 2010. ISBN 978-973-3-3370-7 Dáné Károly András Dan ...edituradp.ro/site_img/downloads/2013/04/interior-alg-comp-i.pdf · Se ³tie c , metoda lui Gauss de rezolvare a unui

3.5. CODURI LINIARE SPECIALE 181

Propoziµie 3.5.29. Polinomul generator al codului RS este

g =d−1∏i=1

(x− ζi),

unde ζ este un element primitiv al corpului Fq. Distanµa minim  a coduluieste d.

Demonstraµie. Pe baza punctului 2 din teorema 3.5.22 rezult  c  într-adev rpolinomul generator al codului este cel indicat. Propoziµia anterioar  arat  c distanµa minim  este cel puµin d. Cum avem ³i inegalitatea contrar , rezult c  distanµa minim  este d.

O construcµie echivalent  a codurilor RS este urm toarea. Fieα0, α1, . . . , αn−1, n elemente distincte în corpul �nit Fq, unde n ≤ q. Ma-tricea generatoare a codului RS de tip (n, k) este matricea

G =

1 1 . . . 1α0 α1 . . . αn−1...

.... . .

...αk−10 αk−1

1 . . . αk−1n−1

.

Se poate vedea destul de u³or (orice submatrice de ordin k al lui G este de tipVandermonde) c  distanµa minim  a acestui cod este n − k + 1. Codi�careaunui mesaj util u de lungime k în cuvântul de cod c se face prin înmulµirea

u ·G = c,

sau echivalent, prin calculul valorii polinomului u în punctele α0, α1, . . . , αn−1.O alt  construcµie a codurilor RS (prescurtate) este urm toarea. Alegem

un element α ∈ Fq al c rui ordin estem ≥ n. În construcµia precedent  alegemα0 = 1, α1 = α, . . . , αn−1 = αn−1. Atunci matricea generatoare a unui cod RSeste

G =

1 1 1 . . . 11 α α2 . . . αn−1

1 α2 α4 . . . α2(n−1)

......

.... . .

...1 αk−1 α2(k−1) . . . α(k−1)(n−1)

.

Înc  o de�niµie putem obµine dac  impunem unui cuvânt de lungime n ≤ m� privit ca polinom de grad n− 1 � s  se anuleze în punctele α, α2, . . . , αn−k,

Page 182: EDP 2010. ISBN 978-973-3-3370-7 Dáné Károly András Dan ...edituradp.ro/site_img/downloads/2013/04/interior-alg-comp-i.pdf · Se ³tie c , metoda lui Gauss de rezolvare a unui

182 CAPITOLUL 3. CODURI CORECTOARE DE ERORI

adic  matricea de control a parit µii pentru acest cod s  �e

H =

1 α α2 . . . αn−1

1 α2 α4 . . . α2(n−1)

......

.... . .

...1 αn−k α2(n−k) . . . α(n−k)(n−1)

.

Acest cod este cod MDS, ³i este echivalent cu cel precedent în cazul n = m.

3.6 Aplicaµii � exemple în GAP - GUAVA

A sosit momentul s  punem în funcµiune câteva coduri, s  facem câtevaexemple de codi�c ri ³i decodi�c ri. Prin erori simulate putem testa re-

spectiv ilustra capacitatea de detectare ³i corectare a erorilor a câtorva coduri.Vom apela bineînµeles la pachetul GUAVA, deja amintit.

Pachetul GUAVA se încarc  în GAP cu comanda:

gap> LoadPackage("guava");

Va � interesant s  relu m chiar exemplele 3.4.7 de la pagina 150, s  in-terog m parametrii codurilor ³i s  punem în funcµiune algoritmii de codi�care³i decodi�care. Vom parcurge mai întâi cele ³ase exemple pe rând.

1. Prima instrucµiune este de�nirea codului. GUAVA cunoa³te mai multemodalit µi de de�nire a unui cod: prin matricea generatoare, prin ma-tricea de veri�care a parit µii, prin intermediul denumirii codurilor con-sacrate etc.

De�nim aici codul prin matricea de veri�care a parit µii ³i a�³ m ³imatricea generatoare.

gap> H:=Z(2)*[[1,1,1,1,1,1,1]];[ [ Z(2)^0, Z(2)^0, Z(2)^0, Z(2)^0, Z(2)^0, Z(2)^0, Z(2)^0 ] ]gap> Display(H);1 1 1 1 1 1 1

gap> C:=CheckMatCode(H,GF(2));a linear [7,6,1..2]1 code defined by check matrix over GF(2)gap> G:=GeneratorMat(C);[ [ Z(2)^0, 0*Z(2), 0*Z(2), 0*Z(2), 0*Z(2), 0*Z(2), Z(2)^0 ],[ 0*Z(2), Z(2)^0, 0*Z(2), 0*Z(2), 0*Z(2), 0*Z(2), Z(2)^0 ],[ 0*Z(2), 0*Z(2), Z(2)^0, 0*Z(2), 0*Z(2), 0*Z(2), Z(2)^0 ],[ 0*Z(2), 0*Z(2), 0*Z(2), Z(2)^0, 0*Z(2), 0*Z(2), Z(2)^0 ],

Page 183: EDP 2010. ISBN 978-973-3-3370-7 Dáné Károly András Dan ...edituradp.ro/site_img/downloads/2013/04/interior-alg-comp-i.pdf · Se ³tie c , metoda lui Gauss de rezolvare a unui

3.6. APLICA�II � EXEMPLE ÎN GAP - GUAVA 183

[ 0*Z(2), 0*Z(2), 0*Z(2), 0*Z(2), Z(2)^0, 0*Z(2), Z(2)^0 ],[ 0*Z(2), 0*Z(2), 0*Z(2), 0*Z(2), 0*Z(2), Z(2)^0, Z(2)^0 ] ]

gap> Display(G);1 . . . . . 1. 1 . . . . 1. . 1 . . . 1. . . 1 . . 1. . . . 1 . 1. . . . . 1 1

Interog m parametrii codului.

gap> Size(C); % num rul cuvintelor de cod64gap> WordLength(C); % lungimea coului7gap> Dimension(C); % dimensiunea codului6gap> Redundancy(C); % num rul simbolurilor de control1gap> MinimumDistance(C); % distanµa minim 2gap> CoveringRadius(C); % raza de acoperire1gap> IsLinearCode(C); % este cod liniar?truegap> IsMDSCode(C); % este cod MDS?truegap> IsPerfectCode(C); % este cod perfect?falsegap> List(C); % lista cuvintelor cod[ [ 0 0 0 0 0 0 0 ], [ 0 0 0 0 0 1 1 ], [ 0 0 0 0 1 0 1 ],[ 0 0 0 0 1 1 0 ], [ 0 0 0 1 0 0 1 ], [ 0 0 0 1 0 1 0 ],[ 0 0 0 1 1 0 0 ], [ 0 0 0 1 1 1 1 ], [ 0 0 1 0 0 0 1 ],...[ 1 1 1 1 0 0 0 ], [ 1 1 1 1 0 1 1 ], [ 1 1 1 1 1 0 1 ],[ 1 1 1 1 1 1 0 ] ]

Codul dual ³i parametrii acestuia.

gap> Cd:=DualCode(C); % definirea codului dual

Page 184: EDP 2010. ISBN 978-973-3-3370-7 Dáné Károly András Dan ...edituradp.ro/site_img/downloads/2013/04/interior-alg-comp-i.pdf · Se ³tie c , metoda lui Gauss de rezolvare a unui

184 CAPITOLUL 3. CODURI CORECTOARE DE ERORI

a cyclic [7,1,7]3 dual codegap> Display(CheckMat(Cd)); % matricea verif. a parit.1 1 . . . . .. 1 1 . . . .. . 1 1 . . .. . . 1 1 . .. . . . 1 1 .. . . . . 1 1

gap> Display(GeneratorMat(Cd)); % matricea generatoare1 1 1 1 1 1 1

gap> MinimumDistance(Cd); % ditanµa minim 7gap> CoveringRadius(Cd); % raza de acoperire3

Codi�care ³i decodi�care: codi�carea este înmulµirea mesajului util cumatricea generatoare, respectiv ad ugarea la mesajul util al unui singursimbol de control, suma mod 2 a simbolurilor mesajului util. Decodi�carenu exist , matricea de veri�care a parit µii detecteaz  o singur  eroare.Iat  un exemplu:

gap> u:=Codeword("110110"); % mesaj util[ 1 1 0 1 1 0 ]gap> c:=u*G; % mesaj codificat[ 1 1 0 1 1 0 0 ]gap> H*c; % verificarea codului, ok[ 0 ]gap> c:=Codeword("100110"); % mesaj recepµionat eronat[ 1 0 0 1 1 0 ]gap> H*c; % detectarea erorii, ok[ 1 ]

2. Pentru acest cod GUAVA are o de�niµie intern .

gap> C:=RepetitionCode(7,GF(2));a cyclic [7,1,7]3 repetition code over GF(2)

Parametrii codului sunt:

gap> Size(C); % num rul cuvintelor de cod2

Page 185: EDP 2010. ISBN 978-973-3-3370-7 Dáné Károly András Dan ...edituradp.ro/site_img/downloads/2013/04/interior-alg-comp-i.pdf · Se ³tie c , metoda lui Gauss de rezolvare a unui

3.6. APLICA�II � EXEMPLE ÎN GAP - GUAVA 185

gap> WordLength(C); % lungimea unui cuvânt de cod7gap> Dimension(C); % dimensiunea codului1gap> Redundancy(C); % num rul simbolurilor de control6gap> MinimumDistance(C);% distanµa minim 7gap> CoveringRadius(C); % raza de acoperire3gap> IsLinearCode(C); % este cod liniar?truegap> IsMDSCode(C); % este cod MDS?truegap> IsPerfectCode(C); % este cod perfect?truegap> List(C); % lista cuvintelor de cod[ [ 0 0 0 0 0 0 0 ], [ 1 1 1 1 1 1 1 ] ]

Codul �ind perfect ³i având raza de acoperire 3 = (7− 1)/2, orice vectoral spaµiului vectorial F7

2 se a�  într-o bil  de raz  cel mult 3 cu centrulîntr-un cuvânt de cod. În acest caz simplu � avantajul simplit µii extremeeste c  aceste propriet µi pot � v zute ³i nemijlocit � avem doar dou bile de raz  3 care conµin împreun  toµi vectorii spaµiului. Calcul m ³imatricea generatoare ³i matricea de veri�care a parit µii.

gap> G:=GeneratorMat(C);[[ Z(2)^0, Z(2)^0, Z(2)^0, Z(2)^0, Z(2)^0, Z(2)^0, Z(2)^0 ]]gap> Display(G);1 1 1 1 1 1 1

gap> H:=CheckMat(C);[[ Z(2)^0, Z(2)^0, 0*Z(2), 0*Z(2), 0*Z(2), 0*Z(2), 0*Z(2) ],[ 0*Z(2), Z(2)^0, Z(2)^0, 0*Z(2), 0*Z(2), 0*Z(2), 0*Z(2) ],[ 0*Z(2), 0*Z(2), Z(2)^0, Z(2)^0, 0*Z(2), 0*Z(2), 0*Z(2) ],[ 0*Z(2), 0*Z(2), 0*Z(2), Z(2)^0, Z(2)^0, 0*Z(2), 0*Z(2) ],[ 0*Z(2), 0*Z(2), 0*Z(2), 0*Z(2), Z(2)^0, Z(2)^0, 0*Z(2) ],[ 0*Z(2), 0*Z(2), 0*Z(2), 0*Z(2), 0*Z(2), Z(2)^0, Z(2)^0 ]]

gap> Display(H);1 1 . . . . .. 1 1 . . . .. . 1 1 . . .

Page 186: EDP 2010. ISBN 978-973-3-3370-7 Dáné Károly András Dan ...edituradp.ro/site_img/downloads/2013/04/interior-alg-comp-i.pdf · Se ³tie c , metoda lui Gauss de rezolvare a unui

186 CAPITOLUL 3. CODURI CORECTOARE DE ERORI

. . . 1 1 . .

. . . . 1 1 .

. . . . . 1 1

Codul dual, matricea generatoare ³i matricea de veri�care a parit µiipentru acesta.

gap> Cd:=DualCode(C);a cyclic [7,6,2]1 dual codegap> Hd:=Display(CheckMat(Cd));1 1 1 1 1 1 1

gap> Gd:=Display(GeneratorMat(Cd));1 1 . . . . .. 1 1 . . . .. . 1 1 . . .. . . 1 1 . .. . . . 1 1 .. . . . . 1 1

S  vedem acum o codi�care ³i decodi�care, i.e. corectare de eroare. Pen-tru aceasta rede�nim mai întâi codul prin propria lui matrice generatoare,pentru a-l face GUAVA s  uite structura de cod ciclic ³i s -l considerenumai cu structura de cod liniar. Aceasta va avea ca efect utilizarea im-plicit  a algoritmului de decodi�care general pentru coduri liniare, bazatpe calcului sindromului.

gap> C1:=GeneratorMatCode(G,GF(2));a linear [7,1,7]3 code defined by generator matrix over GF(2)gap> C1=C;true

Mesaje utile posibile sunt numai dou : 0 ³i 1. Cele dou  cuvinte de codsunt pur ³i simplu repet rile acestor simboluri de înc  ³ase ori. Decodi-�carea unui cuvânt recepµionat se face prin cuvântul de cod cu care aremai multe coincidenµe.

gap> u:=Codeword("1"); % mesajul util[ 1 ]gap> c:=u*G; % cuvântul de cod generat[ 1 1 1 1 1 1 1 ]gap> H*c; % testarea cuvântului, ok

Page 187: EDP 2010. ISBN 978-973-3-3370-7 Dáné Károly András Dan ...edituradp.ro/site_img/downloads/2013/04/interior-alg-comp-i.pdf · Se ³tie c , metoda lui Gauss de rezolvare a unui

3.6. APLICA�II � EXEMPLE ÎN GAP - GUAVA 187

[ 0 0 0 0 0 0 ]gap> List(C); % lista cuvintelor de cod[ [ 0 0 0 0 0 0 0 ], [ 1 1 1 1 1 1 1 ] ]gap> c:=Codeword("1011100"); % mesaj eronat, simulat[ 1 0 1 1 1 0 0 ]gap> Decodeword(C,c); % decodificare[ 1 1 1 1 1 1 1 ]gap> c:=Codeword("1001100"); % mesaj eronat, simulat[ 1 0 0 1 1 0 0 ]gap> Decodeword(C,c); % decodificare[ 0 0 0 0 0 0 0 ]

3. Codul de repetiµie dubl . De�nim mai întâi matricea de veri�care aparit µii, apoi codul liniar determinat de aceast  matrice.

gap> H:=Z(2)*[[1, 0, 0, 1, 0, 0],[0, 1, 0, 0, 1, 0],[0, 0, 1, 0, 0, 1]];

[ [ Z(2)^0, 0*Z(2), 0*Z(2), Z(2)^0, 0*Z(2), 0*Z(2) ],[ 0*Z(2), Z(2)^0, 0*Z(2), 0*Z(2), Z(2)^0, 0*Z(2) ],[ 0*Z(2), 0*Z(2), Z(2)^0, 0*Z(2), 0*Z(2), Z(2)^0 ] ]

gap> Display(H);1 . . 1 . .. 1 . . 1 .. . 1 . . 1

gap> C:=CheckMatCode(H,GF(2));a linear [6,3,1..2]2..3 code defined by check matrix over GF(2)

Iat  ³i parametrii acestui cod:gap> Size(C); % num rul cuvintelor de cod8gap> WordLength(C); % lungimea coului6gap> Dimension(C); % dimensiunea codului3gap> Redundancy(C); % num rul simbolurilor de control3gap> MinimumDistance(C); % distanµa minim 2gap> CoveringRadius(C); % raza de acoperire3gap> IsLinearCode(C); % este cod liniar?true

Page 188: EDP 2010. ISBN 978-973-3-3370-7 Dáné Károly András Dan ...edituradp.ro/site_img/downloads/2013/04/interior-alg-comp-i.pdf · Se ³tie c , metoda lui Gauss de rezolvare a unui

188 CAPITOLUL 3. CODURI CORECTOARE DE ERORI

gap> IsMDSCode(C); % este cod MDS?falsegap> IsPerfectCode(C); % este cod perfect?falsegap> List(C); % lista cuvintelor cod[ [ 0 0 0 0 0 0 ], [ 0 0 1 0 0 1 ],[ 0 1 0 0 1 0 ], [ 0 1 1 0 1 1 ],[ 1 0 0 1 0 0 ], [ 1 0 1 1 0 1 ],[ 1 1 0 1 1 0 ], [ 1 1 1 1 1 1 ] ]

Matricea generatoare este:

gap> G:=GeneratorMat(C); % matricea generatoare[ [ Z(2)^0, 0*Z(2), 0*Z(2), Z(2)^0, 0*Z(2), 0*Z(2) ],[ 0*Z(2), Z(2)^0, 0*Z(2), 0*Z(2), Z(2)^0, 0*Z(2) ],[ 0*Z(2), 0*Z(2), Z(2)^0, 0*Z(2), 0*Z(2), Z(2)^0 ] ]

gap> Display(G);1 . . 1 . .. 1 . . 1 .. . 1 . . 1

Codul dual ³i parametrii acestuia:

gap> Cd:=DualCode(C); % Codul duala cyclic [6,3,1..2]2..3 dual codegap> C=Cd; % C=dualul lui C?truegap> IsSelfDualCode(C); % este cod auto-dual?truegap> Gd:=Display(GeneratorMat(Cd));1 . . 1 . .. 1 . . 1 .. . 1 . . 1

gap> Hd:=Display(CheckMat(Cd));1 . . 1 . .. 1 . . 1 .. . 1 . . 1

gap> MinimumDistance(Cd); %...pt codul dual2gap> CoveringRadius(Cd); %...pt codul dual3

Page 189: EDP 2010. ISBN 978-973-3-3370-7 Dáné Károly András Dan ...edituradp.ro/site_img/downloads/2013/04/interior-alg-comp-i.pdf · Se ³tie c , metoda lui Gauss de rezolvare a unui

3.6. APLICA�II � EXEMPLE ÎN GAP - GUAVA 189

Codi�carea este o simpl  înmulµire matricial . Decodi�carea este posibil doar întîmpl tor: distanµa minim  2 nu asigur  a decodi�care unic .

gap> u:=Codeword("110"); % mesajul util[ 1 1 0 ]gap> c:=u*G; % mesajul codificat[ 1 1 0 1 1 0 ]gap> H*c; % verificare, este cuvânt de cod[ 0 0 0 ]gap> Decodeword(C,c); % decodificare identic [ 1 1 0 1 1 0 ]gap> c:=Codeword("100110"); % eroare simulat  în poziµia 3[ 1 0 0 1 1 0 ]gap> H*c; % eroarea este detectat [ 0 1 0 ]gap> Decodeword(C,c); % decodificat  "corect"[ 1 1 0 1 1 0 ]gap> c:=Codeword("110111"); % eroare simulat  în poziµia 6[ 1 1 0 1 1 1 ]gap> H*c; % eroarea este detectat [ 0 0 1 ]gap> Decodeword(C,c); % decodificat  "incorect"[ 1 1 1 1 1 1 ]

4. Codul de repetiµie tripl . De�nirea matricii de veri�care a parit µii, ³i acodului. A�³eaz  matricea generatoare.

gap> H:=Z(2)*[[1, 0, 0, 1, 0, 0, 0, 0, 0],[0, 1, 0, 0, 1, 0, 0, 0, 0],[0, 0, 1, 0, 0, 1, 0, 0, 0],[1, 0, 0, 0, 0, 0, 1, 0, 0],[0, 1, 0, 0, 0, 0, 0, 1, 0],[0, 0, 1, 0, 0, 0, 0, 0, 1]];;

gap> Display(H);1 . . 1 . . . . .. 1 . . 1 . . . .. . 1 . . 1 . . .1 . . . . . 1 . .. 1 . . . . . 1 .. . 1 . . . . . 1

gap> C:=CheckMatCode(H,GF(2));

Page 190: EDP 2010. ISBN 978-973-3-3370-7 Dáné Károly András Dan ...edituradp.ro/site_img/downloads/2013/04/interior-alg-comp-i.pdf · Se ³tie c , metoda lui Gauss de rezolvare a unui

190 CAPITOLUL 3. CODURI CORECTOARE DE ERORI

a linear [9,3,1..3]3 code defined by check matrix over GF(2)gap> G:=Display(GeneratorMat(C));1 . . 1 . . 1 . .. 1 . . 1 . . 1 .. . 1 . . 1 . . 1

Parametrii codului:

gap> Size(C); % num rul cuvintelor de cod8gap> WordLength(C); % lungimea coului9gap> Dimension(C); % dimensiunea codului3gap> Redundancy(C); % num rul simbolurilor de control6gap> MinimumDistance(C); % distanµa minim 3gap> CoveringRadius(C); % raza de acoperire3gap> IsLinearCode(C); % este cod liniar?truegap> IsMDSCode(C); % este cod MDS?falsegap> IsPerfectCode(C); % este cod perfect?falsegap> List(C); % lista cuvintelor cod[ [ 0 0 0 0 0 0 0 0 0 ], [ 0 0 1 0 0 1 0 0 1 ],[ 0 1 0 0 1 0 0 1 0 ], [ 0 1 1 0 1 1 0 1 1 ],[ 1 0 0 1 0 0 1 0 0 ], [ 1 0 1 1 0 1 1 0 1 ],[ 1 1 0 1 1 0 1 1 0 ], [ 1 1 1 1 1 1 1 1 1 ] ]

Codul dual ³i parametrii acestuia:

gap> Cd:=DualCode(C); % codul duala cyclic [9,6,1..2]1..3 dual codegap> Display(GeneratorMat(Cd)); % matricea generatoare1 . . 1 . . . . .. 1 . . 1 . . . .. . 1 . . 1 . . .. . . 1 . . 1 . .

Page 191: EDP 2010. ISBN 978-973-3-3370-7 Dáné Károly András Dan ...edituradp.ro/site_img/downloads/2013/04/interior-alg-comp-i.pdf · Se ³tie c , metoda lui Gauss de rezolvare a unui

3.6. APLICA�II � EXEMPLE ÎN GAP - GUAVA 191

. . . . 1 . . 1 .

. . . . . 1 . . 1gap> Display(CheckMat(Cd)); % matr. verif. parit.1 . . 1 . . 1 . .. 1 . . 1 . . 1 .. . 1 . . 1 . . 1

gap> MinimumDistance(Cd); % distanµa minim 2gap> CoveringRadius(Cd); % raza de acoperire3

Iat  ³i exemple de codi�care ³i decodi�care. Codi�carea este numai oînmulµire matricial . Distanµa minim  �ind 3, este posibil  corectareaunei singure erori.

gap> u:=Codeword("110"); % mesajul util[ 1 1 0 ]gap> c:=u*G; % mesajul codificat[ 1 1 0 1 1 0 1 1 0 ]gap> H*c; % verificare, e cuvânt de cod[ 0 0 0 0 0 0 ]gap> Decodeword(C,c); % decodificare corect [ 1 1 0 1 1 0 1 1 0 ]gap> c:=Codeword("100110110"); % eroare simulat , poziµia 2[ 1 0 0 1 1 0 1 1 0 ]gap> H*c; % eroarea este detectat [ 0 1 0 0 1 0 ]gap> Decodeword(C,c); % ³i decodificat  corect[ 1 1 0 1 1 0 1 1 0 ]

5. Acest cod are urm toarea matrice de veri�care a parit µii ³i matrice degenerare:

gap> H:=Z(2)*[[1,1,0,1,0,0],[1,0,1,0,1,0],[0,1,1,0,0,1]];[ [ Z(2)^0, Z(2)^0, 0*Z(2), Z(2)^0, 0*Z(2), 0*Z(2) ],[ Z(2)^0, 0*Z(2), Z(2)^0, 0*Z(2), Z(2)^0, 0*Z(2) ],[ 0*Z(2), Z(2)^0, Z(2)^0, 0*Z(2), 0*Z(2), Z(2)^0 ] ]

gap> Display(H);1 1 . 1 . .1 . 1 . 1 .. 1 1 . . 1

Page 192: EDP 2010. ISBN 978-973-3-3370-7 Dáné Károly András Dan ...edituradp.ro/site_img/downloads/2013/04/interior-alg-comp-i.pdf · Se ³tie c , metoda lui Gauss de rezolvare a unui

192 CAPITOLUL 3. CODURI CORECTOARE DE ERORI

gap> C:=CheckMatCode(H,GF(2));a linear [6,3,1..3]2 code defined by check matrix over GF(2)gap> G:=GeneratorMat(C);<an immutable 3x6 matrix over GF2>gap> Display(G);1 . . 1 1 .. 1 . 1 . 1. . 1 . 1 1

Urm toarele comenzi a�³eaz  parametrii codului:

gap> Size(C); % num rul cuvintelor de cod8gap> WordLength(C); % lungimea coului6gap> Dimension(C); % dimensiunea codului3gap> Redundancy(C); % num rul simbolurilor de control3gap> MinimumDistance(C); % distanµa minim 3gap> CoveringRadius(C); % raza de acoperire2gap> IsLinearCode(C); % este cod liniar?truegap> IsMDSCode(C); % este cod MDS?falsegap> IsPerfectCode(C); % este cod perfect?falsegap> List(C); % lista cuvintelor cod[ [ 0 0 0 0 0 0 ], [ 0 0 1 0 1 1 ],[ 0 1 0 1 0 1 ], [ 0 1 1 1 1 0 ],[ 1 0 0 1 1 0 ], [ 1 0 1 1 0 1 ],[ 1 1 0 0 1 1 ], [ 1 1 1 0 0 0 ] ]

Iat  un exemplu de codi�care ³i de decodi�care. Codul corecteaz  osingur  eroare.

gap> Cd:=DualCode(C); % codul duala linear [6,3,1..3]2 dual codegap> Display(CheckMat(Cd)); % matr. verif. parit.

Page 193: EDP 2010. ISBN 978-973-3-3370-7 Dáné Károly András Dan ...edituradp.ro/site_img/downloads/2013/04/interior-alg-comp-i.pdf · Se ³tie c , metoda lui Gauss de rezolvare a unui

3.6. APLICA�II � EXEMPLE ÎN GAP - GUAVA 193

1 . . 1 1 .. 1 . 1 . 1. . 1 . 1 1

gap> Display(GeneratorMat(Cd)); % matricea genratoare1 1 . 1 . .1 . 1 . 1 .. 1 1 . . 1

gap> IsSelfDualCode(C); % este cod autodual?falsegap> MinimumDistance(Cd); % distanµa minim 3gap> CoveringRadius(Cd); % raza de acoperire2

gap> u:=Codeword("110"); % mesajul util[ 1 1 0 ]gap> c:=u*G; % mesajul codificat[ 1 1 0 0 1 1 ]gap> H*c; % verificare, este cuvânt de cod[ 0 0 0 ]gap> Decodeword(C,c); % decodificare identic [ 1 1 0 0 1 1 ]gap> c:=Codeword("100011"); % eroare simulat  în poziµia 2[ 1 0 0 0 1 1 ]gap> H*c; % avem eroare, eroare detectat [ 1 0 1 ]gap> Decodeword(C,c); % decodificat  corect[ 1 1 0 0 1 1 ]

6. În �nal ultimul exemplu (6) de la pagina 153.

gap> H:=Z(2)*[[0,0,0,1,1,1,1],[0,1,1,0,0,1,1],[1,0,1,0,1,0,1]];[ [ 0*Z(2), 0*Z(2), 0*Z(2), Z(2)^0, Z(2)^0, Z(2)^0, Z(2)^0 ],[ 0*Z(2), Z(2)^0, Z(2)^0, 0*Z(2), 0*Z(2), Z(2)^0, Z(2)^0 ],[ Z(2)^0, 0*Z(2), Z(2)^0, 0*Z(2), Z(2)^0, 0*Z(2), Z(2)^0 ] ]

gap> Display(H);. . . 1 1 1 1. 1 1 . . 1 11 . 1 . 1 . 1

gap> C:=CheckMatCode(H,GF(2));a linear [7,4,1..3]1 code defined by check matrix over GF(2)

Page 194: EDP 2010. ISBN 978-973-3-3370-7 Dáné Károly András Dan ...edituradp.ro/site_img/downloads/2013/04/interior-alg-comp-i.pdf · Se ³tie c , metoda lui Gauss de rezolvare a unui

194 CAPITOLUL 3. CODURI CORECTOARE DE ERORI

gap> G:=GeneratorMat(C);<an immutable 4x7 matrix over GF2>gap> Display(G);1 1 1 . . . .1 . . 1 1 . .. 1 . 1 . 1 .1 1 . 1 . . 1

gap> Size(C); % num rul cuvintelor de cod16gap> WordLength(C); % lungimea coului7gap> Dimension(C); % dimensiunea codului4gap> Redundancy(C); % num rul simbolurilor de control3gap> MinimumDistance(C); % distanµa minim 3gap> CoveringRadius(C); % raza de acoperire1gap> IsLinearCode(C); % este cod liniar?truegap> IsMDSCode(C); % este cod MDS?falsegap> IsPerfectCode(C); % este cod perfect?truegap> List(C); % lista cuvintelor cod[ [ 0 0 0 0 0 0 0 ], [ 0 0 0 1 1 1 1 ],[ 0 0 1 0 1 1 0 ], [ 0 0 1 1 0 0 1 ],[ 0 1 1 1 1 0 0 ], [ 0 1 1 0 0 1 1 ],[ 0 1 0 1 0 1 0 ], [ 0 1 0 0 1 0 1 ],[ 1 1 1 0 0 0 0 ], [ 1 1 1 1 1 1 1 ],[ 1 1 0 0 1 1 0 ], [ 1 1 0 1 0 0 1 ],[ 1 0 0 1 1 0 0 ], [ 1 0 0 0 0 1 1 ],[ 1 0 1 1 0 1 0 ], [ 1 0 1 0 1 0 1 ] ]

Tabela Slepian, cu reprezentanµii claselor de echivalenµ  se poate obµinetot cu ajutorul pachetului GUAVA. Prima coloan  conµine vectorii eroare� de m sur  minim . Prima linie corespunde cuvintelor codului, acestea� ³i numai acestea � au sindromul nul.

Page 195: EDP 2010. ISBN 978-973-3-3370-7 Dáné Károly András Dan ...edituradp.ro/site_img/downloads/2013/04/interior-alg-comp-i.pdf · Se ³tie c , metoda lui Gauss de rezolvare a unui

3.6. APLICA�II � EXEMPLE ÎN GAP - GUAVA 195

gap> SyndromeTable(C);[ [ [ 0 0 0 0 0 0 0 ], [ 0 0 0 ] ],[ [ 1 0 0 0 0 0 0 ], [ 0 0 1 ] ],[ [ 0 1 0 0 0 0 0 ], [ 0 1 0 ] ],[ [ 0 0 1 0 0 0 0 ], [ 0 1 1 ] ],[ [ 0 0 0 1 0 0 0 ], [ 1 0 0 ] ],[ [ 0 0 0 0 1 0 0 ], [ 1 0 1 ] ],[ [ 0 0 0 0 0 1 0 ], [ 1 1 0 ] ],[ [ 0 0 0 0 0 0 1 ], [ 1 1 1 ] ] ]

gap> Cd:=DualCode(C); % codul duala linear [7,3,1..4]2..3 dual codegap> Display(CheckMat(Cd)); % matr. verif. parit.1 1 1 . . . .1 . . 1 1 . .. 1 . 1 . 1 .1 1 . 1 . . 1

gap> Display(GeneratorMat(Cd)); % matricea genratoare. 1 1 1 1 . .1 . 1 1 . 1 .1 1 . 1 . . 1

gap> MinimumDistance(Cd); % distanµa minim 4gap> CoveringRadius(Cd); % raza de acoperire3

Exemplu de codi�care ³i decodi�care.

gap> u:=Codeword("110"); % mesajul util[ 1 1 0 ]gap> c:=u*G; % mesajul codificat[ 0 1 1 1 1 0 0 ]gap> H*c; % verificare, este cuvânt de cod[ 0 0 0 ]gap> Decodeword(C,c); % decodificare identic [ 0 1 1 1 1 0 0 ]gap> c:=Codeword("0101100");% eroare simulat  în poziµia 3[ 0 1 0 1 1 0 0 ]gap> Syndrome(C,c); % sindromul arat  poziµia erorii[ 0 1 1 ]gap> Decodeword(C,c); % decodificat  corect

Page 196: EDP 2010. ISBN 978-973-3-3370-7 Dáné Károly András Dan ...edituradp.ro/site_img/downloads/2013/04/interior-alg-comp-i.pdf · Se ³tie c , metoda lui Gauss de rezolvare a unui

196 CAPITOLUL 3. CODURI CORECTOARE DE ERORI

[ 0 1 1 1 1 0 0 ]

Linia a patra a tabelului sindromurilor arat  c  vectorul de eroare este

[ 0 0 0 1 0 0 0 ]

care sc zut din mesajul eronat reface cuvântul de cod al mesajului.

S  d m ³i un exemplu în care utiliz m facilit µi speci�ce ale GUAVA �numeroase coduri sunt deja implementate ³i pot � invocate prin numele lor.

gap> C:=HammingCode(4,GF(2));a linear [15,11,3]1 Hamming (4,2) code over GF(2)gap> Display(GeneratorMat(C));1 1 1 . . . . . . . . . . . .1 . . 1 1 . . . . . . . . . .. 1 . 1 . 1 . . . . . . . . .1 1 . 1 . . 1 . . . . . . . .1 . . . . . . 1 1 . . . . . .. 1 . . . . . 1 . 1 . . . . .1 1 . . . . . 1 . . 1 . . . .. . . 1 . . . 1 . . . 1 . . .1 . . 1 . . . 1 . . . . 1 . .. 1 . 1 . . . 1 . . . . . 1 .1 1 . 1 . . . 1 . . . . . . 1gap> Display(CheckMat(C));. . . . . . . 1 1 1 1 1 1 1 1. . . 1 1 1 1 . . . . 1 1 1 1. 1 1 . . 1 1 . . 1 1 . . 1 11 . 1 . 1 . 1 . 1 . 1 . 1 . 1gap> G:=GeneratorMat(C);;gap> u:=Codeword("11000110011"); % codificarea mesajului[ 1 1 0 0 0 1 1 0 0 1 1 ] % util "u"gap> c:=u*G; % este inmulµirea cu[ 0 1 1 1 1 0 0 0 0 1 1 0 0 1 1 ] % matricea de generaregap> c1:=Codeword("011110000110010"); % simul m o eroare[ 0 1 1 1 1 0 0 0 0 1 1 0 0 1 0 ] % în poziµia 15gap> Decodeword(C,c1); % decodificare cu[ 0 1 1 1 1 0 0 0 0 1 1 0 0 1 1 ] % algoritmul lui GUAVA

Page 197: EDP 2010. ISBN 978-973-3-3370-7 Dáné Károly András Dan ...edituradp.ro/site_img/downloads/2013/04/interior-alg-comp-i.pdf · Se ³tie c , metoda lui Gauss de rezolvare a unui

3.6. APLICA�II � EXEMPLE ÎN GAP - GUAVA 197

3.6.1 Utilizarea codurilor

Cercetarea matematic  în domeniul codurilor algebrice continu . Scopul ur-m rit este descoperirea de coduri cât mai apropiate de limitele teoretice, demarginile impuse de teorie, respectiv analiza codurilor care se pot construi prinmijloace deja avute la dispoziµie. Nu am amintit nimic despre coduri bazatepe geometrie algebric  (coduri AG), ³i despre coduri convoluµionale.

În încheiere s  menµion m f r  comentarii o problem  înc  deschis  dindomeniul teoriei codurilor corectoare de erori: nu se ³tie dac  exist  sau nu uncod binar auto-dual de tipul (72, 36, 16) (pentru detalii vezi [35]).

S  enumer m acum câteva din utiliz rile codurilor corectoare de erori, dincare se poate intui importanµa acestui capitol de matematic  pentru diversedomenii inginere³ti.

• Coduri BCH sunt utilizate de sistemele de comunicaµii europene ³itransatlantice. Mesajul util are lungimea de 231 de simboluri ³i esteutilizat un polinom generator de grad 24, astfel lungimea cuvântului decod este 231 + 24 = 255. Codul detecteaz  cel puµin 6 erori.

• O aplicaµie interesant  a codurilor RS este codi�carea informaµiei pe(ast zi înc ) cel mai utilizat (cel puµin în distribuirea muzicii de calitateHiFi) suport de memorie, compact discul, CD. El folose³te dou  coduriRS peste corpul GF(28) având distanµa minim  5. Codi�carea ³i decodi-�care este subtil  în sensul c  este încorporat ³i un mecanism de corectarea zgîrâeturilor � i.e. a blocurilor compacte de erori � prin distribuireastructurii cuvintelor de cod pe porµiuni �zice mai mari. Astfel deterior rilocale care distrug porµiuni insemnate totu³i nu afecteaz  decodi�careaintact  a informaµiei de pe CD.

• Codul Reed-Solomon (7, 2) a fost folosit de satelitul US Defense Depart-ment Tactical Satellite

• Codul Reed-Solomon (31, 15) este folosit în comunicaµiile militare tactice.

• Reµeaua INTELSAT V folose³te codul BCH (127, 112) care detecteaz  3³i corecteaz  3 erori.

• Memoriile digitale foto folosesc un cod Reed-Solomon de lungime 63 pestecorpul �nit F26 .

• Un cod ciclic (CRC) era folosit la corectarea erorilor de citire ale infor-maµiilor înregistrate pe benzi magnetice.

• Sondele spaµiale Mariner ale NASA foloseau codul Reed-Muller (32, 6, 16)la transmiterea codi�cat  a fotogra�ilor din spaµiul cosmic.

Page 198: EDP 2010. ISBN 978-973-3-3370-7 Dáné Károly András Dan ...edituradp.ro/site_img/downloads/2013/04/interior-alg-comp-i.pdf · Se ³tie c , metoda lui Gauss de rezolvare a unui

198 CAPITOLUL 3. CODURI CORECTOARE DE ERORI

• Coduluri binare de tip (2k, k, 2k−1) Walsh-Hadamard (ortogonale) suntfolosite în telefonia mobil  celular  pentru identi�carea staµiilor mobileactive în cadrul unei staµii �xe. Lungimea tipic  a codului este de 64 debiµi.

• Un cod Goley de tip (23, 12) este folosit la transmisiile canalelor de tele-viziune prin satelit. Acesta are distanµa minim  7 deci poate corecta 3erori. Acesta este un cod perfect.

• Coduri ciclice CRC (Cyclic Redundancy Code) sunt larg folosite în elec-tronic  (pentru semnalarea erorilor, în canale bidirecµionale de comu-nicaµie). Ele sunt cablate în circuite integrate care apar ca ³i compo-nente din care sunt construite elemente ale sistemelor de calcul ³i decomunicaµie. Iat  câteva exemple de polinoame generatoare cablate:x16+x12+x5+1 (SNC 2653, INTEL 82586,INTEL 8274), x16+x15+x2+1(INTEL 82586,INTEL 8274), x32 + x26 + x23 + x22 + x16 + x12 + x11 +x10 + x8 + x7 + x5 + x4 + x2 + x+1 (INTEL 82586, aplicaµia LAN Eth-ernet), x8 + x7 + x6 + x4 + 1 ³i x23 + x18 + x16 + x7 + x2 + 1 (EEA),x12 + x11 + x3 + x2 + x+1 (CRC-12, IBM) etc.

3.7 Probleme propuse

1. S  se determine elementele primitive ale corpurilor F7, F11, F13, F17 ³iF19.

Indicaµie: Trebuie g sit un generator al grupului multiplicativ al corpu-lui. Pentru corpul F7 acest grup are 6 elemente, deci avem nevoie de unelement de ordin 6. 23 = 1 mod 7, deci 2 nu este de ordin 7. 32 = 1mod 7 ³i 33 = 1 mod 7 deci doar 36 = 1 mod 7 deci 3 este un elementprimitiv. Deoarece 43 = 1 mod 7, 4 nu este element primitiv. 52 = 1mod 7, ³i 53 = 1 mod 7 deci vom avea 56 = 1 mod 7 deci 5 este ele-ment primitiv. În sfâr³it, 6 = −1 mod 7 deci 6 are ordinul 2. Elementeleprimitive sunt deci 3 ³i 5. (Se observ  c  5 = 3−1.)

Alt  soluµie (în GAP): Pentru �ecare a = 2, 3, . . . , 6 se ruleaz  ciclul forde mai jos. Elementul a este element primitiv dac  ³i numai dac  doarultima putere are valoarea 1.

for i in [1..6] dop:=a^i;Print(p,"\n");od;

Page 199: EDP 2010. ISBN 978-973-3-3370-7 Dáné Károly András Dan ...edituradp.ro/site_img/downloads/2013/04/interior-alg-comp-i.pdf · Se ³tie c , metoda lui Gauss de rezolvare a unui

3.7. PROBLEME PROPUSE 199

2. În care din inelul de polinoame peste coe�cienµi din corpurile F2, F3, F5,F7, F17 este polinomul x2 + 1 ireductibil?

Indicaµie: Polinomul �ind de gradul 2, el este ireductibil exact atunci,când nu are r d cini. Se testeaz  toate elementele corpului dat.

Alt  soluµie în Singular :

ring R=2,x,dp;poly f=x2+1;factorize(f);// -> factorii lui f, si multiplicitatile acestora

...³i înc  una în GAP :

x:=Indeterminate(GF(2),"x");f:=x^2+1;Factors(f);% -> factorii lui f, factorii multiplii sunt repetate

3. S  se determine toate polinoamele ireductibile de grad 2 în inelul depolinoame peste coe�cienµi din corpurile F5, F7, F11 ³i F17.

Indicaµie: Polinoamele �ind de gradul 2, ele sunt ireductibile exactatunci, când nu au r d cini. Se testeaz  toate polinoamele de grad 2cu toate elementele corpului dat.

4. Câte polinoame monice ireductibile de grad 3 ³i de grad 4 exist  în inelede polinoame GF(23)[x], GF(32)[x] ³i GF(11)[x]? Daµi câte un exemplude astfel de polinom!

Indicaµie: Se folose³te teorema 3.2.28 de la pagina 138.

5. S  se determine polinomul minimal (peste corpul prim GF(p)) pentruelementele de mai jos (din corpul �nit GF(pn)).

5-1. β = 5 ∈ GF(17).5-2. β = α3 + α + 1 ∈ GF(24), corp generat de polinomul ireductibil

x4 + x+ 1.5-3. β = α5 + α + 1 ∈ GF(26), corp generat de polinomul ireductibil

x6 + x+ 1.5-4. β = α+1 ∈ GF(32), corp generat de polinomul ireductibil x2+x+2.5-5. β = α2 + α + 1 ∈ GF(32), corp generat de polinomul ireductibil

x3 − x+ 2.

Indicaµie: Se calculeaz  puterile succesive β, βp, βp2 , βp3 , . . . pân  cândobµinem βpd = β. Polinomul minimal al lui β este polinomul de grad dcalculat prin (x− β)(x− β2) · (x− βd−1).

Page 200: EDP 2010. ISBN 978-973-3-3370-7 Dáné Károly András Dan ...edituradp.ro/site_img/downloads/2013/04/interior-alg-comp-i.pdf · Se ³tie c , metoda lui Gauss de rezolvare a unui

200 CAPITOLUL 3. CODURI CORECTOARE DE ERORI

6. S  se studieze în mediul de programare GAP-GUAVA codul ciclic delungime 8, generat de polinomul x2 + Z(3)0. S  se determine:

(a). Distanµa minim .(b). Polinomul de veri�care a parit µii.(c). Matricea generatoare.(d). Matricea de control.(e). S  se veri�ce dac  sunt cuvinte de cod ³i dac  nu s  se decodi�ce

cuvintele x5 − x3 + x ³i x4 + x3 + x2 − x.

7. S  se studieze în mediul de programare GAP-GUAVA codul ciclic delungime 31, generat de polinomul x5 + x2 + 1. S  se determine:

(a). Distanµa minim .(b). Polinomul de veri�care a parit µii.(c). Matricea generatoare.(d). Matricea de control.(e). S  se veri�ce dac  sunt cuvinte de cod ³i dac  nu s  se decodi�ce

cuvintele x25 + x20 + x19 + x18 + x17 + x15 + x13 + x9 + x4 + x3 + x³i x30 + x25 + x22 + x19 + x10 + x6 + x5 + x3 + x.

8. S  se studieze în mediul de programare GAP-GUAVA codul ciclic delungime 31, al c rui polinom de veri�care a parit µii este x10+x8+x7+x5 + x3 + x2 + Z(2)0. S  se determine:

(a). Distanµa minim .(b). Polinomul generator.(c). Matricea generatoare.(d). Matricea de control.(e). S  se veri�ce dac  sunt cuvinte de cod ³i dac  nu s  se decodi�ce

cuvintele x30+x29+x27+x26+x25+x23+x21+x16+x13+x11+x10 + x7 + x6 + x5 + x4 + x3

³i x28 + x27 + x25 + x23 + x22 + x21 + x20 + x19 + x18 + x17 + x11 +x9 + x8 + x7 + x6 + x5 + x3 + x+ Z(2)0.

Page 201: EDP 2010. ISBN 978-973-3-3370-7 Dáné Károly András Dan ...edituradp.ro/site_img/downloads/2013/04/interior-alg-comp-i.pdf · Se ³tie c , metoda lui Gauss de rezolvare a unui

Bibliogra�e

[1] ***, GAP - Groups, Algorithms, Programming - a System for Computa-tional Discrete Algebra, version 4.4 (2010)http://www.gap-system.org/http://www.gap-system.org/Doc/manuals.html

[2] ***, GUAVA - A GAP4 Package for computing with error-correcting codes,Version 3.10, 2009http://www.gap-system.org/Manuals/pkg/guava3.10/htm/chap0.html

[3] ***, Singular, A Computer Algebra System for Polynomial Computations,HTML User Manual for Singular Version 3-1-2, Oct 2010http://www.singular.uni-kl.de/http://www.singular.uni-kl.de/Manual/latest/index.htm

[4] ***, Singular libraries - Coding Theory,http://www.singular.uni-kl.de/Manual/latest/sing1400.htmSEC1476

[5] ***, Singular libraries - Symbolic-numerical Solving,http://www.singular.uni-kl.de/Manual/latest/sing1316.htmSEC1392

[6] W. W. Adams, Ph. Loustaunau, An Introduction to Groebner Bases, Gra-duate Studies in Mathematics, vol 3,American Mathematical Society, 1996

[7] Th. Becker, V. Weispfenning, Gröbner bases: a Computational Approachto Commutative Algebra,Springer Verlag, New York, 1993

[8] J. Borwein, D. Bayley, R. Girgensohn, Experimentation in Mathematics -Computational Path to Discovery,A.K. Peters, Natick, Massachusetts, 2004

201

Page 202: EDP 2010. ISBN 978-973-3-3370-7 Dáné Károly András Dan ...edituradp.ro/site_img/downloads/2013/04/interior-alg-comp-i.pdf · Se ³tie c , metoda lui Gauss de rezolvare a unui

202 BIBLIOGRAFIE

[9] J. Borwein, D. Bayley, Mathematics bz Experiment - Plausible Reasoningin the 21st Century,A.K. Peters, Natick, Massachusetts, 2004

[10] S.Bulygin, R. Pellikaan, Bounded distance decoding of Linear error-correcting codes with Gröbner bases,Journal of Symbolic Computation 44 (2009), pp. 1626-1643

[11] C. K. Chui, Multivariate splinesSIAM, Philadelphia, PA, (1988)

[12] D. Cox, J. Little, D. O'Shea, Ideals, varieties, and algorithms, An Intro-duction to Computational Algebraic Geometry and Commutative Algebra,Springer Verlag, New York, (third edition) 2007

[13] I. Creang , D. Simovici, Teoria codurilor,Editura Didactic  ³i Pedagogic , Bucure³ti, 1975

[14] S. Crivei, A. M rcu³, Ch. S c rea, Cs. Szántó, Computational Algebrawith Applications to Coding Theory and Criptography,Editura Fundaµiei pentru Studii Europene, Cluj-Napoca, 2006

[15] W. Decker, C. Lossen, Computing in Algebraic Geometry - A Quick Startusing Singular,Springer Verlag, Berlin, 2006

[16] J. von zur Gathen, Modern Computer Algebra,second edition, Cambridge University Press, 2003

[17] G.-M. Greuel, G. P�ster, A Singular introduction to commutative algebra,Springer-Verlag, Berlin, 2002, 2008

[18] L. Györ�, S. Gy®ri, I. Vajda, Információ és kódelmélet,Typotex Kiadó, 2000

[19] D.W. Hardy, F. Richman, C.L. Walker, Applied Algebra, Codes, Ciphers,and Discrete Algorithms, second edition,Chapman and Hall/CRC, Broken Sound Parkway, 2009

[20] B. Hasset, Introduction to Algebraic Geometry,Cambridge University Press, 2007

[21] A. Horváth, Proving Geometric Theorems via Gröbner Bases Theory,Buletinul ³tiinµi�c al Universit µii Baia Mare, seria B, Matematica-Informatica, vol XIV (2000), nr 1, pp. 49-58.

Page 203: EDP 2010. ISBN 978-973-3-3370-7 Dáné Károly András Dan ...edituradp.ro/site_img/downloads/2013/04/interior-alg-comp-i.pdf · Se ³tie c , metoda lui Gauss de rezolvare a unui

BIBLIOGRAFIE 203

[22] A. Horváth, B. Finta, Finding Roots of Nonlinear Systems of Equationson a Domain, Mathematica Pannonica, 15/1 (2004), pp. 37-44

[23] A. Horváth, B. Finta, Solving Nonlinear Systems of Equations on a Do-main, Bulletins for Applied and Computer Mathematics, BAM-1973, vol.XLIV, nr.4, 2002 Technical University of Budapest, (XCIX), pp. 129-135.

[24] W. C. Hu�man, V. Pless, Fundamentals of Error-Correcting Codes,Cambridge University Press, 2003

[25] D. Ionescu, Codi�care ³i coduri,Editura Tehnic , Bucure³ti, 1981

[26] R.Lidl, H. Niederreiter, The Finite Fields,Cambridge University Press, second edition reprinted, 2000

[27] F.J. Macwilliams, N.J.A. Sloane, The Theory of Error-Correcting Codes,North-Holland, Amsterdam, 1977

[28] A. Marcus, Komputeralgebra,Egyetemi Kiadó, Kolozsvár, 2005

[29] Gh. Micula, S. Micula, Handbook of Splines, Kluwer Academic Publishers,Dordrecht, Boston, London, 1999

[30] T. Mora, Solving Polynomial Equation Systems I,Cambridge University Press, 2003

[31] T. Murphy, Finite Fields,Trinity College, University of Dublin, Course 373, 2003

[32] V. Pless, Introduction to the Theory of Error Correcting Codes,John Wiley and Sons, New York, 1998

[33] H.E. Rose, Linear Algebra - A Pure Mathematical Approach,Birkhäuser Verlag, Basel, 2002

[34] L.L. Schumaker, Spline functions: basic theory,John Wiley and Sons, New York, 1981

[35] M. Sala et all, Gröbner Bases, Coding and Cryptography,Cambridge University Press, 2003

[36] S. s. Kuo, Numerical Methods and Computers,Addison-Wesley, London, (1965)

Page 204: EDP 2010. ISBN 978-973-3-3370-7 Dáné Károly András Dan ...edituradp.ro/site_img/downloads/2013/04/interior-alg-comp-i.pdf · Se ³tie c , metoda lui Gauss de rezolvare a unui

204 BIBLIOGRAFIE

[37] D. D. Stancu, The Remainder of certain Linear Approximation Formulasin Two Variables,J. SIAM Numer. Anal., Ser. B, Vol 1, USA, (1964), pp. 137-153

[38] W. V. Vasconcelos, Computational Methods in Commutative Algebra andAlgebraic Geometry,Springer Verlag, Berlin, 1998

Page 205: EDP 2010. ISBN 978-973-3-3370-7 Dáné Károly András Dan ...edituradp.ro/site_img/downloads/2013/04/interior-alg-comp-i.pdf · Se ³tie c , metoda lui Gauss de rezolvare a unui

List  de �guri

1 Problema . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 16

1.1 V (xy · (x2 + y2− 25)) ³i V (xy(x3− 20x− 15− y2)) . . . . . 201.2 V (x2− y2 + z2) ³i V (x2y − z2), "Withney umbrella." . . . 211.3 V (z3− zx2 + y2) ³i V (z4− zx2 + y2) . . . . . . . . . . . . . 211.4 O quartic  ³i A3 = V (x3 − y2− z2). . . . . . . . . . . . . . . 221.5 D5 = V (x(x3 + y2) + z2) ³i E6 = V (x4 + y3 + z2). . . . . . . 221.6 E7 = V (y(x3 + y2) + z2) ³i E8 = V (x5 + y3 + z2). . . . . . . 231.7 Patru cercuri (A) . . . . . . . . . . . . . . . . . . . . . . . . . . 581.8 Patru cercuri (B) . . . . . . . . . . . . . . . . . . . . . . . . . . 601.9 Patru cercuri (C) . . . . . . . . . . . . . . . . . . . . . . . . . . 60

205

Page 206: EDP 2010. ISBN 978-973-3-3370-7 Dáné Károly András Dan ...edituradp.ro/site_img/downloads/2013/04/interior-alg-comp-i.pdf · Se ³tie c , metoda lui Gauss de rezolvare a unui

Glosar

Gröbnerbaz , 51

automor�smFrobenius, 127

baz Gröbner , 51Gröbnerminimal , 53redus , 53

pentru ideal, 25bil , 146Bose, Chaudhuri, Hocquenghem

cod, 175

canal binar simetric, 143cel mai mare divizor comun, 27cod, 145

autodual, 150BCH, 175în sens restrâns, 175primitiv, 175

binarHamming, 159simplex, 160

dimensiunea lui, 148dual, 149echivalent, 154extins, 160liniar, 148binar, 148

lungimea lui, 148MDS, 147

perfect, 147Reed-Muller, 161RS, 180sistematic, 148tipul lui, 154

coe�ciental monomului, 18

corpalgebric închis, 70caracteristica unui, 123de fracµii, 35de fracµii raµionale, 36extensie de, 116subcorp prim al, 123

decodi�carede probabilitate maxim , 146prin distanµ , 146

distanµ Hamming, 145minim , 145proiectat , 175

divizor, 26al lui 0, 24comun cel mai mare, 27

domeniu de integritate, 25

elementasociat în divizibilitate, 26divizor al lui 0, 24inversabil, 25ireductibil, 45prim, 45primitiv, 125

206

Page 207: EDP 2010. ISBN 978-973-3-3370-7 Dáné Károly András Dan ...edituradp.ro/site_img/downloads/2013/04/interior-alg-comp-i.pdf · Se ³tie c , metoda lui Gauss de rezolvare a unui

GLOSAR 207

regulat, 25unitate, 25

extensie de corp, 116

funcµieMoebius, 136

Gilbert-Varshamovmargine, 155

gradal polinomului, 18total al monomului, 18

Hammingcod, 159binar, 159

distanµ , 145m sur , 145margine, 147

ideal, 25al termenilor principali, 50baz  pentru, 25câtul lor, 28de�nit de varietate, 37generat, 25�nit, 25

intersecµia lor, 28maximal, 32monomial, 49prim, 46principal, 26produsul lor, 28radicalul lui, 28suma lor, 28

inel, 24comutativ, 24de fracµii, 35domeniu de integritate, 25factor, 32factorial, 46local, 33

Noetherian, 37principal, 26unitar, 24

m sur  Hamming, 145margine

Gilbert-Varshamov, 155Hamming, 147Plotkin, 155Sigleton, 147

matricede control, 103, 148de veri�care, 103forma standard, 148generatoare, 102, 149canonic , 149

monom, 18coe�cientul lui, 18gradul total, 18principal, 49

mulµimea termenilor principali, 50

Noetherinel, 37

ordonarelexicogra�c , 48graduat , 48invers graduat , 48

monomial , 47

Plotkinmargine, 155

polinom, 18anulator, 116coe�cient principal, 49de veri�care a parit µii, 164generator, 163gradul lui, 18, 49monic, 135reciproc, 165

Page 208: EDP 2010. ISBN 978-973-3-3370-7 Dáné Károly András Dan ...edituradp.ro/site_img/downloads/2013/04/interior-alg-comp-i.pdf · Se ³tie c , metoda lui Gauss de rezolvare a unui

208 GLOSAR

termen al, 18termen principal, 49

produs scalar, 149

rangmatricii, 68extinse, 68

Reed-Mullercod, 161

Reed-Solomoncod, 180

rezult generic, 55strict, 55

simbolde control, 145

sindrom, 157Singleton

margine, 147Singular, 20, 21, 56, 57

surf, 21sistem

multipicativ, 33Slepian

tabela, 157spaµiu

a�n, 19surf, 21

tabela Slepian, 157termen

al polinomului, 18

varietatea�n , 20de�nit  de ideal, 37

vectorortogonal, 149