Các thuộc tính không thể giải quyết được của P có gây cản trở cho việc quyết định P so với NP không? (câu trả lời: có thể)


20

Năm câu hỏi được liên kết được đặt ra và một câu trả lời tích hợp duy nhất được hy vọng cho:

  • Q1: Đỗ có tồn tại ngôn ngữ được công nhận hoàn toàn bởi những máy Turing trong  Psố mũ runtime là undecidable ?LP
  • Câu 2: Các ví dụ về các máy Turing này có thể được xây dựng chính xác không?
  • Câu 3: Những máy Turing này có thể được khởi tạo cụ thể không? ( ví dụ: bằng các phép lạ "đoán" chúng hơn là xây dựng chúng một cách tinh vi).
  • Câu 4: Những thuộc tính nào khác của P (ngoài số mũ thời gian chạy) hiện được biết là không thể giải quyết được? Đối với những thuộc tính của là câu hỏi này mở?P
  • Q5: Đừng các thuộc tính undecidable của đặt ra một trở ngại cho các decidability của P N P ?PPNP

Lưu ý cẩn thận từ "duy nhất" trong Q1 (không bao gồm câu trả lời được đề xuất của Lance Fortnow).


Kết luận và chuyển đổi sang Wiki cộng đồng

  • Câu hỏi được đặt ra, "Các thuộc tính không thể giải quyết được của P có gây cản trở cho việc quyết định P so với NP không?", Là mở và được cho là khó, vì có rất nhiều câu hỏi cụ thể (như Q1 Vỏ4 ở trên) có liên quan tự nhiên với nó.

  • Sách chuyên khảo khả thi năm 1978 của Juris Hartmanis Tính toán khả thi và các thuộc tính phức tạp có thể cung cấp cung cấp một tài liệu tốt cho văn học và (dường như) không có đánh giá nào được công bố kể từ khi Hartmanis '.

  • Lớp câu hỏi này chưa đủ khám phá rằng thách thức tìm kiếm bằng chứng nghiêm ngặt được kết hợp chặt chẽ với thách thức chọn định nghĩa khởi đầu tốt.

  • Những nhận xét chu đáo và bản phác thảo bằng chứng sâu sắc được cung cấp bởi Travis Service và Alex ten Brink được ghi nhận và đánh giá cao.

Vì câu hỏi mở và vì nó đang được thảo luận trên nhiều luồng weblog toán học ( 1 , 2 , 3 , 4 , 5 , 6 ), nên câu hỏi này đã được gắn cờ để chuyển đổi sang Community Wiki.


Cập nhật II và Tóm tắt

Tôi đã trở thành nhận thức được rằng Juris Harmanis' 1978 chuyên khảo tính khả thi và chứng minh phức tạp Thuộc tính có thể được đọc như một chuyên sâu để đáp ứng Q1-5 . Hơn nữa, các bản phác thảo bằng chứng Q1Q4 (xuất sắc) được cung cấp dưới đây bởi Travis ServiceAlex ten Brink cung cấp một sự khẳng định hiện đại và mở rộng kết luận chung của Hartmanis rằng:

Kết quả về sự phức tạp của các tính toán thay đổi hoàn toàn nếu chúng ta chỉ xem xét các thuộc tính của các tính toán có thể được chứng minh chính thức (nhấn mạnh bởi Hartmanis) ...

Do đó, chúng ta nên kỳ vọng rằng các kết quả về tính tối ưu của tất cả các chương trình tính toán cùng chức năng như một chương trình đã cho sẽ khác với kết quả tối ưu về tất cả các chương trình có thể được chứng minh chính thức tương đương với chương trình đã cho. ...

Chúng ta [nên] xem xét khả năng vấn đề nổi tiếng này [ ] có thể không giải được trong một lý thuyết toán học chính thức, chẳng hạn như lý thuyết tập hợp.P=?NP

Cuối cùng, tôi hy vọng sẽ đăng, như một "câu trả lời" chính thức của TCS StackExchange , trích dẫn thêm từ chuyên khảo của Hartmanis (đáng chú ý là có tầm nhìn xa).

