Bằng chứng xây dựng về tính quyết định của tập hợp kiểu dừng vấn đề hữu hạn không sử dụng tra cứu bảng


7

Tôi đã cố gắng chứng minh rằng ngôn ngữ sau là đệ quy: for , một số nguyên dương: L_k = H _ {\ mathrm {TM}, \ varepsilon} \ cap \ Sigma ^ k trong đó H_ { \ mathrm {TM}, \ varepsilon} = \ {\ langle M \ rangle \ mid M \ text {là một TM tạm dừng trên một đầu vào trống} \}Σ={0,1}k

Lk=HTM,εΣk
HTM,ε={MM is a TM that halts on an empty input}

Thật dễ dàng để chứng minh vì Lk là hữu hạn, nhưng tôi đã không nhận thấy điều này và đã cố gắng chứng minh điều đó bằng cách tìm một người quyết định TM cho nó. Tôi nghĩ rằng vì mã hóa của TM có độ dài k nên nó không thể có nhiều hơn 2k trạng thái và bằng cách chạy nó trên epsilon trong 2k bước, nếu nó dừng lại sau đó chấp nhận từ chối. Tôi đã nói rằng nó không chính xác - đó là một giải pháp sai. Làm cách nào tôi có thể chứng minh điều này bằng phương pháp này (và không phải cách tôi đã đề cập về Lk là hữu hạn)?


3
Tôi đã tự do chỉnh sửa bài viết của bạn thành mẫu LaTex. Nếu tôi đã đọc sai ý định của bạn, xin vui lòng hoàn nguyên nó về dạng ban đầu của bạn. Tôi cũng đề nghị rằng nó sẽ được mở lại. Chúng ta hãy xem điều đó diễn ra như thế nào. Nhân tiện, chào mừng đến với trang web.
Rick Decker

Vì là không thể giải quyết được, nên nó không thể được biểu diễn bằng một tập hợp có thể đếm được đệ quy của các tập hợp có thể quyết định. Do đó, có các tập hợp con vô hạn (và đồng vô hạn) của . Do đó, bạn phải sử dụng sự hữu hạn theo một cách nào đó. Bạn đang hỏi, "làm thế nào để tôi thể hiện sự quyết đoán bằng cách sử dụng sự hữu hạn theo cách ít rõ ràng hơn?". Tôi không chắc đó là câu hỏi hữu ích cho bạn. HTM,εHTM,ε
Raphael

@Raphael: là sự kết hợp của các bộ cho số nguyên dương . Do đó, là "một tập hợp đệ quy có thể đếm được của các tập hợp có thể quyết định." HTM,ϵ{MM is aTM that halts within t steps on ϵ input}tHTM,ϵ

@RickyDemer Đúng, cảm ơn. Đối số của tôi chỉ hoạt động cho tính không bán quyết định (phải không?).
Raphael

Câu trả lời:


10

Không có cách chung để tìm một người quyết định TM choLk

Bạn đúng rằng là đệ quy bởi vì, là tập con của tập hữu hạn , nó cũng là hữu hạn.LkΣk

Bạn muốn tìm một người quyết định TM cho và bạn đề xuất một số kỹ thuật. Thậm chí không đi sâu vào chi tiết của các kỹ thuật này và tại sao chúng không hoạt động, bạn sẽ không có cơ hội thành công.Lk

Điều đầu tiên bạn cần chú ý là đối số độ chính xác cho bạn biết rằng có tồn tại một người quyết định TM cho ngôn ngữ , nhưng nó không cho bạn biết TM này là gì. Đó là một ví dụ về một bằng chứng phi xây dựng: bạn chứng minh rằng người quyết định tồn tại, nhưng bạn không thể biết đó là bằng chứng nào.MkLk

Bây giờ, giả sử rằng, với , bạn có một thủ tục để tìm một người quyết định như vậy cho ngôn ngữ (thay vì chỉ chứng minh nó tồn tại). Sau đó, được cung cấp cho bất kỳ máy Turing , sau đó có một số nguyên sao cho , sao cho . Sau đó, bạn có thể sử dụng thủ tục để tìm một người quyết định TM có thể xác định xem . Vì vậy, bạn có một cách để quyết định xem TM dừng lại ở đầu vào trống hay không. Và điều này hoạt động cho bất kỳ TMkP(k)MkLkMk|M|=kMΣkPMkMLkMM. Tuy nhiên, điều này là không thể, bởi vì không thể chắc chắn liệu một TM dừng lại ở đầu vào trống hay không.M

