Класс P — различия между версиями
Строка 1: | Строка 1: | ||
− | В теории сложности '''Класс''' <tex>P</tex> | + | В теории сложности '''Класс''' <tex>P</tex> — класс языков (задач), разрешимых на детерминированной машине Тьюринга за полиномиальное время, то есть |
<tex>P=\bigcup_{i=0}^{\infty} DTIME(in^i)=\bigcup_{i=0}^{\infty}\bigcup_{k=0}^{\infty} DTIME(in^k)</tex>. | <tex>P=\bigcup_{i=0}^{\infty} DTIME(in^i)=\bigcup_{i=0}^{\infty}\bigcup_{k=0}^{\infty} DTIME(in^k)</tex>. | ||
Строка 13: | Строка 13: | ||
# Замкнутость относительно [[Сведение по Карпу|сведения по Карпу]]. <tex> L \in P , M \le L \Rightarrow M \in P</tex> | # Замкнутость относительно [[Сведение по Карпу|сведения по Карпу]]. <tex> L \in P , M \le L \Rightarrow M \in P</tex> | ||
# Замкнутость относительно [[Сведение по Карпу|сведения по Куку]]. <tex> L \in P , M {\le}_c L \Rightarrow M \in P</tex> | # Замкнутость относительно [[Сведение по Карпу|сведения по Куку]]. <tex> L \in P , M {\le}_c L \Rightarrow M \in P</tex> | ||
− | # <tex>L \subset P \Rightarrow P=P^L</tex>, где <tex>C^D</tex> &mdash | + | # <tex>L \subset P \Rightarrow P=P^L</tex>, где <tex>C^D</tex> — множество языков, разрешимых с органичением C с помощью оракула из D (C и D — сложностные классы). |
==Примеры задач и языков из <tex>P</tex>== | ==Примеры задач и языков из <tex>P</tex>== |
Версия 18:24, 18 марта 2010
В теории сложности Класс
— класс языков (задач), разрешимых на детерминированной машине Тьюринга за полиномиальное время, то есть.
Содержание
Определение
Язык L лежит в классе
тогда и только тогда, когда существует такая детерминированная машина Тьюринга , что:- завершает свою работу за полиномиальное время на любых входных данных
- если на вход машине подать слово , то она допустит его
- если на вход машине подать слово , то она не допустит его
Свойства класса
- Замкнутость относительно дополнений.
- Замкнутость относительно сведения по Карпу.
- Замкнутость относительно сведения по Куку.
- , где — множество языков, разрешимых с органичением C с помощью оракула из D (C и D — сложностные классы).
Примеры задач и языков из
Класс задач, разрешимых за полиномиальное время достаточно широк, вот несколько его представителей:
- определение связности графов;
- вычисление наибольшего общего делителя;
- проверка простоты числа.
Но, по теореме о временной иерархии существуют и задачи не из .
Задача равенства и
Одним из центральных вопросов теории сложности является вопрос о равенстве классов NP, не разрешенный по сей день. Однако легко показать, что по определению, , так как достаточно для любой задачи класса привести ее решение в качестве сертификата, а значит задача по определению будет входить в класс
и