NP-повна задача

Діаграма Венна відношення між класами складності задач (у випадку вірності гіпотези P ≠ NP).

NP-повна задача (англ. NP-complete) — в теорії алгоритмів та теорії складності це задача, що належить до класу NP та всі задачі з класу NP можна звести до неї за поліноміальний час.[1]

Формальне визначення

Нехай L {\displaystyle L}  — мова (проблема) що належить до класу NP. Мова L {\displaystyle L} називається NP-повною якщо виконуються такі умови:

  1. L {\displaystyle L} належить до NP.
  2. Для довільної мови L {\displaystyle L'} в NP існує зведення до L {\displaystyle L} за поліноміальний час.[2]

Якщо довільний окремий випадок задачі L 1 {\displaystyle L_{1}} можна перетворити в деякий окремий випадок задачі L 2 {\displaystyle L_{2}} в такий спосіб, що розв'язок задачі L 1 {\displaystyle L_{1}} можна отримати за поліноміальний час від розв'язку задачі L 2 {\displaystyle L_{2}} то кажуть, що L 1 {\displaystyle L_{1}} зводиться до L 2 {\displaystyle L_{2}} .[1]

Якщо P ≠ NP, то всі NP-повні проблеми знаходяться в множині NP — P, через це доведення NP-повноти задачі можна розглядати як додатковий аргумент на користь того, що проблема не належить до класу P і для неї не існує точного поліноміального алгоритму.

NP-повнота в сильному сенсі

Задача називається NP-повною в сильному сенсі, якщо у неї існує підзадача, яка:

  1. Не є задачею з числовими параметрами (тобто максимальне значення величин, що зустрічаються в цій задачі, обмежено зверху поліномом від довжини входу),
  2. Належить до класу NP,
  3. Є NP-повною.

Клас таких задач називається NPCS. Якщо гіпотеза P ≠ NP справедлива, то для NPCS задач не існує псевдополіноміального алгоритму.

Гіпотеза P ≠ NP

Рівність класів P і NP вже понад 30 років є відкритою проблемою. Наукове співтовариство схиляється до негативного вирішення цього питання — у цьому випадку за поліноміальний час вирішувати NP-повні задачі не вдасться.

Приклади

Докладніше: Список NP-повних задач

Див. також

Примітки

  1. а б Рейнгольд, Нивергельт Ю., Део Н. (1980). Комбинаторные Алгоритмы (рос.) . Москва: Мир. с. 442—443.
  2. John E. Hopcroft, Rajeev Motwani, Jeffrey D. Ullman (2001). Introduction to Automata Theory, Languages and Computation (англ.) (вид. 2-ге). Addison-Wesley. с. 419. ISBN 0-201-44124-1.
  • Портал «Математика»
  • п
  • о
  • р
NP-повні задачі
Класифікація
Основи
Задачі
Теорія складності обчислень
Логічні ігри
та головоломки
Списки
21 NP-повна задача Карпа  · Список NP-повних задач
Дослідники
Див. також
  • п
  • о
  • р
Вважаються легкими
Припускаються складними
Вважаються складними
  • EXPTIME
  • NEXPTIME
  • EXPSPACE
  • 2-EXPTIME
  • PR
  • RE
  • Co-RE
  • RE-complete
  • Co-RE-complete
  • PH
Інше
PROG Це незавершена стаття про програмування.
Ви можете допомогти проєкту, виправивши або дописавши її.