Không thể tính toán và Tính phức tạp: cuối cùng luôn luôn là do các đối số đường chéo?


8

Trong Khả năng tính toán, nếu chúng tôi muốn chứng minh rằng một vấn đề không phải là đệ quy hoặc không thể đệ quy, chúng tôi có thể sử dụng ví dụ như giảm các vấn đề không đệ quy hoặc không tái diễn khác, định lý Rice, định lý Rice-Shapiro, v.v. hoặc trực tiếp dựa trên sự tồn tại của một số đối số đường chéo (tức là một số chương trình hoạt động theo cách ngược lại với chương trình đầu vào , vì vậy trái ngược nhau). Trong Độ phức tạp, nếu chúng tôi muốn chứng minh rằng một số vấn đề không thể được tính toán trong một số thời điểm (bất kể mọi khiếu nại chưa được chứng minh, chẳng hạn như ), chúng tôi sử dụng các đối số, cuối cùng, dựa trên một số đối số đường chéo (ví dụ: Phân cấp thời gian định lý chứng minhM ' M = M ' P N P E X P T I M EMMM=MPNPEXPTIMEcác vấn đề đầy đủ không nằm trong , nhưng định lý đó cũng được chứng minh bằng cách sử dụng một đối số đường chéo).P

Vì vậy, câu hỏi của tôi là như sau. Có phải tất cả các kết quả không thể quan trọng trong Khả năng tính toán và Độ phức tạp (không thể thực hiện được, không thể áp dụng cho một số kết quả chưa được chứng minh) cuối cùng là do một số đối số chéo? Đó là, liệu tất cả "kiến thức bất khả thi" quan trọng của chúng tôi về Khả năng tính toán và Độ phức tạp đến từ thực tế là các chương trình đủ mạnh để thực hiện các chương trình?

Kết quả không thể quan trọng duy nhất đến với tâm trí của tôi mà cuối cùng không phải là do một đối số đường chéo là hàm Ackermann không phải là đệ quy nguyên thủy. Tôi có đang thiếu các mẫu đối trọng quan trọng khác của "quy tắc" rõ ràng này không?

EDIT (ngày 18 tháng 11): Xin lỗi vì ngụ ý rằng câu hỏi của tôi đặc biệt tập trung vào chính đối số đường chéo, nhưng tôi quan tâm hơn đến tất cả các đối số dựa trên tham chiếu bản thân của các chương trình (bao gồm đối số đường chéo, nghịch lý Berry, v.v.). Đối với các ngôn ngữ đơn giản hơn (ví dụ: thông thường hoặc không có ngữ cảnh), chúng tôi có các đối số không thể "cấu trúc" dựa trên cách các ngôn ngữ này được xây dựng (ví dụ: bơm chanh). Tuy nhiên, đối với các ngôn ngữ đệ quy hoặc re, hầu hết các kết quả không thể dựa chủ yếu vào việc tự tham khảo các chương trình. Đây là những gì tôi muốn nói.


Trên thực tế, bằng chứng cho thấy hàm Ackerman không phải là pr là một ứng dụng khá cổ điển của phương pháp đường chéo!
cody

1
Ngoài ra: có thể trùng lặp cstheory.stackexchange.com/questions/6575/ trên
cody

1
Có, có một đối số đường chéo ẩn trong bằng chứng rằng một hàm có thể không chính nó, được đề cập ở đây: beta.planetmath.org/SuperexponentiationIsNotEuityary
cody

1
Có lẽ một loạt các kết quả đến từ nguyên tắc pigeonhole: Sự phức tạp Kolmogorov xuất hiện trong tâm trí ("một số chuỗi không thể nén được ..."). Tôi đặt cược 1 đô la rằng tất cả các kết quả tiêu cực "về một miền hữu hạn" có PP ở gốc :-D :-D
Marzio De Biasi

3
Giới hạn độ phức tạp của mạch và công thức được chứng minh bằng các kỹ thuật hoàn toàn khác nhau, như hạn chế ngẫu nhiên và bổ đề chuyển đổi, hoặc độ phức tạp trong giao tiếp qua các trò chơi Karchmer-Wigderson
Sasho Nikolov

Câu trả lời:


7

Giới hạn dưới trong các mô hình tính toán không đồng nhất, như các công thức và mạch boolean, được chứng minh bằng cách sử dụng các đối số tổ hợp. Một số ví dụ là phương pháp của Krapchenko sử dụng các biện pháp phức tạp chính thức, phương pháp gần đúng của Razborov cho các mạch đơn điệu, phương pháp hạn chế ngẫu nhiên, bao gồm hạn chế ngẫu nhiên + bổ đề chuyển đổi và giới hạn độ sâu sử dụng độ phức tạp trong giao tiếp qua các trò chơi Karchmer-Wigderson. Bạn có thể tìm thấy ghi chú bài giảng về tài liệu này của Sudan , Kopparty , Buss , Zwick , trong số những người khác.


