Vấn đề dừng có thể được giải quyết trên thang máy bằng cách thoát khỏi một mô tả cấp cao hơn về tính toán?


21

Gần đây tôi đã nghe một sự tương tự thú vị nói rằng bằng chứng của Turing về tính không ổn định của vấn đề tạm dừng rất giống với nghịch lý thợ cắt tóc của Russell.

Vì vậy, tôi đã tự hỏi: các nhà toán học cuối cùng đã xoay sở để làm cho lý thuyết tập hợp nhất quán bằng cách chuyển từ công thức ngây thơ của Cantor sang một hệ tiên đề phức tạp hơn (lý thuyết tập hợp ZFC), đưa ra các loại trừ (hạn chế) quan trọng và bổ sung trên đường đi.

Vì vậy, có lẽ có thể thử và đưa ra một mô tả trừu tượng về tính toán tổng quát mạnh mẽ và biểu cảm hơn các máy Turing, và với đó người ta có thể có được bằng chứng tồn tại hoặc thậm chí là một thuật toán để giải quyết vấn đề tạm dừng cho một máy Turing tùy ý?


1
Chào mừng bạn đến với Sàn giao dịch Khoa học Máy tính. Vui lòng đọc cs.stackexchange.com/tour.if bạn chưa làm như vậy. --- Bạn đã thử gì cho một mô hình mạnh hơn TM? Điều gì đang cản trở bạn?
babou

2
@babou Ngược lại, bạn cần một mô hình ít mạnh hơn .
Yuval Filmus

2
@YuvalFilmus Chà, OP đang yêu cầu một mô hình mạnh hơn chứ không phải mô hình yếu hơn. --- với lời xin lỗi đến H2CO3 ... Câu hỏi của tôi thực sự là một trò đùa vì đây là một câu hỏi tiêu chuẩn khi mọi người gửi bài tập về nhà dưới dạng câu hỏi. Tất nhiên nó không thích hợp ở đây, vì không ai ngờ bạn sẽ tìm thấy một mô hình như vậy. Tôi hy vọng bạn sẽ không dùng nó quá axit.
babou

1
Bạn có thể muốn đọc về Hypercomputing en.wikipedia.org/wiki/Hypercomputing .
Tháp Eric

Câu trả lời:


15

Bạn không thể thực sự so sánh. Lý thuyết tập hợp ngây thơ có những nghịch lý đã bị loại bỏ bởi lý thuyết tập hợp ZFC. Lý thuyết phải được cải thiện về tính nhất quán, vì một giả định cơ bản của công việc khoa học là tính nhất quán là có thể đạt được (lý do khác trở thành một công việc kinh doanh). Tôi cho rằng các nhà toán học dự kiến ​​nó phải có thể, và đã làm việc để giải quyết vấn đề.

Không có tình huống như vậy với lý thuyết tính toán và vấn đề tạm dừng. Không có nghịch lý, không có sự mâu thuẫn. Nó chỉ xảy ra rằng không có máy Turing nào có thể giải quyết vấn đề tạm dừng TM. Nó chỉ đơn giản là một định lý, không phải là một nghịch lý.

Vì vậy, có thể một số đột phá trong sự hiểu biết của chúng ta về vũ trụ sẽ dẫn đến các mô hình tính toán vượt ra ngoài những gì chúng ta có thể hình dung bây giờ. Sự kiện duy nhất như vậy, ở dạng rất yếu, vẫn còn trong vương quốc TM, có thể là điện toán lượng tử. Khác với ví dụ rất yếu này chạm vào độ phức tạp (mất bao lâu?) Thay vì tính toán (có khả thi không?), Tôi nghi ngờ bất kỳ ai trên hành tinh này có manh mối rằng khả năng tính toán vượt ra ngoài TM sẽ được mong đợi.

Hơn nữa, vấn đề tạm dừng là hậu quả trực tiếp của thực tế là các máy Turing có thể được mô tả bằng một đoạn văn bản hữu hạn, một chuỗi các ký hiệu. Điều này thực sự đúng với tất cả kiến ​​thức của chúng tôi (theo như chúng tôi biết), và đó là lý do tại sao bài phát biểu và sách rất quan trọng. Điều này đúng với tất cả các kỹ thuật của chúng tôi để mô tả bằng chứng và tính toán.

