Diszkrét matematika 2.C szakirány

Hasonló dokumentumok
Diszkrét matematika 2.C szakirány

Nagy Gábor compalg.inf.elte.hu/ nagy

Nagy Gábor compalg.inf.elte.hu/ nagy

Nagy Gábor compalg.inf.elte.hu/ nagy

Diszkrét matematika 2.

Nagy Gábor compalg.inf.elte.hu/ nagy

Diszkrét matematika 2.C szakirány

Alapfogalmak a Diszkrét matematika II. tárgyból

A továbbiakban Y = {0, 1}, azaz minden szóhoz egy bináris sorozatot rendelünk

Diszkrét matematika 2.C szakirány

Diszkrét matematika 2. estis képzés

Diszkrét matematika 2.C szakirány

Diszkrét matematika 2. estis képzés

Diszkrét matematika 2. estis képzés

Diszkrét matematika alapfogalmak

Diszkrét matematika 2.C szakirány

Diszkrét matematika 2. estis képzés

Diszkrét matematika 2.C szakirány

Diszkrét matematika 2. estis képzés

Diszkrét matematika 1. estis képzés

Nagy Gábor compalg.inf.elte.hu/ nagy

Nagy Gábor compalg.inf.elte.hu/ nagy ősz

Nagy Gábor compalg.inf.elte.hu/ nagy ősz

Diszkrét matematika 2.C szakirány

Nagy Gábor compalg.inf.elte.hu/ nagy ősz

Diszkrét matematika 2 (C) vizsgaanyag, 2012 tavasz

Nagy Gábor compalg.inf.elte.hu/ nagy

Nagy Gábor compalg.inf.elte.hu/ nagy ősz

Diszkrét matematika 1. estis képzés

Nagy Gábor compalg.inf.elte.hu/ nagy ősz

Diszkrét matematika 2. estis képzés

Diszkrét matematika 2. estis képzés

Nagy Gábor compalg.inf.elte.hu/ nagy ősz

Diszkrét matematika 2.C szakirány

Nagy Gábor compalg.inf.elte.hu/ nagy

Diszkrét matematika I.

dolás, felbontható kód Prefix kód Blokk kódk Kódfa

Nagy Gábor compalg.inf.elte.hu/ nagy

Nagy Gábor compalg.inf.elte.hu/ nagy ősz

Nagy Gábor compalg.inf.elte.hu/ nagy

H=0 H=1. Legyen m pozitív egészre {a 1, a 2,, a m } különböző üzenetek halmaza. Ha az a i üzenetet k i -szer fordul elő az adásban,

Kódoláselmélet. (Humann kód, hibajavító kódok, véges testek konstrukciója. Reed-Solomon kód és dekódolása.)

Nagy Gábor compalg.inf.elte.hu/ nagy ősz

Nagy Gábor compalg.inf.elte.hu/ nagy ősz

1. Gráfok alapfogalmai

Nagy Gábor compalg.inf.elte.hu/ nagy ősz

Algoritmuselmélet 6. előadás

Diszkrét matematika gyakorlat 1. ZH október 10. α csoport

Nagy Gábor compalg.inf.elte.hu/ nagy

Diszkrét matematika 1. estis képzés. Komputeralgebra Tanszék ősz

Hibajavító kódok május 31. Hibajavító kódok 1. 1

Informatikai Rendszerek Alapjai

Diszkrét matematika 1.

Diszkrét matematika 1. estis képzés

Nagy Gábor compalg.inf.elte.hu/ nagy ősz

Zárthelyi dolgozat feladatainak megoldása õsz

Diszkrét matematika 2.C szakirány

Az Informatika Elméleti Alapjai

Nagy Gábor compalg.inf.elte.hu/ nagy ősz

Diszkrét matematika I.

17. előadás: Vektorok a térben

Feladatok, amelyek gráfokkal oldhatók meg 1) A königsbergi hidak problémája (Euler-féle probléma) a

Nagy Gábor compalg.inf.elte.hu/ nagy ősz

Mohó algoritmusok. Példa:

Diszkrét matematika 2.

Diszkrét matematika II. feladatok

Diszkrét matematika II. feladatok

Hadamard-mátrixok Előadó: Hajnal Péter február 23.

