Відповідь Вор дає стандартне визначення. Дозвольте спробувати пояснити різницю трохи інтуїтивніше.
Нехай - алгоритм поліноміально-часової помилки з обмеженою помилкою для мови який відповідає правильно з вірогідністю принаймні . Нехай - вхід, а - розмір введення.МLp ≥12+ δхн
Що відрізняє довільний алгоритм з алгоритму є позитивним розривом між ймовірністю прийняття і ймовірності прийняти . П ПБ П Рx ∈ Lx ∉ LНайважливіше в полягає в тому, що розрив становить принаймні . Я спробую пояснити, чому ця відмінність є істотною і дозволяє нам вважати вважати ефективними алгоритмами (навіть передбачається, що вони рівні ), тоді як вважається неефективним (насправді міститьБ П Рн- O ( 1 )Б П РПП ПП ПН П ). Все це випливає з цього розриву.
Для початку поглянемо на уважніше.П П
Зауважте, що якщо алгоритм використовує щонайбільше випадкових бітів під час його виконання, а ймовірність помилки менша ніж то ймовірність помилки насправді , не може бути обраний випадкових бітів зробити неправильний відповідь алгоритму.r ( n )2- r ( n )0
Крім того, алгоритм із часом виконання не може використовувати більше, ніж випадкових бітів, тому якщо помилка ймовірнісного алгоритму з найгіршим випадком часу краще, ніжt ( n )t ( n )t ( n )
З аналогічним аргументом ми можемо показати, що випадок, коли різниця між ймовірністю прийняття та ймовірністю прийняття занадто мала, аналогічний випадку, коли у нас майже немає різниці як у випадку .x ∈ Lx ∉ LП П
Перейдемо тепер до .Б П Р
У імовірнісних алгоритмах ми можемо збільшити ймовірність правильної відповіді. Скажімо, ми хочемо збільшити вірогідність коректності до для ймовірності помилки (експоненціально мала помилка).1 - ϵϵ =2- н
Ідея проста: запустіть кілька разів і прийміть відповідь більшості.М
Скільки разів нам слід запустити щоб отримати максимум ймовірності помилки ? разів. Доказ наведено внизу цієї відповіді.МϵΘ (δ- 1lgϵ )
Тепер візьмемо до уваги, що алгоритми, про які ми обговорюємо, повинні бути багаточленними. Це означає, що ми не можемо виконувати більше, ніж поліноміально багато разів. Іншими словами, , або простіше кажучиМΘ (δ- 1lnϵ ) =нO ( 1 )
δ- 1lgϵ =нO ( 1 )
Це відношення класифікує обмежені ймовірнісні алгоритми помилок на класи залежно від їх ймовірності помилок. Немає різниці між тим, що ймовірність помилки є або позитивною константою (тобто не змінюється на ) або . Ми можемо перейти від однієї до іншої, залишаючись всередині поліноміального часу.ϵ2- нн12-нO ( 1 )
Однак якщо занадто мала, скажімо, , або навіть тоді ми не можемо збільшити ймовірність правильності та достатньо зменшити ймовірність помилок до потрапити в .δ02- нн- ω ( 1 )Б П Р
Тут головним є те, що в ми можемо ефективно зменшити ймовірність помилок в експоненціальній формі, тому ми майже впевнені у відповідях, і саме це змушує нас розглядати цей клас алгоритмів як ефективні алгоритми. Ймовірність помилок може бути настільки зменшена, що швидше за все є апаратний збій або навіть падіння метеора на комп'ютер швидше, ніж помилка за імовірнісним алгоритмом.Б П Р
Це не вірно для , ми не знаємо жодного способу зменшення ймовірності помилок, і нам залишається майже так, як ніби ми відповідаємо, кинувши монету, щоб отримати відповідь (ми не повністю, ймовірності є не половина і половина, але це дуже близько до тієї ситуації).П П
Цей розділ дає доказ того, що для отримання ймовірності помилок коли ми починаємо з алгоритму з розривом ми повинні запустити разів.ϵ(12- δ,12+ δ)М Θ (δ- 1lgϵ )
Нехай - алгоритм, який виконує для разів, а потім відповідає відповідно до відповіді більшості. Для простоти припустимо, що непарне, тому у нас немає зв’язків.NкМкк
Розглянемо випадок, . Випадок аналогічний. Тоді
Для аналізу ймовірності правильності нам потрібно оцінити ймовірність більшості в пробіги прийняти.x ∈ Lx ∉ L
П р {М( x ) приймає } = p ≥12+ δ
Nкк
Нехай дорівнює 1, якщо значенняХiith біг приймає і бути 0якщо він відкидає. Зауважте, що кожен запуск незалежний від інших, оскільки вони використовують незалежні випадкові біти. Таким чиномХis - незалежні булеві випадкові величини де
E[Xi]=Pr{Xi=1}=Pr{M(x) accepts}=p≥12+δ
Дозволяє Y=Σki=1Xi. Нам потрібно оцінити ймовірність, яку приймає більшість, тобто ймовірність цьогоY≥k2.
Pr{Nk(x) accepts}=Pr{Y≥k2}
Як це зробити? Ми можемо використовувати граничну форму Черноффа, яка говорить нам про концентрацію ймовірності поблизу очікуваного значення. Для будь-якої випадкової величиниZ з очікуваною вартістю μ, ми маємо
Pr{|Z−μ|>αμ}<eα24μ
що говорить, що ймовірність того Zє далеко від очікуваного значення експоненціально зменшується, оскільки збільшується. Ми будемо використовувати його для обмеження ймовірності .αμμαY<k2
Зауважимо, що за лінійністю очікування маємо
E[Y]=E[Σki=1Xi]=Σki=1E[Xi]=kp≥k2+kδ
Тепер ми можемо застосувати обмежений зв'язок Чорноффа. Ми хочемо верхньої межі ймовірності . Межа Чорноффа дасть верхню межу щодо ймовірності якої достатньо. Ми маємоY<k2|Y−(k2+kδ)|>kδ
Pr{|Y−kp|>αkp}<e−α24kp
і якщо ми виберемо так, що ми закінчили, то виберемо .ααkp=kδα=δp≤2δ2δ+1
Тому ми маємо
Pr{Y<k2}≤Pr{|Y−(k2+kδ)|>kδ}≤Pr{|Y−kp|>αkp}<e−α24kp
і якщо ви зробите розрахунки, ви побачите це
α24kp≤δ24δ+2k=Θ(kδ)
ми маємо
Pr{Y<k2}<e−Θ(kδ)
Ми хочемо, щоб помилка була не більше , тому ми хочемоϵ
e−Θ(kδ)≤ϵ
або іншими словами
Θ(δ−1lgϵ)≤k
Один важливий момент в тому , що в процесі ми будемо використовувати набагато більше випадкових бітів , а також час роботи збільшиться, тобто найгірший приработку час буде приблизно разів перевищує обкатки час .NkkM
Тут була середня точка розриву 12. Але загалом це не повинно бути так. Ми можемо прийняти подібний метод для інших цінностей, взявши інші фракції замість більшості для прийняття.