Rõ ràng từ cả chuyên khảo của Hartmanis và từ các câu trả lời do Travis và Alex cung cấp, Q1 Q15 vượt xa đáng kể so với lý thuyết phức tạp hiện nay. Hơn nữa, những câu hỏi / câu trả lời rõ ràng là đủ tinh tế để yêu cầu điều chỉnh xác định cẩn thận và biện minh cho các giải trình dài chuyên khảo mà tôi hy vọng sẽ không khiến mọi người không đăng câu trả lời thêm. :)

Để thảo luận thêm về kỹ thuật, hãy xem câu trả lời của Joel David Hamkins trên MathOverflow cho câu hỏi Một vấn đề có thể đồng thời là thời gian đa thức và không thể giải quyết được không? (được đề xuất bởi Alex ten Brink).

Nếu trong chuyên khảo của Hartmanis, người ta thay thế cho tính toán của các chức năng, đó là cụm từ mô phỏng động lực học, thì kết quả có thể được đọc như là một luận điểm về các giới hạn lý thuyết phức tạp đối với kỹ thuật hệ thống, đây là lý do thực tế tại sao các kỹ sư của chúng tôi quan tâm đến những điều này các vấn đề.

Một ý kiến ​​trái ngược với Hartmanis 'gần đây đã được Oded Goldreich đưa ra trong một lá thư gửi cho biên tập viên CACM có tựa đề "Về tính phức tạp tính toán" :

Thật không may, hiện tại chúng tôi thiếu câu trả lời lý thuyết tốt cho hầu hết các câu hỏi tự nhiên liên quan đến tính toán hiệu quả. Đây là trường hợp không phải vì chúng tôi hỏi những câu hỏi sai, mà là vì những câu hỏi này rất khó.

Tất nhiên, có thể hiểu được một cách hoàn hảo rằng ý kiến ​​của cả Hartmanis và Goldreich sẽ được chứng minh là đúng, ví dụ, một bằng chứng chính thức về tính không thể phân tách của PvsNP có thể được coi là hợp lệ hóa cả hai quan điểm.


Cập nhật tôi

Nhận xét chu đáo (bên dưới) của Travis Service và Alex ten Brink gợi ý (có hiệu lực) rằng trong Q1 cụm từ "không thể giải quyết được" không đồng nghĩa với "không thể kiểm chứng được" và câu trả lời cho Q2 5 có thể phụ thuộc vào sự khác biệt này. Không rõ ràng (với tôi) sự lựa chọn xác định nào sẽ dẫn đến các định lý mạnh nhất, và cũng vậy, nắm bắt tốt nhất trực giác của chúng ta về lớp P. Câu trả lời và nhận xét giải quyết câu hỏi này được hoan nghênh.

Một nhận xét của Felix Klein trong Toán học sơ cấp của ông theo quan điểm nâng cao: Hình học (1939) xuất hiện trong tâm trí:

Một ví dụ khác về một khái niệm xảy ra với độ chính xác ít nhiều trong nhận thức ngây thơ về không gian, mà chúng ta phải thêm vào như một sự bổ sung cho hệ thống hình học của chúng ta, là khái niệm về một đường cong (tùy ý) . Mọi người tin rằng anh ta biết đường cong là gì cho đến khi anh ta học được rất nhiều toán học đến mức vô số những bất thường có thể làm họ bối rối.

Cũng như các đường cong, do đó, với các ngôn ngữ được chấp nhận bởi các máy Turing trong  thứ mà trước đây (đối với tôi) dường như đơn giản và tự nhiên nhất trong tất cả các lớp phức tạp hiện nay làm tôi bối rối bởi (vô số?) Các thuộc tính không thể kiểm chứng và / hoặc không thể kiểm chứng của các thành viên của nó . Động lực rộng lớn trong việc hỏi Q1 Vang5 là tìm ra con đường xuyên qua lớp bụi khó hiểu này, nhưng câu trả lời được đưa ra cho đến nay (bởi Travis Service và Alex ten Brink) đã cung cấp thêm cơ sở cho sự nhầm lẫn!P