Diszkrét matematika I.

Diszkrét matematika 2.

Diszkrét matematika 1.

Nagy Gábor compalg.inf.elte.hu/ nagy

Az Informatika Elméleti Alapjai

KÓDOLÁSTECHNIKA PZH december 18.

Gráfelmélet. I. Előadás jegyzet (2010.szeptember 9.) 1.A gráf fogalma

Nagy Gábor compalg.inf.elte.hu/ nagy ősz

Nagy Gábor compalg.inf.elte.hu/ nagy ősz

Nagy Gábor compalg.inf.elte.hu/ nagy ősz

Diszkrét Matematika MSc hallgatók számára 7. Előadás Párosítási tételek Előadó: Hajnal Péter Jegyzetelő: Kovácsházi Anna

Diszkrét Matematika 2 (C)

Permutációk véges halmazon (el adásvázlat, február 12.)

Vizsgatematika Bevezetés a matematikába II tárgyhoz tavasz esti tagozat

KOVÁCS BÉLA, MATEMATIKA I.

Az Informatika Elméleti Alapjai

Hibajavító kódolás (előadásvázlat, november 14.) Maróti Miklós

Oktatási Hivatal. 1 pont. A feltételek alapján felírhatók az. összevonás után az. 1 pont

Nagy Gábor compalg.inf.elte.hu/ nagy

Shannon és Huffman kód konstrukció tetszőleges. véges test felett

Bevezetés az algebrába 2 Lineáris algebra alkalmazásai

Bevezetés az algebrába 2

Alap fatranszformátorok II

Elemi matematika szakkör

Diszkrét matematika 1.

Diszkrét matematika 2.

5. A gráf, mint adatstruktúra Gráfelméleti bevezető

Diszkrét matematika I., 12. előadás Dr. Takách Géza NyME FMK Informatikai Intézet takach november 30.

Nagy Gábor compalg.inf.elte.hu/ nagy ősz

f(x) vagy f(x) a (x x 0 )-t használjuk. lim melyekre Mivel itt ɛ > 0 tetszőlegesen kicsi, így a a = 0, a = a, ami ellentmondás, bizonyítva

Algoritmuselmélet 18. előadás

Számelmélet. 1. Oszthatóság Prímszámok

Átírás:

Diszkrét matematika 2.C szakirány 207. tavasz. Diszkrét matematika 2.C szakirány 9. előadás Nagy Gábor nagygabr@gmail.com nagy@compalg.inf.elte.hu compalg.inf.elte.hu/ nagy Komputeralgebra Tanszék 207. tavasz

Kódolás Diszkrét matematika 2.C szakirány 207. tavasz 2. Betűnkénti kódolás Tétel (McMillan-egyenlőtlenség, NB) Legyen A = {a, a 2,..., a n } és B két ábécé, B elemeinek száma r 2, és ϕ : A B + injektív leképezés. Ha a ϕ által meghatározott betűnkénti kódolás felbontható, akkor l j = ϕ(a j ) jelöléssel n r l j. j= Tétel (McMillan-egyenlőtlenség,,megfordítása, NB) Az előző tétel jelöléseit használva, ha l, l 2,..., l n olyan pozitív egész számok, hogy n j= r l j, akkor van az A-nak a B elemeivel való olyan felbontható (sőt prefix) kódolása, hogy az a j betű kódjának hossza l j.

Kódolás Diszkrét matematika 2.C szakirány 207. tavasz 3. Betűnkénti kódolás Definíció Legyen A = {a, a 2,..., a n } a kódolandó ábécé, p, p 2,..., p n a betűk eloszlása, ϕ : A B + injektív leképezés, továbbá l j = ϕ(a j ). Ekkor l = n j= p jl j a kód átlagos szóhossza. Ha adott elemszámú ábécével és eloszlással egy felbontható betűnkénti kód átlagos szóhosszúsága minimális, akkor optimális kódnak nevezzük. Megjegyzés Az átlagos kódhossz valós szám, és valós számok halmazában nem feltétlenül van minimális elem (ld. { n n N}), ezért optimális kód létezése nem triviális.

