Алгоритм, час роботи якого залежить від P проти NP


18

Чи відомий явний приклад алгоритму з властивістю таким, що якщо то цей алгоритм не запускається в поліноміальний час, а якщо то він працює в поліноміальний час?ПNПП=NП


9
Типу. Якщо P = NP, універсальний алгоритм пошуку Левіна працює в поліноміальний час, коли приймаються екземпляри en.wikipedia.org/wiki/…
Еміль Йеребек підтримує Моніку

@Emil: якщо P = NP, то також P = coNP, тож чи не можна одночасно шукати Левіна за доповненням вашої мови, таким чином даючи по-справжньому полі час алгоритм для всіх примірників?
Джошуа Грохов

3
@JoshuaGrochow Для того, щоб висловити мову як coNP, мені потрібно спочатку знати алгоритм політайму для NP, перемігши всю ціль.
Еміль Йерабек підтримує Моніку

Відповіді:


17

Якщо припустити, що є доказовим у PA (або ZFC), тривіальним прикладом є такий:П=?NП

Input: N   (integer in binary format)
For I = 1 to N do
begin
  if I is a valid encoding of a proof of P = NP in PA (or ZFC)
    then halt and accept
End
Reject

Інший - менш тривіальний - приклад, який не покладається на жодне припущення, такий:

Input: x   (boolean formula)
Find the minimum i such that
  1) |M_i| < log(log(|x|))  [ M_1,M_2,... is a standard fixed TM enumeration] 
  2) and  M_i solves SAT correctly 
       on all formulas |y| < log(log(|x|))
          halting in no more than |y|^|M_i| steps
          [ checkable in polynomial time w.r.t. |x| ]
  if such i exists simulate M_i on input x 
      until it stops and accept/reject according to its output
      or until it reaches 2^|x| steps and in this case reject;
  if such i doesn't exist loop for 2^|x| steps and reject.

Якщо П=NП алгоритм незабаром чи пізніше - припустимо, на вході х0 - знайдіть індекс поліноміального часу машини Тюрінга (або вкладеної його версії) МSАТ який вирішує SAT в О(|х||МSАТ|) і для всіх входів, більших за х0 , продовжуватимуть моделювати його та зупинятись у поліноміальному часі (зауважте, що крок 2 також можна перевірити в поліноміальний час). Іншими словами, якщо П=NП алгоритм розв'язує SAT у поліноміальний час на всіх, окрім кінцевої кількості екземплярів.

Якщо ПNП алгоритм працює в експоненціальному часі.


Як я швидко вирішую, чи "I є дійсним кодуванням доказу P = NP в PA (або ZFC)"?
користувач2925716

Я

2
Високе припущення.
Jirka Hanika

1
Якщо P ≠ NP, час виконання безумовного алгоритму є суперполіномічним (за запитом), але якщо NP є лише злегка суперполіноміальним, а не експоненціальним. Ми можемо змінити алгоритм, щоб зробити його іоекспонентним, але, мабуть, зробити його експоненціальним (на відміну від просто іо-експоненціального), якщо P ≠ NP, ймовірно, такий же важкий, як і рішення P = NP.
Дмитро Тарановський

1
х|Мi|2х
Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.