Thế hệ các nhà toán học của Klein đã lao động mạnh mẽ để tìm ra các định nghĩa tốt cho các đường cong và các yếu tố cơ bản khác của lý thuyết tập hợp, hình học và phân tích. Một tổng quan cấp tiểu học có thể được tìm thấy trong cuộc thảo luận Wikipedia về Alexander Horned Sphere

      Hình ảnh của Horner Sphere
      Việc nhúng một quả cầu trong R3

Trong thế kỷ 20, phân tích các "đa tạp hoang dã" như hình cầu Alexander đã giúp làm rõ sự khác biệt giữa các đa tạp tôpô, đa tạp liên tục và đa tạp. Tương tự như vậy trong thế kỷ 21, có lẽ việc tinh chỉnh các định nghĩa liên quan đến sẽ giúp chế ngự các ngôn ngữ hoang dã của P và các máy Turing hoang dã mặc dù việc chỉ định các sàng lọc phù hợp sẽ không phải là nhiệm vụ dễ dàng.PP


Lý lịch

Những câu hỏi được liên kết này phát sinh từ các câu hỏi wiki cộng đồng MathOverflow " Những vấn đề hấp dẫn nhất của Turing trong toán học là gì? " Và " Những khái niệm nào được sử dụng nhưng không được xác định rõ ràng trong toán học hiện đại? " Đặc biệt, Colin Tan yêu cầu câu hỏi được hỏi ở trên là gì? đăng dưới dạng một câu hỏi riêng biệt.

Để biết nền tảng kỹ thuật, hãy xem câu hỏi TCS StackExchange "Giới hạn thời gian chạy trong P có thể quyết định được không? ", Cụ thể là bằng chứng ngắn gọn của Emanuele Viola rằng câu trả lời là "không". Cũng lưu ý rằng kết quả tương tự được chứng minh bởi Juris Hartmanis trong các tính toán khả thi và tính chất phức tạp có thể chứng minh được của ông (1978).

Nhật ký web Lance Fortnow / Bill GASARCH tuần này Độ phức tạp tính toán đang tổ chức cuộc thăm dò ý kiến ​​của họ " hay không?P=NP " - câu hỏi thứ năm và cuối cùng được mời bình luận về câu hỏi của Fortnow / GASARCH.


1
như @Alex ten Brink chỉ ra, các máy Turing mà bạn nói trong Q1 không được xác định rõ. Tôi nghĩ rằng bạn cần phải suy nghĩ về 's và ' s trong câu hỏi của bạn như trái ngược với bằng chứng Viola.
Sasho Nikolov

@Shasho, cảm ơn bạn ... một sự thừa nhận và tóm tắt các điểm của Alex (và cả điểm của Travis Service nữa) đã được thêm vào câu hỏi được hỏi.
John Sidles