Kódolás Diszkrét matematika 2.C szakirány 207. tavasz 4. Betűnkénti kódolás Álĺıtás Adott ábécé és eloszlás esetén létezik optimális kód. Bizonyítás Válasszunk egy tetszőleges felbontható kódot (Miért van ilyen?), ennek átlagos szóhosszúsága legyen l. Mivel p j l j > l esetén a kód nem lehet optimális (Miért?), ezért elég azokat a kódokat tekinteni, amelyekre l j l p j, ha j =, 2,..., n. Ilyen kód csak véges sok van, így van köztük minimális átlagos hosszúságú.

Kódolás Diszkrét matematika 2.C szakirány 207. tavasz 5. Betűnkénti kódolás Tétel (Shannon tétele zajmentes csatornára) Legyen A = {a, a 2,..., a n } a kódolandó ábécé, p, p 2,..., p n a betűk eloszlása, ϕ : A B + injektív leképezés, B elemeinek a száma r 2, továbbá l j = ϕ(a j ). Ha a ϕ által meghatározott betűnkénti kódolás felbontható, akkor H r (p, p 2,..., p n ) l. Bizonyítás = l H r (p, p 2,..., p n ) = n p j ( log r (r l j ) ) + j= n j= log r ( n j= n p j l j + j= ( p j log r p j r l j ) n p j log r p j = j= ) = n j= log r = 0 ( r l ) j p j log r p j

Kódolás Diszkrét matematika 2.C szakirány 207. tavasz 6. Betűnkénti kódolás Tétel (Shannon kód létezése) Az előző tétel jelöléseivel, ha n >, akkor van olyan prefix kód, amire l < H r (p, p 2,..., p n ) +. Bizonyítás Válasszunk olyan l, l 2,..., l n természetes számokat, amelyekre r l j p j < r l j +, ha j =, 2,..., n (Miért tudunk ilyeneket választani?). Ekkor n j= r l j n j= p j =, így a McMillan-egyenlőtlenség megfordítása miatt létezik prefix kód az adott l j hosszakkal. Mivel l j < log r p j (Miért?), ezért l = n p j l j < j= n p j ( log r p j ) = + H r (p, p 2,..., p n ). j=

Kódolás Diszkrét matematika 2.C szakirány 207. tavasz 7. Optimális kódkonstrukció: Huffman-kód Legyen {a, a 2,..., a n } az üzenetek halmaza, a hozzájuk tartozó eloszlás pedig {p, p 2,..., p n }, a kódábécé elemszáma r. Rendezzük relatív gyakoriság szerint csökkenő sorrendbe a betűket. Osszuk el maradékosan n 2-t r -gyel: n 2 = q(r ) + m 0 m < r, és legyen t = m + 2. Helyettesítsük az utolsó t betűt egy új betűvel, amihez az elhagyott betűk relatív gyakoriságainak összegét rendeljük, és az így kapott gyakoriságoknak megfelelően helyezzük el az új betűt a sorozatban. Ezek után ismételjük meg az előző redukciót, de most már minden lépésben r betűvel csökkentve a kódolandó halmazt, mígnem már csak r betű marad. Most a redukált ábécé legfeljebb r betűt tartalmaz, és ha volt redukció, akkor pontosan r-et. Ezeket a kódoló ábécé elemeivel kódoljuk, majd a redukciónak megfelelően visszafelé haladva, az összevont betűk kódját az összevonásként kapott betű már meglévő kódjának a kódoló ábécé különböző betűivel való kiegészítésével kapjuk.

Kódolás Diszkrét matematika 2.C szakirány 207. tavasz 8. Példa Huffman-kódra Legyen A = {a, b,..., j}, a relatív gyakoriságok 0, 7; 0, 02; 0, 3; 0, 02; 0, 0; 0, 3; 0, 02; 0, 7; 0, 06; 0, 09, a kódoló ábécé pedig {0,, 2}. 0 2 = 4 (3 ) + 0, így t = 0 + 2 = 2. f 0,3 a 0,7 h 0,7 c 0,3 j 0,09 i 0,06 b 0,02 d 0,02 g e 0,02 0,0 } 0, 03 f 0,3 a 0,7 h 0,7 c 0,3 j 0,09 i 0,06 (g,e) b d 0,03 0,02 0,02 0, 07 f 0,3 a 0,7 h 0,7 c 0,3 j ((g,e),b,d) i 0,09 0,07 0,06 0, 22 f 0,3 (j,((g,e),b,d),i) 0,22 a 0,7 h 0,7 c 0,3 0, 47 (a,h,c) 0,47 f 0,3 (j,((g,e),b,d),i) 0,22

