HÀM CỤC BỘ, KẾT HỢP CÁC MÁY TURING, BIẾN TẤU CỦA MÁY TURING và CHƯƠNG TRÌNH RAM CHUẨN, RAM THÔ SƠ TÌM NGHIỆM HỆ PHƯƠNG TRÌNH TUYẾN TÍNH BẬC NHẤT (TIỂU LUẬN LÝ THUYẾT TÍNH TOÁN)

36 920 0
HÀM CỤC BỘ, KẾT HỢP CÁC MÁY TURING,  BIẾN TẤU CỦA MÁY TURING và CHƯƠNG TRÌNH RAM CHUẨN, RAM THÔ SƠ TÌM NGHIỆM HỆ PHƯƠNG TRÌNH TUYẾN TÍNH BẬC NHẤT (TIỂU LUẬN LÝ THUYẾT TÍNH TOÁN)

Đ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

GIỚI THIỆU Khi thiết kế và cài đặt một phần mềm tin học cho một vấn đề nào đó, ta cần phải đưa ra phương pháp giải quyết mà thực chất đó là thuật toán giải quyết vấn đề này. Rõ ràng rằng, nếu không tìm được một phương pháp giải quyết thì không thể lập trình được. Chính vì thế, thuật toán là khái niệm nền tảng của hầu hết các lĩnh vực của tin học. Ta có thể hiểu khái niệm thuật toán như sau. Nếu cho trước một bài toán thì một cách giải bài toán được phân định ra thành một số hữu hạn bước, có kết thúc cuối cùng và đạt được kết quả mong muốn gọi là thuật toán. Về mặt lịch sử, trong những năm 30 của thế kỷ trước, khi khoa học và công nghệ phát triển, nhân loại đã nêu ra nhiều bài toán mà không tìm thấy lời giải. Có nghĩa là không tìm được thuật toán để giải chúng. Người ta đã phải tìm cách định nghĩa chính xác khái niệm thuật toán. Năm 1936 A. Turing đã đưa ra một công cụ rất tốt để mô tả thuật toán mà ngày nay người ta gọi là máy Turing. Để ghi nhớ công lao này, Hội Tin học Mỹ (ACM) đã đặt ra giải thưởng Turing trong tin học. Cho đến nay, giải thưởng Turing là giải thưởng tin học lớn nhất thế giới. Tiếp theo Turing, một số nhà khoa học khác đã đưa ra các công cụ chính xác hoá khái niệm thuật toán. Đó là các khái niệm hàm đệ quy, thuật toán Marcop, văn phạm sinh của N. Chomsky. Những khái niệm này là cơ sở phát triển của việc nghiên cứu và ứng dụng thuật toán. Mặt khác chính nhờ các khái niệm này, người ta cũng xác định được những bài toán không thể giải được bằng thuật toán. A. Turing đã đề xuất khái niệm máy Turing nhằm chính xác hoá khái niệm thuật toán. Thực tế đã chứng tỏ rằng máy Turing là một công cụ rất tốt để mô tả thuật toán. Trải qua nhiều thập niên, lý thuyết về máy Turing đã phát triển không ngừng bởi sự đóng góp công sức của nhiều nhà khoa học, trong đó có những công trình nền tảng của Hartmanis, Lewis, Stearns, Minsky, Blum, Hopcroft, Ullman. Thực chất, máy Turing là một mô hình máy. Nó phân rã toàn bộ quá trình hoạt động ra thành các bước thao tác rất đơn giản. Bản thân máy Turing là một mô hình khái quát và đơn giản có thể mô hình hoá một quá trình tính toán bất kỳ. Máy Turing có thể xem là một máy với bộ nhớ ngoài có dung lượng được xem như vô hạn. Trong bộ nhớ ngoài, các giá trị được bố trí sao cho có thể truy cập, đọc và sửa đổi được. Ta có thể xem máy Turing như là một máy đoán nhận một ngôn ngữ gọi là ngôn ngữ đếm được đệ quy. Đồng thời được sử dụng để mô tả một lớp hàm quan trọng, gọi là các hàm có thể tính được. Chương này cũng mô tả một máy Turing phổ dụng mà nó có thể bắt chước hoạt động của tất cả các máy Turing khác. Từ đó ta đi đến khái niệm bài toán không giải được bằng thuật toán. MỤC LỤC CHƯƠNG 1: LÝ THUYẾT MÁY TURING 3 I. Mô hình máy Turing 3 I.1. Mô tả TM 3 I.2. Định nghĩa 4 II. Hàm cục bộ của máy Turing 6 III. Kết hợp các máy Turing 10 IV. Biến tấu của máy Turing: Multitape TMs 15 CHƯƠNG 2: BÀI TẬP 19