Câu trả lời yêu thích cá nhân, tôi đã học được rất nhiều, cảm ơn. David's và Marzio cũng là những câu trả lời tuyệt vời.
EXPTIME-hoàn thành

9

Mô hình so sánh tiêu chuẩn giới hạn thấp hơn để sắp xếp và hầu hết các giới hạn mô hình thăm dò tế bào cho các cấu trúc dữ liệu, là vô điều kiện (để tính toán trong mô hình nhưng bạn có thể nói tương tự về giới hạn của máy Turing) và phụ thuộc vào lý thuyết thông tin thay vì chéo.


2
Ngoài ra còn có hàng tấn giới hạn vô điều kiện lý thuyết thông tin cho các mô hình khác nhau của điện toán phân tán và điện toán song song. Không có đường chéo ở đó, một trong hai.
Jukka Suomela

3

Một công cụ có thể được sử dụng để chứng minh kết quả âm tính / không thể áp dụng là phương pháp không thể nén được :

Định lý ( Định lý không nén) Cho là số nguyên dương. Với mỗi cố định , mọi tập hợp hữu hạn của cardinality có ít nhất phần tử vớicyAmm(12c)+1XC(xy)logmc

Một số ứng dụng nổi tiếng là: một máy Turing băng đơn yêu cầu các bước để quyết định ; một DFA không thể nhận ra ; không có khả năng chỉ có nhiều số nguyên tố (và ước tính kích thước của số nguyên tố thứ n chính xác trong phạm vi log n); ....O(n2){wwR}anbn

Cuối cùng, định lý trên dựa vào Nguyên lý Bồ câu có một số ứng dụng trực tiếp tốt đẹp; ví dụ:

Định lý : nếu chúng ta tô màu các điểm trong mặt phẳng màu đỏ hoặc màu xanh. Khi đó với bất kỳ khoảng cách , chúng ta có thể tìm thấy hai điểm ở khoảng cách với nhau có cùng màu.d>0d

Chứng minh : Chọn bất kỳ tam giác đều có cạnh bằng trong mặt phẳng thực. Nó có ba đỉnh, vì vậy theo nguyên tắc pigeonhole, hai trong số chúng phải có cùng màu, và chúng ở khoảng cách với nhau khi xây dựng.dd


Nó cũng đưa ra một bằng chứng tốt đẹp về sự bất khả thi của việc chỉ có nhiều số nguyên tố :). (Và ước tính kích thước của số nguyên tố thứ n một cách chính xác trong phạm vi log n.)
Joshua Grochow

1
@JoshuaGrochow: oh vâng, cảm ơn (tôi đã thêm nó vào câu trả lời) ... nó nhắc nhở tôi rằng sớm hay muộn tôi nên thêm vào blog của mình một bài viết dễ hiểu về định lý dễ hiểu này (tôi chưa bao giờ thấy nó ở bất cứ đâu ): st :-) n n 0K ( n ) log 2 ( n ) n = một bn0nn0K(n)log2(n)n=ab
Marzio De Biasi

1

Trên thực tế, vấn đề tạm dừng có thể được chứng minh mà không cần sử dụng đường chéo. (Và mọi định lý ZFC hợp lệ đều có bằng chứng ZFC sử dụng đường chéo ... hãy nghĩ về nó.)

Bằng chứng sử dụng nghịch lý Berry và tiến hành như sau:

Lập chỉ mục tất cả các máy Turing một cách hợp lý. Giả sử vì mâu thuẫn rằng vấn đề tạm dừng có thể được giải quyết. Sau đó xem xét thuật toán này:

f (N) trả về máy Turing được lập chỉ mục ít nhất X st X (X) không dừng lại và X không phải là đầu ra của bất kỳ máy Turing M nào và đầu vào I dưới N ký tự (nghĩa là M (I) xuất ra X -> | M | + | I |> = N).

Bây giờ, chúng tôi chọn N st f (N) đủ lớn phải trả về mô tả của X được mô tả chính xác bằng tính toán của f (N). Nếu f có thể tính toán được thì M = f và I = N. Ví dụ: chúng ta có thể để N = một googol (10 ^ 100).

