Класс ZPP — различия между версиями
м (rollbackEdits.php mass rollback) |
|
| (не показана 1 промежуточная версия 1 участника) | |
(нет различий)
| |
Текущая версия на 19:43, 4 сентября 2022
| Определение: |
(от zero-error probabilistic polynomial) — множество языков , для которых :
|
— сложностный класс, такой что программы, удовлетворяющие его ограничениям, не могут делать ошибок, но работают за полиномиальное время только в среднем случае.
Напомним, что математическое ожидание является усреднением по вероятностным лентам, а не по входу .
Для данного класса существует и другое определение. Ниже мы покажем, что оба определения эквивалентны.
| Определение: |
— множество языков , для которых :
|
| Утверждение: |
. |
|
1. . Пусть — случайная величина, равная времени работы программы для , . Запишем неравенство Маркова: . Подставим . Тогда, если запустить программу для с ограничением по времени , она не успеет завершиться с вероятностью, не превышающей . Опишем программу для . Она будет возвращать , если не успеет завершиться, а иначе — результат работы программы . Заметим, что работает полиномиальное время, так как ограничено некоторым полиномом по определению класса . 2. . Будем запускать программу для , пока не получим ответ, отличный от . Математическое ожидание количества запусков не превышает . Значит, новая программа будет в среднем работать за полиномиальное время, что и требуется для класса . |