Có thể quyết định liệu một TM đạt đến một vị trí nào đó trên băng không?


14

Tôi có những câu hỏi này từ một bài kiểm tra cũ tôi đang cố gắng giải. Đối với mỗi vấn đề, đầu vào là một mã hóa của một số máy Turing M .

Đối với số nguyên và ba vấn đề sau:c>1

  1. Có đúng là với mọi đầu vào , M không vượt qua | x | + vị trí c khi chạy trên x ?x|x|+cx

  2. Có đúng là với mọi đầu vào , M không vượt qua max { | x | - Vị trí c , 1 } khi chạy trên x ?xmax{|x|c,1}x

  3. Có đúng là với mọi đầu vào , M không vượt qua vị trí ( | x | + 1 ) / c khi chạy trên x ?x(|x|+1)/cx

Có bao nhiêu vấn đề có thể quyết định?

Theo tôi, số vấn đề (1) nằm ở nếu tôi hiểu đúng từ đó, tôi có thể chạy song song tất cả các đầu vào và dừng lại nếu một số đầu vào đạt đến vị trí này và để cho thấy rằng nó không ở R tôi có thể giảm phần bù của Atm với nó. Tôi xây dựng một máy Turing M ' như sau: đối với một đầu vào y tôi kiểm tra nếu y là một lịch sử của tính toán, nếu có, sau đó M ' chạy ngay và không dừng lại, nếu không, sau đó nó dừng lại.coRERRMyyM

Đối với (3), tôi tin rằng nó có thể quyết định được vì đối với đó là tất cả các máy Turing luôn ở trên ô đầu tiên của dải, vì đối với một chuỗi của một char nó có thể vượt qua ô đầu tiên, vì vậy tôi cần để mô phỏng tất cả các chuỗi có độ dài 1 cho | Q | + 1 bước (Điều này có đúng không?) Và xem liệu tôi có chỉ sử dụng ô đầu tiên trong tất cả chúng không.c2|Q|+1

Tôi thực sự không biết phải làm gì với (2).


1) Bạn có giả sử một băng vô hạn một phía? 2) Atm là gì?
Raphael

1) Có, 2) Vấn đề chấp nhận.
Jozef

Câu trả lời:


9

Bất kỳ tình huống nào hỏi liệu Máy Turing có bị giới hạn trong phần hữu hạn của băng (có độ dài ) trên đầu vào đã cho hay không đều có thể quyết định được.n

Đối số hoạt động như sau. Xem xét Máy Turing, băng và vị trí của Máy Turing trên băng. Tất cả cùng nhau có một số lượng cấu hình hữu hạn. Để được cụ thể, chỉ có cấu hình có thể. Γ là tập hợp các biểu tượng băng và Q là tập hợp của các quốc gia. Tôi sẽ tiếp tục sử dụng từ "cấu hình" để mô tả trạng thái của Máy Turing kết hợp với trạng thái của băng và vị trí của nó trên băng cho phần còn lại của câu trả lời này, nhưng đó không phải là từ vựng chuẩn.t=n|Γ|n|Q|ΓQ

Chạy máy, theo dõi tất cả các cấu hình trong quá khứ của nó. Nếu nó vượt quá điểm , hãy trả về "có, M vượt qua vị trí n ". Nếu không, máy nằm ở khoảng giữa 0 và n . Nếu máy lặp lại cấu hình - trạng thái của nó, các ký hiệu trên băng và vị trí của nó trên băng giống hệt với trước đây - trả về "không, M không bao giờ vượt qua vị trí n ".nMnnMn

Theo nguyên tắc pidgeonhole, điều này phải xảy ra không quá bước. Vì vậy, tất cả những điều trên là có thể quyết định; sau nhiều nhất t + 1 bước mô phỏng bạn nhận được câu trả lời.t+1t+1

Lưu ý nhanh về lý do tại sao điều này hoạt động: khi máy, băng và vị trí của nó trên băng lặp lại, phải có một chuỗi các cấu hình giữa các lần lặp lại này. Trình tự này sẽ xảy ra một lần nữa, dẫn đến cùng một cấu hình một lần nữa - máy nằm trong một vòng lặp vô hạn. Điều này là do chúng tôi theo dõi mọi khía cạnh của Máy Turing; không có gì ngoài cấu hình có thể có tác động đến những gì đã xảy ra. Vì vậy, khi một cấu hình lặp lại, nó sẽ lặp lại một lần nữa, với một loạt các cấu hình giống hệt nhau ở giữa.