Vì vậy, ngay cả khi chúng tôi tìm cách mở rộng cách chúng tôi tính toán, hãy nói với các máy T +. Hoặc điều đó có nghĩa là chúng tôi đã tìm ra cách thể hiện kiến ​​thức ngoài việc viết tài liệu hữu hạn, trong trường hợp đó, toàn bộ điều đó nằm ngoài phạm vi quyền lực của tôi (tôi khẳng định sự bất tài tuyệt đối) và có lẽ là của bất kỳ ai khác. Hoặc nó vẫn có thể được thể hiện trong các tài liệu hữu hạn, trong trường hợp đó, nó sẽ có vấn đề tạm dừng riêng cho các máy T +. Và bạn sẽ được đặt câu hỏi một lần nữa.

Trên thực tế tình hình đó tồn tại ngược lại. Một số loại máy yếu hơn máy Turing, chẳng hạn như Máy tính Bounded Automata (LBA). Chúng khá mạnh, nhưng nó có thể được hiển thị chính xác như được thực hiện cho TM mà LBA không thể giải quyết vấn đề tạm dừng cho LBA. Nhưng TM có thể giải quyết nó cho LBA.

Cuối cùng, bạn có thể tưởng tượng các mô hình tính toán mạnh mẽ hơn bằng cách giới thiệu orory, đó là các thiết bị có thể đưa ra câu trả lời cho các vấn đề cụ thể và có thể được TM gọi để trả lời, nhưng không may là không tồn tại về mặt vật lý. TM mở rộng như vậy là một ví dụ điển hình của máy T + mà tôi đã xem xét ở trên. Một số trong số họ có thể giải quyết vấn đề tạm dừng TM (trừu tượng hóa, không thực tế), nhưng không thể giải quyết vấn đề Ngừng của chính họ, thậm chí là trừu tượng hóa.


Giả sử ZFC là nhất quán, nó vẫn chưa hoàn chỉnh, tức là có những câu mà chúng ta không thể chứng minh cũng không từ chối ZFC, và điều này liên quan mật thiết đến vấn đề tạm dừng là không thể giải quyết được, nếu việc tạm dừng có thể giải quyết được thì chúng ta có thể chứng minh hoặc từ chối tất cả các câu. Đây là toán học, và đây không phải là một sự mâu thuẫn cần giải quyết mà còn là một định lý (Gôdel)
Hernan_eche

@Hernan_eche Chà ... vâng và ... cái gì ...? Nếu bạn nghĩ rằng sự không nhất quán không tệ hơn sự không hoàn hảo, đó là phán đoán cá nhân của bạn. Tôi nghi ngờ hầu hết các nhà toán học sẽ đồng ý. Bạn có thể không thích TM mà không chấm dứt. Nhưng bạn có muốn họ chấm dứt luôn luôn, nói đôi khi có và đôi khi không, trên cùng một đầu vào. Bạn sẽ làm gì với câu trả lời? Và nếu bạn nghĩ không xác định ... hãy nghĩ hai lần.
babou

Tôi đã nhận xét chỉ để nói rõ rằng Khoa học Máy tính và Toán học chống lại các vấn đề tương tự, để tránh người đọc hiểu sai câu trả lời như thể toán học đã giải quyết được các vấn đề nền tảng của nó với ZFC và vấn đề tạm dừng chỉ là vấn đề khoa học máy tính, không phải vậy, có một sự tương ứng 1-1 giữa vấn đề không hoàn chỉnh và tạm dừng, đó là cùng một vấn đề. Tôi không nghĩ rằng sự không hoàn hảo là tồi tệ hơn hoặc tốt hơn sự không nhất quán, nhưng tôi nghĩ rằng sự không hoàn hảo sẽ trở nên không nhất quán nếu bạn muốn xây dựng các hệ thống bậc cao hơn.
Hernan_eche

17

Chà, bạn luôn có thể xem xét một máy Turing được trang bị một lời tiên tri cho vấn đề tạm dừng máy Turing thông thường. Đó là, máy mới của bạn có một cuộn băng đặc biệt, trên đó nó có thể viết mô tả của máy Turing thông thường và đầu vào của nó và hỏi xem máy đó có dừng trên đầu vào đó không. Trong một bước duy nhất, bạn nhận được câu trả lời và bạn có thể sử dụng câu đó để thực hiện tính toán thêm. (Không thành vấn đề dù chỉ trong một bước hay không: sẽ là đủ nếu nó được đảm bảo ở một số bước hữu hạn.)

