RP (сложность)

редактировать
Класс рандомизированного полиномиального времени теории сложности вычислений

В теории сложности вычислений, рандомизированное полиномиальное время (RP) - это класс сложности задач, для которых существует вероятностная машина Тьюринга со следующими свойствами:

алгоритм RP (1 запуск)
Получен ответ Правильный. ответДаНет
Да≥ 1/2≤ 1/2
Нет01
Алгоритм RP (n запусков)
Получен ответ Правильный. ответДаНет
Да≥ 1-2≤ 2
Нет01
алгоритм co-RP (1 запуск)
Получен ответ Правильный. ответДаНет
Да10
Нет≤ 1/2≥ 1/2
  • Он всегда выполняется за полиномиальное время в размере ввода
  • Если правильный ответ НЕТ, он всегда возвращает НЕТ
  • Если правильный ответ ДА, то он возвращает ДА ​​с вероятностью не менее 1/2 (в противном случае возвращается НЕТ).

В других случаях Другими словами, алгоритм может подбрасывать действительно случайную монету во время ее работы. Единственный случай, когда алгоритм может вернуть ДА, - это если фактический ответ ДА; поэтому, если алгоритм завершается и выдает ДА, то правильный ответ определенно ДА; однако алгоритм может завершиться ответом «НЕТ» независимо от фактического ответа. То есть, если алгоритм вернет НЕТ, это может быть неправильно.

Некоторые авторы называют этот класс R, хотя это имя чаще используется для класса рекурсивных языков.

Если правильный ответ - ДА и алгоритм выполняется n раз с результатом каждого запуска статистически независимым от остальных, то он вернет ДА ​​хотя бы один раз с вероятностью не менее 1-2. Таким образом, если алгоритм выполняется 100 раз, то вероятность того, что он даст неправильный ответ каждый раз ниже, чем вероятность того, что космические лучи испортили память компьютера, на котором запущен алгоритм. В этом смысле, если доступен источник случайных чисел, большинство алгоритмов в RP очень практично.

Дробь 1/2 в определении произвольная. Набор RP будет содержать точно такие же проблемы, даже если 1/2 будет заменена любой постоянной ненулевой вероятностью меньше 1; здесь константа означает независимость от входа в алгоритм.

Содержание
  • 1 Формальное определение
  • 2 Связанные классы сложности
  • 3 Соединение с P и NP
  • 4 См. Также
  • 5 Ссылки
  • 6 Внешние ссылки
Формальное определение

Язык L находится в RP тогда и только тогда, когда существует вероятностная машина Тьюринга M, такая, что

  • M работает в течение полиномиального времени на всех входах
  • Для всех x в L M выводит 1 с вероятностью, большей или равной ⁄ 2
  • Для всех x, не входящих в L, M выводит 0

В качестве альтернативы RP может быть определен с использованием только детерминированных машин Тьюринга. Язык L находится в RP тогда и только тогда, когда существует полином p и детерминированная машина Тьюринга M, так что

  • M работает в течение полиномиального времени на всех входах
  • Для всех x в L, доля строк y длины p (| x |), удовлетворяющих M (x, y) = 1 {\ displaystyle M (x, y) = 1}{\ displaystyle M (x, y) = 1} , больше или равно ⁄ 2
  • Для всех x, не принадлежащих L, и всех строк y длины p (| x |), M (x, y) = 0 {\ displaystyle M (x, y) = 0}{\ displaystyle M (x, y) = 0}

В этом определении строка y соответствует результату случайных подбрасываний монеты, которые могла бы сделать вероятностная машина Тьюринга. Для некоторых приложений это определение предпочтительнее, поскольку в нем не упоминаются вероятностные машины Тьюринга.

Связанные классы сложности
Диаграмма рандомизированных классов сложности RP по отношению к другим классам вероятностной сложности (ZPP, co-RP, BPP, BQP, PP ), которые обобщают P в пределах PSPACE. Неизвестно, являются ли какие-либо из этих ограничений строгими.

Определение RP гласит, что ответ ДА ​​всегда правильный, а ответ НЕТ может быть неправильным (поскольку вопрос с ответом ДА может быть иногда отвечал НЕТ). Другими словами, хотя на НЕТ вопросы всегда отвечают НЕТ, вы не можете доверять ответу НЕТ, это может быть ошибочный ответ на вопрос ДА. Класс сложности co-RP определяется аналогично, за исключением того, что НЕТ всегда правильно, а ДА может быть неправильным. Другими словами, он принимает все экземпляры YES, но может либо принимать, либо отклонять экземпляры NO. Класс BPP описывает алгоритмы, которые могут давать неправильные ответы как на ДА, так и на НЕТ, и, таким образом, содержит как RP, так и co-RP . Пересечение наборов RP и co-RP называется ZPP. Так же, как RP может называться R, некоторые авторы используют имя co-R, а не co-RP .

Соединение с P и NP
Вопрос, Web Fundamentals.svg Нерешенная проблема информатики :. P =? RP {\ displaystyle {\ mathsf {P}} {\ overset {?} {=}} {\ Mathsf {RP}}}{\ displaystyle {\ mathsf {P}} {\ overset { ?} {=}} {\ mathsf {RP}}} (другие нерешенные проблемы в информатике)

P - это подмножество RP, который является подмножеством NP. Аналогично, P представляет собой подмножество co-RP, которое является подмножеством co-NP. Неизвестно, являются ли эти включения строгими. Однако, если общепринятая гипотеза P= BPP верна, то коллапс RP, co-RP и P (все равны). Предполагая дополнительно, что P≠ NP, это означает, что RP строго содержится в NP . Неизвестно, является ли RP= co-RP или RP подмножеством пересечения NP и co-NP, хотя это подразумевается P= BPP .

. Естественным примером проблемы в co-RP, которая в настоящее время не известна как P, является Проверка полиномиальной идентичности, проблема определения, является ли данное многомерное арифметическое выражение над целыми числами полиномом нуля. Например, x · x - y · y - (x + y) · (x - y) является полиномом нуля, а x · x + y · y - нет.

Альтернативная характеристика RP, которую иногда проще использовать, - это набор проблем, распознаваемых недетерминированными машинами Тьюринга, где машина принимает тогда и только тогда, когда хотя бы некоторые постоянная доля путей вычисления, независимо от размера ввода, accept. NP, с другой стороны, требуется только один путь приема, который может составлять экспоненциально малую часть путей. Эта характеристика делает очевидным тот факт, что RP является подмножеством NP .

См. Также
Ссылки
Внешние ссылки
Последняя правка сделана 2021-06-03 04:57:15
Содержание доступно по лицензии CC BY-SA 3.0 (если не указано иное).
Обратная связь: support@alphapedia.ru
Соглашение
О проекте