<?xml version="1.0"?>
<feed xmlns="http://www.w3.org/2005/Atom" xml:lang="ru">
		<id>http://neerc.ifmo.ru/wiki/api.php?action=feedcontributions&amp;feedformat=atom&amp;user=217.66.152.161&amp;*</id>
		<title>Викиконспекты - Вклад участника [ru]</title>
		<link rel="self" type="application/atom+xml" href="http://neerc.ifmo.ru/wiki/api.php?action=feedcontributions&amp;feedformat=atom&amp;user=217.66.152.161&amp;*"/>
		<link rel="alternate" type="text/html" href="http://neerc.ifmo.ru/wiki/index.php?title=%D0%A1%D0%BB%D1%83%D0%B6%D0%B5%D0%B1%D0%BD%D0%B0%D1%8F:%D0%92%D0%BA%D0%BB%D0%B0%D0%B4/217.66.152.161"/>
		<updated>2026-04-16T09:32:08Z</updated>
		<subtitle>Вклад участника</subtitle>
		<generator>MediaWiki 1.30.0</generator>

	<entry>
		<id>http://neerc.ifmo.ru/wiki/index.php?title=PS-%D0%BF%D0%BE%D0%BB%D0%BD%D0%BE%D1%82%D0%B0_%D1%8F%D0%B7%D1%8B%D0%BA%D0%B0_%D0%B2%D0%B5%D1%80%D0%BD%D1%8B%D1%85_%D0%B1%D1%83%D0%BB%D0%B5%D0%B2%D1%8B%D1%85_%D1%84%D0%BE%D1%80%D0%BC%D1%83%D0%BB_%D1%81_%D0%BA%D0%B2%D0%B0%D0%BD%D1%82%D0%BE%D1%80%D0%B0%D0%BC%D0%B8_(TQBF)&amp;diff=26922</id>
		<title>PS-полнота языка верных булевых формул с кванторами (TQBF)</title>
		<link rel="alternate" type="text/html" href="http://neerc.ifmo.ru/wiki/index.php?title=PS-%D0%BF%D0%BE%D0%BB%D0%BD%D0%BE%D1%82%D0%B0_%D1%8F%D0%B7%D1%8B%D0%BA%D0%B0_%D0%B2%D0%B5%D1%80%D0%BD%D1%8B%D1%85_%D0%B1%D1%83%D0%BB%D0%B5%D0%B2%D1%8B%D1%85_%D1%84%D0%BE%D1%80%D0%BC%D1%83%D0%BB_%D1%81_%D0%BA%D0%B2%D0%B0%D0%BD%D1%82%D0%BE%D1%80%D0%B0%D0%BC%D0%B8_(TQBF)&amp;diff=26922"/>
				<updated>2012-06-25T14:54:34Z</updated>
		
		<summary type="html">&lt;p&gt;217.66.152.161: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;{{Определение&lt;br /&gt;
|definition=&amp;lt;tex&amp;gt;\mathrm{TQBF}&amp;lt;/tex&amp;gt; расшифровывается как '''True Quantified Boolean Formula'''. Это язык верных булевых формул с кванторами.&amp;lt;br/&amp;gt;&lt;br /&gt;
&amp;lt;tex&amp;gt;\mathrm{TQBF}=\{Q_1 x_1 Q_2 x_2 \ldots Q_n x_n \phi(x_1, x_2, \dots, x_n), Q_i \in \{\forall, \exists\}\}&amp;lt;/tex&amp;gt;.&lt;br /&gt;
}}&lt;br /&gt;
{{Определение&lt;br /&gt;
|definition=&amp;lt;tex&amp;gt;Quantified Boolean Formula&amp;lt;/tex&amp;gt; — это пропозициональная формула с кванторами. Кванторы для каждой переменной записываются в начале выражения.&lt;br /&gt;
}}&lt;br /&gt;
{{Лемма&lt;br /&gt;
|about=1&lt;br /&gt;
|statement=&amp;lt;tex&amp;gt;\mathrm{TQBF} \in \mathrm{PS}&amp;lt;/tex&amp;gt;.&lt;br /&gt;
|proof=Чтобы доказать это, просто приведём программу &amp;lt;tex&amp;gt;solve&amp;lt;/tex&amp;gt;, решающую булеву формулу с кванторами на &amp;lt;tex&amp;gt;O(n)&amp;lt;/tex&amp;gt; дополнительной памяти и работающую за конечное время.&lt;br /&gt;
 &amp;lt;tex&amp;gt;solve(k, Q_k x_k \ldots Q_n x_n \phi(x_k, \ldots, x_n))&amp;lt;/tex&amp;gt;&lt;br /&gt;
     '''if''' &amp;lt;tex&amp;gt;k == n&amp;lt;/tex&amp;gt;&lt;br /&gt;
         '''if''' &amp;lt;tex&amp;gt;Q_k = \forall&amp;lt;/tex&amp;gt;&lt;br /&gt;
             '''return''' &amp;lt;tex&amp;gt;\phi(0) \land \phi(1)&amp;lt;/tex&amp;gt;&lt;br /&gt;
         '''if''' &amp;lt;tex&amp;gt;Q_k = \exists&amp;lt;/tex&amp;gt;&lt;br /&gt;
             '''return''' &amp;lt;tex&amp;gt;\phi(0) \lor \phi(1)&amp;lt;/tex&amp;gt;&lt;br /&gt;
     '''if''' &amp;lt;tex&amp;gt;Q_k = \forall&amp;lt;/tex&amp;gt;&lt;br /&gt;
         '''return''' &amp;lt;tex&amp;gt;solve(Q_{k+1} x_{k+1} \ldots Q_n x_n \phi(0, x_{k+1}, \ldots, x_n)) \land solve(Q_{k+1} x_{k+1} \ldots Q_n x_n \phi(1, x_{k+1}, \ldots, x_n))&amp;lt;/tex&amp;gt;&lt;br /&gt;
     '''if''' &amp;lt;tex&amp;gt;Q_k = \exists&amp;lt;/tex&amp;gt;&lt;br /&gt;
         '''return''' &amp;lt;tex&amp;gt;solve(Q_{k+1} x_{k+1} \ldots Q_n x_n \phi(0, x_{k+1}, \ldots, x_n)) \lor solve(Q_{k+1} x_{k+1} \dots Q_n x_n \phi(1, x_{k+1}, \ldots, x_n))&amp;lt;/tex&amp;gt;&lt;br /&gt;
Эта программа требует &amp;lt;tex&amp;gt;O(n)&amp;lt;/tex&amp;gt; дополнительной памяти для хранения стека рекурсивных вызовов. Максимальная глубина стека — &amp;lt;tex&amp;gt;n&amp;lt;/tex&amp;gt;.&lt;br /&gt;
}}&lt;br /&gt;
{{Лемма&lt;br /&gt;
|about=2&lt;br /&gt;
|statement=&amp;lt;tex&amp;gt;\mathrm{TQBF} \in \mathrm{PSH}&amp;lt;/tex&amp;gt;.&lt;br /&gt;
|proof=Рассмотрим язык &amp;lt;tex&amp;gt;L \in \mathrm{PS}&amp;lt;/tex&amp;gt;. &lt;br /&gt;
Построим такую функцию &amp;lt;tex&amp;gt;f&amp;lt;/tex&amp;gt;, что &amp;lt;tex&amp;gt;x \in L \Leftrightarrow f(x) \in \mathrm{TQBF}&amp;lt;/tex&amp;gt; и &amp;lt;tex&amp;gt;T(f, x) \le p(|x|)&amp;lt;/tex&amp;gt;, где &amp;lt;tex&amp;gt;p&amp;lt;/tex&amp;gt; — полином.&lt;br /&gt;
&lt;br /&gt;
Так как &amp;lt;tex&amp;gt;L \in \mathrm{PS}&amp;lt;/tex&amp;gt;, то существует детерминированная машина Тьюринга &amp;lt;tex&amp;gt;M&amp;lt;/tex&amp;gt;, распознающая его с использованием памяти полиномиального размера. Будем считать, что длина ленты машины &amp;lt;tex&amp;gt;M&amp;lt;/tex&amp;gt; есть &amp;lt;tex&amp;gt;r(n)&amp;lt;/tex&amp;gt;, где &amp;lt;tex&amp;gt;r&amp;lt;/tex&amp;gt; — полином, а &amp;lt;tex&amp;gt;n&amp;lt;/tex&amp;gt; — длина входа. &lt;br /&gt;
&lt;br /&gt;
Пусть &amp;lt;tex&amp;gt;w = |\Sigma \cup Q|&amp;lt;/tex&amp;gt;, &amp;lt;tex&amp;gt;I&amp;lt;/tex&amp;gt; — конфигурация &amp;lt;tex&amp;gt;M&amp;lt;/tex&amp;gt;. Конфигурация задаётся позицией и содержанием рабочей ленты. Введём обозначение &amp;lt;tex&amp;gt;x_{I,i,c}&amp;lt;/tex&amp;gt; — в конфигурации &amp;lt;tex&amp;gt;I&amp;lt;/tex&amp;gt; на &amp;lt;tex&amp;gt;i&amp;lt;/tex&amp;gt;-том месте стоит символ &amp;lt;tex&amp;gt;c&amp;lt;/tex&amp;gt;. Тогда размер конфигурации равен &amp;lt;tex&amp;gt;w r(n)&amp;lt;/tex&amp;gt;. Следовательно всего конфигураций &amp;lt;tex&amp;gt;2^{w r(n)}&amp;lt;/tex&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
Под выражением &amp;lt;tex&amp;gt;\exists I&amp;lt;/tex&amp;gt; будем понимать &amp;lt;tex&amp;gt; \exists x_{I,1,c_1} \, \exists x_{I,1,c_2} \ldots \exists x_{I,1,c_w}  \, \exists x_{I,2,c_1} \ldots&amp;lt;/tex&amp;gt; Аналогично выражение &amp;lt;tex&amp;gt; \forall I&amp;lt;/tex&amp;gt; обозначает &amp;lt;tex&amp;gt; \forall x_{I,1,c_1} \, \forall x_{I,1,c_2} \ldots \forall x_{I,1,c_w}  \, \forall x_{I,2,c_1} \ldots&amp;lt;/tex&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Рассмотрим функцию &amp;lt;tex&amp;gt;\phi(A, B, t)&amp;lt;/tex&amp;gt;, проверяющую следующее условие: конфигурация &amp;lt;tex&amp;gt;B&amp;lt;/tex&amp;gt; достижима из конфигурации &amp;lt;tex&amp;gt;A&amp;lt;/tex&amp;gt; не более, чем за &amp;lt;tex&amp;gt;2^t&amp;lt;/tex&amp;gt; шагов.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;tex&amp;gt;\phi(A, B, 0) = (A = B) \lor (A \vdash B)&amp;lt;/tex&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;tex&amp;gt;\phi(A, B, t) = \exists R \, [\phi(A, R, t-1) \land \phi(R, B, t-1)]&amp;lt;/tex&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
Общую длину получившейся формулы можно представить как &amp;lt;tex&amp;gt;L(t) = 2 L(t-1)+const&amp;lt;/tex&amp;gt;. Заметим, что из-за умножения на 2 на каждом шаге рекурсии &amp;lt;tex&amp;gt;L(t)&amp;lt;/tex&amp;gt; будет иметь экспоненциальный размер относительно &amp;lt;tex&amp;gt;t&amp;lt;/tex&amp;gt;. Нас это не устраивает, так как нам необходимо полиномиальное сведение. Поэтому воспользуемся квантором &amp;lt;tex&amp;gt;\forall&amp;lt;/tex&amp;gt; и перепишем её следующим образом:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;tex&amp;gt;\phi(A, B, t) =  \exists R \,\forall U \,\forall V \, \{\phi(U, V, t-1) \lor \neg [(U = A \land V = R) \lor (U = R \land V = B)]\}&amp;lt;/tex&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
Получившаяся в фигурых скобках формула верна только когда верно &amp;lt;tex&amp;gt;\phi(U, V, t-1)&amp;lt;/tex&amp;gt; или &amp;lt;tex&amp;gt;\neg[(U = A \land V = R) \lor (U = R \land V = B)]&amp;lt;/tex&amp;gt;. Это равносильно тому, что существует такое промежуточное состояние &amp;lt;tex&amp;gt;R&amp;lt;/tex&amp;gt;, что &amp;lt;tex&amp;gt;R&amp;lt;/tex&amp;gt; достижима из &amp;lt;tex&amp;gt;A&amp;lt;/tex&amp;gt; не более, чем за &amp;lt;tex&amp;gt;2^{t-1}&amp;lt;/tex&amp;gt; шагов, и &amp;lt;tex&amp;gt;B&amp;lt;/tex&amp;gt; достижима из &amp;lt;tex&amp;gt;R&amp;lt;/tex&amp;gt; за &amp;lt;tex&amp;gt;2^{t-1}&amp;lt;/tex&amp;gt; шагов. А если верно и то, и другое, то конфигурация &amp;lt;tex&amp;gt;B&amp;lt;/tex&amp;gt; достижима из конфигурации &amp;lt;tex&amp;gt;A&amp;lt;/tex&amp;gt; не более, чем за &amp;lt;tex&amp;gt;2^t&amp;lt;/tex&amp;gt; шагов.&lt;br /&gt;
&lt;br /&gt;
За один шаг рекурсии длина максимального пути между конфигурациями уменьшается в два раза. Поэтому общую длину получившейся формулы можно представить как &amp;lt;tex&amp;gt;L(t) = L(t-1)+const&amp;lt;/tex&amp;gt;, где &amp;lt;tex&amp;gt;const = \|\exists R \,\forall U \,\forall V \, \{\| + \|\land [(U = A \land V = R) \lor (U = R \land V = B)]\}\|&amp;lt;/tex&amp;gt;.&lt;br /&gt;
Следовательно, размер полученной функции &amp;lt;tex&amp;gt;\phi(A, B, t)&amp;lt;/tex&amp;gt; полиномиален относительно &amp;lt;tex&amp;gt;t&amp;lt;/tex&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
Теперь мы можем записать функцию &amp;lt;tex&amp;gt;f(M, w)&amp;lt;/tex&amp;gt;, которая будет переводить ДМТ &amp;lt;tex&amp;gt;M&amp;lt;/tex&amp;gt; и слово на ленте &amp;lt;tex&amp;gt;w&amp;lt;/tex&amp;gt; в формулу из &amp;lt;tex&amp;gt;\mathrm{TQBF}&amp;lt;/tex&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;tex&amp;gt;f(M, w) = \exists S \, \exists F \, (S - start) \land (F - accept) \land \phi(S, F, log_2(2^{w r(n)})))&amp;lt;/tex&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
Выражения &amp;lt;tex&amp;gt;S - start&amp;lt;/tex&amp;gt; и &amp;lt;tex&amp;gt;F - accept&amp;lt;/tex&amp;gt; можно записать следующим образом:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;tex&amp;gt;S - start = x_{S, 1, w[1]} \land x_{S, 2, w[2]} \land \ldots \land x_{S, |w|, w[|w|]} \land x_{S, |w| + 1, B} \ldots \land x_{S, r(n) , B}&amp;lt;/tex&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;tex&amp;gt;F - accept = x_{S, |w| + 1, \#_y} \lor \ldots \lor x_{S, r(n), \#_y}&amp;lt;/tex&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Докажем, что сведение &amp;lt;tex&amp;gt;f&amp;lt;/tex&amp;gt; корректно.&lt;br /&gt;
&lt;br /&gt;
Если &amp;lt;tex&amp;gt;w \in L&amp;lt;/tex&amp;gt;, то существует путь из стартовой конфигурации в финишную, длины не более, чем &amp;lt;tex&amp;gt;2^{w r(n)}&amp;lt;/tex&amp;gt;, а значит формула &amp;lt;tex&amp;gt;f(M, w)&amp;lt;/tex&amp;gt; верна.&lt;br /&gt;
&lt;br /&gt;
Если формула &amp;lt;tex&amp;gt;f(M, w)&amp;lt;/tex&amp;gt; оказалась верна, то существует путь из стартовой конфигурации в финишную длины не более, чем &amp;lt;tex&amp;gt;2^{w r(n)}&amp;lt;/tex&amp;gt;. Значит, ДМТ &amp;lt;tex&amp;gt;M&amp;lt;/tex&amp;gt; допускает слово &amp;lt;tex&amp;gt;w&amp;lt;/tex&amp;gt;. Тогда &amp;lt;tex&amp;gt;w \in L&amp;lt;/tex&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
Таким образом, &amp;lt;tex&amp;gt;\mathrm{TQBF} \in \mathrm{PSH}&amp;lt;/tex&amp;gt;.&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
{{Теорема&lt;br /&gt;
|statement=&amp;lt;tex&amp;gt;\mathrm{TQBF} \in \mathrm{PSC}&amp;lt;/tex&amp;gt;.&lt;br /&gt;
|proof=Доказательство непосредственно следует из лемм. &lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
[[Категория: Теория сложности]]&lt;/div&gt;</summary>
		<author><name>217.66.152.161</name></author>	</entry>

	</feed>