Một số bài toán không giải được đối với ngôn ngữ tuyến tính

5 2 0
Một số bài toán không giải được đối với ngôn ngữ tuyến tính

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

Thông tin tài liệu

42 Taïp chí Kinh teá Kyõ thuaät MỘT SỐ BÀI TOÁN KHÔNG GIẢI ĐƯỢC ĐỐI VỚI NGÔN NGỮ TUYẾN TÍNH Nguyễn Xuân Dũng* TÓM TẮT Việc nghiên cứu về tính khả giải của các bài toán (hoặc các lớp bài toán) đóng một[.]

Tạp chí Kinh tế - Kỹ thuật Kỹ thuật - Cơng nghệ MỘT SỐ BÀI TỐN KHƠNG GIẢI ĐƯỢC ĐỐI VỚI NGƠN NGỮ TUYẾN TÍNH Nguyễn Xn Dũng* TĨM TẮT Việc nghiên cứu tính khả giải tốn (hoặc lớp tốn) đóng vai trị quan trọng không phát triển Tốn học nói riêng mà cịn ảnh hưởng lớn đến phát triển khoa học cơng nghệ nói chung Trong tiến hành nghiên cứu tính khả giải số tốn lý thuyết ngơn ngữ hình thức Cụ thể là, chúng tơi chứng minh tốn sau khơng giải ngơn ngữ tuyến tính: Bài tốn tương đương hai ngơn ngữ tuyến tính Bài tốn đồng ngơn ngữ tuyến tính với ngơn ngữ quy Bài tốn liệu có hay khơng L = Σ*, ngơn ngữ tuyến tính L cho trước bảng chữ Σ LA = { ui1 ui2 uim aim aim−1 ai1 | m ≥ ≤ im ≤ n} LB = { vi1 vi2 vim aim aim−1 ai1 | m ≥ ≤ im ≤ n} Bổ đề 1: Cho L1 L2 hai ngôn ngữ tuyến tính Σ cho u, v hai xâu Khi L1 ∪ L2 uL1v ngơn ngữ tuyến tính Σ Chứng minh: Ta cần văn phạm tuyến tính sinh ngơn ngữ a Khơng tổng quát ta giả thiết L1 = L(G1) L2 = L(G2) Với G1 = (N1, Σ, P1, S1) G2 = (N2, Σ, P2, S2) văn phạm tuyến tính N1∩N2= Ta xây dựng văn phạm tuyến tính sinh ngôn ngữ L1 ∪ L2 sau: G = (N1 ∪ N2 ∪ {S}, Σ, P1 ∪ P2 ∪ {S → S1 | S2}, S) với S ký hiệu không thuộc tập N1 Định nghĩa 1: Văn phạm tuyến tính văn phạm mà luật sinh thuộc dạng sau: A → uBv, A → uB A → u với A, B ký hiệu không kết thúc u, v xâu ký hiệu kết thúc Định nghĩa 2: Cho A = u1, u2, …, un B = v1, v2, …, hai danh sách xâu Σ* Cho K = { a1, a2, …, an} tập n ký hiệu khác khơng có Σ Ta định nghĩa GA = ({SA}, T, PA, SA) GB = ({SB}, T, PB, SB) với T = Σ ∪ K PA, PB định nghĩa sau: Với i từ đến n, PA chứa luật sinh dạng: SA → uiSAai SA → uiai PB chứa luật sinh dạng SB → viSBai SB → viai Đặt LA = L(GA) LB = L(GB), hay ta biểu diễn dạng * TS Trưởng Khoa Kỹ Thuật – Công nghệ, Trường Đại học Kinh tế - Kỹ thuật Bình Dương 42 Một số toán ∪ N2 Từ cách xây dựng văn phạm G ta thấy L(G) = L(G1) ∪ L(G2) = L1 ∪ L2 b Ta xây dựng văn phạm tuyến tính sinh ngôn ngữ uL1v sau: G = (N1 ∪ {S}, Σ ∪ K, P1 ∪ {S → uS1v}, S) Từ cách xây dựng dễ dàng thấy L(G) = uL1v Định nghĩa 3: Hệ Post (Post correspondence system - PCS) cặp , với , B = v1, …, A = u1, …, un Với số tự nhiên n ≥ từ khác rỗng u1, …, un , v1, …, Σ* Định nghĩa 4: Cho PCS bảng chữ X; A = u1, …, un , B = v1, …, K = {a1, …, an} tập ký hiệu khác không thuộc X Ta định nghĩa văn phạm sau: GA = ({SA}, Σ, PA, SA) GB = ({SB}, Σ, PB, SB) với Σ = X ∪ K PA PB xác định sau: PA : SA → uiSAai | uiai , ≤ i ≤ n PB : SB → viSBai | viai , ≤ i ≤ n Ta ký hiệu LA = L(GA) LB = L(GB) Hiển nhiên LA LB ngôn ngữ tuyến tính phi ngữ cảnh Σ = X ∪ K Ngoài LA = { ui1 ui2 uim aim aim−1 ai1 | m ≥ ≤ im ≤ n} LB = { vi1 vi2 vim aim aim−1 ai1 | m ≥ ≤ im ≤ n} Bổ đề 2: - LA ngơn ngữ tuyến tính Σ Chứng minh: Từ định nghĩa ta thấy LA ⊆ X*K*, từ w ∉ LA thoả hai trường hợp sau: w ∉ X*K* w ∈ X*K* w∉ LA Tập tất từ trường hợp qui phần bù tập qui Ta cịn cần tập tất từ trường hợp tuyến tính, theo bổ đề hợp hai ngơn ngữ tuyến tính ngơn ngữ tuyến tính Trước tiên ta để ý từ trường hợp 2, nghĩa w ∈ X*K* w∉ LA, w có dạng sau: w = ui1 ui2 uim ua im aim−1 ai1 (*) với ui j ∈ A (1 ≤ j ≤ k) đó, ail ∈ K (1 ≤ l ≤ m) với k ≥ 0, m ≥ k , u ∈ Σ* uk+ tiền tố u Trong trường hợp k = ta đòi hỏi u ≠ e (xâu rỗng) m ≥ Từ dạng tổng quát từ w thoả mãn điều kiện (*) ta xem xét trường hợp cụ thể sau: Trường hợp 1: k = 0, u ≠ e , m ≥ Trong trường hợp từ w viết sau: w = ua im aim−1 ai1 (**) xâu u khơng có dạng u = uil v với v ∈ X* Từ lý với ≤ i ≤ n ta xét trường hợp sau: 1a) | u | | ui | Ta thấy rằng, với ui ∈ A số từ X* có độ dài nhỏ | ui | hữu hạn Với S1i → uil Ail , với uil từ X* mà uil ui Ai1 → Ai1a j | a j 43 ≤ j ≤ n Tạp chí Kinh tế - Kỹ thuật Hiển nhiên, văn phạm G1i (1 ≤ i ≤ n) văn phạm tuyến tính Ta ký hiệu L2 tập tất từ X*K* thoả mãn điều kiện 1b Trường hợp 2: k > Ở ta phân thành trường hợp 2a) u = e m ≥ k+1 Trong trường hợp từ w sau n L1 =  L(G1i ) i =1 Ngôn ngữ L1 tuyến tính theo bổ đề Ngồi ra, dễ dàng khẳng định L1 tập tất từ trường hợp 1a 1b) u ≥ ui Ta xây dựng văn phạm tuyến tính sinh tất từ thuộc Σ* thoả mãn điều kiện trường hợp 2a sau: Từ đòi hỏi (**) u khơng có dạng ui1 v , với v ∈ X*, ta xét trường hợp sau: Với ≤ i ≤ n ta viết lại từ u dạng sau: u = yiv với v ∈ X* đó, yi ≠ ui |yi|=|ui| Từ hạn chế sau yi ta thấy rằng, với i số yi hữu hạn Bây ta xây dựng văn phạm sau: G3 = ({S3, A3}, Σ, P3, S3) Với P3 tạo nên từ luật sinh sau: S3 → ujS3aj | A3aj cho tất uj ∈ A, aj ∈ K, ≤ j ≤ n A3 → A3aj | aj cho ≤ j ≤ n, aj ∈ K Ta ký hiệu L3 = L(G3) thấy L3 ngôn ngữ tuyến tính ngồi chứa tất từ thuộc trường hợp 2a Một cách tương tự, ta có trường hợp sau: 2b) u ≠ e m = k Trường hợp tương tự 2a theo nghĩa “đối xứng” Từ w viết sau: G2i = ({ S 2i , Ai2 }, Σ, P2i , S 2i ) Tập luật sinh P2i tạo nên từ qui tắc sau: S 2i → yij A2i với yij ∈ X * với yij ≠ ui | yij | = |ui| i A → bS ∈K i w = ui1 ui2 uim ua i | A a với b ∈ X , a im aim−1 ai1 Bằng lập luận tương tự trường hợp trước ta xây dựng văn phạm tuyến tính sinh tất từ trong trường hợp 2b sau: Ai2 → b | a với b ∈ X , a ∈ K w = ui1 ui2 uim aim aim−1 ai1 Ta ký hiệu n G4 = ({S4, A4}, Σ, P4, S4) L2 =  L(G2i ) i =1 Từ việc văn phạm G2i tuyến tính suy tính tuyến tính ngơn ngữ L2 Theo cách xây dựng văn phạm G2i ta dễ dàng thấy Với P4 tạo nên từ luật sinh sau: S3 → ujS4aj | bA4 cho tất b ∈ X, ≤ j ≤ n 44 Một số toán A3 → bA4 | b cho b ∈ X Ký hiệu L4 = L(G4) 2c ) u ≠ e m ≥ k Trường hợp xảy hai khả sau: S 6i → u j S5i a j S 6i → yil Ai6 yil = ui 2c1) |u| |ui| với i, ≤ i ≤ n Ta ký hiệu S 5i → u j S 5i a j cho ≤ j ≤ n ui Ai5 → Ai5 a j | aj cho ≤ j ≤ n n L5 =  L(G5i ) i =1 Rõ ràng L5 ngôn ngữ tuyến tính chứa tất từ trường hợp 2c1 Sau cùng, ta xét trường hợp cuối sau: 2c2 ) | u | | ui | Từ w viết lại dạng u = y v, với v cho v X* yil ≠ ui , yil = ui l i Với ui số yil hữu hạn Từ ta xây dựng văn phạm tuyến tính sinh tập từ trường hợp 2c2 sau: i i i i n L6 =  L(G6i ) Là tuyến tính chứa tất từ trường hợp 2c2 Ta xét xong tất khả từ X*K* mà không thuộc ngôn ngữ LA thấy tập tất từ tuyến tính Σ Kết hợp trường hợp với trường hợp ta có phần bù ngơn ngữ tuyến tính LA ngơn ngữ tuyến tính Σ = X K Trên sở kết vừa nhận ta chứng minh tính khơng giải số tốn lớp ngơn ngữ tuyến tính Định lý 1: Cho L ngơn ngữ tuyến tính bảng chữ Σ, tốn, liệu L = Σ* Chứng minh: Giả sử PCS theo định nghĩa Khi LA LB ngơn ngữ tuyến tính Σ Theo bổ đề ngôn ngữ -LA –LB ngơn ngữ tuyến tính Σ, –LA -LB ngơn ngữ tuyến tính Σ Ta có Với P5i chứa luật sinh sau: Ta ký hiệu cho yil mà yil ≠ ui i =1 G5i = ({ S 5i , A5i }, Σ, P5i , S5i ) S 5i → uil Ai5 cho uil mà uil cho ≤ j ≤ n Ai6 → bA i6 | A6i a | a | b cho aK, b X Số từ X* cho |u| |ui| hữu hạn Từ ta xây dựng văn phạm tuyến tính sinh tập từ trường hợp 2c1 sau: Với P6i chứa luật sinh sau: = –LA -LB = Σ* = (X K)* –LA -LB Đẳng thức sau tồn PCP khơng có nghiệm, tốn i G = ({ S , A }, Σ, P , S ) 45 Tạp chí Kinh tế - Kỹ thuật Định lý 2: Cho L ngơn ngữ tuyến tính Σ, R ngơn ngữ qui Σ Bài tốn, L = R không giải Định lý 3: Cho L1 L2 hai ngơn ngữ tuyến tính Σ Khi tốn, L1 = L2 không giải không giải Từ suy tốn, liệu ngơn ngữ tuyến tính L bảng chữ Σ, L = Σ* không giải Từ việc Σ* ngôn ngữ tuyến tính ta có kết sau TÀI LIỆU THAM KHẢO [1] Hopcroft E, Aho A.V, Ullman J.D, Formal Languages and Their Relation to Automata Addison – Wesley, Reading, Mass 1969 [2] Aho A.V, Ullman J.D Theory of Parsing, Translation and Compiling V1 Prentice Hall 1972 46 ... ngơn ngữ tuyến tính Σ, R ngơn ngữ qui Σ Bài toán, L = R không giải Định lý 3: Cho L1 L2 hai ngơn ngữ tuyến tính Σ Khi tốn, L1 = L2 khơng giải không giải Từ suy tốn, liệu ngơn ngữ tuyến tính L... mà không thuộc ngôn ngữ LA thấy tập tất từ tuyến tính Σ Kết hợp trường hợp với trường hợp ta có phần bù ngơn ngữ tuyến tính LA ngơn ngữ tuyến tính Σ = X K Trên sở kết vừa nhận ta chứng minh tính. .. tính khơng giải số tốn lớp ngơn ngữ tuyến tính Định lý 1: Cho L ngơn ngữ tuyến tính bảng chữ Σ, tốn, liệu L = Σ* Chứng minh: Giả sử PCS theo định nghĩa Khi LA LB ngơn ngữ tuyến tính Σ Theo

Ngày đăng: 21/11/2022, 15:57