BỘ GIÁO DỤC & ĐÀO TẠO ĐẠI HỌC ĐÀ NẴNG  - TIỂU LUẬN MÔN HỌC Đề tài: HÀM CỤC BỘ, KẾT HỢP CÁC MÁY TURING, BIẾN TẤU CỦA MÁY TURING CHƯƠNG TRÌNH RAM CHUẨN, RAM THƠ SƠ TÌM NGHIỆM HỆ PHƯƠNG TRÌNH TUYẾN TÍNH BẬC NHẤT Giáo viên hướng dẫn: PGS.TS Phan Huy Khánh Nhóm Học viên: Nguyễn Khánh Nguyễn Phong Lương Khánh Tý Phạm Thị Trinh Lớp: Khoa học máy tính - K12 Đà Nẵng, tháng 05 năm 2010 GIỚI THIỆU Khi thiết kế cài đặt phần mềm tin học cho vấn đề đó, ta cần phải đưa phương pháp giải mà thực chất thuật tốn giải vấn đề Rõ ràng rằng, khơng tìm phương pháp giải khơng thể lập trình Chính thế, thuật tốn khái niệm tảng hầu hết lĩnh vực tin học Ta hiểu khái niệm thuật tốn sau Nếu cho trước tốn cách giải toán phân định thành số hữu hạn bước, có kết thúc cuối đạt kết mong muốn gọi thuật toán Về mặt lịch sử, năm 30 kỷ trước, khoa học công nghệ phát triển, nhân loại nêu nhiều tốn mà khơng tìm thấy lời giải Có nghĩa khơng tìm thuật tốn để giải chúng Người ta phải tìm cách định nghĩa xác khái niệm thuật tốn Năm 1936 A Turing đưa công cụ tốt để mơ tả thuật tốn mà ngày người ta gọi máy Turing Để ghi nhớ công lao này, Hội Tin học Mỹ (ACM) đặt giải thưởng Turing tin học Cho đến nay, giải thưởng Turing giải thưởng tin học lớn giới Tiếp theo Turing, số nhà khoa học khác đưa cơng cụ xác hố khái niệm thuật tốn Đó khái niệm hàm đệ quy, thuật toán Marcop, văn phạm sinh N Chomsky Những khái niệm sở phát triển việc nghiên cứu ứng dụng thuật tốn Mặt khác nhờ khái niệm này, người ta xác định tốn khơng thể giải thuật tốn A Turing đề xuất khái niệm máy Turing nhằm xác hố khái niệm thuật tốn Thực tế chứng tỏ máy Turing công cụ tốt để mơ tả thuật tốn Trải qua nhiều thập niên, lý thuyết máy Turing phát triển không ngừng đóng góp cơng sức nhiều nhà khoa học, có cơng trình tảng Hartmanis, Lewis, Stearns, Minsky, Blum, Hopcroft, Ullman Thực chất, máy Turing mơ hình máy Nó phân rã tồn q trình hoạt động thành bước thao tác đơn giản Bản thân máy Turing mơ hình khái qt đơn giản mơ hình hố q trình tính tốn Máy Turing xem máy với nhớ ngồi có dung lượng xem vơ hạn Trong nhớ ngồi, giá trị bố trí cho truy cập, đọc sửa đổi Ta xem máy Turing máy đốn nhận ngơn ngữ gọi ngơn ngữ đếm đệ quy Đồng thời sử dụng để mô tả lớp hàm quan trọng, gọi hàm tính Chương mơ tả máy Turing phổ dụng mà bắt chước hoạt động tất máy Turing khác Từ ta đến khái niệm tốn khơng giải thuật toán MỤC LỤC CHƯƠNG 1: LÝ THUYẾT MÁY TURING .4 a Mơ hình máy Turing I.1 Mô tả TM I.2 Định nghĩa b Hàm cục máy Turing .7 c Kết hợp máy Turing 11 13 d Biến tấu máy Turing: Multitape TMs 15 CHƯƠNG 2: BÀI TẬP .19 Lớp Khoa Học Máy Tính- K12 Tiểu luận mơn học: Lý Thuyết Tính Tốn CHƯƠNG 1: LÝ THUYẾT MÁY TURING a Mơ hình máy Turing Một mơ hình hình thức cho thủ tục hiệu có đặc tính cụ thể Đầu tiên, thủ tục mô tả cách hữu hạn Tiếp đó, thủ tục phân thành số bước độc lập, mà bước thực thi vấn đề Nguyên tắc hình thức mơ hình máy Turing Máy Turing có băng nhớ, dùng để ghi loại liệu (dữ liệu nhập, liệu dùng cho việc điều khiển tương tự chương trình máy tính kết trung gian làm việc) Với điều khiển chứa số hữu hạn trạng thái, TM ôtômát khác, làm việc theo lối "ngắt quãng" theo bước chuyển I.1 Mô tả TM Máy Turing có nhiều dạng đồng khả năng, nghĩa có nhiều mơ hình định nghĩa khác cho máy Turing tất chúng tương đương Song, nói chung mơ hình máy Turing gồm : − Một điều khiển hữu hạn − Một băng chia thành ô − Một đầu đọc-viết, lần đọc duyệt qua ô băng để đọc hay viết ký hiệu Mỗi giữ ký hiệu số hữu hạn ký hiệu băng (các ký hiệu phép viết băng) Khởi đầu xem n ô bên trái băng (n ≥ 0) giữ chuỗi nhập (input), chuỗi nhập chuỗi ký tự chọn từ tập hợp tập hợp ký hiệu băng, tập hợp gọi tập ký hiệu nhập Phần lại băng coi có vơ hạn khoảng trống, ký hiệu B (Blank), B ký hiệu đặc biệt băng ký hiệu nhập a1 a2 a3 … B B B … Bộ điều khiển Mô tả TM Mỗi bước chuyển máy Turing, phụ thuộc vào ký hiệu đầu đọc đọc băng trạng thái điều khiển, máy thực bước sau : 1) Chuyển trạng thái Nhóm 6- Lớp Khoa Học Máy Tính- K12 Tiểu luận mơn học: Lý Thuyết Tính Tốn 2) In ký hiệu băng ô duyệt (nghĩa thay ký hiệu đọc băng ký hiệu đó) 3) Dịch chuyển đầu đọc-viết (sang trái (L), sang phải (R) đứng yên(∅)) I.2 Định nghĩa Một cách hình thức, ta định nghĩa máy Turing (TM) sau :  Định nghĩa: TM hệ thống M (Q, Σ, Γ, δ, q0, B, F), đó: − Q : tập hữu hạn trạng thái − Σ: ký hiệu nhập − Γ : tập hữu hạn ký tự phép viết băng − B : ký hiệu thuộc Γ dùng khoảng trống băng (Blank) − δ : hàm chuyển ánh xạ : Q × Γ → Q × Γ × {L, R, ∅} (δ khơng xác định với vài đối số) − q0∈ Q trạng thái bắt đầu − F ⊆ Q tập trạng thái kết thúc Một hình thái máy Turing M cho α 1qα2 q trạng thái hành M; α1α2∈ Γ* nội dung băng tính từ đầu băng ký hiệu khác Blank bên phải băng Giả sử Q Γ rời nhau: đầu đọc đọc ký hiệu bên trái α2 α2 = ε đầu đọc đọc Blank  Hàm chuyển Ta định nghĩa phép chuyển trạng thái TM sau: Đặt X1X2 Xi-1 q Xi Xn ID Giả sử δ(q, Xi) = (p, Y, L), đó: − Nếu i - = n Xi B − Nếu i =1 khơng có ID, nghĩa đầu đọc không phép vượt qua cận trái băng − Nếu i > ta viết : X1X2 …Xi-1…Xn ├ M X1X2….Xi-2pX i-1 YXi+1 …Xn Tương tự δ(q, Xi) = (p, Y, R) ta viết: X1X2 …Xi-1…Xn ├ M X1X2….Xi-1YpXi+1 …Xn Tương tự δ(q, Xi) = (p, Y, ∅) ta viết: X1X2 …Xi-1…Xn ├ M X1X2….Xi-1pYXi+1 …Xn Chú ý rằng: i - = n chuỗi X i Xn rỗng vế phải dài vế trái, nghĩa TM M mở rộng chuỗi ký hiệu băng Nhóm 6- Lớp Khoa Học Máy Tính- K12 Tiểu luận mơn học: Lý Thuyết Tính Tốn Nếu hai ID quan hệ ⊢M ta nói ID thứ hai kết ID thứ lần chuyển, bước áp dụng hàm chuyển (hoặc nói thứ hai thu từ thứ lần chuyển) Nếu ID thu từ ID khác số lần chuyển (có thể 0) ta ký hiệu quan hệ ⊢M Ta bỏ ký hiệu M cách viết quan hệ khơng có nhầm lẫn *  Ngôn ngữ chấp nhận TM Ký hiệu L(M): tập hợp chuỗi Γ * nguyên nhân đưa TM M vào trạng thái kết thúc thực việc thay từ bên trái ký hiệu băng M với trạng thái bắt đầu q Một cách hình thức, ta định nghĩa tập hợp ngôn ngữ chấp nhận TM M (Q, Σ, Γ, δ, q0, B, F) tập L(M) = { w| w ∈ Γ* q0 w ⊢M*α1pα2 với p ∈ F, α1α2∈ Γ* } Cho TM nhận diện ngôn ngữ L cho từ L vào TM xem TM có chấp nhận từ hay khơng TM dừng vào trạng thái kết thúc ∈ F (khơng có phép chuyển kế tiếp) từ chấp nhận, TM không chấp nhận từ TM ngừng trạng thái ∉ F chạy mà khơng dừng lại Ví dụ: Thiết kế TM chấp nhận ngôn ngữ L = { 0n1n | n ≥ 1} Khởi đầu TM chứa 01 bên trái băng sau vơ hạn khoảng trống Blank TM lặp lại trình sau − M thay bên trái X chuyển sang phải tới trái nhất, TM thay Y dịch chuyển bên trái gặp X phải chuyển sang phải (tới trái nhất) tiếp tục lặp chu trình − Nếu dịch chuyển sang phải để tìm mà TM gặp Blank TM dừng khơng chấp nhận input Tương tự, TM thay hết X kiểm tra băng TM dừng khơng chấp nhận input − TM chấp nhận input khơng cịn ký hiệu băng Đặt TM M (Q, ∑, Γ, δ, q , B, F) với thành phần : Q = {q0, q1, q2, q3, q4}; ∑= {0, 1}; Γ = {0, 1, X, Y, B} F = {q 4} Ta hình dung trạng thái câu lệnh nhóm câu lệnh chương trình Trạng thái q trạng thái khởi đầu làm cho ký hiệu bên trái thay X Trạng thái q 1được dùng để tiến sang phải bỏ qua số Y để tìm bên trái Nếu M tìm thấy thay Y vào trạng thái q2 Trạng thái q2đưa M tiến sang trái X vào trạng thái q 0, dịch chuyển sang phải để tới bên trái tiếp tục chu trình Khi M tiến sang phải trạng thái q 1, B X tìm thấy trước input bị loại bỏ (khơng chấp nhận) có chứa nhiều ký hiệu input dạng *1* Trạng thái q0 cịn có vai trị khác Nếu trạng thái q tìm thấy X bên phải sau Y số xét hết, trạng thái bắt đầu chu trình q0 khơng tìm thấy ký hiệu để thay thành X mà gặp Y TM vào trạng Nhóm 6- Lớp Khoa Học Máy Tính- K12 Tiểu luận mơn học: Lý Thuyết Tính Tốn thái q3 duyệt qua Y để kiểm tra có hay khơng có ký hiệu cịn lại Nếu theo sau Y B, nghĩa băng nhập không cịn ký hiệu TM vào q4 (trạng thái kết thúc) để chấp nhận input Ngược lại input bị loại bỏ Hàm chuyển δ cho bảng sau : δ Ký hiệu Trạng thái X Y B q0 (q1, X, R) - - (q3, Y, R) - q1 (q1, 0, R) (q2, Y, L) - (q1, Y, R) - Q2 (q2, 0, L) - (q0, X, R) (q2, Y, L) - Q3 - - - (q3, Y, R) (q4, B, ∅) - - Q4 Các phép chuyển hình thái TM M input 0011: q 0011 Xq 011 ⊢ X0q 11 ⊢ X q 0Y1 ⊢ q X0Y1 ⊢ X q 0Y1 ⊢ XXq Y1 ⊢ XXY 1 2 q ⊢ XX q YY ⊢ X q XYY ⊢ XX q YY ⊢ XXYq Y ⊢ XXYYq ⊢ XXYYq Nhận xét: Như vậy, ta dễ dàng thấy, TM khác với ôtômát hữu hạn chỗ đầu đọc-viết dịch chuyển tự băng, khơng đọc mà cịn có khả viết băng vùng làm việc cịn mở rộng theo yêu cầu phát sinh TM khác với ơtơmát đẩy xuống chỗ khơng dùng thêm Stack giữ nhớ mà viết ký hiệu cần ghi nhớ băng b 2 3 Hàm cục máy Turing Bất kỳ chương trình máy tính tạo xâu xâu vào hợp hàm tính tốn xâu khác Giống máy Turing T với bảng chữ vào ∑ tính tốn hàm ƒ miền ∑ * , xâu x nằm miền ƒ, T khởi tạo cấu hình tương ứng xâu x , T dừng xuất xâu ƒ( x ) băng TMs mục 9.1, ngôn ngữ chấp nhận, việc đơn giản chúng dừng chấp nhận trạng thái dừng lỗi thực thi, phụ thuộc xâu vào mà ngôn ngữ chấp nhận Nội dung băng cuối phép tính khơng quan trọng Trường hợp hàm tính tốn ƒ máy TM, nhấn mạnh xâu xâu vào miền ƒ Chúng đọc xâu vào khơng thuộc miền ƒ, kết tính tốn khơng liên quan Tuy nhiên, TM tính tốn xác hàm ƒ, khơng phải hàm khác miền lớn Vì vậy, chúng xác định xâu vào x không thuộc miền ƒ, TM không chấp nhận xâu vào x Theo tiến trình tính tốn hàm, máy TM chấp nhận ngẫu nhiên ngơn ngữ, miền hàm Nó tiện ích thay đổi nhỏ chương sau, nói hàm cục ∑ *, hàm ∑ * Vấn đề lớn môi trường, không loại trừ vấn đề khác Hàm cục ƒ ∑ * khơng xác định; xảy trường hợp ƒ xác định đâu ∑ * , quan trọng xem hàm ƒ hàm Nhóm 6- Lớp Khoa Học Máy Tính- K12 Tiểu luận mơn học: Lý Thuyết Tính Tốn tổng qt Để máy Turing tính tốn ƒ, thích hợp với giá trị ƒ xâu với bảng chữ máy ATM quản lý giá trị hàm Nếu xâu vào biểu diễn k- băng (x1, x2, …., xk) ∈ ( ∑ * )k, yêu cầu quy tắc thay đổi không đáng kể TM, khởi tạo băng từ chứa k xâu, tách rời ký tự trống Định nghĩa 9.3: Hàm máy TM Máy Turing T = (Q, ∑ , Γ , q0, δ ), lấy ƒ hàm cục ∑ * với giá trị * Γ , với x ∈ ∑ * , ƒ xác định (q0, ∆ x) ├*T (ha, ∆ ƒ(x)) Nếu hàm ƒ cục ( ∑ *)k có giá trị Γ *, T tính ƒ với k- băng (x1, x2, …, xk), ƒ xác định (q, ∆ x1 ∆ x2 ∆ … ∆ xk) ├*T (h, ∆ ƒ(x1, x2,…, xk)) Với bảng chữ ∑ ∑ 2, k nguyên, hàm cục ƒ: ( ∑1 )k → ∑2 khả tính tốn máy Turing, tính tốn đơn giản máy Turing thực tính tốn ƒ Điều khơng với máy Turing tính tốn với hàm Ví dụ: Nếu T tính tốn hàm ƒ: ( ∑ *)2 → Γ * , sau T tính tốn ƒ1: ∑ * → Γ * xác định ƒ1(x) = ƒ(x, Λ ) Tuy nhiên, với k C ⊆ Γ *, TM tính tốn hàm với giá trị k Hàm có đối số tính tốn máy Turing, lần chúng lựa chọn cách để biểu diễn số cho xâu chữ, hạn chế số tự nhiên, chúng sử dụng “đơn phân ” (unary) để biểu diễn, số tự nhiên n biểu diễn xâu n = 11…1 Định nghĩa 9.4: Tính tốn với hàm số tự nhiên Lấy máy Turing T = (Q, {1}, Γ , q0, δ ), hàm cục ƒ N , tập hợp số tự nhiên, T tính ƒ với n, ƒ xác định (q0, ∆ 1n) ├*T (ha, ∆ 1f(n)) Và với số khác số tự nhiên n, T lỗi chấp nhận xâu vào n Tương tự, ƒ hàm cục từ N k đến N , T tính ƒ k- băng (n1, n2,…,nk), ƒ xác định (q0, ∆ 1n1) ├*T (ha, ∆ 1f(n)) Và cho số tự nhiên n, T lỗi chấp nhận chuỗi n Tương tự, ƒ hàm cục N k đến N , T tính ƒ với k- băng (n1, n2, …, nk), ƒ xác định (q, ∆ 1n1 ∆ 1n2 ∆ … ∆ 1nk) ├*T (ha, ∆ 1f(n1, n2,…,nk)) T lỗi chấp nhận xâu vào đầu vào k- băng, nơi mà ƒ khơng xác định Ví dụ 9.4: Đảo xâu ww R Hàm đảo: rev: {a, b}*  → {a, b}* Máy TM giới thiệu hình 9.6 để tính hàm đảo xâu vào cách dịch chuyển từ cuối lên trước, bước đổi ký tự nhảy đến ký tự trước Để tiến đến rãnh xa hơn, ký tự thay chữ hoa Vượt qua trạng thái ban đầu q1, gặp ký tự chữ thường thay ký tự chữ hoa ghi nhớ dịch chuyển đầu đọc sang phải Khi máy TM tiến đến q q5, gặp ký tự hoa ghi nhớ ký tự hoa dịch đầu đọc sang trái Đầu đọc dịch chuyển sang trái, bắt gặp chữ hoa đầu tiên, thay đổi dịch chuyển sang phải Với xâu có độ dài chẳn, TM * Nhóm 6- Lớp Khoa Học Máy Tính- K12 * Tiểu luận mơn học: Lý Thuyết Tính Tốn quay q1, q8 máy kêt thúc tiến trình Trường hợp xâu có độ dài lẻ, trạng thái q q5, gặp ký tự thường dịch trái Đầu đọc dịch chuyển đến cuối xâu, kết thúc dịch trái, đổi chữ hoa thành chữ thường A/A, R B/A, R ∆/∆ ,L a/a,R b/b,R A/A,L B/B,L A/A,R B/A,R a/A,R ∆/∆, R q q A/A,R B/A,R ∆/∆ ,R h b/B,R a ∆/∆ ,S q q a/a,L A/a,L B/b,L a/a,R b/b,R a/A,L q q ∆/∆ ,L b/A,L q a/a,L b/b,L q A/A,R B/B,R a/B,L A/A,R q B/B,R q ∆/∆ ,L b/B,L A/A,L B/B,L b/b,L A/B, R B/B, R Hình 9.6 Đảo xâu Máy TM hình 9.6 với độ dài lẻ abb độ dài chẳn baba (q0, ∆abb ) ├ (q1, ∆ abb )├ (q2, ∆Abb )├ (q2, ∆Abb ) ├ (q2, ∆Abb∆ )├ (q3, ∆Abb )├ (q7, ∆AbA ) ├ (q7, ∆ AbA )├ (q1, ∆BbA )├ (q4, ∆BB A ) ├ (q5, ∆B B A )├ (q8, ∆BB A )├ (q8, ∆BBA∆ ) ├ (q9, ∆BB A )├ (q9, ∆B Ba )├ (q9, ∆ Bba ) ├ (q9, ∆bba )├ (ha, ∆bba ) (q0, ∆baba )├ (q1, ∆baba ) ├ (q4, ∆B aba )├ (q4, ∆Baba ) ├ (q 4, ∆Baba )├ (q4, ∆Baba ∆ )├ (q5, ∆Baba ) ├ (q6, ∆BabB )├ (q6, ∆B abaB )├ (q6, ∆ Baba B ) ├ (q1, ∆AabB )├ (q2, ∆AAbB )├ (q2, ∆AAbB ) ├ (q 3, ∆AA bB )├ (q7, ∆A AAB )├ (q1, ∆ABAB ) ├ (q 8, ∆ABAB )├ (q8, ∆ABAB ∆ )├ (q9, ∆ABA B ) ├* (q9, ∆abab )├ (ha, ∆abab ) 1/1,R /∆, L q ∆/∆, R , ∆/∆, L Nhóm 6- Lớp Khoa Học Máy Tính- K12 ∆/∆, R ∆ / 1, L h a Tiểu luận môn học: Lý Thuyết Tính Tốn /∆, L ∆/∆, S Hình 9.7 Máy Turing tính n chia dư cho Ví dụ 9.5: n chia dư cho Phép chia dư n cho tính tốn dịch chuyển từ cuối xâu vào, dịch chuyển từ phải sang trái, gặp xố, nhảy đến khác Những tính tốn máy TM mơ tả hình 9.7 Ví dụ 9.6 : Hàm đặc trưng cho tập hợp Bất kỳ ngôn ngữ L ⊆ ∑ *Hàm đặc trưng L hàm χ L : ∑ * → {0, 1} xác định công thức:  if x ∈ L χ L(x) =  0 otherwise Tính tốn hàm χ L tương tự xác nhận ngơn ngữ L; thay phân biệt xâu thuộc L hay xâu không thuộc L xác nhận hay không xác nhận, TM chấp nhận xâu vào phân biệt kiểu kết thúc xâu dạng (h a, ∆1 ) trường hợp dạng (ha, ∆0 ) trường hợp khác Nếu TM T tính tốn χ L, chúng chứa xác nhận L T thay đổi để xuất 0, thay hr Thỉnh thoảng có cách khác, ví dụ đơn giản ngôn ngữ L giống {a, b} (ví dụ 9.2) Máy TM xác nhận L biểu diễn hình 9.2 máy TM tính tốn χ L biểu diễn hình 9.8 Như thấy mục 9.1, TM xác nhận ngơn ngữ L dịch chuyển hay không hay lặp vô a/a,R a/∆, L b/∆, L b/b,R ∆/ ∆, L b/∆, L q ∆/∆, L a/∆, R a/∆, L ∆/∆, L Nhóm 6- Lớp Khoa Học Máy Tính- K12 10 h a Tiểu luận mơn học: Lý Thuyết Tính Toán {Nhap du lieu vao} write('Nhap a='); read(R1); {R1

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

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

Tài liệu liên quan