Coduri detectoare şi corectoare de erori
|
|
- Ερατώ Κορομηλάς
- 6 χρόνια πριν
- Προβολές:
Transcript
1 Coduri detectoare şi corectoare de erori Adrian Atanasiu Editura Universităţii BUCUREŞTI
2 Prefaţă Vă uitaţi la televizor care transmite imagini prin satelit? Vorbiţi la telefon (celular)? Folosiţi Internetul? Ascultaţi muzică de pe DVD-uri? Aţi admirat fotografii extrem de reuşite ale planetelor Jupiter sau Saturn. Cum au fost obţinute ele Aţi auzit de alfabetul Morse; v-aţi întrebat de ce pentru ajutor apelul este S.O.S.? Sunt multe astfel de domenii intrate în cotidian, care folosesc coduri. De fapt, oricare din exemplele de mai sus se referă la un transfer de informaţie. Ceea ce se solicită (în mod neexplicit dar esenţial) este ca informaţia cerută să ajungă nemodificată la beneficiarul transmisiei. Indiferent prin ce mediu (numit canal) se face transmisia (poate fi laser, cablu, unde etc) mesajul expeditorului trebuie să fie identic cu cel al destinatarului. Chiar dacă sunt zgomote care pot altera acest conţinut. Tocmai din cauza acestor posibile perturbaţii de canal, ceea ce se transmite (numit mesaj de informaţie) se completează cu elemente redondante (numite caractere de control), care nu aduc informaţie suplimentară dar o confirmă pe cea existentă. În acest fel, o modificare posibilă a mesajului (o zgârietură pe DVD, o interferenţă, un ecou de canal) poate fi eliminată la recepţie de către decodor. Să considerăm de exemplu un mesaj abac format din patru caractere. Îl vom codifica prin scrierea fiecărui caracter de trei ori. Deci vom transmite aaabbbaaaccc. Dacă destinatarul primeşte caabbwaaaccb, la decodificare va separa textul în grupe de câte trei simboluri caa bbw aaa ccb şi va păstra din fiecare grup caracterul care apare de cele mai multe ori. Va obţine abac. Este o idee de decodificare folosită cu precădere de aproape toate sistemele, numită decodificarea cea mai probabilă. Evident, pot apare perturbări grupate, care să altereze mai multe caractere consecutive. Cum se operează atunci? Pur şi simplu se foloseşte altă codificare (sau supracodificare, care este o combinaţie de mai multe codificări). S-a ajuns în acest moment să existe clase de coduri (turbo-codurile) capabile să corecteze aproape 75% din simbolurile alterate ale unui mesaj! Pare fascinant. De fapt, aşa şi este! Teoria codurilor este un domeniu dezvoltat relativ recent ca aparat matematic (are cam 70 ani vechime). Dacă se face abstracţie de unele confuzii de termeni cu criptografia (care utilizează frecvent termenul de cod pentru unele sisteme clasice de criptare) sau de ideea că de fapt şi scrierea sau vorbirea constituie sisteme de codificare ale ideilor, primul cod care merită acest nume în lumina obiectivelor menţionate anterior, este codul Morse apărut în 1840 de fapt un alfabet care să permită transmiterea mesajelor prin telegraf. Explozia informaţională din a doua jumătate a secolului XX a condus la apariţia acestei discipline, ale cărei baze teoretice sunt puse în anii 50, are o dezvoltare fulgerătoare până la
3 4 sfârşitul anilor 60, stagnează aproape două decenii, după care renaşte din 1985 şi cunoaşte astăzi din nou o creştere explozivă, explicabilă prin necesitatea transmiterii unui volum de informaţie nemaiîntâlnit la o viteză aproape nebănuită până acum ani. Cea mai mare parte a noţiunilor prezentate aici constituie suportul unui curs ţinut o vreme la Facultatea de Matematică a Universităţii Bucureşti (întâi profesorul Silviu Guiaşu în anii 67-75, apoi reluat de autor după 1990). Lucru explicabil, deoarece bazele teoriei codurilor sunt pur matematice (algebră liniară, teoria numerelor, corpuri finite, statistică). Aceasta nu face însă domeniul mai puţin atrăgător, dimpotrivă. Sugerează că pot fi gândite şi alte abordări care să genereze sisteme de codificare noi, cu performanţe superioare. Deja ele apar din domeniul cuantic sau genetic. Ideea în sinte constituie o provocare, un apel al societăţii, al vieţii practice, adresat ştiinţelor fundamentale. Putem să îi răspundem? Aceasta este întrebarea. Autorul este conştient că nu a putut acoperi şi explica tot ce conţine domeniul în sine. De asemenea, lucrarea poate cuprinde unele erori (nu numai de redactare). Este riscul pe care şi-l asumă orice autor. De aceea, rugămintea către cititor(ul interesat) este de a nu ezita stabilirea unei colaborări. Suntem deschişi şi receptivi la orice mesaj. În ciuda riscurilor unor posibile perturbaţii de canal.
4 Capitolul 1 Codificare şi decodificare 1.1 Codificare Definiţia 1.1 Fiind date două mulţimi finite şi nevide A (alfabetul sursă) şi B (alfabetul cod), o codificare este o aplicaţie injectivă φ : A B. Elementele mulţimii φ(a) B se numesc cuvinte-cod, iar mulţimea φ(a) se numeşte cod. Dacă B are numai două simboluri, codificarea φ se numeşte binară. Exemplul 1.1 Fie A = {0, 1,..., 9} şi B = {0, 1}. Printre secvenţele binare de lungime 5, numărul celor care au doi de 1 este C 2 5 = 10. Ele pot fi folosite pentru a codifica cifrele din scrierea zecimală (Tabelul 8.1). Tabelul 1.1: Codul doi-din-cinci Simbol zecimal Cuvânt cod Mesajul 173 are codul De remarcat că între cuvinte - cod nu se lasă nici un spaţiu, deoarece caracterul spaţiu poate fi el însuşi un simbol din alfabetul cod. Astfel de exemplu, codul Morse are alfabetul B = {.,, spa tiu}. Decodificarea se face foarte simplu: se împarte mesajul codificat în grupe de câte cinci caractere şi se vede cifra din Tabelul 8.1 corespunzătoare grupei respective. 5
5 6 CAPITOLUL 1. CODIFICARE ŞI DECODIFICARE Aranjarea cuvintelor cod a fost făcută pentru a realiza şi o decodificare pe baza unei formule. Astfel, dacă a 0 a 1 a 2 a 3 a 4 este un cuvânt - cod, el corespunde cifrei k rezultată din de algoritmul: begin x := a 1 + 2a 2 + 4a 3 + 7a 4 ; if x = 11 then k := 0 else k := x; end. Definiţia 1.2 Pentru o codificare φ : A B, se numeşte codificare a mesajelor (textului) sursă aplicaţia φ : A B definită recursiv prin: φ (ɛ) = ɛ (ɛ este cuvântul vid); φ (aα) = φ(a)φ (α), a A, α A. Definiţia 1.3 Codificarea φ este unic decodabilă dacă φ este injectivă. Codificarea dată în Exemplul 2.1 este după cum s-a observat unic decodabilă. Acest lucru nu este totdeauna posibil. Dacă luăm de exemplu codificarea φ(a) = 10, φ(b) = 101, φ(c) = 110, ea nu este unic decodabilă; astfel φ (ac) = φ (ba) = Definiţia O codificare φ : A B în care toate cuvintele cod au lungi-mea n se numeşte codificare-bloc de lungime n, iar φ(a) este un cod-bloc de lungime n. 2. O codificare φ : A B se numeşte instantanee dacă φ(a) are proprietatea prefixului (dacă α, αβ φ(b) atunci β = ɛ). Mulţimea φ(a) este numită cod instantaneu. Codul definit în Exemplul 2.1 este un cod - bloc de lungime 5. Codurile bloc sunt eficiente în situaţia când simbolurile sursă au frecvenţe egale de apariţie; în caz contrar, ele devin greoaie şi sunt preferabile codurile instantanee cu lungimi variabile ale cuvintelor cod. Exemplul 1.2 Codul Morse, dat în Tabelul 8.2 este un cod instantaneu cu alfabetul cod B = {.,, }. Deoarece spaţiul este folosit numai la sfârşitul fiecărui cuvânt - cod, procedura de decodificare este simplă: orice cuvânt - cod se află între două spaţii, de la începutul mesajului până la primul spaţiu, sau de la ultimul spaţiu până la sfârşit. Motivul pentru care nu se foloseşte un cod - bloc este simplu: frecvenţele literelor într-o limbă diferă foarte mult.
6 1.2. EXEMPLE DE CODURI - BLOC IMPORTANTE 7 Tabelul 1.2: Codul Morse A. - F.. -. K -. - P U.. - B -... G - -. L. -.. Q V... - C H.... M - - R. -. W. - - D -.. I.. N -. S... X E. J O T - Y Z Exemplul 1.3 Un alt exemplu de cod - bloc este codul hexazecimal: C D A 1010 E B 1011 F 1111 Exemplul 1.4 Să presupunem că vrem să construim un cod binar pentru alfabetul {0, 1, 2, 3} şi observăm că 0 apare în mesajele sursă mai des decât orice alt simbol. Atunci următoarea schemă de codificare pare rezonabilă: φ(0) = 0, φ(1) = 01, φ(2) = 011, φ(3) = 111. Aici φ(0) are lungime minimă, iar algoritmul de decodificare este foarte simplu: se aplică recursiv regula: Fie sufixul 01 k ; el este codificarea numărului k (mod 3) } 33 {{... 3} k div 3 Totuşi această codificare nu este instantanee. Într-adevăr, dacă se primeşte un mesaj lung de forma nu vom şti dacă primul simbol sursă este 0, 1 sau 2 până nu se termină transmiterea întregului mesaj. 1.2 Exemple de coduri - bloc importante Deşi simple, codurile binare sunt de obicei lungi şi deci greu de manipulat. Adesea este mai convenabil să grupăm simbolurile binare formând alfabete mai complexe. Astfel, grupuri de câte trei simboluri binare conduc la codurile octale. Reprezentarea în octal se indică de obicei prin indicele 8 aşezat la sfârşit. De exemplu, φ(01) = (01) 8 = În mod similar, prin gruparea a câte patru simboluri binare se obţine codul hexazecimal (Exemplul 2.3). Un cod foarte important folosit în reprezentarea standard a simbolurilor alfabetice şi numerice este codul ASCII (American Standard Code for Information Interchange) 1. 1 Acest cod a fost prezentat pe larg în cursul de Arhitectura sistemelor de Calcul.
7 8 CAPITOLUL 1. CODIFICARE ŞI DECODIFICARE Un ultim cod, folosit de toate editurile de pe glob este Internaţional Standard Book Number (ISBN). El este un cod - bloc de lungime 10 (lungimea cuvintelor - cod creşte prin folosirea simbolului e diverse poziţii, dar acest caracter este ignorat la prelucrarea automată). Alfabetul cod este B = {0, 1, 2, 3, 4, 5, 6, 7, 8, 9, X}, (X pentru numărul 10). De exemplu, cartea S. Lin, P. Costello - Teoria Codurilor are codul ISBN X Primul număr (0) reprezintă ţara (SUA), 13 reprezintă editura (Prentice-Hall), iar următoarele şase cifre sunt asignate de editură ca număr de identificare al cărţii. Ultimul simbol este de control (similar bitului de paritate) şi definit astfel: 10 Pentru codul ISBN a 1 a 2... a 10, ia 11 i = 0 (mod 11). i=1 Astfel,în ISBN-ul de sus, = (mod 11) Unele publicaţii au codul de identificare de trei cifre (de exemplu Wiley-Inter-Science are 471); în acest caz numărul pentru fiecare publicaţie are numai cinci simboluri. Pentru România, codul de ţară este Construcţia codurilor instantanee În acest paragraf ne punem problema construirii unui cod binar instantaneu peste alfabetul sursă A = {a 1,..., a n }, (n 1). Deci B = {0, 1}. Iniţial se specifică lungimile d 1, d 2,..., d n ale cuvintelor cod. Fără a micşora generalitatea, putem presupune 1 d 1 d 2... d n La primul pas se alege un cuvânt - cod binar arbitrar φ(a 1 ) de lungime d 1. În continuare se alege un cuvânt - cod arbitrar φ(a 2 ) din mulţimea secvenţelor binare de lungime d 2 care nu au pe φ(a 1 ) ca prefix. Aceasta este totdeauna posibil pentru că numărul tuturor secvenţelor binare de lungime d 2 este 2 d 2 ; dintre acestea, numărul celor care au prefixul φ(a 1 ) este 2 d 2 d 1. Cum 2 d 2 2 d 2 d 1 + 1, există cel puţin o alegere posibilă pentru φ(a 2 ) de lungime d 2. Va trebui să selectăm în continuare un cuvânt de lungime d 3 care nu are ca prefix φ(a 1 ) sau φ(a 2 ). Deci, din cele 2 d 3 secvenţe binare posibile trebuiesc eliminate cele 2 d 3 d 1 secvenţe cu prefixul φ(a 1 ) şi 2 d 3 d 2 secvenţe cu prefixul φ(a 2 ). Aceasta este posibil dacă şi numai dacă 2 d 3 2 d 3 d d 3 d Împărţind această inegalitate cu 2 d 3, se obţine 1 2 d d d 3. În mod analog se poate arăta în general inegalitatea 1 2 d d dn Faptul că acest cod este instantaneu rezultă imediat din construcţie.
8 1.3. CONSTRUCŢIA CODURILOR INSTANTANEE 9 Teorema 1.1 (Kraft) Fiind dat un alfabet sursă A de n simboluri şi un alfabet cod B de k simboluri, se poate construi un cod instantaneu cu lungimile cuvintelor - cod d 1, d 2,..., d n dacă şi numai dacă este verificată inegalitatea: k d 1 + k d k dn 1. Demonstraţie: = : Fie A = {a 1, a 2,..., a n } şi putem presupune relaţia d 1 d 2... d n. Construim prin inducţie codificarea instantanee φ, astfel: Se alege arbitrar φ(a 1 ) B, φ(a 1 ) = d 1 (se notează cu α lungimea secvenţei α). Presupunem că au fost alese φ(a 1 ), φ(a 2 ),..., φ(a s 1 ) (s > 1). Atunci se va alege un cuvânt arbitrar φ(a s ) B care nu are ca prefix nici unul din cuvintele selectate anterior. Aceasta este posibil deoarece numărul cuvintelor cu prefixul φ(a i ) este k ds d i (1 i s 1); deci alegerea poate fi făcută din s 1 k ds i=1 k ds d i elemente. Din inegalitatea lui Kraft avem s 1 1 k d i k ds i=1 care, prin multiplicare cu k ds conduce la s 1 k ds k ds d i 1, i=1 deci există cel puţin un element de lungime d s care poate fi ales drept φ(a s ). Afirmaţia reciprocă se demonstrează similar (pentru k = 2 ea a fost dată anterior).q.e.d. Teorema 1.2 (McMillan) Orice codificare unic decodabilă satisface inegalitatea lui Kraft. Demonstraţie: Fie φ o codificare unic decodabilă. Notăm cu d i lungimea cuvântului cod φ(a i ), (1 i n). Se observă că j, (j 1) se pot forma k j cuvinte de lungime j peste alfabetul - cod B cu B = k. Din proprietatea de unic decodabilitate, numărul mesajelor sursă α = a i1 a i2... a ir cu φ(α) = j nu depăşeşte k j. Lungimea codului pentru α este d i1 + d i d ir ; deci numărul tuturor sumelor de forma d i1 + d i d ir = j este cel mult k j. Rămâne de demonstrat că numărul c = arăta că r 1, c r r este mărginit. n i=1 k d i este cel mult 1. Pentru aceasta, vom
9 10 CAPITOLUL 1. CODIFICARE ŞI DECODIFICARE Să calculăm puterile lui c: ( n c 2 = şi în general, i=1 c r = k d i ) ( n n j=1 i 1,i 2,...,i r=1 k d j ) = n i,j=1 k (d i 1 +d i d ir ) k (d i+d j ) Această sumă se poate re-ordona grupând toţi termenii de forma k j unde j satisface egalitatea anterioară. Cel mai mare j posibil este j = d + d d = rd, unde d = max{d 1, d 2,..., d n }. Numărul tuturor termenilor de forma k j din sumă este cel mult k j. Deci, c r rd j=1 k j k j = rd j=1 1 = rd. Deci, cr r d, de unde va rezulta c 1 (pentru c > 1 şirul a r = cr r mărginit). q.e.d., deci nu este Corolarul 1.1 Pentru orice cod unic decodabil există un cod instantaneu care are toate cuvintele - cod de lungimi egale. Demonstraţie: Rezultă din demonstraţia teoremei precedente. Exemplul 1.5 Să considerăm alfabetul sursă A = {a, b, c} şi alfabetul cod B = {0, 1}; deci n = A = 3, k = B = 2. Vrem să construim o codificare instantanee φ : A B care are toate cuvintele - cod de lungime d. Inegalitatea Kraft va da 2 d + 2 d + 2 d 1, deci 2 d 1. Cel mai mic d care o 3 verifică este d = 2. Deci orice mulţime de trei secvenţe binare de lungime 2 va putea fi folosită drept cod. Sunt 4 astfel de mulţimi: {00, 01, 10}, {00, 01, 11}, {00, 10, 11}, {01, 10, 11} 1.4 Coduri Huffman Am menţionat anterior faptul că dacă frecvenţa simbolurilor sursă variază, atunci codurile instantanee sunt preferabile codurilor - bloc, deoarece simbolurile care apar mai frecvent vor fi codificate prin cuvinte - cod mai scurte. Ne punem problema aflării unor codificări cât mai eficiente, în ipoteza că frecvenţele simbolurilor sursă sunt cunoscute exact (de exemplu probabilitatea distribuţiei simbolurilor sursă în mesaje). Definiţia 1.5 O sursă de informaţie este o pereche S = (A, P ) unde A = {a 1, a 2,..., a n } este alfabetul sursă(mulţime ordonată);
10 1.4. CODURI HUFFMAN 11 P = {P (a 1 ), P (a 2 ),..., P (a n )} este mulţimea ordonată a probabilităt ilor elementelor lui A, deci 0 P (a i ) 1, (1 i n); n P (a i ) = 1. i=1 Fie φ o codificare a unei surse de informaţie. Dacă se notează cu d i = φ(a i ), se poate defini lungimea medie L a cuvintelor cod prin L(φ) = n d i P (a i ). i=1 O codificare este eficientă dacă lungimea medie a cuvintelor - cod este cât mai mică. Definiţia 1.6 Fiind dată o sursă de informaţie S şi un alfabet cod, un cod Huffman este un cod instantaneu cu lungimea medie minimă. Lungimea medie minimă a unui cod Huffmann se notează cu L min (S). Exemplul 1.6 Să se determine un cod Huffman binar pentru alfabetul sursă A = {a, b, c, d, e, f} ştiind că a apare de două ori mai des decât e şi e de două ori mai des decât orice consoană. Deci, vom avea sursa de informaţie Simbol a b c d e f Probabilitate 0, 4 0, 1 0, 1 0, 1 0, 2 0, 1 Putem asigna deci un cuvânt - cod de lungime 1 lui a şi unul de lungime doi lui e. Atunci lungimile cuvintelor - cod rămase sunt egale cu 4, iar inegalitatea lui Kraft este saturată: = 1. Un astfel de cod se poate construi efectiv: Lungimea sa medie este φ(a) = 0 φ(c) = 1101 φ(e) = 10 φ(b) = 1100 φ(d) = 1110 φ(f) = 1111 Deci, pentru acest exemplu, L min (S) 2, 4. L = 0, , , 1 = 2, 4.
11 12 CAPITOLUL 1. CODIFICARE ŞI DECODIFICARE Construcţia codurilor Huffman binare O sursă cu două simboluri are evident un cod Huffman de cuvinte - cod {0, 1} (şi deci L min (S) = 1). O sursă cu trei simboluri {a 1, a 2, a 3 } în care a 1 are probabilitate maximă, poate fi redusă la cazul a două simboluri {a 1, a 2,3 } unde P (a 2,3 ) = P (a 2 ) + P (a 3 ). Vom construi o codificare Huffman pentru sursa redusă φ(a 1 ) = 0, φ(a 2,3 ) = 1. după care spargem cuvântul cod 1 în două cuvinte: 10 şi 11; în acest fel se obţine o codificare Huffman pentru sursa originală: a 1 a 2 a În general, fie S o sursă de informaţie cu simbolurile {a 1, a 2,..., a n } ordonate descrescător după probabilităţi, adică: P (a 1 ) P (a 2 )... P (a n ). Construim o sursă redusă S cu simbolurile {a 1,..., a n 2, a n 1,n } unde a n 1,n este un simbol nou, cu probabilitatea P (a n 1,n ) = P (a n 1 ) + P (a n ). Dacă nu se poate construi un cod Huffman pentru S, se reia procedeul pentru această sursă (reordonând eventual simbolurile după probabilitate); în final se va ajunge la o sursă (pentru două simboluri problema a fost rezolvată) în care se poate construi codul Huffman. Dacă se poate găsi o codificare Huffman φ pentru sursa redusă S, atunci codul din Tabelul 1.3 este un cod Huffman pentru S (vom demonstra această afirmaţie). Tabelul 1.3: a 1 a 2... a n 2 a n 1 a n φ (a 1 ) φ (a 2 )... φ (a n 2 ) φ (a n 1,n )0 φ (a n 1,n )1 Lema 1.1 L(φ) = L(φ ) + P (a n 1 ) + P (a n ). Demonstraţie: Fie d 1, d 2,..., d n 2, d lungimile cuvintelor cod corespunzătoare lui φ. Atunci lungimile cuvintelor cod pentru φ sunt d 1, d 2,..., d n 2, d + 1, d + 1. Efectuând calculele, se obţine: n 2 L(φ) = d i P (a i ) + (d + 1)P (a n 1 ) + (d + 1)P (a n ) = q.e.d. = i=1 n 2 d i P (a i ) + d [P (a n 1 ) + P (a n )] + P (a n 1 ) + P (a n ) = i=1 = L(φ ) + P (a n 1 ) + P (a n ).
12 1.4. CODURI HUFFMAN 13 Teorema 1.3 Fie φ o codificare Huffman pentru o sursă de informaţie redusă S. Atunci codificarea φ definită de Tabelul 1.3 determină un cod Huffman pentru sursa de informaţie S. Demonstraţie: Fie a 1, a 2,..., a n simbolurile sursă, ordonate descrescător după probabilitate. Deoarece teorema este evidentă pentru P (a n ) = 0, vom considera doar cazul P (a n ) > 0. Demonstraţia constă din trei paşi: S admite o codificare Huffman φ 0 cu lungimile cuvintelor - cod ordonate: d 1 d 2... d n (d i = φ 0 (a i ), 1 i n). Pentru a demonstra aceasta, plecăm de la o codificare Huffman arbitrară φ pentru S. Dacă există un simbol a i astfel ca d i > d i+1, notăm cu φ codificarea obţinută din φ prin permutarea cuvintelor cod corespunzătoare lui a i şi a i+1. Codul obţinut prin codificarea φ este evident un cod instantaneu, iar diferenţa dintre lungimile medii L = L min (al lui φ) şi L (al lui φ ) este: L min L = [d i P (a i ) + d i+1 P (a i+1 )] [d i+1 P (a i ) + d i P (a i+1 )] = = (d i d i+1 )[P (a i ) P (a i+1 )]. Această expresie este produsul dintre două numere pozitive, deci L min L, iar din proprietatea de minimalitate rezultă L min = L. Cu alte cuvinte, φ este tot o codificare Huffman. Procedeul continuă până se obţine codificarea φ 0 cerută. S admite o codificare Huffman φ 1 în care ultimele cuvinte cod, φ 1 (a n 1 ) şi φ 1 (a n ) diferă doar prin ultimul simbol. Fie φ 0 codificarea Huffman anterioară şi φ0 codificarea rezultată din φ 0 eliminând ultimul simbol din φ 0 (a n ). Lungimea medie a lui φ0 va fi evident mai mică decât cea a lui φ 0 (pentru că P (a n ) > 0), deci φ0 nu poate fi instantanee. Cuvântul - cod φ 0 (a i ) = φ 0 (a i ), (1 i n 1) nu este prefixul nici unui alt cuvânt cod; deci există un i (i n 1) astfel încât φ 0 (a n ) este prefixul lui φ 0 (a i ). Aceasta este posibil numai dacă d i = d n şi deci φ 0 (a i ) diferă de φ 0 (a n ) numai prin ultimul simbol. Dacă i = n 1, se ia φ 1 = φ 0. Altfel, se observă că d i = d n implică d i = d i+1 =... = d n ; deci se pot permuta cuvintele cod definite în φ 0 pentru a i şi a n 1. Codificarea φ 1 astfel obţinută are aceeaşi lungime medie ca şi φ 0, deci defineşte un cod Huffman. Să presupunem că se dă o codificare Huffman φ pentru sursa redusă S şi definim o codificare φ pentru S conform Tabelului 1.3. Lungimile lor medii L(φ), L(φ ) verifică relaţia din Lema 1.1. Să folosim acum codificarea Huffman φ 1 construită anterior. Deoarece ultimele două cuvinte - cod diferă numai prin ultimul simbol, φ 1 poate fi obţinut dintr-o codificare φ 1 al lui S prin spargerea ultimului cuvânt - cod. În plus, φ 1 este evident o codificare instantanee. Prin calcule se ajunge la relaţia L(φ 1 ) L(φ 1) = P (a n 1 ) + P (a n ).
13 14 CAPITOLUL 1. CODIFICARE ŞI DECODIFICARE Cum avem şi L(φ) L(φ ) = P (a n 1 ) + P (a n ), rezultă L(φ) = L(φ 1 ) L(φ 1) + L(φ ). Acum, L(φ ) = L min (S ), deci L(φ 1) + L(φ ) 0. Rezultă L(φ) L(φ 1 ) = L min (S). Deci, codificarea φ defineşte un cod Huffman. q.e.d.
14 1.5. EXERCIŢII Exerciţii Exerciţiul 1.1 Care este cea mai mică lungime a unui cod - bloc cu alfabetul sursă A = {a, b,..., z} şi alfabetul cod B = {.,, spa tiu} (ca la codul Morse). Dar dacă B are patru caractere? Exerciţiul 1.2 Se defineşte codificarea Este ea unic decodabilă? Este instantanee? Se poate găsi un cod instantaneu cu aceleaşi lungimi ale cuvintelor cod? Exerciţiul 1.3 Se defineşte codificarea a 1010 d 0001 b 001 e 1101 c 101 f 1011 Este ea unic decodabilă? Dacă nu, găsiţi două mesaje sursă cu acelaşi cod. Exerciţiul 1.4 Este unic decodabilă codificarea: 0 AA 4 ABBAA 7 AAAABB 1 AABAB 5 BABBA 8 AAAABA 2 ABBBBB 6 BBBAB 9 AAAAAB 3 ABABA Exerciţiul 1.5 Se poate decide unic decodabilitatea codificărilor folosind inegalitatea lui Kraft? φ(a) = 001 φ(a) = 00 φ(b) = 1001 φ(b) = 10 φ(c) = 0010 φ(c) = 011 φ(d) = 1110 φ(d) = 101 φ(e) = 1010 φ(e) = 111 φ(f) = φ(f) = 110 φ(g) = 0101 φ(g) = 010 Exerciţiul 1.6 Să se construiască un cod binar instantaneu pentru următorul alfabet sursă cu lungimile corespunzătoare ale cuvintelor cod: Simbol A B C D E F G H I J K L Lungime Exerciţiul 1.7 Să se construiască un cod instantaneu pentru următorul alfabet sursă, cu lungimile corespunzătoare ale cuvintelor cod:
15 16 CAPITOLUL 1. CODIFICARE ŞI DECODIFICARE Simbol Lungime care este numărul minim e simboluri - cod necesare? Exerciţiul 1.8 Câte simboluri cod sunt necesare pentru ca următorul alfabet sursă să poată fi codificat într-un cod instantaneu cu lungimile cuvintelor cod date: A B C D E F G H I J K L M N O P Exerciţiul 1.9 Demonstraţi că pentru orice cod instantaneu în care inegalitatea Kraft este strictă, este posibil să se adauge un nou simbol sursă şi să se extindă codul dat la un nou cod instantaneu (cu acelaşi alfabet cod). Demonstraţi aceasta pentru codul definit la Exerciţiul 2.7.
16 Capitolul 2 Coduri liniare 2.1 Matrice generatoare Definiţia 2.1 Fie q un număr prim şi n N un număr natural nenul. Se numeşte cod liniar orice subspaţiu liniar al lui Z n q. Un subspaţiu k-dimensional (k n) al lui Z n q se numeşte (n, k)- cod liniar peste Z q. Să notăm în general cu A n,k (A n,k Zq n ) un (n, k) - cod liniar 1. Elementele sale se numesc cuvinte-cod. Fie n, k N, (k < n). O codificare este o aplicaţie injectivă φ : Zq k Zq n, iar A n,k = φ(zq k ). Elementele lui Zq k se numesc mesaje de informaţie. Deci, x Zq k este un mesaj de informaţie scris cu caractere din alfabetul Z q. Dacă transmitem succesiunea x de semnale printr-un canal de comunicaţie, mesajul este supus diverselor perturbaţii de canal care-l modifică. Ideea teoriei codurilor este următoarea: în loc de a transmite numai elementele lui Zq k, să lungim mesajul informaţional scufundând (prin intermediul aplicaţiei φ) Zq k într-un spaţiu liniar Zq n (n > k) astfel încât cele n k poziţii noi - numite poziţii de control - să asigure redondanţa necesară refacerii mesajului de informaţie iniţial (atunci când a fost alterat parţial). Astfel, cu preţul lungirii mesajului, se câştigă protecţia faţă de (anumite tipuri de) erori. Observaţia 2.1 Din definiţie rezultă că un cod liniar de lungime n este un set C de cuvinte (secvenţe, şiruri, vectori) de lungime n cu proprietăţile: a = (a 1,..., a n ) C, b = (b 1,..., b n ) C = a + b = (a 1 + b 1,..., a n + b n ) C; a = (a 1,..., a n ) A, t Z q = t a = (ta 1,..., ta n ) A. Orice cod liniar conţine cuvântul cod nul 0 = (0, 0,..., 0). A n,k = q k. 1 Dacă nu este necesar sa specificăm dimensiunile n şi k, vom mai folosi şi notaţia C pentru a desemna un cod liniar. 17
17 18 CAPITOLUL 2. CODURI LINIARE A n,k fiind un spaţiu liniar k-dimensional, admite o bază formată din k vectori cu n elemente fiecare. Fie e 1, e 2,..., e k o astfel de bază. Atunci orice cuvânt cod v A n,k are forma v = k u i e i i=1 unde (u 1, u 2,..., u k ) Zq k este unic determinat. Cu alte cuvinte, k simboluri de informaţie u 1,..., u k Z q determină în mod unic un cuvânt - cod v A n,k prin relaţia de sus, şi reciproc. Operaţia de codificare φ face această asociere biunivocă: u = (u 1,..., u k ) Z k q v = k u i e i A n,k i=1 Fiecare cuvânt - cod într-un cod liniar va avea deci k simboluri de informaţie; celelalte n k simboluri se numesc simboluri de control. Definiţia 2.2 Fie A n,k un cod liniar cu baza e 1,..., e k. Matricea e 1 G k,n = e 2... e k se numeşte matricea generatoare a codului. Deci operaţia de codificare este definită prin matricea generatoare G: u Z k q, φ(u) = ug. Exemplul 2.1 Matricea G = ( ) generează un (5, 2)-cod liniar peste Z 2 (n = 5, k = 2). Rangul ei este 2 (primele două coloane formează matricea unitate), deci cele două linii ale lui G sunt cuvinte - cod liniar independente. Mulţimea mesajelor de informaţie este Z2 2 = {00, 01, 10, 11}. Înmulţind fiecare mesaj cu matricea G se obţine spaţiul liniar al cuvintelor - cod A 5,2 = {00000, 01101, 10011, 11110}. Funcţia de codificare este: , , ,
18 2.1. MATRICE GENERATOARE 19 Un cod liniar poate fi generat de mai multe baze posibile. Deci se pot construi mai multe matrici generatoare pentru un (n, k)-cod liniar. Ele se pot transforma una în alta prin operaţiile liniare obişnuite, definite pentru liniile unei matrici. Prin schimbarea matricii generatoare nu se schimbă spaţiul liniar al cuvintelor - cod, ci numai modalitatea de codificare (funcţia φ). Cum prin termenul cod se înţelege de obicei spaţiul liniar A n,k, rezultă că două matrici diferite care se deduc una din alta prin operaţii pe linii, reprezintă acelaşi cod. Exemplul 2.2 Reluând Exemplul 2.1, prin adunarea liniei doi la prima linie se obţine matricea ( ) G = Ea generează acelaşi spaţiu liniar A 5,2, dar codificarea diferă: , , , Exemplul 2.3 Matricea G = generează un (6, 3)-cod liniar peste Z 3. Aducând matricea la forma canonică, se obţine G = Toate cele 3 3 = 27 cuvinte ale acestui cod au următoarea proprietate: fiecare simbol este scris de două ori. Din acest motiv, astfel de cod este numit cod cu repetiţie. Cea mai convenabilă regulă de codificare constă în scrierea simbolurilor de informaţie şi suplimentarea lor cu n k simboluri de control. Aceasta corespunde matricii generatoare (unice) G = (I B) unde I este matricea unitate de ordin k, iar B este o matrice cu k linii şi n k coloane. Definiţia 2.3 Un cod liniar este numit sistematic dacă admite o matrice generatoare de forma G = (I B) unde I este matricea unitate. Definiţia 2.4 Două coduri liniare C şi C de aceeaşi lungime n se numesc echivalente dacă există o permutare π S n astfel încât (v 1, v 2,..., v n ) C v π(1) v π(2)... v π(n) C (s-a notat cu S n mulţimea permutărilor de n elemente).
19 20 CAPITOLUL 2. CODURI LINIARE Exemplul 2.4 Codul din Exemplul 2.1 este un cod sistematic. Din codificare se observă că mesajul de informaţie se află în cuvântul - cod pe primele două poziţii. Codul cu repetiţie din Exemplul 2.3 nu este sistematic. Totuşi, folosind permutarea (1, 4, 6, 2, 5, 3) (se permută simbolurile doi cu patru şi trei cu şase) se ajunge la un cod sistematic generat de matricea G = Teorema 2.1 Orice cod liniar este echivalent cu un cod liniar sistematic. Demonstraţie: Matricea generatoare G a unui (n, k) - cod liniar A n,k are rangul k; deci ea are k coloane liniar independente. 1. Să presupunem că primele k coloane ale lui G sunt liniar independente. Deci G = (X Y ) unde X este o matrice k k inversabilă. Există atunci o succesiune de operaţii de linii care transformă X în matricea unitate. Aceeaşi succesiune de operaţii efectuate acum pentru toată matricea G va conduce la matricea G = (I Y ). Deoarece şi G este matrice generatoare pentru codul A n,k, rezultă că acesta este sistematic. 2. Fie π permutarea care aduce coloanele liniar independente ale matricii G pe primele k poziţii. Se obţine în acest fel o nouă matrice G. Fie A n,k codul liniar obţinut prin codificarea cu matricea generatoare G. Atunci A n,k şi A n,k sunt echivalente, iar A n,k este sistematic, conform cazului anterior. q.e.d. 2.2 Matrice de control Definiţia 2.5 Fie A n,k un cod liniar generat de matricea G = G k,n. Se numeşte matrice de control o matrice H = H n k,n cu proprietatea GH T = 0. Observaţia 2.2 Din definiţie rezultă că matricea de control H a unui cod liniar C are următoarea proprietate: v C vh T = 0 Lăsăm ca exerciţiu demonstrarea acestei echivalenţe. Prin transpunere, relaţia de sus se poate scrie şi HG T = 0. Aceasta înseamnă că şi H este matricea generatoare a unui (n, n k) - cod liniar peste corpul Z q, cod pentru care G este matrice de control. Cele două coduri astfel definite se numesc coduri duale. Cuvintele - cod din cele două coduri duale sunt ortogonale (produsul lor scalar este 0). Într-adevăr, dacă C şi C sunt două coduri duale generate de matricile G respectiv H, iar x C, y C sunt cuvinte - cod arbitrare, există u, v cu x = ug, y = vh. În plus, xh T = 0, yg T = 0. Atunci, xy T = ugy T = u(yg T ) T = u0 T = 0.
20 2.2. MATRICE DE CONTROL 21 Exemplul 2.5 (7, 4) - codul liniar binar cu matricea generatoare G = are drept matrice de control H = care la rândul ei este matricea generatoare a unui (7, 3) - cod liniar binar. Se verifică imediat relaţia GH T = Un cod care coincide cu codul său dual se numeşte cod auto - dual. Teorema 2.2 Un cod liniar sistematic cu matricea generatoare G = (I B) admite ca matrice de control H = ( B T I). Demonstraţie: Cele două matrici unitate din scrierea lui G şi H sunt de ordin k respectiv n k. Efectuând calculele, se obţine: ( ) B GH T = (I B) = IB + BI = B + B = 0. q.e.d. I Corolarul 2.1 Matricea de control a unui (n, k)-cod liniar are rangul n k. Teorema de sus permite un algoritm de calcul extrem de simplu al matricii de control, atunci când se cunoaşte matricea generatoare. Să arătăm aceasta pe un exemplu: Exemplul 2.6 Plecând de la matricea generatoare construită în Exemplul 2.4, se poate construi matricea de control (calculele se fac în Z 3 ): H = = Aplicând acum permutarea inversă coloanelor lui H, se ajunge la matricea de control a codului definit în Exemplul 2.3: H =
21 22 CAPITOLUL 2. CODURI LINIARE Relaţia xh T = 0 pe care o verifică orice cuvânt - cod x A n,k permite să definim un cod şi sub forma unui sistem de ecuaţii. Astfel, A n,k este un cod peste Z q dacă şi numai dacă elementele sale sunt soluţii ale sistemului liniar xh T = 0. ( ) Exemplul 2.7 Codul cu matricea de control H = este definit ca mulţimea soluţiilor binare (x 1, x 2, x 3, x 4, x 5 ) ale sistemului x 1 + x 2 + x 4 = 0, x 1 + x 3 + x 4 + x 5 = 0 Sistemul are 8 soluţii, care formează codul binar A 5,2 = {00000, 00101, 01110, 01011, 11100, 11001, 10010, 10111} 2.3 Sindrom Fie codul liniar A n,k peste Z q, cu matricea de control H şi a Z n q. Se numeşte sindrom al cuvântului a vectorul z cu n k componente obţinut prin relaţia sau echivalent z = ah T. Observaţia 2.3 z = 0 a A n,k. z T = Ha T, Dacă se transmite printr-un canal de comunicaţie un cuvânt a pentru care sindromul corespunzător verifică relaţia z = ah T 0, înseamnă că s-a detectat faptul că în timpul transmisiei au apărut erori. Teorema 2.3 În Z 2, sindromul recepţionat este egal cu suma coloanelor din matricea de control, corespunzătoare poziţiilor perturbate. Demonstraţie: Fie a = (a 1, a 2,..., a n ) A n,k cuvântul-cod transmis. Fără a restrânge generalitatea, să presupunem că au intervenit trei erori, pe poziţiile i, j, k, fiind recepţionat vectorul a = (a 1,..., a i 1, a i, a i+1,..., a j 1, a j, a j+1,..., a k 1, a k, a k+1,..., a n ) unde a i a i, a j a j, a k a k. Avem 0 = ah T = a 1 (h 1 ) a i (h i ) a j (h j ) a k (h k ) a n (h n ) pentru că a A n,k, iar (h 1 ),..., (h n ) sunt coloanele matricii H. Avem, de asemenea a H T = a 1 (h 1 ) a i(h i ) a j(h j ) a k (h k) a n (h n ). Prin adunarea acestor două egalităţi se obţine: z = a H T = ah T +a H T = (0)+...+(0)+(h i )+...+(h j )+...+(h k )+(0)+...+(0) = (h i ) + (h j ) + (h k ). q.e.d.
22 2.4. PONDERE, DISTANŢĂ HAMMING Pondere, distanţă Hamming Pentru orice cuvânt x Z n q, se numeşte pondere numărul w(x) de componente nenule ale lui x. Evident, 0 w(x) n. Pentru două cuvinte x, y Z n q, se numeşte distanţa Hamming între ele, numărul d(x, y) = w(x y). Propoziţia 2.1 d este o distanţă definită pe Z n q. Demonstraţie: Se verifică uşor proprietăţile unei distanţe: 1. d(x, x) = 0; 2. d(x, y) = d(y, x); 3. d(x, y) + d(y, z) d(x, z). Ca o remarcă, deoarece x y Zq n, rezultă că distanţa Hamming dintre două cuvinte este ponderea unui cuvânt din Zq n. Cu ajutorul lui d, mulţimea Zq n se poate structura ca spaţiu metric. Definiţia 2.6 Se numeşte distanţă (Hamming) a codului liniar A n,k Zq n distanţă (Hamming) dintre elementele codului A n,k, adică cea mai mică d = min d(x, y) x,y A n,k,x y Folosind proprietatea anterioară şi faptul că 0 A n,k, rezultă că d = min w(x). x A n,k,x 0 Adesea valoarea d este introdusă printre parametrii generali ai codului, folosind notaţia de (n, k, d)-cod. Teorema 2.4 Fie H matricea de control a unui cod liniar A n,k. Codul are distanţa minimă d dacă şi numai dacă orice combinaţie liniară de d 1 coloane ale lui H este liniar independentă şi există cel puţin o combinaţie liniară de d coloane liniar dependente. Demonstraţie: Pentru orice cuvânt a, cu w(a) = s, ah T este o combinaţie liniară de s coloane ale lui H. Cum există un cuvânt - cod de pondere minimă egală cu distanţa d a codului, rezultă că avem cel puţin o combinaţie de d coloane liniar dependente ale lui H. O combinaţie de mai puţin de d coloane liniar dependente ar conduce la găsirea unui cuvânt - cod de pondere mai mică decât d, deci contradicţie. q.e.d. Definiţia 2.7 Pentru r > 0 şi x Z n q, definim sfera de rază r şi centru x ca S r (x) = {y d(x, y) r} [ ] d 1 Teorema 2.5 Fie A n,k Zq n un cod liniar cu distanţa Hamming d. Dacă r =, 2 atunci x, y A n,k [x y = S r (x) S r (y) = ].
23 24 CAPITOLUL 2. CODURI LINIARE Demonstraţie: Presupunem prin absurd că există z Zq n, z S r (x) S r (y). Atunci d(x, z) r, d(y, [ z) ] r deci, conform inegalităţii triunghiului, d(x, y) d(x, z) + d 1 d(y, z) 2r = 2 < d, ceea ce contrazice afirmaţia că d este distanţa minimă 2 a codului A n,k. q.e.d. Evident, în fiecare astfel de sferă există un singur cuvânt - cod: cel aflat în centrul sferei. Definiţia 2.8 Un cod liniar A n,k Z n q [ ] d 1 unde t =. 2 de distanţă minimă d este perfect dacă Z n q = x A n,k S r (x) 2.5 Detectare şi corectare de erori [ ] d 1 Fie A n,k Zq n un cod liniar de distanţă minimă d şi t =. Să presupunem că s-a 2 recepţionat cuvântul z Zq n ; va exista cel mult un cuvânt x A n,k astfel încât z S t (x) (în cazul codurilor perfecte, acest cuvânt există totdeauna). În cazul (ideal) când z = x, cuvântul a fost transmis fără erori (sau cu erori nedetectabile). Dacă z x, atunci mesajul a fost perturbat (şi avem o detectare de erori); în ipoteza că numărul de erori apărute este minim şi există un x A n,k astfel ca d(x, z) t, atunci z provine din cuvântul - cod x - şi se va transforma în acesta prin corectarea corespunzătoare a erorilor. În celelalte cazuri, z sau nu se poate corecta, sau se corectează greşit, în alt cuvânt cod. Această ultimă situaţie nu apare la codurile perfecte. Metoda de detectare şi corectare a erorilor descrisă mai sus se numeşte decodificarea cea mai probabilă. Pentru marea majoritate a codurilor liniare aceasta este singura metodă utilizată. Fie C Zq n un cod liniar; pentru orice cuvânt e Zq n formăm mulţimea V e = e + C = {e + x x C} V e este mulţimea cuvintelor w = e + x care pot fi recepţionate la transmiterea cuvântului - cod x, atunci când a acţionat un vector - eroare e. e va fi numit eroare - tip. Se verifică imediat că V e este subspaţiu liniar al lui Z n q (a se vedea Observaţia 2.1). În particular, C = 0 + C = V 0. Propoziţia 2.2 Pentru orice a V e, V a = V e. Demonstraţie: Din a V e, rezultă că există x C cu a = e + x. Deoarece x + C = C (evident, C fiind subspaţiu liniar), avem V a = a + C = e + x + C = e + C = V e. q.e.d.
24 2.5. DETECTARE ŞI CORECTARE DE ERORI 25 Vom utiliza această propoziţie pentru definirea unei tehnici generale de decodificare. Dacă vrem să detectăm o anumită eroare - tip e care modifică cuvintele din C în cuvinte ale subspaţiului V e, atunci vor fi mai uşor de depistat cuvintele din V e cu ponderea minimă. Pentru fiecare V e se alege un cuvânt numit reprezentantul lui V e ; acesta este un element cu cea mai mică pondere nenulă din V e. Se construieşte următorul tablou (numit tablou standard): 1. Pe prima linie se scriu cuvintele - cod, începând cu 0 (reprezentantul lui C = V 0 ); 2. Pe prima coloană se scriu reprezentanţii 0, e 1, e 2,...; 3. Pe linia cu reprezentantul e i, sub cuvântul cod x j se scrie cuvântul e i + x j ( mod q). ( Exemplul 2.8 Fie matricea generatoare G = Z2 2 = {00, 01, 10, 11} în A 4,2 = {0000, 1001, 0111, 1110}. Calculul mulţimilor V e conduce la ) peste Z 2. Ea va codifica V 0000 = V 1001 = V 0111 = V 1110 V 1000 = V 0001 = V 0110 = V 1111 V 0100 = V 1101 = V 0011 = V 1010 V 0010 = V 1011 = V 0101 = V 1100 Alegem ca reprezentanţi pe 0000, 1000 (se poate şi 0001), 0100, Tabloul standard va fi: Pentru destinatar, acest tablou este ca un dicţionar care se utilizează astfel: cuvântul primit a se decodifică în cuvântul - cod din capul coloanei pe care se află a. De exemplu, dacă se recepţionează 1101, el se va decodifica în Evident, cuvintele de pe prima coloană se decodifică în ele însele (sunt cuvinte - cod şi nu au fost perturbate de nici o eroare). Pentru orice cod liniar, un dicţionar complet de tipul celui de mai sus constituie cea mai simplă metodă de decodificare. Problema apare atunci când într-o mulţime V e sunt mai multe cuvinte de pondere minimă. Atunci tabela va decodifica corect numai eroarea - tip aleasă ca reprezentant. Astfel, revenind la Exemplul 2.8, cuvântul recepţionat 1111 se decodifică în 0111 (considerând că a fost alterat primul caracter). Dacă se ia însă drept reprezentant pe linia a doua 0001 în loc de 1000, a doua linie din tabloul standard este
25 26 CAPITOLUL 2. CODURI LINIARE Atunci, 1111 se decodifică în 1110 (considerînd ultimul caracter ca fiind cel alterat de canalul de transmisie). Care este cuvântul - cod corect transmis? Acest lucru nu poate fi decis. Singurul lucru care poate fi făcut este să se aleagă drept reprezentanţi erorile - tip cele mai probabile. Pentru un (n, k) - cod peste Z q, un dicţionar complet constă din toate cele q n cuvinte posibile, lucru destul de dificil deoarece în practică codurile sunt destul de lungi (n 100). De aceea este utilizată o altă manieră de lucru care reduce mult mărimea tabloului standard. Fie H matricea de control a unui (n, k) - cod liniar A n,k ; putem considera (Corolarul 2.1) că liniile lui H sunt vectori liniar independenţi. Teorema 2.6 Pentru orice e Z n q, toate cuvintele din V e au acelaşi sindrom. Demonstraţie: Fie v A n,k arbitrar şi w = e + v. Avem s = wh T = (e + v)h T = eh T + vh T = eh T + 0 = eh T. Deci toate cuvintele din V e au sindromul egal cu sindromul lui e. q.e.d. Invers, pentru fiecare sindrom deci pentru fiecare cuvânt s de lungime n k, se poate determina un vector - eroare e având sindromul s. Mai mult, s va fi ales astfel încât să aibă pondere minimă (conform decodificării cele mai probabile). Pentru aceasta, se rezolvă sistemul de ecuaţii liniare He T = s T, care are soluţie, deoarece liniile lui H sunt liniar independente. Din mulţimea soluţiilor alegem una de pondere minimă, cu ajutorul căreia construim mulţimea V e a tuturor cuvintelor de sindrom s. Pe baza celor de mai sus, se poate folosi următoarea procedură de decodificare: 1. La recepţionarea unui cuvânt w, se calculează sindromul s: s T = Hw T. 2. Se află eroarea - tip e cu sindromul s. 3. Se consideră cuvântul - cod corect ca fiind v = w e. În acest fel, nu mai este necesar să se reţină tot tabloul standard; este suficient să se ştie doar reprezentanţii subspaţiilor V e şi sindromurile corespunzătoare. Exemplul 2.9 Reluând codul definit în Exemplul 2.8, el are ca matrice de control H = ( Calculând sindromurile reprezentanţilor, se ajunge la tabloul: )
26 2.5. DETECTARE ŞI CORECTARE DE ERORI 27 Sindrom Reprezentant care reprezintă o reducere cu 50% a datelor stocate (comparativ cu tabloul standard). De exemplu, la recepţionarea cuvântului 1101, se calculează sindromul ( ) 1 ( ) = 1 1 Reprezentantul sindromului 11 este Efectuând operaţia = = 1001 (în Z 2 scăderea este de fapt adunare) se ajunge la cuvântul transmis, anume Exemplul 2.10 Să considerăm codul liniar A 5,3 peste Z 3 definit de matricea de control ( ) H = Sindromurile sunt cuvinte de lungime 2 peste Z 3, deci în total nouă cuvinte. Lista sindromurilor şi a reprezentanţilor este: Sindrom Reprezentant De remarcat că un tablou standard pentru acest cod are dimensiunea 9 27 şi conţine 243 cuvinte; volumul de date s-a redus deci cu 92%. Să presupunem că s-a trimis cuvântul cod şi s-a recepţionat Sindromul este deci e = 00010; decodificarea este ( ) = ( 1 2 v = w e = = Decodificarea a fost corectă deoarece eroarea - tip apărută a fost una din cele selectate prin reprezentanţi. )
27 28 CAPITOLUL 2. CODURI LINIARE 2.6 Exerciţii 2.1 Să se construiască coduri liniare care să transforme cuvântul (a 1, a 2,..., a n ) Z n q în: 1. (a 1, a 1, a 1, a 2, a 2, a 2,..., a n, a n, a n ); 2. (a 1, b 1, a 2, b 2,..., a n, b n ) unde b 1 = a 1, b 2 = a 1 + a 2, b n = a a n ; 3. (a 1, 2a n, 3a 2, 4a n 1,...). 2.2 Un cod liniar peste Z 5 are următoarea matrice generatoare: G = Să se afle matricea de control. 2.3 Aceeaşi problemă pentru Z Determinaţi dacă următorul cod liniar binar este sistematic sau nu: G = Dacă nu, găsiţi un cod sistematic echivalent. 2.5 Găsiţi matricea generatoare a unui cod liniar binar care are matricea de control: H = Se dă matricea de control H = a unui cod liniar binar. Să se decodifice mesajele , Descrieţi dualul (6, 3) - codului binar descris de ecuaţiile: x 1 = x 4, x 2 = x 5, x 3 = x Fie A un cod liniar binar obţinut din toate sumele posibile ale cuvintelor , ,
28 2.6. EXERCIŢII Aflaţi o matrice de control a codului. 2. Aflaţi un tablou standard şi decodificaţi Demonstraţi că codul liniar binar descris de ecuaţiile x 3 = x 1 + x 2, x 4 = x 1, x 5 = x 1 + x 2 corectează o eroare. Construiţi tabloul standard Construiţi o tabelă de sindromuri de decodificare pentru: 1. Codul cu repetiţie de lungime 7; 2. Codul din Exerciţiul 2.7; 3. Codul peste Z 3 cu matricea generatoare: G = Fie un cod liniar A n,k Zq n şi tabela de sindromuri de decodificare corespunzătoare. Definim o operaţie de decodificare φ : Zq n A n,k cu proprietatea: v A n,k, e reprezentant din tabelă, φ(v + e) = v. (φ corectează erorile - tip din tabela standard). Să se arate că atunci φ nu corectează nici o altă eroare - tip: dacă e nu este un reprezentant din tabelă, atunci există v A n,k cu φ(v + e) v. (Altfel spus, decodificarea cu sindromuri este optimală).
29 30 CAPITOLUL 2. CODURI LINIARE
30 Capitolul 3 Coduri liniare - II 3.1 Capacităţi de detectare şi corectare a erorilor După cum am văzut pâ nă acum, un cod liniar este un spaţiu liniar, codul dual este complementul său ortogonal etc. Ceea ce interesează aici este depistarea unor coduri cu proprietăţi deosebite în detectarea şi corectarea erorilor. Aceste proprietăt i sunt legate în special de distanţa minimă a codului. Vom prezenta pentru început câteva rezultate legate de diverse margini relativ la distanţă, numărul de simboluri de control, informaţie etc. Teorema 3.1 Un cod liniar A n,k Zq n are distanţa minimă d dacă şi numai dacă poate detecta orice combinaţie de maxim d 1 erori. Demonstraţie: Dacă se transmite un cuvânt a A n,k şi apar t (0 t < d) erori, se va recepţiona cuvântul a + e Z n q cu w(e) = t. Deoarece d(a, a + e) = t, rezultă a + e A n,k, deci se detectează eroare. Afirmaţia reciprocă este evidentă. q.e.d. Teorema 3.2 Un cod liniar A n,k Zq n are distanţa minimă d dacă şi numai dacă poate [ ] d 1 corecta orice combinaţie de t erori. 2 Demonstraţie: Fie t un număr întreg pozitiv; să presupunem că d 2t şi vom arăta că există erori - tip de pondere t (numite şi pachete de t erori independente) care nu pot fi corectate de codul A n,k. Aceasta [ ] va duce la concluzia că d 2t + 1, adică A n,k poate corecta orice pachet de d 1 t erori. 2 Fie a, b A n,k cu d(a, b) = d şi i 1, i 2,..., i d toţi indicii în care a diferă de b. Alegând d 2 t d + 1, avem d 2t (t astfel ales este minim). 2 Să presupunem că se trimite a şi se recepţionează cuvântul a = (a 1, a 2,..., a n) unde a i (= b i ) dacă i i 1, i 2,..., i d, a i = b i dacă i = i 1, i 3,..., a i dacă i = i 2, i 4,... 31
31 32 CAPITOLUL 3. CODURI LINIARE - II [ ] [ ] d + 1 d Atunci, evident d(a, a ) = = t şi d(a, b) = t = d(a, a). Aceasta va duce 2 2 la decodificarea lui a în b - incorect. Să presupunem acum d 2t + 1. Atunci codul A n,k poate corecta orice pachet de t erori. Pentru a arăta aceasta, să presupunem că se trimite un cuvânt - cod a şi se primeşte un cuvânt a cu d(a, a ) t. Pentru orice cuvânt - cod b (deci cu d(a, b) d 2t + 1) avem, conform inegalităţii triunghiului: d(a, a ) + d(a, b) d(a, b) 2t + 1 de unde rezultă d(a, b) 2t + 1 d(a, a ) 2t + 1 t = t + 1 > d(a, a). Deci, în ipoteza celei mai probabile decodificări, a se va decodifica în a. q.e.d. Teorema 3.3 Distanţa minimă a unui (n, k) - cod liniar verifică relaţia d n k + 1. Demonstraţie: Vom separa demonstraţia în două părţi: A: Fie A n,k un cod sistematic. Atunci primele k simboluri din orice cuvânt - cod pot fi alese arbitrar (ele formează mesajul de informaţie, un element arbitrar din Zq k ). Fie v A n,k cuvântul de forma v = v k+1 v k+2... v n. Evident, 0 < w(v) n k + 1. Cum d este cea mai mică pondere a unui cuvânt - cod nenul, rezultă inegalitatea cerută. B: Fie A n,k un cod liniar arbitrar şi A n,k codul liniar sistematic echivalent. Se observă că cele două coduri au aceiaşi parametri n, k, d. Folosind acum A, inegalitatea se obţine din nou. q.e.d. Teorema 3.4 În orice cod liniar A n,k Z n q d nqk 1 (q 1) q k 1 avem (marginea Plotkin) Demonstraţie: Să considerăm elementele din A n,k aşezate ca linii ale unui tablou. Se obţine un tablou cu q k linii şi n coloane. Fiecare componentă nenulă din Z q apare pe fiecare coloană în q k 1 linii. Atunci, suma ponderilor tuturor cuvintelor - cod este egală cu nq k 1 (q 1) deoarece fiecare componentă nenulă apare de q k 1 ori în fiecare coloană şi avem q 1 componente nenule distribuite pe n coloane. Distanţa minimă a codului nu poate să depăşească ponderea medie a cuvintelor codului, adică d nqk 1 (q 1) q k 1 deoarece în A n,k sunt q k 1 cuvinte nenule. q.e.d. Teorema 3.5 Fie A n,k un cod liniar peste Z q care corectează orice combinaţie de maxim t erori. Într-un asemenea cod sunt necesare cel puţin n k log q [1 + C 1 n(q 1) + C 2 n(q 1) C t n(q 1) t ] poziţii de control (marginea Hamming).
32 3.1. CAPACITĂŢI DE DETECTARE ŞI CORECTARE A ERORILOR 33 Demonstraţie: Pentru ca A n,k să corecteze orice combinaţie de cel mult t erori, este necesar ca fiecare astfel de eroare - tip să fie un reprezentant în tabloul standard; deci să fie caracterizată printr-un sindrom distinct. Sunt q n k sindromuri distincte, deci acesta este numărul maxim de erori care pot fi corectate de cod. Din cele q n k sindromuri, 1 trebuie să fie pentru 0 erori, C 1 n(q 1) pentru erori - tip simple (cuvinte e cu o singură componentă nenulă), C 2 n(q 1) 2 pentru erori duble etc. Deci, este necesar ca Apoi se logaritmează. q.e.d. Teorema 3.6 Dacă q n k 1 + C 1 n(q 1) + C 2 n(q 1) C t n(q 1) t. n k log q [1 + C 1 n 1(q 1) + C 2 n 1(q 1) C d 2 n 1(q 1) d 2 ] atunci există un cod liniar A n,k Z n q cu distanţa minimă d (marginea Varşamov - Gilbert). Demonstraţie: Pentru ca să existe un cod liniar A n,k peste Z q cu distanţa minimă d este suficient (Teorema 2.4) ca orice coloană din matricea de control H n k,n să nu fie combinaţie liniară a altor d 2 coloane, în acest fel ne-existând nici o combinaţie liniară între d 1 coloane ale lui H. Această condiţie este echivalentă cu q n k 1 C 1 n 1(q 1) + C 2 n 1(q 1) C d 2 n 1(q 1) d 2. Aici, q n k 1 reprezintă numărul total de coloane distincte nenule care pot apare în matricea H. Semnificaţia termenilor din membrul drept este evidentă; astfel, de exemplu C 2 n 1(q 1) 2 reprezintă numărul combinaţiilor liniare cu coeficienţi nenuli a două din cele n 1 coloane etc. Apoi se logaritmează. q.e.d. Fie A n,k Zq n un cod liniar pentru care d 2t + 1 (deci cu capacitatea de a corecta orice combinaţie de maxim t erori independente). Reamintim că în prelegerea precedentă am definit pentru orice x A n,k sfera centrată în x prin S t (x) = {y Z n q d(x, y) t}. Mai introducem şi suprafaţa (scoarţa) acestei sfere, definită: A t (x) = {y Z n q d(x, y) = t}. Vom nota numărul de elemente ale fiecăreia din cele două mulţimi prin S t = S t (x), A t = A t (x) (datorită proprietăţii de omogenitate a spaţiilor liniare, valorile S t şi A t sunt aceleaşi pentru orice x Zq n ).
Definiţia 1.1 Fiind date mulţimile A (alfabetul sursă) şi B (alfabetul cod), o codificare
Prelegerea 1 Codificare şi decodificare 1.1 Codificare Definiţia 1.1 Fiind date mulţimile A (alfabetul sursă) şi B (alfabetul cod), o codificare este o aplicaţie injectivă K : A B. Elementele mulţimii
Διαβάστε περισσότεραMetode iterative pentru probleme neliniare - contractii
Metode iterative pentru probleme neliniare - contractii Problemele neliniare sunt in general rezolvate prin metode iterative si analiza convergentei acestor metode este o problema importanta. 1 Contractii
Διαβάστε περισσότεραEsalonul Redus pe Linii (ERL). Subspatii.
Seminarul 1 Esalonul Redus pe Linii (ERL). Subspatii. 1.1 Breviar teoretic 1.1.1 Esalonul Redus pe Linii (ERL) Definitia 1. O matrice A L R mxn este in forma de Esalon Redus pe Linii (ERL), daca indeplineste
Διαβάστε περισσότεραCurs 10 Funcţii reale de mai multe variabile reale. Limite şi continuitate.
Curs 10 Funcţii reale de mai multe variabile reale. Limite şi continuitate. Facultatea de Hidrotehnică Universitatea Tehnică "Gh. Asachi" Iaşi 2014 Fie p, q N. Fie funcţia f : D R p R q. Avem următoarele
Διαβάστε περισσότεραCurs 14 Funcţii implicite. Facultatea de Hidrotehnică Universitatea Tehnică "Gh. Asachi"
Curs 14 Funcţii implicite Facultatea de Hidrotehnică Universitatea Tehnică "Gh. Asachi" Iaşi 2014 Fie F : D R 2 R o funcţie de două variabile şi fie ecuaţia F (x, y) = 0. (1) Problemă În ce condiţii ecuaţia
Διαβάστε περισσότεραCurs 4 Serii de numere reale
Curs 4 Serii de numere reale Facultatea de Hidrotehnică Universitatea Tehnică "Gh. Asachi" Iaşi 2014 Criteriul rădăcinii sau Criteriul lui Cauchy Teoremă (Criteriul rădăcinii) Fie x n o serie cu termeni
Διαβάστε περισσότεραAsupra unei inegalităţi date la barajul OBMJ 2006
Asupra unei inegalităţi date la barajul OBMJ 006 Mircea Lascu şi Cezar Lupu La cel de-al cincilea baraj de Juniori din data de 0 mai 006 a fost dată următoarea inegalitate: Fie x, y, z trei numere reale
Διαβάστε περισσότεραSpatii liniare. Exemple Subspaţiu liniar Acoperire (înfăşurătoare) liniară. Mulţime infinită liniar independentă
Noţiunea de spaţiu liniar 1 Noţiunea de spaţiu liniar Exemple Subspaţiu liniar Acoperire (înfăşurătoare) liniară 2 Mulţime infinită liniar independentă 3 Schimbarea coordonatelor unui vector la o schimbare
Διαβάστε περισσότεραCurs 1 Şiruri de numere reale
Bibliografie G. Chiorescu, Analiză matematică. Teorie şi probleme. Calcul diferenţial, Editura PIM, Iaşi, 2006. R. Luca-Tudorache, Analiză matematică, Editura Tehnopress, Iaşi, 2005. M. Nicolescu, N. Roşculeţ,
Διαβάστε περισσότεραV.7. Condiţii necesare de optimalitate cazul funcţiilor diferenţiabile
Metode de Optimizare Curs V.7. Condiţii necesare de optimalitate cazul funcţiilor diferenţiabile Propoziţie 7. (Fritz-John). Fie X o submulţime deschisă a lui R n, f:x R o funcţie de clasă C şi ϕ = (ϕ,ϕ
Διαβάστε περισσότεραCriptosisteme cu cheie publică III
Criptosisteme cu cheie publică III Anul II Aprilie 2017 Problema rucsacului ( knapsack problem ) Considerăm un număr natural V > 0 şi o mulţime finită de numere naturale pozitive {v 0, v 1,..., v k 1 }.
Διαβάστε περισσότεραSisteme diferenţiale liniare de ordinul 1
1 Metoda eliminării 2 Cazul valorilor proprii reale Cazul valorilor proprii nereale 3 Catedra de Matematică 2011 Forma generală a unui sistem liniar Considerăm sistemul y 1 (x) = a 11y 1 (x) + a 12 y 2
Διαβάστε περισσότερα1.3 Baza a unui spaţiu vectorial. Dimensiune
.3 Baza a unui spaţiu vectorial. Dimensiune Definiţia.3. Se numeşte bază a spaţiului vectorial V o familie de vectori B care îndeplineşte condiţiile de mai jos: a) B este liniar independentă; b) B este
Διαβάστε περισσότεραriptografie şi Securitate
riptografie şi Securitate - Prelegerea 12 - Scheme de criptare CCA sigure Adela Georgescu, Ruxandra F. Olimid Facultatea de Matematică şi Informatică Universitatea din Bucureşti Cuprins 1. Schemă de criptare
Διαβάστε περισσότερα(a) se numeşte derivata parţială a funcţiei f în raport cu variabila x i în punctul a.
Definiţie Spunem că: i) funcţia f are derivată parţială în punctul a în raport cu variabila i dacă funcţia de o variabilă ( ) are derivată în punctul a în sens obişnuit (ca funcţie reală de o variabilă
Διαβάστε περισσότεραDISTANŢA DINTRE DOUĂ DREPTE NECOPLANARE
DISTANŢA DINTRE DOUĂ DREPTE NECOPLANARE ABSTRACT. Materialul prezintă o modalitate de a afla distanţa dintre două drepte necoplanare folosind volumul tetraedrului. Lecţia se adresează clasei a VIII-a Data:
Διαβάστε περισσότερα5. FUNCŢII IMPLICITE. EXTREME CONDIŢIONATE.
5 Eerciţii reolvate 5 UNCŢII IMPLICITE EXTREME CONDIŢIONATE Eerciţiul 5 Să se determine şi dacă () este o funcţie definită implicit de ecuaţia ( + ) ( + ) + Soluţie ie ( ) ( + ) ( + ) + ( )R Evident este
Διαβάστε περισσότεραPlanul determinat de normală şi un punct Ecuaţia generală Plane paralele Unghi diedru Planul determinat de 3 puncte necoliniare
1 Planul în spaţiu Ecuaţia generală Plane paralele Unghi diedru 2 Ecuaţia generală Plane paralele Unghi diedru Fie reperul R(O, i, j, k ) în spaţiu. Numim normala a unui plan, un vector perpendicular pe
Διαβάστε περισσότεραSERII NUMERICE. Definiţia 3.1. Fie (a n ) n n0 (n 0 IN) un şir de numere reale şi (s n ) n n0
SERII NUMERICE Definiţia 3.1. Fie ( ) n n0 (n 0 IN) un şir de numere reale şi (s n ) n n0 şirul definit prin: s n0 = 0, s n0 +1 = 0 + 0 +1, s n0 +2 = 0 + 0 +1 + 0 +2,.......................................
Διαβάστε περισσότεραLectia VI Structura de spatiu an E 3. Dreapta si planul ca subspatii ane
Subspatii ane Lectia VI Structura de spatiu an E 3. Dreapta si planul ca subspatii ane Oana Constantinescu Oana Constantinescu Lectia VI Subspatii ane Table of Contents 1 Structura de spatiu an E 3 2 Subspatii
Διαβάστε περισσότεραCurs 2 Şiruri de numere reale
Curs 2 Şiruri de numere reale Facultatea de Hidrotehnică Universitatea Tehnică "Gh. Asachi" Iaşi 2014 Convergenţă şi mărginire Teoremă Orice şir convergent este mărginit. Demonstraţie Fie (x n ) n 0 un
Διαβάστε περισσότερα2 Transformări liniare între spaţii finit dimensionale
Transformări 1 Noţiunea de transformare liniară Proprietăţi. Operaţii Nucleul şi imagine Rangul şi defectul unei transformări 2 Matricea unei transformări Relaţia dintre rang şi defect Schimbarea matricei
Διαβάστε περισσότεραa n (ζ z 0 ) n. n=1 se numeste partea principala iar seria a n (z z 0 ) n se numeste partea
Serii Laurent Definitie. Se numeste serie Laurent o serie de forma Seria n= (z z 0 ) n regulata (tayloriana) = (z z n= 0 ) + n se numeste partea principala iar seria se numeste partea Sa presupunem ca,
Διαβάστε περισσότεραCURS 11: ALGEBRĂ Spaţii liniare euclidiene. Produs scalar real. Spaţiu euclidian. Produs scalar complex. Spaţiu unitar. Noţiunea de normă.
Sala: 2103 Decembrie 2014 Conf. univ. dr.: Dragoş-Pătru Covei CURS 11: ALGEBRĂ Specializarea: C.E., I.E., S.P.E. Nota: Acest curs nu a fost supus unui proces riguros de recenzare pentru a fi oficial publicat.
Διαβάστε περισσότεραLucrare. Varianta aprilie I 1 Definiţi noţiunile de număr prim şi număr ireductibil. Soluţie. Vezi Curs 6 Definiţiile 1 şi 2. sau p b.
Lucrare Soluţii 28 aprilie 2015 Varianta 1 I 1 Definiţi noţiunile de număr prim şi număr ireductibil. Soluţie. Vezi Curs 6 Definiţiile 1 şi 2 Definiţie. Numărul întreg p se numeşte număr prim dacă p 0,
Διαβάστε περισσότεραFunctii definitie, proprietati, grafic, functii elementare A. Definitii, proprietatile functiilor X) functia f 1
Functii definitie proprietati grafic functii elementare A. Definitii proprietatile functiilor. Fiind date doua multimi X si Y spunem ca am definit o functie (aplicatie) pe X cu valori in Y daca fiecarui
Διαβάστε περισσότεραMatrice. Determinanti. Sisteme liniare
Matrice 1 Matrice Adunarea matricelor Înmulţirea cu scalar. Produsul 2 Proprietăţi ale determinanţilor Rangul unei matrice 3 neomogene omogene Metoda lui Gauss (Metoda eliminării) Notiunea de matrice Matrice
Διαβάστε περισσότεραMARCAREA REZISTOARELOR
1.2. MARCAREA REZISTOARELOR 1.2.1 MARCARE DIRECTĂ PRIN COD ALFANUMERIC. Acest cod este format din una sau mai multe cifre şi o literă. Litera poate fi plasată după grupul de cifre (situaţie în care valoarea
Διαβάστε περισσότεραFunctii definitie, proprietati, grafic, functii elementare A. Definitii, proprietatile functiilor
Functii definitie, proprietati, grafic, functii elementare A. Definitii, proprietatile functiilor. Fiind date doua multimi si spunem ca am definit o functie (aplicatie) pe cu valori in daca fiecarui element
Διαβάστε περισσότεραR R, f ( x) = x 7x+ 6. Determinați distanța dintre punctele de. B=, unde x și y sunt numere reale.
5p Determinați primul termen al progresiei geometrice ( b n ) n, știind că b 5 = 48 și b 8 = 84 5p Se consideră funcția f : intersecție a graficului funcției f cu aa O R R, f ( ) = 7+ 6 Determinați distanța
Διαβάστε περισσότεραSeminar 5 Analiza stabilității sistemelor liniare
Seminar 5 Analiza stabilității sistemelor liniare Noțiuni teoretice Criteriul Hurwitz de analiză a stabilității sistemelor liniare În cazul sistemelor liniare, stabilitatea este o condiție de localizare
Διαβάστε περισσότεραIntegrala nedefinită (primitive)
nedefinita nedefinită (primitive) nedefinita 2 nedefinita februarie 20 nedefinita.tabelul primitivelor Definiţia Fie f : J R, J R un interval. Funcţia F : J R se numeşte primitivă sau antiderivată a funcţiei
Διαβάστε περισσότεραIII. Serii absolut convergente. Serii semiconvergente. ii) semiconvergentă dacă este convergentă iar seria modulelor divergentă.
III. Serii absolut convergente. Serii semiconvergente. Definiţie. O serie a n se numeşte: i) absolut convergentă dacă seria modulelor a n este convergentă; ii) semiconvergentă dacă este convergentă iar
Διαβάστε περισσότεραVectori liberi Produs scalar Produs vectorial Produsul mixt. 1 Vectori liberi. 2 Produs scalar. 3 Produs vectorial. 4 Produsul mixt.
liberi 1 liberi 2 3 4 Segment orientat liberi Fie S spaţiul geometric tridimensional cu axiomele lui Euclid. Orice pereche de puncte din S, notată (A, B) se numeşte segment orientat. Dacă A B, atunci direcţia
Διαβάστε περισσότεραOrice izometrie f : (X, d 1 ) (Y, d 2 ) este un homeomorfism. (Y = f(x)).
Teoremă. (Y = f(x)). Orice izometrie f : (X, d 1 ) (Y, d 2 ) este un homeomorfism Demonstraţie. f este continuă pe X: x 0 X, S Y (f(x 0 ), ε), S X (x 0, ε) aşa ca f(s X (x 0, ε)) = S Y (f(x 0 ), ε) : y
Διαβάστε περισσότεραCURS XI XII SINTEZĂ. 1 Algebra vectorială a vectorilor liberi
Lect. dr. Facultatea de Electronică, Telecomunicaţii şi Tehnologia Informaţiei Algebră, Semestrul I, Lector dr. Lucian MATICIUC http://math.etti.tuiasi.ro/maticiuc/ CURS XI XII SINTEZĂ 1 Algebra vectorială
Διαβάστε περισσότερα1. Sisteme de ecuaţii liniare Definiţia 1.1. Fie K un corp comutativ. 1) Prin sistem de m ecuaţii liniare cu n necunoscute X 1,...
1. Sisteme de ecuaţii liniare Definiţia 1.1. Fie K un corp comutativ. 1) Prin sistem de m ecuaţii liniare cu n necunoscute X 1,..., X n şi coeficienţi în K se înţelege un ansamblu de egalităţi formale
Διαβάστε περισσότεραSEMINAR 14. Funcţii de mai multe variabile (continuare) ( = 1 z(x,y) x = 0. x = f. x + f. y = f. = x. = 1 y. y = x ( y = = 0
Facultatea de Hidrotehnică, Geodezie şi Ingineria Mediului Matematici Superioare, Semestrul I, Lector dr. Lucian MATICIUC SEMINAR 4 Funcţii de mai multe variabile continuare). Să se arate că funcţia z,
Διαβάστε περισσότεραDefiniţia generală Cazul 1. Elipsa şi hiperbola Cercul Cazul 2. Parabola Reprezentari parametrice ale conicelor Tangente la conice
1 Conice pe ecuaţii reduse 2 Conice pe ecuaţii reduse Definiţie Numim conica locul geometric al punctelor din plan pentru care raportul distantelor la un punct fix F şi la o dreaptă fixă (D) este o constantă
Διαβάστε περισσότεραMetode de interpolare bazate pe diferenţe divizate
Metode de interpolare bazate pe diferenţe divizate Radu Trîmbiţaş 4 octombrie 2005 1 Forma Newton a polinomului de interpolare Lagrange Algoritmul nostru se bazează pe forma Newton a polinomului de interpolare
Διαβάστε περισσότεραIII. Reprezentarea informaţiei în sistemele de calcul
Metode Numerice Curs 3 III. Reprezentarea informaţiei în sistemele de calcul III.1. Reprezentarea internă a numerelor întregi III. 1.1. Reprezentarea internă a numerelor întregi fără semn (pozitive) Reprezentarea
Διαβάστε περισσότεραCOLEGIUL NATIONAL CONSTANTIN CARABELLA TARGOVISTE. CONCURSUL JUDETEAN DE MATEMATICA CEZAR IVANESCU Editia a VI-a 26 februarie 2005.
SUBIECTUL Editia a VI-a 6 februarie 005 CLASA a V-a Fie A = x N 005 x 007 si B = y N y 003 005 3 3 a) Specificati cel mai mic element al multimii A si cel mai mare element al multimii B. b)stabiliti care
Διαβάστε περισσότεραDemonstraţie: Să considerăm polinomul {f(x)} asociat cuvântului - cod: f(x) = h(1) + h(α)x h(α n 1 )X n 1 = a 0 (1 + X + X
Prelegerea 13 Coduri Reed - Solomon 13.1 Definirea codurilor RS O clasă foarte interesantă de coduri ciclice a fost definită în 1960 de Reed şi Solomon. Numite în articolul iniţial coduri polinomiale,
Διαβάστε περισσότεραSeminariile Capitolul X. Integrale Curbilinii: Serii Laurent şi Teorema Reziduurilor
Facultatea de Matematică Calcul Integral şi Elemente de Analiă Complexă, Semestrul I Lector dr. Lucian MATICIUC Seminariile 9 20 Capitolul X. Integrale Curbilinii: Serii Laurent şi Teorema Reiduurilor.
Διαβάστε περισσότεραCapitolul 4 PROPRIETĂŢI TOPOLOGICE ŞI DE NUMĂRARE ALE LUI R. 4.1 Proprietăţi topologice ale lui R Puncte de acumulare
Capitolul 4 PROPRIETĂŢI TOPOLOGICE ŞI DE NUMĂRARE ALE LUI R În cele ce urmează, vom studia unele proprietăţi ale mulţimilor din R. Astfel, vom caracteriza locul" unui punct în cadrul unei mulţimi (în limba
Διαβάστε περισσότερα1.4 Schimbarea bazei unui spaţiu vectorial
Algebră liniară, geometrie analitică şi diferenţială. Schimbarea bazei unui spaţiu vectorial După cum s-a văzut deja, într-un spaţiu vectorial V avem mai multe baze, iar un vector x V va avea câte un sistem
Διαβάστε περισσότεραCursul Măsuri reale. D.Rusu, Teoria măsurii şi integrala Lebesgue 15
MĂSURI RELE Cursul 13 15 Măsuri reale Fie (,, µ) un spaţiu cu măsură completă şi f : R o funcţie -măsurabilă. Cum am văzut în Teorema 11.29, dacă f are integrală pe, atunci funcţia de mulţime ν : R, ν()
Διαβάστε περισσότεραCâmp de probabilitate II
1 Sistem complet de evenimente 2 Schema lui Poisson Schema lui Bernoulli (a bilei revenite) Schema hipergeometrică (a bilei neîntoarsă) 3 4 Sistem complet de evenimente Definiţia 1.1 O familie de evenimente
Διαβάστε περισσότεραO generalizare a unei probleme de algebră dată la Olimpiada de Matematică, faza judeţeană, 2013
O generalizare a unei probleme de algebră dată la Olimpiada de Matematică, faza judeţeană, 2013 Marius Tărnăuceanu 1 Aprilie 2013 Abstract În această lucrare vom prezenta un rezultat ce extinde Problema
Διαβάστε περισσότεραSubiecte Clasa a VIII-a
Subiecte lasa a VIII-a (40 de intrebari) Puteti folosi spatiile goale ca ciorna. Nu este de ajuns sa alegeti raspunsul corect pe brosura de subiecte, ele trebuie completate pe foaia de raspuns in dreptul
Διαβάστε περισσότεραSubiecte Clasa a VII-a
lasa a VII Lumina Math Intrebari Subiecte lasa a VII-a (40 de intrebari) Puteti folosi spatiile goale ca ciorna. Nu este de ajuns sa alegeti raspunsul corect pe brosura de subiecte, ele trebuie completate
Διαβάστε περισσότεραCURS 5 Spaţii liniare. Spaţiul liniar R n
CURS 5 Spaţii liniare. Spaţiul liniar R n A. Arusoaie arusoaie.andreea@gmail.com andreea.arusoaie@info.uaic.ro Facultatea de Informatică, Universitatea Alexandru Ioan Cuza din Iaşi 30 Octombrie 2017 Structura
Διαβάστε περισσότερα2.1 Sfera. (EGS) ecuaţie care poartă denumirea de ecuaţia generală asferei. (EGS) reprezintă osferă cu centrul în punctul. 2 + p 2
.1 Sfera Definitia 1.1 Se numeşte sferă mulţimea tuturor punctelor din spaţiu pentru care distanţa la u punct fi numit centrul sferei este egalăcuunnumăr numit raza sferei. Fie centrul sferei C (a, b,
Διαβάστε περισσότεραExamen AG. Student:... Grupa: ianuarie 2016
16-17 ianuarie 2016 Problema 1. Se consideră graful G = pk n (p, n N, p 2, n 3). Unul din vârfurile lui G se uneşte cu câte un vârf din fiecare graf complet care nu-l conţine, obţinându-se un graf conex
Διαβάστε περισσότεραAnaliza în curent continuu a schemelor electronice Eugenie Posdărăscu - DCE SEM 1 electronica.geniu.ro
Analiza în curent continuu a schemelor electronice Eugenie Posdărăscu - DCE SEM Seminar S ANALA ÎN CUENT CONTNUU A SCHEMELO ELECTONCE S. ntroducere Pentru a analiza în curent continuu o schemă electronică,
Διαβάστε περισσότεραSpaţii vectoriale. Definiţia 1.1. Fie (K, +, ) un corp şi (V, +) un grup abelian.
Spaţii vectoriale 1. Spaţii vectoriale. Definiţii şi proprietăţi de bază În continuare prin corp vom înţelege corp comutativ. Dacă nu se precizează altceva, se vor folosi notaţiile standard pentru elementele
Διαβάστε περισσότεραPrincipiul Inductiei Matematice.
Principiul Inductiei Matematice. Principiul inductiei matematice constituie un mijloc important de demonstratie in matematica a propozitiilor (afirmatiilor) ce depind de argument natural. Metoda inductiei
Διαβάστε περισσότεραEDITURA PARALELA 45 MATEMATICĂ DE EXCELENŢĂ. Clasa a X-a Ediţia a II-a, revizuită. pentru concursuri, olimpiade şi centre de excelenţă
Coordonatori DANA HEUBERGER NICOLAE MUŞUROIA Nicolae Muşuroia Gheorghe Boroica Vasile Pop Dana Heuberger Florin Bojor MATEMATICĂ DE EXCELENŢĂ pentru concursuri, olimpiade şi centre de excelenţă Clasa a
Διαβάστε περισσότεραFuncţii Ciudate. Beniamin Bogoşel
Funcţii Ciudate Beniamin Bogoşel Scopul acestui articol este construcţia unor funcţii neobişnuite din punct de vedere intuitiv, care au anumite proprietăţi interesante. Construcţia acestor funcţii se face
Διαβάστε περισσότεραNicolae Cotfas ELEMENTE DE EDITURA UNIVERSITĂŢII DIN BUCUREŞTI
Nicolae Cotfas ELEMENTE DE ALGEBRĂ LINIARĂ EDITURA UNIVERSITĂŢII DIN BUCUREŞTI Introducere Pe parcursul acestei cărţi ne propunem să prezentăm într-un mod cât mai accesibil noţiuni si rezultate de bază
Διαβάστε περισσότεραEcuatii exponentiale. Ecuatia ce contine variabila necunoscuta la exponentul puterii se numeste ecuatie exponentiala. a x = b, (1)
Ecuatii exponentiale Ecuatia ce contine variabila necunoscuta la exponentul puterii se numeste ecuatie exponentiala. Cea mai simpla ecuatie exponentiala este de forma a x = b, () unde a >, a. Afirmatia.
Διαβάστε περισσότεραriptografie şi Securitate
riptografie şi Securitate - Prelegerea 21.2 - Sistemul de criptare ElGamal Adela Georgescu, Ruxandra F. Olimid Facultatea de Matematică şi Informatică Universitatea din Bucureşti Cuprins 1. Scurt istoric
Διαβάστε περισσότεραCapitolul 4. Integrale improprii Integrale cu limite de integrare infinite
Capitolul 4 Integrale improprii 7-8 În cadrul studiului integrabilităţii iemann a unei funcţii s-au evidenţiat douăcondiţii esenţiale:. funcţia :[ ] este definită peintervalînchis şi mărginit (interval
Διαβάστε περισσότεραToate subiectele sunt obligatorii. Timpul de lucru efectiv este de 3 ore. Se acordă din oficiu 10 puncte. SUBIECTUL I.
Modelul 4 Se acordă din oficiu puncte.. Fie numărul complex z = i. Calculaţi (z ) 25. 2. Dacă x şi x 2 sunt rădăcinile ecuaţiei x 2 9x+8 =, atunci să se calculeze x2 +x2 2 x x 2. 3. Rezolvaţi în mulţimea
Διαβάστε περισσότεραExamen AG. Student:... Grupa:... ianuarie 2011
Problema 1. Pentru ce valori ale lui n,m N (n,m 1) graful K n,m este eulerian? Problema 2. Să se construiască o funcţie care să recunoască un graf P 3 -free. La intrare aceasta va primi un graf G = ({1,...,n},E)
Διαβάστε περισσότεραConcurs MATE-INFO UBB, 1 aprilie 2017 Proba scrisă la MATEMATICĂ
UNIVERSITATEA BABEŞ-BOLYAI CLUJ-NAPOCA FACULTATEA DE MATEMATICĂ ŞI INFORMATICĂ Concurs MATE-INFO UBB, aprilie 7 Proba scrisă la MATEMATICĂ SUBIECTUL I (3 puncte) ) (5 puncte) Fie matricele A = 3 4 9 8
Διαβάστε περισσότεραCONCURS DE ADMITERE, 17 iulie 2017 Proba scrisă la MATEMATICĂ
UNIVERSITATEA BABEŞ-BOLYAI CLUJ-NAPOCA FACULTATEA DE MATEMATICĂ ŞI INFORMATICĂ CONCURS DE ADMITERE, 7 iulie 207 Proba scrisă la MATEMATICĂ SUBIECTUL I (30 puncte) ) (0 puncte) Să se arate că oricare ar
Διαβάστε περισσότεραAplicaţii ale principiului I al termodinamicii la gazul ideal
Aplicaţii ale principiului I al termodinamicii la gazul ideal Principiul I al termodinamicii exprimă legea conservării şi energiei dintr-o formă în alta şi se exprimă prin relaţia: ΔUQ-L, unde: ΔU-variaţia
Διαβάστε περισσότεραCriterii de comutativitate a grupurilor
Criterii de comutativitate a grupurilor Marius Tărnăuceanu 10.03.2017 Abstract În această lucrare vom prezenta mai multe condiţii suficiente de comutativitate a grupurilor. MSC (2010): 20A05, 20K99. Key
Διαβάστε περισσότεραAlgebră liniară CAPITOLUL 1
Algebră liniară CAPITOLUL SPAŢII VECTORIALE FINIT DIMENSIONALE. Definiţia spaţiilor vectoriale Pentru a introduce noţiunea de spaţiu vectorial avem nevoie de noţiunea de corp comutativ de caracteristică
Διαβάστε περισσότεραSeminar Algebra. det(a λi 3 ) = 0
Rezolvari ale unor probleme propuse "Matematica const în a dovedi ceea ce este evident în cel mai puµin evident mod." George Polya P/Seminar Valori si vectori proprii : Solutie: ( ) a) A = Valorile proprii:
Διαβάστε περισσότεραf(x) = l 0. Atunci f are local semnul lui l, adică, U 0 V(x 0 ) astfel încât sgnf(x) = sgnl, x U 0 D\{x 0 }. < f(x) < l +
Semnul local al unei funcţii care are limită. Propoziţie. Fie f : D (, d) R, x 0 D. Presupunem că lim x x 0 f(x) = l 0. Atunci f are local semnul lui l, adică, U 0 V(x 0 ) astfel încât sgnf(x) = sgnl,
Διαβάστε περισσότεραProgresii aritmetice si geometrice. Progresia aritmetica.
Progresii aritmetice si geometrice Progresia aritmetica. Definitia 1. Sirul numeric (a n ) n N se numeste progresie aritmetica, daca exista un numar real d, numit ratia progresia, astfel incat a n+1 a
Διαβάστε περισσότεραAcesta este capitolul 2 Noţiuni de teoria informaţiei al ediţiei electronică
Acesta este capitolul 2 Noţiuni de teoria informaţiei al ediţiei electronică a cărţii Reţele de calculatoare, publicată la Casa Cărţii de Ştiinţă, în 2008, ISBN: 978-973-133-377-9. Drepturile de autor
Διαβάστε περισσότεραSă se arate că n este număr par. Dan Nedeianu
Primul test de selecție pentru juniori I. Să se determine numerele prime p, q, r cu proprietatea că 1 p + 1 q + 1 r 1. Fie ABCD un patrulater convex cu m( BCD) = 10, m( CBA) = 45, m( CBD) = 15 și m( CAB)
Διαβάστε περισσότεραSubiecte Clasa a V-a
(40 de intrebari) Puteti folosi spatiile goale ca ciorna. Nu este de ajuns sa alegeti raspunsul corect pe brosura de subiecte, ele trebuie completate pe foaia de raspuns in dreptul numarului intrebarii
Διαβάστε περισσότερα5.4. MULTIPLEXOARE A 0 A 1 A 2
5.4. MULTIPLEXOARE Multiplexoarele (MUX) sunt circuite logice combinaţionale cu m intrări şi o singură ieşire, care permit transferul datelor de la una din intrări spre ieşirea unică. Selecţia intrării
Διαβάστε περισσότεραFunctii Breviar teoretic 8 ianuarie ianuarie 2011
Functii Breviar teoretic 8 ianuarie 011 15 ianuarie 011 I Fie I, interval si f : I 1) a) functia f este (strict) crescatoare pe I daca x, y I, x< y ( f( x) < f( y)), f( x) f( y) b) functia f este (strict)
Διαβάστε περισσότεραAl cincilea baraj de selecţie pentru OBMJ Bucureşti, 28 mai 2015
Societatea de Ştiinţe Matematice din România Ministerul Educaţiei Naţionale Al cincilea baraj de selecţie pentru OBMJ Bucureşti, 28 mai 2015 Problema 1. Arătaţi că numărul 1 se poate reprezenta ca suma
Διαβάστε περισσότεραAurelian Claudiu VOLF. Coduri. Universitatea Al. I Cuza Iaşi
Aurelian Claudiu VOLF Coduri Universitatea Al. I Cuza Iaşi 2011 Cuprins Cuprins... 2 Prefaţă... 3 Unele notaţii... 5 I. Coduri corectoare de erori... 6 II. Coduri liniare... 14 III. Corpuri finite... 26
Διαβάστε περισσότεραSisteme liniare - metode directe
Sisteme liniare - metode directe Radu T. Trîmbiţaş 27 martie 2016 1 Eliminare gaussiană Să considerăm sistemul liniar cu n ecuaţii şi n necunoscute Ax = b, (1) unde A K n n, b K n 1 sunt date, iar x K
Διαβάστε περισσότεραLaborator 11. Mulţimi Julia. Temă
Laborator 11 Mulţimi Julia. Temă 1. Clasa JuliaGreen. Să considerăm clasa JuliaGreen dată de exemplu la curs pentru metoda locului final şi să schimbăm numărul de iteraţii nriter = 100 în nriter = 101.
Διαβάστε περισσότερα, m ecuańii, n necunoscute;
Sisteme liniare NotaŃii: a ij coeficienńi, i necunoscute, b i termeni liberi, i0{1,,..., n}, j0{1,,..., m}; a11 1 + a1 +... + a1 nn = b1 a11 + a +... + an n = b (S), m ecuańii, n necunoscute;... am11 +
Διαβάστε περισσότεραLucian Maticiuc CURS I II. 1 Matrice şi determinanţi. Sisteme de ecuaţii liniare. 1.1 Matrice şi determinanţi
Facultatea de Electronică, Telecomunicaţii şi Tehnologia Informaţiei Algebră, Semestrul I, Lector dr Lucian MATICIUC http://mathettituiasiro/maticiuc/ CURS I II Matrice şi determinanţi Sisteme de ecuaţii
Διαβάστε περισσότερα2. Circuite logice 2.4. Decodoare. Multiplexoare. Copyright Paul GASNER
2. Circuite logice 2.4. Decodoare. Multiplexoare Copyright Paul GASNER Definiţii Un decodor pe n bits are n intrări şi 2 n ieşiri; cele n intrări reprezintă un număr binar care determină în mod unic care
Διαβάστε περισσότεραConice - Câteva proprietǎţi elementare
Conice - Câteva proprietǎţi elementare lect.dr. Mihai Chiş Facultatea de Matematicǎ şi Informaticǎ Universitatea de Vest din Timişoara Viitori Olimpici ediţia a 5-a, etapa I, clasa a XII-a 1 Definiţii
Διαβάστε περισσότεραAlgebră liniară CAPITOLUL 3
Algebră liniară CAPITOLUL 3 TRANSFORĂRI LINIARE 3.. Definiţia transformării liniare Definiţia 3... Fie V şi W două spaţii vectoriale peste un corp comutativ K. O funcţie u: V W se numeşte transformare
Διαβάστε περισσότεραGeometrie computationala 2. Preliminarii geometrice
Platformă de e-learning și curriculă e-content pentru învățământul superior tehnic Geometrie computationala 2. Preliminarii geometrice Preliminarii geometrice Spatiu Euclidean: E d Spatiu de d-tupluri,
Διαβάστε περισσότερα8 Intervale de încredere
8 Intervale de încredere În cursul anterior am determinat diverse estimări ˆ ale parametrului necunoscut al densităţii unei populaţii, folosind o selecţie 1 a acestei populaţii. În practică, valoarea calculată
Διαβάστε περισσότεραRădăcini primitive modulo n
Universitatea Bucureşti Facultatea de Matematică şi Informatică Rădăcini primitive modulo n Îndrumător ştiinţific: Prof. Dr. Victor Alexandru 2010 Rezumat Tema lucrarii este studiul radacinilor primitive.
Διαβάστε περισσότερα4. CIRCUITE LOGICE ELEMENTRE 4.. CIRCUITE LOGICE CU COMPONENTE DISCRETE 4.. PORŢI LOGICE ELEMENTRE CU COMPONENTE PSIVE Componente electronice pasive sunt componente care nu au capacitatea de a amplifica
Διαβάστε περισσότερα5.5. REZOLVAREA CIRCUITELOR CU TRANZISTOARE BIPOLARE
5.5. A CIRCUITELOR CU TRANZISTOARE BIPOLARE PROBLEMA 1. În circuitul din figura 5.54 se cunosc valorile: μa a. Valoarea intensității curentului de colector I C. b. Valoarea tensiunii bază-emitor U BE.
Διαβάστε περισσότεραBARAJ DE JUNIORI,,Euclid Cipru, 28 mai 2012 (barajul 3)
BARAJ DE JUNIORI,,Euclid Cipru, 8 mi 0 (brjul ) Problem Arătţi că dcă, b, c sunt numere rele cre verifică + b + c =, tunci re loc ineglitte xy + yz + zx Problem Fie şi b numere nturle nenule Dcă numărul
Διαβάστε περισσότεραz a + c 0 + c 1 (z a)
1 Serii Laurent (continuare) Teorema 1.1 Fie D C un domeniu, a D şi f : D \ {a} C o funcţie olomorfă. Punctul a este pol multiplu de ordin p al lui f dacă şi numai dacă dezvoltarea în serie Laurent a funcţiei
Διαβάστε περισσότεραCum folosim cazuri particulare în rezolvarea unor probleme
Cum folosim cazuri particulare în rezolvarea unor probleme GHEORGHE ECKSTEIN 1 Atunci când întâlnim o problemă pe care nu ştim s-o abordăm, adesea este bine să considerăm cazuri particulare ale acesteia.
Διαβάστε περισσότεραa. 11 % b. 12 % c. 13 % d. 14 %
1. Un motor termic funcţionează după ciclul termodinamic reprezentat în sistemul de coordonate V-T în figura alăturată. Motorul termic utilizează ca substanţă de lucru un mol de gaz ideal având exponentul
Διαβάστε περισσότεραPrincipiul incluziunii si excluziunii. Generarea şi ordonarea permutărilor. Principiul porumbeilor. Pri
Generarea şi ordonarea permutărilor. Principiul porumbeilor. Principiul incluziunii si excluziunii Recapitulare din cursul trecut Presupunem că A este o mulţime cu n elemente. Recapitulare din cursul trecut
Διαβάστε περισσότεραEcuatii trigonometrice
Ecuatii trigonometrice Ecuatiile ce contin necunoscute sub semnul functiilor trigonometrice se numesc ecuatii trigonometrice. Cele mai simple ecuatii trigonometrice sunt ecuatiile de tipul sin x = a, cos
Διαβάστε περισσότεραCONCURSUL DE MATEMATICĂ APLICATĂ ADOLF HAIMOVICI, 2017 ETAPA LOCALĂ, HUNEDOARA Clasa a IX-a profil științe ale naturii, tehnologic, servicii
Clasa a IX-a 1 x 1 a) Demonstrați inegalitatea 1, x (0, 1) x x b) Demonstrați că, dacă a 1, a,, a n (0, 1) astfel încât a 1 +a + +a n = 1, atunci: a +a 3 + +a n a1 +a 3 + +a n a1 +a + +a n 1 + + + < 1
Διαβάστε περισσότερα2. Sisteme de forţe concurente...1 Cuprins...1 Introducere Aspecte teoretice Aplicaţii rezolvate...3
SEMINAR 2 SISTEME DE FRŢE CNCURENTE CUPRINS 2. Sisteme de forţe concurente...1 Cuprins...1 Introducere...1 2.1. Aspecte teoretice...2 2.2. Aplicaţii rezolvate...3 2. Sisteme de forţe concurente În acest
Διαβάστε περισσότερα