Bài giảng Lý thuyết thông tin - Hồ Văn Quân
NỘI DUNG MÔN HỌC
Bài 1 Giới thiệu
Bài 2 Một số khái niệm cơ bản
Bài 3 Chuẩn bị toán học
Bài 4 Lượng tin
Bài 5 Entropy
Bài 6 Mã hiệu
Bài 7 Mã hóa tối ưu nguồn rời rạc không nhớ
Bài 8 Mã hóa nguồn phổ quát
Bài 9 Kênh rời rạc không nhớ, lượng tin tương hỗ
chỉ nếu nó là một bội số của g(x). Tức là nó có thể viết v(x) = q(x) * g(x). Chứng minh Chiều thuận Nếu v(x) = q(x) * g(x) và có bậc ≤ n – 1 thì v(x) là đa thức mã. với p là bậc của q(x) và p + r ≤ n – 1. Do xi * g(x) với 0 ≤ i ≤ p là đa thức mã, nên v(x) là đa thức mã vì nó là một tổ hợp tuyến tính của các đa thức mã. ( )∑∑ == =⎟⎟⎠ ⎞ ⎜⎜⎝ ⎛== p i i i p i i i gqgqgqv 00 )(*)(*)(*)()( xxxxxxx Trang 291 Lý thuyết Thông tin - Khoa Công Nghệ Thông Tin Các tính chất của mã vòng (tt) Chiều ngược Nếu v(x) là đa thức mã thì chia v(x) cho g(x) v(x) = q(x) * g(x) + r(x) trong đó r(x) là đa thức dư và có bậc nhỏ hơn bậc của g(x). Đối với các đa thức trên trường GF(2) chúng ta có thể suy ra r(x) = q(x) * g(x) + v(x) Nên r(x) là một đa thức mã. Theo định nghĩa của g(x) suy ra r(x) = 0. Chứng minh hoàn tất. Từ định lý này chúng ta gọi g(x) là đa thức sinh, vì từ g(x) có thể sinh ra tất cả các đa thức mã khác. Trang 292 Lý thuyết Thông tin - Khoa Công Nghệ Thông Tin Các tính chất của mã vòng (tt) Định lý 13.4 Đa thức sinh của một mã vòng C(n, k) có bậc r = n – k. Chứng minh Mỗi đa thức mã w(x) là một bội số của g(x) w(x) = q(x) * g(x) Có 2k từ mã nên có 2k đa thức q(x). Suy ra bậc của q(x) là ≤ k – 1. Suy ra bậc của g(x) là n – k. Từ định lý này đa thức sinh g(x) có thể được biểu diễn như sau g(x) = g0 + g1x + + gn – kxn – k trong đó g0 = gn – k = 1. Trang 293 Lý thuyết Thông tin - Khoa Công Nghệ Thông Tin Các tính chất của mã vòng (tt) Định lý 13.5 Đa thức sinh của mã vòng C(n, k) là một ước số của xn+ 1. Chứng minh Bổ đề 13.1 suy ra g(i)(x) = [xi * g(x)] mod (xn + 1) ⇔ xi * g(x) = q(x) * (xn + 1) + g(i)(x) Chọn i = k⇒ q(x) = 1 tức xk * g(x) = (xn + 1) + g(i)(x) ⇒ xn + 1 = xk * g(x) + g(i)(x) Do g(i)(x) là một đa thức mã nên g(i)(x) là một bội của g(x), ⇒ xn+ 1 là một bội của g(x). Chứng minh hoàn tất. Trang 294 Lý thuyết Thông tin - Khoa Công Nghệ Thông Tin Các tính chất của mã vòng (tt) Định lý 13.6 Nếu g(x) là một đa thức có bậc (n – k) và là ước số của (xn + 1) thì g(x) sinh ra mã vòng C(n, k), hay nói cách khác g(x) là đa thức sinh của một mã vòng C(n, k) nào đó. Chứng minh Xét k đa thức g(x), x * g(x), , xk – 1 * g(x). Các đa thức này đều có bậc ≤ n – 1. Gọi v(x) là một tổ hợp tuyến tính của k đa thức này với các hệ số ai ∈ GF(2). v(x) = a0g(x) + a1x * g(x) + + ak – 1xk – 1 * g(x) v(x) là một đa thức có bậc ≤ n – 1 và là bội số của g(x). Trang 295 Lý thuyết Thông tin - Khoa Công Nghệ Thông Tin Các tính chất của mã vòng (tt) Có tất cả 2k tổ hợp tuyến tính v(x) khác nhau và tạo nên một không gian tuyến tính của các đa thức mã với g(x), x * g(x), , xk – 1 * g(x) là các đa thức làm cơ sở. Chúng ta chứng minh rằng bộ mã tương ứng với không gian này là mã vòng. Gọi w(x) = b0 + b1x + + bn – 1xn – 1 là một đa thức của không gian. Chúng ta chứng minh w(1)(x) = bn – 1 + b0x + b1x2 + + bn – 2xn – 1 cũng là một đa thức của không gian. Trang 296 Lý thuyết Thông tin - Khoa Công Nghệ Thông Tin Các tính chất của mã vòng (tt) Theo Bổ đề 13.1 chúng ta có w(1)(x) = [x * w(x)] mod (xn + 1) Dựa vào biểu diễn của v(x) và w(1)(x) chúng ta suy ra x * w(x) = bn – 1(xn + 1) + w(1)(x) Do v(x) và (xn + 1) đều là bội của g(x) nên w(1)(x) cũng là bội của g(x). Suy ra w(1)(x) cũng là đa thức mã. Hoàn tất chứng minh. Trang 297 Lý thuyết Thông tin - Khoa Công Nghệ Thông Tin Ma trận sinh Ví dụ Tìm một mã vòng C(7, 4). Theo các tính chất của mã vòng suy ra đa thức sinh của mã có bậc bằng 3 và là một ước số của x7 + 1. Phân tích đa thức này ra thừa số chúng ta được ⎥⎥ ⎥⎥ ⎥⎥ ⎥⎥ ⎥ ⎦ ⎤ ⎢⎢ ⎢⎢ ⎢⎢ ⎢⎢ ⎢ ⎣ ⎡ −+− = − −−− − −− −− − × 4444 84444 76 L MMMM L L L 4444 84444 76 L MMMMM L L L 1 0 00 000 1 000 00 0 21 1 0 20 110 210 k ggg gg g kn g gg ggg gggg G kn knkn kn kn kn kn nk Trang 298 Lý thuyết Thông tin - Khoa Công Nghệ Thông Tin Ví dụ x7 + 1 = (1 + x)(1 + x + x3)(1 + x2 + x3) Chọn chẳng hạn g(x) = (1 + x + x3) ⎥⎥ ⎥⎥ ⎦ ⎤ ⎢⎢ ⎢⎢ ⎣ ⎡ =× 1011000 0101100 0010110 0001011 74G Trang 299 Lý thuyết Thông tin - Khoa Công Nghệ Thông Tin Mã vòng dạng hệ thống Từ dạng hệ thống loại 1 chúng ta có thể dịch vòng k bit để biến đổi sang dạng hệ thống loại 2 và ngược lại. Mã hóa thành từ mã hệ thống u(x) là thông báo, w(x) là từ mã hệ thống loại 2 tương ứng. xn–k * u(x) = q(x) * g(x) + a(x) w(x) = xn–k * u(x) + a(x) = q(x) * g(x) ⎥⎥ ⎥⎥ ⎦ ⎤ ⎢⎢ ⎢⎢ ⎣ ⎡ =× 1011000 0101100 0010110 0001011 74G ⎥⎥ ⎥⎥ ⎦ ⎤ ⎢⎢ ⎢⎢ ⎣ ⎡ =× 1011000 1110100 1100010 0110001 )74(htG Trang 300 Lý thuyết Thông tin - Khoa Công Nghệ Thông Tin Ví dụ Cho mã vòng C(7, 4) có ma trận sinh là g(x) = (1 + x + x3). Hãy mã hoá thông báo u = 1010 thành từ mã hệ thống dạng 2. u(x) = 1 + x2. Nhân u(x) với xn–k = x3 rồi chia cho g(x) chúng ta được. x3 * (1 + x2) = x3 + x5 = x2 * (1 + x + x3) + x2 Từ đây suy ra w(x) = x2 + x3 + x5 w = 0011010 là từ mã hệ thống dạng 2 tương ứng với u. Trang 301 Lý thuyết Thông tin - Khoa Công Nghệ Thông Tin Ma trận kiểm tra của mã vòng Có một cách khác để tìm ma trận kiểm tra của mã vòng xn + 1 = g(x) * h(x) h(x) được gọi là đa thức đối ngẫu của g(x). h(x) có bậc k h(x) = h0 + h1x + + hkxk Ma trận sau là một ma trận kiểm tra của mã vòng ⎥⎥ ⎥⎥ ⎥⎥ ⎥⎥ ⎥ ⎦ ⎤ ⎢⎢ ⎢⎢ ⎢⎢ ⎢⎢ ⎢ ⎣ ⎡ −−+ = −− − −− ×− 444 8444 76 L MMMM L L L 4444 84444 76 L MMMMM L L L 1 0 00 000 1 000 00 0 021 01 0 2 11 021 )( kn hhh hh h k h hh hhh hhhh H kkk k kk kkk nkn Trang 302 Lý thuyết Thông tin - Khoa Công Nghệ Thông Tin Ví dụ Cho mã vòng C(7, 4) có ma trận sinh là g(x) = (1 + x + x3). Từ đây suy ra h(x) = (1 + x + x2 + x4) Ma trận kiểm tra của bộ mã là ⎥⎥ ⎥ ⎦ ⎤ ⎢⎢ ⎢ ⎣ ⎡ =× 1110100 0111010 0011101 73H Trang 303 Lý thuyết Thông tin - Khoa Công Nghệ Thông Tin Ứng dụng trường GF(2m) để xây dựng mã vòng Định lý 13.7 Cho a là một phần tử khác 0 của trường GF(2m) có chu kỳ là n, đa thức tối thiểu f(x) của a có bậc là m. Thì mã có ma trận sau làm ma trận kiểm tra là một mã vòng C(n, n – m), trong đó mỗi phần tử trong ma trận bên dưới được thay thế bằng vectơ m thành phần tương ứng của nó. Hm×n = [1 a a2 an – 2 an–1] Hơn nữa mã vòng này có đa thức sinh chính là f(x). Ví dụ Xét trường GF(24) và a có đa thức tối thiểu là f(x) = 1 + x + x4 Trang 304 Lý thuyết Thông tin - Khoa Công Nghệ Thông Tin Ứng dụng trường GF(2m) để xây dựng mã vòng (tt) Từ đây suy ra ma trận kiểm tra của mã vòng (15, 11). Nếu đa thức tối thiểu của a là f(x) = 1 + x + x2 + x3 + x4 thì a có chu kỳ là 5 và các phần tử 1, a, ..., a4 được biểu diễn như sau. 1 = (1000) a3 = (0001) a = (0100) a4 = (1111) a2 = (0010) ⎥⎥ ⎥⎥ ⎦ ⎤ ⎢⎢ ⎢⎢ ⎣ ⎡ =× 111101011001000 011110101100100 001111010110010 111010110010001 154H Trang 305 Lý thuyết Thông tin - Khoa Công Nghệ Thông Tin Ứng dụng trường GF(2m) để xây dựng mã vòng (tt) Từ đây suy ra ma trận kiểm tra của mã vòng (5, 1) ⎥⎥ ⎥⎥ ⎦ ⎤ ⎢⎢ ⎢⎢ ⎣ ⎡ =× 11000 10100 10010 10001 54H Trang 306 Lý thuyết Thông tin - Khoa Công Nghệ Thông Tin Mã BCH nhị phân Do Bose, Chaudhuri và Hocquenghem sáng lập ra. Là mã vòng có khả năng sửa được nhiều lỗi. Đối với các số nguyên dương m và t bất kỳ chúng ta sẽ xây dựng một mã BCH nhị phân có các thông số sau: Độ dài từ mã: n = 2m – 1 Số bit kiểm tra: n – k ≤ mt Khoảng cách Hamming: dmin ≥ 2t + 1 Trang 307 Lý thuyết Thông tin - Khoa Công Nghệ Thông Tin Định lý Định lý 13.8 Cho a là một phần tử của trường GF(2m) có đa thức tối thiểu là một đa thức căn bản bậc m. Thì mã có ma trận sau làm ma trận kiểm tra là một mã vòng có khoảng cách Hamming ≥ 2t + 1, trong đó mỗi phần tử trong ma trận bên dưới được thay thế bằng vectơ m thành phần tương ứng của nó. ⎥⎥ ⎥⎥ ⎥⎥ ⎦ ⎤ ⎢⎢ ⎢⎢ ⎢⎢ ⎣ ⎡ = −−−−−− −− −− −− )1)((12()2)((12()12(212 )1(5)2(5105 )1(3)2(363 122 1 1 1 1 ntnttt nn nn nn aaaa aaaa aaaa aaaa H L MMMMMM L L L Trang 308 Lý thuyết Thông tin - Khoa Công Nghệ Thông Tin Định lý (tt) Hơn nữa đa thức sinh g(x) của bộ mã là đa thức bội số chung nhỏ nhất của các đa thức tối thiểu của các phần tử a, a3, a5, , a2t–1. Bổ đề 13.2 Ma trận A sau có định thức bằng với i, j ∈ {1, 2, , r}. Định thức này được gọi là định thức Vandermonde. ∏ > − ji ji yy )( ⎥⎥ ⎥⎥ ⎥⎥ ⎦ ⎤ ⎢⎢ ⎢⎢ ⎢⎢ ⎣ ⎡ = −−− 11 2 1 1 22 2 2 1 21 111 r r rr r r yyy yyy yyy A L MMMM L L L Trang 309 Lý thuyết Thông tin - Khoa Công Nghệ Thông Tin Ví dụ Cho m = 4, t = 2 chúng ta sẽ xây dựng một mã vòng có chiều dài từ mã là 24 – 1 = 15 và có khoảng cách Hamming d ≥ 5. Việc xây dựng sẽ dựa vào trường GF(24). Gọi a là phần tử có đa thức tối thiểu là đa thức căn bản bậc 4 sau f1(x) = 1 + x + x4 Đây chính là trường GF(24) trong ví dụ ở slide 250. a có chu kỳ n = 2m – 1 = 15. Chúng ta có ma trận kiểm tra của bộ mã như sau. Thay mỗi phần tử ai bằng vectơ 4 thành phần tương ứng ⎥⎦ ⎤⎢⎣ ⎡= 4239363330272421181512963 141212111098765432 1 1 aaaaaaaaaaaaaa aaaaaaaaaaaaaa H Trang 310 Lý thuyết Thông tin - Khoa Công Nghệ Thông Tin Ví dụ (tt) ⎥⎥ ⎥⎥ ⎥⎥ ⎥⎥ ⎥⎥ ⎥ ⎦ ⎤ ⎢⎢ ⎢⎢ ⎢⎢ ⎢⎢ ⎢⎢ ⎢ ⎣ ⎡ = 111101111011110 101001010010100 110001100011000 100011000110001 111101011001000 011110101100100 001111010110010 111010110010001 H Trang 311 Lý thuyết Thông tin - Khoa Công Nghệ Thông Tin Ví dụ (tt) Đa thức sinh g(x) là bội số của hai đa thức tối thiểu tương ứng với phần tử a và a3. Theo ví dụ ở slide 250, đa thức tối thiểu của a3 là f3(x) = 1 + x + x2 + x3 + x4. Từ đây suy ra g(x) = f1(x) * f3(x) = (1 + x + x4) * (1 + x + x2 + x3 + x4) = 1 + x4 + x6 + x7 + x8 Chú ý Trong trường hợp đa thức tối thiểu của a không phải là đa thức căn bản, chúng ta sẽ tìm được mã vòng có chiều dài n ≠ 2m + 1, với n là chu kỳ của a.
File đính kèm:
- bai_giang_ly_thuyet_thong_tin_ho_van_quan.pdf