Vì vậy, thủ tục không thể tồn tại.P

Vì bạn đang tìm kiếm một cách tổng quát để tìm người quyết định TM , bạn không thể thành công vì phương pháp đó sẽ là một cách chính xác một thủ tục như .MkP

Lưu ý rằng bằng chứng này vẫn có thể để lại khả năng (rất xa) trong việc tìm người quyết định cho một số giá trị cụ thể của , nhưng bạn sẽ phải xác định chính xác các giá trị liên quan và phương thức sẽ không hoạt động đối với tất cả các giá trị của . Tôi không khuyên bạn nên thử.kk


Vì vậy, về cơ bản cách duy nhất để linh mục nó được đệ quy là sử dụng đối số nhân chứng?
jon Prime

Tôi đã cố gắng chứng minh theo cách này do khuôn mặt mà có lẽ tôi đã không hiểu rõ khi sử dụng các đối số như vậy về số lượng cấu hình và trạng thái có thể: ví dụ: câu hỏi chứng minh rằng L100 = {<M> | M trên epsilon không sử dụng hơn 100 vị trí trên băng} được đệ quy được chứng minh bằng cách chạy TM cho | Q | · 100 · | Gama | ^ 100 +1 bước. Vì vậy, ai đó có thể vui lòng giải thích khi các đối số như vậy là phù hợp - trong các loại câu hỏi, có thể một vài ví dụ về thời điểm các đối số đó có thể được sử dụng và khi nào chúng không thể?
jon Prime

3
Tôi đoán người ta không bao giờ có thể nói chỉ có một cách để chứng minh một kết quả. Tất cả những gì tôi có thể nói là bất kỳ bằng chứng nào hoạt động cho tất cả các giá trị của nhất thiết sẽ là bằng chứng không mang tính xây dựng, điều đó sẽ không cho bạn biết TM của người quyết định là gì. k
babou 16/07/2015

2
Về nỗ lực của bạn, nó là một chút bối rối. Kích thước của ⟨M⟩ giống như kích thước của văn bản chương trình. Nó không liên quan đến bao nhiêu bộ nhớ mà chương trình sẽ thực sự sử dụng. Đối với TM, nó thực sự là mô tả của TM theo nghĩa rất trừu tượng, do đó một mô tả rất ngắn có thể tương ứng với một TM cực kỳ phức tạp. Kích thước không cho bạn biết bao nhiêu bộ nhớ được sử dụng. Các đối số dựa trên kích thước của bộ nhớ phức tạp hơn (số lượng cấu hình theo cấp số nhân) và không yêu cầu bộ nhớ bị giới hạn về kích thước, đây không phải là trường hợp ở đây. k
babou 16/07/2015

Một bằng chứng xây dựng chung không phải tạo ra một thủ tục tính toán (!) . Ví dụ, bằng chứng kinh điển mang tính xây dựng, theo một cách: bảng tra cứu, tức là cứng mã kết quả cho tất cả các đầu vào trong . Tất nhiên, không thể có thuật toán để xây dựng bảng này (với vô số ) vì những lý do bạn đề cập. PLkk
Raphael

6

Bạn có thể "sửa" bằng chứng của mình bằng chức năng hải ly bận rộn. Đặt là số bước tối đa mà máy Turing có kích thước mô tả tối đa thực hiện trước khi tạm dừng, khi được cung cấp đầu vào trống. Nếu bạn biết (hoặc thậm chí chỉ là giới hạn trên của , nghĩa là, một số ) thì bạn có thể giải quyết các vấn đề tạm dừng cho các máy Turing có kích thước mô tả (và đầu vào trống) bằng cách chạy máy đã cho đến các (hoặc ). Nếu nó không dừng lại ở thời điểm đó, thì bạn biết rằng nó không bao giờ dừng lại.BkkBkBkTkBkkBkTk