1
Lưu ý rằng bằng chứng Emanuele Viola áp dụng cho một rất loạt các vấn đề: một phiên bản khái quát chứng minh cho bất kỳ chức năng thời gian constructible với f ( n ) = ω ( n log n )g ( n ) = ω ( f ( n ) ) rằng không thể đối với một TM mà nó được hứa hẹn sẽ dừng lại trong thời gian t ( n )t ( n ) = O (f,gf(n)=ω(nlogn)g(n)=ω(f(n))t(n) , để quyết định xem t ( n ) = ω ( f ( n ) ) t ( n ) = O ( g ( n ) ) . Tôi không thực sự thấy liên kết đến P vs N P ở đây. t(n)=O(f(n))t(n)=ω(f(n))t(n)=O(g(n))PNP
Alex ten Brink

2
Đối với tôi, liên kết đến P vs NP phát sinh bằng cách tương tự với hình học. Các định nghĩa chính thức hóa khái niệm về tính liên tục được phân tầng rộng rãi từ đa tạp Kahler đến đa tạp Riemann thành đa tạp trơn tru cho các đa tạp tôpô đến các tập hợp điểm (với nhiều điểm khác biệt), và chính thức hóa các khác biệt này là điều cần thiết để tiến bộ trong toán học. Tương tự, tập hợp các máy Turing trong P và tập hợp các ngôn ngữ mà các máy này chấp nhận, dường như bao gồm các thuật toán "hoang dã" có vai trò trong lý thuyết phức tạp (có lẽ?) Tương tự như các tập hợp điểm "kỳ lạ" trong hình học và cấu trúc liên kết.
John Sidles

1
@ John, tôi đã thấy những gợi ý về những suy nghĩ này trong các bình luận trên blog của bạn (khác nhau sớm hơn .. có thể sớm hơn nhiều) và tôi khá hài lòng khi thấy bạn đã tiến xa đến mức nào. Mát mẻ!
Daniel Apon

Câu trả lời:


15

Đối với câu hỏi 1 câu trả lời là không. Đặt một ngôn ngữ trong P và đặt M là bất kỳ thời gian đa thức nào Máy Turing nhận ra L (có thời gian chạy được coi là không thể giải quyết được). Với mỗi k N, hãy để M k là máy Turing trên đầu vào x có độ dài n vòng lặp đầu tiên cho n k bước sau đó chạy M trên x cho các bước n k + k và chấp nhận nếu M chấp nhận x (trong các n k + k đóLPMLkNMkxnnkMxnk+kMxnk+kcác bước) và từ chối khác. Thời gian chạy của Θ ( n k ) cho mỗi k .MkΘ(nk)k

chạy trong thời gian đa thức nên có một số k N sao cho M chạy trong O ( n k ) (ngay cả khi chúng ta không biết k là gì) và do đó với tất cả k đủ lớn, M k nhận ra L và có một thời gian chạy quyết định.MkNMO(nk)kkMkL

CHỈNH SỬA

Tôi nghĩ rằng câu trả lời sau đây đúng hơn về ý nghĩa của những gì người đăng ban đầu dự định với câu hỏi 1.

Định lý: Tồn tại một ngôn ngữ sao cho nếu N là bất kỳ Máy Turing nào quyết định L thì ít nhất một trong những điều sau đây là đúng:LPNL

1) Không tồn tại bằng chứng chấp nhận L , hoặcNL

2) Không tồn tại một bằng chứng cho thấy dừng lại trong các bước f ( n ) (đối với bất kỳ chức năng f ( n ) ) nào.Nf(n)f(n)

MMM

L={n:nn s.t. M halts in n steps when run blank tape}

MLM

NNLNf(n)N1MNMNNLN


5
Travis không trả lời câu hỏi được nhắc lại, nhưng đây là một tình huống kỳ lạ khi có một số mũ có thể chứng minh được nhưng chỉ đối với máy bạn không thể chứng minh được giải quyết vấn đề.
Lance Fortnow

Đây là một câu trả lời hay cho Q1 ... và tôi hoàn toàn đồng ý với Lance rằng thuật toán này là một thành viên rất lạ của lớp P. Một phần động lực của câu hỏi là nắm bắt trực giác (thông qua các định nghĩa phù hợp với việc chứng minh định lý ) rằng các thuật toán trong P mà chúng tôi "quan tâm" (theo một nghĩa nào đó) là các thuật toán mà hiệu suất của chúng tôi có thể "xác minh" (theo một cách nào đó) ... ví dụ này hoàn toàn đánh bại mục đích đó! Câu trả lời tốt đẹp! :)
John Sidles

Nhận xét tốt đẹp này (mà tôi vẫn đang suy nghĩ) đã gợi ý đến nhận xét của Felix Klein "Một khái niệm xảy ra với độ chính xác ít nhiều trong nhận thức ngây thơ về không gian, mà chúng ta phải thêm vào như một sự bổ sung cho hệ thống hình học của chúng ta, là khái niệm của một đường cong (tùy ý) . Mọi người đều tin rằng anh ta biết đường cong là gì cho đến khi anh ta học được rất nhiều toán học đến mức vô số những bất thường có thể làm họ bối rối. " Vấn đề là để đạt được tiến bộ trên P so với NP, có lẽ một bước quan trọng là tinh chỉnh định nghĩa của P để loại trừ "vô số bất thường có thể xảy ra".
John Sidles

2
NLL

