TRƯỜNG ĐẠI HỌC ĐỒNG THÁP KHOA CÔNG NGHỆ THÔNG TIN oOo ---BÁO CÁO TIN HỌC LÝ THUYẾT Tên Đề Tài: THIẾT KẾ MÁY TURING CHẤP NHẬN NGÔN NGỮ LG GIẢNG VIÊN HƯỚNG DẪN NHÓM SV THỰC HIỆN NGUYỄN T
Trang 1TRƯỜNG ĐẠI HỌC ĐỒNG THÁP KHOA CÔNG NGHỆ THÔNG TIN
oOo
-BÁO CÁO TIN HỌC LÝ THUYẾT
Tên Đề Tài:
THIẾT KẾ MÁY TURING
CHẤP NHẬN NGÔN NGỮ L(G)
GIẢNG VIÊN HƯỚNG DẪN NHÓM SV THỰC HIỆN
NGUYỄN THỊ THÙY LINH NGUYỄN THỊ THU THỦY
NGUYỄN THÀNH PHƯƠNG
LỚP : TIN2006
1
ĐỒNG THÁP 4/2010
Trang 2MÁY TURING CHẤP NHẬN NGÔN NGỮ L(G) = { 0n1n | n ≥ 1}
1.Giới thiệu bài toán
Khi cho một chuổi các bit 0 1 TM xét xem chuổi đã cho có thuộc ngôn ngữ L(G) không
2 Phương pháp giải quyết vấn đề
Input: 0n1n
Output:
+ Chấp nhận + Không chấp nhận
Đặt TM M(Σ, Q, Γ, ∂, q0, B, F) với các thành phần:
Σ={0,1}; Q = {q1, q2, q3, q4}; Γ = {0 ,1, X, Y, B} và F = {q4}
Trạng thái q0 là trạng thái khởi đầu dùng để tìm 0 và Y:
+ Nếu gặp 0 chuyển qua q1, ghi X rồi dịch phải + Nếu gặp Y chuyển qua q3 , ghi Y rồi dịch phải
Trạng thái q1 dùng để tìm 1:
+ Nếu gặp 1 thì chuyển qua q2, ghi Y rồi dịch trái + Nếu gặp 0 thì giữ nguyên trạng thái q1 ghi 0 rồi dịch phải + Nếu gặp Y giữ nguyên trạng thái q1 , ghi Y rồi dịch phải
Trạng thái q2 dùng để tìm X:
+ Nếu gặp X chuyển qua q0 rồi dịch phải + Nếu gặp 0 thì giữ nguyên trạng thái q2, ghi 0 rồi dịch trái + Nếu gặp Y giữ nguyên trạng thái q2 ghi Y rồi dịch trái
Trạng thái q3 dùng để tìm khoảng trắng:
+ Nếu gặp B chuyển qua q4 , ghi B rồi dừng
+ Nếu gặp Y giữ nguyên trạng thái q3 ghi Y rồi dịch phải
Kết thúc ở trạng thái q4
3.Chạy DEMO
Ví dụ 1:
Input: 0011 Output: chấp nhận
Các phép chuyển hình thái của TM M trên input 0011:
q00011B | - Xq1011B | - X0q111B | - Xq20Y1B | - q2X0Y1B | - Xq00Y1B | - XXq1Y1B | - XXYq11B | - XXq2YYB | - Xq2XYYB | - XXq0YYB | - XXYq3YB | - XXYYq3B | - XXYYq4B
Trang 3Ví dụ 2 :
Input: 00011111 Output: không chấp nhận
Các phép chuyển hình thái của TM M trên input 00011111:
q000011111B | - Xq10011111B | - X0q1011111B | - X00q111111B | -
X0q20Y1111B | - Xq200Y1111B | - q2X00Y1111B | - Xq000Y1111B | -
XXq10Y1111B | - XX0q1Y1111B | - XX0Yq11111B | - XX0q2YY111B | - XXq20YY111B | - Xq2X0YY111B | - XXq00YY111B | - XXXq1YY111B | - XXXYq1Y111B | - XXXYYq1111B | - XXXYq2YY11B | - XXXq2YYY11B | - XXq2XYYY11B | - XXXq0YYY11B | - XXXYq3YY11B | - XXXYYq3Y11B | - XXXYYYq311B
3
Trang 5MÁY TURING CHẤP NHẬN NGÔN NGỮ L(G) = { 0n12n | n ≥ 1}
1.Giới thiệu bài toán
Khi cho một chuổi các bit 0 1 TM xét xem chuổi đã cho có thuộc ngôn ngữ L(G) không
2 Phương pháp giải quyết vấn đề
Input: 0n12n
Output:
+ Chấp nhận + Không chấp nhận
Đặt TM M(Σ, Q, Γ, ∂, q0, B, F) với các thành phần:
Σ={0,1}; Q = {q1, q2, q3, q4, q5, q6}; Γ = {0 ,1, X, Y,Z, B} và F = {q6}
Trạng thái q0 là trạng thái khởi đầu dùng để tìm 0 và Y
+ Nếu gặp 0 chuyển sang q1, ghi X rồi dịch phải + Nếu găp Y chuyển sang q4, ghi Y rồi dịch phải
Trạng thái q1 dùng để tìm 1
+ Nếu gặp 1 chuyển sang q2 , ghi Y rồi dịch phải + Nếu gặp 0 giữ nguyên q1, ghi 0 rồi dịch phải + Nếu gặp Y giữ nguyên q1, ghi Y rồi dịch phải + Nếu gặp Z giữ nguyen q1, ghi Z rồi dịch phải
Trạng thái q2 dùng để tìm 1
+ Nếu gặp 1 chuyển sang q3, ghi Z rồi dịch trái
Trạng thái q3 dùng để tìm X
+ Nếu gặp X chuyển sang q0, ghi X rồi dịch phải + Nếu gặp 0 giữ nguyên q3, ghi 0 rồi dịch trái + Nếu gặp Y giữ nguyên q3, ghi Y rồi dịch trái + Nếu gặp Z giữ nguyên q3, ghi Z rồi dịch trái
Trạng thái q4 dùng để tìm Z
+ Nếu gặp Z chuyển sang q5, ghi Z và dịch phải
Trạng thái q5 dùng để tìm khoảng trắng
+ Nếu gặp B chuyển qua q6 rồi dừng + Nếu gặp Y giữ nguyên q5, ghi Y rồi dịch phải + Nếu gặp Z giữ nguyên q5, ghi Z rồi dịch phải
Kết thúc ở trạng thái q6
3.Chạy DEMO
Ví dụ 1:
Input: 001111 Output: chấp nhận
Các phép chuyển hình thái của TM M trên input 001111:
q0001111B | - Xq101111B | - X0q11111B | - X0Yq2111B | - X0q3YZ11B | - Xq30YZ11B | - q3X0YZ11B | - Xq00YZ11B | - XXq1YZ11B | - XXYq1Z11B
| - XXYZq111B | - XXYZYq21B | - XXYZq3YZB | - XXYq3ZYZB | -
5
Trang 6XXq3YZYZB | - Xq3XYZYZB | - XXq0YZYZB | - XXYq4ZYZB | -
XXYZq5YZB | - XXYZYq5ZB | - XXYZYZq5B | - XXYZYZq6B
Ví dụ 2 :
Input: 0011111 Output: không chấp nhận Các phép chuyển hình thái của TM M trên input 0011111:
q00011111B | - Xq1011111B | - X0q111111B | - X0Yq21111B | -
X0q3YZ111B | - Xq30YZ111B | - q3X0YZ111B | - Xq00YZ111B | - XXq1YZ111B | - XXYq1Z111B | - XXYZq1111B | - XXYZYq211B | - XXYZq3YZ1B | - XXYq3ZYZ1B | - XXq3YZYZ1B | - Xq3XYZYZ1B | - XXq0YZYZ1B | - XXYq4ZYZ1B | - XXYZq5YZ1B | - XXYZYq5Z1B | - XXYZYZq51B