Là bộ máy Turing dừng lại tối đa 50 bước trên tất cả các đầu vào, có thể quyết định không?


19

Hãy để F={M:M is a TM which stops for every input in at most 50 steps} . Tôi cần phải quyết định xem F có thể quyết định hay đệ quy được không. Tôi nghĩ đó là quyết định, nhưng tôi không biết làm thế nào để chứng minh điều đó.

Suy nghĩ của tôi

Phần "50 bước" này ngay lập tức biến ký hiệu R cho tôi. Nếu nó là cho đầu vào cụ thể, nó sẽ được quyết định. Tuy nhiên, đây là cho mọi đầu vào. Kiểm tra nó cho đầu vào vô hạn làm tôi nghĩ rằng vấn đề là đồng RE , tức là phần bù của nó có thể chấp nhận được.

Có lẽ, tôi có thể kiểm tra các cấu hình và thấy rằng tất cả các cấu hình sau 50 bước không dẫn đến chấp nhận trạng thái - làm thế nào để tôi làm điều đó?

Câu trả lời:


21

NN1

Như swegi nhận xét trong một phản hồi trước đó, nếu máy dừng sau tối đa bước, thì chỉ các ô trên băng là đáng kể. Sau đó, nó đủ để mô phỏng máy trên tất cả các chuỗi đầu vào có dạng , trong đó có một số hữu hạn.N0,1,,N1MxΣN

  • Nếu bất kỳ mô phỏng nào trong số này không thể chuyển sang trạng thái tạm dừng bởiquá trình chuyển đổi, điều này chỉ ra rằng bất kỳ chuỗi đầu vào nào bắt đầu bằng là một chuỗi mà máy không dừng trong bước đầu tiên .NthxN
  • Nếu tất cả các mô phỏng này bị dừng bởiquá trình chuyển đổi, sau đó dừng lại trong bước trên tất cả các đầu vào có độ dài bất kỳ (trong đó chuỗi con có độ dài là tất cả những gì nó từng hoạt động).NthMNN

Và- Tôi có cho rằng sao cho độ dài của nó dài hơn sẽ tự động bị từ chối không? xN
Jozef

Tại sao nó không thể nhảy tới bất kỳ tế bào N nào trong N bước của máy tính?
Jozef

@Jozef: các mô phỏng chỉ lặp qua tất cả các chuỗi đầu vào có thể có độ dài N . Bạn có thể lặp qua nhiều chuỗi hơn, nhưng bạn sẽ không học được gì thêm, vì dù sao chỉ có các ký hiệu N đầu tiên . Lý do tại sao nó không thể đi xa hơn N ô là vì các máy Turing (hoặc định nghĩa chuẩn của chúng dù sao) chỉ di chuyển một ô mỗi bước.
Niel de Beaudrap

Phải, tôi hiểu rồi. vì vậy bạn chỉ nhớ các ký hiệu N đầu tiên của mỗi từ, do đó bạn kiểm tra tất cả các kết hợp của chúng. Tại sao bạn xóa mô tả cấu hình?
Jozef

Nó vẫn hiển thị nếu bạn nhìn vào các chỉnh sửa trước đó. Tôi sửa đổi nó để điều này vì khi câu trả lời khác là có lẽ thú vị, rất nhiều về những gì đã làm cho nó "thú vị" chỉ phục vụ để che khuất một thực tế rằng các thủ tục ra quyết định là không có gì nhiều hơn hoặc ít hơn mô phỏng trên tất cả các đầu vào có thể có độ dài . Tôi nghĩ tốt hơn là nên xem lại câu trả lời cho một cái gì đó đơn giản hơn nhiều, và về cơ bản nó đã đi đến gốc rễ của những gì làm cho vấn đề có thể quyết định được. MN
Niel de Beaudrap

4

Nếu dừng lại không quá 50 bước, thì các vị trí có thể đạt được trên băng vô hạn thông thường bị giới hạn. Do đó, băng vô hạn có thể được mô phỏng bởi một cái hữu hạn. Điều này có nghĩa là băng có thể được mô phỏng bằng máy tự động hữu hạn. Nó sau đó một máy Turing mà dừng lại trong không quá 50 bước là bisimilar một số hữu hạn automaton .MMMM

Đặt là tập hợp các trạng thái của , các trạng thái chấp nhận và là bảng chữ cái. Sau đó, chúng ta xây dựng tập hợp các trạng thái của như sau: trong đó là vị trí của đầu đọc / ghi phía trên băng. Chúng tôi có thể giới hạn vị trí ở vì số bước tính toán được phép giới hạn số lượng vị trí có thể tiếp cận.QMFQΓQMQ={n,q,s,p,a|n{0,...,50}qQ,sΓ,p{50,...,50},aqF}p{50,...,50}

Có trạng thái của máy tự động hữu hạn có nghĩa là chúng ta đang ở trạng thái của máy tự động ban đầu, với trên băng ở vị trí cũng có đầu đọc / ghi được định vị, sau bước tính toán thứ . Trạng thái là trạng thái chấp nhận nếu .n,q,s,p,aMqspnatrue

Chuyển đổi mối quan hệ chuyển tiếp của máy xử lý bê tông là công việc nhiều hơn một chút nhưng không cần thiết cho câu hỏi ban đầu, bởi vì nó đủ để cho thấy không gian trạng thái là hữu hạn (và do đó chúng ta chỉ có thể kiểm tra mỗi đầu vào với độ dài tối đa là 50 ký hiệu trên mỗi máy tự động như vậy). Ý tưởng là xây dựng một mối quan hệ chuyển tiếp mới đi từ trạng thái sang trạng thái in các -thứ bước khi và chỉ khi quá trình chuyển đổi máy tính là trong quan hệ chuyển tiếp ban đầu.n,q,s,p,an+1,q,s,p,anq,s,pq,s,p


Làm thế nào để bạn mô phỏng bộ lưu trữ trên băng, tức là khả năng xem lại các biểu tượng bạn đã đọc, trên một máy tự động hữu hạn?
Niel de Beaudrap

@NieldeBeaudrap: Bạn liệt kê toàn bộ không gian trạng thái, tức là bạn thực hiện kiểm tra mô hình của băng hữu hạn và máy tự động điều khiển của máy turing.
swegi

1
Cho rằng OP đang hỏi những câu hỏi cơ bản về khả năng tính toán cho Turing Machines, bạn có thể muốn giải nén bản phác thảo đó thành một cái gì đó đầy đủ hơn. (Bản thân tôi chưa bao giờ nghe đến cụm từ "mô hình kiểm tra" trong bối cảnh tính toán trước đó.) Trong bối cảnh, tôi typcially sẽ giả định bởi 'hữu hạn automaton' bạn có nghĩa là một DFA hoặc tương tự, trừ khi bạn có quy định khác, và nó không rõ ràng cho tôi những gì sẽ tương ứng với đầu vào của DFA trong một công trình như vậy. Nếu bạn chỉ có nghĩa là một biểu đồ đại diện cho các quỹ đạo có thể có của TM, thì tôi đồng ý.
Niel de Beaudrap

Với mô hình kiểm tra phần hữu hạn của băng, về cơ bản tôi có nghĩa là những gì bạn đã viết trong câu trả lời của mình: chỉ cần kiểm tra từng đầu vào có kích thước tối đa là 50 và kiểm tra xem có đạt được trạng thái chấp nhận hay không.
swegi

1
Tôi ước mọi người sẽ ngừng tuyên truyền rằng một băng máy Turing cần phải là vô hạn. Nó không - nó có thể là hữu hạn miễn là nó được mở rộng khi cần thiết.
Revierpost
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.