Материал из Викиконспекты
Классы Σ и Π
Определение: |
Σi={L|∃R(x,y1,⋯,yi)∈P,p — poly:∀x∈L⇔∃y1∀y2∃y3⋯Qyi:∀j|yj| ≤ p(|x|),R(x,y1,⋯,yi)},
где L — формальный язык ,Q=∃ для i=2k$−$1, Q=∀ для i=2k. |
Определение: |
Πi={L|∃R(x,y1,⋯,yi)∈P,p — poly:∀x∈L⇔∀y1∃y2∀y3⋯Qyi:∀j|yj| ≤ p(|x|),R(x,y1,⋯,yi)},
где L — формальный язык ,Q=∀ для i=2k$−$1, Q=∃ для i=2k. |
Соотношения между классами Σ и Π
Теорема: |
Σi⊂Σi+1∩Πi+1. |
Доказательство: |
▹ |
Пусть L∈Σi⇒∃R:x∈L⇔∃y1⋯Qyi:R(x,y1,⋯,yi),∀j|yj|≤poly(|x|).
Проверим, что L∈Σi+1⇔∃R′:x∈L⇔∃y1⋯QyiˉQyi+1:R′(x,y1,⋯,yi,yi+1).
R′(x,y1,⋯,yi+1) {
return R(x,y1,⋯,yi);
}
Проверим, что L∈Πi+1⇔∃R″:x∈L⇔∀y0∃y1⋯Qyi:R″(x,y0,y1,⋯,yi).
R″(x,y0,y1,⋯,yi) {
return R(x,y1,⋯,yi);
}
Таким образом, Σi⊂Σi+1,Σi⊂Πi+1⇒Σi⊂Σi+1∩Πi+1. |
◃ |
Теорема: |
Σi=coΠi. |
Доказательство: |
▹ |
coΠi={L|∃R(x,y1,⋯,yi)∈P,p — poly:x∈L⇔∃y1∀y2⋯Qyi:∀j|yj| ≤ p(|x|),R(x,y1,⋯,yi)}.
Из самого выражения для coΠi очевидно равенство. |
◃ |
Пример Σ-полной задачи
Определение: |
{{{definition}}} |
QBFk — Σk-полная задача (доказательство аналогично доказательству полноты TQBF.
Определение: |
{{{definition}}} |
Аналогично предыдущей, QBFPik — Πk-полная задача.
Класс PH
Замечание: иногда удобнее пользоваться альтернативными определениями PH. Например:
- PH=⋃i∈NΠi,
- PH=⋃i∈N(Σi∪Πi).
Теорема: |
PH⊂PS. |
Доказательство: |
▹ |
Пусть L∈Σi⇒∃R:x∈L⇔∃y1⋯Qyi:R(x,y1,⋯,yi),∀j|yj|≤poly(|x|).
То есть, для перебора всех возможных значений yj потребуется не более, чем i⋅poly(|x|) памяти. Заметим, что i⋅poly(|x|) тоже полином.
Таким образом, для любого формального языка из PH существует программа, разрешающая его на полиномиальной памяти. То есть, любой формальный язык из PH принадлежит PS. |
◃ |