Giới hạn thời gian chạy trên các thuật toán của NP hoàn thành các vấn đề giả sử P ≠ NP


13

Giả sử P N PPNP .

Chúng ta có thể nói gì về giới hạn thời gian chạy của tất cả các vấn đề hoàn thành NP?

tức là các hàm chặt nhất L , U : NNL,U:NN mà chúng ta có thể đảm bảo rằng một thuật toán tối ưu cho mọi vấn đề hoàn thành NP chạy trong thời gian ít nhất là ω ( L ( n ) )ω(L(n)) và nhiều nhất là o ( U ( n ) )o(U(n)) trên một đầu vào có độ dài nn ?

Rõ ràng, c : L ( n ) = Ω ( n c )c:L(n)=Ω(nc) . Ngoài ra, U ( n ) = O ( 2 n ω ( 1 ) )U(n)=O(2nω(1)) .

Nếu không giả sử Q P N PQPNP , E T HETH , hoặc bất kỳ giả định nào khác không được ngụ ý bởi P N PPNP , chúng ta có thể đưa ra giới hạn nào tốt hơn cho L , UL,U không?

BIÊN TẬP:

Lưu ý rằng ít nhất một trong số L , UL,U phải cách xa giới hạn tôi đã đưa ra ở đây, vì là sự cố NPC, các vấn đề này đã giảm thời gian nhiều lần với nhau, nghĩa là nếu một số vấn đề NPC có thuật toán tối ưu về thời gian f ( n )f(n) , sau đó tất cả các vấn đề có thuật toán (tối ưu hoặc không) của thời gian chạy O ( f ( n O ( 1 ) ) )O(f(nO(1))) .


Nếu P NP, chúng ta có thể nói rằng giới hạn thời gian chạy lớn hơn bất kỳ đa thức nào .... afaik không, giới hạn tốt hơn không được biết .... rất nhiều ký hiệu không chg rằng ... có tồn tại siêu đa thức-nhưng-phụ các chức năng, ví dụ 2 log n2logn
vzn

Thứ nhất, 2 log n chỉ là tuyến tính, vì vậy tôi đoán bạn có nghĩa là 2 p o l y l o g ( n ) được gọi là lớp Q P . Tôi hoàn toàn nhận ra rằng P N P không có nghĩa là bất kỳ hàm NP-Complete nào sẽ chạy theo thời gian theo cấp số nhân, nhưng đó không phải là điều tôi đang hỏi. Ví dụ, giả sử P N P , là nó có thể là một vấn đề NPC có thể được giải quyết trong 2 l o g ( n ) l o g *2logn2polylog(n)QPPNPPNP( N ) , nơilo g * (n)là nghịch đảo chức năng Ackermann? Các ký hiệu chỉ đơn thuần là một công cụ được sử dụng để thể hiện câu hỏi của tôi một cách chính thức ..2log(n)log(n)log(n)
RB

thx cho sự điều chỉnh. rất ít được biết đến trong khu vực này afaik. thử câu hỏi này NTime (n ^ k) =? DTime (n ^ k) tcs.se
vzn

@RB Mặc dù đúng là trong mỗi "thế giới có thể" có giới hạn dưới và trên nằm trong đa thức của nhau, nhưng không rõ ràng về giới hạn tiên nghiệm là gì.
Yuval Filmus

Câu trả lời:


2

Giải thích của tôi về câu hỏi đó là hỏi về các khả năng trong thế giới tương đối hóa . Giả sử rằng trong một số thế giới tương đối hóa, P N P . Chúng ta có thể suy luận bất cứ điều gì không tầm thường về sự phức tạp thời gian của các vấn đề hoàn thành NP không? Các Baker-Gill-Solovay lập luận cho thấy rằng chúng ta có thể "ép buộc" một số vấn đề NP đòi hỏi thời gian mũ, do đó giới hạn trên được đưa ra trong câu hỏi là về cơ bản tối ưu.PNP

Về giới hạn dưới, chúng tôi phác thảo bên dưới một bằng chứng liên quan đến một số lời sấm, N P = T I M E ( 2 O ( log 2 n ) ) . Giả sử rằng bằng chứng phác thảo là chính xác, chúng ta cũng có thể áp dụng nó cho các hàm nhỏ hơn 2 O ( log 2 n ) và điều này cho thấy giới hạn dưới được đưa ra trong câu hỏi về cơ bản là chặt chẽ.NP=TIME(2O(log2n))2O(log2n)

Bằng chứng phác thảo. Chúng tôi xây dựng hai phép lạ O 1 , O 2 : đầu tiên hoạt động giống như một vấn đề hoàn chỉnh T I M E ( 2 O ( log 2 n ) ) và lần thứ hai thực hiện đường chéo Baker Baker Gill Muff Solovay. Thật đơn giản để đóng gói cả hai nhà tiên tri vào một nhà tiên tri duy nhất.O1,O2TIME(2O(log2n))

Nhà tiên tri O 1 bao gồm tất cả các cặp M , x M là một máy Turing oracle chấp nhận x trong thời gian chạy 2 2 O1M,xMxđăng nhập | x | khi được tiếp cận với các thầy moO1,O2hạn chế việc xâm nhập của chiều dài tối đa là222log|x|O1,O2đăng nhập | x | . (Đây không phải là một định nghĩa tròn.)2log|x|