Bản chỉnh sửa của Travis về câu trả lời đã tốt của anh ấy cung cấp nhiều hơn để suy nghĩ. Vì quá trình này sẽ mất một lúc (đối với tôi), tôi muốn bày tỏ sự đánh giá cao và cảm ơn ngay bây giờ (và nhận xét kỹ thuật sau) cho cả Travis (Dịch vụ) và Alex (mười Brink). Mặc dù họ là sinh viên, ý kiến ​​của họ (IMHO) đã trưởng thành và thú vị. Người ta biết rằng Alan Turing đã nghĩ ra "Về những con số có thể tính toán được, với một Ứng dụng cho Entscheidungsprobols " trong khoảng từ 21 đến 23 năm; do đó, các sinh viên đã tấn công các vấn đề tương tự với thành công ... chúng ta có thể hy vọng điều tương tự cho Alex & Travis.
John Sidles

13

ni+1nii


Phải ... mánh khóe đó là bản chất của bằng chứng của Emanuele Viola và Juris Harmanis về tính không ổn định của P (ví dụ). Mặt khác, trường hợp cụ thể là các máy Turing được xây dựng bằng thủ thuật này đều nhận ra các ngôn ngữ L cũng được các máy Turing nhận ra trong P có thời gian chạy là có thể quyết định được. Đây là lý do tại sao Q1 được đặt câu (một cách cẩn thận!) Như một câu hỏi về ngôn ngữ thay vì về máy Turing ... chính xác để loại trừ việc xây dựng Hartmanis / Viola ... mà không cản trở (theo nhận xét của bạn) các bằng chứng hiện có mà P \ ne EXP.
John Sidles

... và chỉ để đề cập đến, những ngôn ngữ L được công nhận hoàn toàn bởi máy Turing có số mũ runtime là undecidable, là ngôn ngữ thú vị từ một phức tạp lý thuyết (và mật mã) point-of-view ... họ dường như tồn tại trong một Gödel "vùng xám" giữa thuật toán có thể nén (nhưng theo định nghĩa không thể kiểm chứng được như vậy) và không thể nén được (và theo định nghĩa cũng không thuộc lớp đó).
John Sidles

8

Sau khi suy nghĩ nhiều hơn về chủ đề này, tôi nghĩ rằng tôi đã tìm thấy câu trả lời (có thể) cho Q4 của bạn .

  • Câu 4: Những thuộc tính nào khác của P (ngoài số mũ thời gian chạy) hiện được biết là không thể giải quyết được? Đối với những thuộc tính của PPP

Tôi đã chứng minh một biến thể của định lý Rice trả lời câu hỏi của bạn cho hầu hết các thuộc tính. Lần này tôi sẽ cố gắng giải thích rõ ràng hơn (câu trả lời của Travis Service rõ ràng và tổng quát hơn nhiều so với câu trả lời trước đây của tôi).

EEO(f(n))f(n)=Ω(nlogn)f(n)=Ω(g(n))g(n)

f(n)P

SSSSRS

PSP

S

P(E)EPESE(A,i)AiAAi

SsSSCsCg(n)

function H(x)
h := simulate A on i for |X| steps and return whether it halted
if h == 'halted' then
    reject
else
    if C(x) accepts then
        accept
    else
        reject
    fi
fi

O(nlogn)

P(H)AiAitHX|X|tHSP(H)

AiCsSP(H)P(H)


Đây là một lập luận rất mạnh mẽ và linh hoạt, và tôi sẽ mất một lúc để nắm bắt nó ... có một câu nói của những người nông dân ở miền trung Hoa Kỳ "Tôi cảm thấy như một con lợn được cho xem một chiếc đồng hồ đeo tay!" Có vẻ như (theo lập luận của bạn) rằng P được phú cho các thuộc tính không thể giải quyết được; Điều tôi gặp khó khăn trong việc nắm bắt là liệu các ngôn ngữ L được P nhận ra tương tự có nhiều thuộc tính không thể giải quyết được không ... việc thực hiện xây dựng các ngôn ngữ ví dụ cụ thể có các thuộc tính tự nhiên không thể giải quyết được là rất khó chịu (đối với tôi). Cảm ơn bạn cho một câu trả lời xuất sắc, kích thích tư duy.
John Sidles

