Professional Documents
Culture Documents
Infkod
Infkod
Gyrfi Lszl
Gyori Sndor
2002. november 29.
Vajda Istvn
Tartalomjegyzk
Elosz
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
9
10
13
21
28
30
35
39
48
54
.
.
.
.
.
.
.
.
.
.
.
.
61
62
70
88
90
94
99
106
110
115
119
137
146
3. Csatornakdols
149
3.1. Bayes-dnts . . . . . . . . . . . . . . . . . . . . . . . . . . . . 150
TARTALOMJEGYZK
3.2.
3.3.
3.4.
3.5.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
156
160
164
173
4. Hibajavt kdols
4.1. Kdolsi alapfogalmak . . . . . . . . . . . . .
4.2. Binris lineris kdok, binris Hamming-kd .
4.3. Vges test . . . . . . . . . . . . . . . . . . . .
4.4. Lineris kdok, nembinris Hamming-kd . . .
4.5. Vges test feletti polinomok . . . . . . . . . .
4.6. ReedSolomon-kd . . . . . . . . . . . . . . .
4.7. Aritmetika GF(pm )-ben . . . . . . . . . . . . .
4.8. Ciklikus kdok . . . . . . . . . . . . . . . . .
4.9. BCH-kd . . . . . . . . . . . . . . . . . . . .
4.10. Kdkombincik . . . . . . . . . . . . . . . .
4.11. Kdmdostsok . . . . . . . . . . . . . . . .
4.12. ReedSolomon-kdok dekdolsa . . . . . . .
4.13. ReedSolomon-kdok spektrlis tulajdonsgai .
4.14. A konvolcis kdols alapfogalmai . . . . . .
4.15. A konvolcis kdok Viterbi-dekdolsa . . . .
4.16. A Viterbi-dekdols bithibaarnya DMC-n . . .
4.17. Rekurzv konvolcis kdols . . . . . . . . .
4.18. Turb kdok . . . . . . . . . . . . . . . . . . .
4.19. CDMA . . . . . . . . . . . . . . . . . . . . .
4.20. Feladatok . . . . . . . . . . . . . . . . . . . .
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
177
178
184
193
197
199
203
208
212
226
230
236
237
243
250
263
265
269
274
281
297
5. Kriptogrfia
5.1. Alapfogalmak . . . . . . . . . . . .
5.2. A konvencionlis titkostk analzise
5.3. Nyilvnos kulcs titkosts . . . . .
5.4. RSA-algoritmus . . . . . . . . . . .
5.5. Kriptogrfiai protokollok . . . . . .
5.6. Feladatok . . . . . . . . . . . . . .
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
317
318
323
326
332
340
358
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
Irodalomjegyzk
365
Trgymutat
369
Elosz
Az informcielmlet a hrkzls matematikai elmlete. Szletst lnyegben
Claude Shannon [43] muvnek 1948-as megjelenshez kthetjk. Ez a munka
volt az elso, amely matematikai alapossggal trgyalta az adattmrts, a biztonsgos adattvitel s a titkosts problmit. Shannon adott eloszr kezelheto s
hasznos matematikai modelleket az informcis folyamatok lersra, mgpedig
gy, hogy az egyes problmk esetn tisztzta az elvi hatrokat, s tbbsgben
meg is konstrulta azokat a mdszereket, amelyek ezeket az elvi hatrokat aszimptotikusan elrik. Ugyanakkor napjainkban tmegesen terjedtek el az egyes adattmrto s hibakorltoz eljrsok, teht indokolt, hogy ezek alapveto elveit is
ttekintsk. Az 1. fejezetben ismertetjk a vesztesgmentes adattmrtst, mg
a 2. fejezetben a vesztesget (torztst) megengedo adattmrto (forrskdol)
eljrsokat trgyaljuk. A 3. fejezet tmja a csatornakdols.
A forrskdols elmletvel ellenttben a csatornakdols eredmnyei nem
konstruktvak, teht ma mg nem ismertek olyan kdolsidekdolsi eljrsok,
amelyek tetszoleges csatorna esetn a csatornakapacitst megkzeltenk. Ugyanakkor ismertek olyan algebrai hibavdo kdok, amelyek szmos gyakorlati problma megoldst segtik. A 80-as vektol alkalmazzk polgri clokra is a hibavdo kdokat, napjainkban a CD-ben hasznlt ReedSolomon-kd szinte minden
hztartsban megtallhat. A 4. fejezet sszefoglalja a hibajavt kdok alapjait.
Az 5. fejezet tmja a nyilvnos kulcs titkosts, teht az a problma, hogy
nyilvnos hlzaton hogyan biztosthat az adat- illetve hozzfrsvdelem.
Ez a tanknyv a Linder Lugosi [25] s a Gyrfi Vajda [22] jegyzet unijnak a kiegsztse azon tapasztalatok felhasznlsval, amelyeket a BME muszaki informatikusoknak tartott Informcielmlet s Kdelmlet trgyak oktatsa
sorn szereztnk az elmlt 10 vben.
E L OSZ
1. fejezet
Vltoz szhosszsg
forrskdols
Ebben a fejezetben bevezetjk a vesztesgmentes adattmrts fogalmt. Ennek clja az, hogy egy zenetet, amely egy vges halmaz (forrsbc) elemeibol
ll vges sorozat, egy msik vges halmaz (kdbc) elemeibol ll sorozattal
reprezentljunk gy, hogy ez a reprezentls a leheto legrvidebb (s belole az
zenet visszallthat) legyen. Ennek megfeleloen azt vizsgljuk, hogy az adattmrtsnek melyek az elvi hatrai, s ezeket a hatrokat hogyan kzelthetjk
meg. A legismertebb plda erre az, amikor a kdbc a f0; 1g halmaz, s egy
zenetet (pl. rott szveg, fjl) binris sorozatok formjban kdolunk trols, illetve tvitel cljbl. Az zenetet kibocst objektum az informciforrs
modellezsvel s vizsglatval az 1.6. szakasz foglalkozik (mivel valsznusgi
modelleket hasznlunk, ezrt az zenetek betui valsznusgi vltozk lesznek).
Clunk az, hogy az ehhez szksges matematikai appartust bevezessk. Megismerkednk az zenetek egy termszetesen add kritrium szerinti kdolsval
az egyrtelmuen dekdolhat kdolssal , mely ksobb vizsglataink kzppontjban ll majd. Bevezetjk a diszkrt valsznusgi vltoz entrpijt,
s megmutatjuk, hogy az entrpia milyen alapveto szerepet jtszik a kdolssal
kapcsolatban. Az elkvetkezokben mindig azt tartjuk szem elott, hogy az zenetek kdja minl rvidebb legyen, ezrt a kdok ltalunk vizsglt fo tulajdonsga
a tlagos kdszhossz lesz. A fejezetet az univerzlis forrskdolssal s annak
gyakorlati alkalmazsaival zrjuk.
A hrkzlsi rendszerek mukdst egzakt matematikai eszkzkkel fogjuk
vizsglni. Persze sokfle matematikai modellt llthatunk hrkzlsi feladatokra,
de kezdetben az egyik legegyszerubbet vlasztva jl kifejezhetjk a problma lnyegt. A hrkzls alapfeladata az, hogy valamely jelsorozatot (informcit)
10
forrs
- kdol
- dekdol
csatorna
- nyelo
kdol
- -
forrskdol
titkost
visszafejto
- csatornakdol
forrs- - dekdol
1.1. E GYRTELM U
11
i=1
j f (xi )j 1;
(1.1)
12
s j f (xi)j
!N
i=1
s
i1 =1
N Lmax
iN =1
Al s
l =1
ahol Lmax = max j f (xi )j; s Al jelli az sszes l hosszsg, N darab kdsz egy1in
sl
j f (xi )j
!N
N Lmax
i =1
vagyis
n
i=1
j f (xi )j
p p
N
Lmax :
(1.2)
s l 1
i
(1.3)
i=1
j f (xi)j = li
i = 1; : : : ; n:
w1 = 0;
wj =
sl
i=1
li
j = 2; : : : ; n:
1.2. TLAGOS
13
KDSZHOSSZ , ENTRPIA
(1.3) mindkt oldalt sln -nel szorozva, majd mindkt oldalbl 1-et levonva kapjuk,
hogy
n 1
wn =
sl
li
i=1
sl
1:
Hasonlkpp eljrva azt kapjuk minden j-re, hogy w j sl j 1. Ezek utn definiljuk f (x j )-t mint a w j szm s alap szmrendszerben felrt alakjt, amelynek
elejre annyi 0-t runk, hogy a hossza l j legyen. A kdszavak nyilvn klnbzok
lesznek mivel w j < wk , ha j < k. Most beltjuk, hogy az gy kapott kd prefix.
Tegyk fel ugyanis ennek az ellenkezojt, vagyis azt, hogy valamilyen j < k esetn f (jx j ) vghez
lk l j darab szmjegyet hozzadva megkapjuk f (xk )-t. Ekkor
k
w j = lwk kl j kvetkezne. (Az bx
jells az x vals szm als egsz rszt jelli).
s
Viszont
k 1
k 1
wk
l l
l l
= s j i = w j + s j i w j + 1;
s lk l j
i= j
i=1
s gy ellentmondsra jutottunk.
1.1. kvetkezmny. Az 1.1. s 1.2. lemmkat sszevetve levonhatjuk azt a fontos kvetkeztetst, hogy minden egyrtelmuen dekdolhat kdhoz ltezik vele
ekvivalens (azonos kdszhossz) prefix kd, teht nem vesztnk semmit, ha az
egyrtelmu dekdolhatsg helyett a specilisabb, s ezrt knnyebben kezelheto
prefix tulajdonsgot kveteljk meg.
=x
x 2 X:
H (X ) = E( log p(X )) =
i=1
sszeggel definiljuk.
14
M EGJEGYZS :
a) A log z jells a z pozitv szm kettes alap logaritmust jelenti. Mivel
az 1.3. definci megkvnja, a logaritmusfggvnnyel kapcsolatban a kvetkezo szmolsi szablyokat vezetjk be (a 0; b > 0):
0 log
0
a
= 0 log
a
0
= 0;
b log
b
0
= +;
b log
0
b
(E szablyok az adott pontban nem rtelmezett fggvnyek folytonos kiterjesztsei.) A defincibl kzvetlenl ltszik, hogy az entrpia nemnegatv.
Vegyk szre, hogy az entrpia rtke valjban nem fgg az X valsznusgi vltoz rtkeitol, csak az eloszlstl.
b) Az entrpia intuitv fogalmval kapcsolatban lsd az 1.6. ttel utni megjegyzst.
1.4. definci. Egy f kd tlagos kdszhosszn az
n
Ej f (X )j = p(xi )j f (xi)j
i=1
0:5 log0:5
0:3 log0:3
)y) h(x) + (1
)h(y);
(1.4)
s legyen Z egy valsznusgi vltoz, amely rtkeit az [a; b intervallumban veszi fel. Ekkor
h[E(Z ) E[h(Z ):
(1.5)
1.2. TLAGOS
15
KDSZHOSSZ , ENTRPIA
PfZ = E(Z )g = 1;
Teht rhatjuk,hogy
h(x) c[x
E(Z ) + h[E(Z ):
h(Z ) c[Z
E(Z ) + h[E(Z );
(1.6)
ahol mindkt oldal vrhat rtkt vve megkapjuk az elso lltst. Mivel szigoran konvex esetben (1.6)-ban egyenlosg csak x = E(Z ) esetben teljesl, a
msodik llts trivilisan addik.
1.2. kvetkezmny.
pi = 1
qi = 1
i=1
akkor
i =1
pi log pi
i=1
pi log qi
(1.7)
i=1
ai = a
i=1
bi = b
i=1
16
akkor
ai log ai a log a
bi
i =1
bi
ai =
B IZONYTS :
a) (1.7) ekvivalens azzal, hogy
n
pi log pi 0
qi
i=1
Mivel a h(x) = log x fggvny szigoran konvex az rtelmezsi tartomnyn (a msodik derivltja pozitv), gy felhasznlhatjuk a Jensen-egyenlotlensget a kvetkezokppen:
Legyen Y egy olyan valsznusgi vltoz, hogy
P Y
qi
pi
=
i = 1; : : : ; n:
pi ;
qi
pi log pi = E(
i=1
logY )
log pi
log E(Y ) =
i=1
qi
pi
= 0;
bi
ai log ai
i=1
b
ai log a
i =1
bi b
ai
a log ai a 0
=
=
i=1
ai log ai ai log a 0
i=1
bi
i=1
ai
bi
a = b,
vagyis az
ai
bi =
1.2. TLAGOS
17
KDSZHOSSZ , ENTRPIA
Ej f (X )j = p(xi )j f (xi )j
i=1
X ! Y kdra
H (X )
:
log s
(1.8)
p(xi) log s
j f (xi )j :
i=1
qi =
s j f (xi )j
s j f (x j )j
n
i = 1; : : : ; n;
j=1
H (X )
i=1
n
p(xi) log
i=1
s j f (xi )j
s j f (x j )j
n
j=1
n
i=1
n
p(xi) log s
s j f (xi )j
i=1
j f (xi )j ;
i=1
18
H (X )
+ 1:
log s
wi = p(xl );
w1 = 0;
i = 2; : : : ; n:
l =1
p(x j ) = w j+1
(1.9)
a msodik esetben
p(x j
de ekkor p(x j ) p(x j
1)
1) = w j
wj
<
s j f (x j )j+1 ;
1) logs;
>
j=1
p(x j )j f (x j )j
1 log s
j=1
logs p(xi ) + 1;
i = 1; : : : ; n
(1.10)
1.2. TLAGOS
19
KDSZHOSSZ , ENTRPIA
s l slog p x
s ( i)
i=1
i=1
p (x i ) = 1
i=1
p (x i ) l i
i=1
<
i=1
i =1
H (X )
+ 1:
log s
x1 ; : : : ; xm 2 X;
=
=
Xm
x2
X
x1 2
xm 2
Xm
x2
20
x1 2
xm 2
x1 2
xm 2
H (Xi )
(1.11)
i =1
(1.12)
kvetkezik.
A betunknti tlagos kdszhossz defincija rtelemszeruen mdosul a blokkkdols esetben: a kdszhossz vrhat rtkt el kell osztani az egy blokkot
alkot forrsbetuk szmval, vagyis a betunknti tlagos kdszhosszon a kvetkezo mennyisget rtjk:
1
1
p(x)j f (x)j
Ej f (X)j =
m
m x2
Xm
rtelemszeruen az 1.2. ttel lltsa blokk-kdols esetn is igaz:
Ej f (X)j
H (X)
;
log s
1.3. O PTIMLIS
KDOK , BINRIS
21
H UFFMAN - KD
Xm ! Y prefix kd,
Xm
x2
mH (X )
+ 1;
log s
a) j f (x1 )j j f (x2 )j j f (xn 1 )j j f (xn )j, vagyis nagyobb valsznusgekhez kisebb kdszhosszak tartoznak.
b) j f (xn 1 )j = j f (xn )j, vagyis a kt legkisebb valsznusgu forrsbetuhz tartoz kdsz egyenlo hossz.
22
c) Az f (xn
1)
B IZONYTS :
a) Tegyk fel, hogy p(xk ) > p(x j ) s j f (xk )j > j f (x j )j. Ekkor x j s xk kdjt
felcserlve egy j f kdot vezethetnk be, amelyre
n
p(xi)j f (xi)j
i=1
=
=
p(xi)j f (xi )j =
i=1
= ( p(xk )
p(xk )j f (x j )j
p(x j )j f (xk )j =
1.5. ttel. Tegyk most fel, hogy az 1.4. ttel felttelei teljeslnek, s hogy a
f p(x1); p(x2); : : : ; p(xn 1) + p(xn)g valsznusgeloszlshoz ismernk egy g optimlis binris prefix kdot. (Az xn 1 s xn forrsbetuket sszevonjuk egy xn 1
szimblumba; p(xn 1 ) = p(xn 1 ) + p(xn ) ). Ekkor az eredeti f p(x1 ); p(x2 ); : : : ;
p(xn 1 ); p(xn )g eloszls egy optimlis f prefix kdjt kapjuk, ha a g(xn 1 ) kdszt egy nullval, illetve egy egyessel kiegsztjk (a tbbi kdszt pedig vltozatlanul hagyjuk).
B IZONYTS :
kapjuk, hogy
= Lg + p(xn 1 ) + p(xn ):
1.3. O PTIMLIS
KDOK , BINRIS
23
H UFFMAN - KD
= Lf
p (x n
1)
p(xn ) < L f
p(xn
1)
p(xn ) = Lg
1:
0:4
0:3
0:15
0:1 !
0:05 %
3:
4:
0:4
0:4
0:4
0:3
0:3 ! 0:6
0:15 ! 0:3 %
0:15 %
3:
[0
[1
&
0:4
0:3
0:3
2:
[0
[10
[11
&
0 :4
0 :3
0:15
0:15
1:
[0
[10
[110
[111
!
&
0:4
0:3
0:15
0:1
0:05
[0
[10
[110
[1110
[1111
Teht f (x1 ) = 0; f (x2 ) = 10; f (x3 ) = 110; f (x4 ) = 1110; f (x5 ) = 1111.
24
i=1
1
N
1
N
i=1
i=1
1
N
i=1
EN j f (Z )j
p N (x j ) j f ( x j ) j =
j =1
n
1 N
IfZi =x j g j f (x j )j =
j=1 N i=1
1 N n
IfZi =x j g j f (x j )j =
N i
=1 j=1
1 N
j f (Zi)j
N i
=1
(A gyakorlatban magt a kdol fggvnyt is le kell rni, t kell vinni a dekdolhoz, s ez a fejlc gy a fentinl nagyobb tlagos kdszhosszat eredmnyez. Az aszimptotikus vizsglat sorn azonban ettol a konstans kltsgtol
eltekinthetnk.)
A Huffman-kdols fenti algoritmust csak kt lpsben tudjuk vgrehajtani.
Eloszr meghatrozzuk a forrsbetuk relatv gyakorisgt, ami az elozoek rtelmben megegyezik a valsznusgekkel, majd ennek felhasznlsval elvgezzk
a tnyleges kdolst. Nem mindig engedheto meg azonban olyan nagy mrtku
ksleltets, hogy csak az sszes bemeneti adat megrkezse utn kezdnk hozz
a kimenet elolltshoz, msrszt a ktmenetes beolvass akkor is lasstja az algoritmust (br ktsgkvl optimlis kdot eredmnyez), ha a bemenet mr rendelkezsre ll. A gyakorlatban ezrt sokszor rdemes egymenetes algoritmust
hasznlni. gy az optimalits rovsra idot takarthatunk meg. Egy forrsbetut
az elozo forrsbetuk elofordulsai alapjn kdolunk, s ezzel egytt lpsenknt
vltozik maga a kd is. Teht az aktulis forrsbetu kdolst egy, az elozoleg
1.3. O PTIMLIS
KDOK , BINRIS
H UFFMAN - KD
25
543322221
Az 1.4. bra kdfjnak prjai:
(3; 1);
(2; 1);
(1; 1)
Ezeket nem tudjuk megfeleloen sorba rendezni, gy nem teljesl a fra a testvrpr
tulajdonsg.
HHH
H
26
HH
bbb
""
TT
"
"
b
"
b
T
B
TT
SS
T
S
B
B
B
B
B
B
B
18
28
1
a1
2
a2
13
11
2
a3
2
a4
6
a7
6
a8
15
a10
7
a9
3
a6
2
a5
m
m BB m
m BB m
m BB m
4
1.3. O PTIMLIS
KDOK , BINRIS
27
H UFFMAN - KD
korbban beolvasott k 1 betu feldolgozsval kialakult, loklisan optimlis kdfval kdoljuk, majd eggyel nveljk a forrsszimblum gyakorisgszmlljt.
Aktualizljuk a ft, vagyis megvizsgljuk, hogy fennll-e mg a testvrpr tulajdonsg. Amennyiben nem, helyrelltjuk, gy biztostva az optimalitst. Ezeket a
lpseket a dekder is elvgzi, teht a kvetkezo kdbetu dekdolsakor ugyanazt a ft fogja hasznlni, mint amelyet a kdol hasznlt annak elolltsakor. A
(k + 1)-edik bet
u beolvassa utn az elozoekhez hasonlan folytatjuk.
A kvetkezo kt szably hasznlhat a fa aktualizlsa sorn a testvrpr tulajdonsg helyrelltsra:
1. Kt, azonos sly cscs a hozz tartoz rszfkkal egytt megcserlheto.
Ez termszetesen nem befolysolja a slyokat.
2. Kt levl a slyukkal egytt megcserlheto.
A szablyok kombinlsval talakthat egy nem megfelelo kdfa egy olyann,
amely teljesti a testvrpr tulajdonsgot.
gyelni kell arra, hogy hossz bemenet esetn elofordulhat a szimblumok
gyakorisgszmlljnak tlcsordulsa. Ezt megfelelo technikval orvosolni kell.
S
S
2
2
BB BB
4
m m
mmmm
1
A
1
B
1
C
1
D
SS
5
2
BB BB
1
1
2
3
7
m m
mmmm
S
S3
2
BB BB
5
m m
mmmm
1
A
1
B
1
C
2
D
S
S
2
4
BB BB
6
m m
mmmm
1
A
1
B
2
C
2
D
SS
5
2
C
BB
SS
3
4
D
BB
1
A
1
A
m m
mm
m BB m
2
3
D
1
B
m m
mm
m BB m
2
C
1
B
28
1.6. plda. A bemeneti bcnk: X = fA; B; C; Dg. Adaptv Huffman-kddal kdoljuk a berkezo forrsszimblumokat, melyek legyenek a kvekezok: DCDA.
Az 1.5. brn kvethetjk nyomon a kdfa alakulst. Lthat, hogy a testvrpr
tulajdonsg az DCD feldolgozsa utn srl, a D gyakorisgszmlljnak 3-ra
nvelsvel. Ekkor az 1. majd a 2. szably alkalmazsval llthatjuk helyre a ft,
majd ezzel kdolhat az utols, A szimblum.
1 ; q i );
ahol
i
q0 = 0;
qi =
PfX = x j g
j =1
1 i n;
1.4. A RITMETIKAI
29
KDOLS
qi
qi
qi
qi
..
.
1.6. bra. Az intervallum felosztsa aritmetikai kdols sorn.
Kvetkezo lpsknt vlasszuk az zenet elso karakternek megfelelo intervallumot. Folytassuk az eljrst gy, hogy most ezt a kivlasztott intervallumot
vgjuk rszekre, ugyangy mint az elozo lpsnl, majd vlasszuk ki az zenet
msodik karakternek megfelelo rszintervallumot, s az eljrst ezzel folytassuk
tovbb.
Lthat, hogy az gy kapott egymsba skatulyzott intervallumsorozat utols
eleme egyrtelmuen meghatrozza az elotte lvoket, s emiatt az utols elembol
a teljes zenet visszafejtheto. Ez lesz maga a kdsz.
A gyakorlatban nem az intervallum als s felso hatra, hanem egy tetszolegesen vlasztott eleme adja a kdszt. Ebbol is visszallthat ugyanis
azm zenet.
l
1
Bebizonythat, hogy az x zenetblokkhoz tartoz elemet elg log p(x) + 1 bit
pontossggal lerni ilyen pontossg mellett az eredeti zenetblokk rekonstrulhat lesz. Ebbol megkaphat egy k katarteres blokkhoz tartoz kdsz hossznak
vrhat rtke:
1
log
p(X)
+1
1
p(x) log p(x) + 1 <
1
p(x) log p(x) + 1 + 1 =
p(x) log p(x) + p(x) + 1 =
H (X) + 2
<
30
p (y )
p(x; y)
p(x j y)
p(y j x)
=
=
PfX
g
PfY = yg
PfX = x Y = yg
PfX = x j Y = yg
PfY = y j X = xg
=x
1.6. ttel.
1.5. A Z
31
i =1
i=1
x;y
x ;y
32
Y X
y2 x2
(1.13)
M EGJEGYZS :
a) A feltteles entrpia (1.13) kifejezst talaktva azt kapjuk, hogy
H (X j Y ) =
y2
x2
=y
felttelek-
= y) =
x2
=
=
H (X1 ; : : : ; Xk j Y1 ; : : : ; Ym ) =
a)
H (X ; Y ) = H (Y ) + H (X j Y ) = H (X ) + H (Y j X ):
b)
0 H (X j Y ) H (X );
s a bal oldalon egyenlosg akkor s csak akkor teljesl, ha X 1-valsznusggel fggvnye Y -nak, a jobb oldali egyenlosg akkor s csak akkor
teljesl, ha X s Y fggetlenek.
1.5. A Z
33
c)
H (X j Z ; Y ) H (X j Z );
+ H (Xn j X1
;:::;
Xn
1 ):
B IZONYTS :
a)
H (X ; Y )
=
=
=
=
y2 x2
y2 x2
y2 x2
H (Y ) + H (X j Y );
Y X
y2 x2
y2
34
p(y z)
;
y;z
p(x j z)
p(x j y; z) log p(x j y; z)
x
0
Pf f (Y ) = zg =
PfX
p (y )
y: f (y)=z
= x; f (Y ) = z =
p(x; y);
y: f (y)=z
= x; f (Y ) = z
p(x; y) log
y: f (y)=z
p (x ; y )
;
p(y)
1 ) + H (Xn
j X1
;:::;
Xn
1 );
1.6. I NFORMCIFORRSOK
35
(1.14)
36
Ej f (X1 )j
H (X1 )
log s
(1.15)
H (X1 )
+ 1;
log s
H (X1 )
log s
= X1 ; X2 ; : : :
forrs forrsentrpija a
1
H (X ) = lim H (X1 ; X2 ; : : : ; Xn )
n! n
1.6. I NFORMCIFORRSOK
37
H (X ) = lim H (Xn j X1 ; X2 ; : : : ; Xn
n!
1 ):
H (X1 ) + H (Xi j X1 ; X2 ; : : : ; Xi
1)
(1.17)
i=2
1)
H (Xi+1 j X2 ; X3 ; : : : ; Xi )
H (Xi+1 j X1 ; X2 ; : : : ; Xi )
k=1
n!
1)
sze-
1 ):
38
H (X )
log s
egyenlotlensg. A k blokkhosszt elg nagyra vlasztva ltezik olyan f kd, amelynek L betunknti tlagos kdszhossza tetszolegesen megkzelti ezt az als korltot.
B IZONYTS : Az 1.2. ttel s az 1k H (X1 ; X2 ; : : : ; Xk ) monoton cskkeno konvergencija miatt
1
1 H (X1 ; : : : ; Xk )
L = Ej f (X1 ; : : : ; Xk )j
k
k
log s
Hlog( s)
X
teht a ttel elso felt belttuk. Legyen most > 0 tetszoleges vals szm s
vlasszuk k0 pozitv egszet gy, hogy
1
H (X1 ; : : : ; Xk0 )
k0
H (X ) <
log s;
2
1
k0
<
:
2
(1.18)
Xk !
0
H (X1 ; : : : ; Xk0 )
+ 1;
log s
=
<
<
<
1
E (j f (X1 ; : : : ; Xk0 )j) <
k0
1 H (X1 ; : : : ; Xk0 ) 1
+
<
k0
log s
k0
H (X ) 1
+ +
<
log s
2 k0
H (X )
+ :
log s
39
S ENTRPIJA
fZk = zk j Zk
=P
1 = zk 1
1 = zk 1
g=
(1.19)
1 = z1
g = PfZ2 = z2 j Z1 = z1 g
40
p(v j v)
#
"!
Y
p(s j v)
Sv
#
j
"!
I
Ss
p(v j s)
p (s j s )
1
lim H (Z1 ; Z2 ; : : : ; Zn ) =
n! n
lim H (Zn j Z1 ; : : : ; Zn
n!
1) =
lim H (Zn j Zn
n!
1) =
lim H (Z2 j Z1 ) =
n!
H (Z2 j Z1 ) =
z1 z2
z1 z2
p(v j s) = 0:12;
p(s j v) = 0:03;
p(v j v) = 0:97
41
S ENTRPIJA
p(v) = 0:8
0:8 log0:8
z1 z2
0:261
z1 2
p(z1 )
z2 2
z2 2
ui log ui
i=1
H (Z2 j Z1 ) =
Nzzk azt az esetet, amikor
f0 1g s
;
"
[ pi j =
i=1
p
1
ui log ui
1
p
p
p
#
(0 <
p < 1 ):
Z=
42
Itt
(1
p log p
p) log (1
p) =: h( p):
(1.20)
q; 1
"
p
1
1
p
p
p
#
=
q; 1
p = PfZ2 = 1 j Z1 = 0g = PfZ2 = 0 j Z1 = 1g
43
S ENTRPIJA
t = 0; 1; : : : ; 63
m = 0; 1; : : : ; 27
44
b2
a0
a1
b1
b2
a0
a2
a1
a2
Markov-lnc:
Z
45
S ENTRPIJA
Zi
Xi
6Yi
emlkezetnlkli
stacionrius
forrs: Y
46
H (Z1 ; : : : ; Zn )
j Z1
Zn j X1
+H (X1 ; : : : ; Xn
;:::;
Zn )
H (Z1 ; : : : ;
;:::;
Xn ):
(1.21)
(1.22)
n!
;:::;
;:::;
;:::;
Zn = zn g =
i=1
n
PfF (Zi Yi ) = xi j Zi = zi g =
;
i=1
n
PfXi = xi j Zi = zi g
(1.23)
i=1
s gy
H (X1 ; : : : ; Xn j Z1 ; : : : ; Zn ) =
=
x1 ;:::;xn z1 ;:::;zn
47
S ENTRPIJA
H (Xi j Zi )
(1.24)
i=1
(1.25)
kvetkezik.
c) A H (Z1 ; : : : ; Zn j X1 ; : : : ; Xn ) feltteles entrpit ltalnos esetben nem tudjuk kiszmolni. Nzznk kt specilis esetet, ahol ez a szmts nem okoz
nehzsget:
1. Legyen Xi = Zi , vagyis F (z; y) = z minden y-ra, teht a Markov-forrs
kimenete a Z Markov-lnc llapotai. Ekkor
H (Z1 ; : : : ; Zn j X1 ; : : : ; Xn ) = H (Z1 ; : : : ; Zn j Z1 ; : : : ; Zn ) = 0;
s
H (Xi j Zi ) = H (Zi j Zi ) = 0;
Az1 \ Az2
= 0/ ;
ha z1 6= z2 ; s
z2
Az = X:
48
s gy
j X1
;:::;
Xn ) = 0;
H (X ) = H (Z2 j Z1 ) + H (X1 j Z1 ):
1.8. U NIVERZLIS
49
FORRSKDOLS
Az LZ77 algoritmus
A kdol a forrsszimblumok sorozatt egy ha hossz csszablakon keresztl vizsglja. Az ablak kt rszbol ll: egy keresopufferbol, amely a legutbb
kdolt hk darab forrsszimblumot tartalmazza, s egy eloretekinto pufferbol,
amely a kvetkezo he darab kdoland szimblumot tartalmazza (ha = hk + he ).
A kdol a keresopufferben megkeresi az eloretekinto puffer elso szimblumval
megegyezo szimblumokat. Ehhez egy htrafel halad mutatt hasznl. Megnzi, hogy a megtallt pozcikkal kezdodoen, a keresopufferben lvo szimblumok milyen hosszan egyeznek meg az eloretekinto puffer szimblumaival, s a
tallatok kzl azt vlasztja ki, amelytol kezdve a leghosszabb az egyezs. A
kdol ezutn elkld egy ht ; h; ci hrmast, ahol t a keresopufferben megtallt
szimblum tvolsga az eloretekinto puffertol (offset), h a kereso- s az eloretekinto puffer egyezo szimblumainak legnagyobb hosszsga, c pedig az elso,
az eloretekinto pufferben lvo nem egyezo karakter kdszava. Azrt kldjk el
az elso nem egyezo karakter kdjt is, hogy kezeljk azt az esetet, amikor az
eloretekinto puffer szimblumait nem talljuk meg a keresopufferben. Ilyenkor
t s h rtke 0. Egy hrmas kdolshoz lland hosszsg kd hasznlatval dlog hk e + dlog he e + dlog jXje bit szksges, ahol jXj a forrsbc mrete.
Figyeljk meg, hogy az egyezo szimblumok hosszsgnak tvitelhez nem
dlog hk e, hanem dlog hee bit szksges. Ennek oka, hogy az egyezs hossza meghaladhatja a keresopuffer hosszt, vagyis az egyezo rsz tlghat az eloretekinto
pufferbe.
1.10. plda. Legyen a bementnk a kvetkezo:
:::
ha := 13; hk := 7; he := 6:
doltuk. Ekkor:
cabracadabrarrarrad : : :
Tegyk fel, hogy az elso nhny karaktert mr k-
c a b r a c a d a b r a r r a r r a d
Lthat, hogy az eloretekinto puffer elso karaktere, d, nem tallhat meg a keresopufferben. tkldjk a h0; 0; f (d )i hrmast, ahol f (d ) a d karakter kdjt jelli.
Az ablakot eggyel jobbra mozgatjuk, gy:
t =7
?
a b r a c
h=4
a d a b r a r r a r r a d
50
A mutatt a keresopufferben htrafel mozgatva, az eloretekinto puffer elso szimblumval (a) egyezo karaktert t = 2 tvolsgra talljuk meg. Ekkor az egyezs
hosszsga h = 1. Tovbb haladva a mutatval t = 4-nl szintn egy 1 hossz
egyezs addik. Vgl t = 7-nl talljuk meg a legjobb vlasztst h = 4 hoszszal. Teht az abrar karaktereket a h7; 4; f (r)i hrmassal kdoljuk, s az ablakot
5 pozcival jobbra toljuk, gy:
t =3
c a b r a c a d a b
?
r a r r a
h=5 -
r r a d
Az LZ78 algoritmus
A kdol s a dekdol is sztrt pt az elozoleg elofordult sorozatokbl.
1.8. U NIVERZLIS
51
FORRSKDOLS
a kdol
sztr
kimenete index bejegyzs
h0; f (d )i 1
d
h0; f (a)i 2
a
h0; f (b)i 3
b
h3; f (a)i 4
ba
h0; f (c)i 5
c
h1; f (a)i 6
da
h3; f (b)i 7
bb
h2; f (c)i 8
ac
h6; f (b)i 9
dab
a kdol
sztr
kimenete index bejegyzs
h4; f (c)i 10
bac
h9; f (b)i 11
dabb
h8; f (d )i 12
acd
h0; f (e)i 13
e
h13; f (c)i 14
ec
h1; f (e)i 15
de
h14; f (d )i 16
ecd
h13; f (e)i 17
ee
H (X)
log s -hez
52
Az LZW algoritmus
Terry Welch az LZ78 mdostsval egy olyan technikt dolgozott ki, amellyel
megtakarthat az hi; ci prbl a c karakterkd tkldse. Ez az n. LZW algoritmus. A kdol teht csak sztrbeli indexeket kld t. Ehhez szksges, hogy a
sztrban mr a kiindul llapotban is szerepeljen az sszes egybetus szimblum
a forrsbcbol. A kdols sorn az aktulis pozcitl kezdve addig olvassuk be
a forrsszimblumokat a p pufferbe, amg a sorozat szerepel a sztrban. Ha az a
karakter az elso olyan, amelyre pa nincs benne a sztrban (az egyms utn rssal a konkatencit jelltk), akkor tkldjk a p sorozat indext, a pa sorozatot
felvesszk a sztrba s az a karaktertol kezdve folytatjuk az eljrst.
1.12. plda. Kdoljuk az LZW algoritmussal az elozo sorozatunkat:
dabbacdabbacdabbacdabbacdeecdeecdee
A forrsbc X = fa; b; c; d ; eg, kezdetben ez az 5 bejegyzs szerepel a sztrban.
A kdol eloszr veszi a d karaktert. Ez benne van a sztrban, gy hozzilleszti
a kvetkezo, az a karaktert. A da sorozat mr nem szerepel a sztrban, ezrt
tkldi a d indext, vagyis a 4-et, felveszi a sztrba a da sorozatot a 6. helyre, s
megy tovbb az a-val kezdve. Az a szerepel a sztrban, gy hozzveszi a b-t. ab
nincs bent, teht tkldi a indext, a 2-t, felveszi ab-t, s folytatja az eljrst b-tol,
stb. Az 1.11. brn lthat tblzat tartalmazza a kdols vgeztvel a sztrban
tallhat indexeket s karaktersorozatokat. A kdol kimenete a kvetkezo:
4; 1; 2; 2; 1; 3; 6; 8; 10; 12; 9; 11; 7; 16; 4; 5; 5; 11; 21; 23; 5
1.13. plda. Dekdoljuk az LZW algoritmussal tmrtett, A = fa; bg forrsbc feletti abababab : : : karaktersorozatot. A kdol kimenetrol a dekdol
bemenetre az 1; 2; 3; 5; 4; 7; 6; 9; 8; : : : sorozat jut el. A kiindulsi sztr tartalmazza az a s a b bejegyzst. gy az 1; 2 sorozatot dekdoljuk a illetve b karakterknt. A sztrba felvesszk az ab bejegyzst harmadiknak, s a kvetkezo
sorozat, amely a sztrba kerl majd, a b karakterrel fog kezdodni. A 3 kdsz
rkezik a bemeneten, ezt dekdoljuk ab-knt. Eloszr az a betut illesztjk a kszlo j sztrbejegyzs kezdo b betujhez. Mivel a ba sorozat nincs a sztrban,
1.8. U NIVERZLIS
53
FORRSKDOLS
index bejegyzs
1
a
2
b
3
c
4
d
5
e
6
da
7
ab
8
bb
9
ba
10
ac
11
cd
12
dab
13
bba
index bejegyzs
14
acd
15
dabb
16
bac
17
cda
18
abb
19
bacd
20
de
21
ee
22
ec
23
cde
24
eec
25
cdee
index bejegyzs
6
abab
7
bab
8
baba
9
ababa
..
.
A Unix COMPRESS parancsa s a GIF (Graphics Interchange Format) kptmrto eljrs is az LZW algoritmust hasznlja, mgpedig adaptv sztrmrettel.
A COMPRESS esetben kezdetben a sztrban 512 bejegyzsnek van hely, ez azt
54
jelenti, hogy a kdszavak 9 bit hosszak. Amikor a sztr betelik, mrett megduplzzuk, 1024 bejegyzsre. Ettol kezdve 10 bites kdszavakat visznk t, s
gy tovbb. A kdszavak lehetsges maximlis hosszt a felhasznl llthatja be
9 s 16 bit kztt (alaprtelmezs: 16 bit). Ezt elrve, a COMPRESS eljrs statikus sztr alap technikv vlik. Ilyenkor a program figyeli a tmrtsi arnyt.
Amennyiben ez egy bizonyos kszb al esik, a sztr mr nem felel meg cljainknak, ezrt a sztrpto folyamat kezdodik ellrol. gy a sztr mindig tkrzi
a forrs loklis jellemzoit.
Szintn az LZW algoritmusra pl a CCITT (ma: ITU-T) V.42bis tmrtsi szabvnya, amely a telefonhlzaton modemekkel trtno adattvitelrol szl
V.42 ajnls kiegsztse. Az algoritmus kt zemmdot definil. Az egyik a
transzparens md, amikor az adatok tmrtetlen formban kerlnek tvitelre, a
msik pedig a tmrtett md. A kt zemmdra azrt van szksg, mert lehetsges, hogy az tvitelre kerlo adatokban nincs redundancia, ezrt nem tmrtheto
az LZW algoritmussal. Ebben az esetben a tmrto eljrs mg hosszabb kimenetet eredmnyezne, mint a bemenet (ez a helyzet pldul, ha egy elozoleg
mr tmrtett fjlt akarunk tvinni a telefonvonalon). Tmrtett zemmdban
a rendszer LZW algoritmust hasznl vltoz mretu sztrral. A sztr kezdeti
mrett a kapcsolat ltrejttekor egyezteti az ad- s a vevoberendezs. A V.42bis
ajnls minimum 512 bejegyzs mretu sztrat tartalmaz, de 2048 mretut tart
idelisnak. Az sszes bejegyzs nem hasznlhat fel szabadon, mert van 3 kitntetett szerepu kdsz. Ezek illetve jelentsk a kvetkezo: Enter Transparent
Mode (zemmdvlts: ettol kezdve a transzparens md rvnyes), Flush Data (a
sztrptst elorol kezdjk), Increment Codeword Size (megduplzzuk a sztr
mrett, s ezzel egytt eggyel nveljk a kdszavak mrett is). Az adattvitel
sorn bekvetkezo hibk hatsnak cskkentsre az ajnls meghatrozza a maximlis sztringmretet, amely szerepelhet a sztrban. Ezt 6 s 250 kztt az ads a vevoberendezs hatrozza meg a kapcsolat felptsekor (alaprtelmezs: 6).
1.9. Feladatok
1.1. feladat (Egyrtelmu dekdolhatsg alternatv defincija). Nevezznk
egy f : X ! Y kdot egyrtelmuen dekdolhatnak, ha az u = u1 uk s v =
v1 vk zenetekre (itt u1 ; v1 ; : : : ; uk ; vk 2 X)
f (u1 ) f (u2 ) f (uk ) = f (v1 ) f (v2 ) f (vk )
esetn ui = vi minden i-re. Teht az 1.1. defincival ellenttben csak azt kveteljk meg, hogy brmely kt klnbzo, azonos hosszsg zenet kdja is
klnbzzn. Bizonytsa be, hogy a kt definci ekvivalens!
55
1.9. F ELADATOK
1.2. feladat (Az optimlis kd tlagos szhossza). Mutassa meg, hogy az optimlis binris kd tlagos kdszhossza tetszolegesen kzel lehet H (X ) + 1-hez.
Pontosabban, brmely kis > 0 szmhoz adjon meg egy olyan eloszlst az X
forrsbcn, hogy az optimlis binris kd tlagos kdszhosszra
Ej f (X )j > H (X ) + 1
teljesljn.
1.3. feladat (Egyenlosg a Kraft-egyenlotlensgben). Nevezznk egy f prefix
kdot teljesnek, ha brmely j kdsz hozzadsval a kd elveszti prefix tulajdonsgt. Egy x sztringet dekdolhatatlannak neveznk, ha nem lehet kdszavak
egyms utn rsval olyan sztringet kapni, amelynek x a prefixe. Mutassa meg,
hogy a kvetkezo hrom llts ekvivalens:
a) f teljes,
b) nem ltezik f -re nzve dekdolhatatlan sztring,
n
c) s
i =1
li = 1,
kdszavak szma.
1.4. feladat (Rossz kdok). A kvetkezo binris kdok melyike nem lehet semmilyen eloszls Huffmann-kdja? Mindegyik vlaszt indokolja meg, azaz ha
nincs ilyen eloszls, akkor magyarzza meg mirt, ha pedig van, akkor adjon meg
egy olyat!
a) 0; 10; 111; 101
b) 00; 010; 011; 10; 110
c) 1; 000; 001; 010; 011
1.5. feladat. Legyen az X = fx1 ; : : : ; xn g forrsbcn adott valsznusg-eloszls
olyan, hogy minden egyes elem valsznusge 2 i alak, ahol i egy pozitv egsz
szm. Bizonytsa be, hogy ilyen esetekben a binris ShannonFano-kd optimlis! Mutassa meg, hogy a binris Huffman-kd tlagos kdszhossza akkor s
csak akkor egyezik meg az entrpival, ha az eloszls ilyen alak!
1.6. feladat. Legyen az X forrsbc telemu, a kvetkezo valsznusgekkel:
0:4; 0:35; 0:1; 0:1; 0:05. Mennyi az eloszls entrpija? Konstrulja meg a binris
ShannonFano-kdot erre az eloszlsra, illetve konstruljon binris prefix kdot
az li = d log p(xi )e kdszhosszakkal az 1.2. lemma bizonytsa szerint (a kd
binris fval val reprezentlsval). Mennyi az tlagos kdszhossz?
56
1.7. feladat. Egy pnzrmt addig dobunk fel, amg rst nem kapunk. Jellje az
X valsznusgi vltoz a dobsok szmt. Mennyi az X entrpija?
1.8. feladat (Egyenletesebb eloszls entrpija nagyobb). Mutassa meg, hogy
a
( p1 ; : : : ; pi ; : : : ; p j : : : ; pn )
eloszls entrpija nem lehet nagyobb, mint a
( p1 ; : : : ;
pi + p j
pi + p j
;:::;
: : : ; pn )
2
2
eloszls entrpija!
1.9. feladat (Egyenletesebb eloszls optimlis kdja rosszabb).
Tekintsk a
p = ( p1 ; : : : ; pi ; : : : ; p j : : : ; pn )
illetve
pi + p j
pi + p j
;:::;
: : : ; pn )
2
2
eloszlsokat. Mutassa meg, hogy a q eloszlshoz tartoz optimlis (minimlis tlagos kdszhosszsg) kd tlagos kdszhossza (q szerint) nem lehet kisebb,
mint a p eloszlshoz tartoz optimlis kd tlagos kdszhossza (p szerint)!
q = ( p1 ; : : : ;
H (p) = log n D(p j u), ahol H (p) jelli a p eloszls entrpijt, u pedig
az egyenletes eloszlst az f1; : : : ; ng halmazon.
1.11. feladat (Rosszul ismert eloszls). Tegyk fel, hogy az X valsznusgi vltoz eloszlsa p = ( p1 ; : : : ; pn ), de ez az eloszls nem pontosan ismert, helyette
57
1.9. F ELADATOK
teljesl! Ez azt jelenti, hogy az r, amelyet az eloszls pontatlan ismeretrt fizetnk, krlbell az informcis divergencival egyezik meg (ami sohasem lehet
negatv, teht semmikppen sem nyerhetnk!).
1.12. feladat (ShannonFano s Huffman-kd). Legyen az X valsznusgi
1 1 1 1
vltoz eloszlsa 3 ; 3 ; 4 ; 12 . Konstruljon Huffmann-kdot ehhez az eloszlshoz. Mutassa meg, hogy kt klnbzo optimlis kd is van, azaz, hogy az
(1; 2; 3; 3), s a (2; 2; 2; 2) kdszhosszsgokkal adott mindkt kd optimlis.
Vonja le a kvetkeztetst, hogy ltezik olyan optimlis kd, amelynek van a megfelelo ShannonFano-kdnl hosszabb kdszava is.
1.13. feladat (Huffmann-kd kdszhosszai). Tegyk fel, hogy a ( p1 ; : : : ; pn )
eloszlshoz ksztnk optimlis binris prefix kdot, ahol p1 > p2 > > pn > 0.
Bizonytsa be, hogy
1
3
1.14. feladat (Titkosts). Legyenek X s Z binris (0-1 rtku) fggetlen valsznusgi vltozk, gy, hogy PfX = 1g = p s PfZ = 1g = 12 . Legyen Y = X Z,
ahol modulo 2 sszeadst jell. X felfoghat, mint titkostand zenet, Z a titkos kulcs, s Y a rejtjelezett zenet. Szmolja ki a kvetkezo mennyisgeket,
s magyarzza meg jelentsket a titkosts szempontjbl: H (X ), H (X j Z ),
H (X j Y ), H (X j Y ; Z ).
1.15. feladat (Egyenlotlensgek). Legyenek X ; Y s Z tetszoleges (vges rtkkszletu) valsznusgi vltozk. Bizonytsa be a kvetkezo egyenlotlensgeket:
H (X ; Y j Z ) H (X j Z ),
H (X ; Y ; Z )
H (X ; Y ) H (X ; Z )
H (X ).
58
p;
1
1
PfX2 = 0 j X1 = 1g
PfX2 = 1 j X1 = 1g
p;
p
2
1+ p
:
2
x logx
(1
x) log (1
x);
szimmetrikus az
[0 ; 1
1
2
pontra;
szigoran konkv.
1.20. feladat (Vissza a jvobe). Legyen : : : ; X 2 ; X 1 ; X0 ; X1 ; X2 ; : : : valsznusgi vltozk egy stacionrius sorozata. Mutassa meg, hogy
H (X0 j X
1; X 2; : : : ; X n) =
H (X0 j X1 ; X2 ; : : : ; Xn );
59
1.9. F ELADATOK
Z1 = ig valsznusg tallhat). Mi a Markov-lnc stacionrius eloszlsa? Menynyi a forrs entrpija? Ksztsen j, egyrtelmuen dekdolhat, vltoz szhoszszsg blokk-kdot!
2
6
6
6
6
6
6
6
6 0
6
4 1=4
0
0
1=4 1=4
0
0
0 1=2
0
0
0
0
0
..
.
7
7
7
7
7
7
7
1=4 1=4 7
7
1=2 1=4 5
1=2
#
"!
Y
R
p
(1
#
j
"!
I
1
(1 + p)=2
p)=2
Legyen tovbb Y1 ; Y2 ; : : : fggetlen, azonos eloszls binris valsznusgi vltozk sorozata, ahol P(Yi = 0) = 13 . Definiljuk az X = X1 ; X2 ; : : : forrst az
Xi = 2Zi + Yi egyenlettel. Mennyi az X forrs entrpija, feltve, hogy Z1 ; Z2 ; : : :
fggetlen Y1 ; Y2 ; : : :-tol?
1.23. feladat (LempelZiv). Adjuk meg a 36 darab nullbl ll sztring LZ78kdjt!
60
2. fejezet
Forrskdols
husgkritriummal
62
2. F ORRSKDOLS H USGKRITRIUMMAL
rainak a jellemzse ltalban nem konstruktv, ugyanakkor a gyakorlati feladatokban mgis kell tmrteni, teht megemltnk nhny gyakorlati eljrst is:
kvantlst, mintavtelezst, prediktv kdolst, beszd-, hang-, kp- s videotmrtst. A fejezetet az elvi hatrok tisztzsval zrjuk.
A vltoz szhossz forrskdols egy htrnya azonnal szembetunik: egy kdsz meghibsodsa esetn elofordulhat, hogy az utna levo sszes kdsz dekdolst elrontjuk, mivel a kezdetket rosszul detektljuk. Ha lland hosszsg
kdszavakat hasznlunk, akkor ez nem fordulhat elo; brmely kdsz meghibsodsa csak az illeto kdsz dekdolsnl okoz gondot, hiszen a kdsz kezdetek
kijellse mg dekdols elott megtrtnhet. Azonban mint rgtn ltni fogjuk
, ez a megolds elveszi a tmrts lehetosgt. Legyen ugyanis X az n-elemu
forrsbc, s Y az s-elemu kdbc. Ekkor, ha az f kd k-hossz zeneteket
m-hossz kdszavakba kpez le (teht f : Xk ! Ym ), akkor az egyrtelmu dekdolhatsg felttele az
(2.1)
nk s m
egyenlotlensg teljeslse, vagyis ezt a betunknti tlagos kdszhosszal kifejezve
m log n
;
(2.2)
L=
k
log s
mivel a klnbzo k-hossz zeneteknek klnbzo m-hossz kdszavakat kell
megfeleltetni. A (2.2) felttel termszetesen elgsges is egyrtelmuen dekdolhat f : Xk ! Ym kd ltezsre. Mivel a forrs entrpija jval kisebb lehet
log n-nl (de legfeljebb ennyi) ezrt (2.2) megmutatja, hogy az lland szhossz
egyrtelmuen dekdolhat kdok esetben az tlagos kdszhossz ltalban nem
kzeltheti tetszolegesen a forrsentrpit brmilyen nagy legyen is a k blokkhossz. Valjban csak akkor nem vesztnk semmit, ha a kdolt forrs emlkezetnlkli s stacionrius egyenletes eloszlssal.
Feladjuk teht az egyrtelmu dekdolhatsgot, s helyette azt kveteljk
meg, hogy a k hossz zeneteket nagy valsznusggel tudjuk dekdolni. Mielott tovbbmennnk bevezetnk egy jellst:
Ha adott az X = X1 ; X2 ; : : : stacionrius forrs, akkor a k hossz zenetek B
Xk halmaznak valsznusgn a kvetkezot rtjk:
P(B) = Pf(X1 ; : : : ; Xk ) 2 Bg:
n = 1; 2; : : :
2.1. F ORRSKDOLS
63
EL ORT
HIBAVALSZN USGGEL
Ha x = (x1 ; : : : ; xk ) 2 Xk , s a szoksos
p(x) = PfX1 = x1 ; : : : ; Xk = xk g
jellst hasznljuk, akkor
P(B) =
p(x)
x2B
2.1. definci. Az X stacionrius forrs f : Xk ! Ym kdjt akkor mondjuk hibval (0 < < 1) dekdolhatnak, ha ltezik olyan f 0 : Ym ! Xk dekdol
fggvny, hogy a hibs dekdols valsznusge kisebb -nl, vagyis
Pf f 0 ( f (X1 ; : : : ; Xk )) 6= (X1 ; : : : ; Xk )g :
M EGJEGYZS :
a) A dekdols hibjt a kvetkezo mdon rhatjuk fel:
Pf f 0 ( f (X1 ; : : : ; Xk )) 6= (X1 ; : : : ; Xk )g =
x: f 0 ( f (x))6=x
p(x):
b) Knnyen belthat, hogy az f : Xk ! Ym pontosan akkor dekdolhat hibval, ha f az Xk egy 1 -nl nagyobb valsznusgu B rszhalmazt
invertlhatan kpezi le. Ebbol kvetkezik, hogy akkor s csak akkor ltezik f : Xk ! Ym -hibval dekdolhat kd, ha ltezik olyan B Xk ,
amelyre P(B) > 1 s jBj sm .
Az elobbi megjegyzs szerint teht akkor kapunk a forrs k hossz blokkjait
lland szhosszsg, -hibval dekdolhat minimlis kdszhossz kdot, ha
keresnk egy minimlis szmossg B Xk zenethalmazt, amelyre P(B) > 1 .
Legyen m olyan, hogy
sm 1 < jBj sm ;
(2.3)
s gy a B-beli zeneteket klcsnsen egyrtelmuen kdolhatjuk az m hossz
kdszavakkal. A tbbi zenetet brhogy (pldul mindegyiket egyazon x 2 B
kdjval) kdolva, egy f : Xk ! Ym -hibval dekdolhat kdot kapunk ami
0
persze optimlis lesz, vagyis ha g : Xk ! Ym is -hibval dekdolhat, akkor
m m0 .
Ilyen minimlis elemszm halmazt knnyen tallhatunk. Indexeljk a k
hossz zeneteket (sszesen l = nk darabot) valsznusgeik szerint cskkeno sorrendben:
p(x1 ) p(x2 ) p(xl );
2. F ORRSKDOLS H USGKRITRIUMMAL
64
p (x i ) > 1
N (k;) 1
de
i=1
i=1
p(xi ) 1
Bk; =
fx i g
(2.4)
i=1
halmaz a kvnt minimlis elemszm, mivel semmilyen N (k; )-nl kisebb elemszm halmaz nem lehet 1 -nl nagyobb valsznusgu.
Ha teht az f : Xk ! Ym -hibval dekdolhat kd, akkor
N (k; ) sm ;
teht
L=
m
k
k loglogN (sk )
1
(2.5)
H (X ) > = 0;
2.1. F ORRSKDOLS
EL ORT
HIBAVALSZN USGGEL
65
M EGJEGYZS :
a) Az X informcistabilitsa nagyjbl azt jelenti, hogy elg nagy k-ra, a k
hossz sorozatok 1-hez kzeli valsznusgu rszre, mondjuk az A Xk -ra
igaz, hogy
1
log p(x) H (X )
k
illetve
p(x) 2 kH (X) ;
ha x 2 A, valamint
jAj 2kH X
( )
=
=
1
log p(X1 ; X2 ; : : : ; Xk ) =
k
1
log ( p(X1 ) p(X2 ) p(Xk ));
k
vagyis
Yk =
1 k
( log p(Xi ));
k i
=1
2. F ORRSKDOLS H USGKRITRIUMMAL
66
Ak; = x 2 X
H (X )
1
:
log p(x)
k
p(x) 2
k(H (X) )
Az Ak; elemeit szoks tipikus sorozatoknak hvni, mivel egyrszt a valsznusgk kzeltoleg 2 kH (X) , msrszt az Ack; sszvalsznusge kicsi.
Az Ak; elemeinek szmt a kvetkezokppen becslhetjk fellrol:
1 P(Ak; ) =
x2Ak;
vagyis
Ak;
2k H X
( )+)
k(H (X)+)
(2.6)
tehetjk, hiszen
tere, vagyis
Xn
1+
2
mivel P Bck;
<
P Ak;
P Ak; \ Bk;
<
P Ak; \ Bk;
+P
+ ;
<
(2.7)
1+
2 teljesljn. (Ezt megc
(B a B halmaz komplemen-
>
Ak; \ Bck;
<
2.1. F ORRSKDOLS
67
EL ORT
HIBAVALSZN USGGEL
s innen
P Ak; \ Bk;
>
1
2
P Ak; \ Bk;
<
Ak;
N (k; ) >
1
2
Bk; max p(x)
jBk j 2
vagyis
x2A
k;
k(H (X) )
2k H X
(
( )
1
1
log
k
2
;
mk
k
Hlog( s)
X
mk
k
<
H (X )
+ :
log s
2. F ORRSKDOLS H USGKRITRIUMMAL
68
k loglogN (sk )
1
(X)
s itt a jobb oldal az elozo ttel szerint Hlog
o
s -hez tart k ! esetn, teht az els
lltst belttuk.
A msodik llts bizonytshoz legyen
mk =
log N (k; )
log s
(2.8)
ahol az dxe jells az x vals szm felso egsz rszt jelenti. Ekkor a 2.1. ttel
miatt ltezik olyan k0 , hogy
k0 >
2
;
ha
k > k0 :
(2.9)
1
k
log N (k; )
+1
log s
<
H (X ) 1
+ +
log s
2 k
<
H (X )
+
log s
m
log s
k
jelsebessget, ami megadja, hogy ha az N = sm darab kdszt binrisan reprezentljuk, akkor forrsbetunknt tlagosan hny bitet hasznlunk fel. Mivel az mhossz kdszavakkal N = sm kdszt lehet egyrtelmuen dekdolhatan kdolni,
ezrt az R jelsebessgu, k-hossz blokkokat kdol kdok kzl az a legjobb (legkisebb hibval dekdolhat), amelyik az Xk elso N = 2kR legnagyobb valsznusgu elemt kdolja egyrtelmuen (a tbbi zenetet tetszolegesen). Teht ha az
2.1. F ORRSKDOLS
69
EL ORT
HIBAVALSZN USGGEL
i2kR
p(xi )
(2.10)
addik.
2.3. ttel. Ha az X stacionrius forrs informcistabilis, akkor a legfeljebb R
jelsebessgu, k hossz blokkokat lland szhosszon kdol, legkisebb hibval
dekdolhat kd hibavalsznusgre igaz a kvetkezo:
k!
lim Pe (k; R) = 0;
ha R > H (X );
lim Pe (k; R) = 1;
ha R < H (X );
s
k!
vagyis R > H (X ) esetn elg hossz blokkokat kdolva a dekdols hibja tetszolegesen kicsiv teheto, mg R < H (X ) esetn a blokkhosszt nvelve a dekdols
hibja 1-hez tart, azaz a kd hasznlhatatlann vlik.
B IZONYTS : Legyen Rk = mkk log s az f : Xk ! Ymk minimlis betunknti tlagos kdszhossz, -hibval dekdolhat kd jelsebessge, s legyen R > H (X ).
A 2.2. ttel msodik fele szerint
lim sup Rk H (X ):
k!
<
R, ha
Pe (k; Rk ) Pe (k; R)
kvetkezik, vagyis
Pe (k; R) < ;
ha k > k0 , s mivel tetszolegesen kicsi lehet, a ttel elso felt belttuk.
Legyen most R < H (X ). Tegyk fel, hogy a ttel msodik lltsa nem teljesl. Ekkor ltezik egy olyan ki ! sorozat, hogy Pe (ki ; R) < (i = 1; 2; : : :)
valamilyen < 1 pozitv szmra. Egy ilyen R jelsebessgu, ki -hossz blokkokat
kdol kd tlagos kdszhossza persze
L=
mki
ki
logR s
2. F ORRSKDOLS H USGKRITRIUMMAL
70
teht
lim inf
i!
mki
ki
logR s
<
H (X )
;
log s
ami ellentmond a 2.2. ttel elso lltsnak, mivel ezek a kdok -hibval dekdolhatak.
Ha X emlkezetnlkli s stacionrius, akkor a Pe (k; R) hibavalsznusgre
a 2.3. ttelnl erosebb lltst is be lehet bizonytani. Nevezetesen azt, hogy ha
R > H (X ), akkor Pe (k; R) exponencilisan tart 0-hoz; s R < H (X ) esetn pedig
1 Pe (k; R) tart exponencilisan a 0-hoz, ha k ! .
2.2. Kvantls
A digitlis mdszereket a hrkzls szinte minden terletn alkalmazzk. Minden esetben, amikor az adatok feldolgozsa digitlisan trtnik, a folytonos rtkkszletu jelet vges rtkkszletuv kell alaktani. A digitalizls elvi hatrait
az utols szakaszban tisztzzuk, de az egyrtelmu, illetve az -hibavalsznusgu
dekdolhatsggal ellenttben az elmlet nem konstruktv. Az alkalmazott, teht
konstruktv digitalizls legegyszerubb mdja a skalr (egydimenzis) kvantls.
Legyen X = X1 ; X2 ; : : : egy stacionrius forrs, ahol az Xi -k vals valsznusgi vltozk. Az X egydimenzis kvantltjn egy vges rtkkszletu Q : R ! R
lekpezssel kapott Q(X1 ); Q(X2 ); : : : diszkrt valsznusgi vltozsorozatot (forrst) rtnk. A Q() fggvnyt kvantlnak nevezzk. Vegyk szre, hogy a
kvantls az elozo fejezet rtelmben egy k = 1 hossz blokkokat kdol forrskd (azaz betunknti kd), melynek reprodukcis bcje a forrsbc (a vals
szmok) egy vges rszhalmaza. Termszetesen az a clunk, hogy az X -et huen
reprezentljuk. A kdols husgt egy specilis husgmrtkkel, a D(Q) ngyzetes torztssal mrjk n hossz blokkokra:
D(Q) =
1
E
n
(Xi
Q(Xi ))2
i=1
Q(X ))2
(2.11)
71
2.2. K VANTLS
ha x 2 Bi :
Tegyk most fel, hogy a kvantlt ler adatok kzl most csak az fx1 ; x2 ; : : : ; xN g
kvantlsi szinteket ismerjk. Ekkor az ilyen kvantlsi szinteket hasznl kvantlk kzl a legkisebb torzts az a Q kvantl, amelyre
Bi = fx : jx
xi j jx
x j j; j = 1 ; 2 ; : : : ; N g
(2.12)
(legkzelebbi szomszd felttel), ahol a dntsi szablyt gy tehetjk egyrtelmuv (vagyis a Bi -ket diszjunktakk), hogy ha egy adott x ketto vagy tbb Bi -be
tartozna, akkor a legkisebb indexuhz soroljuk. Az adott kvantlsi szintekkel Q
valban legkisebb ngyzetes torzts, hiszen ha Q egy msik kvantl ugyanezen kvantlsi szintekkel, akkor egy tetszoleges x-re Q(x) = xi (teht x 2 Bi ) s
Q (x) = x j valamely 1 i; j N indexekre, de ekkor (2.12) szerint
jx
teht
(x
xi j jx
Q(x))2 (x
x j j;
Q (x))2
teljesl minden x 2 R -re amibol D(Q) D(Q ) kvetkezik. Ezrt a kvetkezokben csak a (2.12) szerinti kvantlkkal foglalkozunk. Az ilyen kvantlk Bi kvantlsi tartomnyai nagyon egyszeruen nznek ki. Az ltalnossg megszortsa
nlkl tegyk fel most, hogy a kvantlsi szintek nagysg szerint rendezve vannak, vagyis x1 < x2 < < xN . Ekkor, bevezetve az yi = xi +2xi+1 ; i = 1; : : : ; N 1
jellst, a (2.12) szerinti Bi halmazok a kvetkezo intervallumok lesznek:
B1 = (
Bi = (yi
; y1
1 ; y i ;
i = 2; : : : ; N
1;
BN = (yN
1 ; ):
c)2 j X
= E (X
2 Bi
E(X
j Bi))2 j X 2 Bi
+ (E (X
j Bi )
c)2 ;
2. F ORRSKDOLS H USGKRITRIUMMAL
72
Q(x)
6
x5
x4
x3
-
y1
y2
y3
y4
x2
x1
Bi
1
f (x) dx
Z
(x
Bi
xi )2 f (x) dx = E (X
xi )2 j X
2 Bi
akkor minimlis, ha
R
x f (x) dx
B
xi = Ri
f (x) dx
Bi
= E(X
j X 2 Bi)
ami a slypont.
A technikai nehzsgek elkerlse vgett a tovbbi vizsglataink sorn felteszszk, hogy a kvantlt X vals valsznusgi vltoz eloszlsa abszolt folytonos f
surusgfggvnnyel, valamint azt is feltesszk, hogy f a [ A; A intervallumban
folytonos, a [ A; A intervallumon kvl nulla rtku fggvny. Az f -et felhasz-
73
2.2. K VANTLS
D(Q) =
N Z
Q(x)) f (x) dx =
2
(x
(x
Bi
xi )2 f (x) dx:
i=1
A + (2i
1)
A
;
N
ha
A
A
<x
A + 2i ;
i = 1; : : : ; N :
N
N
A kvetkezo ttel megmutatja, hogy az N szintu egyenletes kvantl ngyzetes
1 2A 2
torztsa nagy N esetn kzeltoleg 12
.
N
A + 2(i
1)
q2N
12 .
D(QN ) =
i=1y
ZyN i
;
(x
xN ;i )2 f (x) dx:
N ;i 1
f N (x ) =
1
qN
f (z) dz;
y N ;i
ha x 2 (yN ;i ; yN ;i
1 :
2. F ORRSKDOLS H USGKRITRIUMMAL
74
D (QN )
i=1y
1
qN
i=1
ZyN i
ZyN i
yN ;i
12
x2 dx =
f (z) dz
yN ;i
xN ;i )2 dx =
qN
Z2
ZyN i
q2N N
12 i
=1
q2N
(x
yN ;i
1
;
1
qN
i=1
qN
2
ZyN i
yN ;i
f (z) dz
xN ;i )2 fN (x) dx =
N ;i 1
(x
f (z) dz =
1
(2.13)
D(QN ) D (QN )
N !
q2N =12
lim
= 0:
(2.14)
j f (x )
f (y)j < ;
ha x; y 2 (yN ;i
1 ; yN ;i ;
i = 1; : : : ; N :
D (QN )j =
ZyN i
12 N
= 2
(x
qN i=1
y
;
xN ;i )2 f (x) dx
q122
N i=1y
(x
N ;i 1
i=1y
N ;i 1
ZyN i
xN ;i )2 j f (x)
ZyN i
;
(x
N ;i 1
fN (x)j dx
2
xN ;i ) fN (x) dx
75
2.2. K VANTLS
3
q122 N q12N =
N
= 2A;
(2.15)
H( f ) =
Rx
2. F ORRSKDOLS H USGKRITRIUMMAL
76
szmok, amelyekre
f (x) dx = (yN ;i
yN ;i
1 ) f (N ;i ) = qN f (N ;i );
yN ;i
i = 1; : : : ; N :
(2.16)
H (QN (X ))
i=1
0 y
1
0 y
1
ZN i
ZN i
f (x) dxA log f (x) dxA =
;
i=1
yN ;i
yN ;i
i=1
N
qN f (N ;i) log qN
qN f (N i) log f (N i)
;
i=1
(2.17)
:
i=1
qN f (N i) log qN = (
;
i=1
ZyN i
;
log qN )
i=1y
f (x) dx =
log qN ;
(2.18)
N ;i 1
msrszt
N
lim
N !
qN f (N i) log f (N i) =
;
ZA
i=1
(2.19)
mivel a bal oldal a jobb oldali integrl Riemann kzelto sszege. sszevetve
(2.17)-et (2.18)-cal s (2.19)-cel, a ttel lltsa addik.
Ha a 2.4. s 2.5. tteleket sszevetjk, akkor knnyen belthat a
N !
12D(QN )
= H( f )
log
12D(QN )
77
2.2. K VANTLS
nagy N-ek, vagyis finom (kis lpskzu) kvantls esetn, ami egy hasznos kzelts lehet egyenletes kvantl tervezsnl.
A H ( f ) differencilis entrpia teht a finom, egyenletes kvantl kimenetnek a tmrthetosgt mri, azaz valamilyen rtelemben az eloszls terjedelmt.
Megmutatjuk, hogy adott szrs f surusgfggvnyek kzl a normlis eloszls surusgfggvnyre a legnagyobb a H ( f ) differencilis entrpia. Eloszr
megmutatjuk, hogy ha f (x) s g(x) kt, olyan folytonos surusgfggvny, amelyre
az
Z
f (z)
f (z) log
dz
g(z)
integrl ltezik s vges, akkor ez az integrl nemnegatv, s 0 akkor s csak akkor,
ha f (x) g(x).
Legyen X egy valsznusgi vltoz f (x) surusgfggvnnyel, s legyen Z =
g(X )
usgi vltoz. Alkalmazzuk erre a Jensen-egyenlotlensf (X ) egy msik valszn
get a log z konvex fggvnnyel:
E( log(Z ))
g(x)
log
f (x) dx
f (x )
Z
g(x)
log
f (x) dx
f (x )
Z
f (x)
f (x) log
dx
g(x)
log(EZ )
Z
g(x)
log
f (x) dx
f (x )
log
Z
g(x) dx
(x) ln(x) dx
H ( ) H ( f ) :
(x) dx =
f (x) dx = 1
2. F ORRSKDOLS H USGKRITRIUMMAL
78
Z
(x)x dx =
miatt
(x) ln(x) dx +
Z
f (x)x2 dx = 2
f (x) ln f (x) dx =
1
x2
(x) ln p
dx + f (x) ln f (x) dx =
2 22
Z
Z
Z
1
1
2
= ln p
(x) dx + 2 (x)x dx + f (x) ln f (x) dx =
2
2
Z
Z
Z
1
1
= ln p
f (x) dx + 2 f (x)x2 dx + f (x) ln f (x) dx =
2
2
Z
Z
1
x2
f (x) ln p
dx + f (x) ln f (x) dx =
=
2 22
Z
f (x)
f (x) ln
dx;
=
(x)
ami nemnegatv.
Ebbol az is kvetkezik, hogy
H( f )
=
=
=
H ( ) =
Z
1
x2
(x) log p
log e dx =
2 22
p
1
log
2 + log e =
2
1
log 2e2 :
2
Hasonl technikval megmutathat, hogy az adott vrhat rtku s a nemnegatv flegyenesre koncentrlt surusgfggvnyek kzl az adott vrhat rtku,
exponencilis surusgfggvnynek a legnagyobb a differencilis entrpija (2.7.
feladat).
A LloydMax-algoritmus
Nem egyenletes kvantl tervezsnl azt a technikt alkalmazzuk, hogy az
tlagos torzts cskkentshez a bemenetet pontosabban kzeltjk a nagyobb valsznusgu tartomnyokban, mg a kis valsznusgu tartomnyokban rosszabb
kzeltst engednk meg, mint egyenletes kvantls esetn. Ezt gy tehetjk meg,
hogy a nagyobb valsznusgu helyeken a kvantlsi intervallumokat kisebbnek
79
2.2. K VANTLS
vlasztjuk. Amennyiben az intervallumok szma konstans, ez egyben azt is jelenti, hogy a kisebb valsznusgu helyeken nagyobb intervallumhosszakkal dolgozunk. (Ez hasonlatos ahhoz, hogy vesztesgmentes tmrts esetn az tlagos
tmrtsi arny javtshoz a kisebb valsznusggel elofordul forrsszavakhoz
hosszabb kdszavakat rendelnk.)
Egy adott X valsznusgi vltozhoz keressk az N szintu, optimlis Q kvantlt. Feladatunk az x1 < x2 < < xN kvantlsi szintek s a Q(X ) fggvny
meghatrozsa gy, hogy a D(Q) ngyzetes torzts minimlis legyen. Bebizonythat, hogy egy optimlis kvantl kielgti az albbi kt szksges felttelt:
1. Legkzelebbi szomszd felttel:
jx
Q(x)j = min jx
1iN
xi j
8x 2
R;
vagyis minden vals x kvantlt Q(x) rtke legalbb olyan kzel van x-hez,
mint brmely msik kvantlsi szint.
2. Slypont felttel:
Minden x j kvantlsi szint megegyezik azon Xi mintk tlagval, amelyeket
erre a szintre kvantlunk (Q(Xi ) = x j ).
Az 1. s 2. felttelt egytt LloydMax-felttelnek nevezzk, az ezt kielgto
kvantlt pedig LloydMax-kvantlnak. Ha egy kvantl nem elgti ki a Lloyd
Max-felttel brmelyik rszt, akkor lehetsges egy olyan kvantlt kszteni,
amelynek ngyzetes torztsa kisebb, teht egy nem LloydMax-kvantl nem
lehet optimlis, de ltezik nem optimlis LloydMax-kvantl is.
2.1. plda. Legyen az X valsznusgi vltoz az f1; 2; 3; 4g halmazon egyenletes
eloszls. Pontosan 3 fle 2-szintu LloydMax-kvantlt alkalmazhatunk erre:
Q1 (1) = 1;
Q2 (4) = 4;
2. F ORRSKDOLS H USGKRITRIUMMAL
80
2. Slypont felttel:
Ryi
xi =
yi
x f (x) dx
Ryi
yi
i = 1; : : : ; N ;
f (x) dx
81
2.2. K VANTLS
kompresszor
y = G(x)
kdol
xi = Q(y)
|
y = G(x)
expander
dekdol
- ye
= Q 1 (x i )
{z
- xe
e)
= G 1 (y
kvantl
x=G
1 (y)
-x
-y
Kompanderes kvantl
A kvantlsra a gyakorlatban ltalban olyan alkatrszek rhetok el, melyekkel egyenletes kvantlst valsthatunk meg. Ebben az esetben a kvantlt rtket
kell tmrteni. Gyakran ezt nem akarjuk megtenni, sokkal inkbb azt szeretnnk,
hogy rgztve a kvantlsi szintek szmt, N-et, minimalizljuk a ngyzetes torztst. Ezt gy tesszk, hogy a kvantland
jelet egy monoton nvekedo fggvny
1 1
nyel, a kompresszorral a
2 ; 2 -be kpezzk, ott alkalmazunk egy egyenletes
kvantlt, s a kvantlt rtket a kompresszor inverzvel (az expanderrel) viszszatranszformljuk (2.2. bra). (kompander = kompresszor + expander)
A leggyakrabban alkalmazott nemegyenletes kvantlk a logaritmikus kompresszor karakterisztikt hasznl eszkzk, amelyek a tvkzlo hlzatokban a
beszdkdolst vgzik a 60-as vek ta. Azrt alkalmaznak logaritmikus kvantlst, mert az emberi beszdben a kis amplitdj jelek az rthetosg szempontjbl rendkvl fontosak, ezrt a leheto legnagyobb pontossggal kell ezeket kvantlni, mg a nagy amplitdj jelek esetben a tl nagy jelszintet kell megakadlyozni. A beszdkdolsban ktfle kompander hasznlatos: a -law s az A-law.
Az elobbi az Egyeslt llamokban, Kanadban s Japnban elterjedt. Kompreszszor ill. expander fggvnye:
G (x)
G 1 (x)
ln (1 + jxj)
sgn x
1x1
ln (1 + )
1
jxj 1 sgn x
(1 + )
1x1
2. F ORRSKDOLS H USGKRITRIUMMAL
82
0.6
0.4
0.2
0.1
0.08
0.06
0.04
0.02
0.02
0.04
0.06
0.08
0.1
0.2
0.4
0.6
GA (x)
Ajxj
1+ln A sgn x;
: 1+ln jAxj
1+ln A
sgn x;
8
ln Aj
< jxjj1+
sgn x;
A
1
GA (x) =
: ejxj(1+ln A) 1
A
sgn x;
0 jx j <
1
A
1
A
jx j 1
0 jx j <
1
1+ln A
1
1+ln A
jx j 1
Az alapveto klnbsg az A-law s a -law karakterisztika kztt, hogy az Alawnak kicsit szlesebb a dinamikatartomnya (rtkkszletnek terjedelme), mg
a -lawnak egy kicsit kisebb az alapzaja. A 2.3. brn lthat a kt kompresszor
fggvny. A klnbsg csak a 0-hoz kzeli tartomnyban figyelheto meg, ezrt
a [ 0:1; 0:1 intervallumban brzoltuk a o ket (a vzszintes tengelyhez kzelebb
halad grbe az A-law, mg a tvolabbi a -law).
A finom, egyenletes kvantl ngyzetes torztsa kiterjesztheto a kompanderes esetre. Jellje G(x) a kompresszort s g(x) = G0 (x) a derivltjt. Legyenek
1
2
= y0
<
1
2
83
2.2. K VANTLS
yi = G
(y i ) ;
y0i
i = 1; 2; : : : ; N
0 1
1 = q = N,
yi
1:
y
N Zi
i=1y
f (z) dz
q2i
12
i 1
Ryi
=
f (z) dz
1 N
yi 1
2
12N i=1 G(yi )
yi
valamilyen yi
1 N
12N 2 i
=1
1
yi yi
G(yi 1 )
yi 1
Ryi
f (z) dz
yi
Ryi
1
yi yi
2 =
yi
!2 (yi
yi
1) =
g(z) dz
1 N f (z i )
(y i
12N 2 i
g2 (zi )
=1
yi
1)
zi yi-re. A
N
f (zi )
g2 (zi) (yi
yi
1)
i=1
az
f (z )
dz
g2 (z)
1
12N 2
f (z)
dz:
g 2 (z )
2. F ORRSKDOLS H USGKRITRIUMMAL
84
jh1(x)j
Z
p
dx
1
1
p + q = 1.
Ek-
jh2(x)jq dx
vges, akkor
Z
h1 (x)h2 (x) dx
Z
jh1(x)j
1 Z
p
dx
jh2(x)j
1
Alkalmazzuk a Hlder-egyenlotlensget p = 3; q =
3
2;
dx
h 1 (x ) =
f (x)
g2 (x)
1
3
1=3
(x) dx
h1 (x)h2 (x) dx
Z
Z
Z
=
1 Z
3
h31 (x) dx
f (x)
dx
g2 (x)
f (x)
dx
g2 (x)
2
3=2
h2 (x) dx
1 Z
2
g(x) dx
1
3
g(z) dz = G() G( ) = 12
f (x)
dx
g2 (x)
1
2
= 1.
Azt kaptuk,
3
Z
1=3
(x) dx
Rx
G (x) =
+
R
2
f 1=3 (z) dz
:
f 1=3 (z) dz
85
2.2. K VANTLS
Vektorkvantls
A forrs kimenetnek tbbdimenzis eloszlst felhasznlva kisebb torztst
rhetnk el ugyanakkora bit/minta arny mellett vektorkvantlssal. A forrsszimblumok egyenknti kvantlsa helyett (ahogyan azt skalr kvantl esetn tettk)
szekvencikat, vektorokat kpeznk belolk, s ezeket egytt kvantljuk. (Tekintsk pldul a ktdimenzis esetet. Skalr kvantl alkalmazsa esetn egymsra meroleges tengelyeket felttelezve tglalap alak tartomnyokat kapunk
a skban, mg vektorkvantlval brmilyen szablytalan skidom alak (pldul
kr) tartomnyok kialakthatk.)
Tegyk fel, hogy a forrsunk emberek magassg- s tmegadatait generlja.
Ezek pldul 100 s 200 cm, illetve 20 s 120 kg kz esnek. Ha sszesen 6
biten szeretnnk kvantlni az adatainkat, s skalr kvantlt alkalmazunk, akkor
3-3 bit jut a magassgra s a tmegre egyarnt. Az intervallumokat 8 egyenlo
rszre osztva, azok kzepn kijellve a szinteket (a szemlletessg kedvrt ktdimenzis koordintarendszerben brzolva az gy lehetsges kvantlsi pontokat:
magassgtesttmeg koordintj pontok), egy (22 kg, 197 cm) adatprt ugyanolyan torztssal kvantlunk, mint egy (70 kg, 180 cm)-est. Holott nyilvnvalan az
elobbi adatpr nem fog elofordulni, mg az utbbi gyakori lesz. Vektorkvantls
alkalmazsval megtehetjk, hogy pldul a statisztikai vizsglatok szerint leggyakoribb magassgtesttmeg egyenes krnyezetben biztostunk kis torztst,
mg a gyakorlatilag lehetetlen adatprok esetben megengednk nagyobb torztst is.
Legyen X egy d-elemu forrsvektor f (x) surusgfggvnnyel. A d-dimenzis
vektorkvantl egy Q(x) fggvny, amely az x 2 R d bemenetet az x1 ; x2 ; : : : ; xN 2
d vektorok egyikbe kpezi le. A kvantlt egyrtelm
uen jellemzi az N kiR
meneti vektor, s a hozzjuk tartoz B1 ; B2 ; : : : ; BN tartomnyok, amelyek R d
egy partcijt alkotjk (diszjunktak, s lefedik R d -t), teht Q(x) = xi , ha x 2 Bi ,
i = 1; 2; : : : ; N. A torzts vizsglatra tovbbra is a ngyzetes torztsi mrtket
fogjuk hasznlni:
D(Q) =
1
EkX
d
Q(X)k
1 N
d i
=1
Bi
x2
kx
xi k2 f (x) dx
2. F ORRSKDOLS H USGKRITRIUMMAL
86
s ss s ss
s s s s
s s
Bi = fx : kx
xi k kx
x j k;
8 j 6= ig
xi = argmin
y
Bi
kx yk2 f (x) dx
87
2.2. K VANTLS
s
s
s
s
s
s
s
2. F ORRSKDOLS H USGKRITRIUMMAL
88
A rszsvos kdols (subband coding) bevezetshez s a mintavtelezshez szksgnk van a gyengn stacionrius folyamat spektrlis surusgfggvnynek s a
gyengn stacionrius folyamatok lineris szursnek fogalmra. Legyen X (t ) egy
0 vrhat rtku, R() kovarianciafggvnyu gyengn stacionrius folyamat, azaz
R() = E(X (t + )X (t ))
minden t-re. Ekkor R() pozitv szemidefinit, teht tetszoleges f (t ) fggvnyre
ZZ
s) f (t ) f (s) dtds 0:
R(t
2
X (t ) f (t ) dt
ami nemnegatv.
Tegyk fel, hogy R()-nak ltezik a Fourier-transzformltja:
s ( ) =
R(t )e jt dt :
nevezzk. R() szimmetrija miatt s() is szimmetrikus, tovbb R() pozitv szemidefinit tulajdonsgbl kvetkezik, hogy
s() 0:
Legyen h(t ) egy ngyzetesen integrlhat fggvny:
Z
h(t )2 dt < :
2.3. L INERIS
89
SZ URS
az
Z
Y (t ) =
h(s)X (t
s) ds
H () =
h(t )e jt dt :
H () =
1; ha jj 2 [b; B
0; egybknt
=
=
E
h (s )X (
s) ds
Z Z
h(t )X (0
t ) dt A =
h(s)h(t )E(X (
s)X ( t )) dsdt =
h(s)h(t )R( + t
s) dsdt =
Z Z
=
Z Z
=
1
2
1
h(s)h(t )
2
0
j(+t s)
Z Z
h(s)h(t )e
s() ddsdt =
1
j(t s)
dsdt A e
s() d =
2. F ORRSKDOLS H USGKRITRIUMMAL
90
1
2
jH ()j2e
s() d
A svszuro esetn
jH ()j2s() d
1
Re(0) =
1
2
s() d;
jj2[b B
;
2.4. Mintavtelezs
Legyen X (t ) egy 0 vrhat rtku, gyengn stacionrius folyamat R() kovarianciafggvnnyel s s() spektrlis surusgfggvnnyel. Az X (t ) folyamat most
mind idoben, mind rtkkszletben folytonos, teht egyltaln nem nyilvnval,
hogy mikor lehetsges torztsmentes adattmrts. Ebben a szakaszban mdszert mutatunk az ido diszkretizlsra, ez a mintavtelezs. Legyen T > 0 a
mintavteli ido, az fX (kT ); k = 0; 1; 2; : : :g diszkrt ideju folyamatot az X (t )
folyamat mintavtelezsnek nevezzk.
Az a krds, hogy a mintavtelezsbol mikor reproduklhat az X (t ) tkletesen.
Vlasztunk egy interpoll fggvnyt:
f (t ) =
sin (t )
:
t
k=
X (kT ) f
t
91
2.4. M INTAVTELEZS
lim E Xb(t )
N !
X (kT ) f
!
2
t
k= N
= 0:
Nyilvn t = kT esetn
Xb(t ) = X (t );
vagyis a mintavteli idopontokban a reprodukci tkletes.
2.7. ttel (Mintavteli ttel). Ha az X (t ) folyamat B svra korltozott, vagyis
R(0) =
1
2
s() d =
s
T
<
1
2
ZB
s() d;
;
B
PfX (t ) = Xb(t )g = 1:
B
2
<
1
;
2B0
2. F ORRSKDOLS H USGKRITRIUMMAL
92
2.2. lemma. Legyen
Ht () = e j(t
k)
f (t
k);
Ht () = 1:
B IZONYTS : Jellje
H () =
e jt f (t ) dt
H () =
1; ha jj
0; egybknt
ugyanis
1
2
H ()e
jt
1
2
jt
=
=
=
=
1 e jt
2
jt
e jt
2 jt
sin (t )
=
t
f (t );
e
d =
jt
jk
ahol
gk;t
1
2
1
2
Gt ()e
jk d
H ()e
jt jk
93
2.4. M INTAVTELEZS
1
2
=
=
jt
f (t
H ( ) e
j(t k)
e
k );
f (t
jk
k)e
kvetkezskpp
1 = H () = f (t
k)e j(t
k)
= Ht ():
E(X (t )
(2.20)
(2.21)
E X (t ) X (kT ) f
k
R(t
k
Vezessk be a t 0 =
t
T
1
2
k
1
2
k
kT ) f
Z
!
t
t
j(t kT )
j(t kT )
s() d f
ZB
B
s() d f
t
T
t
jellst, ekkor
E(X (t )Xb(t ))
1
2
k
ZB
B
e jT (t
0 k)
s() d f (t 0
k) =
2. F ORRSKDOLS H USGKRITRIUMMAL
94
1
2
1
2
amennyiben jjT
dik tagot!
E(Xb2 (t ))
<
R((k
l
1
2
k l
Z
1
2
s() d = R(0);
1
2
1
2
1
2
l )T ) f
<
t
t
t
k f
s() d f
j(lT t )
t
!
t
!
t
j(kT t )
t
k f
j(k l )T
(2.22)
e
=
ZB
Ht 0 (T )s() d =
, ami teljesl, ha BT
ZB
t
k f
s() d =
Ht 0 (T )Ht 0 ( T )s() d =
ZB
Ht 0 (T )Ht 0 ( T )s() d =
ZB
s() d = R(0)
(2.23)
2R(0) + R(0) = 0:
2.5. T RANSZFORMCIS
95
KDOLS
yn =
an i x i
;
i=0
xn =
bn i y i
;
i=0
2. F ORRSKDOLS H USGKRITRIUMMAL
96
k 1
i=0
i =0
y2i = yT y = (Ax)T Ax = xT AT Ax = xT x =
xi2
(2.24)
(c + log (Y j )) = M
j=0
M
c=
log (Y j )
j =0
A gyakorlatban hrom transzformci terjedt el leginkbb. A diszkrt koszinusz transzformci (DCT) k k-as A mtrixnak elso sorban csupa p1k elem
ll, mg az ez alatti elemek az
r
ai; j =
2
cos
k
(2 j
1)(i
2k
1)
2.5. T RANSZFORMCIS
97
KDOLS
a i; j =
i j
sin
k+1
k+1
2
:
A2k
A2k
A2k
A2k 1
A2k 1
1
1
A2 =
A1
A1
A1
A1
1
1
1
1
A=
1
B1
B
B1
B
1 B
1
p B
B
8 B1
B1
B
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1C
C
1C
C
1C
C
1C
C
1C
C
1A
1
2. analzis
szuro
3. analzis
szuro
..
.
M. analzis
szuro
#
#
#
#
M
1. kdol
1. dekdol
2. kdol
2. dekdol
3. kdol
3. dekdol
..
.
csatorna
2. F ORRSKDOLS H USGKRITRIUMMAL
1. analzis
szuro
..
.
..
.
M. kdol
M. dekdol
98
"
"
"
"
M
1. szintzis
szuro
2. szintzis
szuro
3. szintzis
szuro
..
.
..
.
M. szintzis
szuro
2.6. P REDIKTV
KDOLS
(DPCM)
99
elemi svszlessgek ktszeresvel kell ezt megtennnk a visszallthatsg rdekben. Teht a mintk szmt cskkenthetjk a szurok kimenetn, hiszen itt
kisebb a svszlessg, mint a szurobank bemenetn volt. Ezt decimlsnak vagy
alulmintavtelezsnek (downsampling) nevezzk. A decimls mrtke a szuro
bemenetn illetve kimenetn lvo svszlessgek arnytl fgg. A decimls
utn kvetkezik a kdols. A kdolt jelet tkldjk a csatornn, majd annak tloldaln dekdoljuk. Fellmintavtelezzk (upsampling), vagyis a mintk kz
megfelelo szm 0-t illesztnk, gy lltva vissza az eredeti msodpercenknti
mintaszmot. Vgl egy szurobankon vezetjk keresztl a jelet, amely elvgzi a
fordtott transzformcit, s gy a kimeneteit sszegezve kapjuk a vgleges jelet.
Felmerlhet a krds, hogy mirt j ez az egsz? Az emberi rzkszervek,
akr a hang, akr a (mozg)kp rzkels tern frekvenciafggoek. Ezt a tnyt
gy hasznlhatjuk ki, hogy az rzkels szempontjbl fontos frekvenciasvok
pontosabb rekonstrukcijra treksznk, mg a kevsb fontos svokban nagyobb
torztst engednk meg. Msrszrol az egyes szurok kimenetn klnbzo a szrsngyzet, s ennek megfeleloen rendre klnbzo szm bitet alloklhatunk a
kvantlshoz a (2.24) egyenlet szerint, s ezzel lnyeges tmrtst rhetnk el.
2. F ORRSKDOLS H USGKRITRIUMMAL
100
147;
4; 5; 3;
2;
4; 2:
7:3; 2:1;
0 :6 ;
3:2;
2:4
A vesztesges tmrtshez hasznljunk egy 7 szintu kvantlt a kvetkezo kimeneti szintekkel: 6; 4; 2; 0; 2; 4; 6. A kvantlt rtkek:
6; 4; 4;
6; 2; 0;
4;
0 :3 ;
0:8;
2:1;
2;
2:6
2.6. P REDIKTV
KDOLS
101
(DPCM)
1 + dn
x1
db1
Q(d1 ) = d1 + q1
xb1
xb0 + db1 = x0 + d1 + q1 = x1 + q1
d2
x2
db2
Q(d2 ) = d2 + q2
xb2
xb1 + db2 = x1 + q1 + d2 + q2 = x2 + q1 + q2 :
x0
x1
xbn = xn + qk :
k=1
xbn
1:
x1
db1
Q(d1 ) = d1 + q1
xb1
xb0 + db1 = x0 + d1 + q1 = x1 + q1
d2
x2
db2
Q(d2 ) = d2 + q2
xb2
x0
xb1
2. F ORRSKDOLS H USGKRITRIUMMAL
102
xn +
pn
m6
dn
kvantl
dbn +
pn
-+ ?+
pn
prediktor
dbn
xbn
6
+
prediktor
xbn
dekdol
kdol
2.7. bra. DPCM.
ltalnostva:
xbn = xn + qn ;
teht a kvantlsi zaj nem akkumulldik.
Az a clunk, hogy minl kisebb klnbsgi rtkeket kapjunk. Ehhez xn rtkt nem csak xbn 1 segtsgvel becslhetjk, hanem a rekonstrult sorozat elozo
rtkeinek fggvnyvel is. Az ezt megvalst eszkz a prediktor:
pn = f (xbn
bn 2 ; : : : ; xb0 ):
1; x
Itt a klnbsgkpzs a
dn = x n
pn
kifejezssel trtnik. Az eredo torzts ebben az esetben sem halmozdik. Az eddig elmondottakat megvalst rendszer a 2.7. brn lthat, az eljrs neve klnbsgi impulzuskd modulci (differential pulse code modulation, DPCM).
Az eljrst a Bell Laboratriumban dolgoztk ki a 40-es vek vgn, s foknt a
beszdkdolsban terjedt el, gy szleskruen hasznljk a telekommunikciban.
A klnbsgi kdol rendszerek, mint a DPCM, azzal rik el cljukat, vagyis
a tmrtst, hogy cskkentik a bemeneti sorozat szrst s dinamikatartomnyt. A szrs cskkentse attl fgg, hogy a prediktor mennyire jl tudja becslni a kvetkezo szimblumot az elozoleg rekonstrultakbl. A 2.7. szakaszban
vizsgljuk a becsls problmakrt.
A bemeneti jelek tulajdonsga vltozhat az idoben. Ehhez tud alkalmazkodni
az adaptv DPCM rendszer. Az alkalmazkods trtnhet a kdol bemenetre rkezo jel (xn ) alapjn, ekkor elore adaptv mdszerrol beszlnk, vagy a kimenet
(xbn ) alapjn, ez a htra adaptv mdszer. Elore adaptv esetben, mivel a dekdernek nem ll rendelkezsre a kdol bemeneti jele, ezrt a rendszer mdostott
2.6. P REDIKTV
KDOLS
(DPCM)
103
paramtereit is t kell vinni. Htra adaptv esetben ilyen problma nem merl fel,
hiszen a kdol kimenett megkapja a dekder.
A kvantlt s a prediktort egyarnt tervezhetjk adaptvra (ADPCM), ez
utbbirl a 2.7. szakaszban szlunk. Elore adaptv kvantl esetn a bemenetet
blokkokra bontjuk, minden lpsben kiszmoljuk az aktulis blokkra optimlis
kvantl paramtereit, s tkldjk a dekdernek kiegszto informciknt.
A gyakorlatban inkbb a Jayant-kvantl nven ismert htra adaptv mdszert hasznljk. Itt minden egyes kvantlsi intervallumhoz egy szorztnyezot
rendelnk, amely a kvantl belso (orighoz kzeli) tartomnyainl 1-nl kisebb,
mg a klso rszeken 1-nl nagyobb. A tnyezok az origra szimmetrikusan helyezkednek el. Annak fggvnyben, hogy az aktulisan kvantlt rtk melyik
intervallumba esik, ezen intervallum szorztnyezojvel korrigljuk a lpskz
rtkt. Ha a kvantlt rtk kicsi, akkor finomtjuk a lpskzt, mg nagy rtkek
esetn nagyobb lpskzt fogunk alkalmazni.
2.5. plda. A 2.8. bra egy 8 szintu kvantlt brzol. Legyenek az egyes intervallumok szorztnyezoi: M1 = M8 = 1:2; M2 = M7 = 1; M3 = M6 = 0:9; M4 =
M5 = 0:8, a kezdeti lpskz pedig 0 = 0:5. A kvantland sorozat: 0:1; 0:2;
0:2; 0:1; 0:2; 0:5; 0:9; 1:5; 1:0; 0:9; : : :. Az elso bemeneti adatot a kezdeti 0:5
lpskzzel az 5. szintre kvantljuk, a kimenet rtke 0:25 lesz, a hiba 0:15. gy az
j lpskz 1 = M5 0 = 0:8 0:5 = 0:4 lesz. A kvetkezo adat a 4. intervallumba
esik, most a lpskz 0:4, teht a kimeneten 0:2 jelenik meg, s a lpskz j
rtke 2 = M4 1 = 0:32. gy folytatva az eljrst, az eredmny tblzatos formban a 2.9. brn lthat.
Vegyk szre, hogyan alkalmazkodik a kvantl az inputhoz. Kezdetben a
bemeneti rtkek kicsik, ezrt a lpskz folyamatosan cskken, ezzel egyre jobb
kzeltst biztostva. Majd nagyobb bemeneti rtkek kvetkeznek, gy a lpskz
is nvekszik. Megfigyelhetjk, hogy a hiba rtke viszonylag nagy az tmeneti
szakaszban.
A kvantlsi lpskzt a konkrt megvalstsok termszetesen vges pontossggal brzoljk, ezrt el kell kerlnnk azt a szitucit, hogy a lpskz folyamatos cskkentsvel, az nullv vljon. Be kell vezetnnk egy min rtket,
amelynl nem vlasztjuk kisebbnek a lpskzt. Hasonl okok miatt egy max is
szksges.
A DPCM egyszerubb formja, a delta modulci (DM). Ez egy 1 bites (2
szintu) kvantlval rendelkezo DPCM. A 2 szintu kvantlval csak kimeneti
rtkeket llthatunk elo, vagyis (egy folytonos jel mintavtelezsvel add) kt
minta kztti eltrst csak ezzel reprezentlhatjuk. Amennyiben egy adott bemeneti sorozatban a mintk kztti klnbsg nagyon eltr -tl, a kimeneten egy lland torzts jelentkezik. Ezt gyakoribb mintavtelezssel ellenslyozhatjuk. A
2. F ORRSKDOLS H USGKRITRIUMMAL
104
6
kimenet
7=2
7
5=2
6
3=2
3
=2
4
3
5
=2
3 bemenet
3=2
5=2
7=2
n
0
1
2
3
4
5
6
7
8
9
10
11
n
bemenet
0:5
0 :1
0:4
0:2
0 :2
0:32
0 :1
0:256
0:2048
0:3
0 :1
0:1843
0 :2
0:1475
0:1328
0 :5
0 :9
0:1594
1 :5
0:1913
0:2296
1 :0
0 :9
0:2755
szint
szma
5
4
5
5
3
5
6
8
8
8
8
8
szint
rtke
0:25
0:2
0:16
0:128
0:3072
0:0922
0:2212
0:4646
0:5578
0:6696
0:8036
0:9643
hiba
0:15
0:0
0:04
0:028
0:0072
0:0078
0:0212
0:0354
0:3422
0:8304
0:1964
0:0643
j lpskz
1 = M5 0
2 = M4 1
3 = M5 2
4 = M5 3
5 = M3 4
6 = M5 5
7 = M6 6
8 = M8 7
9 = M8 8
10 = M8 9
11 = M8 10
12 = M8 11
2.6. P REDIKTV
KDOLS
rrrrrrrrrr
105
(DPCM)
rr r
rr r r r r r r r r r r r r r
rr
2. F ORRSKDOLS H USGKRITRIUMMAL
106
ahol 1 < M1 = M12 < 2. A memria nvelsvel, vagyis pldul 2 mintra viszszatekintve tovbb cskkentheto a torzts:
n+1 =
8
M1 n ; ha sgn sn 2 = sgn sn 1 = sgn sn
>
>
<
M2 n ; ha sgn sn
2=
sgn sn
1=
sgn sn
M4 n ; ha sgn sn
2=
sgn sn
1=
sgn sn
1 + n 0 ;
ahol egy 1-nl alig kisebb konstans, n rtke pedig 1, ha a kvantl legutbbi
K darab kimeneti rtkbol J darabnak azonos volt az elojele, egybknt 0. Teht
egy K hossz ablakon keresztl figyeljk a bemenetet, s ebbol kvetkeztetnk
annak loklis viselkedsre. Jellemzo rtkek: J = K = 3.
= E(Xn
pn )2 ;
ahol
pn = f (xbn
bn 2 ; : : : ; xb0 )
1; x
a prediktor kimenete. Feladatunk azon f () megtallsa, amely minimalizlja 2d et. Ez azonban nem ilyen egyszeru. Egyrszt xbn = Xn + qn , msrszt qn fgg
dn szrstl, gy f () megvlasztsa befolysolja 2d -et, ami pedig hatssal van
a rekonstrult xbn sorozatra, ettol pedig fgg f () megvlasztsa. A kr bezrult.
Ez a csatols (coupling) mg egyszeru forrsok esetn is rendkvl bonyolultt
teszi az explicit megoldst. Mivel a gyakorlati forrsok kzel sem idelisak, a
problma szmtsignye kzbentarthatatlann vlik a legtbb alkalmazsban.
2.7. L INERIS
107
BECSLS
Elkerlhetjk ezt a nehzsget finom kvantls felttelezsvel, vagyis felteszszk, hogy a kvantl lpskze olyan kicsi, hogy xbn helyett rhatunk Xn -et, ezrt
pn = f (Xn
1 ; Xn 2 ; : : : ; X0 ):
pn := ai xbn
i:
i =1
!2
=E
ai Xn
Xn
(2.25)
i=1
a j d
E
a j
!2 1
Xn
ai Xn
A=
i=1
!!
2Xn
Xn
ai Xn
i=1
2E
Xn
ai Xn
Xn
= 0;
i=1
ahol kihasznltuk a vrhatrtk-kpzs linearitst. gy j = 1; : : : ; N-re N egyenletet kapunk, amelyek N ismeretlent tartalmaznak. Ezeket trendezve kapjuk:
N
ai R(i
i =1
j ) = R( j);
j = 1; : : : ; N ;
2. F ORRSKDOLS H USGKRITRIUMMAL
108
0
B
B
B
R=B
B
R(0)
R(1)
R(2)
..
.
R(N
R(1)
R(0)
R(1)
..
.
1) R(N
0
a1
B a2 C
B C
B C
a = B a3 C
B . C
.. A
aN
R(2)
R(1)
R(0)
..
.
2) R(N
..
R(N
R(N
R(N
C
..
A
.
R(0)
3)
0
1)
2)C
C
3)C
C
R(1)
B R(2) C
C
B
C
B
p = B R(3) C
B . C
.. A
R(N )
2.7. L INERIS
109
BECSLS
8k-ra. (R l (k) = R l (
( )
( )
k))
Az elore adaptv mdszer megkveteli, hogy puffereljk a bemenetet, ezzel
ksleltetst visznk a rendszerbe, ami pldul beszdkdols esetn nem szerencss. Ugyanis egyetlen kdoldekdol pr esetn mg elviselheto a ksleltets
mrtke, azonban egy telefonkapcsolatban szmos DPCM kdol s dekdol
vehet rszt (pl. a nagy tvolsg miatt), s ekkor az eredo ksleltets mr jelentos
lehet. Sot, itt is, mint elore adaptv kvantls esetn, kiegszto informcikat kell
tvinni, hiszen a dekdol nem ismeri a kdol bemeneti jelt.
Htra adaptv esetben a prediktor alkalmazkodshoz a dekder szmra is
rendelkezsre ll jelet, a kdol kimenett hasznljuk. Eloszr az egyszerusg
kedvrt vegynk egy elsorendu prediktort. Ekkor a jel valdi s becslt rtke
kztti eltrs ngyzete az n-edik idopillanatban:
dn2 = (Xn
a1 xbn
1)
a1
2dn xbn
bn 1 =
1 )x
(n)
= a1 +
d xb
n n
1:
(2.28)
1;
dn2 =
Xn
ai xbn
i=1
2. F ORRSKDOLS H USGKRITRIUMMAL
110
Ennek a j szerinti parcilis derivlsval kapjuk a j-edik prediktoregytthat szmtsra szolgl kifejezst:
(n+1)
aj
Vektoros formban:
(n)
= aj
bn j :
+ dbn x
bn
A(n+1) = A(n) + dbn X
ahol
xbn
B xbn 1 C
B
C
. C;
.. A
bn = B
X
xbn
s
dbn = xbn
N +1
N
ai xbn
i:
i=1
2.8. Beszdtmrts
A beszdtmrto eljrsok terletn eroteljes fejlods volt megfigyelheto az elmlt vtizedekben. A minl alacsonyabb bitsebessg mellett minl jobb minosgu
hang tvitelnek ignye foleg a nyilvnos cl tvkzls rszrol fogalmazdott
meg. Kezdetben az eddigiekben megismert ltalnos cl eljrsokat alkalmaztk.
Az ismertetsre kerlo megoldsokat a nyilvnos tvkzlohlzatokban hasznlt impulzuskd modulcihoz (Pulse Code Modulation, PCM) hasonltjuk.
Hatrozzuk meg ennek bitsebessgignyt! A telefon-minosg viszonylag kis
svszlessggel is beri. Az analg 3:4 kHz svszlessgu beszdjelbol (nmi
rtartssal) msodpercenknt 8000 mintt vesznk, s 8 bittel kvantljuk, gy
8000 8 = 64 kbps-ot kapunk. Az 1972-ben megjelent G.711-es tvkzlsi szabvny logaritmikus PCM kdolst hasznl, azaz kompanderes kvantlt (mint errol
a 2.2. szakaszban sz volt: -law, A-law).
A beszdtmrtssel szemben tmasztott megnvekedett kommunikcis
igny elkerlhetetlenn tette egy j eljrs kifejlesztst, amelynek kisebb a bitsebessgignye, de emellett j minosgu, jl rtheto beszdtvitelt tesz lehetov.
A kvnalmaknak megfelel az 1984-es G.721 szabvny, amely 32 kbps-os tviteli
sebessgvel megduplzta a kiptett vonalakon folytathat beszlgetsek szmt.
A G.721 adaptv klnbsgi kdolson (ADPCM) alapul. Kihasznlja az emberi
2.8. B ESZDTMRTS
111
112
2. F ORRSKDOLS H USGKRITRIUMMAL
x n = ai x n
i + Gn ;
(2.29)
i=1
2.8. B ESZDTMRTS
113
114
2. F ORRSKDOLS H USGKRITRIUMMAL
lzis alap kdolk, amelyek a gerjeszto jelet egy optimalizl hurokban hatrozzk meg. A kdol egyben dekdolt is tartalmaz, amely a szintzist vgzi.
Az gy szintetizlt jelbol kivonja a bemeno jelet, s az eloll hibajelet minimalizlja. A szintzis ltali analzis alap kdolk egyike a tbbfrekvencis lineris
prediktv kdol (MultiPulse Linear Predictive Coding, MultiPulse Excitation,
MPE) eljrs, amely minden szegmensben egyidejuleg tbb frekvenciasszetevot
hasznl. A lehetsges frekvenciasszetevo-mintt egy kdknyvbol vlasztja ki
olymdon, hogy a valdi s a szintetizlt beszdszegmens kztti, az emberi halls tulajdonsgainak megfeleloen slyozott eltrs minimlis legyen (ez egy specilis vektorkvantlnak tekintheto). Az MPE 6:4 kbps tviteli sebessggel j
minosgu beszdet produkl. Ennek tovbbfejlesztett vltozata a kddal gerjesztett lineris prediktv kdol (Code Excited Linear Prediction, CELP), ahol a
lehetsges mintkat tartalmaz (szuk) kdknyv helyett szmos gerjeszetojelet
engednk meg (egy nagyon nagy mretu sztochasztikusan kitlttt kdknyvet
hasznlunk). Minden szegmens esetn a kdol megkeresi azt a gerjesztovektort,
amelynek alkalmazsval a legtkletesebb szintetizls lehetsges. A CELP j
minosgu beszdet biztost 4:8 kbps-os sebessggel, annak rn, hogy kimerto
keresst kell vgezni egy tipikusan 1024 mretu kdknyvben.
A GSM rendszer teljes sebessgu kdolsa az MPE-hez hasonl mdszeren,
a szablyos impulzus gerjesztsen (Regular Pulse Excitation, RPE) alapul. MPE
esetn egy rvid periduson bell (515 ms) meghatrozott szm (M db) impulzust adunk. Egy adott impulzus amplitdjt s helyt az elozo M darab impulzus
alapjn hatrozzuk meg. RPE esetn az impulzusok szma szintn rgztett, s az
MPE-vel szemben ezek helye sem vlaszthat szabadon. Ezltal szuboptimlis
megoldshoz jutunk, de egyben egyszerusdik is a kdol. Az RPE-n alapul rvid ideju szintzis szurot a GSM rendszer egy hossz ideju becslo hurokkal (Long
Term Prediction) egszti ki. (Ez a kzepes bitsebessgu kdolk, mint pl. az RPE
esetn nem ltfontossg, de ltalban alkalmazzk a minosg nvelse rdekben.) 8000 minta/s mintavtelezsi sebessg mellett 13 kbps-os kdsebessget
biztost, ugyanis 20 ms-onknt 260 bitnyi paramtert (tmrtett informcit) llt
elo.
A GSM flsebessgu kdolsa a CELP csaldba tartoz vektorsszeggel gerjesztett lineris prediktv kdol (Vector-Sum Excited Linear Prediction,
VSELP) megoldson alapul. A gerjesztsre a kdknyvbol szrmaz rtkek
szolglnak, melyek rszben rgztettek, rszben adaptv jelleguek. A zngs jelleg mrtknek vizsglata alapjn a kdol elrendezse ngyfle lehet. A 0 kategria jelenti a zngtlen, az 13 pedig az egyre nvekvo mrtkben zngs jellegu
beszdszegmenst. A struktra 5 ms-os n. alkeretenknt vltozhat. A kdknyvben kimerto keresst alkalmaznak az alkeretenknti gerjesztosorozat meghatro-
2.9. H ANGTMRTS
115
2.9. Hangtmrts
Az elozo szakaszban az emberi beszd minl gazdasgosabb, minl kisebb bitsebessget ignylo tvitelre koncentrltunk. Azonban a tovbbtand vagy troland hanginformci termszetesen nemcsak beszd lehet, hanem pldul zene
is. Az ezen a terleten hasznlhat mdszereket tekintjk t az albbiakban.
A hangtmrtsben mrcnek szmt CD-minosg azt jelenti, hogy 44100
Hz-cel mintavteleznk. Ez a mintavteli ttel rtelmben a legfeljebb 22050
Hz frekvencij hangok visszalltst teszi lehetov (valjban mintavtelezs
elott a 20 kHz-es svra szurnek). A mintkat 16 bites kvantlval kvantljuk.
Ez 44100 16 2 1400 kbps tviteli sebessget ignyel (a 2-es szorz a sztere
tvitel 2 kln csatornja miatt van).
A vesztesgmentes tmrtsi mdok (pl. Huffman-kdols, LZW) itt nem
igazn hatkonyak, az eredmny ltalban az eredeti mretnek 90 %-a krl van.
A modern, hangtmrtsre kifejlesztett eljrsok az emberi halls sajtossgait kihasznlva rnek el az ltalnos cl mdszereknl jobb tmrtsi arnyt,
gy amellett, hogy vesztesges eljrsok, a vesztesg mrtke nem is egyenletes
sem a frekvencia-, sem az idotartomnyban. Mivel itt a kzel tkletes hang viszszalltsa a cl, ezrt a hangtmrtsben nem megengedett a szintetizls.
Az emberi halls tartomnya 20 Hz 20 kHz, a legnagyobb rzkenysge
2 s 4 kHz kztt van, felbontsa (a kvantlsi lpcso) frekvenciafggo. Ebbol
kvetkezoen kt azonos intenzits, de klnbzo frekvencij hang klnbzo
hangossgrzetet kelt a hallgatban, s azokban a tartomnyokban, amelyekben
flnk kevsb rzkeny, jobban elviseljk a torztst. Hallsunkra jellemzo kt
elfedsi jelensg. Az egyik a frekvenciatartomnybeli elfeds, melynek lnyege,
hogy egy adott frekvencij, nagy intenzits hang (maszkol hang) a vele egy
idoben szl s kzeli frekvencin lvo kisebb intenzits hangokat elfedi, vagyis
azok nem hallhatak. A msik az idotartomnybeli elfeds: egy adott frekvencij nagy intenzits hang a kzeli frekvencin lvo kisebb intenzits hangokat
nemcsak akkor fedi el, amikor egytt szlnak, hanem kis ideig mg a nagy intenzits hang bekapcsolsa elott (kb. 2 ms-ig) vagy kikapcsolsa utn (kb. 15 ms-ig)
sem halljuk a kisebb intenzitsakat.
Mivel az emberi halls legjobban a frekvenciatartomnyban modellezheto,
116
2. F ORRSKDOLS H USGKRITRIUMMAL
szurobank
FFT
szurobank
szintzis
maszkol
kszb
SMR
-- sklz
s
-- kvantl
- dinamikus
bit s
- sklafaktor
--
MUX
digitlis csatorna
PCM
kimenet
analzis
alloktor
s kdol
sklz s
kvantl
inverze
DEMUX
dinamikus
bit s
sklafaktor
dekdol
2.9. H ANGTMRTS
PCM
bemenet
sklafaktor
adatok
117
PCM
kimenet
analzis
szurobank
FFT
szurobank
szintzis
-- MDCT
dinamikus
-- ablakozssal
-
---
RD szablyozsi kr
sklz
s
kvantl
6 6 6
---
Huffmankdol
inverz MDCT
dinamikus
ablakozssal
kiegszto
informci
kdol
maszkol
kszb
sklz s
kvantl
inverze
Huffmandekdol
DEMUX
118
kiegszto
informci
dekdol
MUX
digitlis csatorna
2. F ORRSKDOLS H USGKRITRIUMMAL
PCM
bemenet
2.10. K P -
S VIDEOTMRTS
119
2. F ORRSKDOLS H USGKRITRIUMMAL
120
Az emberi lts
A vesztesges kp s videotmrtsi mdszereket az emberi ltsrl meglevo
ismereteket felhasznlva alaktottk ki. Az informcimennyisg cskkentse rdekben a kp azon rszleteit kdoljuk kis pontossggal, amelyekre a szemnk
kevss rzkeny, s azokat kdoljuk majdnem eredeti minosgben, amelyekre a
szemnk igen rzkeny.
A sznek s a fnyessg rzkelsrt a szemben tallhat fnyrzkelo receptorok, a csapok s a plcikk a felelosek. A plcikk azonban csak a lts
perifrilis tartomnyban illetve igen kis fnyessgek esetn jtszanak jelentos
szerepet az rzkelsben, jelenltktol ezrt most eltekinthetnk. Hromfle klnbzo spektrlis rzkenysgu csap tallhat a szemnkben. Ezek a csapok az
o ket ro fnyre linerisan reaglnak. Spektrlis rzkenysgket jelljk rendre
s()-val, m ()-val s l()-val. Ezek a fggvnyek a lthat spektrumtartomnyon (360 nm830 nm) kvl 0 rtket, bell pedig nemnegatv rtket vesznek
fel. s() cscsa a kisebb hullmhosszak tartomnyban tallhat, m () cscsa a
kzepes hullmhosszaknl, mg l() cscsa a nagyobb hullmhosszaknl. Ezrt
kaptk nevket az angol short, medium s long szavak kezdobetuibol.
Egy L() spektrlis energiasurusggel rendelkezo fnysugr ltal kivltott inger az albbi vektorral jellemezheto:
0 1
Z
S
s()
M A = m
()A L() d
L
l()
2.10. K P -
121
S VIDEOTMRTS
1.8
z()
1.6
1.4
1.2
x()
y()
1
0.8
0.6
0.4
0.2
0
350
400
450
500
550
600 650
[nm]
700
750
800
850
T
=M
S M L
T
Z
X
x()
Y A = y()A L() d
Z
z()
=M
T
s() m () l()
2. F ORRSKDOLS H USGKRITRIUMMAL
122
rendeltnk (Y ; x; y) koordintkat. Termszetesen egy adott (Y ; x; y) koordintahrmas tbb klnbzo spektrumhoz is hozz lett rendelve.
Ha csak a sznrzettel foglalkozunk, elegendo az (x; y) koordintaprossal szmolni. Ennek az (x; y) sznkoordinta-rendszernek az az elonye, hogy kt tetszoleges spektrumbl additvan kikeverheto spektrumok a kt kiindulsi spektrum
ltal meghatrozott szakaszon fekszenek. Matematikailag, ha L1 () spektrumhoz
az (x1 ; y1 ) pont tartozik, s L2 ()-hoz pedig (x2 ; y2 ), akkor tetszoleges nemnegatv -re s -re az L() = L1 () + L2 () spektrumhoz tartoz (x; y) pont az
(x1 ; y1 )-et s (x2 ; y2 )-t sszekt
o szakaszon fekszik. Sot, ltalnossgban is kimondhat, hogy az Li () spektrumok nemnegatv egytthats linerkombinciihoz ( i Li (); 0) rendelt (x; y) koordintk az Li () spektrumokhoz rendelt
i
(x i ; y i )
2.10. K P -
123
S VIDEOTMRTS
0.9
= 525 nm
0.8
= 550 nm
0.7
zld
0.6
= 500 nm
= 575 nm
0.5
0.4
= 600 nm
vrs
= 625 nm
0.3
0.2
= 475 nm
0.1
kk
0
0
0.1
0.2
0.3
0.4
x
0.5
0.6
0.7
0.8
ordintk csak a hrom alapszn ltal hatrolt hromszgn belli szneket tudjk
lerni, de ha gyis csak ezt a tartomnyt tudjuk megjelenteni, akkor nincs is rtelme az ezen tartomnyon kvli sznek lersnak.
Egyes esetekben el kell vlasztanunk a fnyessg- s a szninformcit. Erre
termszetesen alkalmasak lennnek az (Y ; x; y) koordintk, viszont ezek vals rtkuek, nehzkes velk szmolni s nehz o ket hatkonyan tmrteni. Tovbbi
htrny, hogy br Y a fnyessgrzetet jellemzi, szemnk nem egyenletesen rzkeny az Y koordintban: pldul az Y = 0:1 s az Y = 0:2 kztti fnyessgklnbsget jval nagyobbnak ltjuk, mint az Y = 0:7 s Y = 0:8 kztti klnb-
2. F ORRSKDOLS H USGKRITRIUMMAL
124
Y0
16
65:738
1
Cb A = 128A +
37:945
256
128
Cr
112:439
129:057
74:494
94:154
25:064
112:439 A R0 ; G0 ; B0
18:285
Ennek a sznkoordinta-rendszernek az Y 0 egytthatjban mr tbb-kevsb lland a szemnk rzkenysge. Tovbbi elony, hogy ezek az rtkek is 0 s 255
kztti egsz szmok, s belolk az (R0 ; G0 ; B0 ) szmrtkek egyszeruen elollthatak. Htrnyuk viszont, hogy csak a teljes sznpatk egy hromszg alak
tartomnyt tudjuk velk reprezentlni.
Most foglaljuk ssze, hogy az emberi sznrzkelsrol szerzett informciinkat hogyan hasznlhatjuk fel kp- s videotmrts esetn. Bizonyos esetekben,
amikor a cl nem a sznrzet trolsa, hanem egyb ksobbi feldolgozs (pldul
csillagszati felvtelek esetn), akkor szksges lehet a berkezo fny spektrumnak mintavtelezett formjt trolni. Ha azonban csak a vizulis lmny visszaadsa a clunk, akkor a metamer sznrzet miatt kppontonknt elegendo mindssze hrom vals szmrtket (pl. (Y ; x; y)) trolni. Ha ezen fell azt is tudjuk,
hogy a kpet a ksobbiekben vrs, zld s kk foszfort alkalmaz megjelenton
akarjuk rekonstrulni, vagy legalbbis megelgsznk az ezen megjelentok ltal
elollthat szntartomnnyal s 224 szn megklnbztetsvel, akkor elegendo
csak hrom nyolcbites rtket (pl. (R0 ; G0 ; B0 )) trolni. (Nyomdatechnika esetn
pldul elofordulhat, hogy ez a trols nem kielgto.) Vesztesges tmrts esetn felhasznlhatjuk azt is, hogy a fnyessgre jobban rzkeny a szemnk, mint
a sznre. Ilyenkor fogjuk az (Y 0 ; Cb ; Cr ) szmhrmast hasznlni, s nagyobb torztst engednk meg Cb s Cr rtkre, mint Y 0 rtkre.
Szemnknek sok egyb olyan tulajdonsga is van, amit kp- s videotmrtskor kihasznlhatunk. Megfigyelhetjk, hogy a nagyobb trbeli frekvencij sszetevokre kevsb rzkeny a szemnk mint az alacsonyabb frekvencijakra. Pldul egy halvny suru mintzatot sokkal kevsb vesznk szre, mint
egy ugyanolyan halvny, de ritks mintt. Tmrtsnl, ha a kp ktdimenzis
Fourier-transzformltjt vesszk, akkor ebben a magasabb frekvencis sszetevok
torztsa nem okoz szreveheto hibt, mg az alacsonyabb frekvencij sszetevok
torztsa igen feltuno a kpen. Pontosabban, a ktdimenzis Fourier-transzformlt
frekvenciatartomnyban a szem rzkenysge a kt frekvencia sszegnek nvekedsvel monoton cskken.
Ksrleti tny tovbb, hogy a trbeli s idobeli frekvencik rzkelse sszefgg: egy rvid ideig ltott kpen csak az igen kicsi trbeli frekvencij sszetevoket figyeljk meg, a finomabb mintzatokat csak hosszabb ideig ltott kpen
2.10. K P -
S VIDEOTMRTS
125
126
2. F ORRSKDOLS H USGKRITRIUMMAL
2.10. K P -
127
S VIDEOTMRTS
Xbi; j = 0
Xbi; j = Xi
2
4
Xbi; j = Xi; j 1
Xbi; j = Xi 1; j 1
Xbi; j = Xi; j 1 + Xi 1; j
Xbi; j = Xi; j
Xbi; j = Xi
Xbi; j =
1; j
1+
1; j +
Xi; j
Xi
Xi; j
1; j
1 + Xi 1; j
Xi
1; j 1
Xi
2
Xi
2
1; j 1
1; j 1
2. F ORRSKDOLS H USGKRITRIUMMAL
128
8 8-as
blokk
8 8-as
blokk
- kvantl
DCT
fn; sg; v
8 8-as
64 hossz
blokk cikk-cakk sorozat futamhossz hrmasok Huffmanelrendezs
kdol
kdol
.
adatfolyam ..
JPEG
8 8-as
blokk
8 8-as
DCT
blokk
8 8-as
kvantl
inverze
blokk
fn; sg; v
64 hossz
cikk-cakk sorozat futamhossz hrmasok Huffmanelrendezs
dekdol
dekdol
2.10. K P -
129
S VIDEOTMRTS
tbbszrzsvel azt 8-cal oszthatv tesszk. (Az gy keletkezo felesleges szlek levgsa a dekdol feladata ezt a kpmret alapjn knnyu megtenni, a
kpmret pedig a JPEG fejlcben van trolva.) Ms tmrtsi mdszerek, ha arra
knyszerlnek, hogy a bemeno adatsort meghosszabbtsk valamilyen kttt
blokkmret miatt , akkor azt ltalban 0-kkal egsztik ki. rdekes a JPEG
megoldsa erre az esetre. Az a furcsa, hogy egy igen informcids adatdarabbal
trtnik a kiegszts: a kp egy rszletvel. Sok egyb algoritmus esetn a 0-kkal
val feltlts a 0 sorozat j tmrthetosge miatt ajnlott. Esetnkben azonban
a tmrts ksobbi lpsei arra ptenek, hogy egy kp alapvetoen homogn, s
csak ott kell valamit lekdolni, ahol a kp vltozik. Ennek megfeleloen a legnagyobb nehzsget az les hatrok kdolsa okozza ezek kdolsa teszi ki
a tmrtett adatfolyam legnagyobb rszt, ezek trnek el legjobban a minden
egysznu megkzeltstol. A JPEG kdols annyira jl hasznlja ki a kp redundancijt, hogy tbb bitbe kerlne egy 0 sorral vagy oszloppal val kiegszts
ltal behozott j l lekdolsa, mint az utos sor mr amgy is feltrkpezett szerkezetnek megismtlse. Ezrt dntttek a szabvnyban ezen megolds mellett.
A 8 8-as ngyzeteket ktdimenzis DCT transzformcinak vetjk al.
gy ugyancsak 8 8-as ngyzeteket kapunk, csak azok most mr nem egsz rtkekbol, hanem vals szmokbl llnak. Ezeket a frekvenciatartomnybeli vals
egytthatkat a kvetkezo lps, a kvantls fogja ismt egszekk alaktani.
A kvantls egyenletes, viszont a 8 8-as ngyzet minden egyes elemre
ms lpskzzel hajtjuk vgre. A 8 8-as DCT transzformlt ngyzet egytthati klnbzo frekvencij felharmonikusoknak felelnek meg. A kis frekvencis
egytthatk a ngyzet bal felso rszben vannak. Mint tudjuk, a szem ezekre
a kisebb frekvencihoz tartoz rtkekre sokkal rzkenyebb, mint a nagyobb
frekvencihoz tartozkra, ezrt ezeket finomabb lpskzzel fogjuk kvantlni. A
szabvny nem kti meg, hogy milyen kvantlsi lpskzket hasznljunk. A
hasznlt lpskzket tblzatba szoks foglalni, ahol egy tblzatelem a 8 8as ngyzet megfelelo egytthatjnak kvantlsi lpskzt tartalmazza. Br a
szabvny nem teszi ktelezov a hasznlatt, de ajnl egy kvantlsi tblt:
16
19
22
22
26
26
27
16
16
22
22
26
27
27
29
19
22
26
26
27
29
29
35
22
24
27
27
29
32
34
38
26
27
29
29
32
35
38
46
27
29
34
34
35
40
46
56
29
34
34
37
40
48
56
69
34
37
38
40
48
58
69
83
130
2. F ORRSKDOLS H USGKRITRIUMMAL
rr -rr rr -rr rr -r
?r r r
r r
?r
2.10. K P -
S VIDEOTMRTS
131
gy pldul a 23; 0; 0; 0; 0; 7; 0; 19; 4; 0; 0; 0; : : : sorozat elso futamhosszkdhrmasa: (f0; 6g; 010111), hiszen az elso elem, a 23 elott nincs 0, gy n = 0.
23 binris szmknt 6 biten kdolhat elojelesen, gy s = 6. A tovbbi kdszavak:
(f4; 4g; 1000); (f1; 6g; 101100); (f0; 4g; 0100); : : : (Az el
ojeles binris szmokat
egyes komplemens brzolsban tntettk fel. Megfelelo technikval ezek 1 bittel
rvidebben is kdolhatak.)
Az gy kapott (fn; sg; v) hrmasok fn; sg elemeit statikus Huffman-kddal tmrtjk tovbb, a v rtkeket pedig egyszeruen elvlasztjel nlkl egyms utn
rjuk. A statikus Huffman-kd azt jelenti, hogy nem az fn; sg prok adott kpben
levo gyakorisga alapjn vlasztjuk a kdszavakat, hanem azok a JPEG szabvnyban le vannak rgztve. (A statikus kdot az fn; sg prok sok kpre vett tlagos
gyakorisgai alapjn terveztk meg.) Alkalmazhatnnk a Huffman-kdolst magukra az (fn; sg; v) hrmasokra is, de akkor a kd annyira sok kdszbl llna,
hogy kezelhetetlen lenne, nagyon lass lenne vele dolgozni. A v rtkek levlasztsa j dnts, mert ezzel a kd mrete kezelheto lesz, viszont a hatkonysga
csak alig romlik: a v rtkek bitjei a tapasztalat szerint gyakorlatilag fggetlenek s egyenletes eloszlsak, gy nem tmrthetoek, hiba is vonnnk be o ket a
Huffman-kdba.
A fenti pldn bemutatva ezt az utols lpst, a tmrtett kpbe a f0; 6g; f4; 4g;
f1; 6g s f0; 4g Huffman-kdja, s a 01011110001011000100 sorozat kerl.
Br a baseline JPEG (a szabvny alapkdolsa) nem engedi meg, de ms,
kiterjesztett mdokban hasznlhatunk aritmetikai kdolt is az fn; sg prok kdolsra. Ilyenkor ltalban a legjobb eredmnyeket adaptv aritmetikai kdol
hasznlatval lehet elrni.
A JPEG egyszerusge ellenre meglepoen alacsony bitsebessgeket tud elrni.
A kppontonknti 2 bites tmrts egy 24 bites sznmlysgu kp esetn az eredetitol megklnbztethetetlen kpet eredmnyez legalbbis az emberi szem
szmra nem lthat a klnbsg. Igen kis, 1 bit/kppontos bitsebessg esetn
kezd el zavarv vlni a torzts, s 0:5 bit/kppont alatt a kp nem lvezheto. A
felismerhetosg mg 0:086 bit/kppontos bitsebessg mellett is biztosthat. Termszetesen ilyen alacsony bitsebessgek esetn klnbzo kiterjesztsek is szksgesek a szabvnyhoz. Mindenesetre ezek az eredmnyek nagyon jnak szmtanak. A JPEG alacsony bitsebessgek esetn legeloszr kocksodni kezd. Ezt
az alacsonyfrekvencis egytthatk rtknek kvantls miatti torzulsa okozza.
2. F ORRSKDOLS H USGKRITRIUMMAL
132
MPEG -2
2.10. K P -
S VIDEOTMRTS
133
2. F ORRSKDOLS H USGKRITRIUMMAL
134
!
kpcsoport
!
!
!
kp
Y Cb Cr
sv
makro- blokk
blokk
2.10. K P -
S VIDEOTMRTS
135
j j j j
j
R R R
I B B P B B P B B I
2.18. bra. Az MPEG klnbzo predikcitpusai.
Valjban az eljrs kicsit rnyaltabb a fentinl. Egy makroblokk tmrtse
sorn ugyanis ngyfle mdon jrhatunk el. Tmrthetjk predikci nlkl, vagy
predikcival htulrl, ellrol, s mindkt irnybl. Amennyiben nem alkalmaztunk predikcit, gy az eredeti makroblokk 6 blokkjt kell JPEG-szeruen kdolnunk. Amennyiben egyirny predikcit alkalmaztunk (idoben megelozo vagy
kvetkezo kp egy rszt jelltk ki), akkor a makroblokkbl levonjuk a kijellt
rszt, s a klnbsget tmrtjk. Amennyiben ktirny predikcit hajtottunk
vgre (idoben megelozo s kvetkezo kp egy-egy rszlett is felhasznljuk), akkor a makroblokkbl a JPEG tmrts elott a kt kijellt rsz tlagt vonjuk le.
Az ellrol s a ktirnybl alkalmazott predikcinl gondoskodni kell az egyrtelmu dekdolhatsgrl. Ezt az MPEG -1 szabvny azzal oldja meg, hogy kizrja,
hogy a kpek krkrsen egymsra hivatkozzanak. Ennek biztostsra minden
egyes kpben meg van ktve, hogy a benne szereplo makroblokkok kdolsa sorn milyen tpus predikcit hasznlhatunk. Ezt mutatjuk be a 2.18. brn.
I tpus kpben egyltaln nem alkalmazhatunk predikcit, azaz egy I kp egy
nll kp, JPEG tpus tmrtssel. gy egy I tpus kpet teht minden egyb
kp nlkl tudunk dekdolni.
A P tpus kpek makroblokkjai lehetnek predikci nlkl kdolva, vagy pedig predikcival htulrl, a hozzjuk legkzelebb levo I vagy P tpus kpbol.
(Teht a makroblokkok kdolsnak tovbbi finomsga, hogy a predikci nem az
idoben kzvetlenl megelozo kp alapjn trtnik, hanem a kzvetlenl megelozo
I vagy P kp alapjn.) Egy P tpus kp dekdolshoz ezek szerint legfeljebb az
elotte levo utols I kpig kell visszaszaladnunk, s innentol kezdve P kprol P
kpre tudunk lpkedni.
2. F ORRSKDOLS H USGKRITRIUMMAL
136
A harmadik fajta kp, a B kp brmilyen kdols makroblokkokat tartalmazhat, de a makroblokkok csak a legkzeleb eso megelozo vagy kvetkezo P vagy I
kpekre hivatkozhatnak. Sem B kpekre, sem a legkzelebbi I vagy P kpnl tvolabbi kpekre nem lehet hivatkozni. A lnyegi klnbsg a B s P kpek kztt
az, hogy B kpeknl jvobeli P vagy I kpre is hivatkozhatunk.
Termszetesen, a szabvny koncepcijnak megfeleloen a kpek sorrendje
nem kttt, akrhogyan jhetnek egyms utn a P, I s B kpek, ahogy a kdol
akarja. A fenti szablyok betartsval lehetsges a dekdols, mert egy I tpus
kp magban dekdolhat, egy P tpus az elotte levo, hozz legkzelebbi I kptol indulva dekdolhat, mg egy B kp az o t krlvevo I vagy P kpek alapjn
dekdolhat teht minden kp dekdolhat.
Mindemellett hogy nem ktelezo, kialakultak szokvnyos kpsorrendek. A
legsurubben egy I kpre kt P kp pl, s kzttk kt-kt B kp van. A 2.18.
brn egy ilyen kpsorrend lthat.
A kpek sorrendje a bitfolyamban nem egyezik meg a kpek idosorrendjvel. A bitfolyambeli sorrend gy lett meghatrozva, hogy ha sorban olvassuk be
a bitfolyambl a kpeket, akkor egy kp beolvassnak idopontjban az sszes
szksges informci rendelkezsre lljon a dekdolshoz. Ezt gy oljda meg a
szabvny, hogy htrakldi a B kpeket az utnuk kvetkezo I vagy P kp mg.
Ezltal a B kpek idoben elore mutat referencija a bitfolyamban htramutat
referencia lesz. Termszetesen trendezskor az I s P kpek a helykn maradnak, s a B kpek egymshoz viszonytott sorrendjn sem vltoztatunk. Teht, ha
az idobeli sorrendet az indexekkel jelljk, akkor a
:::
sorozat lesz.
Egy kpcsoport mindig egy I kppel kezdodik, mghozz a bitfolyambeli sorrend szerint. Emiatt egy kpcsoport bitfolyamban elso kpe nmagban dekdolhat, vagyis nem szksges rgebben dekdolt kpek ismerete a dekdolshoz.
A kpcsoport tovbbi kpei is mind dekdolhatak a bitfolyambeli sorrendben.
(Termszetesen ezek dekdolsa sorn szksgnk lesz az ezen kpcsoportbl
elottk dekdolt kpekre.) Kivtelt kpeznek az elso P kpet megelozo B kpek,
ugyanis ezek a megelozo kpcsoport utols P vagy I kpre is hivatkozhatnak. (Ne
felejtsk el, hogy a bitfolyambeli sorrendben definiljuk a kpcsoportot!) Ezek a
B kpek a megelozo kpcsoport dekdolsa nlkl nem dekdolhatak. Emiatt
2.11. F ORRSKDOLS
BET UNKNTI
H USGKRITRIUMMAL
137
az elso nhny nem dekdolhat B kp miatt hvjk nyltnak az ilyen kpcsoportot. (A szabvny definil egy zrt kpcsoportot is, termszetesen ehhez ms
kpsorrend szksges.) Ezltal a kpcsoport a bevezetoben emltett viszonylag
rvid prediktv egysget testesti meg, hiszen (nylt csoport esetn nhny B kp
kivtelvel) a kpcsoportok egymstl fggetlenl dekdolhatak.
Az MPEG videokdols, amennyiben ezt nem szablyozzuk kln, vltoz
bitsebessget fog eredmnyezni. Gondoljunk pldul arra, hogy ahol egy teljesen
j kp jelenik meg a videofolyamban (vgs), ott az elso kp makroblokkjait nem
tudjuk predikcival tmrteni, s gy gyakorlatilag egy teljes kpet kell JPEG-gel
kdolnunk. Ez igen sok bitet ignyelhet. Ott viszont ahol egy llkp van a videofolyamban, szinte nem is lesz predikcis maradk, vagyis nagyon rvid lesz a
kd. Az tvitelhez hasznlt csatorna bitsebessgt (MPEG -1 esetn a CD lejtsz
1.4 Mbit/s sebessge, MPEG -2 esetn pl. az egy televziadsra jut adatfolyam 5
Mbit/s sebessge) a kdols sorn termszetesen nem lphetjk t. Ezen a problmn pufferek felhasznlsval valamennyit lehet segteni, de meg kell oldani,
hogy a dekdol puffere sohase rljn ki, s sohase csorduljon tl, tovbb a kdol is csak a csatorna tviteli kpessgnek megfelelo mennyisgu adatot hozzon
ltre. Ennek elrshez a kdol llandan figyeli a sajt puffert, s nyomon kveti a dekdolt is. (Ez utbbihoz egyes esetekben a dekdol szimulcijra
knyszerl.) Ha pldul a kdol puffere kezd megtelni ezt a kpsorozat informcidssga okozhatja, cskkentenie kell a kpenknt tvitt bitek mennyisgt. Ezt a JPEG kvantlsi lpcso megemelsvel rheti el, termszetesen a
minosg rovsra. Durvbb megolds, ha bizonyos makroblokk predikcis maradkt egyszeruen elhagyja a kdbl, s csak a mozgsvektorokat adja meg. Mg
durvbb lehetosgek is rendelkezsre llnak a kdolnak. Ilyen pldul a bemenetn rkezo kp informcitartalmnak korltozsa, pldul a kpfrekvencia
vagy a felbonts cskkentsvel.
husgkritriummal
mennyisget rtjk.
A definci mutatja, hogy a klcsns informci szimmetrikus, s
I (X;Y ) = H (X )
H (X j Y ) = H (Y )
H (Y j X ) = I (Y ; X ):
2. F ORRSKDOLS H USGKRITRIUMMAL
138
a)
I (X;Y )
x;y
p(x y) log
;
x;y
p(x; y)
p(x y) log
;
x;y
p (x j y )
p(x)
p (y j x )
:
p(y)
b)
I (X;Y ) 0:
c)
I (X;Y ) H (X );
I (X;Y ) H (Y ):
d) Az X s Y brmely g s f fggvnyre
I (X;Y ) I (g(X ); f (Y )):
B IZONYTS : Az a), b) s c) tulajdonsgok a defincibl s a (feltteles) entrpia tulajdonsgaibl kzvetlenl addnak. A d) tulajdonsg a feltteles entrpia
1.7. d) tulajdonsgbl kvetkezik:
I (X;Y )
H (X )
H (X )
H (X j Y )
H (X j f (Y )) =
I (X; f (Y )) =
H ( f (Y ))
H ( f (Y ))
H ( f (Y ) j X )
H ( f (Y ) j g(X )) =
I (g(X ); f (Y )):
2.11. F ORRSKDOLS
BET UNKNTI
H USGKRITRIUMMAL
139
1 k
d (xi ; yi )
k i
=1
torztsnak. Ha az X
forrs X = (X1 ; : : : ; Xk ) blokkjt az Y = (Y1 ; : : : ; Yk ) blokk reprezentlja, akkor a
kztk levo E(d ) tlagos betunknti torztst az
E(d ) = E(d (X; Y)) = p(x; y)d (x; y)
x;y
d (x; y) =
0; ha x = y
1; ha x 6= y
teht
E(d (X; Y)) =
1 k
PfXi 6= Yi g;
k i
=1
y)2 , ekkor
Yk2 ;
2. F ORRSKDOLS H USGKRITRIUMMAL
140
1 k
d (Xi ; Yi )
k i
=1
!
<
husgkritriumnak.
A 2.6. plda szerint ez pl. azt jelentheti, hogy egy 0 < < 1 szmra biztostani szeretnnk, hogy a karakterek meghibsodsnak tlagos valsznusge -nl
kisebb legyen.
A forrs adott husgu kdolsra forrskdokat hasznlunk. Az X forrs khossz blokkjait kdol forrskdja egy g : Xk ! Yk lekpezs, amely teht minden x 2 Xk zenethez egy y 2 Yk reprezentnst rendel. Az elobbiek szerint a
forrskd betunknti tlagos torztsa a
D(g) = E(d (X; g(X))) = p(x)d (x; g(x))
x
Yk
log M
k
ha d (x; yi ) d (x; y j );
j = 1; 2; : : : ; M ;
vagyis az x 2 Xk kdja az az y 2 C amely a legjobban hasonlt x-re. A g lekpezs teht egy vektorkvantl. Ha a d husgkritriumot egyfajta tvolsgnak
tekintjk, akkor azt mondhatjuk, hogy g(x) az x legkzelebbi szomszdja a C halmazbl. J kd keresse ezek szerint a megfelelo C halmaz keressvel ekvivalens. A tovbbiakban a forrskdok teljestokpessgnek elvi hatrait vizsgljuk
emlkezetnlkli stacionrius forrsra.
A kvetkezokben bevezetjk az emlkezetnlkli stacionrius forrs R-D (ratedistortion) fggvnyt, amelyrol kiderl, hogy megadja azt a legkisebb jelsebessget, amit egy legfeljebb torzts forrskddal el lehet rni.
2.11. F ORRSKDOLS
141
BET UNKNTI
H USGKRITRIUMMAL
2.4. definci. Legyen adva az Y reprodukcis bc s a d torztsi mrtk. Ekkor az X emlkezetnlkli stacionrius forrs 0 szmokra rtelmezett R-D
fggvnye a kvetkezo:
R() = min fI (X;Y ) : E(d (X ; Y )) g;
p(x y)d (x y)
;
x;y
p(x y) min
d (x y) =
y
xy
;
d (x y )
p(x) min
y
;
x0 2
R() = min
8
>
<
>
:x2X
Y
y2
9
>
=
p(x) p(yjx)
;
p(x) p(x0 ) p(y j x0 ) >
;
x0 2
2. F ORRSKDOLS H USGKRITRIUMMAL
142
)2 ) R(1 ) + (1
)R(2 ):
Legyenek p1 (y j x) s p2 (y j x) azon feltteles eloszlsok, amelyekre az R() defincijban I (X;Y ) elri minimumt, R(1 )-et illetve R(2 )-t. Jelljk a p1 (y j x) s
p2 (y j x) feltteles eloszlsok ltal meghatrozott valsznusgi vltozkat Y1 -gyel
illetve Y2 -vel. Ekkor
I (X;Yi ) = R(i );
s
E(d (X;Yi )) i ;
i = 1; 2:
) p2 (y j x);
x 2 X; y 2 Y:
=
=
=
PfY
=y =
PfY1 = yg + (1
p1 (y) + (1
)PfY2 = yg =
) p2 (y);
valamint
E(d (X;Y )) = p(x) (p1 (y j x) + (1
x;y
x;y
= E(d (X;Y1 )) + (1
1 + (1
)2 :
) p2 (y j x)) d (x; y) =
) p(x) p2 (y j x)d (x; y) =
x;y
)E(d (X;Y2 ))
2.11. F ORRSKDOLS
143
BET UNKNTI
H USGKRITRIUMMAL
p1 (x; y) + (1 ) p2(x; y)
p(x)[p1 (y) + (1 ) p2(y)
) p2 (x; y)
p 2 (x ; y )
:
p(x) p2(y)
(2.31)
Ha (2.31) mindkt oldalt minden x-re s y-ra sszegezzk, akkor azt kapjuk,
hogy
I (X;Y ) I (X;Y1 ) + (1
)I (X;Y2 ) = R(1 ) + (1
)R(2 );
Amennyiben az
elgtik az
E
husgkritriumot, akkor
1 k
d (Xi ; Yi )
k i
=1
I (X; Y) kR():
H (X j Y) = H (Xi j Y; X1 ; : : : ; Xi
i=1
1)
H (Xi j Yi )
i =1
H (X)
H (X j Y) =
H (X j Y)
H (Xi )
i=1
k
H (Xi j Yi ))
(H (Xi )
i=1
k
I (Xi ;Yi )
i=1
(2.32)
2. F ORRSKDOLS H USGKRITRIUMMAL
144
1 k
i
k i
=1
R()
husgkritriumot, akkor a kd R =
log M
k
jelsebessgre
R R():
B IZONYTS : A klcsns informci 2.8. c) s az entrpia 1.6. a) tulajdonsga
szerint
I (X; g(X)) H (g(X)) log M :
Msrszt a 2.4. lemmbl
I (X; g(X)) kR();
teht
log M kR();
2.11. F ORRSKDOLS
BET UNKNTI
H USGKRITRIUMMAL
145
D(g) < 0 :
A ttel teht azt mutatja, hogy elg hossz blokkokat kdolva a kdsebessg als hatra, R(), tetszolegesen kzeltheto -hoz tetszolegesen kzeli torzts forrskddal. A ttelt nem bizonytjuk, mivel a bizonyts nem tl egyszeru.
Annyit meg kell jegyezni, hogy a ttel bizonytsa egy, az informcielmletben
gyakran s sikeresen alkalmazott technikn, a vletlen kdolson alapul. A vletlen kdolssal a csatornakdolsi ttel bizonytsakor tallkozunk majd, amely
bizonyts meglehetosen hasonlt a forrskdolsi ttel bizonytshoz.
2.8. plda. Tekintsk Hamming-torztst, ahol a forrsbc s a reprodukcis
bc megegyeznek, s
d (x ; y ) =
0; ha x = y;
1; ha x 6= y
Legyen X emlkezetnlkli s stacionrius PfXi = xg = PfX = xg adott eloszlssal. Szmtsuk ki az R(0) rtkt!
Mivel
E(d (X ; Y )) = PfX 6= Y g;
ezrt az E(d (X ; Y )) felttel = 0 esetben a PfX = Y g = 1 felttelt jelenti,
vagyis ekkor Y 1-valsznusggel meghatrozza X-et. Ekkor viszont
I (X;Y ) = H (X )
H (X j Y ) = H (X );
vagyis
R(0) = H (X ) = H (X ):
Ebben az esetben a forrskdolsi ttel azt mondja ki, hogy tetszoleges kis pozitv szmra tallhatunk egy g : Xk ! Xk forrskdot, hogy
1 k
PfXi 6= Yi g < ;
k i
=1
ahol Yi -vel a g(X1 ; : : : ; Xk ) i-edik koordintjt jelltk, s a kd jelsebessge a
forrs entrpijhoz nagyon kzeli szm, azaz krlbell 2kH (X) kdszt hasznl.
2. F ORRSKDOLS H USGKRITRIUMMAL
146
2.12. Feladatok
2.1. feladat (Fix szhosszsg kd). Legyen X egy stacionrius, memriamentes binris forrs, PfX1 = 1g = 0:005, PfX1 = 0g = 0:995 eloszlssal. Azokhoz
a 100 hosszsg blokkokhoz rendelnk kdszavakat, amelyek legfeljebb hrom
egyest tartalmaznak. Ha minden kdsz azonos hosszsg, akkor mi az a minimlis hosszsg, amellyel ez a kd megvalsthat? Mekkora a nem kdolt
blokkok sszvalsznusge pontosan, s milyen becslst kapunk erre a szmra a
Csebisev-egyenlotlensgbol?
2.2. feladat (Normlis eloszls egy bites kvantlsa). Legyen X nulla vrhat
rtku, szrs normlis eloszls valsznusgi vltoz. Hatrozza meg az
optimlis egy bites (kt szintu) kvantlt! Mennyi a torzts?
2.3. feladat (Exponencilis eloszls kvantlsa). Legyen X vals valsznusgi
vltoz, melynek surusgfggvnye
f (x) =
1
2 x;
ce
0;
ha x 2 [0; 2
ha x 62 [0; 2
f (x ) =
1
2e
0;
1
2 x;
ha x 0
ha x < 0
Q(x) =
Q1 (x); ha x 2 [0; 2
2;
ha x > 2
147
2.12. F ELADATOK
(Segtsg: t lnt dt = x2
0
ln x
2
1
4
.)
6f (x)
1
1
-x
1
2.5. feladat. A napstses s esos napok stacionrius Markov-lnc szerint kvetik egymst az brn lthat tmenetvalsznusgekkel. Az esos napokon az
eso mennyisge exponencilis eloszls, f (x) = e x (x > 0) surusgfggvnnyel
(centimterben mrve). Az idojrsjelentsben az eso mennyisgt 1 millimter
felbontsban egyenletesen kvantlva mondjk be. Mennyi (kzeltoleg) a csapadkmrsek sorozatnak mint forrsnak az entrpija?
#
"!
Y
1=3
R
2 =3
#
j
"!
I
st a
nap
esik
2 =3
1=3
2.6. feladat (A LloydMax-algoritmus nem optimlis). Mutasson pldt arra,
hogy a LloydMax kvantltervezo algoritmus nem mindig a minimlis torzts
kvantlhoz konvergl. Azaz adjon meg egy olyan rossz surusgfggvnyt s
kiindulsi kvantlt, hogy az algoritmus biztosan ne az optimumhoz konvergljon.
2.7. feladat (Maximlis differencilis entrpia). Mutassa meg, hogy
az adott vrhat rtku, nemnegatv valsznusgi vltozk kztt az exponencilis eloszlsnak maximlis a differencilis entrpija;
az [a; b intervallumon kvl nulla surusgfggvnyu valsznusgi vltozk kztt az [a; b-n egyenletes eloszlsnak maximlis a differencilis
entrpija.
148
2. F ORRSKDOLS H USGKRITRIUMMAL
3. fejezet
Csatornakdols
Ebben a fejezetben a zajos csatornn trtno megbzhat informcitvitel problmjval foglalkozunk.
Tekintsk az 1.1. brn lthat hrkzlsi modellt. Clunk a forrs ltal kivlasztott zenetet a nyelobe eljuttatni. Felhvjuk a figyelmet arra, hogy valsgos
hrkzlsi problmk vizsglatnl nem mindig egyrtelmu, hogy hol kell a kdolt s a csatornt, illetve a csatornt s a dekdolt sztvlasztani, azaz, hogy
az esetleg jelenlvo modultort s a demodultort a csatorna avagy a kdol, illetve dekdol rsznek tekintsk-e. Ebben a fejezetben, mint ltni fogjuk, csak
az n. diszkrt csatornval foglalkozunk, vagyis a modulcit s a demodulcit
a csatorna rsznek tekintjk. Ez annak a tervezoi szemlletnek felel meg, amely
szerint a modultort s demodultort nem akarjuk, vagy nem tudjuk megvltoztatni.
Alapvetoen kt problmval kell szembenznnk. Az egyik az, hogy az tvivo
kzeg a csatorna bemeneti bcje nem felttlenl egyezik meg a forrsbcvel, a msik pedig az, hogy az tvivo kzeg zajos, azaz a csatorna bemenetre
adott szimblum nem felttlenl egyezik meg a csatorna kimenetn megjelenovel. Ezen nehzsgek legyozsnek eszkze a csatornakdols, amelynek elvi
lehetosgeit a csatornakdolsi ttel mutatja meg.
A zajos csatornt jl modellezi az a feltevs, hogy a csatorna bemenetre adott
zenet egyes szimblumai bizonyos valsznusggel meghibsodhatnak.
A csatornakdols alapveto problmja az, hogy hogyan lehet egy megbzhatatlan eszkzn (zajos csatornn) zenetet nagy megbzhatsggal tkldeni gy,
hogy minl jobban kihasznljuk a csatornt. Megmutatjuk, hogy a kihasznltsgnak van egy elvi hatra, ez a csatornakapacits. Mivel a dekdolsnak egy fontos
komponense a dnts, ezrt a fejezetet az optimlis dntssel kezdjk.
150
3. C SATORNAKDOLS
3.1. Bayes-dnts
A gyakorlatban gyakran elofordul feladat, hogy egy A paramter rtkt nem
tudjuk kzvetlenl megmrni, csupn egy megfigyelt X mennyisg rtkbol szeretnnk A-ra kvetkeztetni.
A szmunkra rdekes esetek matematikai modellje a kvetkezokppen fogalmazhat meg:
Legyen X valsznusgi vltoz, amely rtkeit az X halmazbl veszi fel valamilyen eloszls szerint. (X lehet vges vagy vgtelen halmaz, pldul X = R d
esetn X rtke egy d-dimenzis vektor, vagy X = f0; 1gd esetn d-hosszsg binris vektor.) A vletlen A paramter az A halmazbl veszi fel rtkt. Azt, hogy
X megfigyelsbol A rtkt prbljuk meghatrozni, egy G : X ! A fggvnnyel
rhatjuk le. G(X )-et kvetkeztetsnek nevezzk. Ezen bell kt esetet klnbztethetnk meg:
nevezzk.
Termszetesen kvetkeztetsnket valahogy minosteni szeretnnk, ezrt definiljuk az n. kltsgfggvnyt: C : A A ! R , itt C(A; G(X )) rtke adja meg
a kvetkeztets jsgt abban az rtelemben, hogy minl kisebb a C rtke, annl
jobbnak tekintjk a kvetkeztetst. Ezrt C-t szoks jsgi kritriumnak, hasonlsgi kritriumnak, vagy megbzhatsgi kritriumnak is nevezni. Termszetesen
C(A; G(X )) maga is valsznusgi vltoz, hiszen rtke fgg X s A rtktol.
A kltsgfggvny csupn X s A egy-egy konkrt rtke esetn minosti a
kvetkeztetst, magt a G kvetkeztetsfggvnyt ennek vrhat rtkvel jellemezhetjk.
Az R(G) = E(C(A; G(X ))) (csak G-tol fggo) mennyisget globlis kockzatnak nevezzk.
Tekintsk a kvetkezo szitucit:
legyen az X megfigyels valsznusgi vltoz, amely rtkeit az X halmazbl veszi fel, s nzzk eloszr azt a specilis esetet, amikor X diszkrt,
teht vges vagy megszmllhatan vgtelen halmaz;
151
szoks nevezni.
3.1. plda. Tekintsnk csak egy specilis kltsgfggvnyt:
C(ai ; a j ) = Ci j = 1
i j =
1; ha i 6= j
0 egybknt
PfA = ai
PfA = ai
i=1 j=1
s s
i=1 j=1
s
PfA = ai
i=1
=
=
G(X ) = a j gC(ai ; a j ) =
G(X ) = a j g(1
i j ) =
G(X ) = ai g =
PfA = G(X )g =
Lthatjuk teht, hogy a kltsgfggvny fenti vlasztsa esetn a globlis kockzat ppen megegyezik a hibavalsznusggel.
j = 1; 2; : : : ; s :
152
3. C SATORNAKDOLS
x-et az ezek kzl legkisebb indexuhz tartoz Dj tartomnyba soroljuk. Ekkor a
dntsfggvny:
G (x) = ai ;
ha x 2 Di :
Ezt a dntst Bayes-dntsnek vagy maximum a posteriori dntsnek nevezzk.
3.1. ttel. Az gy definilt G dntsfggvny optimlis, vagyis ennek a dntsnek legkisebb a hibavalsznusge.
B IZONYTS : Legyen G(x) egy tetszoleges dntsfggvny fDi g dntsi tartomnyokkal. Ekkor
R(G)
P(A 6= G(X )) =
P(A = G(X )) =
P(A = ai
G(X ) = ai ) =
i=1
s
P(A = ai
i=1 x
s
IfG x
( )=ai
i=1 x
s
=
g P(A = ai j X = x)P(X = x) =
Pj (x)P(X = x) =
Ifx2D g max
j
i
i=1 x
1
1
Ifx2D g
i
= x) =
= x) =
Ifx2D g Pi (x)P(X = x) =
i=1 x
= x)P(X = x) =
Ifx2D g Pi (x)P(X = x)
i=1 x
s
G(X ) = ai j X
i=1 x
s
x
s
P(A 6= G (x)) =
R(G ):
=
=
PfA = ai j X = xg =
PfA = ai ; X = xg
=
PfX = xg
153
=
=
PfA = ai gPfX = x j A = ai g
PfX = xg
q i p i (x )
;
PfX = xg
ahol pi (x)-szel az X feltteles eloszlst jelljk az fA = ai g felttel mellett. Ltszik, hogy a Pi (x) a posteriori valsznusg ugyanarra az i indexre veszi fel a maximumt, amelyre qi pi (x). Amennyiben az a priori valsznusgeloszls egyenletes,
azaz qi = 1s minden i-re, akkor a Bayes-dnts a kvetkezokppen alakul:
x 2 Dj ; ha p j (x) = max pi (x):
i
fX1 = x1 X2 = x2 Xn = xn j A1 = ci An = ci g =
= PfX1 = x1 j A1 = ci gPfX2 = x2 j A2 = ci g
PfXn = xn j An = ci g
=P
;:::;
1;:::;
Ez az egyenlosg definilja az emlkezetnlkli csatornt, vagyis a j-edik kimeneti szimblum eloszlsa csak a j-edik bemeneti bit rtktol fgg. Az, hogy a
csatorna tmenetvalsznusge p (0 < p < 1=2), ppen azt jelenti, hogy
PfXk = xk j Ak = cik g
=
=
=
ha xk 6= cik
p;
1
p; ha xk = cik
p fxk 6=cik g (1
I
1 Ifxk 6=ci g
k
p)
Ifx =6 c g
k ik
p
(1
p ):
154
3. C SATORNAKDOLS
Ezrt teht
PfX = x j A = ci g
"
k=1
=
n Ifx 6=c g
k ik
p
1
Ifx 6=c g
k ik
k=1
#
(1
(1
p)
p)n :
minimlis (hiszen
p
1 p
k=1
<
1).
jelenti, hogy binris szimmetrikus csatorna esetn a maximum-likelihood dekdols ppen a csatorna kimenetn vett sorozattl minimlis Hamming-tvolsgra
levo kdsz vlasztst jelenti. (Kt egyenlo hossz binris sorozat Hammingtvolsgn azon bitek szmt rtjk, amelyekben a kt sorozat klnbzik.)
Amennyiben az X megfigyels rtke vals, s f (x) az eloszlst meghatroz
surusgfggvny, tovbb f i (x) = f (x j A = ai ) az A paramter ai rtkhez tartoz
feltteles surusgfggvny, akkor bebizonythat, hogy az a posteriori valsznusgfggvnyek a kvetkezo alakba rhatk:
Pi (x) =
qi fi (x)
:
f (x )
=
=
=
PfA = ai j B g =
PfA = ai ; B g
=
PfB g
PfA = ai gPfB j A = ai g
PfB g
155
qi
=
x+R=2
x =2
x+R=2
x =2
qi 1
=
1
f i (z) dz
=
f (z) dz
x+R=2
x =2
x+R=2
x =2
fi (z) dz
:
f (z) dz
ekkor
R(G)
PfA = ai
i =1
s
G(X) = ai g =
PfX 2 Di j A = ai gPfA = ai g =
i =1
s Z
f i (x) dx qi =
i =1
Di
s Z
Di
s Z
max fq j f j (x)g dx =
i =1 D
Z
=
qi fi (x) dx
i =1
1
Rd
max fq j f j (x)g dx =
j
156
3. C SATORNAKDOLS
q 1 f 1 (x )
q 2 f 2 (x )
{z
} |
D
{z
D
i=1
Di
s Z
max fq j f j (x)g dx =
j
qi fi (x) dx = R(G ):
i=1
Di
Z
Rd
s = 2 esetn
R(G ) =
Rd
3.2. O PTIMLIS
157
PAM:
y1
T
0
y2
BPSK:
y1
y2
T
QPSK:
y1
y2
T
y3
y4
T
BFSK:
y1
0
y2
T
i = 1; 2:
1));
i = 1; 2:
158
3. C SATORNAKDOLS
yi (t ) = sin t + (i
1)
;
2
i = 1; 2; 3; 4:
1))t );
i = 1; 2:
U (t ) =
i=
yZi (t
1)):
(i
Felttelezzk, hogy az analg csatorna additv zajos, ami azt jelenti, hogy a
kimenete
V (t ) = U (t ) + N (t );
ahol az N (t ) egy 0 vrhat rtku stacionrius sztochasztikus folyamat. Felteszszk, hogy a csatorna kimenetn ismerjk a hossz idoszeletek hatrait, azaz a
szinkronizlst mr elvgeztk. Az egyszerusg kedvrt tekintsk a dntst Z1 re, azaz V (t )-t megfigyeljk a [0; intervallumon, abbl d idokznknt mintt
vesznk, s a mintk alapjn dntnk. Ekkor
X
=
y Z1
d
yZ1 + N;
y Z1
2
d
2
d
;:::;
2
d
V ()
;:::;
y Z 1 ( )
;:::;
N ( )
y i );
teht a Bayes-dntshez a
qi f i (x) = qi f (x
yi )
3.2. O PTIMLIS
159
f (x ) =
teht
det K
f i (x) =
1
1
2 (x;K x) ;
d p
d p
1
2 (x
yi ;K
1 (x
yi ))
det K
(a ; b )
=
=
=
=
=
fx : q1 f1(x) q2 f2(x)g =
fx : f (x y1) f (x y2)g =
fx : ln f (x y1) ln f (x y2)g =
fx : x y1 K 1 (x y1) x y2 K 1 (x
fx : x K 1 x y 1 K 1 x x K 1 y 1 +
;
x; K 1 x
y2 ; K 1 x
x; K
y2
y2 )
g=
y1 ; K
y2 ; K
y1
y2
g=
szimmetrijnak felhasznlsval:
=
fx :
2 x; K
2 x; K
y1
y2
fx : (x v) C1 g
;
y1 ; K
y2 ; K
y1
y2
g=
ahol
v=K
s
(y2
y1 )
1
y2 ; K 1 y2
y1 ; K 1 y1 :
2
Ltszik teht, hogy ebben az esetben a Bayes-dnts rendkvl egyszeruen
megvalsthat, amennyiben ismerjk az additv Gauss-zaj kovarianciafggvnyt. Az is ltszik, hogy a dntsi tartomnyok hatra egy affin hipersk (eltolt
altr). A 3.3. brn lthat optimlis detektlst vgrehajt eszkzt a hradstechnikban diszkrt korrelcis detektornak nevezik.
C1 =
160
3. C SATORNAKDOLS
X
skalris
szorz
6v = K
1 (y
nem
igen
kompartor
C1 ?
G (X) = 1
G (X) = 2
y2 )
fU1 = u1 Un = ung
PfV1 = v1
Vn = vn j U1 = u1
Un = un g
ahol PfU1 = u1
Un = un g-et a forrs eloszlsa s a kdol egyttesen hatrozzk meg, mg a PfV1 = v1
Vn = vn j U1 = u1
Un = un g feltteles val=P
;:::;
;:::;
;:::;
;:::;
;:::;
;:::;
=
=
p(u)
=
=
p (v )
p(v j u)
=
=
=
=
PfV = v; U = ug =
PfV1 = v1 ; : : : ; Vn = vn ; U1 = u1 ; : : : ; Un = un g
PfU = ug =
PfU1 = u1 ; : : : ; Un = un g
PfV = vg =
PfV1 = v1 ; : : : ; Vn = vn g
PfV = v j U = ug =
PfV1 = v1 ; : : : ; Vn = vn j U1 = u1 ; : : : ; Un = un g;
3.3. C SATORNA ,
161
CSATORNAKAPACITS
illetve
p(vi ; ui )
p (u i )
p (v i )
p (v i j u i )
PfVi = vi ; Ui = ui g
PfUi = ui g
PfVi = vi g
PfVi = vi j Ui = ui g
p(v j u) = p(vi j ui );
i =1
azaz a csatorna kimeneti szimblumnak eloszlsa mindig csak az aktulis bemenettol fgg.
Nzznk meg pldaknt nhny fontos diszkrt memriamentes csatornt.
3.7. plda (Binris szimmetrikus csatorna (BSC)). Ezzel a csatornatpussal
mr foglalkoztunk a 3.2. plda kapcsn. Itt mind az U bemeneti, mind a V kimeneti bc ktelemu (U = V = f0; 1g), az tmenetvalsznusgek pedig:
PfV
j U = 0g = PfV = 0 j U = 1g = p
PfV = 1 j U = 1g = PfV = 0 j U = 0g = 1
=1
p:
s
s
-p
0
p
R
p
- 1
1
162
3. C SATORNAKDOLS
p
1
p
j U = 0g
PfV = 0 j U = 1g
PfV = 1 j U = 1g
=0
1;
p;
3.9. plda (Binris trlses csatorna). A binris trlses csatorna bemeneti bcje U = f0; 1g, mg a kimeneti bc tartalmaz egy tovbbi specilis szimblumot is: V = f0; 1; g. Hibzskor mindig a szimblum jelenik meg a csatorna
kimenetn:
PfV
j U = 0g = PfV = j U = 1g = p
PfV = 1 j U = 1g = PfV = 0 j U = 0g = 1
=
3.3. C SATORNA ,
163
CSATORNAKAPACITS
sHHH - s
HjHH
H s
*
s - s
1
p
p
p(u; v)
max
p(u; v) log p(u) p(v)
u2U;v2V
8
<
max
:u2U
;v2V
)
=
9
=
p(v j u)
:
p
(u0 ) p(v j u0 ) ;
u0 2
Lthatjuk teht, hogy a maximumot elg a csatorna bemeneti bcjn definilhat p(u) (u 2 U) eloszlsokon kpezni.
M EGJEGYZS : A csatornakapacits defincijban azrt rhattunk maximumot
szuprmum helyett, mert az I (U;V ) egy folytonos fggvny a p(u) (u 2 U) eloszlsok zrt, korltos halmazn, ezrt biztosan van olyan bemeneti eloszls, hogy a
bemenet s a kimenet kztti klcsns informci elri a csatornakapacitst.
A csatornakapacits intuitv jelentse teht a csatornn maximlisan tviheto
informci mennyisge. Tulajdonkppen ennek az lltsnak a pontos megfogalmazst adja a ksobbiekben trgyaland csatornakdolsi ttel.
Pldaknt szmoljuk ki a 3.7. pldban szereplo binris szimmetrikus csatorna
kapacitst:
3.10. plda. Esetnkben a bemenet eloszlsa egyetlen paramterrel jellemezheto:
PfU = 1g = 1 :
PfU = 0g = ;
164
3. C SATORNAKDOLS
Ekkor a csatornakapacits:
C = max I (U;V ) = max (H (V )
H (V j U )):
p log p
(1
p) log (1
p)
p) + (1
) p)
h( p) = 1
h ( p ):
m = 1; 2; : : : ; M :
3.4. C SATORNAKDOLSI
165
TTEL
dekdol
dnto
kdol
1 (y0 )=y
m
p(y0 j ym ) =
y0 2
= Dm
p(y0 j ym ):
Pe =
m=1
p(ym )Pe;m =
m=1 y 2
= Dm
p(y0 ; ym ):
166
3. C SATORNAKDOLS
1
2
2p3 ;
Az elozo pldban lthattuk, hogy a hibavalsznusg cskkensrt rat kellett fizetnnk: az zenetek leadshoz hromszor olyan hossz idore volt szksgnk. Definiljuk teht a jelsebessg fogalmt.
3.9. definci. Jelsebessgnek vagy kdolsi sebessgnek nevezzk az R =
rtket.
log M
n
A jelsebessg mrtkegysge bit/csatornahasznlat, ami a csatorna kihasznltsgt mri. Azt jelenti, hogy egy csatornahasznlattal hny bit zenetet visznk
t.
3.12. plda. Binris forrs k hosszsg blokkjainak kdolsa esetn a jelsebessg R = nk .
Olyan kdot szeretnnk kszteni, hogy egyidejuleg Pe kicsi, az R jelsebessg
pedig minl nagyobb legyen. Az a krds, hogy megfelelo kdolssal s dekdolssal milyen maximlis jelsebessg rheto el, ha az tvitel husgvel szemben
tmasztott kvetelmny: Pe < , ahol > 0 adott hibakorlt. A kvetkezokben
trgyaland csatornakdolsi ttel, illetve annak megfordtsa azt a meglepo tnyt
mondja ki, hogy tetszoleges -ra ez a maximlisan elrheto jelsebessg fggetlen
-tl, s megegyezik a csatornakapacitssal.
Eloszr azt a krdst vizsgljuk, hogy adott R = lognM jelsebessg mellett milyen kicsi lehet a dekdols hibavalsznusge. Jellje az Y valsznusgi vltoz
a tovbbtand zenetet, mely M klnbzo rtket vehet fel. A kdol utn az
f (Y) = C = (C1 ; : : : ; Cn ) kdjelsorozat jelenik meg ez a csatorna bemenete ,
mg a csatorna kimenete a V = (V1 ; : : : ; Vn ) jelsorozat. A dekdols eredmnye
3.4. C SATORNAKDOLSI
167
TTEL
3.2. ttel (A csatornakdolsi ttel gyenge megfordtsa). A C kapacits diszkrt memriamentes csatorna minden R jelsebessgu s n szhossz kdjra
Pe 1
C
R
1
:
nR
3.1. kvetkezmny. Ha R > C, akkor lim inf Pe > 0, azaz ha n elg nagy, akkor
n!
nem ksztheto olyan kd, amelyre a dekdols hibakorltja tetszolegesen kicsi.
Mielott rtrnnk a bizonytsra, egy nmagban is rdekes lemmt ltunk be.
3.1. lemma (Fano-egyenlotlensg). Tegyk fel, hogy az X s az Y valsznusgi vltozk rtkket ugyanabbl az M elemu halmazbl veszik fel. Ha Pe =
p(x; y) annak a valsznusge, hogy X 6= Y , akkor
x y6=x
H (X j Y ) Pe log (M
1) + h(Pe );
p (y )
p(y)
p (y )
p(y) = (1
x y6=x
p(x)) = M
1;
p (y )
;
M 1
Pe
= Pe log (M
1) + Pe log
1
:
Pe
168
3. C SATORNAKDOLS
Pe ) log
1
1
Pe
(g(V)))
I ( f (Y); V) = I (C; V)
(3.1)
u = (u1 ; : : : ; un ) 2 Un :
p(v j u) = p(vi j ui );
i=1
ezrt
H (V j U)
i =1
i=1 u
n
H (Vi j Ui )
i=1
H (V) H (Vi );
i =1
teht
I (U; V) (H (Vi )
i=1
(3.2)
3.4. C SATORNAKDOLSI
169
TTEL
Pe log (M
e ) log M
I (Y; Y
nC:
R
C;
nytst itt nem ismertetjk. Ezrt nevezik a 3.2. ttelt a kdolsi ttel gyenge
megfordtsnak.
A kvetkezo ttelt, amelyet eloszr C.E. Shannon mondott ki, az informcielmlet egyik alapttelnek is szoks nevezni.
3.3. ttel (Csatornakdolsi ttel). Tekintsnk egy C kapacits diszkrt memriamentes csatornt. Ekkor brmely r < C s > 0 szmhoz ltezik olyan C =
fc1; : : : ; cM g csatornakd amelynek kdszavai n hosszsgak , hogy
a) Pe <
b) M > 2rn , azaz a
log M
n
i=1
n
170
3. C SATORNAKDOLS
halmazt a kvet-
p(v j u)
p(v)
p(v j ci )
p(v)
2nR
j =1
j6=i
(1
v
=
Qi (c1 ; : : : ; cM );
j6=i v
3.4. C SATORNAKDOLSI
171
TTEL
ahol
IT (u; v) =
1; ha (u; v) 2 T
= T
0; ha (u; v) 2
azaz a Pe;i (i = 1; : : : ; M ) feltteles hibavalsznusgek fellrol becslhetok a kdszavak igen bonyolult Qi fggvnyeivel. Olyan kdot szeretnnk tallni (vagy
legalbb a ltezst bizonytani), amelyre Qi (c1 ; : : : ; cM ) minden i-re kicsi, ekkor
ugyanis Pe is kicsi. Sajnos a Qi fggvnyek szma s bonyolultsga olyan nagy
lehet, hogy hagyomnyos minimalizlsi mdszerekkel remnytelen j kdot
tallni. Szerencsre azonban ltezik egy meglepo technika, amellyel j kdot kszteni ugyan nem tudunk, azonban a ltezst be tudjuk ltni. Ez a technika az
n. vletlen kdols. Ennek lnyege rviden az, hogy a kdszavakat vletlenszeruen sorsoljuk, s az gy ksztett kdra vizsgljuk a Qi (c1 ; : : : ; cM ) valsznusgi
vltozkat. Meglepo, de kiderl, hogy a Qi valsznusgi vltozk vrhat rtke
minden i-re nullhoz tart, ha M = d2rn e s n ! . Ebbol pedig mr knnyu lesz
beltni a kvnt tulajdonsg kd ltezst.
Az elso krds nyilvn az, hogy milyen eloszls szerint sorsoljuk ki az egyes
ci = (ci1 ; : : : ; cin ) (i = 1; : : : ; M) kdszavakat: Legyen egy C = fc1 ; : : : ; cM g kd
valsznusge:
M
i=1 j=1
E(Qi )
(1
E
j6=i
IT (C j ; v) p(v j Ci )
c1 ;:::;cM
p(c1 ; : : : ; cM ) (1
p(ci) p(v j ci ) (1
p(u v) (1
;
u;v
j6=i
IT (u; v)) =
Pf(U; V) 2
= T g;
IT (ci ; v)) =
ci ;v
E1 + E2; j :
E1
172
3. C SATORNAKDOLS
p(v j u)
p (v )
p(vk j uk )
p(vk )
log
k=1
i(uk
vk ):
k=1
(Az itt szereplo eloszlsok defincija alapjn gondoljuk t, mirt igaz a p(v) =
n
p(vk ) egyenlosg.)
k =1
lim P
n!
1 n
i(Uk ; Vk ) < R
n k
=1
(
lim P
n!
1 n
(i(Uk ; Vk )
n k
=1
teht
Ei(Uk ; Vk )) < R
= 0;
(3.3)
n!
azaz E1 nullhoz tart, ahogy n tart a vgtelenhez. Most megprbljuk E2; j -t fellrol becslni.
E2; j
c1 ;:::;cM
p(c1 ; : : : ; cM ) IT (c j ; v) p(v j ci ) =
v
p(c j )IT (c j
c j ;v
v) p(ci ) p(v j ci ) =
ci
p(c j ) p(v)IT (c j
v);
c j ;v
azaz
E2; j =
2T
p(u) p(v):
(u;v)
E2; j 2
nR
2T
(u;v)
nR
p(u; v) 2
nR
173
3.5. F ELADATOK
sszegezve az eredmnyeket:
E(Qi ) = E1 + E2; j Pfi(U; V) < nRg + M 2
i6= j
nR
(3.4)
Megjegyezzk, hogy E(Qi ) nem fgg i-tol. Vlasszuk most a kdszavak szmt M = d2nr e-re. Ekkor M 2 nR 2 2 n(R r) . Mivel r < R < C, ezrt (3.3) miatt a (3.4) kifejezs jobb oldala tetszolegesen kicsiv teheto, azaz tallhat olyan
nagy n kdszhossz, hogy az M = d2nr e mretu kdokra minden Qi vrhat rtke: E(Qi ) < (i = 1; : : : ; M).
Azt teht belttuk, hogy a Pe =
1
M
i=1
3.5. Feladatok
3.1. feladat (Paritsbit hasznlata visszacsatolsos csatornn).
A gyakorlatban rendkvl gyakran hasznlt kdolsi mdszer az, hogy az zenet
binris sztringet egy bittel meghosszabbtjuk, s ez a bit ppen a sztring bitjeinek
binris sszege (paritsbit). Ez a kd termszetesen hibajavtsra nem alkalmas,
de ha pratlan szm hiba trtnik az tvitel sorn, akkor azt a dekdol szreveszi, s ha van visszacsatols a csatornn, akkor az zenet ismtelt kldst krheti.
A legegyszerubb eset a kvetkezo: Tekintsnk egy binris szimmetrikus csatornt
p hibavalsznusggel. Csakgy, mint az elozo pldban, az zenet a 0 s 1 szimblumok valamelyike. A kdolsi szably szerint, ha az zenet 0, akkor a (00)
kdszt kldjk t a csatornn, mg 1 esetn az (11) kdszt. Dekdolskor, ha a
kt vett bit megegyezik, akkor annak megfeleloen dntnk, ha pedig nem, akkor
jabb kldst ignylnk.
174
3. C SATORNAKDOLS
p2
;
2p + 2p2
2
2p + 2p2
s
s
s
s XX
zXXXs
:
s
s
:
s
XX1XX
XXzXXX
0
1 XX1X
XXX>
XXX 1
z
1 2
:
12
2
0
s
s
XX1XX
b) Tegyk fel most, hogy a kt csatornt egyszerre hasznljuk, azaz a bemeneti 0,1 vagy 2 szimblumot mindkt csatornn tovbbtjuk. gy egy olyan
csatornhoz jutottunk, amelynek hrom lehetsges bemenete, s ngy kimenete van. Mennyi az j csatorna kapacitsa? Mutassa meg, hogy mindhrom csatorna esetn van olyan R = C jelsebessgu kd, amely nulla hibavalsznusggel dekdolhat!
3.3. feladat (mod 11 csatorna). Legyen egy diszkrt memriamentes csatorna
bemenete U 2 f0; 1; : : : ; 10g. A csatorna kimenett, V -t a V = U + Z (mod 11)
egyenlet hatrozza meg, ahol Z fggetlen U-tl s
PfZ = 1g = PfZ = 2g = PfZ = 3g =
a) Hatrozza meg a csatorna kapacitst!
1
:
3
175
3.5. F ELADATOK
b) Adjon maximlis jelsebessgu, egy hossz blokkokat kdol csatornakdot, melyet 0 hibavalsznusggel lehet dekdolni! Mekkora az gy elrheto
legnagyobb jelsebessg?
3.4. feladat. Az brn lthat blokksmn U ; Z s W fggetlen binris valsznusgi vltozk, pedig modulo 2 sszeadst jell. Az elrendezs meghatroz egy
binris csatornt, melynek bemenete U, kimenete V .
U
m-
= 1 = q?
H (p):
176
3. C SATORNAKDOLS
3.8. feladat.
a) Mennyi az brn lthat csatorna kapacitsa?
b) Az elozo csatornnl legyen p = 14 . Tegyk fel, hogy a csatornt sszesen
30-szor hasznlhatjuk. Kzeltoleg hny bites binris zenetek tvitelt
valsthatjuk gy meg, ha az zenet meghibsodsnak valsznusgt kis
szinten akarjuk tartani?
0
1 p
s
s
s
s
s
:
0
ZpZ
ZZ: 1
1 p
XXXZ~Z
1X
XzXXZXZ
p
p:
XXX>
2X
XzXXX
1 p
2
p
XX
3X
XXX 3
1 p XXz
s
s
s
s
3.9. feladat (Kapacits fltti jelsebessg). Tegyk fel, hogy egyenletes eloszlssal vletlenszeruen sorsolt n hosszsg binris sztringeket kdols nlkl tovbbtunk egy p hibavalsznusgu binris szimmetrikus csatornn. Vilgos, hogy
ekkor a jelsebessg nagyobb, mint a csatornakapacits. Mekkora a dekdols hibavalsznusge? Mekkorra rdemes az n blokkhosszt vlasztani?
3.10. feladat (MAP s ML dekdols). Vegynk egy binris szimmetrikus csatornt p hibavalsznusggel. Tegyk fel, hogy kt zenet egyikt akarjuk tovbbtani, s n hosszsg ismtlses kdot alkalmazunk, azaz az elso zenet
esetn az n darab nullbl, mg a msodik esetn az n darab egyesbol ll kdszt
kldjk t a csatornn. Tudjuk, hogy a maximum-likelihood dekdols azt a kdszt vlasztja ki, amelynek a csatorna kimenetn vett sorozattl mrt Hammingtvolsga kisebb. Tudjuk, hogy a legkisebb hibavalsznusgu dekdols a maximum a posteriori dekdols. Tegyk most fel, hogy a kt zenet kldsnek
valsznusge q, illetve 1 q. llaptsa meg a maximum a posteriori dekdols
szablyt! Pldul p = 13 s q = 0:1 esetn hatrozza meg a dekdolsi szablyt n
tbb rtkre, pl. n = 3; 10; 100 esetn.
3.11. feladat (ML dekdols trlses csatornn). llaptsa meg a maximumlikelihood dekdols szablyt binris trlses csatornn!
4. fejezet
Hibajavt kdols
A hibajavt kdok s a titkosts egszen a 80-as vek elejig kvl rekedt a polgri alkalmazsok krn. A kdelmlet esetn ennek elsosorban technolgiai okai
voltak, ezeket az akadlyokat a mikroelektronika tmeges elterjedse sprte el,
mg a titkosts azrt trhetett be a civil terletre, mert megszletett az utbbi vek
informcitechnikjnak egyik legeredetibb tlete, a nyilvnos kulcs titkosts.
A kvetkezo kt fejezet clja ppen az, hogy ismertesse azon eljrsok elmleti alapjait, melyek mr elterjedtek vagy elterjedsk megkezdodtt a tvkzlsi
s informatikai tmegszolgltatsokban.
Ez a rsz igyekszik sszefoglalni a hibajavt kdok elmletbol azokat az
eredmnyeket, melyek egyrszt viszonylag egyszeru matematikai alapokkal mr
megrthetok, msrszt a hrkzlsi illetve informatikai tmegszolgltatsokban
alapveto fontossgak.
A hibajavt kdok trtnete az informcielmlet kialakulsval kezdodtt,
nevezetesen, amikor Shannon bebizonytotta a csatornakdolsi ttelt, vagyis megtallta a zajos csatorna megbzhat hasznlatnak az elvi korltjt, a csatornakapacitst, s az alkalmazott bizonyts nem adott eljrst a csatornakapacitst kzelto hatkony kdok konstrukcijra. Az 50-es vekben fedeztk fel az alapveto
blokk-kdokat (Hamming, BCH, ReedSolomon, stb.), mg a 60-as vekre teheto
a konvolcis kdok s a Viterbi-algoritmus bevezetse. Egszen a 70-es vek
msodik felig a hibajavt kdols fo felhasznlsi terletei a katonai hrkzls
s a nagymegbzhatsg irnyt rendszerek voltak, csak a mikroprocesszorok
elterjedsvel nylt meg az t a tmeges polgri alkalmazsok fel.
178
4. H IBAJAVT KDOLS
forrs
kdol
csatorna
dekdol
u0
nyelo
4.1. KDOLSI
179
ALAPFOGALMAK
: C ! F k:
Mivel f egyrtelmuen meghatrozza f 1 -et, ezrt dekdols alatt a ksobbiekben csak a g fggvnyt rtjk. A g dekdol fggvnyknt az algebrai hibajavt kdok elmletben specilis fggvnyt vlasztunk, nevezetesen a v vektorhoz
megkeressk azt a c0 2 C kdszt, mely Hamming-tvolsg szerint hozz a legkzelebb van, vagy ha tbb ilyen van, akkor az egyiket, teht teljesl, hogy ha
c0 = g(v), akkor
d (c0 ; v) = min d (c; v):
c2C
4.1. plda. Tekintsk azt a feladatot, amikor a forrs a kvetkezo ngy lehetsges
zenetet bocstja ki: alma, krte, szilva, cseresznye, melyeket rendre 00, 01, 10,
11 sorozatokkal forrskdolunk. A 2 hossz forrsszegmensekhez az f kdol a
kvetkezo, 5 hossz kdszavakat rendeli hozz:
u1 u2
0 0
0 1
1 0
1 1
!
!
!
!
c1 c2 c3 c4 c5
0 0 0 0 0
0 1 1 0 1
1 0 1 1 0
1 1 0 1 1
c1
c2
c3
c4
180
A g s az f
4. H IBAJAVT KDOLS
1
v1 v2 v3 v4 v5 9
0 0 0 0 0 >
>
>
1 0 0 0 0 >
>
>
=
0 1 0 0 0
0 0 1 0 0 >
>
>
>
0 0 0 1 0 >
>
;
0 0 0 0 1
0
1
0
0
0
0
1
1
0
1
1
1
1
1
1
0
1
1
0
0
0
0
1
0
1
1
1
1
1
0
1
0
1
1
1
1
0
0
1
0
0
0
1
1
1
0
1
1
1
1
1
1
0
1
0
0
0
0
0
1
1
0
1
1
1
1
1
1
0
1
1
1
0
0
0
1
0
0
1
1
1
1
0
1
1
1
1
1
1
0
0
0
1
1
0
1
0
1
0
0
0
0
1
1
0
0
1
0
1
0
0
0
1
1
0
1
0
1
1
1
1
1
1
1
0
0
1
0
1
0
9
>
>
>
>
>
>
=
>
>
>
>
>
>
;
9
>
>
>
>
>
>
=
>
>
>
>
>
>
;
9
>
>
>
>
>
>
=
>
>
>
>
>
>
;
9
>
>
=
>
>
;
9
>
>
=
>
>
;
u01 u02
0 0 0 0 0
0 0
0 1 1 0 1
0 1
1 0 1 1 0
1 0
1 1 0 1 1
1 1
0 0 0 0 0
0 0
0 1 1 0 1
0 1
4.1. KDOLSI
181
ALAPFOGALMAK
Az elso 24 kimeneti sz dekdolsakor nincs problma, hiszen minden 6 szbl ll csoport minden szava olyan, hogy vagy kdsz (az elso helyen ll),
vagy a kdsz egy bitjnek a megvltoztatsval (egy hibval) kpzodtt. A 25
28. szavak mindegyike c1 -tol s c4 -tol 2, mg c2 -tol s c3 -tl 3 tvolsgra van. Itt
nknyesen a dekdols eredmnye c1 (jobb rvnk nincs, mint az, hogy jobban
szeretjk az almt, mint a cseresznyt). A 2932. szavak mindegyike c1 -tol s c4 tol 3, mg c2 -tol s c3 -tl 2 tvolsgra van. Itt (szintn nknyesen) a dekdols
eredmnye c2 .
4.2. plda. A 4.1. pldban szereplo zenetekhez rendeljnk 3 hossz kdszavakat:
u1 u2
c1 c2 c3
c1
0 0 ! 0 0 0
c2
0 1 ! 0 1 1
1 0 ! 1 0 1
c3
c4
1 1 ! 1 1 0
azaz az u1 u2 bitet kiegsztjk egy paritsbittel. Ez a kd mr sokkal szegnyesebb, mert ha a v nem kdsz, akkor 3 kdszbl nyerheto 1 bit megvltoztatsval, azaz 1 hibval.
A ksobbiekben kiderl, hogy a kdol f fggvny leglnyegesebb tulajdonsga a C kd egy paramtere, amit kdtvolsgnak neveznk, s dmin -nel jellnk:
dmin = min0 d (c; c0 ):
c6=c
c;c0 2C
182
4. H IBAJAVT KDOLS
Hibajavts esetn azt krdezzk, hogy ha t a hibk szma, akkor mi biztostja, hogy a v vett szbl a c kldtt kdsz egyrtelmuen visszallthat legyen,
azaz minden ms c0 kdszra
d (v; c0 ) > d (v; c)
(4.1)
d (v; c);
(4.2)
>
d (v; c):
j
<
M qk :
4.1. KDOLSI
183
ALAPFOGALMAK
Mivel a k 1 hossz klnbzo sorozatok szma qk 1 , ezrt qk 1 < M miatt ltezik kt kdsz c s c0 , melyek az elso k 1 koordintban megegyeznek. Ezekre
d (c; c0 ) n
kvetkezskppen
k + 1;
dmin n
azaz
k + 1;
M qk qn
dmin +1
k + 1:
4.1. definci. Azon kdot, melyre a Singleton-korltban = ll, maximlis tvolsg vagy MDS (maximum distance separable) kdnak nevezzk.
A 4.1. pldban k = 2; n = 5; dmin = 3, teht ez a kd nem MDS kd.
4.2. ttel (Hamming-korlt). Ha egy (n; k) paramteru kd t hibt tud javtani,
akkor
t
n
(4.3)
i ( q 1 )i q n k :
i =0
B IZONYTS : Egy kdsz kzepu gmb lljon azokbl a vektorokbl, melyek
a kdszbl legfeljebb t hibval keletkeznek. (q 1)i darab olyan vektor van,
amely az adott kdsztl valamely fix i pozciban tr el, ezrt egy ilyen gmb
t
i =0
n
i (q
kdsz krli gmbk diszjunktak. Ekkor viszont az sszes gmbben levo vektorok szma kisebb vagy egyenlo, mint qn , teht
q
i=0
n
i
(q
1)i qn :
j
184
4. H IBAJAVT KDOLS
4.2. definci. Az olyan kdokat, ahol a Hamming-korltban = ll, perfekt kdoknak nevezzk.
ltalban a Hamming-korltot binris (q = 2) esetben idzik, amikor az a
kvetkezo egyszeru alak:
t
n
i 2n k :
i=0
A kvetkezo szakaszban mutatunk egy kdot, a binris Hamming-kdot (t
mely perfekt kd, azaz
1 + n = 2n k :
1),
i gi = 0
i =1
4.2. B INRIS
H AMMING - KD
185
c = ui gi
(4.4)
i=1
c = ui gi
i=1
c = y i gi ;
i=1
(4.5)
186
4. H IBAJAVT KDOLS
Vegyk szre, hogy ha nem trodnk azzal, hogy melyik kdsz melyik zenethez tartozik, csak a kdszavak halmazt tekintjk, akkor G nem egyrtelmu,
vagyis tbb mtrix is generlhatja ugyanazt a C kdszhalmazt. A kvetkezo
definci egy megfeleltetst definil az zenetek s a kdszavak kztt.
4.7. definci. Egy (n; k) paramteru lineris kd szisztematikus, ha minden kdszavra igaz, hogy annak utols n k szimblumt elhagyva ppen a neki megfelelo k hosszsg zenetet kapjuk, ms szavakkal a k hossz zenetet egsztjk
ki n k karakterrel.
A 4.1. szakaszban mr leszgeztk, hogy dekdols alatt csak az esetleges
hibk kijavtst rtjk, aminek eredmnyekpp egy kdszt kapunk. Az zenetvektor visszanyershez mg el kell ugyan vgezni a kdols inverz muvelett, ez
azonban rendszerint trivilis lps, szisztematikus kd esetn pldul csak el kell
hagyni a kdsz egy rszt (a vgt).
Szisztematikus kd esetn a genertormtrix is egyrtelmu, mgpedig
G = (Ik ; B)
alak, ahol Ik a k k mretu egysgmtrix, B pedig k (n
u zenethez tartoz c kdsz szerkezete teht:
(4.6)
k) mretu mtrix. Az
=0
4.2. B INRIS
187
H AMMING - KD
T T
= H(uG) = HG
= 0:
k)
= (A; In k )(Ik ; B) = A + B = 0:
Azaz
A = BT
kell teljesljn. (Binris esetben BT = BT .) Meg kell mutatni, hogy az gy
kapott H mtrix valban paritsmtrix. Azt tudjuk, hogy minden c kdszra
HcT = 0. A msik irny hinyzik: ha egy c = (c1 ; c2 ; : : : ; ck ; ck+1 , : : : ; cn ) vektorra HcT = 0, akkor c kdsz, de ez is egyszeru:
0 = HcT
= (A; In k )c = (
BT ; In
k )c
miatt
(c1 ; c2 ; : : : ; ck )B + (ck+1 ; : : : ; cn ) = 0;
teht
(ck+1 ; : : : ; cn ) = (c1 ; c2 ; : : : ; ck )B;
kvetkezskpp
(c1 ; c2 ; : : : ; ck ; ck+1 ; : : : ; cn ) = (c1 ; c2 ; : : : ; ck )(Ik ; B);
188
4. H IBAJAVT KDOLS
G=
1 0 1 1 0
0 1 1 0 1
1 1 1 0 0
H = 1 0 0 1 0 A:
0 1 0 0 1
Ugyangy kapjuk a 4.2. plda szisztematikus genertormtrixt s paritsmtrixt:
G=
1 0 1
0 1 1
H=
1 1 1
;
A kvetkezokben a sly fogalmt definiljuk, megmutatjuk, hogy lineris kdoknl a minimlis sly a kdtvolsggal egyenlo, majd tovbbi hrom ttelt mondunk ki velk kapcsolatban. (Emlkeztetnk, hogy kt kdsz tvolsga azon
koordintik szma, ahol a kt kdsz klnbzik.)
4.9. definci. Egy c vektor slya a koordinti kztt levo nem nulla elemek
szma, jellse w(c).
4.10. definci. Egy C kd minimlis slyn a
wmin = min w(c)
c2C
c6=0
szmot rtjk.
4.2. B INRIS
189
H AMMING - KD
4.4. ttel. Ha C lineris kd, akkor a kdtvolsga megegyezik a minimlis slyval, azaz
dmin = wmin :
B IZONYTS :
dmin = min0 d (c; c0 ) = min0 w(c
c6=c
c6=c
c0 ) = min
w(c00 ) = wmin ;
00
c
6=0
ahol az utols elotti egyenlosg felrsakor a C kd linearitst hasznltuk ki, ebbol kvetkezik ugyanis, hogy c00 = c c0 is kdsz, tovbb, az is, hogy minden
kdsz eloll ilyen klnbsg alakjban. (Utbbi ahhoz szksges, hogy a minimum kpzsekor valban minden c00 2 C-t figyelembe vehessnk.)
A 4.4. ttel jelentosge abban ll, hogy segtsgvel a dmin definci alapjn trtno kiszmtshoz szksges jCj (jC2 j 1) muveletet a wmin kiszmtshoz
szksges jCj 1 muveletre reduklhatjuk. (jCj-vel a C elemszmt jelltk.)
A kvetkezokben azt mutatjuk meg, hogyan hasznlhat a H mtrix a dekdols sorn.
4.11. definci. Az s = eHT mennyisget szindrmnak nevezzk.
Legyen az adott kdsz c, a vett sz v. Az e = v
nevezzk. Vegyk szre, hogy
HvT
c vektort hibavektornak
= H(c + e) = Hc + He = He
vagyis HvT rtke csak a hibavektortl fgg, az adott kdsztl nem. A szindrma
teht a hibavektor egy lineris lekpezse.
A dekdols leggyakoribb mdja a szindrma dekdols. A fentiek alapjn
a dekdols a kvetkezokppen mehet vgbe: a vett v szbl kiszmtjuk az sT =
HvT = HeT szindrmt, ennek alapjn megbecsljk a hibavektort, s ezt v-bol
levonva megkapjuk a kdszra vonatkoz becslsnket.
A szindrmnak hibamintra trtno lekpezsi mdjt tblzatba szoks foglalni, az n. standard elrendezsi tblzatba.
Valamely e hibaminta ltal generlt mellkosztly az e + c; c 2 C(n; k) vektorok halmaza. Adott mellkosztly elemeihez azonos szindrma tartozik. Az
e = 0 zrus hibavektorhoz tartoz mellkosztly a C(n; k) kddal azonos. Ha egy
e hibaminta e = e0 + c alakban rhat fel, akkor a kt hibaminta (e s e0 ) azonos mellkosztlyt generl. Azonos mellkosztlyba tartoz hibamintk kzl
190
4. H IBAJAVT KDOLS
1)
1) + e(1)
s(0)
e(0) = 0
c(1)
c(q
s(1)
e(1)
c(1) + e(1)
..
.
c(q
..
.
n k
s (q
..
.
1)
n k
e(q
n k
1)
c(1) + e(q
..
..
.
.
k
1)
c(q
{z
1) + e(qn
1)
mellkosztly elemek
A w(e(i+1) ) w(e(i) ); e(0) = 0; i = 0; 1; : : : ; qn k 2 a szoksos sorrend. Knynyen lthat, hogy a tblzat elemei klnbzoek. Egy soron bell ez nyilvnval.
Klnbzo sorokat tekintve tegyk fel, hogy e(i) + c( j) = e(k) + c(m) , ahol i > k.
Mivel ebbol e(i) = e(k) + c(m) c( j) = e(k) + c(n) kvetkezik, ahol c( j) ; c(m) ; c(n) 2
C(n; k), ezrt e(i) -nek is az e(k) mellkosztly-vezetoju sorban kell lennie, ami
ellenttes kiindulsi felttelnkkel.
Az e(i) ; i = 1; 2; : : : ; qn k 1 mellkosztly-vezetoket javthat hibamintknak nevezzk, ugyanis ha a v vett sz szindrmja s(i) , akkor a b
c = v e(i) kdszra dntnk. A szindrma dekdolsnak ezt az elsosorban elvi mdjt
tblzatos dekdolsnak nevezzk (look up table decoding).
A szindrmt hasznl tblzatos dekdol trja a vizsglt binris esetben
k
n
darab hibavektort tartalmaz, s a tblzat elemeit a szindrma segtsgvel
2
cmezzk.
0 0 1 1 1
H = 0 1 0 1 0A
1 0 0 1 1
mtrixszal adott kd esetre.
4.2. B INRIS
H AMMING - KD
191
javthat
hibamintk
000
001
010
011
100
101
110
111
00000
10000
01000
00110
00100
00001
01100
00010
=0
192
4. H IBAJAVT KDOLS
teht pldul, hogy szisztematikus lesz-e a kd. V.. a 4.7. definci utn mondottakkal.) Az gy kapott kdot nevezzk binris Hamming-kdnak, mely teht k
hossz zenethez n hossz kdszt rendel, ahol n s k kztt fennll az
n = 2n
(4.7)
k= 1
4
11
26
57
120
1 1 0 1 1 0 0
H = 1 0 1 1 0 1 0 A:
0 1 1 1 0 0 1
A genertormtrixa ebbol knnyen kiszmthat a mr szerepelt A =
sszefggs alapjn:
0
1
B 0
G=B
0
0
0
1
0
0
0
0
1
0
0
0
0
1
1
1
0
1
1
0
1
1
BT
0
1 C
C:
1 A
1
A (7; 4)-es Hamming-kdot egy pratlan paritsra kiegszto paritsbittel kapunk egy (8; 4) paramteru, tovbbra is egy hibt javt kdot, amelyet a Teletextben hasznlnak [17].
A kzvetlen muholdas musorszrs (Direct Broadcasting Satellite, DBS) digitalizlt hangjt is hibajavt kddal vdik. gy a D2-MAC/PACKET szabvnya [3]
szerint az egyik vltozatban a 14 bites hangminta felso 11 bitjt egy (16; 11) paramteru kddal kdoljk, ami a (15; 11) paramteru Hamming-kd kiegsztse
4.3. V GES
TEST
193
c) Ltezik egy 0-val jellt eleme G-nek gy, hogy minden 2 G-re 0 +
= + 0 = . 0-t nullelemnek nevezzk.
194
4. H IBAJAVT KDOLS
a mod p;
ahol a vals kivonst is jelli. 2. a), b), d) s 3. megint trivilis. 2. a)-nl azt kell
megmutatni, hogy a; b 6= 0 esetn a b 6= 0. Ellenkezo esetben a b = N p alak
4.3. V GES
195
TEST
lenne, teht p osztan a b-t, azaz vagy a-t vagy b-t, ami nem lehet, mert mindketto
1 s p 1 kztti szm. 2. d)-hez azt kell beltni, hogy minden a 6= 0-hoz ltezik
b, hogy a b = 1. Az 1 a; 2 a; 3 a; : : : ; ( p 1) a szmok mind klnbzok,
mivel ellenkezo esetben j a = i a lenne, azaz ( j i) a = 0 lenne, ami 2. a)nak ellentmond. A fent emltett p 1 darab szm halmaza teht megegyezik a
f1; 2; : : : ; p 1g halmazzal, ezrt ltezik b, melyre b a = 1.
Lssuk most a GF(q) nhny egyszeru tulajdonsgt!
4.1. lemma. Minden 0 6= a 2 GF(q)-ra
aq
B IZONYTS :
esetn
= 1:
Legyenek a1 ; a2 ; : : : ; aq
a a1 ; a a2 ; : : : ; a aq
fa1 a2
;
;:::;
aq
g = fa a 1 a a 2
;
;:::;
a aq
kvetkezskpp
a1 a2 : : : aq
1=
aq
a1 a2 aq
:::
1;
1-nek.
= 1;
196
4. H IBAJAVT KDOLS
=a
km+l
= 1.
=1
m k
= (a )
al = al
= 1;
j.
elem (6= 0)
1
2
3
4
5
6
hatvnyai
1
2; 4; 1
3; 2; 6; 4; 5; 1
4; 2; 1
5; 4; 6; 2; 3; 1
6; 1
rendje
1
3
6 (primitv elem)
3
6 (primitv elem)
2
A prmitv elem egyrszt igen fontos hatkony kdok konstrukcijakor, msrszt GF(q)-beli szorzsok s osztsok elvgzsekor. Ha a GF(q) egy primitv
eleme, akkor bevezethetjk egy a 2 GF(q) testelem alap logaritmust az
log a = a
4.4. L INERIS
KDOK , NEMBINRIS
H AMMING - KD
197
c 2 C:
A 4.2. szakaszhoz hasonl mdon belthat, hogy tetszoleges C lineris kdhoz ltezik egy k linerisan fggetlen sorbl s n oszlopbl ll G mtrix, melyre
c = uG;
(4.8)
=0
198
4. H IBAJAVT KDOLS
1) qn
teht
4.10. ttel. A maximlis hosszsg nembinris Hamming-kd perfekt kd.
A nembinris Hamming-kdok kzl klnsen rdekes az az eset, amikor
a kd szisztematikus s a paritsszegmens hossza 2, azaz n k = 2. Legyen
a GF(q) egy nem 0 eleme, melynek rendje m 2. Vlasszunk n (m + 2)-t s
k = (n 2)-t. Ekkor a paritsmtrix:
H=
1 1 1
1 2
1
n
1 0
0 1
1 0 0 0
0 1 0 0
0 0 1 0
..
..
.
.
0 0 0 0
0
0
0
1
1
1
2
..
.
n
C
C
C
C:
C
A
3
4.7. plda. rjuk fel a GF(7) feletti, (8; 6) paramteru Hamming-kd genertormtrixt s paritsmtrixt! GF(7)-ben a 3 primitv elem (lsd a 4.6. pldt), teht
H=
1 1 1 1 1 1 1 0
1 3 2 6 4 5 0 1
4.5. V GES
0
B
B
B
G=B
B
B
1
0
0
0
0
0
199
0
1
0
0
0
0
0
0
1
0
0
0
0
0
0
1
0
0
0
0
0
0
1
0
0
0
0
0
0
1
1
1
1
1
1
1
1
3
2
6
4
5
C B
C B
C B
C=B
C B
C B
A
1
0
0
0
0
0
0
1
0
0
0
0
0
0
1
0
0
0
0
0
0
1
0
0
0
0
0
0
1
0
0
0
0
0
0
1
6
6
6
6
6
6
6
4
5
1
3
2
1
C
C
C
C:
C
C
A
A polinom m fokszmt deg a(x) jelli. (Az a(x) 0 polinom fokszma definci
szerint legyen .)
4.16. definci. a(x) = b(x), ha ai = bi minden i-re.
Muveletek polinomok kztt:
1. Polinomok sszeadsa: c(x) = a(x) + b(x) tagonknt trtnik GF(q) feletti
muveletekkel: ci = ai + bi . Nyilvnvalan
deg c(x) maxfdeg a(x); degb(x)g:
2. Polinomok szorzsa: c(x) = a(x)b(x) minden tagot minden taggal szorzunk, majd az azonos fok tagokat csoportostjuk (az sszeadsok s szorzsok GF(q) felettiek):
minfi;deg a(x)g
ci =
j=0
a j bi
j:
Nyilvn
deg c(x) = deg a(x) + degb(x)
4.8. plda. Ha GF(2) felett a(x) = 1 + x s b(x) = 1 + x + x3 , akkor a(x) + b(x) =
x3 s a(x)b(x) = 1 + x2 + x3 + x4 .
200
4. H IBAJAVT KDOLS
4.12. ttel (Euklidszi oszts polinomokra). Adott a(x) s d (x) 6= 0 esetn egyrtelmuen ltezik olyan q(x), r(x) gy, hogy
a(x) = q(x)d (x) + r(x);
a m d k 1 x m k d (x )
s
q 1 (x ) = a m d k 1 x m
akkor
a(x) = q1 (x)d (x) + r1 (x)
s
deg(r1 (x)) < deg(a(x)):
Ha most a(x)-nek van egy
a(x) = qi (x)d (x) + ri(x)
elolltsa, ahol deg(ri (x)) deg(d (x)), akkor az elozo mdon ri (x) eloll
ri (x) = qi+1 (x)d (x) + ri+1(x)
alakban, ahol deg(ri+1 (x)) < deg(ri (x)), teht
a(x) = (qi+1 (x) + qi (x))d (x) + ri+1(x);
s deg(ri (x)) monoton fogy, ezrt legfeljebb m k lpsben a ttel ltal megkvnt felbontst kapjuk. Az egyrtelmusg igazolshoz tegyk fel, hogy van kt
klnbzo felbonts:
a(x) = q(x)d (x) + r(x)
4.5. V GES
201
a (x ) = q 0 (x )d ( x ) + r 0 ( x ) ;
s q(x) 6= q0 (x), teht
(q (x)
r0 (x):
r0(x))
=
=
msrszt
deg(r(x)
deg((q0 (x)
q(x))d (x)) =
ami ellentmonds.
4.19. definci. b 2 GF(q) gyke az a(x) polinomnak, ha a(b) = 0.
4.13. ttel. Ha c az a(x) polinom gyke, akkor az eloll
a(x) = b(x)(x
c)
alakban.
B IZONYTS : Alkalmazzuk a 4.12. ttelt d (x) = x
a(x) = b(x)(x
c esetn, akkor
c) + e:
c) + e = e:
202
4. H IBAJAVT KDOLS
1 = pi i :
i=1
gyke van, s
q 1
pi
<
1 s az x
q 1
pi
1 polinomnak legfeljebb
q 1
pi
pi i
6= 1. Legyen
bi = ai
b = bi :
i=1
Megmutatjuk, hogy b primitv elem. Ehhez eloszr azt ltjuk be, hogy bi rendje
i
q 1
ni
= bi i
bi i
ezrt a pi i
(i
ni )
( i
ni )
bi i
= 1;
= 1,
=1
bi i
q 1
pi
= ai
6= 1
teht
203
pi
=q
1;
i=1
4.6. ReedSolomon-kd
Ebben a szakaszban a lineris kdok egyik leggyakrabban hasznlt osztlyval, a
ReedSolomon-kdokkal, azok klnbzo konstrukciival ismerkednk meg.
4.1. konstrukci. Legyenek 0 ; 1 ; : : : ; n 1 a GF(q) klnbzo elemei (n q),
s u = (u0 ; u1 ; : : : ; uk 1 ) (ui 2 GF(q)) a k hosszsg zenetszegmens, amelyhez
az
u (x ) = u 0 + u 1 x + : : : + u k 1 x k 1
zenetpolinomot rendeljk. Ekkor a ReedSolomon-kdnak az u zenethez tartoz n hossz c kdszavt a kvetkezo mdon lltjuk elo:
c0 = u(0 )
c1 = u(1 )
c2 = u(2 )
..
.
cn
1 = u(n 1 ):
k1
k2
kn
1
1
k + 1;
204
4. H IBAJAVT KDOLS
B IZONYTS :
w(c)
teht
wmin n
k + 1:
k + 1 dmin = wmin ;
1 1
1
1 2
..
.
1 k
2(k
1
2
4
1)
1
n 1
2(n 1)
. . ..
. .
(k 1)(n
C
C
C
C
C
A
1)
c(x) = c0 + c1 x + + cn 1 xn
205
k g:
ahol
0
B
B
H=B
1
1 2
...
1 n
2(n
2
4
k
=0
n 1
2(n 1)
. . ..
. .
(n k)(n
k)
C
C
C:
A
1)
1)
1 );
jellssel:
c 0 a0 + c 1 a1 + : : : + c n 1 an
= 0:
Ezt az egyenletet csak olyan nemnulla c vektorok (kdszavak) elgthetik ki, melyek slya legalbb wmin , ilyen sly viszont van, teht a linerisan fggo oszlopok minimlis szma wmin , amely a 4.4. ttel miatt ppen dmin .
Erre alapozva mr szinte kszen vagyunk. Ha a 4.2. konstrukciban a G kpletben k helyett (n k)-t runk, akkor annak minden (n k) (n k)-s rszmtrixa invertlhat. Ha egy ilyen rszmtrixot sszehasonltunk a H ugyanezen oszlopokbl ll rszmtrixval, akkor vegyk szre, hogy az egymsnak
megfelelo oszlopok egy nem 0 elem faktorban klnbznek, teht a H minden
206
4. H IBAJAVT KDOLS
(n
k oszlopa
k < dmin ;
n
azaz
k + 1 dmin ;
ci =
u j i j
j=0
0in
1:
ci il = 0
i=0
1ln
k:
A c defincijt felhasznlva
n 1
ciil
i=0
Mivel 0 j k
n 1k 1
u j i j il
i=0 j=0
1 s 1 l n
n 1
i( j+l) =
i=0
k 1
n 1
j=0
i=0
uj
i j
k, ezrt 1 j + l n
n( j+l ) 1
j+l 1
1 j+l
j+l
1
1
( +l )
1, teht j+l
6= 1 s
= 0;
207
rgzts irnya
mintavtel irnya
x1;1
x1;2
y1;1
y1;2
x7;1
x7;2
y7;1
y7;2
x13;1
x13;2
y13;1
y13;2
x139;1
x139;2
y139;1
y139;2
r1;1
r2;1
r3;1
r4;1
r1;2
r2;2
r3;2
r4;2
r1;3
r2;3
r3;3
r4;3
r1;4
r2;4
r3;4
r4;4
x6;1
x6;2
y6;1
y6;2
q1;1
q2;1
q3;1
q4;1
x12;1
x12;2
y12;1
y12;2
q1;2
q2;2
q3;2
q4;2
x18;1
x18;2
y18;1
y18;2
q1;3
q2;3
q3;3
q4;3
x144;1
x144;2
y144;1
y144;2
q1;24
q2;24
q3;24
q4;24
r21;1
r22;1
r23;1
r24;1
q1;25
q2;25
q3;25
q4;25
r21;2
r22;2
r23;2
r24;2
q1;26
q2;26
q3;26
q4;26
r21;3
r22;3
r23;3
r24;3
q1;27
q2;27
q3;27
q4;27
r21;4
r22;4
r23;4
r24;4
q1;28
q2;28
q3;28
q4;28
Nevezetesen egy 24 24-es mtrix oszlopai egymsutn kvetkezo 6 mintavteli idopontban vett kt minta (bal s jobb hangcsatorna) 2 2 = 4 bjtjt tartalmazzk. Ha xi;1 ; xi;2 jelli a jobb csatorna mintjt az i-edik idopillanatban, s
yi;1 ; yi;2 a bal csatornt, akkor a fenti bra mutatja a mintk berst a tblzatba.
A kapott 24 24-es mtrix minden oszlopt kdoljuk egy (28; 24) paramteru,
GF(28 ) feletti szisztematikus ReedSolomon kddal. A j-edik oszlop paritsbjtjait jelltk q1; j ; q2; j ; q3; j ; q4; j -vel. Ennek a kdnak a kdtvolsga 5, teht 4 hibt
tud jelezni, 2 egyszeru hibt tud javtani s 4 trlses hibt tud javtani. A digitlis lemezen elofordul hibk jl modellezhetok egy ktllapot csatornval. Az
egyik llapotot nevezzk J llapotnak, melyben tlagosan 1000020000 bitideig
tartzkodik, s ekkor a hibk elofordulsa fggetlen egymstl s valsznusge
kb. 10 4 . A msik llapotot nevezzk ROSSZ llapotnak, amiben 3040 bitideig tartzkodik, s ekkor gyakorlatilag hasznlhatatlan a vtel. Ekkor azt mondjuk, hogy a hibzs csoms (burst-s). Az ilyen csatornk kdolsra talltk
ki a kdtfuzs (interleaving) technikt, amikor az elobbi mtrixot sorfolytonosan olvassk ki, de elotte minden sort kdolnak ugyanazzal a (28; 24) paramteru
ReedSolomon-kddal. A j-edik sor paritsbjtjait jelli r j;1 ; r j;2 ; r j;3 ; r j;4 . Ennek
elonye az, hogy a fizikailag sszefggo, csoms hiba hatst tbb kdszra osztja
szt.
A Sony s a Philips megegyezett a fentihez hasonl (kicsit bonyolultabb) kdolsban azrt, hogy a tmeges digitlis hanglemezgyrts elindulhasson. A verseny nyitott viszont a lejtsz kszlkben, vagyis a dekdols tern. A klnbzo dekdolsok igazibl a kvetkezo egyszeru eljrs finomtsai: szmtsuk ki
208
4. H IBAJAVT KDOLS
209
s
0 < deg(ai (x)) < deg(P(x));
i = 1; 2:
irreducbilis polinom
x2 + x + 1
x3 + x + 1
x4 + x + 1
x5 + x2 + 1
x6 + x + 1
x7 + x3 + 1
x8 + x4 + x3 + x2 + 1
x9 + x4 + 1
4.16. ttel. Legyen p egy prm, m egy termszetes szm, P(x) egy GF( p) feletti
m-edfok irreducbilis polinom s Q = f0; 1; : : : ; pm 1g. Egy a 2 Q-nak s b 2 Qnak klcsnsen egyrtelmuen feleltessnk meg GF( p) feletti, legfeljebb (m 1)edfok polinomot. a + b definci szerint az a c 2 Q, melynek megfelelo c(x)
polinomra
c(x) = a(x) + b(x):
a b az a d 2 Q, melynek megfelelo d (x) polinomra
d (x) = fa(x) b(x)g mod P(x):
210
4. H IBAJAVT KDOLS
00
01
10
11
00
00
01
10
11
01
01
00
11
10
10
10
11
00
01
0
0
1
2
3
1
1
0
3
2
11
11
10
01
00
00
01
10
11
00
00
00
00
00
01
00
01
10
11
10
00
10
11
01
2
0
2
3
1
3
0
3
1
2
11
00
11
01
10
majd testelemekre
+
0
1
2
3
2
2
3
0
1
3
3
2
1
0
0
1
2
3
0
0
0
0
0
1
0
1
2
3
inverzlogaritmus-tbla
egszek invlog
1
2
2
3
3
1
211
1 g;
1 g:
212
4. H IBAJAVT KDOLS
1)
1 ; c 0 ; : : : ; c n 2 ):
4.8. C IKLIKUS
213
KDOK
ekkor a c kdsznak megfeleltetett c(x) polinomot kdszpolinomnak vagy rviden kdpolinomnak nevezzk. A kdszpolinomok halmazt C(x)-szel jelljk.
4.6. lemma. Legyen c0 (x) a c kdsz Sc eltoltjhoz rendelt kdszpolinom, ekkor
c0 (x) = [xc(x) mod (xn
1 ):
1 (x
1) + c0 (x);
1.
4.17. ttel. Minden (n; k) paramteru, ciklikus, lineris C kdban a nem azonosan
nulla kdszpolinomok kztt egyrtelmuen ltezik egy minimlis fokszm g(x)
fopolinom. g(x) fokszma n k, s egy c 2 C akkor s csak akkor, ha g(x) j c(x),
azaz ltezik egy u(x) polinom gy, hogy c(x) = g(x)u(x).
B IZONYTS : A nem nulladfok kdszpolinomok kztt biztosan ltezik legkisebb fok. Legyen egy ilyen
q(x) = c0 + c1 x + + cr xr :
Mivel a kd lineris, ezrt a
g(x) = cr 1 q(x)
is kdpolinom s minimlis fokszm fopolinom. Be kell ltnunk az egyrtelmusget. Tegyk fel, hogy van ketto: g0 (x) s g00 (x), akkor a linearits miatt a
klnbsgk is kdszpolinom, s r-nl kisebb fokszm, ami lehetetlen. A ciklikussg miatt g(x); xg(x); x2g(x); : : : ; xn r 1 g(x) is kdszpolinom, ezrt ismt a
linearits miatt tetszoleges (u0 ; u1 ; : : : ; un r 1 )-re
(u0 + u1 x +
+ un
r 1x
n r 1
)g(x)
is kdszpolinom, azaz
u (x ) = u 0 + u 1 x ; : : : ; u n
r 1x
n r 1
jells esetn u(x)g(x) kdszpolinom. A msik irny llts az, hogy ha c(x)
egy tetszoleges kdszpolinom, akkor g(x) osztja c(x) polinomot. Az euklidszi
214
4. H IBAJAVT KDOLS
osztsi ttel miatt ugyanis c(x) = q(x)g(x) + r(x), ahol deg(r(x)) < deg(g(x)). Ez
csak gy lehet, ha r(x) = 0, mivel r(x) = c(x) q(x)g(x) is kdszpolinom s
g(x)-nl kisebb fokszm. gy r(x) csak 0 lehet. Ebbol viszont kvetkezik, hogy
minden kdszpolinom eloll (u0 + u1 x; : : : ; un r 1 xn r 1 )g(x) alakban. Msrszt
egy (n; k) paramteru kdban qk darab kdsz van, ahonnan kvetkezik, hogy
r=n
k:
1:
Msrszrol, ha egy g(x) fopolinomra g(x) j xn 1, akkor ltezik egy lineris ciklikus kd, melynek g(x) a genertorpolinomja.
B IZONYTS : Miutn xk 1 g(x) (n 1)-edfok fopolinom, annak eltoltja xk g(x)
o kdszpolinom, teht ez utbbi is oszthat g(x)-szel, ms(xn 1). Mindkett
k
rszt x g(x) is oszthat g(x)-szel, ezrt a ketto klnbsge is oszthat g(x)-szel,
ami viszont ppen xn 1. Az llts msodik felt is egyszeru beltni. Legyen
g(x) fokszma n k, akkor a kdszpolinomok
C(x) = fc(x) = a(x)g(x); deg(a(x)) k
1g
halmaza egy (n; k) paramteru lineris kdot definil. Meg kell mutatni, hogy
ez ciklikus, azaz c(x) = a(x)g(x), deg(a(x)) k 1 esetn eltoltja is kdszpolinom, azaz ltezik a0 (x), deg(a0 (x)) k 1, gy hogy xc(x) = a0 (x)g(x)
mod (xn 1). Ha deg(a(x)) < k 1, akkor legyen a0 (x) = xa(x). Ha deg(a(x)) =
k 1 s legmagasabb fok tagjnak egytthatja ak 1 , akkor xc(x) eloll
xc(x) = xa(x)g(x) = ak
1 (x
1 ) + b (x )
1-et, akkor osztja b(x)-et is,
1:
A ciklikus kdok elonys tulajdonsgai egyrszt a generlsi lehetosgek sokflesgben, msrszt egyszeru dekdolsi eljrsokban jelentkeznek. Egy lineris ciklikus kdot lehet pldul a genertorpolinom s az zenetpolinom szorzsval generlni. Ez a mdszer megfogalmazhat egy olyan G genertormtrix
4.8. C IKLIKUS
215
KDOK
g0 g1 g2
0 g0 g1
..
..
..
.
.
.
0 0 0
0 0 0
gn
gn
k 1
k 2
gn
..
.
g0
0
0
1
..
.
k 1
..
.
g1
g0
g2
g1
..
.
1
gn
k 1
0
0
..
.
C
C
C
C;
C
0 A
[ u (x ) x
n k
mod g(x);
akkor c(x) kdszpolinom, mivel c(x) = 0 mod g(x). Ezen generls szisztematikus: a c(x)-et definil egyenlosg jobb oldalnak elso tagja adja az zenetszegmenst, mg a msodik tagja a paritsszegmenst.
4.11. plda. Tekintsk a GF(2) feletti g(x) = 1 + x + x3 polinomot! Mivel
x7
1 = (1 + x)(1 + x + x3)(1 + x2 + x3 );
ezrt g(x) osztja (x7 1)-et, teht g(x) egy (7; 4) paramteru binris, lineris, ciklikus kd genertorpolinomja. Egy genertormtrixhoz jutunk a g(x) eltoltjaival:
0
0
B 0
G=B
0
1
0
0
1
0
0
1
0
1
1
0
1
1
0
1
1
0
1
1
0
0
1
0 C
C:
0 A
0
216
4. H IBAJAVT KDOLS
1 + x mod (1 + x + x3 )
x4
x(1 + x + x3 )
x(1 + x) =
x + x2 mod (1 + x + x3 )
x2 (1 + x + x3 )
x2 (1 + x) =
1 + x + x2 mod (1 + x + x3 )
x3 (1 + x + x3 )
x3 + x4 =
1 + x + x + x2 =
1 + x2 mod (1 + x + x3 )
x5
x6
Ezek alapjn
1
B 0
G=B
0
0
0
1
0
0
0
0
1
0
0
0
0
1
x(1 + x) =
x 2 (1 + x ) =
x 3 (1 + x ) =
1
1
1
0
0
1
1
1
1
1 C
C;
0 A
1
xn 1
g(x)
deg (c(x)) n
1:
4.8. C IKLIKUS
217
KDOK
1 );
1), akkor
1)=h(x) = a(x)g(x);
g(x) = (x
i );
i=1
h (x ) =
(x
i );
i=n k+1
c j i j = 0
i = 1; : : : ; n
k;
j=0
teht 1 ; : : : ; n
c(x) = (x
i )u ( x )
i=1
alakban. A g(x) ttelbeli defincijval az tnyleg egy ciklikus kd genertorpolinomja, ha megmutatjuk, hogy osztja az (xn 1)-et. Ez utbbi azrt igaz, mert
g(x) gykei az (xn 1)-nek is gykei, ugyanis
( ) = ( )
i n
ezrt
i m
xn
im
= ( ) = 1 ;
1 = (x
m i
i );
i=1
218
4. H IBAJAVT KDOLS
A ciklikus kdok gyakorlata a leghosszabb mlttal a hibajelzs terletn rendelkezik, amikor a kd binris, a kdokat a szabvnyok genertorpolinomjuk segtsgvel adjk meg s generlsuk a 4.19. ttel bizonytsban lert mdon, a
genertorpolinom szerinti maradkos osztssal, szisztematikusan trtnik. Ezeket
a kdokat CRC kdoknak hvjk (Cyclic Redundancy Check). A hibajelzst legtbbszr zajos, visszacsatolsos csatornknl hasznljk, amikor a vevo hiba detektlsa esetn rtesti az adt, amely ezutn az adst ugyanazzal a kddal vagy
egy jobbal megismtli. Ezt az eljrst ARQ-nak nevezzk (Automatic Repeat
reQuest).
A CCITT 16 paritsbitet tartalmaz szabvnyban a CRC genertorpolinomja
g1 (x) = x16 + x12 + x5 + 1:
Ezt a genertorpolinomot alkalmazzk pl. az SNC 2653 (Polinomial Generator
Checker), INTEL 82586 (Local Communication Controller), INTEL 8274 (MultiProtocol Serial Controller), Signetics 2652 (Multi-Protocol Communications Circuit) integrlt ramkrkben. A kt utbbiban mg vlaszthatjuk a
g2 (x) = x16 + x15 + x2 + 1
polinomot is. Az INTEL 82586-os Ethernet chip tartalmaz egy 32 bites genertorpolinomot is:
g3 (x) = x32 + x26 + x23 + x22 + x16 + x12 + x11 + x10 + x8 + x7 + x5 + x4 + x2 + x + 1:
A 4.18. ttel rtelmben ezek a polinomok akkor genertorpolinomjai ciklikus
kdoknak, ha osztjk az xn 1 polinomot, teht csak bizonyos kdszhosszakra
ciklikus kdok. Ugyanakkor erre nem figyelmeztetik a felhasznlt. Ez azrt
nem okoz problmt, mert tetszoleges zenethossz esetn azrt j kdot kapunk,
ugyanis az vagy eleve ciklikus, vagy egy ciklikus kd rvidtse. Legyen C egy
(n; k) paramter
u szisztematikus lineris kd s k0 < k. Egy
u0 = (u00 ; u01 ; : : : ; u0k0 )
zenethez rendeljk a k hossz
u = (0; 0; : : : ; 0; u00 ; u01 ; : : : ; u0k0 )
zenetet, ahhoz a
c = (0; 0; : : : ; 0; u00 ; u01 ; : : : ; u0k0 ; ck+1 ; ck+2 ; : : : ; cn )
4.8. C IKLIKUS
219
KDOK
n0 = k
k0
1 = 32767.
220
4. H IBAJAVT KDOLS
1. g1 (x) j e(x), ha
xi (x j
+ 1) = g1 (x)z(x)
z (x ) = x m z 0 ( x )
+ 1) = x
g1 (x)z0(x):
(x
j i
+ 1) = g1 (x)z (x);
teht x j g1 (x)z0 (x), ami lehetetlen, mert x nem osztja z0 (x)-et s g1 (0) = 1 miatt x
nem osztja g1 (x)-et. Ha i m lenne, akkor
xj
+1 = x
j i
1 = g1 (x)z0(x)xm
ami szintn lehetetlen, mert n volt az a legkisebb egsz, melyre g1 (x) j xn 1, mrpedig j i < n, ezrt g1 (x) nem oszthatja (x j i 1)-et. Ezzel a 2. tulajdonsgot
is belttuk.
A 4. tulajdonsghoz legyen
e(x) = xi e0 (x);
ahol i 0 s deg(e0 (x)) < 16. Ha g1 (x) j e(x), akkor
xi e0 (x) = g1 (x)z0 (x)xm
alak, ahol x nem osztja z0 (x)-et. i m nem lehet, mert ekkor
e0 (x) = g1 (x)z0 (x)xm
teht g1 (x) a nla kisebb fokszm e0 (x)-et osztan. i > m sem lehet, mert ekkor
xi
e0 (x) = g1 (x)z0(x);
4.8. C IKLIKUS
221
KDOK
n hossz ciklikus kd genertorpolinomja, elegendoen nagy legyen, teht a gyakorlatban vlasztott zenethossz a kd egy rvidtsnek zenethossza legyen.
Belthat, hogy az ilyen g(x)-ek kzl a g1 (x) s a g2 (x) esetn a legnagyobb az
n.
A 4.2. szakasz vgn emltettk, hogy a muholdas musorszrs szolgltatsazonostst egy (23; 12) paramteru Golay-kddal vdik. Ennek a kdnak a kdtvolsga 7, ezrt 3 hibt tud javtani. Knnyen ellenorizheto, hogy a kd paramtereire a Hamming-korltban az = teljesl:
3
i=0
23
i
=2
11
10000000000011011100010
01000000000001101110001
00100000000010110111000
00010000000001011011100
00001000000000101101110
00000100000000010110111
00000010000010001011011
00000001000011000101101
00000000100011100010110
00000000010001110001011
00000000001010111000101
00000000000111111111111
1
C
C
C
C
C
C
C
C
C
C
C
C
C
C
C
C
C
C
C
A
222
4. H IBAJAVT KDOLS
4.22. ttel. A (23; 12) paramteru Golay-kd egy 3 hibt javt perfekt, lineris,
ciklikus kd.
(4.9)
c0
u0 g0
1:
c1
u0 g1 + u1 g0
..
.
n
1:
cn
uk 1 gn
(4.10)
k;
0; uk
?
?
1 ; : : : ; u0
lr
?
g0
?
rl
?
l
?
g1
-
? g2
rl
l?
?
- ? gn k 1 ?
rl
?
- l
+
rl
?l
gn
:::;
c1 ; c0
4.8. C IKLIKUS
sL
- sj
sj
223
KDOK
?
1
sL
s0
- sj 2
? f
rm
?
m
-
? f
- sj L
? f
rm rm
?
m m?
L 1
-s1 s0
;
:::;
mr
?
fL
sj =
fi s j
jL
i;
i=1
(4.11)
fis j
i=
0;
i=0
jL
(4.12)
(4.13)
polinomot az LFSR karakterisztikus polinomjnak nevezzk. Az h f (x); Li jellst hasznljuk az f (x) karakterisztikus polinom s L regiszterhossz LFSR
jellsre.
Egy (n; k) paramteru ciklikus kd egyrtelmuen megadhat h(x) = h0 + h1 x +
+ hk xk paritsellenorzo polinomjval. Vezessk be a h(x) polinom
b
h(x) = hk + hk 1 x +
+ h0xk
224
4. H IBAJAVT KDOLS
+ hk cn
3 + + hk cn
h0 c n
1 + h1 c n 2 +
k 1
h0 c n
2 + h1 c n
k 2
h0 c k + h1 c k
1+
+ hk c0
..
.
=
(4.15)
Mivel a g(x) genertorpolinom fopolinom, ezrt a h(x)g(x) = xn 1 sszefggsbol kvetkezik, hogy h(x) is fopolinom, azaz hk = 1. Ennek figyelembevtelvel
a (4.15) egyenletek a kvetkezo rekurzv alakba rhatk:
k 1
hi c n
k j=
cn
(4.16)
i j;
i=0
uk
L = k;
uk
?
rl
?
l
s 0 = u0 ; s 1 = u2 ;
hk
:::;
sk
1 = uk 1 :
u0
-
? h
?
rl lr
?l l
?
k 2
h1
:::;
lr
?
cn
2 ; cn 1
h0
4.8. C IKLIKUS
225
KDOK
0; : : : ; 0; u0 ; : : : ; uk
k
kq
k
kq
k
kq
- +- ? +- ? + -
6
6
6
g g g
6
6
6
k6
kq
?
gn
k 1
-ki
[ u (x ) x
n k
mod g(x):
(4.17)
A (4.17) sszefggsben egy u(x)xn k polinomnak a g(x) polinomra vett maradkt kell kpezni. Figyelembe vve, hogy g(x)-et fopolinomnak vlasztottuk, ezt a
polinomosztst vgzi el az albbi visszacsatolt shiftregiszteres oszt elrendezs.
Az oszt elrendezs ltal vgzett shiftels s az ppen kilpo elemmel az osztpolinom nemzrus egytthatinak megfelelo pozcikban trtno slyozott levons nyilvn a jl ismert polinomoszts egy lpsnek a vgrehajtst jelenti.
Teht a 4.5. brn lthat elrendezs euklidszi osztst vgez. Zr kezdo llapotbl indtva, s az oszt bemenetre idoben egyms utn a dn 1 ; dn 2 ; : : : ; d0
elemeket lptetve a
d (x) = q(x) g(x) + r(x)
(4.18)
euklidszi osztsnak megfeleloen a kimenetn a q(x) hnyados, a regiszterben
pedig az r(x) maradk ll elo. gy a bemenetn az n k 0-val kiegsztett k zenetkaraktert belptetve, n lps utn a regiszter az [u(x)xn k mod g(x) maradkot
tartalmazza.
Nyilvn az oszt elrendezs hasznlhat CRC generlsra illetve ellenorzsre is, mivel ekkor is egy (n; k) paramteru szisztematikus ciklikus kd kdszavait lltjuk elo. CRC generlskor a fentiekben elmondott mdon paritsszeg-
226
4. H IBAJAVT KDOLS
4.9. BCH-kd
4.26. definci. Az n kdszhossz, n = qm 1, GF(q) feletti kdot t hibt javt
BCH-kdnak nevezzk, ha a g(x) genertorpolinomjnak gykei az i 2 GF(qm ),
i = 1; 2; : : : ; 2t testelemek. (BCH = BoseChaudhuriHocquenghem)
4.23. ttel. Ha az n kdszhossz, GF(q) feletti C ciklikus kd genertorpolinomjnak az 2 GF(qm ) elem d 1 egyms utni (klnbzo) hatvnya gyke,
azaz valamely i0 0; d > 1 esetn
g(i0 ) = g(i0 +1 ) = = g(i0 +d
) = 0;
2(i0 +d
n 1 i
+ + cn 1 n
2)
)( 0 +d
2)
(
1)i0 . Az llts bizohiszen pldul c(i0 ) = c0 + c1 i0 + c2 2i0
nytshoz azt kell megmutatni, hogy a H mtrix brmely d 1 vagy kevesebb
oszlopa GF(qm ) feletti vektorok linerisan fggetlen halmaza, ekkor ugyanis legalbb d sly az a c vektor, amelyre HcT = 0, s gy a kd teljesti az elort
minimlis tvolsgot.
Az indirekt bizonytshoz tegyk fel, hogy van egy b
c vektor, amelynek slya
w d 1, az i 2 fa1 ; a2 ; : : : ; aw g pozcikban tartalmazza nemzrus karaktereit
s Hb
cT = 0. Ekkor az
a1 i0
B a1 (i0 +1)
B
B
..
.
a1 (i0 +w 1)
..
10
aw i0
aw (i0 +1)
..
.
aw (i0 +w
1)
ca1
C B ca C
CB 2C
C B .. C = 0
A . A
caw
227
4.9. BCH- KD
egyenletben a mtrix determinnsa 0. De ezen mtrix determinnsa az n. Vandermonde-determinns (a1 ++aw )i0 -szorosa:
0
B
B
det B
1
a1
..
.
a1 (w
..
1)
1
aw
..
.
aw (w
C w 1 w
C
a
C = ( i
A
j=1 i= j+1
a j )
1)
6= j i =6
;
j ; i; j
1)(x
)(x
2) (x
2t
(4.19)
228
4. H IBAJAVT KDOLS
ahol a j gykk a GF(Q) test klnbzo nemzrus elemei. A (4.19), (4.20) formulk alapjn a primitv szhossz kdok esetn a j testelemek mindegyike egy
s csak egy f i (x) faktor gyke. Innen mr az is lthat, hogy ha a j testelem az
f i (x) gyke, akkor fi (x) irreducbilis polinom egyben minimlis fokszm GF(q)
feletti polinom ezen tulajdonsggal. Ha feltesszk ugyanis, hogy nem f i (x), hanem egy tole klnbzo k(x) GF(q) feletti polinom lenne minimlis fokszm polinom nevezett tulajdonsggal, az ellentmondsra vezetne. Ezt a szoksos trkkel
igazolhatjuk: az fi (x) = q(x)k(x) + r(x) maradkos oszts egyenlosgbe helyettestsk a j gykt, s vegyk figyelembe, hogy deg(r(x)) < deg(k(x)) valamint
azt, hogy fi (x) irreducbilis. Az f i (x) polinomot a j GF(qm )-beli testelem GF(q)
feletti minimlpolinomjnak nevezzk.
4.12. plda. Legkisebb pldaknt tekintsk a q = 2; m = 2 esetet (azaz GF(2) a kis
test, GF(4) a nagy test). Ekkor a (4.19), (4.20) formulknak megfelelo felbontsok
a kvetkezo egyszeru alakot ltik:
x3
1 = f1 (x) f2 (x) = (x
1)(x2 + x + 1) = (x
1)((x
)(x
2));
ahol a GF(4) primitv eleme. Az 1 2 GF(4) egysgelem GF(2) feletti minimlpolinomja nyilvn f1 (x) = x 1, mg s 2 GF(4) testelemek kzs GF(2)
feletti minimlpolinomja f1 (x) = x2 + x + 1.
Visszatekintve a BCH-kd 4.26. defincijra, az eddigiek alapjn lthatjuk,
hogy t hibt javt BCH-kd genertorpolinomjt gy konstrulhatjuk meg, hogy
megkeressk az i 2 GF(qm ) gykk klnbzo, GF(q) feletti minimlpolinomjait, s azokat sszeszorozzuk.
Ezek utn mr csak egy tisztn algebrai technikai krdsrol van sz, arrl,
hogy hogyan konstruljunk minimlpolinomot. Az albbiakban rviden megmutatjuk a technikt (rszletesebben lsd pldul [10] 5.3. fejezet).
229
4.9. BCH- KD
Ha egy f (x) polinom egy GF(qm )-beli testelem GF(q) feletti minimlpolinomja, akkor f (x) gykhalmaza a elem gynevezett konjugltjainak
n
; q ; q
;:::;
halmaza, amely halmaz elemeit egyms utn, q-adik hatvnyra emelsvel kpezzk a GF(qm ) testben, tovbb ahol az a legkisebb hatvnykitevo, amelyre
= :
Mindezek alapjn gyktnyezos (nagy test feletti linearizlt) alakban meg tudjuk mr adni a minimlpolinomokat. Ebbol az alakbl az explicit alak polinomokat a lineris faktorok sszeszorzsval kapjuk a nagy testbeli aritmetika szerint,
amelynek sorn az egytthatk vglis kis testbeli egytthatkk egyszerusdnek.
A 4.12. plda esetn konjugltjainak halmaza ktelemu, tagjai s 2 (4 =
).
Az eddigiek alapjn anlkl, hogy megkonstrulnnk magt a genertorpolinomot, azt mr meg tudjuk mondani, hogy mekkora lesz a genertorpolinom
fokszma, kvetkezskpp hogy mekkora a kd k paramtere illetve R = nk kdsebessge. Ehhez nem kell mst tennnk, mint konjuglt halmazokra bontani a nagy
test nemzrus elemeinek qm 1 mretu halmazt. Mivel a nemzrus testelemek a
primitv elem hatvnyaiknt megkaphatk, a konjuglt halmazok meghatrozsnl elegendo a halmaz elemei helyett a megfelelo primitv elem kitevojt megadni.
4.13. plda. GF(16), q = 2; m = 4:
f0g
f1 2 4 8 g
f3 6 12 9g
f5 10g
f7 14 13 11g
;
;
;
ahol primitv elem kitevoirol lvn sz modulo 15 szmolunk. Ennek alapjn pldul egy t = 1 paramteru kd genertorpolinomjhoz tartoz konjuglt
(kitevo) halmaz f1; 2; 4; 8g, azaz C(15; 11) a kapcsolatos binris Hamming-kd
paramtere. Hasonlan, ha egy n = 15 kdszhossz t = 2 hibt javt binris
BCH-kdot szeretnnk generlni, akkor f1; 2; 4; 8g s f3; 6; 12; 9g kitevohalmazoknak megfelelo gykk szerepelnek a genertorpolinomban, teht a kd sebes7
= 0:466 lesz.
sge R = 15
A BCH kdok elollthatk mint a Reed-Solomon kdok rszkdjai. Ehhez
kapcsoldik az albbi ttel:
230
4. H IBAJAVT KDOLS
4.24. ttel. Legyen C a GF(qm ) felett egy (n; k) paramteru, dmin kdtvolsg
ReedSolomon-kd. Legyen C0 a C-nek egy rszhalmaza, mely C azon kdszavaibl ll, melyek koordinti GF(q)-beliek. C0 egy GF(q) feletti (n; k0 ) paramteru,
0 kdtvolsg, lineris kd, melyre
dmin
k0 k
0 dmin :
dmin
4.10. Kdkombincik
A standard kdkonstrukcik sorn kapott kdok paramterei nem mindig illeszkednek kzvetlenl az adott alkalmazsban megkvetelt rtkekhez. Hatkony,
ugyanakkor egyszeru mdszerek lteznek arra, hogy vltoztassuk a kdszhossz,
zenethossz, kdtvolsg paramterek rtkt az eredeti konstrukcihoz kpest.
Az albbiakban ezen mdszereket tekintjk t rviden.
Kdtfuzs
(1)
(2)
c = c0 ; c0
;:::;
(m)
c0
(1)
(2)
c1 ; c1
;:::;
(m)
c1
;:::;
(1)
cn
(2)
cn
;:::;
(m)
cn
(4.21)
4.10. KDKOMBINCIK
231
232
4. H IBAJAVT KDOLS
1. kdsz
2. kdsz
..
.
m. kdsz
233
4.10. KDKOMBINCIK
2
(0)
c0
6
(1)
6 c0
6
..
6
.
6
6 (k2 1)
6 c
6 0
6
..
6
4
.
(n
c0 2
1)
(0)
c1
(1)
c1
c k1
c k1
c k1
c k1
(0)
(1)
(0)
c1 2
(k
1)
c k1 2
(n
1)
c k1 2 1
c1 2
(1)
(k
1)
1
c k1 2
(k
1)
(n
1)
c k1 2
(n
1)
(0)
cn1
7
7
7
7
7
7
(k2 1) 7
cn1 1 7
7
..
7
5
.
(1)
cn1
..
.
(n
cn12
1)
1
Szorzatkd
Egy C1 (n1 ; k1 ; d1 ) s egy C2 (n2 ; k2 ; d2 ) lineris kd (komponenskdok) felhasznlsval C1 C2 (n1 n2 ; k1 k2 ; d1 d2 ) szorzatkdot kszthetnk, amelynek
kdszavai n1 n2 dimenzis mtrixok, ahol a mtrix sorai C1 kdbeli, oszlopai
C2 kdbeli kdszavak. Szisztematikus komponenskdok esetn a szorzatkdbeli
mtrix-kdsz bal felso k1 k2 dimenzis minorja tartalmazza az zenetet. A
mtrix-kdszavakat soronknt kiolvasva kapjuk a szorzatkd soros kdszavt. A kapott C1 C2 (n1 n2 ; k1 k2 ) kd lineris.
A mtrix-kdsz kpzse a kvetkezokpp trtnik. Az elso k1 oszlopot a
C2 (n2 ; k2 ) kd alapjn szisztematikus kdolssal kapjuk, kiegsztve a k2 hossz
zenetszegmenst n2 k2 hossz paritsszegmenssel (4.7. bra). Az elso k2 sort a
C1 (n1 ; k1 ) kd alapjn szisztematikus kdolssal kapjuk, kiegsztve a k1 hossz
zenetszegmenst n1 k1 hossz paritsszegmenssel. A mtrix jobb als sarkba
kerl a paritsok paritsa, amit mint azt hamarosan beltjuk kpezhetjk
akr az elso k1 oszlop, akr az elso k2 sor paritsai alapjn szisztematikus kdolssal a C2 illetve C1 kdbeli szavakkal. A fenti mdon kpezett szorzatkdot
amelynek sorai illetve oszlopai az alapkdok kdszavai kanonikus elrendezsunek nevezzk.
A paritsok paritsai kpzsvel kapcsolatos albbi gondolatmenetnket illusztrlja a 4.8. bra.
Kpezzk azt a C1 C2 kdbeli kdszt, amelynek zenetmtrixa csak az
(i1 ; j1 ) koordintj helyen tartalmaz nulltl klnbz
o elemet. Ehhez az zenethez kpezzk a C2 illetve C1 kdols szerint a C1 C2 kdbeli kdsz i1 -edik sort s j1 -edik oszlopt. A ktdimenzis paritsszegmens jobb felso illetve bal als
rszmtrixa az i1 -edik sor illetve a j1 -edik oszlop kivtelvel csak 0 elemeket tartalmaz. Innen mr egyszeruen ltszik, hogy a jobb als rszmtrixot megkaphat-
234
4. H IBAJAVT KDOLS
2
i1
-6
i2
i3
6
6
6
6
6
6
6
6
6
6
6
6
4
m m m
m
m
m m m
m m m
6 6
j1
j2
j4
3
7
7
7
7
7
7
7
7
7
7
7
7
7
5
j3
235
4.10. KDKOMBINCIK
adat
be
C2
klso
kdol
C1
belso
kdol
csatorna
C1
belso
dekdol
kdol
C2
klso
dekdol
-adat
ki
dekdol
Kaszkd kdok
Vegynk egy C1 (n1 ; k1 ; d1 ) GF(q) feletti s egy C2 (N2 ; K2 ; D2 ) GF(qk1 ) feletti lineris kdot, amelybol az albbi mdon generlhatjuk a szisztematikus,
C(n1 N2 ; k1 K2 ; d ) paramteru GF(q) feletti kaszkd kd kdszavait. A k1 K2 hoszsz zenetet osszuk fel K2 , egyenknt k1 hossz szegmensre. A C2 kd egy k1
hossz zenetszegmenst egy zenetkarakternek vesz, s K2 ilyen karakter alkot
szmra egy zenetszegmenst, amelybol N2 karakter hosszsg kdszt kpez
N2 K2 paritskarakternek az zenethez val illesztsvel. A C2 -beli kdsz elkszlte utn a kdsz mindegyik koordintjt a C1 kd kdolja jra k1 hoszszsg zenetknt rtelmezi, s n1 k1 paritskarakterrel kiegszti. gy kapjuk
az n1 N2 hossz kdszt, ami a kaszkd kd adott k1 K2 hossz zenethez tartoz
kdszava. A kaszkd kd kdtvolsga d d1 D2 .
A C1 kdot belso, a C2 kdot klso kdnak is nevezik. A kd az elnevezst onnan kapta, hogy a klso kd kdoljnak s a belso kd kdoljnak a
kaszkdba ktse kpezi a generlt kd kdoljt (4.9. bra).
A dekdols sorn eloszr a C1 kdszavakat dekdoljuk, majd rtelemszeruen, a C1 kdszavai paritsszegmensnek trlse utn a C2 kdsz dekdolst
vgezzk el.
A kaszkd kdok igen alkalmasak az egyttes csoms s vletlen hibk javtsra, ahol a csoms hibkat a C2 kd, a vletlen hibkat a C1 kd javtja elsosorban. A C2 kd egy karakternek tetszoleges meghibsodsa legfeljebb k1 mretu q-ris hibaszmnak felel meg. Ugyanakkor ritka egyedi hibk javtsa C1 -beli
kdszavakban knnyen elvgezheto, mg ezen egyedi hibk C2 -beli karakterszintu
javtsa pazarls lenne.
236
4. H IBAJAVT KDOLS
4.11. Kdmdostsok
Rvidtett kd
Egy C(n; k) kd rvidtsvel egy C(n i; k i); 1 i < k kdot kapunk olyan
mdon, hogy a C(n; k) szisztematikus kd kdszavai kzl csak azokat hagyjuk
meg, amelyek az elso i karaktern zrust tartalmaz zenetekhez rendeltek. Ekkor a C(n; k) kd i karakterrel trtno rvidtsrol beszlnk. Mivel a rvidtett
kd kdszavai a C(n; k) kd kdszavai is egyben, ezrt a rvidtett kd minimlis
tvolsga legalbb akkora, mint az eredeti kd volt. Praktikusan termszetesen
a kdol s a dekdol gy van kikpezve, hogy az elso i zrus karaktert nem is
tovbbtjuk, s a dekder zrusnak tekinti azokat. A kdrvidts elsodleges clja
a kdhossznak az alkalmazsbeli paramterekhez val igaztsa.
Paritsbittel bovts
A paritskarakterrel trtno kiegszts utn a C(n; k) binris lineris alapkdbl egy Cb(n + 1; k) lineris kdot kapunk, amelynek a minimlis tvolsga
az alapkd d minimlis tvolsgval azonos, ha d pros, illetve d + 1 lesz, ha d
pratlan. A HCb paritsmtrix HC ismeretben az albbi alak:
0
B
B
B
HCb = B
B
1 1
1
HC
1
0C
C
.. C
.C
(4.22)
C
0A
0
4.16. plda. Adjuk meg a C(7; 4) Hamming-kd Cb(8; 4) paritsbittel bovtett kdjnak paritsmtrixt. Az x3 + x + 1 genertorpolinom Hamming-kd bovtsvel a (4.22) kplet alapjn
0
1
B0
HCb = B
0
1
1
0
1
0
1
1
0
0
1
0
1
1
1
1
1
0
1
1
1
1
1
1
0
1
1
0C
C:
0A
0
237
DEKDOLSA
= Hv = H(c + e) = Hc + He = He
teljesl.
Ezen egyenlosg alapjn az n hossz e hibavektor rekonstrukcijhoz az n k
hossz s szindrma ll rendelkezsre. A vett szhoz legkzelebbi kdszba javtskor egy lineris egyenletrendszer egy specilis tulajdonsg, mgpedig a legkisebb sly megoldst keressk. A minimlis sly e = (e0 ; e1 ; : : : ; en 1 ) hibavektor rekonstrukcijhoz a kvetkezo ismeretlenek feldertsre van szksg:
a hibk szma: t,
a hibk helye: 0 i1 < i2 < < it
n
1,
Ha csak trlses hibnk van, akkor ismerjk a hibk szmt s a hibahelyeket, csupn a hibartkeket kell megtallni. A ReedSolomon-kdok 4.1. s 4.2.
konstrukcija kapcsn ppen a trlses hibk lehetsges maximlis szmnak kidertsvel bizonytottuk, hogy a ReedSolomon-kd maximlis tvolsg. Ezt
gy tettk, hogy az
uG = c
egyenletrendszer azon rszrendszert tudtuk megoldani, amely a nem trlt pozcik halmaznak felelt meg. Ilymdon persze kzvetlenl az u zenetvektort
kaptuk meg. Annak rdekben, hogy az ltalnos hibajavtsi feladat harmadik
komponensre adott megolds alapelvt megrtsk, vizsgljuk meg a trlses hibk javtst, mgpedig a hibartkek megllaptst a ReedSolomon-kdok 4.3.
konstrukcijakor, amikor a kdot a
HcT
=0
H=B
1
1
..
.
n k
2
4
..
2(n k)
n
2(n
..
.
(n
1
1)
k)(n 1)
1
C
C
C:
A
238
4. H IBAJAVT KDOLS
= He
k)
X j = i j
Y j = ei j
1; 2; : : : ; t ). X j -t a j-edik hibahely loktornak nevezzk, mert szerinti
logaritmusa a hibahely. Az sT = HeT egyenletrendszer l-edik egyenlete
(j =
n 1
ei li = ei li
j
i=0
= sl ;
l = 1; 2; : : : ; n
k;
j=1
vagy az j jellseinkkel
t
Y j X jl = sl
l = 1; 2; : : : ; n
k:
j=1
Tudjuk, hogy H minden (n k) (n k) mretu ngyzetes rszmtrixa invertlhat (lsd a 4.15. ttel utni megjegyzst), sot t n k esetn annak bal felso
t t-es rszmtrixa is invertlhat, teht t n k esetn az egyenletrendszernknek egyrtelmu megoldsa van, amennyiben X1 ; X2 ; : : : ; Xt klnbzok.
4.7. lemma. Legyen
0
At
B
B
=B
X1 X2
X12 X22
..
..
.
.
X1t X2t
Xt
Xt2
.
..
. ..
Xtt
1
C
C
C;
A
= St
239
DEKDOLSA
Y j X jl = sl
l = 1; 2; : : : ; n
k:
j=1
Most az ismeretlenek:
t,
X1 X2
Y1 Y2
;
;:::;
;:::;
Xt ,
Yt ,
teht egy 2t + 1 ismeretlent tartalmaz, n k egyenletbol ll, nemlineris egyenlettel van dolgunk. Ennek a megoldsa elsore nem tunik egyszeru feladatnak.
Megmutatjuk, hogy ez visszavezetheto kt lineris egyenletrendszer megoldsra,
melyek kzl a msodikat a csak trlses hiba kapcsn az elobb mr megismertk.
Az elso egyenletrendszernek kell produklnia t-t s a hibahelyeket.
Vezessk be a hibahelypolinomot:
t
L(x) = (1
xXi );
i=1
Y j X jl
+t
) = 0;
L(X j
) = 0;
j=1
azaz
Yj
j=1
X jl +t + L1 X jl +t
l +t 2
+ L2 X j
+ Lt X jl
= 0;
240
4. H IBAJAVT KDOLS
teht
t
Y j X jl+t + L1 Y j X jl+t
j=1
+ L2
j=1
Y j X jl+t
( l = 1 ; : : : ; t ).
j=1
gy
1 + L2 sl +t 2 +
L1 sl +t
+ Lt Y j X jl = 0
j=1
+ Lt sl =
sl +t
Ha bevezetjk az
0
Ut
B
B
=B
Lt
Vt
s1
s2
..
.
s2
s3
..
.
st
st +1
..
st
st +1
..
.
s2t
C
C
C;
A
= (Lt ; Lt 1 ; : : : ; L1 );
=(
st +1 ; st +2 ; : : : ; s2t )
= Vt
X2r
Xrr
Dr = B
Y1 X1
0
0
Y2 X2
..
..
.
.
0
0
..
0
0
..
.
1
C
C
C;
A
Yr Xr
(Br Dr Br )i j
Xli
i =1
Yl Xl lk Xkj
k =1
241
DEKDOLSA
r
Xli
Yl Xl Xl
l =1
r
Yl Xli
+j
l =1
s i+ j 1 =
(Ur )i j ;
j 1
teht
Br Dr BTr
= Ur ;
ezrt
det (Br ) det (Dr ) det (BTr ) = det (Ur ):
Ha r > t, akkor det (Dr ) = 0, ezrt det (Ur ) = 0. Ha r = t, akkor det (Dr ) 6= 0,
msrszt det (Br ) 6= 0 a 4.7. lemma miatt, ugyanis X1 ; X2 ; : : : ; Xt klnbzok, s
det (Ar ) = det (Br ) X1 X2 : : : Xt . Ekkor viszont det (Ur ) 6= 0, teht Ut invertlhat.
4.28. ttel (PetersonGorensteinZierler-dekdol).Ha a ReedSolomon-kdok 4.3. konstrukcija esetn a hibk t szmra t n 2 k , akkor a kvetkezo
algoritmus helyesen dekdol:
1. Szmtsuk ki az s1 ; s2 ; : : : ; sn
szindrmkat!
= Vt
egyenletet!
4. Keressk meg az Lt ltal definilt L(x) hibahelypolinom gykeit, majd azok
inverzeit: X1 ; X2 ; : : : ; Xt .
5. Oldjuk meg az
At YtT
= St
egyenletet!
6. Szmtsuk ki a hibahelyeket:
i j = log X j
s a hibartkeket:
ei j
= Yj;
j = 1; 2; : : : ; t :
242
4. H IBAJAVT KDOLS
A 4.28. ttellel nem azt akarjuk mondani, hogy nagy t esetn gy kell dekdolni. Nagy t esetn nem ajnlatos a kt mtrixinverzit vgrehajtani. Ezek helyettesthetok hatkonyabb eljrsokkal. Az elso helyettestsre (2. s 3. lps)
plda a BerlekampMassey-algoritmus, mg a msodikra (5. lps) a Forneyalgoritmus (lsd [10]).
Kis t-re viszont a PetersonGorensteinZierler-dekdol nemcsak egy elvi,
hanem egy gyakorlati eljrs is. Nzzk vgig illusztrciknt a 2 hibt javt
(n; n 4) paramter
u ReedSolomon-kd esett, amelynek digitlis hangtechnikai alkalmazst a 4.6. szakaszban emltettk.
1. Szmtsuk ki az s1 ; s2 ; s3 ; s4 szindrmkat!
2. Ha mind 0, akkor t = 0, s kszen vagyunk. Mivel ez a kd 2 hibt tud
javtani ezrt t 2. Ha det (U2 ) 6= 0, akkor t = 2. Megjegyezzk, hogy
s s
det (U2 ) = det 1 2
s2 s3
= s1 s3
s22 :
s2
egyenletet: L1 = s2 s1 1
4. Keressk meg az L(x) = 1
X1 = s2 s1 1
5. Oldjuk meg az
Y1 X1 = s1
egyenletet: Y1 = s1 X1
= s21 s2
6. Szmtsuk ki a hibahelyet
i1 = log X1
s a hibartket
e i1
t = 2 eset:
= Y1 :
3. Oldjuk meg az
243
SPEKTRLIS TULAJDONSGAI
s1 s2
s2 s3
L2
L1
=
s3
s4
L2 = det
s3 s2
s4 s3
L1 = det
s1
s2
s3
s4
det
s1 s2
s2 s3
1
s23 )(s1 s3
s22 )
s1 s4 )(s1 s3
s22 )
= (s2 s4
1
= (s2 s3
i2 = log X2
s a hibartkeket
e i1
= Y1 ;
e i2
= Y2 :
Cj =
i j ci
i=0
j = 0; 1; : : : ; n
1;
(4.23)
244
4. H IBAJAVT KDOLS
ci = f (n)
ij
i = 0; 1; : : : ; n
Cj;
1;
(4.24)
j=0
n 1
rj
j=0
0;
ha r 6= 0 mod n
n mod p; ha r = 0 mod n
(4.25)
+ x + 1)
(4.26)
B IZONYTS : Helyettestsk az
xn
1 = (x
1)(xn
+x
n 2
azonossg mindkt oldalba r -t. A bal oldalon mindig 0-t kapunk, mivel rendje
n. A jobb oldalon r 6= 0 mod n esetn r 1 6= 0, gy a (4.26) szorzat csak akkor
lehet nulla, ha a msodik tnyezoje 0, azaz ha
n 1
r j = 0
j =0
mg r = 0 mod n esetn r
tnyezo
n 1
n 1
j=0
j=0
r j =
1=n
mod p:
SPEKTRLIS TULAJDONSGAI
245
ij
n 1
Cj
n 1
i j k j ck =
j=0
j=0
=
=
k=0
n 1
n 1
k=0
j=0
ck k
(
i) j
f (n) 1 ci :
(4.27)
i = 0; 1; : : : ; n
(4.28)
E j = f (n) F( j
k) mod n Gk :
(4.29)
k=0
Ej
i j f i gi =
i=0
n 1
n 1
i j fi f (n)
i=0
n 1
f (n) Gk
k=0
n 1
k =0
n 1
j
(
ik
Gk =
k)i
fi =
i=0
f (n) Gk F( j
k) mod n :
k=0
246
4. H IBAJAVT KDOLS
) = C0 + C1
+ Cn
1)i
= Ci
(n
1)i
= ci
n 1
j =0
j=0
gi j u j =
gi
(
j) mod n u j
(4.30)
(4.31)
sszefggs rvnyes.
Legyen g(x) = (x 1)(x ) (x n k 1 ) az RS-kd genertorpolinomja,
ahol a GF(q) egy n-edrendu eleme. Ekkor 1; ; : : : ; n k 1 minden c(x)-nek
gyke, ezrt tetszoleges u zenethez tartoz c kdsz C spektrumban a 4.29.
ttel felhasznlsval
C0 = C1 = = Cn k 1 = 0
(4.32)
zrus spektrumkomponensek addnak. RS-kdot generlhatunk olyan ravasz mdon, hogy eleve garantljuk azt, hogy a kdszspektrumok teljestsk a (4.32)
tulajdonsgot, s a spektrum tovbbi komponenseit az zenetektol fggoen klnbzokre vlasztjuk. A tnyleges idotartomnybeli kdszavakat ezen mestersgesen sszelltott spektrumok inverz Fourier-transzformltjainak vlasztjuk. gy,
ha egy
(4.33)
C = (0; 0; : : : ; 0; u0 ; u1 ; : : : ; uk 1 )
|
{z
n k
zenetszegmens
betltse
247
SPEKTRLIS TULAJDONSGAI
n k 0-val
kiegszts
inverz
transzformci
(4.34)
Az (n; k) paramteru RS-kd 2t n k teljeslse esetn kpes a hibk kijavtsra. A tovbbiakban a t jellst az aktulis, mg a tmax jellst a maximlisan javthat hibk szmra hasznljuk. Az egyes hibkat a helyk s rtkk
definilja (azaz i j s ei j ). A dekdols albbiakban lert mdszerben eloszr
megkeressk a hibahelyeket felptve a hibahelypolinomot majd ennek felhasznlsval generljuk a hibavektort, s ennek kivonsval elvgezzk a vett sz
javtst.
Az
t
L(x) = (1
j=1
i j x) = 1 + L1 x + + Lt xt
(4.35)
(4.36)
248
4. H IBAJAVT KDOLS
j = 0; 1; : : : ; n
(4.37)
! ei 6= 0
(4.38)
i = 0; 1; : : : ; n
1;
(4.39)
(4.40)
L jE i
(
j) mod n =
0;
i = 0; 1; : : : ; n
(4.41)
j=0
L j Ei
j=
0;
i = t ; t + 1; : : : ; 2t
1:
(4.42)
j=0
sj =
( f1 s j 1 + f2s j 2 +
6f 6f
sj
sj
sj
249
SPEKTRLIS TULAJDONSGAI
+ fLs j
L)
6f
sj
:::;
s1 ; s0
Ej
t ; : : : ; E0
E j = Lm E j
6L
Ej
6L
Ej
m=1
6L
Ej
Ej
(L1 E j 1 + L2 E j 2 +
+ Lt E j
t)
(4.43)
E0
E1
..
.
Et
E1
E2
1
Et
10
Et 1
Lt
Et
BLt 1 C B Et +1 C
Et C
CB
C B
C
.. C B .. C = B .. C
..
A
A
.
.
.
. A
E2t 2 L1
E2t 1
(4.44)
250
4. H IBAJAVT KDOLS
Ei =
L0j Ei
j;
i = 2tmax ; : : : ; n
(4.45)
k=1
4.14. A
251
A lptetoregiszteres kdol
A forrs bitfolyamt k bites szegmensekre, n. zenetkeretekre bontjuk. A
kdol m zenetkeretet trol lptetoregiszterben, azaz egy idoegysg alatt egy j
zenetkeretet lptetnk a regiszterbe, a legrgebbi trolt keret kilp abbl, s azt
eldobjuk. Az idoegysg kezdetn a bemenetre rkezett j keret valamint a trolt
m keret alapjn a kdol kiszmt egy kdszkeretet, amely n bit hosszsg. A
kdszkeretet kilptetjk a kdolbl (4.13. bra).
Az R = nk arnyt kdsebessgnek nevezzk. A bitekben kifejezett regiszterhossz + 1 (= (m + 1)k) a lptetoregiszteres kdol knyszerhossza. Egy, a
kdolhoz rkezo zenetbit maximum (m + 1)k forrsbitnek megfelelo hosszon
befolysolhatja a kdol outputjt. Az (m + 1)n mennyisg neve blokkhossz,
mely megmutatja, hogy egy forrsbit maximlisan hny csatornabitnek megfelelo
hosszon befolysolja a kdol outputjt. Az ismertetett konstrukci eredmnye
egy (n; k) fa-kd; a lptetoregiszteres kdol bemenetre vezetve az sszes lehetsges flig vgtelen hossz input bitsorozatot, a kimenetn megjelenik az sszes
252
4. H IBAJAVT KDOLS
k bit
? ?
logika
n bit
6
ui
ui
x2i
ui
-1
? - +?- +? x
mm
P/S
:::;
x3 ; x2 ; x1
2i
x2i
x2i
ui ui
ui ui
2
1
ui
4.14. A
253
L
R0
L+mk
(4.47)
a vals kdolsi sebessg. A pldabeli kdols esett tekintve pl. egy L = 3 bites
zenetblokkot 2 (3 + 2) = 10 bites kdszba kdolunk.
A konvolcis kdok brzolsnak egyik mdja a binris fa reprezentci.
Pldabeli kdolnk esetre lthatjuk ezt a reprezentcit a 4.15. brn.
A fa csompontjaibl kt irnyba lphetnk a kdoland zenetbitnek meg-
11
10
01
q
00
11
00
u1
u2
01
00
10
11
u3
10
11
01
00
q
q
q
q
q
q
q
q
0
10
11
01
00
10
11
01
00
q
q
q
q
q
q
q
q
11
00
11
00
11
00
11
00
q
q
q
q 6q
q ?
q
q
q
1
lps irnya
zenetbit szerint
0
254
4. H IBAJAVT KDOLS
1=01
11 QQ
1 10
QQs0 10
0
01
QQ
3
Q
=
10
01
QQ
+
1 00
QkQ
1 11 Q
QQ 0 11
=
00
0=00
4.14. A
255
01
10
10
00
01
00
10
00
11
00
u3
u2
00
01
10
11
01
00
01
00
11
00
00
00
11
00
10
00
01
00
11
00
00
01
10
11
01
00
01
00
11
00
00
00
00
u1
11
10
01
00
01
01
11
11
10
11
10
11
11
00
00
00
00
00
u2
u3
256
4. H IBAJAVT KDOLS
4.14. A
-+
6
-
- +?
257
QQ
3
11
QQs01
QQ
Q
10
01
QQ
QkQ
+
01
11 Q
QQ 11
00
01
01
00
258
4. H IBAJAVT KDOLS
4.31. ttel. n1 sebessgu kd esetn a nem katasztroflis tulajdonsg fennllsnak szksges s elgsges felttele, hogy
lnko[g11 (x); g12 (x); : : : ; g1n (x) = 1
legyen.
M EGJEGYZS : J konvolcis kd konstrulsa teht azonos feladat relatv
prm polinomok egy j halmaznak konstrulsval. Sajnos erre a feladatra nem
llnak jelenleg mg rendelkezsre olyan ltalnos konstrukcik, mint a blokkkdok esetn.
B IZONYTS : Tekintsnk egy n1 sebessgu (k = 1) nemkatasztroflis kdot. Tetszoleges kdtl megkveteljk, hogy ltezzen a kdols inverze. Az euklidszi
algoritmus alapjn lteznek (s elo is llthatk) azok az a1 (x); a2 (x); : : : ; an (x)
polinomok, amelyekkel
a1 (x)g11 (x) + a2 (x)g12 (x) + + an (x)g1n (x) = 1
addik. Ha d (x) az adatpolinom (mivel k
akkor
c j (x) = d (x)g1 j (x);
a kdszkeretek j-edik bitjt ler polinom, teht a d (x) adat knnyen ellenorizhetoen a
d (x) = a1 (x)c1 (x) + a2 (x)c2 (x) + + an (x)cn (x)
muvelettel nyerheto vissza.
A kdol s inverze a 4.21. brn lthat. Vges sly c j (x) polinomok vges
sly a j (x) polinommal val szorzata is vges sly.
Az r-edik minimlis tvolsg egy konvolcis kd esetn a legkisebb Hamming-tvolsg a kdol output sorozatok elso r kdszkeret hossz (rn bit) szegmense kztt. Jellse: dr . Nyilvn
d1 d2 d3
A d1 ; d2 ; d3 ; : : : sorozat a konvolcis kd tvolsgprofilja.
d = max dr
r
a szabad tvolsg.
4.14. A
259
csatorna
- g 1 (x )
d (x )
c 1 (x )
a 1 (x )
..
.
- g n (x )
? - d (x )
6
..
.
c n (x )
a n (x )
r r
r
r r r
r
r
r r r
rr rr
4.22. bra. Jelkszlet pldk: 2,4 szintu AM, 4,8 szintu PSK.
dE (c1 ; c2 )2 = jc1i
i=0
c2i j2
ahol c1 s c2 komplex elemu konvolcis kdszavak. Ennek megfeleloen euklidszi tvolsgokban addnak a kdtvolsg jellemzok. A kdol gaussi csatornn
trtno alkalmazsakor ez a kdteljestmny legalkalmasabb mrtke. Ugyanis
260
4. H IBAJAVT KDOLS
(1)
(0)
r-
- (2)
- + - (1)
6
- (0)
d
2
;
G = 20 log10
d
dref
[dB
4.14. A
bb
b
br
b
b b b b r b r6 b rI b b
b
b
b
b
b
-r b
bb bbb bbb bbb
000
0
100
1
010
2
110
3
001
4
101
5
011
6
111
7
261
r r r
d0
d1
r r r
d2
d3
d =
2+2
2+2 =
2 = 2:141:
262
4. H IBAJAVT KDOLS
00
01=001
j
*
00=000
01
0
)
(d 1
11
11
10
j*
00=000
10
=
11
01
01=001
~N
00
0
=1
s
s
1
10
01
11
10
11
j*
00=000
)
(d 0
01=001
11
qU
00
01
)
(d 1
r
r6
d1
?
4.27. bra. 4PSK.
00 00 : : : zrus sorozathoz kpest a 01 00 00 : : : sorozatra addik, azaz
dref = d1 =
2:
:141
= 3:6 dB. Az egyszer
Teht a kdolsi nyeresg G = 20 log10 2p
u kdot te2
kintve ez igen j eredmny. Az Ungerboeck-kdok jelentosgt mg knnyebben
lthatjuk, ha szrevesszk, hogy a kdolatlan 4PSK ad-vevobe a 4PSK modultor helybe mindennemu konverzi nlkl beillesztve az Ungerboeck komplex kdol illetve dekdol blokkot, minden egyb fizikai felttel (azonos forrssebessg, adsi teljestmny, svszlessg) vltozatlanul maradsa mellett figyelemre-
4.15. A
KONVOLCIS KDOK
263
V ITERBI - DEKDOLSA
mlt kdolsi nyeresget rhetnk el, illetve a kdolsi nyeresget kisebb jel/zaj
ignybe konvertlhatjuk, azaz kisebb adsi teljestmny ignynk lesz.
A CCITT V.32bis modemszabvnya is Ungerboeck-kdot hasznl, s ezzel az
tviteli sebessget 14.4 kbps-ra nveli a korbbi technikhoz kpest. (Pl. az 1964ben megjelent V.21-es szabvny csak 200 bps-ot tudott biztostani.)
p)
d (x;y)
(4.48)
() min
d (y xi )
x
;
(4.49)
log Pfy j j x j g
(4.50)
j=1
s ekkor a j-edik mlysgben levo gat log Pfy j j x j g metrikval slyozva ismt
lenknt additv metrikhoz jutunk, azaz az utak slya az alkot lek slynak
sszege. Ezen fogalmak bevezetse utn megadjuk a Viterbi-algoritmust. Az
264
4. H IBAJAVT KDOLS
egyrtelmusg kedvrt tegyk fel mg, hogy a maximlis sly utat keressk.
A feladat teht egy specilis irnytott grfban maximlis sly t keresse. A
Viterbi-algoritmus nem ms, mint egy dinamikus programozsi eljrs gyes alkalmazsa a konvolcis kdok dekdolsra.
A Viterbi-algoritmus
Tegyk fel, hogy a trellis i-edik mlysgben ismerjk minden e mlysgbeli csompontba befut azon utat, amelynek slya ezen csompontig maximlis.
Ezen rszutakat az i mlysgbeli tlloknek nevezzk. Az i-edik mlysgben troljuk ezen tlloket, valamint a tllok slyt.
Az i + 1 mlysgbeli tlloket gy hatrozzuk meg, hogy meghosszabbtjuk az
i mlysgbeli tlloket a lehetsges folytats lekkel, s az egyes i + 1 mlysgbeli
csompontokba a klnbzo i mlysgbeli csompontokbl befut egy-egy llel
meghosszabbtott tllokbol az lesz az j tllo, amelyiknek nagyobb az egy g
slyval megnvelt slya.
Mivel a trellis tjai egy vgcsompontba futnak, ezrt legvgl egyetlen tllo
marad, a maximlis sly t.
4.17. plda. A 4.18. bra trellise esetre legyen y = (0; 1; 0; 1; 0; 1; 0; 1; 1; 1) a vett
kdsz, ekkor a 4.28. brn kvethetjk vgig a dekdols menett.
A trellis csompontjai felett jelltk az adott csompontba befut minimlis
Hamming-tvolsg rszt (azaz a tllo) slyt, tovbb thzssal jelltk a tllsi versenybol kiesett rszutak megfelelo leit. A csompontok felett megadott
1
11
A
H*Hj 1
0
- 11 A
A
A
AA 4 AA
A 10 A
3 AA 4 AA 6
R 01 RUA 01 RUA 01
5 8
0
1
2 4
R- 00
R- 00
- 00 - 00 R- 00
00
u1
1
10
2
10
u2
u3
BITHIBAARNYA
DMC- N
265
szmrtkek a tllo rszutak slyt jelentik. Figyelmesen vgigkvetve az algoritmus lpseit, eredmnyl az (1; 0; 1; 0; 0) kt 0-val meghosszabbtott dekdolt
zenetet kapjuk.
(4.51)
266
4. H IBAJAVT KDOLS
10
10
01
01
00
01
01
11
11
00
00
00
00
00
00
00
00
00
00
00
T (D; I ) =
a(d
i)I i Dd :
(4.52)
i=1 d =1
= ID
A + IZ ;
BITHIBAARNYA
267
DMC- N
s
ID
Y
sA
ID
AK
A
ID2 A
AA
R D
-D
Z
I
D2
= IDX + IDY ;
Z = DX + DY ;
B = D2 Z
lineris egyenletrendszerbol
B = T (D; I ) A
ID5
1 2ID
= ID (1 + 2ID + 4I
D2 + ):
(4.53)
a(d ; i) =
2i
0;
1;
ha d = i + 4; i = 1; 2; 3; : : :
egybknt
(4.54)
Mukdjn a kdol blokk-kdolknt vges zenethosszal, hasznljuk a Viterbi-dekdolst. A dekdols eredmnye egy a leadott zr ttl esetleg eltro
t, amely bizonyos csompontokban legazhat a zr tbl, majd egy ksobbi
csompontban visszatrhet bele, s esetleg jra elgazhat belole.
A dekdolt t szakaszokra bonthat: egyes szakaszain egyttfut a csupa zr
ttal, majd legazik, s visszatr abba. A legazstl a visszatrsig tart rszutat huroknak nevezzk. A fentiekben megllaptottuk a hurkok a(d ; i) eloszlst.
268
4. H IBAJAVT KDOLS
Wj
L
j=1
Pb = E
(4.55)
DMC esetn nem nehz felso becslst adni annak a valsznusgre, hogy
az tkldtt zr kdsz helyett egy attl d Hamming-tvolsgra levo kdszra
dntnk ML dekdols esetn. Bevezetve ezen (pr-) hibzs esemny valsznusgre a Pe,pr valsznusget, arra egy
Pe,pr (2
w d
(4.56)
ha
y 2 D2 ;
ha
Pfy j x1 g Pfy j x2 g;
Pfy j x2 g Pfy j x1 g:
(4.57)
Pfy j x1 g
(4.58)
D2
y2
Pfy j x1g
D2
y2
y
Pfy j x2 g
Pfy j x1 g
Pfy j x1 gPfy j x2 g =
4.17. R EKURZV
269
KONVOLCIS KDOLS
n=1
!d
Pfy j 0gPfy j 1g
(4.59)
log2
= x2n ,
Pfy j 0gPfy j 1g
(4.60)
w d
(4.61)
w d
(4.62)
T (D; I )
I I =1;D=2
(4.63)
w
270
4. H IBAJAVT KDOLS
-ct
G(x)
dt
6 6
- + - ut
6 ut
ut
ut
? ?
H(x)
= [dt ;1 ; : : : ; dt ;k
= [ct ;1 ; : : : ; ct ;n
= [ut ;1 ; : : : ; ut ;k
4.17. R EKURZV
KONVOLCIS KDOLS
271
kimenetet, hiszen az elso kicsatols az elso sszead utn van. (Ez az analzist
megknnyto elrendezs azonban nem jelent megszortst, hiszen az elorecsatol
slyok alkalmas megvltoztatsval ez a kicsatols az sszegzs el hozhat.) Az
elorecsatolst a k n mretu
G(x) = [gi; j (x)
mtrix hatrozza meg, ahol gi; j (x) = gi; j;0 + gi; j;1 x + + gi; j;m xm rja le az llapotkeretek i-edik s a kdszkeretek j-edik bitje kztti sszefggst, ahol m az
elorecsatolt konvolcis kdoknl hasznlt jellsekhez hasonlan a kdol
regisztereinek szma. Az llapotkeretek i-edik s az j llapotkeret j-edik bitje
kztti kapcsolatot a hi; j (x) = hi; j;0 + hi; j;1 x + + hi; j;m xm polinom rja le, ahol
hi; j;0 , a konstans tag egytthatja, az zenetkeret i-edik bitjnek hatst mutatja
az j llapotkeret j-edik bitjre. A hi; j (x) polinomokat mtrixba rendezve kapjuk
a visszacsatolst meghatroz
H(x) = [hi; j (x)
k k mretu ngyzetes mtrixot. A tovbbiakban azzal a tipikus esettel foglalkozunk, amikor
1; ha i = j
:
hi; j;0 = i; j =
0; ha i 6= j
Ennek szemlltetsre a 4.31. brn a bemenetet kzvetlenl nem is vezettk be a
visszacsatolst ler H(x) blokkba.
4.20. plda. A 4.32. brn egy egy bemenetu egy kimenetu visszacsatolt konvolcis kdol ltalnos smja lthat.
A rekurzv konvolcis kdok az elorecsatolt konvolcis kdokkal teljesen
analg mdon kezelhetoek. Ugyangy elkszthetjk a kdol llapotgrfjt, trellist, s a Viterbi-dekdolst is vltoztats nlkl alkalmazhatjuk. Mindebbol kvetkezik, hogy a Viterbi-dekdols bithibaarnyra korbban adott felso becsls
is rvnyben marad.
A tovbbiakban meghatrozzuk az elorecsatolt konvolcis kdoknl mr megismert
c(x) = [c1 (x); : : : ; cn (x)
kdszpolinom-vektort a
d(x) = [d1 (x); : : : ; dk (x)
272
4. H IBAJAVT KDOLS
m m m
rm mr mr mr
6 6 6
6
- rm - m r 6
mr? ?mr ?mr
?m ?m
- + - + - - +
6 6
6
g1;1;m
g1;1;0
dl
cl
h1;1;0 = 1
h1;1;1
h1;1;m
j = 1; : : : ; n
j = 1; : : : ; k :
j = 1; : : : ; k
ut ; j = hi; j;l ut
l ;i + dt ; j
(4.64)
l =1 i=1
alak egyenletekhez jutunk minden t = 0; 1; : : : s j = 1; : : : ; k rtkre. Szorozzuk meg a (4.64) egyenletet xt -nel, s a kapott egyenleteket sszegezzk minden
4.17. R EKURZV
273
KONVOLCIS KDOLS
u j (x)
ut j xt =
;
t =0
m
hi j l ut
; ;
t
l ;i x +
t =0 l =1 i=1
m k
t l
+
l ;i x
; ;
hi; j;l xl ut
l =1 i=1
k m
t =0
hi j l xl ut
t =0 l =1 i=1
m k
dt j xt =
t l
+
l ;i x
t =0
dt j xt =
;
t =0
dt j xt =
;
t =0
hi j l xl ui (x) + d j (x)
; ;
i=1 l =1
d j (x) = hi; j (x)ui (x) = [u1 (x); : : : ; uk (x)[h1; j (x); : : : ; hk; j (x)T
i=1
(x)
addik, ahol H 1 (x) a H(x) inverze. Ekkor, mivel a kimenet megkaphat egy u(x)
bemenetu G(x) elorecsatols konvolcis kdol segtsgvel, az elorecsatolt
konvolcis kdoknl bizonytottak alapjn a kdszpolinom-vektor a
c(x) = d(x)H
(x)G(x)
(4.65)
d 1 (x )
[g1;1 (x); : : : ; g1;n (x)
h1;1 (x)
(4.66)
274
4. H IBAJAVT KDOLS
dl
- +? -
cl ;1
m m m
6 6 6
- +? c-l 2
;
=
=
d 1 (x )
g1;2 (x)
1;
h1;1 (x)
=
d 1 (x )
=
1 + x4
1;
1 + x + x2 + x3 + x4
:
(4.67)
4.18. T URB
275
KDOK
1: kdol
2: kdol
bitkevero
?
bitkevero
- J Jtrlo
J
JJ
kimenet
..
.
?
bitkevero
n: kdol
276
4. H IBAJAVT KDOLS
dl
- +? -
bitkevero
-+ 6
-s
( )
xl
m m m
6 6 6
m
-m
- +? xl-p
+
( 1)
( p2 )
xl
HH
kdolk alkotjk, ezek a kdok tnylegesen blokk-kdok, ahol egy blokk mrete
a bitkevero hossza. Mind a kdolst, mind a dekdolst blokkonknt kln vgezzk el. A blokkmretet a tovbbiakban K-val jelljk, tipikus rtke 210 216
kztt van.
Az rkezo d1 ; d2 ; : : : ; dK adatsorozatot kzvetlenl tovbbtjuk a kimenetre,
(s)
(s)
(s)
gy kapjuk az x1 ; x2 ; : : : ; xK sorozatot (az s felso index a szisztematikus szra
(p )
(p )
(p )
utal). Az elso komponens kdol a d1 ; d2 ; : : : ; dK bemenetre az x1 1 ; x2 1 ; : : : ; xK 1
paritsbit-sorozatot generlja. A msodik kdol bemenetre azonban a bitkevero kzbeiktatsa miatt az eredeti adatsorozat egy permutlt vltozata, a
(p )
(p )
d10 ; d20 ; : : : ; dK0 sorozat kerl, s ehhez generlja a msodik kdol az x1 2 ; x2 2 ; : : : ;
(p )
(s)
(p )
(p )
(s)
(p )
(p )
xK 2 paritsbit-sorozatot. gy vgl a csatornba az x1 ; x1 1 ; x1 2 ; x2 ; x2 1 ; x2 2 ;
(s )
( p1 )
( p2 )
bitsorozat kerl. Trls alkalmazsa esetn a paritsbit-soro:::;x
K ; xK ; xK
zatok elore meghatrozott elemei nem kerlnek tovbbtsra.
A dekdols megknnytse rdekben az elso komponenskdolt blokk-kdols zemmdban hasznljuk; visszacsatolt konvolcis kdolk esetn is elrheto, hogy a kdolt tetszoleges llapotbl elindtva m j bit belptetsvel a
kdol a 0 llapotba kerljn. A klnbsg csupn annyi, hogy mg az elorecsatolt esetben ez mindig m darab 0 belptetsvel trtnt, addig a 4.22. pldban
4.18. T URB
277
KDOK
(p )
(p )
( p1 )
1g
a
rtkek s az L2e (dl ) = log PPffddll =
=0g
1g
priori informci alapjn (l = 1; : : : ; K) egy j L1e (dl ) becslst kszt a log PPffddll =
=0g
(s)0
278
4. H IBAJAVT KDOLS
bitvisszakevero
L2e (dl )
( p1 )
yl
(s)
yl
L1e (dl )
L2e (dl0 )
L1e (dl0 )
bitkevero
( p2 )
yl
1. dekder
(s)0
2. dekder
?(dl )
yl
bitkevero
int
?(dl )
6
?dl
4.36. bra. A turb dekder blokkdiagrammja.
a priori
1. dekder
bitvisszakevero
klso
a priori
bitkevero
klso
2. dekder
( )0
j s
(dl ) = log
s0
Pfdl = 0jyl
= 1 yl
( )
;
;
( p2 )
yl
( p2 )
yl
;
;
l = 1; : : : ; K g
l = 1; : : : ; K g
rtket. Ha (dl ) > 0, akkor rtelemszeruen dl = 1-re dntnk, egybknt dl = 0ra. (A (dl ) s L2e (dl ) kztti klnbsgre itt nem trnk ki. Az eltrs clja az
iteratv dekdols stabilitsnak biztostsa.)
4.18. T URB
279
KDOK
p(1
p))dn ;
2dn Rc Eb
N0
Pe;pr;n = Q
ahol Q(x) = ( x) a standard normlis eloszls farokeloszlsa, Rc a kd sebessge, Eb az egy informcis bit tvitelhez felhasznlt energia, N0 =2 pedig a csatorna ktoldali spektrlis surusgfggvnye (az Eb =N0 rtket jelzaj viszonynak
nevezik). Ekkor a bithibavalsznusg
Pb
8 K
2
p
>
w
>
< Kn (2 p(1
Pb(n j 0) >
>
n=1
n=1
2K
: wKn Q
n=1
q
p))dn
2dn Rc Eb
N0
BSC
(4.68)
Gauss
csatorna esetn.
Jelljk a d sly kdszavak szmt Md -vel, s az ilyen kdszavak zenetslynak sszegt Wd -vel. Definiljuk a kdszavanknti tlagos zenetslyt a kvetkezo mdon:
Wd
w =
:
Md
280
4. H IBAJAVT KDOLS
Mivel egy K hossz bemenet K =Rc hossz kimenetet eredmnyez, ekkor Gauss
csatorna esetn a bithibavalsznusgre vonatkoz felso korlt a kvetkezo formban rhat:
Pb
K =Rc
Md wd
K Q
d =d f ree
M f ree w f ree
Q
K
2dRc Eb
N0
2d f ree Rc Eb
N0
(4.69)
ahol d f ree a turb kd minimlis vagy ms nven szabad tvolsga, M f ree a minimlis sly kdszavak szma, s w f ree ezek tlagos informcis slya. Mivel a
normlis eloszls farokeloszlsa igen gyorsan cskken, a kpletbeli kzelts nagy
Eb =N0 rtk esetn (azaz kis zaj csatornn) igen pontos. Az gy kapott kzeltst
szoks szabad tvolsg aszimptotnak is nevezni.
4.23. plda. A 4.22. pldban megfelelo bitkeverot alkalmazva K = 65536 esetn
d f ree = 6; w f ree = 2; M f ree = 3 addik.
A turb kdok esetben a szabad tvolsg ltalban elg kicsi. Azonban kis
jelzaj viszony s nagy K esetn a minimlis sly kdszavak szma jobban befolysolja a teljestmnyt, mint a minimlis kdtvolsg. Pontosan ez jellemzi a
100
10
10
10
10
10
10
10
10
6Pb
r r r
b b
b rb r rb r
b
0
r
b
0:2 0:4 0:6 0:8 1:0 1:2 1:4 1:6 1:8 Eb =N0 [dB]
4.19. CDMA
281
282
4. H IBAJAVT KDOLS
o
;
c(i) 2 F n :
A C kd teht a tbbszrs hozzfrsu kdolst vgzi, vagy mskpp kifejezve a multiplexlst. A multiplexl kd a htn hordozza az zenetcsomagokat, amely csomagok minimlis szmban trtno srlst kvnja a kdols
garantlni az aszinkron tbbszrs hozzfrsu csatornn val tovbbtsukkor.
Egy tovbbi kdolst, trls- illetve hibajavt kdolst is alkalmazva, lehetosg
van arra, hogy a mgis megsrlt csomagokat kijavthassuk a vevoben. A feladat
ebben a megkzeltsben teht alapvetoen a C kd tervezse, mivel a hibakontroll
283
4.19. CDMA
frekvencia
AAAAAAAAAAAA
..
.
3
2
AAAAAAAAAAAA
AAAAAAAAAAAA
1
1
AAAAAAAAAAAA
AAAAAAAAAAAA
:::
AAAAAAAAAAAA
AAAAAAAAAAAA
:::
AAAAAAAAAAAA
ido
n 1
c = max max f (ct ; b
ct + )
c;b
c2C 0<n t =0
c6=b
c
f (u; v) =
1; ha u = v
0; egybknt
284
4. H IBAJAVT KDOLS
paramterngyessel jellemezhetjk a C kdot, ahol T = jC j. Kt kd egybevetst azonos n szhossz s F bc mellett a T potencilis felhasznlszm s a
max korrelcis paramter alapjn vgezhetjk. Ha csak F rgztett, akkor a Tn s
max
n szhosszra vett relatv paramterrtkeket vethetjk egybe.
4.24. plda. Tegyk fel, hogy q klnbzo frekvencia ll rendelkezsre, s csatorna idoszeletenknt brmelyiket vlaszthatjuk a csatornba adott jel szmra,
teht q-FSK modulcit vgezhetnk. Ez azt jelenti, hogy nembinris kdolst
alkalmazva GF(q) felett dolgozhatunk a csatornakd elksztsekor, ahol q valamely prmszm vagy prmhatvny.
Minden forrsnak kt klnbzo tpus informcit kell a csatornba juttatnia.
Az egyik a forrs (felhasznl) azonostja (cme), a msik az zenet.
Ezen informcik kdolsnak egyik mdja az albbi. A forrs binris sorozatbl kpezznk q-szintu karaktersorozatot, s egy kdszba kdoland zenet
legyen egy karakter, azaz GF(q) egy eleme. Egy megfelelo kd ezen zenet kdolsra egy (q 1; 1) paramteru GF(q) feletti RS-kd. Ekkor a d = n k + 1
sszefggs alapjn d = q 1 addik a minimlis kdsztvolsgra, azaz tetszolegesen kivlasztott kt kdsz minden koordintban klnbzik egymstl. A
kd genertorpolinomja lehet a
g(x) = (x
1)(x
) (x
)g(x) = x
q 1
);
285
4.19. CDMA
felhasznlsval, hogy
g(x) = xq
q 2 q 3
q 3 q 4
+ 2x +
;:::;
286
4. H IBAJAVT KDOLS
(1 ; 2 ; 3 ; 4 )
(2 ; 3 ; 4 ; 5 )
(3 ; 4 ; 5 ; 6 )
(4 ; 5 ; 6 ; 7 )
(5 ; 6 ; 7 ; 1 )
(6 ; 7 ; 1 ; 2 )
(7 ; 1 ; 2 ; 3 )
7
6
5
4
3
2
1
0
0
B1
B
B0
B
B1
B
B0
B
B1
B
0
0
1
0
0
1
0
0
0
0
0
0
0
0
0
1
1
1
1
1C
C
1C
C
0C
C
0C
C
0C
C
0A
0
0 1 2 3
ido
287
4.19. CDMA
0
B0
B
B1
B
B1
B
B0
B
B1
B
0
0
0
0
0
0
0
1
1
0
0
1
0
0
0
1
0
1
0
0C
C
0C
C
0C
C
1C
C
1C
C
1A
0
0 1 2 3
Valban (1; 1; 1; 1) ll a 2. sorban, amely a = zenetnek felel meg. A
dekder feladata teht megllaptani, hogy melyik sor tartalmaz csupa 1-est.
Mivel egyszerre tbb felhasznl is kld a csatornba, ezrt elofordulhat, hogy
egynl tbb sor is csupa 1-esbol ll, s ekkor a dekdol vletlenszeru vlasztsra
van utalva ezen sorok kztt, azaz dekdolsi hiba keletkezhet. Mivel az adott
kdolsnl a klnbzo felhasznlk kdszavai a mtrix egy adott sorba csak
egy 1-est adhatnak, ezrt karakteres rvidts esetn ha M q 2, akkor
hibamentes tvitel biztosthat elvileg. Szmpldnkban ez az M 3 felttelt
jelenti.
Pldnkban kdszszinkron esetet tekintettnk hallgatlagosan, mg a gyakorlati eset a kdszavak aszinkronizmusa. A fenti kdkonstrukci ebben az esetben is jl hasznlhat, de aszinkronizmus esetn nvekszik a kdsztveszts valsznusge a kdsztlapolds miatt.
288
4. H IBAJAVT KDOLS
- konvolcis
kdol
WalshHadamardkdols
PN2
- kdols
PN1
- kdols
A tmbvzlatot a 4.40. brn lthatjuk. Egy cella egy szektrorn belli aktv
mobilok megklnbztetse (jeleik kdmultiplexlsa) binris ortogonlis kdok
(WalshHadamard-kd) alkalmazsval trtnik. A tipikus kdszhossz 64, az
ortogonlis kdszavak szma 64. Ezzel 64 csatorna kpezheto egy szektoron bell, amelybol egy a pilotcsatorna (jelzstvitel) cljra van lefoglalva.
A koherensen (azaz vivofzis-helyesen), kdszinkronban mukdo egy szektoron belli downlink jeleket az ortogonlis kdok alkalmazsa hatkonyan szeparlja.
289
4.19. CDMA
pilot
csatorna
forgalmi
csatorna
forgalmi
csatorna
forgalmi
csatorna
forgalmi
csatorna
62
63
teljestmny
szablyozs
adat
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1. kdsz
2. kdsz
3. kdsz
4. kdsz
5. kdsz
6. kdsz
7. kdsz
8. kdsz
Brmely kt kdsz skalris szorzata zrust eredmnyez, mivel fele koordintn egyezo, feln ellenkezo elojeluek az elemek.
lvletlen (pszeudorandom, PN1) sorozatokkal trtno kdols segtsgvel
klnbztetik meg a klnbzo szektorok s cellk mobiljainak jeleit a downlink csatornban, azaz ezen az ton trtnik a tbbhozzfrses fzisugratsos
kdmultiplexls. A WalshHadamard-kd fizikai sebessge megegyezik az gynevezett chip-sebessggel, azaz a PN1 kdols temnek megfelelo.
290
4. H IBAJAVT KDOLS
4.19. CDMA
291
megfelelo WalshHadamard-kdszt, azaz az nem fix, hanem a bitfolyamtl fggoen vltoz. A mdszer a szuperortogonlis konvolcis kdols. gy is fogalmazhatunk, hogy ezzel 64 szintu ortogonlis jelkszletu modulcit valstunk
meg. Ezzel a mdszerrel egy igen j minosgu csatorna alakthat ki fadinges krlmnyek kztt, alacsony jel/zaj viszony mellett anlkl, hogy pilot referencia
jelre kellene tmaszkodni. (Erre a kdolra a tmbvzlat tovbbi elemeinek rvid
ismertetse utn rszletesen visszatrnk.)
Az uplink csatornban ugyancsak alkalmazsra kerlnek a PN1 s PN2 lvletlen kdok.
A kdolsi tmbvzlatunk ezzel mg nem teljes, mivel a CDMA kdrendszer
igen eroteljesen tmaszkodik a kdtfuzs alkalmazsra is. Ha a vteli jelteljestmny idoben vltozik, ezzel egytt vltozik a demodultor bemenetn a bitenergia, kvetkezskppen a jel/zaj viszony, ezltal a demodulcis (nyers) bithibaarny is. Javulshoz vezethet megfelelo diverzity alkalmazsa. (Diverzity rendszerben ugyanazt az informcit kt klnbzo csatornn viszik t. Mukdsnek
alapja az, hogy kisebb annak a valsznusge, hogy egyidejuleg mindkt csatornn
rossz tviteli fggvny alakul ki, mint annak, hogy a ketto kzl csak az egyiken.)
A CDMA rendszerben idodiverzityt valstanak meg kdtfuzs felhasznlsval.
Blokktfuzs esetn ez azt jelenti, hogy I J mretu blokkba gyujtjk az egytt
tfuzendo I J szimblumot (chip, bit, sz, stb. egysget), soronknt egymsutn tltve fel a blokkot. Ezutn oszloponknt olvassuk ki a csatornba a blokk
elemeit. A vevoben ennek inverzt elvgezve az eredeti sorrendet hozzuk ltre.
Ezltal a csatornban idoben szomszdos szimblumok az tfuzs visszafejtse utn J szimblumido tvolsgra kerlnek. Ennek az a haszna, hogy J szimblumidonl kisebb tlagos fadingidotartamok esetn fadinghats szempontjbl
fggetlen energikkal kerlnek szomszdsgba a szimblumok, azaz ltrejn az
idodiverzity.
A 4.42. brn lthat a K = 9 knyszerhossz (regiszterhossz + 1), 12 kdsebessgu, 753 s 561 genertor (oktlis brzols), d = 12 szabad tvolsg
binris konvolcis kd genertora, amely a downlink csatorna hibajavt kdolja.
A megcsapolsok helyeit az oktlis brzols G1 = 753 s G2 = 561 genertorok adjk. Ez azt jelenti, hogy binris brzolsban 110 101 111 (357) valamint
100 011 101 (165) 1-eseinek megfelelo pozcikban csapoljuk meg a lptetoregisztert. (A rendszerben hasznlatos mg 13 sebessgu kdol is, amely d = 18
szabad tvolsg, K = 9 knyszerhossz, G1 = 711; G2 = 663; G3 = 557 megcsapols genertorokkal rendelkezik. Az emltett 21 illetve 31 sebessgu kdok a
leheto legnagyobb szabad tvolsggal rendelkeznek az adott knyszerhossz mellett.)
292
4. H IBAJAVT KDOLS
m m mmmm
- + - + - +- +- +- + Q
6
6
6 6 6 6 QQQ
Qs Qk
Q 3
- +?- +?- +? - +?
r
r
mmm m
4.42. bra.
1
2
ortogonlis blokk-kdol
r-
6 6 6 6 6 6 6
- +? 6
293
4.19. CDMA
6
--
-
kezd
IW 2
1
6IW
6IW
2 I
m
W2
3
vge
IW
4.44. bra. A reduklt llapottmenet-grf.
A kdol kicsi sebessgu, azaz egy bit belpsekor a kimeneten 2m 1 bites
sz jelenik meg, R = 2m1 1 .
A szuperortogonlis kd figyelemre mlt tulajdonsga egyrszt viszonylag
knnyu analizlhatsga, msrszt kivl hatkonysga (mindennek ra a kis sebessg). Az ortogonlis szavak prjai pontosan fele bitjkben klnbznek, teht a zrus sly vektortl pontosan v = 2m 2 bitben klnbznek. A reduklt
llapottmenet-grf lthat a 4.44. brn, amely jl kvetheto a kdol blokksmja alapjn. A kezdeti s vgllapot a regiszter csupa 0 llapotnak felel meg
(hasonlan ahhoz, ahogy a 4.30. bra kapcsn eljrtunk). A kezdeti llapotbl
egy 1 bit belptetsvel lpnk ki. A kezdeti s vgllapot kztti i-edik llapot
(i = 0; 1; : : : ; m 1) annak felel meg, hogy a regiszterben milyen hossz csupa 0
bitbol ll sorozat tallhat az input oldali cellkat tekintve.
A 4.18. pldban megismert transzfer fggvny szmtsnak egy gyakorlati
pldjt mutatjuk be ennek kapcsn. Az ott megismert jellsekkel a blokksmban a
W
2m
=D =D
1=(2R)
=D
jellst hasznltuk, tovbb I szorz azon az len ll, amely az 1 adatbit kdolba
lptetsvel generldott, mg az I szorz hinya W elott azt jelenti, hogy az l 0
adatbit kdolba lptetsvel generldott.
-gal jelltk meg a hrom, kln magyarzatot ignylo let. Az 1 l 1 adatbit belptetsekor keletkezik az azelott zrus llapot kdolban, azaz a zrus
tbl legaz elso l. A kdol vzlata alapjn jl lthat, hogy ekkor ennek a
bitnek a hatsaknt a csupa 1 kdsz jelenik meg a kimeneten, azaz amelynek slya 2v (= 2m 1 ) (a W 2 jells pontosan ezt fejezi ki, mivel W defincija szerint
a sly a kitevoben szerepel). Hasonl a magyarzat a 3 l esetn is, csak ott a hatst a kilpo 1 bit okozza. A 2 l esetn a belpo s kilpo bit 1, mod 2 sszegk
0, s az ennek megfelelo csupa 0 sz (v = 0 sly sz) jelenik meg a kimeneten.
294
4. H IBAJAVT KDOLS
Pb <
dT (W ; I )
dI I =1;D=Z
Z (m+3)v
(1 2Z v )2
1
1
2
Zv
Z (m
1)v
ahol Z az egy binris csatornaszimblum dekdolsi hibavalsznusgre vonatkoz Bhattacharyya felso becsls:
Z=
Z p
Emlkezetnlkli csatorna esetn, ha kt csatornabeli sz m csatornabitben klnbzik, akkor annak valsznusge, hogy tves lesz a dnts, Z m -mel fellrol
becslheto. Gaussi csatorna esetn
Z = exp
Es
N0
;
4.19. CDMA
295
296
4. H IBAJAVT KDOLS
297
4.20. F ELADATOK
4.20. Feladatok
Lineris blokk-kdok
4.1. feladat. Egy f0; 1; 2g kdbcju GF(3) feletti lineris kd genertormtrixa:
1021
G=
0122
Adja meg a kdszavakat, valamint a d minimlis tvolsgot!
4.2. feladat. Egy linerisbinris kd paritsellenorzo mtrixa
H = 1 1 1 1 1 1 . Adja meg a kd kvetkezo paramtereit: n; k; d, kdszavak szma!
4.3. feladat. Egy lineris binris blokk-kd genertormtrixa:
10110
01101
G=
Adja meg
a) a kd paramtereit: n; k; d,
b) standard elrendezsi tblzatt,
c) szindrma dekdolsi tblzatt,
11100
H = 10010A
11001
Adja meg a szindrma dekdolsi tblzatot!
4.5. feladat. Egy lineris binris kd genertormtrixa az albbi:
0
101011
G = 011101A
011010
298
4. H IBAJAVT KDOLS
Adja meg:
G=
1022
0112
299
4.20. F ELADATOK
4.10. feladat. Adja meg a legkisebb kdszhossz GF(3) feletti, 1 hibt javt,
k = 2 zenethossz szisztematikus kdot paritsellenorzo mtrixval!
4.11. feladat. Ltezik-e C(n; k), n k = 2, GF(3) feletti 1 hibt javt kd? Ha
igen, adja meg szisztematikus mtrixaival!
4.12. feladat. Adja meg a C(n; k = 1) paramteru binris kd C0 dulis kdjt
(dulis kd = paritsellenorzo mtrix mint genertormtrix ltal generlt kd), s
annak paramterhrmast! Adja meg C0 szavait n = 4 esetn!
4.13. feladat. Ltezhet-e olyan GF(q) feletti lineris blokk-kd, amelynek genertormtrixa egyben a kd paritsellenorzo mtrixa is? Ha vlasza igen, mutasson
pldt r, mind q = 2, mind pedig q > 2 esetben.
4.14. feladat. Valaki azt lltja, hogy ha egy C(n = 2m 1; k) lineris binris
kdnak a csupa 1 kdsz eleme, akkor pontosan eggyel kevesebb pros parits
nemzrus kdszava van, mint pratlan parits. Igaza van-e?
4.15. feladat. Legyen C(n; k) egy lineris binris blokk-kd, amelynek genertormtrixban nincsen csupa zrus oszlop. Igaz-e, hogy az sszes kdsz egyeseinek
sszestett darabszma n 2k 1 ?
4.16. feladat. Egy GF(q) feletti lineris blokk-kd paritsellenorzo mtrixa
H=
1 1 1
1 2
1
q
300
4. H IBAJAVT KDOLS
a) Lineris-e a kd?
r
1) paramteru 1
Kalkulus
4.22. feladat. Egy egyenlo oldal hromszggel hromfle elemi transzformcit vgezhetnk:
e: helybenhagys
t: tengelyes tkrzs
f: kzppont krli 120 -os forgats
A szorzs muvelet kt elemi transzformci kztt legyen azok egyms utni alkalmazsa. Adja meg ezen transzformci csoport muveleti tbljt, rszcsoportjait!
4.23. feladat. Mutassa meg, hogy az egszek (+;
a kivons muveletre!
B) [ (B
A) szimmetrikus differencia
301
4.20. F ELADATOK
0
1
2
3
0
0
1
2
3
1
1
2
3
0
2
2
3
0
1
3
3
0
1
2
0
1
2
3
0
0
0
0
0
1
0
1
2
3
2
0
2
3
1
3
0
3
1
2
Testet kapunk-e?
4.29. feladat. Konstrulja meg GF(4) muveleti tblit!
4.30. feladat. Konstrulja meg GF(8) muveleti tblit:
a) Az x3 + x + 1 binris irreducbilis polinom felhasznlsval!
b) Ismtelje meg a konstrukcit az x3 + x2 + 1 binris irreducbilis polinom
felhasznlsval, s mutassa meg hogy a kt test izomorf (az elemek tnevezsvel azonos muveleti tblkhoz jutunk)!
4.31. feladat. Legyen adva GF(4) a kvetkezo muveleti tblkkal:
+
0
1
2
3
0
0
1
2
3
1
1
0
3
2
2
2
3
0
1
3
3
2
1
0
0
1
2
3
0
0
0
0
0
1
0
1
2
3
2
0
2
3
1
3
0
3
1
2
302
4. H IBAJAVT KDOLS
x + 2y
2 1 2
det 1 1 2A = ?
1 0 1
4.32. feladat. Adja meg az x + 1 2 GF(8) polinom alakban megadott testelem
inverzt, ha x3 + x2 + 1 az aritmetika generl polinom!
4.33. feladat. Adja meg a GF(8) test elemeinek binris minimlpolinomjt!
4.34. feladat.
a) Mutassa meg, hogy a p(x) = x3 + x2 + 2 GF(3) feletti polinom irreducbilis!
b) Adja meg GF(27) elemeinek rendjt!
c) Mi az x polinom ltal reprezentlt elem rendje GF(27)-ben, ha p(x) az aritmetika generl polinom?
4.35. feladat. Konstrulja meg GF(9) muveleti tblit!
4.36. feladat. A GF(16) test sszead- s szorztbljt tbbflekppen is megkonstrulhatjuk:
a) GF(2) feletti 4-edfok irreducbilis polinommal,
b) GF(4) feletti 2-edfok irreducbilis polinommal.
Kvessk a b) utat!
4.37. feladat. A p(x) = x20 + x3 + 1 GF(2) feletti polinommal GF(220 ) konstrulhat, ahol az x polinom ltal reprezentlt elem primitv:
a) Adja meg ezen test rsztesteinek mrett!
b) Mely rsztesteknek nincsen tovbbi rszteste a GF(2) testen kvl?
4.38. feladat. Igaz-e, hogy (x
303
4.20. F ELADATOK
4.39. feladat. Legyen primitv elem a GF(16) testben, amelynek binris minimlpolinomja x4 + x + 1. Adja meg az miniml polinomjt GF(4) felett!
4.40. feladat. Adja meg az x8 1 polinom GF(3) feletti irreducbilis polinomokra
trtno faktorizcijt! Mennyi klnbzo, n = 8 hosszsg, GF(3) feletti ciklikus kd van?
4.41. feladat. f (x) = 3x4 + 2x + 4 egy GF(5) feletti polinom. Adjuk meg az
[ f (x)25 polinomot explicit alakban!
4.42. feladat.
a) Hny klnbzo msodfok x2 + ax + b alak (fo)polinom van GF(16) felett?
b) Hny klnbzo (x
)(x
1; 3 ; 6 ; : : : ; 3i ; : : : ; 3(n
1; 5 ; 10 ; : : : ; 5i ; : : : ; 5(n
1)
1)
:
304
4. H IBAJAVT KDOLS
Ciklikus kdok
4.51. feladat. Valaki azt lltja, hogy egy 1 hibt javt binris ciklikus kd egyik
szava 0001111. Lehetsges ez?
4.52. feladat. Tekintsk a g(x) = x3 + x2 + 1 genertorpolinom, n = 7 kdszhossz binris Hamming-kdot.
a) Adja meg a kd h(x) paritsellenorzo polinomjt s szisztematikus alak
genertormtrixt!
b) Tekintsk a kd nem pros sly szavainak halmazt. Adja meg ezen rszkd mrett, valamint minimlis tvolsgt!
c) Tekintsk a nem pratlan sly szavainak halmazt. Lineris, illetve ciklikus-e ez a halmaz, s mik a paramterei?
4.53. feladat. A g(x) = x3 + x + 1 binris polinom egy 7 kdszhossz Hammingkd genertorpolinomja. Adja meg
a) a kdszavak halmazt,
b) a minimlis tvolsgot,
c) a paritsellenorzo polinomot!
4.20. F ELADATOK
305
4.54. feladat. Egy n = 7 kdszhossz binris ciklikus blokk-kd genertorpolinomja g(x) = x 1. Adja meg a
a) lehetsges kdszslyokat, s a k; d paramtereket,
b) paritsellenorzo polinomot,
c) szisztematikus paritsmtrixot!
4.55. feladat. Egy n = 7 hossz binris ciklikus kd genertorpolinomja g(x) =
x6 + x5 + x4 + x3 + x2 + x + 1. Adja meg a kdszavak halmazt!
4.56. feladat.
a) Hny klnbzo 7 kdszhossz binris ciklikus kd van?
b) Adja meg (n; k; d ) paramtereivel s g(x) genertorpolinomjval az sszes
lehetsges binris n = 7 kdszhossz ciklikus kdot!
4.57. feladat. Egy C0 kdot gy szrmaztatunk, hogy egy g(x) genertorpolinom C(n; k), GF(q) feletti ReedSolomon-kd kdszavait tkrzzk, azaz elemeit fordtott sorrendben tekintjk (c0i = cn 1 i ; i = 0; 1; : : : ; n 1).
a) Ciklikus-e C0 ?
b) Ha az a) krdsre a vlasz igen, akkor adja meg a C0 kd g0 (x) genertorpolinomjt g(x) alapjn, tovbb annak gykeit, ha g(x) gykei 1 ; 2 ; : : : ;
n k .
4.58. feladat. Egy C(n; k); n = 2m 1 binris ciklikus kd g(x) genertorpolinomjt osztja az x + 1 polinom. Eleme-e a kdnak a csupa 1 sz?
4.59. feladat. A g(x) = x3 + x2 + 1 polinom egy n = 7 kdszhossz binris
Hamming-kd genertorpolinomja. Adja meg a kd h(x) paritsellenorzo polinomjra plo, szisztematikus kdolst nyjt visszacsatolt shiftregiszteres kdol eszkz blokksmjt!
4.60. feladat. Egy C1 (n; k1 ; d1 ) illetve egy C2 (n; k2 ; d2 ) ciklikus kd h1 (x) illetve
h2 (x) paritsellenorzo polinomja kztti kapcsolat h1 (x) j h2 (x). Mi a kapcsolat:
a) C1 s C2 kztt,
b) d1 s d2 kztt?
306
4. H IBAJAVT KDOLS
Kdkorltok
4.67. feladat. Konstrulhat-e n = 11; k = 5 paramteru t = 2 hibt javt binris
kd?
4.68. feladat. Valaki azt lltja, hogy olyan kdot tervezett, amely 7 redundanciakarakterrel meghosszabbtja az zenetblokkot, s 4 vletlen hibt kpes javtani a
kdszban. Lehetsges ez?
307
4.20. F ELADATOK
4.69. feladat. Ltezik-e C(n; k), n k = 2, GF(3) feletti egy hibt javt kd?
Ha igen adjon pldt, megadva a szisztematikus paritsellenorzo mtrixt s a
kdszavait!
0 0 0 0 0 0 0
4.71. feladat. Perfekt-e egy C(11; 6) paramteru GF(3) feletti 2 hibt javt kd?
4.72. feladat. Igazoljuk, hogy egy MDS-kd dulisa is MDS tulajdonsg!
RS-kdok
4.73. feladat. Tekintsnk egy GF(11) feletti ReedSolomon-kdot g(x) =
2)(x 4)(x 8)(x 5) genertorpolinommal. Adja meg a kd kvetkezo
jellemzoit: minimlis tvolsg (d), hibajavt kpessg (tc ), hibadetektl kpessg (td ), trlsjavt kpessg (te )!
(x
4.74. feladat. Adja meg egy GF(11) feletti hrom hibt javt, primitv szhossz
ReedSolomon-kd paramtereit, genertorpolinomjt, paritsellenorzo polinomjt!
4.75. feladat. Tekintsnk egy GF(13) feletti 2 hibt javt primitv szhossz
ReedSolomon-kdot.
a) Adja meg a genertorpolinomjval!
b) lltsa elo az u(x) = 2x + 1 zenethez tartoz kdszt transzformcis kdolssal!
4.76. feladat. Eleme-e az (1; 1; : : : ; 1) csupa 1 vektor egy GF(q) feletti C(n; k),
n = q 1 ReedSolomon-kdnak, ahol a genertorpolinom gykei az primitv
elem 0; 1; 2; : : : ; n k 1 hatvnyai?
4.77. feladat. Egy t hibt javt GF(q) feletti ReedSolomon-kd genertorpolinomjnak gyke az primitv elem 2; : : : ; 2t-edik hatvnya. Lehetsges-e, hogy
a kdszavak elemeinek (koordintinak) sszege a test zr eleme legyen?
308
4. H IBAJAVT KDOLS
BCH-kdok
4.82. feladat. Adjuk meg egy egy hibt javt n = 8 primitv szhossz, GF(3)
feletti kd
a) zenethossz (k) paramtert,
b) genertorpolinomjt!
(Segtsg: f (x) = x2 + x + 2 egy GF(3) feletti irreducbilis polinom).
4.83. feladat. Adjon meg egy binris n = 15 kdszhossz, 2 hiba javtsra alkalmas kdot binris genertorpolinomjnak explicit megadsval!
4.84. feladat. n = 31 kdszhossz t = 2 hiba javtsra alkalmas binris BCH
blokk-kdot terveznk. Adja meg a keletkezo kd
a) k paramtert,
b) genertorpolinomjt!
(Segtsg: f (x) = x5 + x2 + 1 egy primitv irreducbilis binris polinom).
4.85. feladat. Adja meg egy GF(3) feletti n = 91 primitv kdszhossz t
hibajavt kpessgu BCH-kd zenethossz paramtert!
4.86. feladat. Adja meg a GF(8) feletti (9; 7) paramteru 1 hibt javt BCH-kd
genertorpolinomjt gyktnyezos alakban!
309
4.20. F ELADATOK
Konvolcis kd
4.87. feladat. Mekkora a d minimlis tvolsga (szabad tvolsga) a
G(x) = x2 + x + 1; x5 + x2 + 1
genertorpolinom-mtrix konvolcis kdnak?
4.88. feladat. Adjon meg egy t = 2 vletlen hiba javtsra alkalmas binris R =
1
u konvolcis kdot genertorpolinom-mtrixval!
2 sebessg
4.89. feladat. Egy 12 sebessgu binris konvolcis kd genertorpolinomjai: 17,
15 (egytthatk oktlis brzolsban).
a) Adja meg a kdol vzlatt!
b) Katasztroflis tulajdonsg-e a kd?
c) Mekkora a szabad tvolsg (d )?
4.90. feladat. Adja meg a kvetkezo, genertorpolinom-mtrixval megadott R =
2
u binris konvolcis kd kdol blokksmjt, valamint d szabad
3 sebessg
tvolsgt!
x x2 + 1 0
G(x) =
0
0
1
4.91. feladat. Mekkora a sebessge, s a minimlis tvolsga a G(x) = 1; x2 + 1
genertorpolinom-mtrix konvolcis kdnak?
4.92. feladat. Tekintsk a G(x) = x2 + 1; x3 + x + 1 genertorpolinom-mtrix konvolcis kdot. Adja meg az llapottmenet-grfjt, s a szabad tvolsgt
(d )!
4.93. feladat. Katasztroflis tulajdonsg-e az albbi blokksmval megadott kdol?
mmm
- +- +- +
6 6 6
-
- +?
310
4. H IBAJAVT KDOLS
Kdkombincik, kdmdostsok
4.94. feladat. Adja meg a g(x) = x3 + x + 1 genertorpolinom C(7; 4) kd nem
pratlan sly szavai C0 rszkdjnak halmazt, s ezen rszkd paramtereit!
4.95. feladat. Perfekt marad-e a C(n; k) binris Hamming-kd, ha kdrvidtst
hajtunk vgre, amelynek mrtke
a) 1 bit,
b) 2 bit?
4.96. feladat. A C(7; 4) binris Hamming-kd kdszavait paritskarakterrel bovtjk pros paritsra egsztve ki a kdszavakat. Adja meg a kapott kd paramtereit!
4.97. feladat. A (7; 4) binris Hamming-kdbl kiindulva konstruljon binris
kdot, amelynek 8 kdszava van, 7 a szhossza s alkalmas 3 hiba detektlsra.
4.98. feladat. A g(x) = x3 + x2 + 1 genertorpolinom szisztematikus Hammingkdon 3 bites kdrvidtst hajtunk vgre.
a) Adja meg a rvidtett kd (n; k) paramtereit!
b) Adja meg a kdszavakat s a kd d paramtert!
4.99. feladat. Adja meg a 8 bitnyi kdrvidtssel kaphat kd paramtereit s
kdszavait, ha a g(x) = x4 + x + 1 genertorpolinom binris Hamming-kdot
rvidtettk.
4.100. feladat. C(n; k), n = 91 kdszhossz 7 hibt javt binris blokk-kdot
szeretnnk konstrulni. Egy megfelelo primitv szhossz C (N ; K ) binris BCHkd rvidtsvel oldjuk meg a feladatot. Adja meg az N ; K ; k paramtereket!
4.101. feladat. Legyen C(255; 251) egy GF(256) feletti ReedSolomon-kd,
amelynek genertorpolinomja g(x) = (x 1)(x )(x 2)(x 3 ), 2 GF(256)
primitv elem.
a) Igazolja, hogy a binris kdszavak C binris ciklikus C0 altert alkotjk!
b) Mi ezen C0 altr genertorpolinomja s mik C0 paramterei?
311
4.20. F ELADATOK
4.102. feladat. Egy binris lineris C(n; k; d ) kd nem tartalmazza a csupa egyesekbol (1) ll kdszt. Mit mondhatunk a C0 = C 1 kdrl, ahol a koordintnknti mod 2 sszeads?
a) Lineris-e?
b) Mik a paramterei: n0 ; k0 ; d 0 ?
Mit mondhatunk a C00 = C [ C0 kdrl, ahol [ a halmazegyests:
c) Lineris-e?
d) Mik a paramterei: n00 ; k00 ; d 00 ?
4.103. feladat. Egy GF(q) feletti n = q 1 szhossz C ReedSolomon-kd genertorpolinomjnak gykei ; 2 ; : : : ; d 1 , 2 GF(q). A kdot egy parits
karakterrel bovtjk, olyan mdon, hogy a kdsz karaktereinek testbeli aritmetika szerinti sszege lesz az n + 1-edik karakter. MDS tulajdonsg marad-e a
kapott q szhossz kd?
4.104. feladat. Egy kommunikcis csatornn nagyon ritkn maximum 8 bit
hossz hibacsomk keletkeznek. A kvetkezo bellthat paramteru kdolsi
elemekben gondolkozunk:
a) binris Hamming-kdol,
b) bjt karakter alap ReedSolomon-kdol,
valamint alkalmazhatjuk a kdtfuzs technikt is. A cl minimlis redundancia
mellett elvgezni a javtst. Milyen konstrukcit alkalmazzunk?
Hibajavt dekdols
4.105. feladat. Adja meg egy GF(q) feletti, egy hibt javt BCH-kd PGZ-dekdols szerinti ltalnos dekdolsi algoritmust a szindrmaegyenletek kzvetlen
megoldsval!
4.106. feladat. Egy GF(11) feletti lineris blokk-kd paritsellenorzo mtrixa
H=
ahol = 2 a test primitv eleme.
1 1 1
1 2
1
9
;
312
4. H IBAJAVT KDOLS
4.20. F ELADATOK
313
4.112. feladat. Egy egy hibt javt GF(7) feletti g(x) = (x )(x 2 ), = 3,
genertorpolinom ReedSolomon-kd egy kdszava hibsan, de mg javthatan rkezett meg a vteli oldali dekdolhoz. A vett sz (v0 ; v1 ; v2 ; v3 ; v4 ; v5 ) =
(6; 0; 5; 2; 4; 0). Mi lehetett az tkldtt kdsz?
4.113. feladat. Egy GF(11) feletti C(10; 6) 2 hibt javt ReedSolomon-kd genertorpolinomja g(x) = (x 2)(x 4)(x 8)(x 5), = 2. Egy vett szra a
dekder a kvetkezo szindrmkat szmtotta ki a gykknek megfelelo sorrendben: 3; 6; 1; 2. Adja meg a hibapolinomot!
4.114. feladat. Egy GF(7) feletti C(6; 2) ReedSolomon-kd genertorpolinomja
g(x) = (x 3)(x 2)(x 6)(x 4), = 3. Egy vett szra a dekder a kvetkezo
szindrmkat szmtotta ki a gykknek megfelelo sorrendben: 5; 5; 4; 2. Adja
meg a
a) hibahelypolinomot,
b) hibapolinomot!
4.115. feladat. Egy C(15; 5) paramteru t = 3 hibt javt binris BCH-kd gykei a kvetkezo GF(16) testelemek: ; 2 ; 3 ; 4 ; 5 ; 6 . A GF(16) aritmetikt az
f (x) = x4 + x + 1 polinommal generljuk. A dekder a kvetkezo szindrmkat
szmtotta a fenti gykk sorrendjben: 12 ; 9 ; 0; 3 ; 1, 0. Adja meg a
a) hibahelypolinomot,
b) hibapolinomot!
4.116. feladat. Egy GF(11) feletti g(x) = (x 2)(x 4) genertorpolinom primitv szhossz ReedSolomon-kd dekderhez rkezett vett szbl 2 karakter
trlodtt:
0: 1:
7:
9:
2 0 0 2 0 0 ? 0 ?)
(8
Mik a trlodtt karakterek?
4.117. feladat. Van GF(256) aritmetikban gyorsan szmol egysgnk. A csatorna hibzsa olyan, hogy ritkn, legfeljebb 16 bit hossz hibacsomk keletkezhetnek. Milyen kdot javasol a javtsra, ha maximalizlni szeretnnk a kdolsi
sebessget?
314
4. H IBAJAVT KDOLS
Hibadetekci
4.119. feladat. Valaki azt lltja, hogy tetszoleges m fokszm, binris f (x) polinom, amelynek konstans tagja 1, alkalmas arra, hogy CRC genertorpolinomknt detektljunk vele tetszoleges, legfeljebb m bit hosszsg hibacsomagot. (Pl.
1xxx1 egy 5 hossz hibacsomag.) Igaza van-e?
4.120. feladat. Egy hibadetekcis protokollban a 000 : : : 0011 (kt utols bitjn
1-et tartalmaz) zenetcsomaghoz a g(x) = x16 + x12 + x5 + 1 szabvnyos genertorpolinommal ciklikus redundancia ellenorzo sszeget (CRC) alkalmazunk.
Adja meg az ellenorzosszeggel elltott blokkot!
Hibavalsznusg
G=
11001
01110
315
4.20. F ELADATOK
4.124. feladat. Tekintsk a g(x) = x4 + x + 1 genertorpolinom binris Hamming-kdot. A kdot hibajavtsra hasznljuk. Adja meg egy kdsz tves dekdolsnak valsznusgt!
4.125. feladat. A (8; 4) paramteru paritsbittel bovtett binris Hamming-kdot
hibadetekcira hasznljuk p hibzsi valsznusgu emlkezetnlkli binris szimmetrikus csatornn. Adja meg a detekci mulaszts valsznusgt!
4.126. feladat. A C(n; k = 1) paramteru binris ismtlses kdot
a) tisztn trlses csatornn
b) vletlen bithibzsos csatornn
hasznljuk, ahol a trls illetve hibzs valsznusge p. Adja meg mindkt esetben egy kdsz tves dekdolsnak valsznusgt!
4.127. feladat. 1 bitnyi zenetet gy visznk t a csatornn, hogy ismteljk azt,
azaz a (00 : : : 0) illetve az (11 : : : 1) szavak valamelyikt kldjk t. Legyen p =
0:01 a bithibzs valsznusge az emlkeznlkli binris csatornban. Menynyivel javul a tves dekdols valsznusge, ha n = 3 hossz szavak helyett n = 5
hosszakat hasznlunk?
4.128. feladat. Az albbi mretu ktdimenzis paritskdot paritsellenorzsre
hasznljuk (u: zenetbit, p: paritsbit)
0
u u p
u u pA :
p p p
Adja meg a hibadetekci elmulasztsnak valsznusgt emlkezetnlkli BSC(p)
csatorna esetn!
4.129. feladat. Egy binris, tisztn trlses emlkezetnlkli csatornn p = 0:05
a trls s 1 p = 0:95 a hibtlan tovbbts valsznusge. Flbjtos (4 bit)
egysgekben tovbbtjuk a forrs informcijt, amelyet 4 bit redundancival kiegsztnk kdszv. Hasonltsuk ssze az albbi kt kdolsi eljrst a kdolsi
hatkonysg szempontjbl:
a) a redundancia nem ms mint az zenet flbjt megismtlse,
b) a (8; 4) paramteru, paritsbittel kiegsztett Hamming-kdot hasznljuk.
316
4. H IBAJAVT KDOLS
5. fejezet
Kriptogrfia
A kriptolgia a titkos illetve vdett kommunikci tudomnya, amelynek kt ga
a kriptogrfia s a kriptoanalzis. A kriptogrfia azon algoritmikus mdszerekkel foglalkozik, amelyek biztostjk az zenetek (trolt informcik) titkossgt,
vdettsgt vagy hitelessgt. A kriptoanalzis a titok ltalban illetktelen
megfejtsre (feltrsre) tartalmaz eljrsokat.
A kriptolgia mint titkosrs s annak fejtse nagy hagyomnyokkal rendelkezik, amely trtneti elozmnyekkel kapcsolatosan [15]-ban tallhatunk pldkat.
A kriptogrfival kapcsolatos nyilvnos kutatsok a 70-es vek kzeptol
egyre nvekvo iramban folynak. Ennek fo oka az algoritmikus adatvdelem irnt
a privt (nem katonai vagy diplomciai) szektorban megnyilvnul igny, amelynek htterben az ll, hogy napjainkban klnsen a fejlett hrkzlssel rendelkezo orszgokban rzkeny informcik, amelyek jogtalan megszerzse slyos anyagi s erklcsi krok okozsra adhat lehetosget, nagy mennyisgben kerlnek tvitelre nyilvnos tvkzlsi csatornkon, vagy troldnak fizikailag tlagosan vdett memrikban. Gondoljunk pldul pnzgyi informcikra, egszsggyi, letrajzi vagy szemlyi adatokra.
Titkos informcik vdelmi rendszernek az algoritmikus mdszerek ltalban csak egyik pillrt jelentik, amelyek megfelelo fizikai valamint gyviteli (informcikezels rendszablyai) eljrsok alkalmazsval egytt biztostjk a valsgos rendszerekben az informcivdelmet.
Az albbiakban a kriptogrfia elemeit taglaljuk, annak alapjaiba kvnunk betekintst nyjtani.
318
5. K RIPTOGRFIA
5.1. Alapfogalmak
A digitlis informciforrs kimeneti adatfolyambl, az n. nylt adatbl blokkokat ksztnk, amelyre az x = (x1 ; x2 ; : : : ; xM ) jellst alkalmazzuk, s amelyet
nylt zenetnek (plaintext) hvunk. A titkost kdol egy egy-egy rtelmu lekpezssel ebbol az y = (y1 ; y2 ; : : : ; yN ) titkostott (rejtett) zenetet (ciphertext)
lltja elo:
(5.1)
y = Ek (x);
ahol Ek , k = (k1 ; k2 ; : : : ; kK ) paramteru invertlhat kdol transzformci. A k
vektor a titkosts kulcsa, az az informci, amely egyrtelmuen meghatrozza az
aktulis titkost transzformcit.
A titkost dekdol az inverz transzformci, Dk felhasznlsval
x = Dk (y)
(5.2)
ahol egy felso sorbeli karaktert az alatta llra cserltnk ki. A nylt s a rejtett
zenetblokk egy karakter hosszsg, azaz M = N = 1. A helyettesto tblt gy
konstrultuk, hogy a msodik sort egy rtelmes szval kezdtk (CIPHER), majd
sorrendben felsoroltuk az bc fennmarad karaktereit. A kulcs ez esetben az
rtelmes kezdosz. A dekdolst a kulcs (s az annak megfelelo helyettesto tbla)
ismeretben elvgezhetjk, s az albbi nylt adatfolyamot kapjuk:
GENTLEMEN DO NOT READ EACH OTHERS MAIL:
5.2. plda. A fenti pldabeli nylt szveget bontsuk 8 karakteres blokkokra, majd
kdoljunk blokkonknt az albbi permutci felhasznlsval:
1 2 3 4 5 6 7 8
4 3 7 1 8 2 5 6
;
319
5.1. A LAPFOGALMAK
(mod 26);
(5.3)
ki
(mod 26);
320
5. K RIPTOGRFIA
titkost
kdol
k
y
C1
titkost
dekdol
k
kulcsforrs
C2
5.1. bra. A konvencionlis titkost rendszer elvi vzlata.
Az az eljrs, amikor k kulcsot minden egyes x kdolsakor fggetlenl sorsoljuk, a binris vletlen tkulcsols (one-time-pad, ill. Vernam-titkost nven
is ismert), amely, mint ltni fogjuk, elvileg tkletes titkost eljrs.
Az eddigiekben bevezetett titkostsi mdszer az n. rejtett kulcs, ms nven konvencionlis vagy egykulcsos blokk-kdols. A konvencionlis titkost
rendszer blokkvzlatszeru modelljt lthatjuk az 5.1. brn.
A rejtett zenetet a C1 nyilvnos csatornn (public channel), mg a kulcsot a C2
titkos csatornn (secret channel) tovbbtjuk a dekdol oldalra, teht a kdols
s a dekdols azonos titkos kulcsot hasznl. A csatorna nyilvnossgt illetve
titkossgt egy tmadval szembeni korltozott illetve tkletes vdettsge jelenti.
Pldul kzhasznlat hrkzlsi csatornink nyilvnos, mg egy megbzhat futr
ltali kzbests titkos csatornnak felel meg.
A tmad (behatol) clja lehet az x nylt zenet megllaptsa vagy a k kulcs
megszerzse. Alapfelttelezs a tmad ismereteivel kapcsolatosan, hogy az aktulis k kulcs kivtelvel a kdols, dekdols alkalmazott algoritmust teljes
rszletessggel ismeri. (Titkostsi algoritmuson a titkost kdols s dekdols szmtsi eljrst rtjk.) Ez azt is jelenti, hogy egy titkostsi algoritmus
ltal nyjtott vdettsg nem haladhatja meg a kulcsa vdettsgnek mrtkt. A
kulcs az az informci, amely gyorsan s kvnatosan gyakran cserlheto, mg
a titkost rendszer tbbi elemt hosszabb ideig nem kell vltoztatni. A tmad
ltal alkalmazhat mdszerek kzl csak az algoritmikus tmadsi mdszereket
tekintjk. (Elkpzelhetok tovbbi mdszerek, pl. betrs, lefizets alkalmazsa,
elektromgneses kisugrzs mrse is egy elsznt tmad rszrol.)
Az algoritmikus tpus tmadsnak passzv s aktv mdjt klnbztetjk
meg, amelyet a nyilvnos csatornn hajt vgre a tmad.
A passzv mdszer az n. lehallgats, amikor a tmad a nyilvnos csatornn
raml zenetek sorozatnak birtokba jut. A tmad clja az, hogy a megfigyelt rejtjelezett kapcsolatbl kinyert informcik felhasznlsval algoritmikus
tmadst indtson az aktulis kulcs megllaptsra. Ezt az eljrst szoks rejtjel-
5.1. A LAPFOGALMAK
321
322
5. K RIPTOGRFIA
titkost
kdol
?
tmad
titkost
dekdol
k
x0 ; k0
titkost
kdol
- tmad
y0
titkost
dekdol
k
5.2. A
323
(5.4)
azaz, ha X s Y klcsns informcija nulla, amely ekvivalens az X s Y valsznusgi vltozk fggetlensgvel, s azzal, hogy a passzv tmad egy olyan
csatorna kimenett ltja, amelynek csatornakapacitsa nulla (a csatorna zaja csak
a k kulcstl fgg).
5.1. ttel. Tkletes titkosts ltezik.
B IZONYTS : Tekintsk az 5.4. plda algoritmust:
Y = X + K;
(5.5)
ahol Y = (Y1 ; Y2 ; : : : ; YN ); X = (X1 ; X2 ; : : : ; XN ); K = (K1 ; K2 ; : : : ; KN ) binris vektorok s koordintnknt modulo 2 sszeadst vgznk. Legyen K egyenletes
eloszls a binris N-dimenzis vektorok halmazn, ekkor
PfY = y j X = xg
=
=
=
=
PfX + K = y j X = xg =
PfK = y
PfK = y
1
;
2N
x j X = xg =
xg =
324
5. K RIPTOGRFIA
PfY = y j X = xgPfX = xg =
x
=
=
1
=
2N
PfY = y j X = xg
(5.6)
=
=
H (X; K j Y) =
H (K j Y) + H (X j Y; K) =
H (K j Y)
H (K);
(5.7)
5.2. A
325
azaz a H (X) jKj egyenlotlensget kapjuk. Teht binris tkletes titkost algoritmus esetn legalbb annyi binris digitbol kell llnia a kulcsnak, amennyi
informcis bitet hordoz a nylt zenet.
5.2. definci. Minimlis tkletes titkost algoritmusrl beszlnk, ha
jKj = dH (X)e
(5.8)
(5.9)
326
5. K RIPTOGRFIA
rejtett zenetet kldi A-nak, amit kA nyilvnossga miatt megtehet, s ebbol a rejtett
zenetbol
x = DksA (y)
dekdolssal nyeri vissza A a nylt zenetet. A kdols a nyilvnos kulcs ismeretben knnyu feladat, mg a dekdols a rejtett kulcs ismeretnek hinyban
gyakorlatilag nem vgrehajthat (nehz feladat).
Egy A; B; C; : : : titkostkat (felhasznlkat) tartalmaz rendszerben egy nyilp p
vnos kulcstrba tesszk le a kA ; kB ; : : : nyilvnos kulcsokat, ahonnan brmelyik
felhasznl kiolvashatja annak a felhasznlnak a nyilvnos kulcst, akinek rejtett
zenetet kvn kldeni.
p
Az egyes felhasznlk helyben generlhatjk a kV ; kVs kulcsprt, s ebbol a
nyilvnos rszt kzzteszik, mg a msikat titokban tartjk. Nagyon fontos szrevennnk azt a kittelt, miszerint a nyilvnos kulcstrbl csak olvasni szabad, s
vdeni kell azt a nyilvnos kulcsokkal trtno manipulciktl (pl. csertol). Ez
azt jelenti, hogy ugyan a kommunikcit megelozoen nem kell titkos kulcscsert
vgezni, hiszen a nyilvnos kulcstrbl olvass egy nylt elozetes informcicsernek felel meg, de megmarad az a feladat, hogy ezen nylt elozetes informci
hitelessgt biztostani kell.
Hitelestsi feladatban jl alkalmazhat a D dekdol transzformci. Tegyk fel, hogy A az x zenetet kvnja B-nek elkldeni olyan mdon, hogy egyttal alrst is elhelyezze a rejtett zenetben. Ezt gy teheti meg, hogy az
y = EB (DA (x)) alak zenetet kldi el. y alapjn a DA (x) tartalmat csak B tudja
dekdolni, s nyilvn DA (x) az a lekpezs, amely egyrtelmuen kapcsoldik a
kldo szemlyhez, A-hoz, s a kldtt zenethez, x-hez. A dekdol transzformcinak a nylt zenetre trtno alkalmazsval digitlis alrst generlhatunk.
Hasonl alrsok hitelesthetik a nyilvnos kulcstr elemeit. Ezen alkalmazsokra a kriptogrfiai protokollok kapcsn mg visszatrnk.
5.3. N YILVNOS
327
KULCS TITKOSTS
A. Shamirtl szrmazik az a rendkvl rdekes eljrs, amelynek a felhasznlsval mindennemu elozetes kulcscsere nlkl titkos zenetvlts trtnhet partnerek kztt, feltve az esetleges behatolrl, hogy passzv, azaz a csatornn foly zenetvlts lehallgatsra kpes csak. Ez az eljrs elvi tovbblpst jelent a
nyilvnos kulcs algoritmusokkal szemben is, hiszen mg nyilvnos informcit
sem kell elozetesen a partnerek tudomsra hozni.
A felhasznlk mindegyike egy titkos kulccsal rendelkezzen, s tegyk fel,
hogy a rendszerben alkalmazott Ek (x) kdol transzformci kommutatv, azaz
tetszoleges x nylt zenet, kA s kB kulcspr esetn
EkA (EkB (x)) = EkB (EkA (x)) ;
(5.10)
azaz a ktszeres kdols eredmnye fggetlen legyen a kulcsvlaszts sorrendjtol. Ekkor az n. hromlpses eljrs alkalmazsval A felhasznl B-nek a
kvetkezokpp kldheti el x zenett:
1. A ! B :
2. B ! A :
3. A ! B :
y1 = EkA (x)
y2 = EkB (EkA (x)) = EkA (EkB (x))
y3 = DkA (EkB (EkA (x))) = EkB (x)
Ez a termszetes tlet mg szemlletesebben is lerhat. Nevezetesen kpzeljk el, hogy egy lelakatolhat ldba helyezi el A az x zenetet, s lelakatolja kA
kulcsval (1. lps), majd elkldi B-nek. B nem prblkozik a nyits szmra is
lehetetlen feladatval, hanem inkbb mg a sajt kB kulcsval is lelakatolja a ldt
(2. lps), majd visszakldi azt A-nak. A leveszi a sajt lakatjt, s a ldt, amelyen
mr csak B lakatja maradt, visszakldi B-nek (3. lps), aki ezutn mr knnyen
kinyithatja azt.
A fentiekbol gy tunhet, hogy megtalltuk a tkletes megoldst, hiszen valban nem kellett elozetes kulcscsere a partnerek kztt (sem nyilvnos, sem titkos).
De mint emltettk, ezen protokoll praktikus alkalmazhatsgt az gtolja, hogy
teljesen ki van szolgltatva az aktv tmadsnak, hiszen az zenetklds nyilvnos
hlzaton trtnik. A fenti szemlletes lersmd szhasznlatval gondoljunk
csak arra, hogy pl. a posts, akivel a ldt kvntuk B-hez eljuttatni a sajt lakatjt
teszi a ldra a 2. lpsben, s gy adja azt vissza A-nak.
Az (5.10) kommutativitsi tulajdonsgnak eleget tesz az egyszeru
Ek (x) = x + k
(mod 2)
328
5. K RIPTOGRFIA
y2 = x + kA + kB ;
y3 = x + kB
(x 1 )
e2
= (x 2 )
e1
mod n:
0 r < b:
B IZONYTS : A ltezs knnyen lthat, hiszen a qb a < (q + 1)b egyenlotlensgnek eleget tevo egszet vlaszthatjuk, s ekkor r = a qb. Az egyrtelmusg igazolshoz tegyk fel, hogy q; r pron kvl ltezik q0 ; r0 pr is, amelyre a =
q0 b + r0 ; 0 r0 < b. Mivel ekkor qb + r = q0 b + r0 llna fenn, ezrt r r0 = b(q0 q)
trendezsbol ellentmondsra jutunk, hiszen 0 r; r0 < b miatt r r0 < b, s
ugyanakkor teljeslnie kell a b j r r0 oszthatsgnak, ami csak r = r0 esetn
lehetsges. Az r = r0 egyenlosgbol viszont q = q0 is kvetkezik.
5.3. N YILVNOS
329
KULCS TITKOSTS
2 = r n 1 qn + r n
1 = rn qn+1 + 0
0 < rn < rn
0 = rn+1
= (rn
1 ; rn ) = (rn ; 0) = rn
(5.11)
330
5. K RIPTOGRFIA
q1 c = b + ( q1 )c
r2
q2 r1 = ( q2 )b + (1 + q1 q2 )c
..
.
rn
sb + tc;
1243
929
314
301
13
1243 6 + 929
929 1 + 314
314 2 + 301
301 1 + 13
13 23 + 2
26+1
1 2 + 0;
929
314
301
13
6c
b + 7c
3b
20c
4b + 27c
95b
641c
574b + 3873c;
5.3. N YILVNOS
331
KULCS TITKOSTS
(mod m):
5.6. plda. Az 5.5. plda alapjn a 3873 az 1243 modulo 8387 inverze, hiszen
3873 1243 = 1 mod 8387.
5.5. ttel. Az a modulo m inverze akkor s csak akkor ltezik, ha (a; m) = 1. Ha
ltezik inverz, akkor az egyrtelmu az m-nl kisebb pozitv egszek kztt.
B IZONYTS : Ha ltezik b, amelyre ab = 1 (mod m), akkor az ezzel ekvivalens ab qm = 1 alakbl (a; m) j 1, azaz (a; m) = 1 kvetkezik. Megfordtva,
ha (a; m) = 1, akkor az (5.11) felhasznlsval sa + tm = 1 kaphat, ahol b = s
vlasztssal ba = tm + 1, azaz ba = 1 (mod m) kvetkezik.
Az egyrtelmusget a kvetkezokpp bizonythatjuk. Ha a b0 6= b; 0 < b,
b0 < m egszekre ab = ab0 = 1 (mod m), akkor a(b b0 ) = 0 (mod m), ami azt
jelenten, hogy m j a(b b0 ). De mivel (a; m) = 1, ezrt ebbol m j b b0 kvetkezik, ami viszont jb b0 j < m miatt lehetetlen.
5.6. ttel (Fermat-ttel). Ha a c egsz nem oszthat a p prmmel, akkor
cp
= 1 (mod
p ):
(5.12)
p 1
i = cp
1 = cp
i=1
(mod
p)
i=1
fennll, ahonnan
(mod
p ):
1)( p2 1)
= 1 (mod
p 1 p 2 ):
(5.13)
332
5. K RIPTOGRFIA
a( p1
1)
1)
( p1
1)
( p2 1)
= 1 (mod
p1 )
= 1 (mod
p2 )
1) ( pn
5.4. RSA-algoritmus
Az algoritmus lpsei a kvetkezok:
1. Vlasszunk vletlenszeruen kt nagy prmszmot p1 -et s p2 -t.
2. Kiszmtva az m = p1 p2 s (m) = ( p1 1)( p2 1) paramtereket, vlaszszunk vletlenszeruen egy e; 1 e < (m) egszet gy, hogy
((m); e) = 1
(5.15)
teljesljn.
3. Szmtsuk ki e inverzt modulo (m):
d=e
(az 5.5. ttel miatt ltezik).
(mod (m))
(5.16)
333
(mod m)
(5.18)
inverz muvelet.
(Az x s y skalr jellst alkalmazzuk a nylt ill. a rejtett zenetre az RSA esetn,
kihangslyozand, hogy nemnegatv egsz szmokknt vgezzk velk a mod m
muveleteket.)
5.1. lemma. Az (5.17) s (5.18) formulkkal megadott muveletek egyms inverzei.
B IZONYTS : Mivel (5.16) a de = q(m) + 1 lltssal ekvivalens valamely q
egszre, ezrt az
yd
e d
= (x ) = x
ed
=x
q(m)+1
(mod m)
=x
q(m)+1
= x (x
(m) q
) =x
(mod m)
xq(m)+1 = wq(m)+1 p1
(mod m):
(5.19)
Mivel (w; m) = 1, ezrt (5.19) jobb oldali elso tnyezojre az 5.7. ttel felhasznlsval
(5.20)
wq(m)+1 = w (mod m)
334
5. K RIPTOGRFIA
addik. A Fermat-ttel felhasznlsval:
q(m)+1
p1
=
q(m)
=
p1 p1
1) q( p1 1)
( p2
p1 p1
p1
(mod
p2 )
(5.21)
illetve nyilvnvalan:
q(m)+1
p1
=0=
p1
(mod
p1 )
(5.22)
gy mivel p1 j p1
p1 s (5.21) alapjn p2 j p1
p1 teljeslnek
q(m)+1
a p1 6= p2 prmekre, ezrt p1 p2 j p1
p1 is fennll. Azaz
q(m)+1
q(m)+1
q(m)+1
p1
p1
(mod m):
(5.23)
(mod m)
11
11 981 + 9
91+2
24+1
1 2 + 0;
ahonnan
9
10800
11
981 11
9 = 11
(10800
2 4 = 10800
5 10800
981 11) =
981 11
4909 11;
10800 + 982 11
335
(mod 11023);
(mod 11023)
(5.24)
muvelettel trtnik.
Az (5.24) modulo hatvny kiszmtst egyszerusti a gyorshatvnyozs (ngyzetre emels s szorzs) mdszere. A kitevot az
5891 = 20 + 21 + 28 + 29 + 210 + 212
sszegre bonthatjuk a binris brzolsa alapjn. Ennek alapjn az (5.24) hatvnyt
az albbi alakba clszeru trni:
12
17822
2 2
= ((: : : (1782) )
A kirtkelst a legbelso modulo ngyzetre emelssel kezdjk, azaz az elso nhny lps:
17822 = 900 (mod 11023)
9002 = 5321
(5321
(mod 11023)
1782) = (2242)2 = 76
(mod 11023);
..
.
s az utols lps eredmnyl a 17-et kapjuk vissza. gy ahelyett, hogy (5.24)
mechanikus kiszmtshoz, azaz a
((: : : (1789
: : :)
1789
szorzshoz szksges 5890 darab modulo szorzst vgeztk volna el, megsztuk
17 darab modulo szorzssal. (Knnyen ellenorizheto, hogy ezzel a mdszerrel
legfeljebb a kitevo kettes alap logaritmusnak ktszerese szm modulo szorzsra van szksg.)
336
5. K RIPTOGRFIA
Az egyirny fggvny
Mai ismereteink szerint e s m nyilvnos adatok birtokban az
f : f1; 2; : : : ; m 1g ! f1; 2; : : : ; m 1g,
f (x) = xe
(mod m)
(5.25)
inverznek kiszmtsa (azaz egy y rtkhez egy, az y = f (x) (mod m) sszefggsnek megfelelo x meghatrozsa) szmtsignyt tekintve gyakorlatilag megoldhatatlan feladat, ha a p1 s p2 prmeket elegendoen nagyra vlasztjuk. Eros
sejts, hogy ezen inverzkpzs nehzsge ekvivalens az m prmfaktorokra bontsnak nehzsgvel. Tovbbi sejts, hogy egsz szmok faktorizlsra szolgl
algoritmusok felhasznlsval ma szmtsignyt tekintve megoldhatatlan feladat a log10 m ' 300 nagysgrendu egszek felbontsa. Mai ismeretek s technolgia alapjn tbbszz v nagysgrendu ido lenne szksges a szmtshoz. Ezen
idotartambecslst termszetesen elsosorban gy kell tekintennk mint egy irrelisan nagy rtket, amely szemllteti a gyakorlatilag biztos vdettsg elrshez
szksges eros tlmretezst a kriptogrfiai kdtervezsben.
A gyakorlati titkossgra visszatrve, elvileg nyilvn md lenne e; m nyilvnos
adatok birtokban az sszes fnylt zenet, rejtett zenetg pr elozetes kiszmtsra, amelyeket trolva s a rejtett zenetek valamilyen sorrendjben felsorolva,
tetszoleges rejtett zenet vtelekor kiolvashatnnk a nylt prjt. A felttel nlkli
titkossg gy nyilvn nem llhat fenn, hiszen az megengedn akr az sszes ilyen
pr trolst s mgsem juthatnnk kzelebb a titok (kulcs) megfejtshez.
Az (5.25) modulo hatvnyozs a fentebb mr emltett megfelelo paramternagysgrendek mellett egy pldja az gynevezett egyirny fggvnyeknek.
5.9. definci. Az invertlhat f fggvnyt egyirnynak nevezzk, ha rtelmezsi tartomnynak tetszoleges x elemre f (x) rtket knnyu kiszmtani, mg
gyakorlatilag irrelis feladat tetszoleges y rtkkszletbeli elemhez az y = f (x)nek megfelelo x kiszmtsa.
Az RSA-kdols esetn knnyu feladatnak szmt az (5.25) kdols, mg a
dekdols csak a titkos dekdol kulcs, d ismeretben knnyu. Azon egyirny
fggvnyeket, amelyeket egy informci birtokban knnyu, de annak hinyban
gyakorlatilag lehetetlen invertlni csapda tpus egyirny fggvnyeknek nevezzk. Ezzel a szhasznlattal lve csapda tpus egyirny fggvny birtokban
elvileg tervezhetnk nyilvnos kulcs titkost algoritmust. Megjegyezzk, hogy
a 70-es vektol kezdodoen rengeteg erofeszts trtnt ilyen fggvnyek konstrulsra, amelyek kzl eddig csak a modulo hatvnyozson alapul RSA-kdols
maradt feltretlen.
337
Prmek elolltsa
Visszatrve az RSA-algoritmus elso lpsre, nzzk meg rviden a vletlen prmvlaszts krdst. Bizonyts nlkl utalunk a szmelmlet Csebisevttelre [30], amely kimondja, hogy (n)-re, az n pozitv egsznl kisebb prmek
szmra a kvetkezo becsls adhat, ha n elg nagy:
(n) '
n
ln n
(5.26)
2502
2502
2501
2501
'2
1
501 ln 2
2501
501
1
' 350
s mivel az adott szmtartomny fele pros szm, amelyek nem prmek, elg csak
a pratlanok kzl vlogatnunk, s ezzel megduplzzuk a tallsi valsznusget
' 1751 -re. gy teht tlagosan 175 prblkozsonknt jutunk prmszmhoz a 10150
nagysgrendu szmok kztt.
Felmerl a krds, hogyan dnthetjk el, hogy a vletlenl kisorsolt egsz
szm prm-e vagy sem. Vletlenl sorsolt szmok kzl a prmek valsznusgi
alapon trtno kiszursre tbb algoritmus is ltezik, amelyeknek az alapelvt
kvnjuk itt elmondani.
Tegyk fel, hogy az s egszrol szeretnnk eldnteni, hogy prm-e. Vlasszunk
egy gynevezett bzist, egy b egszet a 2 b < s tartomnyban. A Fermat-ttel
alapjn tudjuk, hogy ha s prm, akkor
bs
= 1 (mod s):
(5.27)
bs
6= 1
(5.28)
gy, ha
(mod s);
338
5. K RIPTOGRFIA
jt j
A +seB
=x
(mod m);
azaz anlkl, hogy feltrte volna a tmad az RSA-kdot, kpes volt kiszmtani
a rejtett zenet nylt tartalmt.
A fentiekben elmondott algoritmikus tmads konklzija az, hogy kzs modulus vlasztst mindenkppen el kell kerlni RSA-kdra alapul rendszerekben.
339
(mod mi );
i = 1; 2; : : : ; r
x1 =
m j b j a j = mi bi ai = ai
(mod mi );
j =1
azaz x1 kzs megoldsa a kongruenciknak. Ha x1 s x2 mindketten megoldsai az x = ai (mod mi ); i = 1; 2; : : : ; r kongruenciknak, akkor nyilvn x1 = x2
(mod mi ); i = 1; 2; : : : ; r. Azaz mi j (x1 x2 ); i = 1; 2; : : : ; r, amib
ol az (mi ; m j ) =
1; i 6= j felttel miatt m j (x1 x2 ) kvetkezik, gy x1 = x2 (mod m).
Ha egy sokfelhasznls rendszerben kicsi az a tartomny, amelybol az e kitevoket vlasztjuk, akkor elofordulhat, hogy tbb felhasznl ugyanazt az e kitevot kapja, de termszetesen fggetlenl vlasztjk a prmprt, gy klnbzo
340
5. K RIPTOGRFIA
dekdol kulcsok s modulusok tartoznak hozzjuk (pl. okulva a kzs modulus vlasztsnak kvetkezmnyeibol). Tegyk fel ekkor, hogy egy felhasznl az
(e; m1 ); (e; m2 ); : : : ; (e; mr ) nyilvnos kdolsi paramterekkel rendelkez
o r (r e)
szm klnbzo felhasznlnak ugyanazt az x zenetet kldi, s a tmad rendelkezsre llnak a megfelelo:
y1
y2
=
=
xe (mod m1 )
x
(5.30)
(mod m2 )
..
.
yr
xe (mod mr )
rejtett zenetek. Ha m1 ; m2 ; : : : ; mr relatv prmek, akkor a knai maradkttel felhasznlsval kiszmthatja az xe (mod m1 m2 mr ) hatvnyt. Mivel x < minfmi g
miatt
0 < xe < m1 m2 mr ;
ezrt magt az xe hatvnyt (s nem csak modulo ekvivalenst) ismeri, gy innen mr x rtkt is kiszmthatja. Ha azonban az zenetkldo az zenet kldsi idopontjt is elhelyezi az zenetben (idopecst), akkor az azonos x zenetet
a t1 ; t2 ; : : : ; tr kldsi idopontok mdostjk, s klnbzo kdoland nylt zenetekk vlnak.
5.5. K RIPTOGRFIAI
PROTOKOLLOK
341
partnerhitelests
kulcskioszts
zenetintegrits
digitlis alrs
titokmegoszts
Megjegyezzk, hogy szmos tovbbi specilis cl, gyakorlatban kevsb hasznlatos protokoll is ismert.
Partnerhitelests
A jelszavas partnerhitelests a legelterjedtebb, rgta ismert azonostsi eljrs. Hossz ido telt el Ali Baba jelszavtl a banki PIN kdokig. A jelsz
egy titok, amit a felhasznl megoszt azzal az eroforrssal, amihez alkalmanknt hozz szeretne frni. A jelszavas rendszerek szoksos problmi: a nem
megfelelo jelszvlaszts, a jelsz nylt alakban trtno tovbbtsa a rendszerbe
juts pontjtl (pl. terminl klaviatra) az ellenorzs pontjig (pl. gazdagp), a
jelszavak nem elgg vdett trolsa (mind a felhasznl oldaln, mind pedig a
jelszfjl tekintetben).
A jelszellenorzs folyamatt lthatjuk az 5.4. brn. A jelszavak gazdagp
oldali vdelmn javt azok egyirny fggvnnyel trtno lekpezse. Ekkor a
jelszfjl az egyirny lekpezs eredmnyt trolja az egyes felhasznlkra, a
felhasznli azonostkkal (ID) egytt. A jelsz (P) tovbbra is nylt alakban rkezik az ellenorzs helyre, ahol elobb kiszmtsra kerl annak egyirny fggvnyes lekpezse ( f (P)), majd ennek eredmnye kerl sszevetsre a tblzat
bejegyzsvel.
Ezzel a megoldssal teht a jelszfjl illetktelen olvassa nmagban nem
jelent veszlyt, hiszen az egyirny lekpezs gyakorlatilag invertlhatatlan tulajdonsga biztostja, hogy jelszhoz a tmad nem frhet hozz. Ez utbbi kijelents azonban csak felttelek mellett igaz: a jelszmret legyen elg nagy a
teljes kiprbls megakadlyozshoz, a jelszavak a teljes jelsztrbol kerljenek
kivlasztsra.
A nem megfelelo jelszvlaszts azt jelenti, hogy a felhasznlk nem vletlenszeruen vlasztanak az adott hosszsg alfanumerikus karaktersorozatok kzl, hanem pl. rtelmes szavakat, jellemzo dtumokat, ezek trivilis kombinciit
342
5. K RIPTOGRFIA
igen/nem
6
-
jelsz
tbla
=?
(ID1; f (P1))
(ID1; f (P1))
..
.
ID
A:
A!B:
A!B:
B:
A!B:
B:
r generlsa
IDA ; n; y = f n (r)
P1 = f n 1 (r)
y = f (P1 )?
P2 = f n 2 (r)
y = f 2 (P2 )?
(5.31)
A ! B : Pi = f n i (r)
B:
y = f i (Pi )?
5.5. K RIPTOGRFIAI
343
PROTOKOLLOK
az f i-szeri alkalmazsval. Az inverz lekpezs praktikus futsideju algoritmust termszetesen maga A sem kpes elolltani, azonban erre nincs is szksge,
mivel az r vletlen elem f fggvnnyel trtno n i-szeres lekpezse ugyanerre
vezet. A kt flnek szinkront kell tartani a jelszsorszm vonatkozsban. Ha
azonban valamely hiba kvetkeztben az tvitel sorn elveszne egy jelsz, akkor A eggyel tovbblp a jelszsorszmban, s j jelszt kld, mellette jelezve az
egylpses szinkronhibt.
Partnerhitelests nyilvnos kulcs fggvnyek felhasznlval
Tekintsk a kvetkezo, kihvs s vlaszvrs (challenge & response) tpus
partnerazonostsi protokollt, amelyben B kvnja A-t azonostani:
1: B ! A : R
2: A ! B : y = DA (R)
3: B :
R = EA (y)?
(5.32)
A protokoll biztonsgosnak tunik, hiszen A nem jtszhat vissza korbban felvett 2. lpsbeli zenetet, tovbb csak A kpes y elolltsra a titkos dekdol
kulcsnak hasznlatval. A protokoll teht jnak tunik, pedig nem felttlenl az,
s ez a vletlen elemre adott dekdolsi lpssel kapcsolatos:
Tegyk fel, hogy a leggyakoribb nyilvnos kulcs rejtjelezo algoritmust, az
RSA-t kvnjuk hasznlni. Tegyk fel tovbb, hogy C lehallgatott egy korbbi, A
szmra kldtt y = EA (x) = xe mod n rejtjelezett blokkot, ahol e az A nyilvnos
kulcsa az RSA-algoritmusnak megfeleloen. C az x zenetet szeretn megtudni,
amit kzvetlenl kiszmtani nem tud, hiszen x = yd mod n, s a d kitevo az A
titkos kulcsa.
C a kvetkezo ravasz mdon jr el. Vlaszt egy R vletlen termszetes szmot,
ahol R < n s (R; n) = 1, majd a kvetkezo elokszto szmtsokat vgzi el:
v = Re mod n
w = vy mod n
t =R
mod n
Ezutn C elkldi w-t A-nak alrsra. Itt kapcsoldunk vissza az (5.32) protokollhoz, ugyanis legyen az (5.32) protokollbeli vletlen elem w, amit C kld A-nak
kihvsknt az 1. lpsben. Az (5.32) protokoll 2. lpsben A egy dekdolsi
lpst hajt vgre, azaz visszakldi a B-t megszemlyesto tmadnak az
u = wd mod n
344
5. K RIPTOGRFIA
(5.33)
C nem tud A-tl egy ltala elolltott R2 blokkra dekdolst krni, mivel A
csak egy ltala mdostott R1 R2 blokkra alkalmazza a dekdol transzformcit. Msfelol C nem tudja A-t megszemlyesteni, mivel ehhez a friss R2 vletlen
blokkot kellene neki R1 vletlen blokkon keresztl gy manipullnia, hogy a 2. lpsben korbbi zenetek visszajtszsval csalhasson. Erre azonban nem kpes,
mivel az R1 blokkot is dekdolt formban kell kldenie.
Ezen mdosts utn C mr nem kpes megszemlyesteni A-t, mivel nem
tudja vgrehajtani az 2. lpst, illetve ha az a 2. lpsben egy deddols nlkl
egy vletlen elemet kld t B-nek, akkor nem tudja a 3. lpst elvgezni. Ha A
is azonostani kvnja B-t, akkor ugyanezen protokollt lejtsszk fordtott szereposztssal.
Elkerlheto a fenti tmads olyan mdon is, hogy rejtjelezsre s azonostsra
ms kulcskszletet hasznlunk.
Kulcskioszts
A konvencionlis kdolk kzs titkos kulcsot hasznlnak. A j kulcs valdi
vletlen binris vektor, amelyet nyilvn nem lehet szinkronban generlni. Teht
az azt generl fltol vdetten t kell juttatni a partnerhez. A vdelem jelenthet
fizikai vdelmet (pldul kulcsszllt hardverben kzben visszk t a kulcsot
a partnerhez), illetve tisztn algoritmikus vdelmet, amikor a kulcsot rejtjelezve
nyilvnos kommunikcis csatornn tovbbtjuk. Ezen szakaszban a tisztn algoritmikus mdszerekkel foglalkozunk. A konvencionlis kdolson alapul rejtjelezs ma is alapveto mdszer, miutn a nyilvnos kulcs, rejtjelezs cljra is
alkalmas algoritmusok kdolsi sebessge sok alkalmazsban nem elegendoen
nagy.
Kulcskioszts konvencionlis algoritmussal
A rendszer A; B; C; : : : felhasznli konvencionlis titkostssal kvnnak zene-
5.5. K RIPTOGRFIAI
345
PROTOKOLLOK
kzpont
2.
1.
3.
4.
5.
B
A ! Kp :
Kp ! A :
A!B:
B!A:
A!B:
IDA ; IDB ; R1
ET KA (R1 ; IDB ; DK ; ET KB (DK ; IDA ))
ET KB (DK ; IDA )
EDK (R2 )
EDK (R2 1)
(5.34)
346
5. K RIPTOGRFIA
dekdolni nem tudta, nem lesz kpes a 4. lpsbeli friss kihvs 5. lpsbeli
megvlaszolsra.
A 345. lpsek utn B azt tudja, hogy olyan fllel ll szemben, aki ismer
egy valamikor A-nak kldtt DK kapcsolatkulcsot. A protokoll nem gondoskodik arrl, hogy A meggyozodjn B azonossgrl, hiszen R2 vletlen blokk lvn,
az nem ellenorizheto, hogy a 4. lpsbeli rejtett zenet valban egy vletlen blokk
rejtjelezsvel llt elo. A protokoll htrnya mg, hogy megbzhat kzpont ltre tmaszkodik, ami nemcsak annak tbblet infrastrukturlis kiadst jelenti,
de annak a veszlyt is, hogy a kzpont zemkptelensge vagy sok krs miatti
leterheltsge az egsz rendszer zemkptelensghez vezet.
A protokoll leginkbb kifogsolt gyenge pontja az, hogy rgi, a C tmad ltal idokzben megismert DK kulcs felhasznlhat tmadsra. A tmadst C a protokoll 3. lpstol kezdi, s lthatan B szemben A felet sikeresen megszemlyestheti (vegyk szre, hogy az ET KB (DK ; IDA ) korbbi lehallgatott zenetet kompletten hasznlhatja fel). Ezen tmadssal szemben megerostheto a protokoll,
ha a kzpont ET KB (DK ; IDA ) helyett egy idopecsttel elltott ET KB (DK ; IDA ; T )
protokoll-elemet llt elo. Az idopecst azonban az zenetcsere gyakorisgoknak
megfelelo pontos rt ttelez fel, amely biztonsgos is abban az rtelemben, hogy
egy C tmad azt nem kpes lltani.
A rendszer zembe helyezse elott megfelelo vdelmi rendszablyok betartsa mellett kerlnek elhelyezsre a mester s terminlkulcsok. A kzpont mesterkulcsval kdolva tlagosan vdett trol kzegen (pl. diszk) trolhatja az egyes
terminlok kulcsait (EMK (T KA ); EMK (T KB ); : : :). A mester- s terminlkulcsokat
kulcs titkostsra, a kapcsolatkulcsot a nylt adatfolyam titkostsra hasznljk.
A legnagyobb vdettsget a mesterkulcs ignyli, viszonylag a legkisebbet a kapcsolatkulcs kapja, azaz a mesterkulcs helyezkedik el a kulcshierarchia tetejn. A
kapcsolatkulcsok kerlnek leggyakrabban felhasznlsra. A hierarchiban alsbb
szintu kulcs kompromittldsa felsobb szintre nem hat, fordtva viszont igen,
hiszen a terminlkulcs megszerzsvel dekdolhatjuk az oda rkezo kapcsolatkulcsot.
Az (5.34) protokoll vletlen elemeket hasznl a rgebben felvett protokollrszletek visszajtszsval trtno tmadsi ksrletek megakadlyozsra. Alkalmazhatnnk idopecsteket is vdeleml. Az (5.34) kulcscsere protokoll idopecsteket alkalmaz albbi vltozata a kulcscsere s azonosts kettos feladatot
kvnja megoldani. A javtott protokoll az albbi lpsekbol ll:
1:
2:
3:
4:
A ! Kp :
Kp ! A :
A!B:
B!A:
IDA ; IDB
ET KA (T ; L; DK ; IDB ); ET KB (T ; L; DK ; IDA )
EDK (T 0 ; IDA ); ET KB (T ; L; DK ; IDA )
EDK (T 0 + 1)
(5.35)
5.5. K RIPTOGRFIAI
347
PROTOKOLLOK
A!B:
B!A:
A!B:
B!A:
A; B :
IDA ; kA ; CA
p
IDB ; kB ; CB
EB (R1 )
EA (R2 )
k = F (R1 ; R2 )
(5.36)
348
5. K RIPTOGRFIA
(5.37)
Mivel a hatvnyozs kommutatv muvelet, ezrt a k = (gR2 )R1 = (gR1 )R2 kzs
kulcsban llapodhat meg a kt fl. Az tviteli csatornban hallgatz C tmad
nem kpes az R1 illetve R2 vletlen elemeket megllaptani, mivel a diszkrt logaritmuskpzs nehz feladat. A C tmad ugyanakkor kpes a tmad kzpen
aktv tmadsra. Az A fllel a fenti protokoll szerint megbeszl egy kA kulcsot, B
fllel egy kB kulcsot, majd sszekapcsolja o ket olyan mdon, hogy konvertlja a
rejtett zeneteket az egyik kulcsrl a msikra az zenet irnynak megfeleloen.
zenethitelests
Az zenethitelests feladata az, hogy a vteli oldalon detektlhatv tegyk
azon esemnyeket, amelyek sorn az tviteli ton az zenet valamilyen mdosulst szenvedett el. Az albbiakban a legfontosabb mdszerek kzl a
5.5. K RIPTOGRFIAI
349
PROTOKOLLOK
inicializl blokk
?
N bites
regiszter
zenet
blokkok
m bit
kivlasztsa
MAC
kulcs
1 );
i = 1; : : : ; r
350
5. K RIPTOGRFIA
5.5. K RIPTOGRFIAI
PROTOKOLLOK
351
konvencionlis rejtjelezsu zenetet azt lltva, hogy azt A kldte, akivel kzs
titkos kulcsuk volt. A brsg szmra ez nem bizonytk, hiszen B maga is elollthatta azt. Van azonban olyan mdszer, amivel detektlhatv tehetnk zenetmdost tmadst, s ugyanakkor egy harmadik fl fel is bizonytkul szolglhat.
A mdszer a digitlis alrst hasznlja, amelyre a kvetkezo pontban trnk viszsza.
zenethitelests titkos kulcs nlkl
Meglepo mdon, egyirny lenyomatkszto fggvny, azaz hash fggvny felhasznlsval titkos kulcs nlkl is oldhatunk meg zenethitelestsi feladatot.
Ekkor a titkos kulcsbl illetve a nylt zenetbol kpzett kriptogrfiai ellenorzoszszeg (MAC) helyett csak a nylt zenet hash fggvnyes lenyomatt hasznljuk
ellenorzo sszegknt. A kriptogrfiai hash fggvny lnyegben egy olyan egyirny lekpezs, amelynl nehz feladat azonos lenyomatra (hashkpre) vezeto
o skpeket tallni. Azaz ha X jelli a nylt zenetet,
X ; Hash(X )
kerl tkldsre A-tl B-hez, ahol Hash egy nyilvnossgra hozott fggvny. rthetetlennek tunik az llts, hiszen brki elollthat X 0 ; Hash(X 0 ) prt tetszoleges,
ltala vlasztott X 0 zenethez. Mgis hasznlhat lehet a mdszer a gyakorlatban,
ha ezen algoritmikus eszkzkn tl, A s B kztt telefonsszekttets is rendelkezsre ll. Ekkor ugyanis B felhvja A-t, akinek hangjt ismeri, azt kri, hogy az
elkldtt hash rtk elegendo szm hexadecimlis karaktert olvassa be a
telefonba.
Digitlis alrs
Mg az zenet- s partnerhitelests protokollok a kommunikci idotartamra
s a partnerek szmra nyjtanak hitelestsi lehetosget, addig a digitlis alrs
az zenetvlts utn s harmadik szemly szmra is nyjt hitelessgellenorzsi
lehetosget. A digitlis alrs protokollok a kvetkezo feladatot oldjk meg:
a) az alrs generlsa (az zenetet kldo vgzi)
b) az alrs ellenorzse (az zenetvevo ltal)
c) hitelessggel kapcsolatos vits krdsek harmadik szemly (pl. brsg)
elotti tisztzsa.
A c) pontban emltett vita trgya lehet: az alr szeretne letagadni egy korbban ltala kldtt zenetet, mert tartalma mr kedvezotlen szmra. Vd trgya
352
5. K RIPTOGRFIA
lehet az is, hogy a cmzett sajt cljainak megfeleloen mdostotta a kldtt zenetet.
A digitlis alrs utnozni kvnja a valdi kzjegy tulajdonsgait, nevezetesen:
a) legyen knnyen generlhat,
b) ne legyen egyik okmnyrl a msikra thelyezheto (hamisthat), azaz
csak a tulajdonosa generlhassa,
c) brki kpes legyen ellenorizni annak hitelessgt.
A digitlis alrsnak a fenti kzs tulajdonsgok mellett van egy igen fontos
sajtossga, mgpedig az, hogy nem az zenet anyagi hordozjhoz (pl. papr)
tartozik, hanem tartalmilag kapcsoldik az aktulis zenethez, azaz zenetfggo.
Nyilvnos kulcs titkost algoritmus felhasznlsval egyszeruen kszthetnk digitlis alrst. Tegyk fel, hogy A az x zenetet kvnja B-nek elkldeni
olyan mdon, hogy egyttal alrst is elhelyezze a rejtett zenetben. Ezt elrheti, ha a titkos kulcst alkalmazva egy dekdolsi lpst hajt vgre (tegyk fel
egyelore, hogy az x zenet hossza nem nagyobb, mint a dekdol transzformci
input mrete). Nyilvn
DA (x)
fggvnye mind az x zenetnek, mind pedig a titkos dekdol kulcsnak, teht csak
A kpes elolltani azt. Az zenetvevo B fl ismerve A nyilvnos kulcst kpes x
visszalltsra egy
x = EA (DA (x))
kdolsi lpssel. Abban az esetben, ha x egy B ltal is ismert formtummal (ltalnosabban redundancival) rendelkezo zenet, akkor DA (x) nmagban az alrt
zenet, s nem csak az alrs. Ugyanis csak A kpes olyan z, dekdol output mretu blokkot elolltani, amelyre EA (z) nem egy vletlenl vlasztott blokk lesz,
hanem olyan, amely megfelelo formtummal is rendelkezik. Ha azonban nem ttelezhetjk fel, hogy B formtum ellenorzst vgez (pl. a B oldali szoftver erre
nem kszlt fel), akkor egyszerubb, ha a DA (x)-et csak alrsnak tekintjk, amit
az x zenethez csatolva kldnk el, azaz ekkor
[x; DA (x)
az alrssal hitelestett zenet. B fl ekkor az EA (DA (x)) kdolsi lps eredmnyt veti ssze a nyltan is megrkezett x zenettel.
Ezzel teljestjk a kvetkezo alrssal szembeni elvrsokat:
5.5. K RIPTOGRFIAI
PROTOKOLLOK
353
lenyomatkszts,
idopecst alkalmazsa.
Clszeru a dokumentum mrettol fggetlenteni az alrs mrett, s egy alkalmas nyilvnos egyirny dimenziszukto fggvny (hash fggvny) felhasznlsval nem az eredeti dokumentumra, hanem annak lenyomatra adni az alrst. Ekkor az alrt zenet
[x; DA (Hash(x))
alak. Egy tmad x megfigyelsvel a hash fggvny nyilvnossga miatt ki
tudja szmolni Hash(x) rtkt. Sikeres tmadshoz azonban arra van szksge,
hogy egy olyan x0 zenetet talljon, amivel csal cljt elrheti, s ugyanakkor
Hash(x) = Hash(x0 ), mert ezesetben [x0 ; DA (Hash(x)) is hiteles zenet B szemben. Csakhogy egy elfogadhat hash fggvny garantlja, hogy gyakorlatilag nem
tallhatunk azonos hash rtkre vezeto x0 zenetet. A tmad feladatt mg csak
tovbb nehezti, hogy egy ilyen azonos hash rtkre vezeto zenetnek radsul
rtelmes, sot cljainak megfelelo csal tartalmnak kell lennie.
Idopecst az alrsban s a letagadsvdelem
Tegyk fel, hogy A alrsval hitelestetten elkldtt B-nek egy szerzodst, majd
egy ido mlva a krlmnyek szmra kedvezotlenn vlsa miatt szeretn,
ha letagadhatn az alrt szerzods elkldst. Elhreszteli, hogy mr elozoleg
kompromittldott a titkos kulcsa, ezrt nem vllal felelossget a nevben alrt
szerzodsrt.
354
5. K RIPTOGRFIA
U = SA (I ; SA (x))
VA (U )
W = SG (T ; I ; SA (x))
W = SG (T ; I ; SA (x))
VG (W )
VG (W ); I ; VA (SA (x))
(5.38)
5.5. K RIPTOGRFIAI
355
PROTOKOLLOK
(mod mKJ )
= (y
t )d = y d t d = x t d
s00 = s0 x
=t
(mod mKJ )
(mod mKJ )
356
5. K RIPTOGRFIA
Titok megosztsa
Mint lttuk, a titkost transzformcik mindegyike esetn szksges valamilyen titkos informci, a titkos kulcs, amelyet mr nem vd jabb titkost transzformci. Ehhez ugyanis jra valamilyen titkos informci kellene s..t.. gy ezt a
titkos informcit msfajta vdelemre kell bzni. Lehetesges pl. valamilyen fizikai vdelem al helyezs (memorizls, felnyits-biztos dobozba helyezs, stb.).
Egy msik mdszer gy igyekszik feldarabolni a titkos informcit N szemly
kztt, hogy abbl tetszolegesen vlasztott K szemly egyttesen rekonstrulni
tudja a titkot, de K-nl kevesebb szemly sohasem legyen erre kpes, ahol K < N.
Ez a megolds nyilvn rekonstrulhatv tenn a titkot mg akkor is, ha annak
legfeljebb N K darabja megsemmislne.
Kzenfekvo lenne a binrisan brzolt titok valahny, mondjuk T szeletnek
sztosztsa. Ez azonban nem helyes megolds. Ha ugyanis a szeletek szmval
egyezo a szemlyek szma (N = T ), akkor egy rsz megsemmislse is a titok
elvesztshez vezethet, msrszt az sszes szemly szksges a rekonstrukcihoz. Ha viszont tbb szemlynek is adjuk ugyanazt a szeletet (N > T ), akkor
nem vlaszthatunk tetszoleges K = T szemlyt a rekonstrukcihoz. Tovbb, jelentos informcival rendelkezik T -hez kzeli szm szemly egyttese, hiszen
kzvetlenl a titkos binris informci rszeit kaptk meg.
Egy kicsit javthatunk a helyzeten a kvetkezokppen. Cmezzk meg a lehetsges titkok S halmaznak elemeit a 0; 1; : : : ; q 1 szmokkal. Vlasszunk N 1
alkalommal vletlenszeruen egy-egy elemet a f0; 1; 2; : : : ; q 1g halmazbl, elolltva r1 ; r2 ; : : : ; rN 1 teljesen fggetlen, egyenletes eloszls valsznusgi vltozt. Jellje s 2 S az aktulis titkot, s az N szemlynek sztosztand N szm
informci legyen r1 ; r2 ; : : : ; rN 1 ; rN , ahol
rN
=s
(r 1 + r 2 + : : : + r N 1 )
mod q:
5.5. K RIPTOGRFIAI
rK
357
PROTOKOLLOK
1)
vektort tekintsk az RS-kddal kdoland zenetnek, azaz ezt egy G, GF(q) feletti
K N dimenzis genertormtrixszal lekpezzk egy
c = (c0 ; c1 ; : : : ; cN
1)
kdszba a
c = rG
lineris transzformcival. A c kdsz elemeit osszuk szt az N szemly kztt.
A G genertormtrixot vlaszthatjuk a kvetkezokppen:
0
1
B1
B
G = B ..
.
1 K
1
2
..
2(K
1)
..
.
(N
C
C
C
A
1)(K 1)
1x
K 1
i = 0; 1; : : : ; N
1 i K:
358
5. K RIPTOGRFIA
5.6. Feladatok
5.1. feladat. Egy egyszeru lineris rejtjelezot konstrulunk: y = ax + b mod r
lineris transzformcival rejtjeleznk, ahol 0 < a; b < s, a s b a kulcs rszei, x
a nylt szveg, y a rejtett szveg, tovbb r az bc mrete.
a) Adja meg a kulcstr mrett, ha s = 26!
b) Tmadknt a kulcsot szeretnnk megfejteni. Nagyon egyszeru strukturj
a rejtjelezo. A forrs jl tmrtett, vletlen forrsknt modellezheto. Rejtett szvegu tmadsban is gondolkodhatunk?
c) Milyen informcit kellene birtokolnunk ilyen forrs esetn a sikeres tmadshoz?
d) Mit mondhatunk azon esetben, ha a forrs rott szveg, s imerjk a karaktergyakorisgot?
5.2. feladat. Az y = ax + b mod N betunknti lineris rejtjelezs transzformcit
tekintjk, ahol N az bc mrete.
a) Hny ilyen transzformci van, ha N = 30?
b) x a transzformci fixpontja, ha y = x teljesl. Legyen a 6= 1. Mutassuk
meg, hogy ha N prmszm, akkor pontosan egy ilyen fixpont van!
c) Adjunk meg olyan N rtket, amelyre nincs fixpontja a transzformcinak!
5.3. feladat. Tegyk fel, hogy y = Ax + b lineris transzformcival rejtjeleznk,
ahol A n n-es binris mtrix, x; y; b n hossz binris vektorok, tovbb A s b a
kulcs rszei, x a nylt szveg, y a rejtett szveg. Az algoritmikus tmad clja a
kulcselemek meghatrozsa.
a) Vgrehajthat-e a tmads, ha a tmad
y1 ; y2 ; : : : rejtett szvegeket
(x1 ; y1 ); (x2 ; y2 ); : : :
5.6. F ELADATOK
359
360
5. K RIPTOGRFIA
5.11. feladat. RSA-algoritmus szmra trtno prmvlasztsnl egyik kvetelmny, hogy a kt prm bitmrete legyen lehetoleg kzel azonos. Pldul 1024
bites modulus esetn 512 bites prmeket vlasztunk. Ugyanakkor, ha a p q differencia nem elegendoen nagy, akkor faktorizlhatv vlhat a modulus. Adjon
egy faktorizlsi algoritmus!
(Segtsg: Tekintsk a kvetkezo felbontst: m = pq = (t + s)(t s) = t 2 s2
alakbl, ahol p = t + s; q = t s, lthat, hogy s = ( p q)=2 viszonylag kicsi
p
volta miatt t m.)
5.12. feladat. Arra, hogy az RSA-algoritmus fejtsnek nehzsge a modulus
faktorizlsval ekvivalens feladat, csak eros sejts ltezik. Ugyanakkor, ha rgztett, (pl. e = 2) kdol kitevot hasznlunk, akkor mr ugyanez a sejts igazolhat.
Igazoljuk teht, hogy ekkor a megfigyelt rejtett szveg alapjn a nylt pr megfejtsnek bonyolultsga a modulus faktorizcijval ekivivalens feladat.
(Segtsg: Tekintsk az x2 = c mod m; 0 < c < m; m = pq egyenletet, ahol p s
q prmszmok. Ha van megoldsa az egyenletnek, akkor ngy megoldsa van, s
a megoldsok fb1 ; m b1 ; b2 ; m b2 g; 0 < b1 ; b2 < n. p s q ismeretben a ngy
megoldst az x2 = c mod p; x2 = c mod q egyenletpr megoldsait felhasznlva
a knai maradkttel segtsgvel kaphatjuk meg. Ha viszont ezen faktorok nem
ismertek, az egyenlet megoldsa nehz.)
5.13. feladat. Szeretnnk megtudni A felhasznl m = pq RSA-modulusa titkos
faktorjait. Felelotlenl jr-e el A, ha barti krsnkre egy b szmnak megmondja egy mod m szerinti ngyzetgykt.
5.14. feladat. Kriptoanalistaknt tmadjon egy RSA-rejtjelezot, amelyrol a nyilvnos m = 4003997 modulus, valamint az e = 379 kulcs mellett megtudja a (m) =
3999996 rtket is.
a) Szmtsa ki a d dekdol kulcsot!
b) Adja meg az m = p1 p2 prmfaktorait!
5.15. feladat. Az RSA-algoritmus az m = ( p 1)(q 1) modulust alkalmazza a
kulcsgenerlsnl. Hasznlhatnnk-e az m0 = lkkt( p 1; q 1) modulust e helyett?
5.16. feladat. Jelszavas vdelem sorn a salting azt jelenti, hogy r szm vletlen
bittel meghosszabbtjk a jelszavakat a jelszverifikci sorn, s aztn alkalmazzk az egyirny lekpezst, majd a lekpezs eredmnynek a trolt jelsztbla
elemmel trtno egybevetst. A salt bitfzr nyltan kerl trolsra a jelsztblban, s a klnbzo felhasznlk sajt salt bitekkel rendelkeznek. Felmerl a
5.6. F ELADATOK
361
krds, hogy mi a salt bitek jelentosge, ha azok nyltan troldnak, azaz a jelsztbla sztras tmadja is olvashatja azokat?
5.17. feladat. Tegyk fel, hogy vletlenszeruen vlasztunk a jelsztr elemei kzl jelszavakat. Legyen m a jelsz hossza, c a karakterbc mrete, t a verifikcis lekpezs iterciinak szma, tovbb r jellje egy iterci futsi idejt.
Legfeljebb 7 hossz jelszt szeretnk hasznlni. A karakterbc vonatkozsban
hrom lehetosgben gondolkodunk:
c = 26 mretu kisbetus
c = 36 mretu kisbetus, alfanumerikus
c = 62 mretu kis- s nagybetus, alfanumerikus.
Legyen t = 25 az itercik szma, tovbb r = 4 mikrosec. Adja meg azon vlasztsi lehetosgeket, amely mellett a jelsztr kimerto vgigkeressn alapul
tmads szmtsi ideje legalbb 100 nap.
Ha a hosszmegktst nem kellene figyelembe venni, s a jelszavakat a sztr kt
tetszoleges szavnak egyms mell illesztsvel kpeznnk, egy 250000 tteles
sztrmret elegendo lenne-e?
5.18. feladat. A hromlpses, elozetes kulcscsert nem ignylo rejtett zenettovbbt kriptogrfiai protokollban a kulcsbitek zenetbitenknti mod 2 hozzadsval rejtjeleznek a felek. Helyesen cselekszenek-e?
5.19. feladat. Tegyk fel, hogy egy u rjrmu (A) leszllshoz kszlodik egy tvoli bolyg u rllomsn (B), s ehhez eloszr azonostania kell magt. A felttelek:
5.20. feladat. A klaviatra 26 kisbetus karakterbol, a 10 szmkarakterbol, valamint az reshely (space) karakterbol ll 37 betus bcbol kpeznk titkos, 7
karakterbol ll jelszt. 3 szemly kztt kvnjuk sztosztani a titkot gy, hogy
legalbb 2 szemly jelenlte esetn lehessen csak azt rekonstrulni. Legyen a titok
4qt76ff. Adjon meg egy megosztsi s rekonstrukcis algoritmust, s ossza szt az
adott titkot!
362
5. K RIPTOGRFIA
1)
Mr )
ahol az Ek : f0; 1gn ! f0; 1gn egy titkos kulcs rejtjelezo transzformci.
Mutassa meg, hogy a fenti definci szerinti MAC hashing nem teljesti az egyirnysg kvetelmnyt egy k kulcsot ismero fl szmra!
(Segtsg: Mutassa meg, hogy n-bites zenetblokkok tetszoleges vges sorozatt
a k kulcs ismeretben kiegszthetjk gy egy tovbbi blokkal, hogy elore
megadott MAC lljon elo!)
5.25. feladat. Egy MAC vlasztott szvegu tmads ellen vdett, ha egy tmad
rendelkezsre ll MACk (mi ) az ltala vlasztott m1 ; m2 ; : : : ; m j zenetekre, mgsem kpes ennek alapjn kiszmtani egy MACk (m) lenyomatot egy j m 6= mi
zenetre. Az 5.24. feladatbeli definci szerinti MAC-t tekintsk. Mutassa meg,
hogy az MAC nem vdett vlasztott szvegu tmads ellen!
(Segtsg: Mutassa meg, hogy kt n bites azaz 1 blokk mretu zenetbol
konstrulhat megfelelo 2n bites zenet!)
Mutassa meg tovbb, hogy az MAC nem vdett vlasztott szvegu tmads ellen
akkor sem, ha gy kvnjuk megerosteni, hogy az MAC szmts elott kiegsztjk az zenetet egy olyan blokkal, amely az zenet hosszt tartalmazza! A
363
5.6. F ELADATOK
tmad kpessgrol azt teszzk fel, hogy zeneteire MAC lenyomatot kaphat,
de a k kulcsot nem ismeri.
5.26. feladat. Tekintsk az albbi integritsvdelmi kdolst, ahol a rejtjelezs
s MAC kombincijt hasznljuk:
Ek (mkMACk0 (m)):
Tovbb Ek (x) CBC md rejtjelezs, akb az a s b binris vektorok egybefuzse.
A rejtjelezs, illetve az MAC szmts tekintetben, az egyik funkcira [IV; k
mg a msikra [IV 0 ; k0 [inicializl vektor, kulcs pr kerl alkalmazsra. Vane veszlye annak, ha IV = IV 0 ; k = k0 egyszerusto vlasztssal lnk? Mi a
tanulsg?
5.27. feladat. Egy vletlen bitfolyam genertor kimenetn ugyan megmaradt az
egyms utni bitek statisztikai fggetlensge, de 21 -nl nagyobb, p = 0:75 valsznusggel kapunk 0-t a kimeneten. Milyen mrtkben korriglhatjuk a bitfolyam
statisztikt azzal, hogy 8 bites szeletekre bontjuk a folyamot s az egyes szeletek
8 bitjbol modulo 2 sszeadssal egy-egy bitet generlunk?
5.28. feladat. Klfldn dolgozunk, s szeretnnk rejtetten prbeszdet folytatni
az otthoni bartunkkal (pldul szmtgpes modemkapcsolat tjn), azonban
tilos rejtjelezni a hatron tlpo zeneteket. Hitelesto protokollok hasznlata
ugyanakkor nem tiltott (amikor is a nylt szveg nylt marad).
a) Van megolds?
b) Ha megtallta, adjon egy pldt egy rvid prbeszd vdelmre!
5.29. feladat. Szimmetrikus kulcs rejtjelezo transzformcin alapul egyirny
transzformci, amelyet PIN kdolsra hasznlnak, tipikusan a kvetkezo ltalnos alak:
AP = f (KP; PIN ; ID)
AP: nyilvnos hitelesto paramter (authentication parameter),
KP: titkos kulcs paramter (key parameter),
PIN: titkos szemly-azonostszm (personal identification number),
ID: nyilvnos azonost (identification data),
f egy egyirny fggvny. A legismertebb ilyen fggvny az Ek () DES transzformcin alapul:
AP = EKPPIN (ID)
364
5. K RIPTOGRFIA
Irodalomjegyzk
[1] CDMA Digital Common Air Interface Standard, Revision 1.0 released
Oct.1., 1990.
[2] All about the Compact Disc System, Compact Disc Digital Audio. Sony,
1981.
[3] Specification of the D2-MAC/PACKET System EBU/SPB 352/B. 1985.
[4] Ash, R.B. Information Theory. Interscience Publishers, 1965.
[5] Bahl, L.R., Cocke, J., Jelinek, F., Raviv, J. Optimal decoding of linear codes for minimizing symbol error rate. IEEE Transactions on Information
Theory, IT-20:248287, 1974.
[6] Berlekamp, E.R. Algebraic Coding Theory. McGraw Hill, 1968.
[7] Berlekamp, E.R. The technology of error-correcting codes. Proceedings of
the IEEE, 68, May, 1980.
[8] Berlekamp, E.R., Peile, R.E., Pope, S.P. The application of error control to
communications. IEEE Communications Magazine, 25, Apr, 1987.
[9] Berrou, C., Glavieux, A., Thitimajshima, P. Near Shannon limit errorcorrecting coding and decoding: Turbo-codes(1). Proceedings of the IEEE
International Conference on Communication, pages 10641070, 1993.
[10] Blahut, R.E. Theory and Practice of Error Control Codes. Addison-Wesley,
1983.
[11] Csibi S. (szerk.) Informci kzlse s feldolgozsa. Tanknyvkiad, Budapest, 1986.
[12] Csiszr I., Fritz J. Informcielmlet. ELTE TTK jegyzet, Budapest, 1986.
366
I RODALOMJEGYZK
[13] Csiszr I., Krner J. Information Theory: Coding Theorems for Discrete
Memoryless Systems. Akadmiai Kiad, Budapest, 1981.
[14] Diffie, W. Hellman, M.E. Privacy and authentication: An introduction to
cryptography. Proceedings of the IEEE, 67:397427, Mar, 1979.
[15] Diffie, W. Hellman, M.E. New directions in cryptography. IEEE Transactions on Information Theory, 22:644654, Nov, 1976.
[16] Doi, T. Error Correction for Digital Audio Recordings, No. 1991 AES 73.
Convention. Eindhoven, 1983.
[17] Ferenczy P. Video- s hangrendszerek. Muszaki Knyvkiad, Budapest,
1986.
[18] Gallager, R.G. Information Theory and Reliable Communication. Wiley,
1968.
[19] Gher K. (szerk.) Hradstechnika. Muszaki Knyvkiad, Budapest, 1993.
[20] Gibson, J.D., Berger, T., Lookabaugh, T., Lindbergh, D., Baker, R.L. Digital Compression for Multimedia (Principles and Standards). Morgan Kaufmann Publishers, San Francisco, 1998.
[21] Gordos G., Takcs Gy. Digitlis beszdfeldolgozs. Muszaki Knyvkiad,
Budapest, 1983.
[22] Gyrfi L., Vajda I. A hibajavt kdols s a nyilvnos kulcs titkosts
elemei. Muegyetemi Kiad, Budapest, 1990.
[23] Hanzo, L., Steele, R. Mobile Radio Communications. Wiley, 1999.
[24] Ishida, Y., Ishida, M., Nakagawa, K., Osuga, Y., Yanabe, J. On the development of a car use rotary-head digital audio tape recorder, No. 2318 AES 80.
Convention. Montreux, 1986.
[25] Linder T., Lugosi G. Bevezets az informcielmletbe. Muegyetemi Kiad,
Budapest, 1993.
[26] MacWilliams, F.J., Sloane, N.J.A. The Theory of Error-Correcting Codes.
North-Holland, 1977.
[27] Massey, J.L. Applied Digital Information Theory.
Zrich, 1984.
I RODALOMJEGYZK
367
Journal of
[39] Rivest, R.L., Shamir, A., Adleman, L. A method for obtaining digital signatures and public key cryptosystems. Communications of the ACM, 21:120
126, Feb, 1978.
[40] Rueppel, R.A. Analysis and Design of Stream Ciphers. Springer-Verlag
Berlin, Heidelberg, 1986.
[41] Sarwate, D.V., Pursley, M.B. Crosscorrelation properties of pseudorandom
and related sequences. Proceedings of the IEEE, 68, May, 1978.
368
I RODALOMJEGYZK
[42] Sayood, K. Introduction to Data Compression. Morgan Kaufmann Publishers, San Francisco, 1996.
[43] Shannon, C.E. A mathematical theory of communication.
Technical Journal, 1948.
Bell System
Bell System
[45] Vajda I. Hibajavt kdols s muszaki alkalmazsai. BME Mrnki Tovbbkpzo Intzet, Budapest, 1982.
[46] Viterbi, A.J. CDMA Principles of Spread Spectrum Communication.
AddisonWesley, 1995.
Trgymutat
a posteriori valsznusg, 151
a priori valsznusg, 151
adaptv kd, 48
ADPCM, 103, 110
aritmetikai kdols, 28, 128, 131
ARJ , 50
ARQ, 218
tlagos kdszhossz, 14
betunknti, 20
tviteli fggvny, 89
Bayes-dnts, 152, 165
bzis, 185
BCH-kd, 193, 226
becsls, 150
belso kd, 235
beszdtmrts, 110
betunknti husgkritrium, 140
betunknti torzts, 139
Bhattacharyya
felso becsls, 294
tvolsg, 268
binris entrpiafggvny, 42, 58
binris szimmetrikus csatorna,
! BSC
binris trlses csatorna, 162
binris vletlen tkulcsols,
! one-time-pad
binris z-csatorna, 162
bitallokci, 96
blokkhossz, 251
blokk-kd, 19, 178
370
Dirichlet-partci, 86
diszkrt korrelcis detektor, 159
diszkrt memriamentes csatorna,
! DMC
DMC, 48, 161, 263, 265
dnts, 150
dntsi tartomny, 151
DPCM, 102
DST, 97
DWHT, 97
ECB, 350
egyrtelmu dekdolhatsg, 11, 13,
17
egyirny fggvny, 336
egyszeru hibzs, 178, 182
elem rendje, 195
entrpia, 13, 30
feltteles, 32
-hibval dekdolhatsg, 63
euklidszi algoritmus, 329
euklidszi oszts polinomokra, 200
fa-kd, 251
Fano-egyenlotlensg, 167
fax-szabvnyok, 42
Fermat-tan, 337
Fermat-ttel, 331
Fleischer-ttel, 80
folytonos tnus trols, 125
formns beszdkdol, 112
forrsbc, 10, 178
forrsentrpia, 36
forrskdolsi ttel, 145
megfordtsa, 144
Fourier-transzformci, 88, 92, 111,
116, 124, 244
fopolinom, 211
FSK, 158, 284
futamhossz kdols, 42, 130
TRGYMUTAT
G.711, 110
G.721, 110
genertormtrix, 185, 197
genertorpolinom, 214
GIF , 53, 125
globlis kockzat, 150
Golay-kd, 193, 221
GSM, 114, 282
Hamming-kd, 227
binris, 191
nembinris, 197
Hamming-korlt, 183
Hamming-korrelci, 284
Hamming-tvolsg, 154, 178, 263
Hamming-torzts, 139, 145
hibacsom, 219, 231
hibahelyloktor, 238
hibahelypolinom, 239
hibajavts, 182
hibajelzs, 181
hibavalsznusg, 151
hibavektor, 189
hitelessg, 322
Hlder-egyenlotlensg, 84
Huffman-kd, 23, 43, 57
adaptv, 25
indexelt trols, 125
informciforrs, 35
emlkezetnlkli, 35
memriamentes, 35
stacionrius, 35
informcis divergencia, 56
informcistabilits, 64
irreducbilis polinom, 208
javthat hibaminta, 190
Jayant-kvantl, 103
jelsebessg,
! kdolsi sebessg
TRGYMUTAT
Jensen-egyenlotlensg, 14
JPEG , 97, 127
kaszkd kd, 235
katasztroflis kd, 256
knyszerhossz, 251
knai maradkttel, 235, 339, 360
kd, 10, 178
kdbc, 10, 178
kdtfuzs, 207, 230, 291
kdols, 164, 178
kdolsi nyeresg, 260
kdolsi sebessg, 68, 140, 166, 229,
251
kdosztsos tbbszrs hozzfrs,
! CDMA
kdsebessg,
! kdolsi sebessg
kdsz, 10, 178
kdszkeret, 251
kdszpolinom, 213
kdtvolsg, 181
konvolcis kd, 252, 291
llapottmenet grf, 254
binris fa reprezentci, 253
rekurzv, 269
szuperortogonlis, 292
trellis reprezentci, 254
konvolcis ttel, 245
kovarianciafggvny, 88, 108, 159
klcsns informci, 137, 323
kltsgfggvny, 150
Kraft-egyenlotlensg, 12, 55
kriptoanalzis, 317
kriptogrfia, 317
kriptogrfiai ellenorzo sszeg,
! MAC
kriptogrfiai protokoll, 322, 340
digitlis alrs, 351
kulcskioszts, 344
371
konvencionlis, 344
nyilvnos kulcs, 347
partnerhitelests
jelszavas, 341
kihvs s vlaszvrs, 343
titok megosztsa, 356
zenethitelests, 348
digitlis alrs, 350
hash fggvny, 351
MAC, 348
rejtjelezs, 349
krominancia, 124
kulcs, 318
Kullback-Leibler-tvolsg, 56
klnbsgi kdols, 99
klso kd, 235
kvantl, 70
egyenletes, 73
entrpija, 75
kompanderes, 81, 110
torztsa, 73
vektorkvantl, 85, 95, 111,
125, 140
lncszably, 33
legkzelebbi szomszd felttel, 79
LempelZiv-kdok, 48
lptetoregiszteres kdol, 251
LFSR, 223, 248
LindeBuzoGray-algoritmus, 86
lineris becsls, 106
lineris fggetlensg, 184
lineris kd, 184, 197
lineris prediktv kdols, 112
lineris prediktorfggvny, 107
lineris szurs, 89
LloydMax-algoritmus, 78
LloydMax-felttel, 79
LPC, 112
luminancia, 124
372
LZ77, 49
LZ78, 50, 59
LZW, 52, 125
MAC, 348
Markov-forrs, 45
Markov-lnc, 39
homogn, 39
stacionrius, 39
maximlis tvolsg kd,
! MDS kd
maximum-likelihood
dekdols, 154, 176, 263
dnts, 153
McMillan-egyenlotlensg, 11
MDC, 350
MDS kd, 183
megszemlyests, 321
metamer sznek, 120
minimlis sly, 188
mintavtelezs, 90
mintavteli ido, 90
mintavteli ttel, 91
modulo p aritmetika, 194
MPE, 114
MPEG , 97, 116, 131
ngyzetes torzts, 70, 85, 139
nylt zenet, 318
one-time-pad, 290, 320, 324, 325
PAM, 157
paritsellenorzo mtrix, 186
paritsellenorzo polinom, 216
paritskd
egydimenzis, 173, 181, 192,
193, 236
ktdimenzis, 234
paritsmtrix, 186, 197
TRGYMUTAT
paritsszegmens, 186
PCM, 110
perfekt kd, 184
PetersonGorensteinZierlerdekdol, 241
PKZIP , 50
polinom, 199
prediktv kdols, 99
prediktor, 102
prefix kd, 11, 13
primitv elem, 196
PSK, 157, 259
RD fggvny, 141
redundancia, 185
ReedSolomon-kd, 203, 217, 227,
237, 243, 356
Reiger-optimlis, 232
rszsvos kdols, 97
rvidts, 219, 236
RPE, 114
RSA-algoritmus, 332, 343
salting, 360
svszuro, 89
ShannonFano-kd, 18, 57
shiftregiszter, 222
Singleton-korlt, 182
spektrlis surusgfggvny, 88
spektrum, 244
spektrumpolinom, 245
standard elrendezsi tblzat, 189
sly, 188
slyfggvny, 89
slypont felttel, 79
szabad tvolsg, 258
szindrma, 189
szindrma dekdols, 189
szinuszos beszdkdol, 113
szisztematikus generls, 215
TRGYMUTAT
szisztematikus kd, 186
szorzatkd, 233
tblzatos dekdols, 179, 190
tmads
aktv, 321
ismert nylt szvegu, 321
passzv, 320
rejtett szvegu, 321
vlaszthat nylt szvegu, 321
vlaszthat szvegu, 321
tmad, 320
tmad kzpen tmads, 347
tvolsgprofil, 258
telefon-minosgu hang, 110
teletext, 192
test, 193
testvrpr tulajdonsg, 25
titkosts, 322
konvencionlis, 320
nyilvnos kulcs, 323, 326
rejtett kulcs, 320
titkostsi algoritmus, 322
titkostott zenet, 318
titkossg
felttel nlkli, 325, 336
gyakorlati, 325, 336
Toeplitz-lemma, 37
torztsi mrtk, 139
tkletes titkosts, 323
trlses hiba, 182
transzformcis kdols, 95, 116, 247
trellis-kd, 252
tllo, 264
UMTS, 294
Ungerboeck-kd, 259
zenet, 10, 178
zenetkeret, 251
zenetmdosts, 321
373
zenetszegmens, 186
V.32bis, 263
V.42bis, 54
vltoz szhosszsg kdols, 10
vges test, 194
Vernam-titkost,
! one-time-pad
Viterbi-algoritmus, 264
Voronoi-tartomny, 86
WalshHadamardkd, 289
transzformci, 97
WienerHopf-egyenletrendszer, 108