Làm thế nào nhanh chóng một thuật toán không xác định cho một vấn đề hoàn thành EXPTIME phải được ngụ ý ?


20

Làm thế nào nhanh chóng một thuật toán không xác định cho một vấn đề hoàn thành EXPTIME phải được ngụ ý ? Một thuật toán không xác định thời gian đa thức sẽ ngay lập tức ngụ ý điều này bởi vì nhưng không ai tin . Nếu tôi đã thực hiện đúng đại số (xem bên dưới), định lý phân cấp thời gian vẫn sẽ cung cấp hàm ý cho thời gian chạy cho bất kỳ siêu đa thức , nhưng đối với tất cả những gì tôi biết có những vấn đề hoàn chỉnh với việc giảm hiệu quả cho phép các thuật toán chậm hơn đưa ra kết quả. Có vấn đề hoàn thành EXPTIME trong đó chúng ta biết một số thứ như hoặcP N P PNPP E X P T I M E PEXPTIMEN P = E X P T I M E NP=EXPTIMEP N P PNPO ( 2 n / f ( n ) ) O(2n/f(n))f ( ) f()2 n / n 2n/n2 n / n 22n/n2 với nondeterminism là đủ?

Làm rõ "đại số": ngụ ý bằng một đối số đệm, do đó, thuật toán cho một vấn đề hoàn chỉnh EXPTIME cũng sẽ là một vấn đề cho một vấn đề hoàn chỉnh NEXPTIME. Đối với superpolynomial điều này sẽ mâu thuẫn với định lý phân cấp thời gian không xác định vì chúng ta có thể giảm sử dụng một số NTIME .P = N P E X P T I M E = N E X P T I M E 2 n / f ( n ) f ( ) L ( 2 n )P=NPEXPTIME=NEXPTIME2n/f(n)f()L(2n)


6
Tôi nghĩ rằng bạn thực sự cần thời gian chạy để có được mâu thuẫn từ định lý phân cấp thời gian. Ngoài ra tôi nghĩ rằng điều này nghe có vẻ không chắc chắn. 2 n o ( 1 )2no(1)
Sasho Nikolov

2
f(f(n))

ps: nếu bạn đăng ký một tài khoản, bạn có thể chỉnh sửa câu hỏi của mình dễ dàng hơn.
Kaveh

3
Tôi tin rằng Sasho là chính xác, nếu sao cho là và là và có thể rút gọn thành trong thời gian , thì vẫn có thể không có bất kỳ mâu thuẫn nào vì thể hiện của có thể lớn hơn lớn hơn . EXPTIME=NEXPTIMEEXPTIME=NEXPTIMELLEXPTIMEEXPTIMELLNEXPTIMENEXPTIMELLLLO(nk)O(nk)LNTIME(2kn)LNTIME(2nk)LLO(nk)O(nk)LL
Joe Bebel

Câu trả lời:


16

Tôi nghĩ rằng nó dễ dàng hơn để xoay nó.