1
PP

Alex, tôi chắc chắn thú nhận đã bị nhầm lẫn ... nhưng không phải về điều đó! Những gì tôi muốn xây dựng, hoặc (ít mong muốn hơn) chứng minh sự tồn tại / không tồn tại của, sẽ là (ví dụ) một ngôn ngữ L trong P có thuộc tính mà mọi máy Turing chấp nhận L đều không được xác minh trong P hoặc không thể xác minh được chấp nhận L. Những ngôn ngữ này L sẽ thuộc về P "oracularly" ... khả năng P bao gồm các ngôn ngữ thuần túy là khó hiểu đối với tôi ... đặc biệt là vì nó hoàn toàn không rõ ràng (đối với tôi) làm thế nào ngôn ngữ thuần túy như vậy có thể xảy ra được lấy mẫu cụ thể và trưng bày.
John Sidles

Oh yeah ... và hỏi ngược lại (cũng khó hiểu) câu hỏi ... cho một ngôn ngữ L được đưa ra trong NP mà có thể được chấp nhận hoàn toàn bởi sấm ngữ máy Turing ... bởi những gì phương pháp chứng minh chúng ta có thể có thể thiết lập rằng L không được công nhận bởi bất kỳ P sấm ngữ máy Turing ... và P do đó tách biệt với NP? Hoặc giả sử rằng chúng tôi đã chứng minh sự tồn tại của ngôn ngữ L trong NP không được nhận ra bởi bất kỳ máy Turing nào trong P ... với hạn chế là L hoàn toàn là ngôn ngữ ... và chúng tôi không thể thể hiện ngôn ngữ đó ... chúng tôi có nên hài lòng không mà P! = NP? Những câu hỏi này là khó hiểu!
John Sidles

4

Tôi có thể trả lời Q1 của bạn theo cách phủ định, từ đó cũng trả lời Q2Q3 theo cách phủ định. Tôi không chắc chắn về Q4 hoặc Q5 mặc dù.

  • LP

MTMT

TkTO(nk)MkTTk T

LPTO(nk)kLMkT

LPTLT

LPMTLTL

LPLO(nk)Mnnk+1nk+2L

MPLLkM

Kiểu suy nghĩ về tính không ổn định này khá phổ biến rõ ràng, tôi nhớ một bài đăng (blog?) Về một vấn đề rất giống nhau: câu hỏi là "liệu có thể quyết định được liệu Pi có" số 0 cuối cùng "hay không, vì vậy liệu Pi có dừng số không trong đó không đại diện thập phân nếu bạn đi xuống đủ xa đại diện đó. Chúng tôi hiện không biết liệu đây là trường hợp. Chúng tôi thậm chí có thể không chứng minh được điều đó, hoặc thậm chí có thể độc lập với các hệ tiên đề của chúng tôi (và do đó không thể chứng minh được). Nhưng, vì câu trả lời là đúng hoặc sai, một TM trả về đúng và một TM trả về sai sẽ quyết định vấn đề hoặc do đó vấn đề là có thể quyết định được.

Tôi sẽ xem nếu tôi có thể tìm thấy bài đăng trên internet ở đâu đó.

Chỉnh sửa:

Tôi tìm thấy nó trên Mathoverflow .


bình luận của bạn và tài khoản của Travis Service đều tuyệt vời. Dường như trong Q1 , cụm từ "không thể giải quyết được" không đồng nghĩa với "không thể kiểm chứng được" và không rõ ràng (đối với tôi) định nghĩa (a) dẫn đến các định lý tốt nhất và (b) nắm bắt tốt nhất trực giác của lớp P. Nhận xét về câu hỏi này được chào đón.
John Sidles

Cảm ơn Alex vì liên kết (với câu hỏi của BTC "Có thể một vấn đề đồng thời là thời gian đa thức và không thể giải quyết được không?") ... Tôi đã chỉnh sửa bài đăng chính để đưa vào liên kết đó.
John Sidles
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.