Kódolás Diszkrét matematika 2.C szakirány 207. tavasz 9. Példa Huffman-kódra folyt. (a,h,c) 0,47 f 0,3 (j,((g,e),b,d),i) 0,22 Kódolás: (a,h,c) 0 f (j,((g,e),b,d),i) 2 Entrópia:, 73. Átlagos szóhossz:, 79. a 00 h 0 c 02 j 20 ((g,e),b,d) 2 (g,e) 20 g 200 e 20 b 2 d 22 i 22

Kódolás Diszkrét matematika 2.C szakirány 207. tavasz 0. Betűnkénti kódolás Tétel (NB) A Huffman-kód optimális. Példa Shannon-kódra Az előző példában használt ábécét és eloszlást fogjuk használni. Rendezzük sorba az ábécét relatív gyakoriságok szerinti csökkenő sorrendben: f 0,3 a 0,7 h 0,7 c 0,3 j 0,09 i 0,06 b 0,02 d 0,02 g 0,02 e 0,0

Kódolás Diszkrét matematika 2.C szakirány 207. tavasz. Példa Shannon-kódra folyt. Határozzuk meg a szükséges szóhosszúságokat: 9 0, 3; 0, 7; 0, 3 < 3, ezért f, a, h és c kódhossza 2. 27 0, 09; 0, 06 < 9, ezért j és i kódhossza 3. 8 0, 02 < 27, ezért b, d és g kódhossza 4. 243 0, 0 < 8, ezért e kódhossza 5. Az f kódja 00, az a kódja 0, a h kódja 02, és ez utóbbihoz -et adva hármas alapú számrendszerben kapjuk c kódját, ami 0. Ehhez -et adva -et kapunk, de j kódjának hossza 3, ezért ezt még ki kell egészíteni jobbról egy 0-val, tehát j kódja 0. Hasonlóan folytatva megkapjuk a teljes kódot: f 00 a 0 h 02 c 0 j 0 i b 20 d 2 g 22 e 2000 Átlagos szóhossz: 2, 3 <, 73 +.

Kódolás Diszkrét matematika 2.C szakirány 207. tavasz 2. Betűnkénti kódolás Kódfa A betűnkénti kódolás szemléltethető egy címkézett irányított fával. Legyen ϕ : A B egy betűnkénti kódolás, és tekintsük rng(ϕ) prefixeinek halmazát. Ez a halmaz részbenrendezett a,,prefixe relációra. Vegyük ennek a Hasse-diagramját. Így egy irányított fát kapunk, aminek a gyökere az üres szó, és minden szó a hosszának megfelelő szinten van. A fa éleit címkézzük úgy B elemeivel, hogy ha β = αb valamely b B-re, akkor az α-ból β-ba vezető él címkéje legyen b. A kódfa csúcsait is megcímkézhetjük: az a A kódjának megfelelő csúcs címkéje legyen a A; azon csúcs címkéje, amely nincsen rng(ϕ)-ben, legyen,,üres. Megjegyzés Az előbbi konstrukció meg is fordítható. Tekintsünk egy véges, élcímkézett irányított fát, ahol az élcímkék halmaza B, az egy csúcsból kiinduló élek mind különböző címkéjűek, továbbá az A véges ábécének a csúcsokra való leképezését, amelynél minden levél előáll képként. Az a A betű kódja legyen az a szó, amelyet úgy kapunk, hogy a gyökértől az a-nak megfelelő csúcsig haladó irányított út mentén összeolvassuk az élek címkéit.