Tuy nhiên, có hai vấn đề với phương pháp này.

  1. Các máy Turing được trang bị một nhà tiên tri như vậy không thể quyết định vấn đề tạm dừng của riêng họ: Bằng chứng của Turing về tính không ổn định của vấn đề tạm dừng thông thường có thể dễ dàng được sửa đổi thành cài đặt mới này. Trên thực tế, có một hệ thống phân cấp vô hạn, được gọi là "Độ Turing", được tạo ra bằng cách cung cấp cho cấp độ tiếp theo của hệ thống phân cấp một lời tiên tri cho vấn đề tạm dừng của cấp độ trước.

  2. Không ai từng đề xuất bất kỳ cách nào mà một nhà tiên tri như vậy có thể được thực hiện. Tất cả đều rất tốt như một thiết bị lý thuyết nhưng không ai biết cách chế tạo nó.

Ngoài ra, lưu ý rằng ZFC, theo một nghĩa nào đó, yếu hơn so với lý thuyết tập ngây thơ, không mạnh hơn. ZFC không thể diễn tả nghịch lý của Russell, trong khi lý thuyết tập hợp ngây thơ có thể. Như vậy, một sự tương tự tốt hơn sẽ là hỏi xem vấn đề tạm dừng có thể quyết định đối với các mô hình tính toán yếu hơn so với máy Turing hay không. Ví dụ, vấn đề tạm dừng đối với automata hữu hạn xác định (DFA) là có thể quyết định được, vì DFA được đảm bảo tạm dừng cho mọi đầu vào.


Tôi nghĩ rằng vấn đề tạm dừng của riêng nó có thể được giải quyết bởi bất kỳ gia đình automata nào nếu nó là tầm thường, đó là tất cả họ đều dừng lại hoặc không ai trong số họ làm điều đó (có thể được coi là lạ trong trường hợp này).
babou

1
@babou: những gì về automata trong đó máy 0 vòng lặp mãi mãi, máy 1 xuất ra FALSE nếu đầu vào của nó là 0 khác xuất ra TRUE và sau đó dừng lại. Tất cả các máy khác xuất FALSE và sau đó dừng lại. Có phải đó là một họ của automata trong đó chương trình 1 giải quyết vấn đề tạm dừng không tầm thường? Hoặc đây thậm chí không phải là một gia đình tự động, vì thiếu một số tài sản, ví dụ như bất kỳ loại thành phần nào?
Steve Jessop

@SteveJessop Vâng, bạn (và Davis Richerby) có lẽ đúng theo một nghĩa nào đó. Điều làm phiền tôi là đây là một ví dụ giả định. Bạn xây dựng một gia đình rất yếu để một cỗ máy trong gia đình trở thành một người quyết định tạm dừng cho cả gia đình. Nhưng, khi bạn nghi ngờ chính mình (nhận xét của bạn về thành phần), có thể có một số thuộc tính đóng cơ bản bị thiếu để vấn đề có thể được tầm thường hóa. Tôi không có câu trả lời sẵn sàng và tôi đồng ý rằng nhận xét của tôi cần có trình độ chuyên môn hơn về những gì tạo nên một gia đình automata, nhưng ví dụ phản biện của bạn khiến tôi không tin.
babou

3

Cảnh báo: Một câu trả lời triết lý / không chặt chẽ

Điều này có thể có một chút "triết lý", nhưng tôi nghĩ rằng nó phù hợp với tinh thần của câu hỏi của bạn.

Một máy không lặp lại

Một góc cạnh của bằng chứng về vấn đề tạm dừng là máy Turing hoạt động giống như một chức năng: Đối với cùng một đầu vào, nó luôn cho cùng một đầu ra. Nếu bạn xóa thuộc tính này, bạn không phải đối phó với vấn đề tạm dừng "chung", theo nghĩa là máy có thể khám phá các thuộc tính của chính nó. Nhưng bạn cũng mất rất nhiều tính chất lý thuyết mong muốn của một máy như vậy.

Xóa thuộc tính

Nó hơi giống như đi từ lý thuyết tập hợp sang lý thuyết thể loại: Bạn mất đi một số "nghịch lý" bằng cách đánh mất những hạn chế. Nhưng kết quả là khó khăn hơn nhiều để xử lý.

