tiểu luận môn lý thuyết tính toán post’s corespondence problems

20 526 7
tiểu luận môn lý thuyết tính toán post’s corespondence problems

Đ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

Tiểu luận môn học Lý thuyết tính toán Post’s Correspondence Problem ĐẠI HỌC ĐÀ NẴNG BAN ĐÀO TẠO SAU ĐẠI HỌC  GVHD : PGS. TS. PHAN HUY KHÁNH NHÓM HV : LÊ QUANG VŨ ĐẶNG QUÝ LINH TRẦN THỊ ÁI QUỲNH LỚP : CAO HỌC KHMT K24 Trang 1 Đà Nẵng, tháng 05/2012 Đề tài: POST’S CORESPONDENCE PROBLEMS Tiểu luận môn học Lý thuyết tính toán Post’s Correspondence Problem MỤC LỤC MỤC LỤC 2 LỜI MỞ ĐẦU 3 BÀI TOÁN TƯƠNG ỨNG POST 4 1. Định nghĩa bài toán tương ứng Post 4 2. PCP đã sửa đổi 7 3. Hoàn thiện chứng minh PCP không có lời giải 11 BÀI TẬP 18 Bài tập 9.4.1: 18 Giải bài tập: 18 KẾT LUẬN 20 Trang 2 Tiểu luận môn học Lý thuyết tính toán Post’s Correspondence Problem LỜI MỞ ĐẦU Để chứng minh một bài toán không có lời giải P 1 , chúng ta có thể quy P 2 - là bài toán không có lời giải, về P 1 . Chúng ta bắt đầu với một bài toán gọi là “Bài toán tương ứng Post” (Post’s Correspondence Problem) hay gọi tắt là PCP, nó cũng là bài toán trừu tượng nhưng nó liên quan đến chuỗi (string) hơn là máy Turing. Mục tiêu của của chúng ta là chứng minh chuỗi là không có lời giải, sau đó sử dụng tính không có lời giải của nó để chứng minh các bài toán không có lời giải khác bằng quy PCP về các vấn đề đó. Chúng ta sẽ chứng minh PCP không có lời giải bằng cách quy L u về PCP. Để dễ dàng chứng minh, ta giới thiệu một PCP được sửa đổi, và quy bài toán PCP được sửa đổi đến PCP ban đầu. Sau đó chúng ta quy L u về PCP đã sửa đổi. Một chuỗi các rút gọn này được gợi ý trong hình 9.1. Vì L u ban đầu là không có lời giải, ta kết luận, PCP là không có lời giải. Hình 9.1: Các rút gọn chứng minh tính không có lời giải của bài toán tương ứng Post. Trang 3 Tiểu luận môn học Lý thuyết tính toán Post’s Correspondence Problem BÀI TOÁN TƯƠNG ỨNG POST - Post’s Correspondence Problem – 1. Định nghĩa bài toán tương ứng Post Một instance (tạm dịch là một trường hợp cụ thể ) của bài toán tương ứng Post (PCP) gồm hai danh sách các chuỗi (string) trên các bảng alphabet ∑, hai danh sách phải có độ dài bằng nhau. Một cách tổng quát, chúng ta tham chiếu đến các danh sách A và B, và A = w 1 , w 2, , w k và B = x 1 , x 2, …, x k , với k nguyên.Với mỗi i, cặp (w i , x i ) được gọi là một cặp tương ứng. Chúng ta nói instance PCP này có một lời giải nếu có một dãy một hoặc nhiều số nguyên i 1 , i 2 , … i m mà khi biên dịch như các chỉ số của các chuỗi trong các danh sách A và B, tạo ra chuỗi giống nhau là w i1 w i2 … w im = x i1 x i2 … x im . Chúng ta nói chuỗi i 1 , i 2, … i m là một lời giải cho instance PCP, nếu đúng vậy, bài toán tương ứng Post là: • Cho trước một instance PCP, tìm xem instance này có lời giải hay không. Ví dụ 9.13: Cho ∑ = {0,1}, cho các danh sách A, B được định nghĩa như trong hình 9.12. Trong trường hợp này PCP có một lời giải. Ví dụ, cho m = 4, i 1 = 2, i 2 = 1, i 3 = 1 và i 4 = 3; lời giải là danh sách 2,1,1,3. Chúng ta kiểm tra danh sách này là lời giải bằng cách nối hai xâu tương ứng theo thứ tự cho hai danh sách, đó là w 2 w 1 w 1 w 3 = x 2 x 1 x 1 x 3 = 101111110. Chú ý rằng, lời giải này không phải là duy nhất. Ví dụ, 2,1,1,3,2,1,1,3 là một lời giải khác. Hình 9.12: Một ví dụ PCP Trang 4 Tiểu luận môn học Lý thuyết tính toán Post’s Correspondence Problem PCP như một ngôn ngữ Chúng ta đang thảo luận về bài toán xác định xem một instance PCP cho trước có lời giải hay không, chúng ta cần biểu diễn bài toán này dưới dạng một ngôn ngữ. Vì PCP cho phép các ký tự alphabet tuỳ ý, do vậy ngôn ngữ PCP thực sự là một tập các chuỗi trên một số bảng alphabet cố định, mà nó mã hoá PCP như chúng ta mã hoá máy Turing có các tập trạng thái tuỳ ý và các ký hiệu đánh dấu như trong phần 9.1.2. Instance, nếu một instance PCP có một bảng ký hiệu (symbol) đến 2 k ký tự, chúng ta có thể sử dụng k bit nhị phân phân biệt mã hoá hoá cho mỗi ký hiệu. Vì mỗi instance PCP có một bảng alphabet hữu hạn, chúng ta có thể tìm thấy một vài k cho mỗi instance PCP. Chúng ta có thể mã hoá mọi bài toán PCP trong một bảng 3 ký hiệu gồm 0,1 và một dấu phẩy để phân biệt các chuỗi. Chúng ta bắt đầu việc mã hoá bằng cách viết k dưới dạng nhị phân, theo sau bởi một dấu phẩy. Sau mỗi cặp chuỗi, với các chuỗi phân biệt bởi các dấu phẩy và các ký hiệu của chúng được mã hoá dưới một mã k bit nhị phân. Ví dụ 9.14: Đây là một ví dụ về trường hợp không lời giải. Chúng ta cũng cho ∑ = {0,1}, nhưng bài toán có hai danh sách như trong hình 9.13. Giã sử rằng bài toán PCP trong hình 9.13 có một lời giải, ta nói i 1, i 2, , i m , với m >= 1. Chúng ta cho i 1 = 1. Nếu i 1 = 2, thì một chuỗi bắt đầu với w 2 = 011 sẽ phải bằng một chuỗi bắt đầu với x 2 = 11. Nhưng điều này là không thể, vì ký hiệu đầu tiên của hai chuỗi này là 0 và 1. Tương tự, nó cũng không đúng với i 1 = 3, vì một chuỗi bắt đầu với w 3 = 101 sẽ phải bằng một chuỗi x 3 = 011. Nếu i 1 = 1, thì hai chuỗi tương ứng từ các danh sách A và B sẽ phải bắt đầu: Trang 5 Tiểu luận môn học Lý thuyết tính toán Post’s Correspondence Problem Bây giờ chúng ta xét i 2 : 1. Nếu i 2 = 1, thì sẽ có vấn đề, sẽ không có chuỗi bắt đầu với w 1 w 2 = 1010 có thể khớp với chuỗi bắt đầu với x 1 x 2 = 101101; chúng phải không trùng khớp tại vị trí thứ tư. Hình 9.13: Một ví dụ PCP khác 2. Nếu i 2 = 2, chúng ta cũng có vấn đề, bời vì không có chuỗi bắt đầu với w 1 w 2 = 10011 có thể khớp với chuỗi bắt đầu với x 1 x 2 = 10111; chúng phải khác nhau ở vị trí sthứ 3. 3. Chỉ có i 2 = 3 là có thể Nếu chúng ta chọn i 2 = 3, thì các chuỗi tương ứng được tạo thành từ danh sách các số nguyên i 1 , i 3 là: Chúng ta không thể mở rộng danh sách 1,3 để có một lời giải. Tuy nhiên, chúng ta có thể kết luận là điều đó không thể làm được. Lý do là chúng ta có cùng điều kiện sau khi lựa chọn i 1 = 1. Chuỗi từ danh sách B giống với chuỗi từ danh sách A, ngoại trừ trong danh sách B có thêm ký hiệu 1 ở cuối. Vì vậy, chúng ta bắt buộc chọn i 3 = 3, i 4 = 3, và vì vậy, để tránh tạo ra lỗi. Chúng ta có thể sẽ không bao giờ cho phép chuỗi A giống đạt đến chuỗi B, và vì vậy có thể không bao giờ đạt đến một lời giải. Trang 6 Tiểu luận môn học Lý thuyết tính toán Post’s Correspondence Problem 2. PCP đã sửa đổi Sẽ dễ dàng quy L u về PCP hơn nếu chúng ta giới thiệu một phiên bản trung gian của PCP, mà ta gọi là PCP đã sửa đổi, hay MPCP. Trong PCP sửa đổi, có thêm một yêu cầu về lời giải mà cặp đầu tiên trong danh sách A và B phải là cặp đầu tiên trong lời giải. Cụ thể hơn, một bài toán MPCP có hai danh sách A = w 1 , w 2, , w k và B = x 1 , x 2, …, x k , và một lời giải là một danh sách gồm 0 hoặc nhiều số i 1 , i 2 , … i m mà: Chú ý rằng cặp (w 1 , x 1 ) là bắt buộc để tại vị trí bắt đầu của hai chuỗi, ngay cả chỉ số 1 không được đề cập phía trước danh sách là lời giải. Không giống như PCP mà lời giải phải có tối thiểu một số nguyên trong danh sách lời giải, trong MPCP, danh sách rỗng có thể là lời giải nếu w 1 = x 1 (nhưng những trường hợp này không được quan tâm nhiều) Các lời giải từng phần Trong ví dụ 9.14, chúng ta đã sử dụng một kỹ thuật để phân tích trường hợp PCP xuất hiện thường xuyên. Chúng ta xét các lời giải từng phần có thể, đó là các dãy chỉ số i 1 , i 2 , …, i r mà một trong các w 1 , w 2, , w r và B = x 1 , x 2, …, x r là phần tiếp đầu của chuỗi khác cho dù hai chuỗi là không bằng nhau. Chú ý rằng nếu một dãy các số nguyên là lời giải thì mọi phần tiếp đầu là của dãy phải là lời giải từng phần. Vì vậy, tìm hiểu các lời giải từng phần cho phép chúng ta chứng minh các lời giải là có thể. Tuy nhiên, bởi vì PCP là không có lời giải, nên không có giải thuật để tính toán mọi lời giải từng phần. Có thể có vô số các lời giải từng phần, nên không có giới hạn trên về sự khác nhau về chiều dài các chuỗi w 1 , w 2, , w r và B = x 1 , x 2, …, x r , ngay cả khi các lời giải từng phần đưa đến một lời giải. Trang 7 Tiểu luận môn học Lý thuyết tính toán Post’s Correspondence Problem Ví dụ 9.15: Các danh sách trong hình 9.12 có thể xem như một bài toán MPCP. Tuy nhiên, như một bài toán MPCP không có lời giải. Để chứng minh, chúng ta xét mọi lời giải từng phần phải bắt đầu với chỉ số 1, vì vậy, hai chuỗi của lời giải sẽ bắt đầu Số kế tiếp không thể là 2 hoặc 3, vì cả w 2 và w 3 đều bắt đầu với 10 và vì vậy sẽ tạo ra lỗi không khớp tại vị trí thứ 3. Vì vậy, chỉ số kế tiếp phải là 1, tạo ra: Chúng ta có thể chỉ ra cách này một cách không rõ ràng. Chỉ một số 1 khác trong lời giải có thể tranh lỗi, nhưng nếu chúng ta chỉ có thể lấy chỉ số 1, chuỗi B vẫn dài hơn chuỗi B 3 lần và hai chuỗi sẽ không bao giờ bằng nhau. Một bước quan trong việc trình bày PCP không có lời giải là giảm MPCP đến PCP. Sau đây, chúng ta trình bày MPCP không có lời giải bằng cách giảm L u đến MPCP. Tại điểm đó, chúng ta sẽ có một bằng chứng rằng PCP không có lời giải, nếu nó là có thể quyết định, thì chúng ta có thể quyết định MPCP, và L u . Cho trước bài toán MPCP với bảng ký hiệu ∑, chúng ta xây dựng bài toán PCP như sau. Đầu tiên, chúng ta giới thiệu một ký hiệu mới *, trong bài toán PCP, di chuyển giữa mọi ký hiệu trong các chuỗi của một MPCP. Tuy nhiên trong các chuỗi của danh sách A, * theo sau các ký hiệu ∑, và trong danh sách B, * đi trước các ký hiệu của ∑. Một ngoại lệ là một cặp mới dựa trên cặp đầu tiêncủa MPCP; cặp này có thêm * tại bắt đầu của w 1 , vì vậy nó co thể bắt đầu lời giải PCP. Cặp cuối cùng (*,*$) được thêm vào PCP. Cặp này phục vụ như là cặp cuối cùng trong lời giải PCP mà giống như một lời giải của MPCP. Bây giờ chúng ta chuẩn hoá nội dung xây dựng nêu trên. Chúng ta cho trước một MPCP với các danh sách A = w 1 , w 2, , w k và B = x 1 , x 2, …, x k . Chúng ta giã sử rằng * Trang 8 Tiểu luận môn học Lý thuyết tính toán Post’s Correspondence Problem và $ là các ký hiệu không xuất hiện trong ∑của MPCP này. Chúng ta xây dựng một PCP C = y 0 , y 1, , y k+1 và D = z 0 , z 1, …, z k+1 , như sau: 1. Với i = 1,2,…,k, thay y i với w i với với một * sau mỗi ký hiệu của w i , và thay z i với x i với một * trước mỗi ký hiệu của x i . 2. y 0 = y 1 , và z 0 = z 1 . Khi đó, cặp thứ 0 sẽ giống cặp 1, ngoại trừ thêm một ký tự * tại vị trí bắt đầu của chuỗi từ danh sách đầu tiên. Chú ý rằng, cặp thứ 0 sẽ là cặp duy nhất trong PCP trong cả hai chuỗi bắt đầu với cùng ký hiệu, vì vậy mọi lời giải với PCP sẽ phải bắt đầu từ chỉ số 0. 3. y k+1 = $ và z k+1 = *$ Ví dụ 9.16: Giã sử rằng hình 9.12 là một MPCP. Thì PCP được xây dựng từ các bước trên được trình bày trong hình 9.14. Hình 9.14: Xây dựng một PCP từ một MPCP Định lý 9.17: MPCP rút gọn về PCP Chứng minh: Các bước xây dựng ở trên là nội dung chính của việc chứng minh. Đầu tiên, giã sử rằng i 1 , i 2 , …,i m là một lời giải của MPCP với các danh sách A và B. Chúng ta biết w i1 w i2 … w im = x i1 x i2 … x im . Nếu chúng ta thay thế w bởi y và x bởi z, chúng ta sẽ có hai chuỗi gần giống nhau: y 1 y i1 y i2 … y im và z 1 z i1 z i2 … z im . Sự khác nhau Trang 9 Tiểu luận môn học Lý thuyết tính toán Post’s Correspondence Problem đó là chuỗi đầu tiến sẽ thiếu một * tại vị trí đầu tiên, và sẽ thiếu * tại vị trí cuối. Như sau: Tuy nhiên, y 0 = *y 1 và z 0 = z 1 , vậy ta có thể cố định phần khởi tạo * bằng các thay thế chỉ số đầu tiên về 0. Chúng ta sẽ có: Chúng ta có thể quan tâm đến * cuối cùng bằng cách thêm chỉ số k + 1. Vì y k+1 = $ và z k+1 = *$, chúng ta sẽ có: Chúng ta đã biết rằng 0, i 1 ,i 2 , …, i m , k + 1 là một lời giải của PCP. Bây giờ chúng ta chỉ ra sự biến đổi, rằng nếu, một PCP đã xây dựng có một lời giải, thì MPCP ban đầu cũng có một lời giải. Chúng ta thấy rằng một lời giải của PCP phải bắt đầu với chỉ số 0 và kết thúc với chỉ số k + 1, vì chỉ cặp thứ 0 có các chuỗi y 0 và z 0 mà bắt đầu với cùng ký hiệu, và chỉ cặp (k+1) đầu tiên có các chuỗi kết thúc với cùng kỹ hiệu. Vì vậy, lời giải PCP có thể được viết 0, i 1 ,i 2 ,…, i m, k+1. Chúng ta kết luận rằng i 1 ,i 2 ,…,i m là một lời giải của MPCP. Lý do là nếu ta loại bỏ * và $ cuối cùng từ chuỗi y 0 y i1 y i2 … y im y k+1 chúng ta nhận được chuỗi w 1 w i1 w i2 … w im . Nếu chương trình loại bỏ * và $ từ chuỗi z 0 z i1 z i2 … z im z ik+1 chúng ta nhận được x 1 x i1 x i2 … x im . Chúng ta biết rằng Vì vậy: Do đó, một lời giải của PCP cũng ngầm hiểu là lời giải của MPCP. Chúng ta thấy rằng, việc xây dựng được mô tả phần trước của định lý là một giải thuật mà chuyển đổi từ MPCP với một lời giải sang PCP một lời giải, và nó cũng Trang 10 [...]... thể kết luận rằng không có lời giải Vì độ dài của các chuỗi trong danh sách A luôn bằng hoặc nhỏ hơn các chuỗi tương ứng trong danh sách B Do vậy, khi tiếp tục ghép bất kỳ một cặp nào đó tiếp theo lời giải trên, thì đều nhận được độ dài của chuỗi lời giải B lớn hơn chuỗi lời giải A Trang19 Tiểu luận môn học Lý thuyết tính toán Post’s Correspondence Problem KẾT LUẬN Bài toán tương ứng Post ( Post’s Correspondence... Trang15 Tiểu luận môn học Lý thuyết tính toán Post’s Correspondence Problem Tại điểm này, chúng ta sử dụng các cặp từ luật (4) để loại trừ tất cả, ngoại trừ q 3 từ ID Chúng ta cũng cần các cặp từ luật (2) để sao chép các ký hiệu khi cần thiết Phần tiếp theo của lời giải từng phần là: Chỉ với q3 trái trong ID, chúng ta có thể sử dụng cặp (q 3##,#) từ luật (5) để kết thúc lời giải: Định lý 9.19: Bài toán. .. 9.18 Chú ý rằng M chấp nhận đầu vào 01 bởi dãy các di chuyển: Chúng ta thấy dãy các lời giải từng phần mà sử dụng tính toán của M và cuối cùng đưa đến một lời giải Chúng ta phải khởi động với cặp đầu tiên, như được yêu cầu trong mọi lời giải MPCP: Trang14 Tiểu luận môn học Lý thuyết tính toán Post’s Correspondence Problem Cách duy nhất để mở rộng lời giải từng phần là với chuỗi từ danh sách A là phần tiếp... dài hơn chuỗi A Vì vậy, nếu có một lời giải, M phải bắt đầu tại các điểm chuyển vào trạng thái chấp nhận; nghĩa là M chấp nhận w Trang17 Tiểu luận môn học Lý thuyết tính toán Post’s Correspondence Problem BÀI TẬP Bài tập 9.4.1: Hãy cho biết các instance cho sau của bài toán PCP có lời giải hay không a) A =(01,001,10); B =(011,10,00) b) A =(01,001,10); B =(011,01,00) c) A = (ab,a,bc,c); B = (bc,ab,ca,a)... đó Cho M = (Q,∑,Г,δ,q0,B,F) là một TM thoả mản định lý 8.12, và cho w thuộc ∑ * là chuỗi đầu vào Chúng ta xây dựng một instance MPCP như sau Để hiểu sự vận động đằng sau lựa chọn các cặp của chúng ta, nhớ rằng mục đích là với danh sách đầu tiên là một ID đằng sau danh sách thứ hai, trừ khi M chấp nhận Trang11 Tiểu luận môn học Lý thuyết tính toán 1 Post’s Correspondence Problem Cặp đầu tiên là: Cặp... trong ID hiện tại mà cần để tạo ra ID kế tiếp Các thay đổi này - một trạng thái mới, ký hiệu, di chuyển đầu - được phản ánh trong ID được xây dựng tại phần cuối của chuỗi B Trang12 Tiểu luận môn học Lý thuyết tính toán 4 Post’s Correspondence Problem Nếu ID tại cuối của chuỗi B có một trạng thái chấp nhận, thì chúng ta cần cho phép lời giải từng phần trở thành lời giải đầy đủ Chúng ta làm điều này bằng... cuối cùng: để hoàn thành lời giải Phần sau, chúng ta tham khảo 5 loại cặp được tạo ở trên như các cặp từ quy tắc (1) và (2) … Ví dụ 9.18: Chuyển đổi TM Trong đó δ được cho bởi: Trang13 Tiểu luận môn học Lý thuyết tính toán Post’s Correspondence Problem Và chuỗi đầu vào w = 01 của một instance MPCP Để đơn giản, chú ý rằng M không bao giờ ghi a khoảng trống, vậy chúng ta sẽ không bao giờ có B trong một ID... vậy, không tồn tại lời giải b) A =(01,001,10); B =(011,01,00) Lời giải có thể bắt đầu bằng cặp 1 hoặc 2 Giả sử bắt đầu bằng cặp 1, chúng ta có lời giải như sau: A: 01 B: 011 Trang18 Tiểu luận môn học Lý thuyết tính toán Post’s Correspondence Problem Lúc này, lời giải phải có cặp tiếp theo sao cho chuỗi của A phải bắt đầu bằng 1 Chỉ có duy nhất cặp 3 đáp ứng, lời giải trở thành: A: 0110 B: 01100 Tiếp.. .Tiểu luận môn học Lý thuyết tính toán Post’s Correspondence Problem chuyển một MPCP không lời giải sang PCP không lời giải Vì vậy, chứng tỏ có sự rút gọn MPCP thành PCP, điều này khẳng định rằng nếu PCP là có thể quyết định,... và một cuối cùng sử dụng cặp từ luật (5) cho phép chuỗi A đạt đến chuỗi B và đưa ra lời giải Trang16 Tiểu luận môn học Lý thuyết tính toán Post’s Correspondence Problem (Nếu) Chúng ta cần chứng tỏ rằng nếu MPCP có lời giải, chỉ có thể là do M chấp nhận w Đầu tiên, bởi vì chúng ta đang xử lý với MPCP, mọi lời giải phải bắt đầu với cặp đầu tiên, vậy một lời giải từng phần bắt đầu Miễn là không có trạng . 05/2012 Đề tài: POST’S CORESPONDENCE PROBLEMS Tiểu luận môn học Lý thuyết tính toán Post’s Correspondence Problem MỤC LỤC MỤC LỤC 2 LỜI MỞ ĐẦU 3 BÀI TOÁN TƯƠNG ỨNG POST 4 1. Định nghĩa bài toán tương. Trang 19 Tiểu luận môn học Lý thuyết tính toán Post’s Correspondence Problem KẾT LUẬN Bài toán tương ứng Post ( Post’s Correspondence Problem ) là một bài toán không có lời giải kinh điển. Nó là một lý. rút gọn chứng minh tính không có lời giải của bài toán tương ứng Post. Trang 3 Tiểu luận môn học Lý thuyết tính toán Post’s Correspondence Problem BÀI TOÁN TƯƠNG ỨNG POST - Post’s Correspondence

Ngày đăng: 01/02/2015, 00:22

Từ khóa liên quan

Mục lục

Tài liệu cùng người dùng

Tài liệu liên quan