Là một máy tự động đẩy xuống với hai ngăn xếp tương đương với một máy turing?


41

Trong câu trả lời này, nó được đề cập

Một ngôn ngữ thông thường có thể được nhận ra bởi một máy tự động hữu hạn. Một ngôn ngữ không ngữ cảnh yêu cầu một ngăn xếp và một ngôn ngữ nhạy cảm ngữ cảnh đòi hỏi hai ngăn xếp (tương đương với việc nói nó yêu cầu một máy Turing đầy đủ) .

Tôi muốn biết về sự thật của phần táo bạo ở trên. Có thật trong thực tế hay không? Một cách tốt để đạt được một câu trả lời cho điều này là gì?


Có hai yêu cầu trong văn bản in đậm nhưng tiêu đề câu hỏi của bạn cho thấy rằng bạn chỉ quan tâm đến một trong số đó.
Tyson Williams

@TysonWilliams: có, vậy?
Lazer

Điều này thật khó hiểu. Tôi không biết tập hợp con nào trong hai yêu cầu mà bạn muốn biện minh.
Tyson Williams

Đối với một trong in đậm , như được đề cập trong câu hỏi.
Lazer

2
@Lazer: văn bản in đậm chứa hai câu lệnh ("CSL yêu cầu hai ngăn xếp", "hai ngăn xếp tương đương với TM"). Vì CSL là một tập hợp con đúng của RE, chỉ một cái có thể đúng.
Raphael

Câu trả lời:


38

Hai bit cho câu trả lời này;

Thứ nhất, lớp ngôn ngữ được Turing Machines nhận ra không nhạy cảm với ngữ cảnh , nó có thể liệt kê đệ quy (độ nhạy ngữ cảnh là lớp ngôn ngữ bạn có được từ automata ràng buộc tuyến tính ).

Phần thứ hai, giả sử chúng ta điều chỉnh câu hỏi, là có, một chiếc máy hai ngăn có sức mạnh ngang với TM. Thật đơn giản để giả định rằng chúng tôi đang sử dụng mô hình TM có băng chỉ vô hạn theo một hướng (mặc dù cả hai hướng không khó hơn nhiều và tương đương).

Để xem sự tương đương, chỉ cần nghĩ về ngăn xếp đầu tiên là nội dung của băng ở bên trái của vị trí hiện tại và thứ hai là nội dung ở bên phải. Bạn bắt đầu như vậy:

  • Đẩy các điểm đánh dấu "dưới cùng của ngăn xếp" bình thường trên cả hai ngăn xếp.
  • Đẩy đầu vào sang ngăn xếp bên trái (sử dụng tính không xác định để "đoán" kết thúc của đầu vào).
  • Di chuyển mọi thứ vào ngăn xếp bên phải (để giữ mọi thứ theo đúng thứ tự).

Bây giờ bạn có thể bỏ qua đầu vào và làm mọi thứ trên nội dung của ngăn xếp (mô phỏng băng). Bạn bật để đọc và ấn để viết (vì vậy bạn có thể thay đổi "băng" bằng cách đẩy một cái gì đó khác với những gì bạn đọc). Sau đó, chúng ta có thể mô phỏng TM bằng cách bật từ ngăn xếp bên phải và đẩy sang trái để di chuyển sang phải và ngược lại để di chuyển sang trái. Nếu chúng tôi chạm vào đáy của ngăn xếp bên trái, chúng tôi sẽ hành xử tương ứng (tạm dừng và từ chối hoặc ở lại nơi bạn, tùy thuộc vào mô hình), nếu chúng tôi chạm vào đáy của ngăn xếp bên phải, chúng tôi chỉ cần đẩy một biểu tượng trống sang bên trái.

Đối với một bằng chứng chính thức đầy đủ, xem một câu trả lời cho một câu hỏi khác .

Mối quan hệ theo cách khác thậm chí còn rõ ràng hơn, tức là chúng ta có thể mô phỏng một máy PDA hai ngăn với một TM.

Khi sử dụng trang web của chúng tôi, bạn xác nhận rằng bạn đã đọc và hiểu Chính sách cookieChính sách bảo mật của chúng tôi.
Licensed under cc by-sa 3.0 with attribution required.