Сведение (теория сложности вычислений)

Эта статья находится на начальном уровне проработки, в одной из её версий выборочно используется текст из источника, распространяемого под свободной лицензией
Материал из энциклопедии Руниверсалис

Сведе́ние в теории сложности вычислений — преобразование одной задачи к другой. В общем случае, для алгоритма, преобразующего экземпляры задачи [math]\displaystyle{ P_1 }[/math] в экземпляры задачи [math]\displaystyle{ P_2 }[/math], которые имеют тот же ответ («да» или «нет»), говорят, что [math]\displaystyle{ P_1 }[/math] сводится к [math]\displaystyle{ P_2 }[/math], таким образом, сводимость — это отношение между двумя задачами. С помощью такой связи могут быть доказаны вычислимость задачи или её принадлежность тому или иному классу сложности.

Некоторые виды сведений: сведение по Куку, сведение по Карпу, сведение по Левину, сведение по Тьюрингу[en]. Сведение по Тьюрингу — наиболее общая форма сведения: некоторый алгоритм (вычислимый на машине Тьюринга) может быть вызван любое количество раз, при этом каждый вызов будет считаться за один шаг алгоритма; для формального определения сводимости по Тьюрингу используется понятие тьюринг-машины с оракулом.

Литература

  • Джон Хопкрофт, Раджив Мотвани, Джеффри Ульман. Введение в теорию автоматов, языков и вычислений = Introduction to Automata Theory, Languages, and Computation. — М.: «Вильямс», 2002. — С. 528. — ISBN 0-201-44124-1.

Ссылки