Giáo trình: Lý thuyết thông tin.
- Biết tính cht cơ bn ca phương pháp kim tra chn l,
- Hiu và vn dng tt phương pháp sinh mã kim tra chn l,
- Hiu và vn dng tt Định lý quan h gia độ dài mã n, s bit kim tra m và s li t sa
e,
- Vn dng cho các bài hc tiếp theo.
B mã kim tra chn l
B mã kim tra chn l là b mã gm s t mã, trong đó mi t mã có dng sau:
w’=r1r2r3…rm rm+1rm+2…rm+k (vi n = m+k).
m bit kim tra k bit thông tin
Ghi chú: trong mt s trường hp sinh mã theo phương pháp kim tra chn l, th t các bit kim
tra và các bit thông tin có th xen k nhau (theo mt th t nào đó, chng hn như
Hamming,…) hay cũng có th theo mt th t khác (theo quy ước khác). đây, ta chn th t
các bit kim tra chn l và các bit thông tin như trên để d tính toán nhưng vn mt tính tng quát
hóa.
Trong đó: w’ viết theo dong là chuyn v ca w (w được viết theo ct)
+ ri: là bit th i ca t mã ( 1 i n).
+ n: độ dài ca t mã hay s bit ca t mã chn l.
+ m: s bit kim tra.
+ k = n-m: s bit thông tin s=2k (vì vi k bit thông tin thì ta ch có th biu diên ti đa
2k trng thái thông tin k bit).
+ Đon kim tra: gm m bit dùng để kim tra mã sai.
+ Đon thông tin: gm k bit thông tin.
Mi đon mã thông tin có duy nht mt đon mã kim tra và được xác định bi h phương trình
tuyến tính nh phân sau:
0
...
0
0
...
............
...
...
2211
2222121
1212111
=
=
=
+++
+++
+++
nnnnn
nn
nn
rarara
rarara
rarara
Gi A=||aij|| =Am x n , aij {0,1}, i= m,1 , j= n,1 . Ma trn A được gi là ma trn kim tra chn l
hng là m (hay Rank(A) = m).
Các phép toán trong Modulo 2 (+,-):
0 + 1 = 1 + 0 = 1; 0 – 1 = 1 – 0 = 1;
1 + 1 = 1 – 1 = 0;
Phương pháp kim tra chn l
Gi w’=r1r2…rn là t mã truyn (hay dãy n bit truyn) và v’=r1r2…rn là dãy n bit nhn được.
Qui ước: v’, w’ (ln lượt là chuyn v ca v và w) được viết theo dòng. Còn v, w được viết theo
ct.
Nếu A.v = 0 thì v = w, ta gi v là chn (trường hp nhn đúng)
Biên son: TS. L ê Quy ết Thng, ThS. Phan Tn Tài & Ks. Dương Văn Hiếu. 65
Giáo trình: Lý thuyết thông tin.
Nếu A.v 0 thì v w, ta gi v là l (trường hp nhn sai).
Ta gi z = v-w là b li gia v và w. Nghĩa là ti các v trí z = {0} thì bit nhn được tương ng là
bit đúng và ti các v trí z = {1} thì bit nhn được tương ng là bit sai (hay bit li).
Ta gi C = A.v là b sa li (hay b điu chnh li).
Ta có C = A.z = A.(v-w) = A.v-A.w = A.v C = A.v = A.z
Tính cht ca b sa li: dãy n bit nhn được v và b li tương ng có cùng b điu chnh.
Phương pháp sinh mã kim tra chn l
Gi s: cho trước ma trn kim tra chn l A vi Rank(A) = m.
Tìm b mã chn l W={w1, w2, w3,…,ws}
Bước 0: Xác định các giá tr n, m, k, s
Độ dài ca t mã n= s ct ca ma trn A.
S bit kim tra m= s dòng ca ma trn A.
S bit thông tin: k = n-m.
S t mã s=2k ca b mã.
Bước i: Tìm các t mã th i (1 i s):
Gi kpi là trin khai nh phân k bit ca s i
T mã cn tìm là: w’i=r1r2..rmkpi
Gii h phương trình A.wi=0 để tìm m bit kim tra ng vi k bit thông tin (kpi) đã biết
=> t mã wi
Ví d sinh mã kim tra chn l
Xây dng b mã kim tra chn l đưc sinh t ma trn kim tra A như sau:
A= Rank(A) = 3
101101
101110
011001
Bước 0:
n=6 (= s dòng ca ma trn A)
m=3 (= s ct ca ma trn A)
S bit thông tin k = n – m = 3 => S t mã s=2k=8 t mã.
Biên son: TS. L ê Quy ết Thng, ThS. Phan Tn Tài & Ks. Dương Văn Hiếu. 66
Giáo trình: Lý thuyết thông tin.
Bước i: Tìm t mã th i (1 i s):
w’1=r1r2r3000 (000 là trin khai nh phân k=3 bits ca s i=0)
w’1=r1r2r3001 (001 là trin khai nh phân k=3 bits ca s i=1)
w’2=r1r2r3010 (010 là trin khai nh phân k=3 bits ca s i=2)
w’3=r1r2r3011 (011 là trin khai nh phân k=3 bits ca s i=3)
w’4=r1r2r3100 (100 là trin khai nh phân k=3 bits ca s i=4)
w’5=r1r2r3101 (101 là trin khai nh phân k=3 bits ca s i=5)
w’6=r1r2r3110 (110 là trin khai nh phân k=3 bits ca s i=6)
w’7=r1r2r3111 (111 là trin khai nh phân k=3 bits ca s i=7)
Gii h phương trình A.w1=0
= => => w’
101101
101110
011001
1
0
0
3
2
1
r
r
r
0
0
0
=
=
=
=>
=+
=+
=
1
0
0
1
1
0
3
2
1
31
32
1
r
r
r
rr
rr
r
1=001001
Gii h phương trình A.w2=0
101101
101110
011001
0
1
0
3
2
1
r
r
r
= => =>w’
0
0
0
=
=
=
=>
=+
=+
=
1
1
1
0
0
1
3
2
1
31
32
1
r
r
r
rr
rr
r
2=111010
Gii tương t cho các trường hp còn li ta có:
w’0=000000, w’3=110011, w’4=110100,
w’5=111101, w’6=001110, w’7=000111.
W={000000, 001001, 111010, 110011, 110100, 111101, 001110, 000111}
Định lý quan h gia độ dài mã n, s bit kim tra m và s li t sa e
Điu kin cn (Cn Hamming):
Điu kin cn để b mã chn lđộ dài n bit có th t sa được e bit li vi k bit thông tin và m
bit kim tra là:
=
e
i
i
n
mC
0
2
Điu kin đủ ( ĐK Vasharmov-Gilbert-Sacks):
Điu kin đủ để b mã kim tra chn lđộ dài n bit vi m bit kim tra chn l có th t sa
được e bit li là:
=
>12
0
1
2
e
i
i
n
mC
Ghi chú: Cni = n!/(i!*(n-i)!)
Biên son: TS. L ê Quy ết Thng, ThS. Phan Tn Tài & Ks. Dương Văn Hiếu. 67
Giáo trình: Lý thuy
ế
t thông tin.
Ví d tìm m nh nht t n và e
Gi s biết trước n=7 và e=1. Tìm s bit kim tra ti thiu cn thiết ca b mã chn l.
Theo định lý điu kin cn (Cn Hamming):
Ta có:
=
e
i
i
n
mC
0
2
(*)
=
=
1
0
7
2
e
i
im C
m = 1 (*) sai.
m = 2 (*) sai.
m 3 (*) đúng.
Vy s bit kim tra ti thiu cn thiết là m = 3.
Ví d tìm e ln nht t m và n
Gi s cho trước m=3, k=2. Tìm s bit li ln nht có th t sa e?
Theo định lý điu kin đủ (ĐK Vassharmov-Gilbert-Sacks):
=
12
0
1
2
e
i
i
n
mC (*)
=
12
0
15
3
2
e
i
i
C
e =1 (*) đúng.
e > 1 (*) sai.
Vy s bit li ln nht có th t sa là e = 1.
Bài tp
1. Xây dng b mã kim tra chn l được sinh t ma trn kim tra A như sau:
=
101101
101110
111001
A
2. Tìm b mã kim tra chn l được sinh t ma trn kim tra A như sau:
=
101101
101010
111001
A
¾ Gi ý gii bài tp 1 & 2: da vào phương pháp sinh mã kim tra chn l và tham kho
d sinh mã kim tra chn l.
3. Xét b mã kim tra chn l độ dài 15 bit có th t sa được 1 bit li trên đường truyn, hãy
cho biết s bit kim tra chn l ti thiu?
4. Xét b mã kim tra chn l độ dài 8 bit vi 4 bit kim tra chn l. Hãy cho biết s li t sa
ti đa ca b mã?
Gi ý gii bài tp 3 & 4: da vào đinh lý Điu kin cn (Cn Hamming) và Điu kin đủ
(ĐK Varshamov-Gilbert-Sacks).
Biên son: TS. L ê Quy ết Thng, ThS. Phan Tn Tài & Ks. Dương Văn Hiếu. 68
Giáo trình: Lý thuy
ế
t thông tin.
BÀI 5.4: NHÓM CNG TÍNH VÀ B T MÃ CHN L
Mc tiêu.
Sau khi hoàn tt bài hc này bn có th:
Hiu Khái nim nhóm cng tính,
Biết các tính cht ca b mã chn l,
Vn dng sinh ma trn kim tra chn l t b mã kim tra chn l.
Vn dng tt phương pháp sinh b mã kim tra chn l t các tđộc lp tuyến
tính ca b mã.
Khái nim nhóm cng tính.
Đặt vn đề:
Như chúng ta đã biết, phương pháp sinh mã kim tra chn l giúp ta sinh b mã kim tra chn l
vi s t mã tương ng là s=2k. Vi phương pháp này, ta phi xác định tng t mt (bng
cách gii h phương trình tuyến tính nh phân). Gi s: k=5 ta phi xác định s=25 =32 t mã hay
k=10 ta phi xác định s=210=1024 t mã,Điu này s mt nhiu thi gian nếu k càng ln. Vn
đề đặt ra đây là tìm ra mt phương pháp sinh b mã kim tra chn l nhanh hơn v mt thi
gian. Phương pháp sinh mã kim tra chn l da theo lý thuyết nhóm s gii quyết vn đề này.
Khái nim nhóm cng tính:
Nhóm G được gi là mt nhóm cng tính nếu G có các tính cht:
- a, b G a+b G ( tính cht cng).
- a, b, c G a + (b + c)= (a + b) + c ( tính cht kết hp).
- G sao cho + a = a + = a, a G ( là Identity Element ca G).
- a G -aG : a + (-a)=
Nhóm G là nhóm hoán v (nhóm Aben) nếu a,b G=> a + b = b + a.
Ví d:
- Tp hp các s nguyên vi phép + thông thường là nhóm Aben.
- Tp hp các s nh phân có độ dài n bit cùng vi phép + trong Modulo 2 to thành nhóm
Aben.
Tính cht ca b mã chn l
Tính tương đương ca b mã nhóm cng tính và b t mã kim tra chn l được th hin qua 2
định lý sau:
Định lý 1: tp hp các t mã trong b mã kim tra chn l là mt nhóm cng tính.
(Đề ngh sinh viên chng minh định lý này da vào các tính cht ca nhóm cng tính)
Định lý 2: Nếu tp hp W là tp các dãy nh phân vi độ dài các dãy cùng bng n và W là mt
nhóm Aben vi phép cng Modulo 2 thì W có th xem như mt b mã kim tra chn l được sinh
ra t ma trn A có dng như sau:
Biên son: TS. L ê Quy ết Thng, ThS. Phan Tn Tài & Ks. Dương Văn Hiếu. 69