Nếu P = N P , sau đó N T I M E ( T ( n ) ) D T I M E ( ( T ( n ) ) c ) đối với một số không đổi c , và bất kỳ T ( n ) > n . Vì D T I M E ( ( T ( n ) c ) không chứa DP=NPNTIME(T(n))DTIME((T(n))c)cT(n)>nDTIME((T(n)c)T Tôi M E ( T ( n ) c log T ( n ) ) D T I M E ( T ( n ) c + 1 ) , các phương tiện này, chúng ta không thể giải quyết, nói rằng tất cả các vấn đề trong D T I M E ( 2 n ) trong N T I M E ( 2 ε n ) đối với một số εDTIME(T(n)clogT(n))DTIME(T(n)c+1)DTIME(2n)NTIME(2ϵn)ϵ. Vì vậy, một tổ chức phi xác định thời gian 2 o ( n ) thuật toán cho một vấn đề hoàn chỉnh cho D T I M E ( 2 n ) dưới giảm gần như tuyến tính sẽ là đủ để chứng minh PN P .2o(n)DTIME(2n)PNP


1
Cảm ơn đã dành thời gian để cung cấp một lời giải thích ngắn hơn về việc tại sao D T I M E ( 2 n ) N T I M E ( 2 o ( n ) ) ngụ ý P N P . DTIME(2n)NTIME(2o(n))PNP
Michael Wehar

Và, cảm ơn vì đã chỉ ra rằng định lý phân cấp thời gian xác định hoặc không xác định có thể được sử dụng. :)
Michael Wehar

15

Câu trả lời đơn giản: Với mỗi bài toán E X P T I M E - h a r d có một hằng số c sao cho nếu chúng ta có thể giải bài toán trong N T I M E ( 2 o ( n 1EXPTIMEhardcc )), sau đóPNP.NTIME(2o(n1c))PNP

Lưu ý: Hằng số c xuất phát từ các vụ nổ kích thước cá thể xuất phát từ việc giảm.c

Biện minh: Gọi X là một vấn đề E X P T I M E - h a r d . Điều đó có nghĩa rằng tất cả các vấn đề trong E X P T I M E là đa thức thời gian rút gọn về X . Trong thực tế, chúng ta có thể hiển thị nhiều hơn.XEXPTIMEhardEXPTIMEX

Vấn đề chấp nhận cho 2 n thời gian giáp máy Turing xác định là trong D T I M E ( n 2 n ) E X P T I M E và do đó là đa thức thời gian rút gọn về X .2nDTIME(n2n)EXPTIMEX

Do đó, phải có một số hằng số c cố định sao cho mọi vấn đề trong D T I M E ( 2 n ) là thời gian đa thức có thể rút gọn thành X trong đó kích thước cá thể là O ( n c ) . Đó là, trường hợp của kích thước n được giảm với các trường hợp kích thước O ( n c ) cho X .cDTIME(2n)XO(nc)O(nc)

Bây giờ, nếu chúng ta có X N T I M E ( 2 o ( n 1c)), then DTIME(2n)NTIME(2o(n)). However, this implies PNP (see below for details).

Additional Details: One can show that P=NP c k NTIME(nk)DTIME(nck).

In other words, if you can solve an NP-complete problem in polynomial time, then there is a uniform way of speeding up any problem in NP.

Now, let's suppose that P=NP. By the preceding (with k=1) we get a constant c such that NTIME(n)DTIME(nc).

Next, we can use padding to scale up this inclusion and get NTIME(2n)DTIME(2cn).

Then, by the deterministic time hierarchy theorem, we have NTIME(2n)DTIME(2cn)DTIME(2(c+ϵ)n)

for any ϵ>0.

Therefore, we couldn't have DTIME(2(c+ϵ)n)NTIME(2n).

Further, we couldn't have DTIME(2n)NTIME(2o(n)) because by padding we would get DTIME(2(c+ϵ)n)NTIME(2o(n)).

Further Question: Does anyone have any simple examples of EXPTIME-complete problems where we can easily determine the instance size blow-up constant c?


1
The acceptance problem for DTIME(2n) is itself EXPTIME-complete, that is, the language L={T,x,1m} consisting of DTMs T that on input x accept within 2m steps, because every language LEXPTIME has some T that accepts xL in time 2O(|x|k)) for some k, so that proper choice of m=O(|x|k) reduces L to L. In particular the constant (c=1) then seems to show that the speedup (that is, f(n)) must be exponential if to show PNP, if you choose this particular EXPTIME-complete language.
Joe Bebel

1
@JoeBebel Hi Joe, thanks for the comment. I think it's valuable that you further considered this problem L. Here, we can say more than just LNTIME(2o(n)) implies PNP. For this particular artificial problem L, we may be able to say something like for any k, LNTIME(2nk) implies NTIME(n)DTIME(nkϵ) for all ϵ>0.
Michael Wehar
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.