Kódolás Diszkrét matematika 2.C szakirány 207. tavasz 3. Kódfa Példa 0 2 0 2 f 0 2 a h c j 0 2 i 0 b d g e A Huffman-kódos példában szereplő kódhoz tartozó kódfa. ϕ(a) =00, ϕ(b) =2, ϕ(c) =02, ϕ(d) =22, ϕ(e) =20, ϕ(f ) =, ϕ(g) =200, ϕ(h) =0, ϕ(i) =22, ϕ(j) =20. A kódszavak prefixeinek halmaza: {λ,, 00, 0, 0, 02, 20, 2, 22, 2, 2, 22, 200, 20, 20}

Kódolás Diszkrét matematika 2.C szakirány 207. tavasz 4. Kódfa Példa 0 0 2 0 2 f a h c 0 2 0 j i 0 2 0 b d g 0 e A Shannon-kódos példában szereplő kódhoz tartozó kódfa. ϕ(a) =0, ϕ(b) =20, ϕ(c) =0, ϕ(d) =2, ϕ(e) =2000, ϕ(f ) =00, ϕ(g) =22, ϕ(h) =02, ϕ(i) =, ϕ(j) =0. A kódszavak prefixeinek halmaza: {0, 0, λ, 20, 2,,, 0, 2, 2000, 200, 20, 2, 00, 22, 02,, 0}

Kódolás Diszkrét matematika 2.C szakirány 207. tavasz 5. Hibakorlátozó kódolás Példa (ISBN (International Standard Book Number) kódolása) Legyen d, d 2,..., d n decimális számjegyek egy sorozata (n 0). Egészítsük ki a sorozatot egy n + -edik számjeggyel, amelynek értéke d n+ = n j d j mod, j= ha az nem 0, különben d n+ legyen X. Ha valamelyik számjegyet eĺırjuk, akkor az összefüggés nem teljesülhet: d n+ eĺırása esetén ez nyilvánvaló, j n-re d j helyett d j -t írva pedig az összeg j(d j d j )-vel nőtt, ami nem lehet -gyel osztható (Miért?). Azt is észrevesszük, ha j < n esetén d j -t és d j+ -et felcseréljük: az összeg jd j+ + (j + )d j jd j (j + )d j+ = d j d j+ -gyel nő, ami csak akkor lehet -gyel osztható, ha d j = d j+. Megjegyzés 2007 óta 3 jegyű. A személyi számnál is használják.

Kódolás Diszkrét matematika 2.C szakirány 207. tavasz 6. Hibakorlátozó kódolás Példa (Paritásbites kód) Egy n hosszú 0- sorozatot egészítsünk ki egy n + -edik bittel, ami legyen, ha a sorozatban páratlan sok -es van, különben pedig legyen 0. Ha egy bit megváltozik, akkor észleljük a hibát. Példa (Kétdimenziós paritásellenőrzés) b 0,0 b 0,j b 0,n b 0,n.......... b i,0 b i,j b i,n b i,n.......... b m,0 b m,j b m,n b m,n b m,0 b m,j b m,n b m,n Oszlopok és sorok végén paritásbit. Ha megváltozik egy bit, akkor a sor és az oszlop végén jelez az ellenőrző bit, ez alapján tudjuk javítani a hibát. Ha két bit változik meg, akkor észleljük a hibát, de nem tudjuk javítani.

Kódolás Diszkrét matematika 2.C szakirány 207. tavasz 7. Hibakorlátozó kódolás Definíció Egy kód t-hibajelző, ha minden olyan esetben jelez, ha az elküldött és megkapott szó legfeljebb t helyen tér el. Egy kód pontosan t-hibajelző, ha t-hibajelző, de van olyan t + -hiba, amit nem jelez. Példa ISBN - -hibajelző paritásbites kód - -hibajelző kétdimenziós paritásellenőrzés - 2-hibajelző Hiba javításának módjai ARQ (Automatic Retransmission Request) - újraküldés, FEC (Forward Error Correction) - javítható, pl.: kétdimenziós paritásell.

Kódolás Diszkrét matematika 2.C szakirány 207. tavasz 8. Hibakorlátozó kódolás Definíció Legyen A véges ábécé, továbbá u, v A n. Ekkor u és v Hamming-távolsága alatt az azonos pozícióban lévő különböző betűk számát értjük: d(u, v) = {i : i n u i v i }. Példa 0 0 0 0 = d(00,00)=4 A L M A A N N A = = d(alma,anna)=2