Vì vấn đề tạm dừng không thể quyết định được, chúng tôi biết rằng hàm không thể tính toán được. Thật vậy, không có hàm tính toán thỏa mãn cho tất cả . Nói cách khác, đối với bất kỳ hàm tính toán , đó là trường hợp cho vô số . Nói một cách đơn giản, phát triển nhanh hơn mọi chức năng tính toán.BkTkTkBkkf(k)Bk>f(k)kBk

Trong thực tế, sử dụng một diagonalization có thể chứng minh rằng không tăng trưởng nhanh hơn tất cả các chức năng tính toán: cho mọi tính toán có tồn tại mà cho tất cả các . Điều này lần đầu tiên được chứng minh bởi Rado .Bkf(k)KBk>f(k) kK



Tìm số bước tối đa mà TM có kích thước có thể thực hiện trước khi chắc chắn đi vào vòng lặp là chính xác những gì tôi đã mệt mỏi để chứng minh - Tôi muốn lập luận rằng vì TM có kích thước K, hơn số lượng trạng thái tối đa có thể có được mã hóa là 2 ^ k và logic của tôi là (và cho tôi biết nếu tôi sai) - nếu trên một đầu vào nào đó, một TM có m trạng thái thực hiện ít nhất m + 1 di chuyển (nghĩa là lặp lại trạng thái) thì nó chắc chắn sẽ lặp.
scifie

Và liên quan đến đề xuất của bạn về việc tìm số bước tối đa mà máy Turing có kích thước mô tả nhiều nhất k thực hiện trước khi tạm dừng, không phải là số được cho là 2 ^ k như tôi đã đề xuất?
scifie 24/07/2015

Thật không may bạn đã sai. Những gì bạn viết là đúng đối với automata hữu hạn nhưng không phải cho máy Turing, có trạng thái bao gồm một cuộn băng. Hãy xem nó như một bài tập để xây dựng một máy Turing với trạng thái tạm dừng sau bước (đại khái). n22n
Yuval Filmus

@ Yuval Filmus, điều đó không chính xác - Các trạng thái của TM không liên quan đến Băng. Các trạng thái TM được ký hiệu là Q và đó là một tập hợp hữu hạn. Làm thế nào nó được kết nối với băng của nó? Băng này là để thao tác đầu vào và không phải là một phần của các quốc gia của TM.
scifie

@scifie Trạng thái bao gồm mọi thứ bạn cần để mô tả tình huống hiện tại của máy. Điều này bao gồm trạng thái phù hợp (những gì bạn đề cập đến), vị trí của đầu và nội dung của băng.
Yuval Filmus

4

Sai lầm cốt lõi là bạn cho rằng số lượng trạng thái mà TM đã giới hạn thời gian chạy của nó (trước khi chấm dứt) theo một cách nào đó. Điều này là sai.

Trong trường hợp, có các máy Turing phổ dụng , được mô tả chính xác các TM có thể thể hiện bất kỳ hành vi nào , từ chấm dứt nhanh chóng qua việc chạy dài tùy ý đến lặp, đưa ra đầu vào đúng.

Trên một lưu ý kỹ thuật, các TM phổ quát thường được mô tả là lấy hai tham số, một mã hóa TM và đầu vào để mô phỏng nó. Thật dễ dàng để hợp nhất chúng thành một tham số, vì vậy thực sự có các TM phổ quát đơn nhất.

Cụ thể hơn, bạn bỏ qua đầu vào của TM được mã hóa, có thể lớn tùy ý (và bị chia nhỏ). Trạng thái thực tế của TM là sản phẩm của trạng thái điều khiển nội dung băng, do đó, một đối số kết hợp đơn giản chỉ dựa trên số lượng trạng thái điều khiển là không đủ. Cụ thể, một TM không nằm trong một vòng lặp không thể giải quyết được khi nó truy cập một số trạng thái lần thứ hai.


Heh, hóa ra câu trả lời của tôi không áp dụng ở đây, vì chúng tôi chỉ xem xét một đầu vào cố định (trống). Thời gian chạy được giới hạn trong trường hợp này, xem Câu trả lời của Yuval.
Raphael
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.