Trong trường hợp này, điều đó có nghĩa là: Bạn sẽ không biết nếu máy đưa ra kết quả "chính xác". Ngay khi bạn luôn có thể quyết định kết quả nào là chính xác, bạn phải xử lý một số "vấn đề tạm dừng" bằng cách áp dụng máy cho chính nó và xây dựng một mâu thuẫn. Vì vậy, một máy như vậy có thể sẽ không hữu ích.


1
Cảm ơn bạn, cái thứ "máy không thể lặp lại" này nghe có vẻ khá thú vị. Tôi không cảm thấy mình đủ năng lực để thoải mái nói một chút khôn ngoan về các chương trình tự kiểm tra thông minh (bởi vì bản năng ruột của tôi là chúng vẫn có thể biểu hiện như máy Turing), nhưng tôi cảm thấy chúng rất hữu ích cho một số vấn đề.
H2CO3

1
Làm thế nào sẽ đưa ra một ví dụ về không lặp lại? Làm thế nào bạn sẽ xác định tạm dừng trong trường hợp đó. Một khó khăn lớn là, khi bạn cố gắng xác định mô hình tính toán lạ, thường là mô hình gedanken, bạn phải xác định ý nghĩa của việc tạm dừng, và loại máy đầu vào nào được cho là để phân tích, và có thể là một vài điều không tầm thường khác. Xem ví dụ về trường hợp không xác định . Không đề cập đến vấn đề những gì có thể được coi là một mô hình tính toán (có thể không phải là một bộ sưu tập máy móc đặc biệt).
babou

1
@ H2CO3 Một cỗ máy không lặp lại chỉ là một loại "thí nghiệm Gedanken" trên tài sản mà bạn phải hy sinh để thoát khỏi "vấn đề tạm dừng chung" (xây dựng mâu thuẫn bằng cách để máy tự kiểm tra). Bạn sẽ nhận được một chiếc máy đôi khi đúng, nhưng bạn không biết khi nào. Nó giống như chương trình tính toán số xổ số cho tuần tới. Tôi có thể dễ dàng cung cấp cho bạn một chương trình như vậy. Phần khó là để bạn quyết định, một trong nhiều chương trình tôi sẽ cung cấp cho bạn là chương trình chính xác ...
stefan.schwetschke

2

Vấn đề dừng không được xây dựng để thể hiện các hạn chế của Turing Machines, mà là để thể hiện giới hạn của tất cả các hệ thống logic có thể được biểu thị bằng số lượng ký hiệu hữu hạn. Khi một hệ thống logic có khả năng diễn đạt các giải pháp cho các vấn đề phức tạp nhất định, nó cũng sẽ có khả năng diễn đạt các vấn đề mà nó không thể giải quyết. Bất kỳ sự mở rộng nào của một hệ thống logic đủ để thể hiện các giải pháp cho tất cả các vấn đề mà nó không thể giải quyết trước đây cũng sẽ bao gồm khả năng diễn đạt các vấn đề mới mà nó không thể giải quyết.

Với bất kỳ đặc điểm kỹ thuật "Máy Turing cải tiến" cụ thể nào, có thể chỉ định "Máy Turing siêu cải tiến" có thể kiểm tra chương trình cho ETM và báo cáo xem có dừng hay không, nhưng SETM chỉ có thể phân tích các chương trình cho ETM - nó sẽ không thể phân tích các chương trình SETM. Không có cách nào để xác định một máy có thể tự phân tích các chương trình và xác định xem chúng có dừng hay không vì hành động thêm các tính năng mới sẽ tạo ra các yêu cầu mới cho máy tự phân tích và không có cách nào để làm cho các tính năng "bắt kịp" các yêu cầu .


1

Những máy như vậy đã được hình dung, và được gọi là máy siêu Turing . Một số lớp chính của máy siêu bền là

  • Máy số thực (tức là máy tính tương tự)
  • Máy Turing cho thời gian vô hạn
  • Máy Turing không điều trị

Không phải tất cả các máy siêu turing đều có thể giải quyết vấn đề tạm dừng (đặc biệt là các máy turing không điều hòa, đặc biệt là không thể). Tuy nhiên, các máy móc khái niệm đã được tạo ra, ít nhất là trong các thí nghiệm suy nghĩ.

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.