Полиномиальная сводимость


Любой язык называется сводимым по Карпу к языку , если существует функция , вычисляемая за полиномиальное время, где F(x) принадлежит в том случае, если x принадлежит . Язык называется NP-трудным, если к нему сводится любой язык NP класса, и называется NP-полным, если он NP-труден и сам сводится к NP классу. Если будет алгоритм, решающий NP-полную задачу за полиномиальное время, тогда все NP-задачи относятся к классу P.

Рассмотрим два языка и над алфавитами и . Сведение к по Карпу — это функция , вычислимая за полиномиальное время, такая, что . Таким образом, неформально язык «не сложнее» языка .