2012-03-10 45 views
5

Giả sử tồn tại máy Turing M1, M2, M3, các ngôn ngữ mà chúng nhận dạng là L (M1), L (M2) và L (M3) tương ứng. Ngôn ngữ sau L = {(M1, M2, M3): L (M1), L (M2) và L (M3) không bằng nhau} Ngôn ngữ có thể giải quyết được không? Đệ quy enumerable? Hay không?Tính khả dụng và tính đệ quy

+0

Có thể di chuyển đến khoa học máy tính lý thuyết? Đây có phải là bài tập về nhà không? –

+0

Đây có phải là 'hai vấn đề tương đương với automatons' không? NP-cứng? –

+0

Tôi nghĩ rằng vấn đề Tương đương Máy Turing nói rằng các ngôn ngữ phải bằng nhau? Trong trường hợp đó là không thể giải quyết được. Trong câu hỏi này các ngôn ngữ không bằng nhau. –

Trả lời

2

Hãy M M i, tôi là một cỗ máy mô phỏng chạy một số máy khác M i trên đầu vào I và trả true nếu M i cuối cùng dừng trên I, và vòng lặp mãi mãi khác.

Cho phép M là một máy tầm thường chỉ lặp lại mãi mãi.

Sau đó, (M M i, tôi, M , M ) là trong L iff M i tạm dừng trên đầu vào I.

Điều này làm giảm khả năng decidability của vấn đề tạm dừng để decidability của L, do đó, L là undecidable.

=============

Tiếp theo, hãy chứng minh rằng L không đệ quy đếm được do mâu thuẫn.

Giả sử rằng L là đệ quy đếm được, do đó tồn tại một máy Turing M ví dụ rằng nếu M i, M j, và M k ba máy Turing có ngôn ngữ tương ứng không bằng nhau, sau đó M sẽ cuối cùng nhổ ra ba (M i, M j, M k).

Bây giờ hãy xem xét một sửa đổi đối với M, được gọi là M ', được xác định bằng cách lấy M và thêm giá trị (M, M', M ') vào L (M'). Câu hỏi quan trọng cần đặt ra là nếu (M, M ', M') nằm trong L? Vâng, nếu (M, M ', M') là trong L, thì L (M) không được bằng L (M ') (nếu không nó sẽ không phù hợp với định nghĩa trong L), vì vậy L (M) không được bao gồm (M, M ', M') (vì đó là sửa đổi duy nhất chúng tôi đã thực hiện). Ngược lại, nếu (M, M ', M') không có trong L, thì L (M)! = L (M ') (vì chúng ta đã thêm tripe đó vào L (M')), do đó, nó phải nằm trong L (M), bởi vì các ngôn ngữ không bằng nhau.

Vì vậy, chúng tôi đã đạt đến một nghịch lý ngụ ý rằng M không thể tồn tại, và do đó L không đệ quy đếm được.

+0

Huh ... thú vị. Bạn có nói rằng ngôn ngữ này L được đệ quy liệt kê? –

+0

Tôi đã cập nhật câu trả lời để giải quyết các câu hỏi của đệ quy enumerable. Đây là một vấn đề thực sự thú vị :) –

+0

Oh giải pháp của bạn là rất thú vị, tôi đang học rất nhiều về tính toán đệ quy và decidability.Tôi vui vì bạn đã vui vẻ với nó. Mặc dù vậy, tôi có một câu hỏi, nếu một ngôn ngữ không phải là RE, điều đó không có nghĩa là nó không thể giải quyết được? Hay tôi đang thiếu một cái gì đó? –

Các vấn đề liên quan