1. Trang chủ
  2. » Luận Văn - Báo Cáo

Thuật toán kiểm tra tính chất mã bằng otomat hữu hạn

75 7 0

Đang tải... (xem toàn văn)

Tài liệu hạn chế xem trước, để xem đầy đủ mời bạn chọn Tải xuống

THÔNG TIN TÀI LIỆU

LỜI CẢM ƠN Với tình cảm chân thành lịng biết ơn sâu sắc, tơi xin trân trọng gửi lời cảm ơn tới TS Hồ Ngọc Vinh, người thầy trực tiếp hướng dẫn khoa học nhiệt tình bảo giúp đỡ tơi suốt q trình nghiên cứu để hoàn thành luận văn Xin chân thành cảm ơn Ban Giám Hiệu, thầy cô giáo khoa sau đại học, thầy cô giáo viện Công nghệ thông tin Truyền thông – trường Đại học Bách Khoa Hà Nội đào tạo giúp đỡ để em hồn thành khố học Tơi xin chân thành cảm ơn Ban Giám Hiệu, phòng Tổ chức-Cán bộ, phòng Đào tạo-NCKH, Trung tâm Ngoại ngữ-Tin học HTHT – Trường Cao đẳng Sư phạm tỉnh Điện Biên bạn bè đồng nghiệp tạo điều kiện thuận lợi cho tơi q trình học tập thực đề tài Nhân dịp này, tơi xin bày tỏ lịng biết ơn sâu sắc tới gia đình, người thân quan tâm giúp đỡ tạo điều kiện thuận lợi để tơi hồn thành tốt luận văn -1- LỜI CAM ĐOAN Luận văn thạc sĩ nghiên cứu thực dƣới hƣớng dẫn thầy giáo TS Hồ Ngọc Vinh Để hoàn thành luận văn này, tài liệu tham khảo liệt kê, cam đoan không chép tồn văn cơng trình ngƣời khác Hà Nội, ngày 18 tháng năm 2016 Phan Đình Lập -2- MỤC LỤC Trang LỜI CẢM ƠN LỜI CAM ĐOAN DANH MỤC CÁC KÝ HIỆU VÀ CHỮ VIẾT TẮT DANH MỤC CÁC BẢNG BIỂU DANH MỤC CÁC HÌNH VẼ MỞ ĐẦU CHƢƠNG GIỚI THIỆU VỀ OTOMAT VÀ ỨNG DỤNG 10 1.1 Một số khái niệm 10 1.1.1 Bảng chữ 10 1.1.2 Từ (Xâu) 10 1.1.3 Xâu chung dài .11 1.1.4 Các phép toán từ (xâu) .12 1.1.5 Ngôn ngữ 13 1.1.6 Các phép tốn ngơn ngữ 13 1.1.7 Vị nhóm .14 1.1.8 Nửa vành 14 1.2 Otomat hữu hạn 15 1.2.1 Otomat hữu hạn đa định 15 1.2.2 Otomat hữu hạn đơn định 17 1.2.3 Một số cách biểu diễn otomat hữu hạn .18 1.2.4 Một số thuật toán otomat hữu hạn .20 1.3 Đồ thị hữu hạn 24 1.3.1 Khái niệm .24 -3- 1.3.2 Biểu diễn đồ thị máy tính 25 CHƢƠNG MỘT SỐ LỚP MÃ VÀ OTOMAT 27 2.1 Mã tính chất mã 27 2.1.1 Mã 27 2.1.2 -mã 30 2.1.3 -mã 33 2.1.4 Z–mã 35 2.1.5 Độ trễ giải mã 36 2.2 Máy biến đổi otomat 37 2.2.1 Khái niệm 37 2.2.2 Hợp thành hai máy biến đổi 40 2.2.3 Lƣỡng cực hoá, mở rộng kiểu kiểu otomat .43 2.2.4 Tích otomat 44 2.2.5 Tích hợp otomat 47 2.2.6 Sự tồn đƣờng kiểu kiểu 48 CHƢƠNG3 KIỂM ĐỊNH -MÃ, ω-MÃ VÀ Z-MÃ 53 3.1 Tính tốn độ trễ giải mã cho -mã theo otomat 53 3.2 Kiểm định ω-mã theo otomat .63 3.3 Kiểm định Z-mã theo otomat 67 KẾT LUẬN VÀ KIẾN NGHỊ 73 TÀI LIỆU THAM KHẢO 74 -4- DANH MỤC CÁC KÝ HIỆU VÀ CHỮ VIẾT TẮT Từ viết tắt Giải nghĩa -mã Mã từ định biên -mã Mã từ vô hạn Z-mã Mã zigzag LCS Xâu chung dài (Longest Common Subsequence) DFA Otomat hữu hạn đơn định (Deterministic Finite Automata) DFS Tìm kiếm theo chiều sâu (Depth First Search) -5- DANH MỤC CÁC BẢNG BIỂU Bảng 1.1 Độ dài LCS khúc đầu x y 12 Bảng 1.2 Bảng chuyển trạng thái otomat  18 Bảng 1.3 Bảng chuyển otomat  19 Bảng 1.4 Bảng chuyển otomat  Ví dụ 1.12 23 Bảng 1.5 Bảng chuyển otomat đơn định M Ví dụ 1.12 24 -6- DANH MỤC CÁC HÌNH VẼ Hình 1.1 Đồ thị chuyển trạng thái otomat1 19 Hình 1.2 Q trình đốn nhận xâu w = ababbab trên1 20 Hình 1.3 Đồ thị chuyển trạng thái otomat  21 Hình 1.4 Đồ thị có hƣớng 26 Hình 1.5 Mảng danh sách kề đồ thị G 26 Hình 2.1 Độ trễ giải mã hữu hạn d 36 Hình 2.2 Hợp thành otomat với máy biến đổi vànhTropical 42 Hình 2.3 Tích hai otomat 45 Hình 2.4 Nhãn đƣờng hai trạng thái dạng 46 Hình 2.5 Tích hợp hai otomat 47 Hình 3.1 Phân tích zVd1X z (Y +)1 (Vd1 X) 57 Hình 3.2 Phân tích zX -1Vd zUd1Y+ 58 Hình 3.3 Hai kiểu hai ω-phân tích phải khác từ w 65 Hình 3.4 Bốn kiểu hai Z-phân tích khác từ w 68 -7- MỞ ĐẦU Tính cấp thiết đề tài Sự phát triển khoa học máy tính, nhu cầu sử dụng mã biểu diễn, bảo mật thông tin ngày quan trọng cần thiết Mã có vai trị thiết yếu nhiều lĩnh vực nhƣ xử lý thông tin, nén liệu, truyền thơng mật mã Một số tốn nghiên cứu lý thuyết mã, tính chất mã ứng dụng là: toán kiểm định mã, nghiên cứu đặc tính mã, … đƣợc nhiều nhà khoa học quan tâm nghiên cứu vai trị sâu sắc chúng phát triển ngơn ngữ hình thức lý thuyết biểu diễn thơng tin nói chung, mã mối quan hệ với đại số, tổ hợp từ, lý thuyết ngôn ngữ hình thức otomat hữu hạn Để đáp ứng đƣợc yêu cầu đòi hỏi khắt khe hệ thống toán, ứng dụng đặt vấn đề chất lƣợng, độ xác, độ ổn định, thời gian đáp ứng hệ thống việc nghiên cứu, tìm hiểu cơng cụ kỹ thuật, cơng cụ lập trình, thuật tốn mơ cần thiết Đề tài luận văn “Thuật toán kiểm tra tính chất mã otomat hữu hạn” có ý nghĩa thực tiễn thời cao, có khả phát triển mặt lý thuyết ứng dụng thực tế Mục tiêu nghiên cứu luận văn Dựa thành tựu đại số, lý thuyết otomat lý thuyết đồ thị, thiết lập thuật toán kiểm định cho mã lớp mã khác nhƣ ω-mã, -mã Z-mã với chất lƣợng tốt Phƣơng pháp nghiên cứu Sử dụng phƣơng pháp công cụ đại số, otomat hữu hạn, lý thuyết otomat để làm công cụ phƣơng tiện sử dụng nghiên cứu Đóng góp luận văn Luận văn trình bày việc ứng dụng lƣỡng cực hoá otomat hữu hạn đầu vào -8- cho tốn kiểm định tính chất mã ω-mã Z-mã, có độ phức tạp thời gian cỡ (n3) với đầu vào otomat hữu hạn đơn định n số trạng thái otomat Với tiếp cận phƣơng pháp sử dụng otomat vào tốn kiểm định tính chất mã, đề xuất thuật tốn tính tốn độ trễ cho -mã, với đầu vào otomat hữu hạn, trình bày phƣơng pháp kiểm định ω-mã Z-mã, với đầu vào otomat hữu hạn, đề xuất kết mở rộng phƣơng pháp tính tốn độ trễ giải mã H.N.Vinh-N.Đ.Hân-P.T.Huy (2010) ngôn ngữ từ định biên Kết cấu luận văn Luận văn gồm 75 trang, phần mở đầu, kết luận, danh mục tài liệu tham khảo mục lục, nội dung luận văn đƣợc trình bày ba chƣơng với cấu trúc nhƣ sau Chương 1: Giới thiệu otomat ứng dụng Chƣơng thứ trình bày kiến thức sở cần thiết đƣợc sử dụng chƣơng luận văn Ở ta nhắc lại số khái niệm otomat hữu hạn, otomat đa định, đơn định hữu hạn; cách biểu diễn otomat đồng thời nêu số thuật toán otomat hữu hạn, khái niệm đại số, lý thuyết mã, lý thuyết ngơn ngữ hình thức, đồ thị hữu hạn, ngơn ngữ, từ phép tốn từ ngôn ngữ Chương 2: Một số lớp mã otomat Trình bày định nghĩa lớp mã nhƣ mã (thơng thƣờng), -mã, mã, Z-mã với tính chất đặc trƣng chúng, nêu khái niệm máy biến đổi otomat hữu hạn, đồng thời nêu số thuật toán máy biến đổi Chương 3: Kiểm định -mã, ω-mã Z-mã Chƣơng trình bày kết tính tốn độ trễ giải mã cho -mã, phƣơng pháp kiểm định ω-mã Z-mã, với đầu vào otomat hữu hạn Từ đề xuất: ứng dụng lƣỡng cực hoá otomat hữu hạn đầu vào; thực mở rộng kiểu kiểu otomat; xây dựng otomat  tích tích hợp otomat nhận đƣợc sau lƣỡng cực hoá mở rộng kiểu kiểu -9- CHƢƠNG GIỚI THIỆU VỀ OTOMAT VÀ ỨNG DỤNG Chƣơng thứ trình bày kiến thức sở cần thiết, đƣợc sử dụng chƣơng luận văn Ở ta nhắc lại số khái niệm otomat hữu hạn, otomat đa định, đơn định hữu hạn; cách biểu diễn otomat đồng thời nêu số thuật toán otomat hữu hạn, khái niệm đại số, lý thuyết mã, lý thuyết ngơn ngữ hình thức, đồ thị hữu hạn, ngơn ngữ, từ phép tốn từ ngơn ngữ Về kiến thức sở liên quan, đƣợc tham khảo tài liệu [1], [2], [4], [8], [10], [12], [14], [19] 1.1 Một số khái niệm 1.1.1 Bảng chữ Tập A khác rỗng hữu hạn hay vô hạn ký hiệu đƣợc gọi bảng chữ Mỗi phần tử a  A đƣợc gọi chữ hay ký hiệu Ví dụ 1.1 Dƣới bảng chữ A = { a, b, c, …x, y, z },  = { , , , , , , , , , , , , , , ,  }, B = { 0, }, 1.1.2 Từ (Xâu) Giả sử có bảng chữ A = {a1, a2,…, am}, từ hay xâu w A dãy phần tử A, w = a1a2 … an , với aiA Tổng số vị trí ký hiệu xuất xâu w đƣợc gọi độ dài từ w ký hiệu  w  Xâu khơng có chữ đƣợc gọi từ rỗng đƣợc ký hiệu  Nhƣ từ rỗng từ thuộc bảng chữ Hai từ  = a1a2…an  = b1b2…bm đƣợc gọi đƣợc ký hiệu  =  nếu: n = m = bi với  i =1, 2, …, n - 10 - Bổ đề Cho X, Y  A* -ngôn ngữ quy Nếu X,Y thỏa tồn cấu vị nhóm  : A* P, với P vị nhóm hữu hạn,  thỏa L (X,Y), với (X,Y) lớp -ngôn ngữ sinh X, Y nhờ sử dụng hữu hạn phép , , , phép thương trái, thương phải Chứng minh Theo giả thiết X =  -1(B), Y =  -1(C), B, C  P, suy X Y =  -1(B)  -1(C) =  -1(B  C) Do  thỏa X Y Lập luận tƣơng tự với phép  phép  Theo định nghĩa: B-1C={mP | bB, bmC}  P, suy X -1Y = -1(B-1C) Do  thỏa X -1Y Lập luận tƣơng tự với XY -1 Nhƣ vậy, với X  A* -ngôn ngữ quy, số tập U, V thỏa toàn cấu  : A* P, với P vị nhóm hữu hạn, nghĩa số tập U, V không vƣợt số tập P 2|P| Ta xây dựng otomat  = (Q, A,  , q0, T ) từ X gồm: + Bảng chữ hữu hạn A + Tập trạng thái Q = {q | q = (i, V, U, is_u), với V, U  A+, i = 1, , Trong đó: i số tập V, biến logic is_u nhận giá trị False, True bƣớc tính tốn Vì vậy, số trạng thái Q bị chặn |Q|  2|P| 2|P| = 22|P|+1 + Các giá trị cờ tích lũy is_u đƣợc sử dụng để định bƣớc chuyển trạng thái hợp lý, ta quy ƣớc giá trị is_u nhƣ sau: - Trƣờng hợp 1: Ui đƣợc tính theo Vi : is_u = False, số i tăng - Trƣờng hợp 2: Vi+1 đƣợc tính theo Ui , Vi: is_u = True, số i không tăng + Trạng thái ban đầu q0 = (1, V, U, True), với: U = U0 = (X +)1X  {e}  {(i, , i)  i  B} V = V1 = (X 1 (X +)  {e}  {(i, , i) i  B}) + U01X + - 61 - + Hàm chuyển trạng thái  đƣợc xây dựng nhƣ sau: Tại thời điểm bất kỳ, otomat trạng thái q = (i, V, U, is_u), tùy thuộc vào giá trị cờ tích lũy is_u mà otomat chuyển sang trạng thái q = (i, V, U, is_u) theo hai trƣờng hợp: Trường hợp 1: is_u = True thì: q = (i, V, U, is_u), đó: i = i, V = V, U =V 1X  (X +)1 (V 1 X), is_u = False Trường hợp 2: is_u = False thì: q = (i, V, U, is_u), đó: i= i + 1, V =X 1V  U 1X +, U =U, is_u = True + Trạng thái q = (i, V, U, is_u) T e V e U V =  + Một đƣờng  dãy P = ( ,  , ,  k) cạnh liên tiếp i = (qi , ui , qi+1) ,  i  k Định nghĩa 3.1 Cho otomat =(Q, A, , q0, T) xác định X Một đường dạng P:q0 = (1,V,U,is_u) q = (k+1,V,U,is_u), k  0, gọi thành cơng  Khi đó, giá đường P, ký hiệu Val(P), với Val(P) = k Mệnh đề sau khẳng định tính đắn otomat Mệnh đề 3.2 Cho otomat  = (Q, A,  , q0, T) xác định X P tập tất đường thành cơng  Khi X có độ trễ giải mã hữu hạn d, xác định bởi: d = Min{ k | k = Val(P), P  P} Chứng minh Xét PP, d = Val(P) Vd +1 =  (theo giả thiết), suy d độ trễ X (theo Mệnh đề 3.1) Sau ta chứng minh d độ trễ giải mã X d phải giá đƣờng thành công ngắn  Thật vậy, giả sử có d < d độ trễ giải mã X phải d, mâu thuẫn với giả thiết d độ trễ giải mã X Ví dụ Giả sử X = {(1, b, 0), (0, abb, 0), (0, abbba, 1), (1, bbba, 0), (1, baabb, 0)} Ta có: - 62 - q0 = (1, V, U, True), với U = { (0, bba, 0), (0, aabb, 0), (0, ba, 1) } V = { (0, bba, 0), (0, aabb, 0), (0, ba, 1) } q1 = (1, V, U, False), với U1 =  V2 =  Với V2 = , suy q1 T Do đó, X -mã có độ trễ giải mã hữu hạn d = Ví dụ Giả sử X = {(0, ca, 1), (0, c, 0), (0, ab, 0), (1, baa, 1), (0, aabb, 0)} Ta có: q0 = (1, V, U, True), với U0 = {(0, a, 1)} V1 = {(0, a, 1), (1, b, 0), (1, abb, 0)} q1 =(1, V, U, False), với U1 = {(1, b, 0), (1, abb, 0), (0, aa, 1)} V2 = {(0, aa, 1), (1, bb, 0)} q2 = (2, V, U, True), với U2 = {(1, bb, 0)} V3 =  Với V3 = , suy q2 T Do đó, X -mã có độ trễ giải mã hữu hạn d = 3.2 Kiểm định ω-mã theo otomat Cho otomat hữu hạn =(Q, A, E, I, F ) không chứa cung rỗng Để kiểm định X = () có ω-mã hay khơng, ta xét trƣờng hợp: i) Nếu ɛ  X kết luận X không ω-mã: việc kiểm tra ɛ thuộc X hay không tƣơng đƣơng với kiểm tra I  F khác rỗng khơng Bƣớc thực thuật tốn ký hiệu EPSILON() có độ phức tạp thời gian (Q) ii) Nếu ɛ  X X  A+: ta xây dựng 1 = BA() = (Q1, A, E1, s1, f1), 2 = EAT2(1) = (Q2,A, E2, s2, f2), 3 = PROD(2, 2) Xem 3 nhƣ đồ thị hữu - 63 - hạn có hƣớng G (3 xác định đồ thị G), trạng thái đỉnh đồ thị, có đỉnh khởi đầu (s2, s2), đỉnh kết thúc (f2, f2), có cặp (U, D) mà tập đỉnh khoá U = {(f2, q) Q2 × Q2qs2}, tập đỉnh khố dƣới D = {(p, f2) Q2 × Q2 pf2, ps2}, rõ ràng UD = , cung 3 xác định cung đồ thị Ta chứng minh kết sau đây: Mệnh đề 3.3 Cho otomat hữu hạn  đốn nhận ngơn ngữ X  A+, đồ thị G xác định nhƣ Ta có X ω-mã đồ thị G khơng có đƣờng kiểu khơng có đƣờng kiểu Chứng minh () Giả sử đồ thị G có đƣờng kiểu 1, ta xét nhãn đƣờng này: x y z ( p1 , q1 )  ( pi , qi )  ( p j , q j )  ( p k , q k ) (s2, s2) = (p1, q1), (pi, qi) U, (pj, qj)  D với 1

Ngày đăng: 28/02/2021, 00:09

Xem thêm:

TÀI LIỆU CÙNG NGƯỜI DÙNG

TÀI LIỆU LIÊN QUAN

w