Điều này cho thấy f (N) không phải là hàm tổng, vì đối với f (10 ^ 100), không có đầu ra thỏa đáng. Điều này mâu thuẫn với giả định rằng vấn đề tạm dừng có thể được giải quyết. Hãy xem xét mã giả sau (ít hơn 10 ^ 100 ký tự khi được mở rộng thành mã nguồn thực trong C ++ hoặc thậm chí được viết dưới dạng máy Turing) cho f:

f (N)

{

cho (int i = 1 ;; i ++)

{

  if (simulate DoesHalt(UTM(i,i)) == false)

  {

         (simulate all machines and inputs M(I) with |M|+|I|<N)

         if all such inputs do not output i

                 return i;

  }

}

}

Rõ ràng, f tạm dừng trên tất cả các đầu vào và hoạt động đúng với giả định rằng vấn đề tạm dừng có thể được giải quyết. Bằng cách trên, chúng ta có vấn đề tạm dừng không thể được giải quyết.

Bằng chứng này không sử dụng bất kỳ hình thức đường chéo. Thật vậy, bạn nên lướt qua câu hỏi của tôi:

Là một định nghĩa của nghịch lý từ, "một cái gì đó có thể được sử dụng để chứng minh vấn đề tạm dừng không thể giải quyết được?"

... cho một số cuộc thảo luận về thực tế rằng nhiều nghịch lý có thể được sử dụng thay cho nghịch lý nói dối hoặc nghịch lý của Russell để chứng minh rằng vấn đề tạm dừng không thể được giải quyết. Một số nghịch lý không đối số chéo này bao gồm Nghịch lý treo bất ngờ và (như vừa mô tả) Nghịch lý Berry.


1
Nó có nghĩa là những gì f (N) trả về chính xác là những gì tôi đã mô tả trong phần mô tả về cách f tính toán các hàm. Kiểm tra bài viết Wikipedia về nghịch lý Berry nếu điều này làm bạn bối rối (hoặc thoải mái đặt câu hỏi bổ sung trong các bình luận). Tôi có nghĩa là viết "i" thay vì "X" và sẽ sửa nó ngay. Và vâng, cụm từ dài dòng của tôi về "X không phải là đầu ra của bất kỳ M" nào có thể được đơn giản hóa như bạn đề xuất. Ngoài những điểm nhỏ này, tôi hy vọng bạn đồng ý rằng câu trả lời của tôi là đúng. Tôi sẽ giải quyết bình luận khác của bạn trong một thời điểm.
Philip White

2
Điều dường như vẫn chưa được trả lời mà OP quan tâm, có lẽ phù hợp với một câu hỏi riêng biệt, là liệu chúng ta có thể tránh tự tham khảo hoàn toàn hay không.
Kurt Mueller

2
Tôi nghĩ rằng tôi đồng ý với những người khác: bản chất của nghịch lý Berry vẫn giống như bản chất của đường chéo Cantor. Xem ví dụ: cstheory.stackexchange.com/q/21917/129 , cstheory.stackexchange.com/q/2853/129 , cstheory.stackexchange.com/q/37824/129 .
Joshua Grochow

2
@PhilipWhite: Ý tưởng của bạn về "đường chéo" khá hạn chế (trang Wikipedia nói về đối số đường chéo của Cantor , chứ không phải về chính đường chéo). Có một ý nghĩa rộng hơn nhiều mà bạn có thể đưa ra cho "đường chéo", và có liên quan đến định lý điểm cố định của Lavwere, như Joshua Grochow đã chỉ ra ở trên. Từ "đường chéo" xuất phát từ cái gọi là hình thái đường chéo , tồn tại trong bất kỳ danh mục nào có sản phẩm. Ý tưởng cơ bản về đường chéo là lấy bản đồ trong đó hai đối số cùng loại nhưng có tính chất khác nhau (...)e : A × A BAA×Ae:A×AB
Damiano Mazza

2
(...) và precomposing nó với bản đồ đường chéo để có được . Bản đồ này sau đó được sử dụng để chứng minh rằng tất cả các bản đồ có một fixpoint hay, contrapositively, để chứng minh rằng không thể tồn tại bởi vì có ít nhất một bản đồ mà không fixpoints. Bản đồ đường chéo gửi đến ; trong trường hợp của bạn, bạn đang sắp xếp bản đồ này vào "bản đồ đánh giá", obtaning . Đó không phải là vấn đề tự giới thiệu, chỉ là vấn đề sử dụng cùng một đối tượng hai lần, ở hai cấp độ "ngữ nghĩa" khác nhau. e ' B B e B B X X , X X ( X )e:ABeBBeBBXX,XX(X)
Damiano Mazza
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.