Vì vậy, việc giới hạn băng thành một phần hữu hạn của chuỗi là có thể quyết định. Do đó, bằng cách lặp qua tất cả các chuỗi đầu vào có thể, vấn đề nằm ở cho cả ba câu hỏi. Bạn có thể đã nhận ra điều này (giữa ý tưởng của bạn cho 1 và 3 và câu trả lời của Ran G cho 2 nó dường như đã được giải quyết hoàn toàn dù sao) nhưng tôi đoán rằng dù sao nó cũng có thể đáng để đăng.coRE


"Nếu máy từng lặp lại cấu hình [...] trả về 'không'" - điều đó là sai. Một máy không xác định có thể thực hiện một vòng lặp một vài lần và sau đó tiếp tục.
Raphael

1
Chúng ta đang nói về máy turing ở đây không được coi là không phổ biến. Nếu nó không đặc biệt, hãy mô phỏng phiên bản xác định.
SamM

Giải thích tốt đẹp. Xem thêm phiên bản đầu tiên của câu trả lời của tôi (mà tôi sửa lại khi tôi nhận ra rằng OP không hoàn toàn hỏi nó ..)
Ran G.

@Sam: Nó hoạt động theo cách khác: trừ khi được giả định khác, máy Turing có thể không đặc hiệu. "Phiên bản xác định" là gì? Nếu bạn có nghĩa là mở ra hoàn toàn các lựa chọn, thì một cấu hình lặp đi lặp lại sẽ mất ý nghĩa vì chúng có thể xảy ra trong các nhánh khác nhau.
Raphael

2
@Raphael cách tiêu chuẩn để thực hiện điều này là biểu đồ cấu hình: các đỉnh có cùng cấu hình mà Sam đã xác định và có một cạnh được định hướng từ cấu hình A đến B nếu NTM có thể di chuyển từ A đến B trong một bước. Biểu đồ là hữu hạn và liệu máy có dừng lại hay không là một câu hỏi khả năng tiếp cận đồ thị đơn giản. Điều này cũng cho thấy là tập con của D T I M E ( 2 O ( s ) )NSPACE(s)DTIME(2O(s))
Sasho Nikolov

4

(2) rất giống với (3) và lý do tương tự mà bạn có (3) cũng áp dụng ở đây: lưu ý rằng các máy trong có một thuộc tính lạ - chúng không đọc toàn bộ đầu vào (chúng không bao giờ đạt được bit c cuối cùng .) Và điều này đúng với mọi đầu vào.L2c

Ok, vậy bây giờ chúng ta hãy xem xét chỉ đầu vào tối đa . Đối với mỗi một trong số họ, chỉ có hai tùy chọn: vòng lặp máy / dừng w / o di chuyển đầu hoặc nó di chuyển đầu. Nếu nó di chuyển đầu trên một số x (với | x |c ), máy đó không nằm trong L 2 do đầu vào x đó . Nếu không, tôi khẳng định máy nằm trong L 2 . Vì nó không bao giờ di chuyển đầu - nó không biết kích thước của đầu vào là gì! điều này có nghĩa là nó hoạt động giống nhau cho tất cả các đầu vào có độ dài | x | > c . Do đó, L 2 là quyết định.cx|x|cL2xL2|x|>cL2


Làm thế nào để bạn chiếm tài khoản cho các máy không phá hủy?
Raphael

Tôi đã không xem xét NTM, nhưng nó sẽ khá giống nhau. Đối với tất cả các từ có độ dài lên đến , số lượng cấu hình, NTM có thể ở trạng thái di chuyển đầu là hữu hạn. c
Ran G.

Có, nhưng tranh luận của bạn bị phá vỡ. Bạn không thể xác định trong thời gian hữu hạn (bằng cách mô phỏng đơn giản) liệu NTM có rời khỏi một vị trí nhất định hay không.
Raphael

@Raphael tại sao không? bạn không thể mô phỏng toàn bộ cây cấu hình (độ sâu ) trong một thời gian hữu hạn e x p ( | x | ) ? |x|exp(|x|)
Ran G.

|x||Q|M
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.