Nhà tiên tri O 2 được định nghĩa trong cùng một cách mà nhà tiên tri được quy định tại Baker-Gill-Solovay: cho mỗi oracle tốc độ xử lý Turing máy M chạy trong thời gian T = 2O2M o ( log 2 n ) , chúng tôi tìm thấy một số chiều dài đầu vàonlà "không được chạm", chạyMtrên 1 n chocác bướcTvà với mỗi truy vấn tới O 2 có kích thướcn, chúng tôi đánh dấu rằng đầu vào này không nằm trong O 2 (đối với các truy vấn khác, chúng tôi cũng đánh dấu rằng đầu vào không có ở đó, trừ khi chúng tôi đã quyết định rằng nó ở OT=2o(log2n)nM1nTO2nO22 ). Các truy vấn đến O 1 được xử lý tương tự (như các truy vấn ngầm đối với O 1 , O 2 có kích thước nhỏ hơn, được xử lý đệ quy); thông báo rằng truy vấn như vậy không bao giờ đề cập đến chuỗi có độ dài n trong O 2 , vì 2 O2O1O1,O2nO2đăng nhập T <n. Nếu máy chấp nhận, chúng tôi đánh dấu tất cả các chuỗi có độ dàintrongO2là thiếu, nếu không, chúng tôi chọn một số chuỗi có độ dàinvà đặt nó vàoO2.2logT<nnO2nO2

Lớp P O 1 , O 2 bao gồm tất cả các chương trình đang chạy trong thời gian 2 2 O ( PO1,O2log n ), làm cho các truy vấn đểO1,O2kích thước2O(22O(logn)O1,O2log n ). LớpNPO1,O2có dạngx| y| <nCφ(2O(logn)NPO1,O2 x , y ) , nơi φ P O 1 , O 2 , và vì vậy nó được chứa trong lớp của tất cả các chương trình đang chạy trong thời gian 2 n C và làm cho các truy vấn oracle kích thước 2 O ( x|y|<nCφ(x,y)φPO1,O22nClog n ). Cái sau được chứa trongTIME(2log2nC)O1,O2, vì chúng ta có thể sử dụngO1để quyết định nó. Điều này cho thấyNPO2O(logn)TIME(2log2nC)O1,O2O1 1 , O 2TIME(2 O ( log 2 n ) ) O 1 , O 2 .NPO1,O2TIME(2O(log2n))O1,O2

Đối với hướng khác, gọi L là ngôn ngữ bao gồm 1 n cho mỗi n sao cho O 2 chứa một số chuỗi có độ dài n . Bằng cách xây dựng O 2 , L T I M E ( 2 o ( logL1nnO2nO2 2 n ) ) O 1 , O 2 , trong khi rõ ràngLNP O 1 , O 2 . Điều này cho thấyNPLTIME(2o(log2n))O1,O2LNPO1,O2O 1 , O 2 =TIME(2 O ( log 2 n ) ) O 1 , O 2 .NPO1,O2=TIME(2O(log2n))O1,O2


Tôi phải admint tôi không hoàn toàn hiểu được câu trả lời của bạn, nhưng nếu như bạn đã đề cập, một số vấn đề NP-đầy đủ Π là chỉ có thể giải quyết trong Ω ( 2 n c ) , sau đó tất cả các vấn đề khác NPC cũng chỉ có thể giải quyết trong Ω ( 2 n Ω ( 1 ) ) , như có một thời gian giảm nhiều đối với họ từ Π , có nghĩa là nếu không bạn muốn có một thuật toán tốt hơn cho Π . Điều này ngụ ý ví dụ Q P N PE T H phải không? Tôi đang thiếu gì?ΠΩ(2nc)Ω(2nΩ(1))ΠΠQPNPETH
RB

Vâng, nó không bao hàm E T H , nhưng nó trông nó có thể bao hàm Q P N P . ETHQPNP
RB

Bạn không thiếu thứ gì. Có một thế giới tương đối hóa trong đó ETH là đúng. Có một thế giới tương đối hóa khác trong đó P = NP, và đặc biệt ETH là sai.
Yuval Filmus

Nhưng không phải trong tất cả các thế giới tương đối hóa trong đó P N P , Q P N P cũng đúng, phải không? Có một cơ hộiPNPQPNP P Q P = N P . Từ những gì tôi hiểu được từ câu trả lời của bạn, nếu P N P tồn tại một vấn đề NPC có giới hạn dưới là hàm mũ và tôi tự hỏi tại sao nó lại đúng.
RB

1
Trong câu trả lời của tôi, tôi (cố ý) đưa ra một thế giới tương đối hóa trong đó N P = T I M E ( n O ( log n ) ) . Một thế giới tương đối hóa khác có N P = T I M E ( 2 n O ( 1 ) ) . Trong thế giới tương đối hóa chưa khác, P = N P . Về Q P , tôi không yêu cầu bất cứ điều gì về nó.
Yuval Filmus
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.