Истинная количественная логическая формула

редактировать

В теории вычислительной сложности язык TQBF - это формальный язык, состоящий из истинных количественных булевых формул . (Полностью) количественная логическая формула - это формула в quantified логике высказываний, где каждая переменная количественно определена (или привязана ) с использованием либо экзистенциального или универсальные кванторы в начале предложения. Такая формула эквивалентна истинному или ложному (поскольку не существует свободных переменных). Если такая формула истинна, то эта формула написана на языке TQBF. Он также известен как QSAT (количественно SAT ).

Содержание
  • 1 Обзор
  • 2 Предварительная нормальная форма
  • 3 Решение
  • 4 PSPACE-полнота
  • 5 Разное
  • 6 Примечания и ссылки
  • 7 См. Также
  • 8 Внешние ссылки
Обзор

В теории сложности вычислений проблема квантифицированной логической формулы (QBF ) является обобщением проблемы логической выполнимости, в котором к каждой переменной могут применяться как кванторы существования, так и универсальные кванторы. Другими словами, он спрашивает, является ли количественная форма предложения по набору логических переменных истинным или ложным. Например, следующий пример QBF:

∀ x ∃ y ∃ z ((x ∨ z) ∧ y) {\ displaystyle \ forall x \ exists y \ exists z \ ((x \ lor z)) \ land y)}\ forall x \ \ exists y \ \ exists z \ ((x \ lor z) \ land y)

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

При условии, что MA ⊊ PSPACE, что широко распространено, QBF не может быть решена, а данное решение даже не может быть проверено ни за детерминированное, ни за вероятностное полиномиальное время (на самом деле, в отличие от проблемы выполнимости, нет известного способа кратко указать решение). Его можно решить с помощью переменной машины Тьюринга за линейное время, поскольку AP = PSPACE, где AP - класс задач, которые альтернативные машины могут решить за полиномиальное время.

Когда был показан результативный результат IP = PSPACE (см. интерактивная система доказательств ), это было сделано путем демонстрации интерактивной системы доказательств, которая могла решить QBF путем решения конкретной арифметизации задачи..

Формулы QBF имеют ряд полезных канонических форм. Например, можно показать, что существует редукция «многие-один» за полиномиальное время, которая переместит все кванторы в начало формулы и заставит их чередоваться между универсальными и экзистенциальными кванторами. Есть еще одно сокращение, которое оказалось полезным в доказательстве IP = PSPACE, где не более одного универсального квантификатора помещается между использованием каждой переменной и квантором, связывающим эту переменную. Это было критически важно для ограничения количества продуктов в определенных подвыражениях арифметизации.

Предварительная нормальная форма

Можно предположить, что полностью квантифицированная логическая формула имеет очень специфическую форму, называемую предварительной нормальной формой. Он состоит из двух основных частей: части, содержащей только кванторы, и части, содержащей неквантифицированную логическую формулу, обычно обозначаемую как ϕ {\ displaystyle \ displaystyle \ phi}\ displaystyle \ phi . Если есть n {\ displaystyle \ displaystyle n}\ displaystyle n логические переменные, всю формулу можно записать как

∃ x 1 ∀ x 2 ∃ x 3 ⋯ Q nxn ϕ (x 1, x 2, x 3,…, xn) {\ displaystyle \ displaystyle \ exists x_ {1} \ forall x_ {2} \ exists x_ {3} \ cdots Q_ {n} x_ {n} \ phi (x_ {1}), x_ {2}, x_ {3}, \ dots, x_ {n})}\ displaystyle \ существует x_1 \ forall x_2 \ exists x_3 \ cdots Q_n x_n \ phi (x_1, x_2, x_3, \ dots, x_n)

где каждая переменная попадает в область некоторого квантификатора. Путем введения фиктивных переменных любую формулу в предваренной нормальной форме можно преобразовать в предложение, в котором чередуются экзистенциальные и универсальные кванторы. Используя фиктивную переменную y 1 {\ displaystyle \ displaystyle y_ {1}}\ displaystyle y_1 ,

∃ x 1 ∃ x 2 ϕ (x 1, x 2) ↦ ∃ x 1 ∀ y 1 ∃ x 2 ϕ (x 1 Икс 2) {\ Displaystyle \ Displaystyle \ существует x_ {1} \ exists x_ {2} \ phi (x_ {1}, x_ {2}) \ quad \ mapsto \ quad \ exists x_ {1} \ forall y_ { 1} \ exists x_ {2} \ phi (x_ {1}, x_ {2})}\ displaystyle \ exists x_1 \ exists x_2 \ phi (x_1, x_2) \ quad \ mapsto \ quad \ exists x_1 \ forall y_1 \ exists x_2 \ phi (x_1, x_2)

Второе предложение имеет то же значение истинности , но следует ограниченному синтаксису. Принятие полностью квантифицированных булевых формул в предваренной нормальной форме - частая особенность доказательств.

Решение

Существует простой рекурсивный алгоритм для определения того, находится ли QBF в TQBF (т.е. истинно). Для некоторого QBF

Q 1 x 1 Q 2 x 2 ⋯ Q n x n ϕ (x 1, x 2,…, x n). {\ Displaystyle Q_ {1} x_ {1} Q_ {2} x_ {2} \ cdots Q_ {n} x_ {n} \ phi (x_ {1}, x_ {2}, \ dots, x_ {n}).}Q_1 x_1 Q_2 x_2 \ cdots Q_n x_n \ phi (x_1, x_2, \ dots, x_n).

Если формула не содержит квантификаторов, мы можем просто вернуть формулу. В противном случае мы снимаем первый квантор и проверяем оба возможных значения для первой переменной:

A = Q 2 x 2 ⋯ Q nxn ϕ (0, x 2,…, xn), {\ displaystyle A = Q_ {2 } x_ {2} \ cdots Q_ {n} x_ {n} \ phi (0, x_ {2}, \ dots, x_ {n}),}A = Q_2 x_2 \ cdots Q_n x_n \ phi (0, x_2, \ точки, x_n),
B = Q 2 x 2 ⋯ Q nxn ϕ (1, x 2,…, xn). {\ displaystyle B = Q_ {2} x_ {2} \ cdots Q_ {n} x_ {n} \ phi (1, x_ {2}, \ dots, x_ {n}).}B = Q_2 x_2 \ cdots Q_n x_n \ phi (1, x_2, \ dots, x_n).

Если Q 1 = ∃ {\ displaystyle Q_ {1} = \ exists}Q_1 = \ exists , затем возвращаем A ∨ B {\ displaystyle A \ lor B}A \ lor B . Если Q 1 = ∀ {\ displaystyle Q_ {1} = \ forall}Q_1 = \ forall , тогда возвращаем A ∧ B {\ displaystyle A \ land B}A \ land B .

Насколько быстро работает этот алгоритм. бегать? Для каждого квантора в исходной QBF алгоритм выполняет два рекурсивных вызова только для линейно меньшей подзадачи. Это дает алгоритму экспоненциальное время выполнения O (2).

Сколько места использует этот алгоритм? При каждом вызове алгоритма ему необходимо сохранять промежуточные результаты вычисления A и B. Каждый рекурсивный вызов снимает один квантор, поэтому общая рекурсивная глубина линейна по количеству кванторов. Формулы, в которых отсутствуют кванторы, можно вычислить в пространстве, логарифмическом по количеству переменных. Первоначальный QBF был полностью определен количественно, поэтому количественных показателей было не меньше, чем переменных. Таким образом, этот алгоритм использует пространство O (n + log n) = O (n). Это делает язык TQBF частью PSPACE класса сложности.

PSPACE-полнота

Язык TQBF служит в теории сложности как канонический PSPACE-полная проблема. Полная PSPACE означает, что язык находится в PSPACE, и что язык также PSPACE-hard. Приведенный выше алгоритм показывает, что TQBF находится в PSPACE. Чтобы показать, что TQBF является жестким для PSPACE, необходимо показать, что любой язык класса сложности PSPACE может быть сокращен до TQBF за полиномиальное время. То есть,

∀ L ∈ P S P A C E, L ≤ p T Q B F. {\ displaystyle \ forall L \ in {\ mathsf {PSPACE}}, L \ leq _ {p} \ mathrm {TQBF}.}{\ displaystyle \ forall L \ in {\ mathsf {PSPACE}}, L \ leq _ {p} \ mathrm {TQBF}.}

Это означает, что для языка PSPACE L, находится ли вход x в L можно решить, проверив, находится ли f (x) {\ displaystyle f (x)}f(x)в TQBF, для некоторой функции f, которая требуется для выполнения за полиномиальное время (относительно длины ввод). Символически

x ∈ L ⟺ f (x) ∈ T Q B F. {\ displaystyle x \ in L \ iff f (x) \ in \ mathrm {TQBF}.}{\ displaystyle x \ in L \ iff f (x) \ in \ mathrm {TQBF}.}

Доказательство того, что TQBF является жестким для PSPACE, требует указания f.

Итак, предположим, что L - это язык PSPACE. Это означает, что L может быть определено детерминированной машиной Тьюринга (DTM) в полиномиальном пространстве. Это очень важно для сокращения L до TQBF, потому что конфигурации любой такой машины Тьюринга могут быть представлены в виде булевых формул с логическими переменными, представляющими состояние машины, а также содержимое каждой ячейки на ленте машины Тьюринга, с позицией головы машины Тьюринга, закодированной в формуле по порядку формулы. В частности, наша редукция будет использовать переменные c 1 {\ displaystyle c_ {1}}c_ {1} и c 2 {\ displaystyle c_ {2}}c_ {2} , которые представляют две возможные конфигурации DTM для L и натуральное число t при построении QBF ϕ c 1, c 2, t {\ displaystyle \ phi _ {c_ {1}, c_ {2}, t} }\ phi_ {c_1, c_2, t} который истинен тогда и только тогда, когда DTM для L может перейти от конфигурации, закодированной в c 1 {\ displaystyle c_ {1}}c_ {1} , к конфигурации, закодированной в c 2 {\ displaystyle c_ {2}}c_ {2} не более чем за t шагов. Затем функция f построит из DTM для L a QBF ϕ cstart, caccept, T {\ displaystyle \ phi _ {c_ {start}, c_ {accept}, T}}\ phi_ {c_ {start}, c_ {accept}, T} , где cstart {\ displaystyle c_ {start}}c_ {start} - это начальная конфигурация DTM, caccept {\ displaystyle c_ {accept}}c_ {accept} - принимающая конфигурация DTM, и T - максимальное количество шагов, которое может потребоваться DTM для перехода от одной конфигурации к другой. Мы знаем, что T = O (exp (n)), где n - длина ввода, поскольку это ограничивает общее количество возможных конфигураций соответствующего DTM. Конечно, для достижения caccept {\ displaystyle c _ {\ mathrm {accept}}}c_ \ mathrm {accept} DTM не может потребоваться больше шагов, чем есть в возможных конфигурациях, если он не входит в цикл, и в этом случае он в любом случае никогда не достигать caccept {\ displaystyle c _ {\ mathrm {accept}}}c_ \ mathrm {accept} .

На этом этапе доказательства мы уже уменьшили вопрос о том, является ли входная формула w (закодированной, конечно, в cstart {\ displaystyle c_ {start}}c_ {start} ) находится в L на вопрос, является ли QBF ϕ cstart, caccept, T {\ displaystyle \ phi _ {c_ {start}, c_ {accept}, T}}\ phi_ {c_ {start}, c_ {accept}, T} , т. е. f (w) {\ displaystyle f (w)}f (w) , находится в TQBF. Оставшаяся часть этого доказательства доказывает, что f можно вычислить за полиномиальное время.

Для t = 1 {\ displaystyle t = 1}t=1, вычисление ϕ c 1, c 2, t {\ displaystyle \ phi _ {c_ {1 }, c_ {2}, t}}\ phi_ {c_1, c_2, t} прост - либо одна из конфигураций меняется на другой на одном шаге, либо нет. Поскольку машина Тьюринга, которую представляет наша формула, является детерминированной, это не представляет проблемы.

Для t>1 {\ displaystyle t>1}t>1 , вычисление ϕ c 1, c 2, t {\ displaystyle \ phi _ {c_ {1}, c_ {2}, t }}\ phi_ {c_1, c_2, t} включает рекурсивное вычисление, ищущее так называемую "среднюю точку" m 1 {\ displaystyle m_ {1}}m_ {1} . В этом случае мы переписываем формула следующим образом:

ϕ c 1, c 2, t = ∃ m 1 (ϕ c 1, m 1, ⌈ t / 2 ⌉ ∧ ϕ m 1, c 2, ⌈ t / 2 ⌉). {\ displaystyle \ phi _ {c_ {1}, c_ {2}, t} = \ exists m_ {1} (\ phi _ {c_ {1}, m_ {1}, \ lceil t / 2 \ rceil} \ wedge \ phi _ {m_ {1}, c_ {2}, \ lceil t / 2 \ rceil}).}\ phi_ {c_1, c_2, t} = \ exists m_1 (\ phi_ {c_1, m_1, \ lceil t / 2 \ rceil} \ wedge \ phi_ {m_1, c_2, \ lceil t / 2 \ rceil}).

Это преобразует вопрос о том, c 1 {\ displaystyle c_ {1}}c_ {1} может достичь c 2 {\ displaystyle c_ {2}}c_ {2} за t шагов на вопрос о том, достигает ли c 1 {\ displaystyle c_ {1}}c_ {1} средняя точка m 1 {\ displaystyle m_ {1}}m_ {1} в t / 2 {\ displaystyle t / 2}t / 2 шагов, elf достигает c 2 {\ displaystyle c_ {2}}c_ {2} за t / 2 {\ displaystyle t / 2}t / 2 шагов. Ответ на последний вопрос, конечно же, дает ответ на первый.

Теперь t ограничено только T, которое является экспоненциальным (а значит, не полиномиальным) по длине ввода. Кроме того, каждый рекурсивный слой практически удваивает длину формулы. (Переменная m 1 {\ displaystyle m_ {1}}m_ {1} - это только одна средняя точка - для большего t, так сказать, будет больше остановок на пути.) Итак, время, необходимое для рекурсивного выполнения оценить ϕ c 1, c 2, t {\ displaystyle \ phi _ {c_ {1}, c_ {2}, t}}\ phi_ {c_1, c_2, t} таким образом, также может быть экспоненциальным, просто потому что формула может стать экспоненциально большой. Эта проблема решается путем универсального количественного определения с использованием переменных c 3 {\ displaystyle c_ {3}}c_{3}и c 4 {\ displaystyle c_ {4}}c_4 над пары конфигурации (например, {(c 1, m 1), (m 1, c 2)} {\ displaystyle \ {(c_ {1}, m_ {1}), (m_ {1}, c_ { 2}) \}}\ {(c_1, m_1), (m_1, c_2) \} ), что предотвращает увеличение длины формулы из-за рекурсивных слоев. Это дает следующую интерпретацию ϕ c 1, c 2, t {\ displaystyle \ phi _ {c_ {1}, c_ {2}, t}}\ phi_ {c_1, c_2, t} :

ϕ c 1, c 2, t = ∃ m 1 ∀ (c 3, c 4) ∈ {(c 1, m 1), (m 1, c 2)} (ϕ c 3, c 4, ⌈ t / 2 ⌉). {\ displaystyle \ phi _ {c_ {1}, c_ {2}, t} = \ exists m_ {1} \ forall (c_ {3}, c_ {4}) \ in \ {(c_ {1}, m_ {1}), (m_ {1}, c_ {2}) \} (\ phi _ {c_ {3}, c_ {4}, \ lceil t / 2 \ rceil}).}\ phi_ {c_1, c_2, t} = \ exists m_1 \ forall (c_3, c_4) \ in \ {(c_1, m_1), (m_1, c_2) \} (\ phi_ {c_3, c_4, \ lceil t / 2 \ rceil}).

Эта версия формула действительно может быть вычислена за полиномиальное время, поскольку любой ее экземпляр может быть вычислен за полиномиальное время. Универсально определенная упорядоченная пара просто говорит нам, что какой бы выбор не был (c 3, c 4) {\ displaystyle (c_ {3}, c_ {4})}(c_3, c_4) , ϕ c 1, c 2, t ⟺ ϕ c 3, c 4, ⌈ t / 2 ⌉ {\ displaystyle \ phi _ {c_ {1}, c_ {2}, t} \ iff \ phi _ {c_ {3}, c_ {4}, \ lceil t / 2 \ rceil}}\ phi_ {c_1, c_2, t} \ iff \ phi_ {c_3, c_4, \ lceil t / 2 \ rceil} .

Таким образом, ∀ L ∈ PSPACE, L ≤ p TQBF {\ displaystyle \ forall L \ in {\ mathsf {PSPACE}}, L \ leq _ {p} \ mathrm {TQBF}}{\ displaystyle \ forall L \ in {\ mathsf {PSPACE}}, L \ leq _ {p} \ mathrm {TQBF}} , поэтому TQBF сложен для PSPACE. Вместе с приведенным выше результатом, что TQBF находится в PSPACE, это завершает доказательство того, что TQBF является PSPACE-полным языком.

(Это доказательство следует за Sipser 2006 pp. 310–313 во всех основных положениях. Papadimitriou 1994 также включает доказательство.)

Miscellany
  • Одной из важных подзадач в TQBF является логическое значение проблема выполнимости. В этой задаче вы хотите знать, может ли заданная логическая формула ϕ {\ displaystyle \ phi}\ phi быть истинной с некоторым назначением переменных. Это эквивалентно TQBF с использованием только экзистенциальных кванторов:
∃ x 1 ⋯ ∃ xn ϕ (x 1,…, xn) {\ displaystyle \ exists x_ {1} \ cdots \ exists x_ {n} \ phi (x_ {1}, \ ldots, x_ {n})}\ exists x_1 \ cdots \ exists x_n \ phi (x_1, \ ldots, x_n)
Это также пример большего результата NP ⊆ {\ displaystyle \ substeq}\ substeq PSPACE, который непосредственно следует из наблюдения, что верификатор полиномиального времени для доказательства языка, принятого NTM (недетерминированная машина Тьюринга ), требует полиномиального пространства для хранения доказательства.
  • Любой класс в иерархии полиномов (PH ) TQBF представляет собой серьезную проблему. Другими словами, для класса, включающего все языки L, для которых существует поливременной TM V, верификатор, такой, что для всех входных x и некоторой константы i,
x ∈ L ⇔ ∃ y 1 ∀ y 2 ⋯ Q iyi V (x, y 1, y 2,…, yi) = 1 {\ displaystyle x \ in L \ Leftrightarrow \ exists y_ {1} \ forall y_ {2} \ cdots Q_ {i} y_ {i} \ V (x, y_ {1}, y_ {2}, \ dots, y_ {i}) \ = \ 1}x \ in L \ Leftrightarrow \ существует y_1 \ forall y_2 \ cdots Q_i y_i \ V (x, y_1, y_2, \ dots, y_i) \ = \ 1
, который имеет определенную формулировку QBF, которая задается как
∃ ϕ {\ displaystyle \ exists \ phi}\ exists \ phi такой, что ∃ x 1 → ∀ x 2 → ⋯ Q ixi → ϕ (x 1 →, x 2 →,…, xi →) = 1 {\ displaystyle \ exists {\ vec {x_ {1}}} \ forall {\ vec {x_ {2}}} \ cdots Q_ {i} {\ vec {x_ {i}}} \ \ phi ({\ vec {x_ {1}}}, {\ vec {x_ {2}}}, \ dots, {\ vec {x_ {i}}}) \ = \ 1}\ exists \ vec {x_1} \ forall \ vec {x_2} \ cdots Q_i \ vec {x_i} \ \ phi (\ vec {x_1}, \ vec {x_2}, \ dots, \ vec {x_i}) \ = \ 1
, где xi → {\ displaystyle {\ vec {x_ { i}}}}\vec{x_i}являются векторами логических переменных.
  • Важно отметить, что хотя язык TQBF определен как набор истинных количественных булевых формул, часто используется аббревиатура TQBF ( даже в этой статье), чтобы обозначить полностью количественно Логическая формула, часто называемая просто QBF (количественная логическая формула, понимаемая как «полностью» или «полностью» количественно определенная). Важно различать контекстуально два использования аббревиатуры TQBF при чтении литературы.
  • TQBF можно рассматривать как игру между двумя игроками с чередованием ходов. Переменные, определяемые количественно, эквивалентны представлению о том, что игрок может сделать ход в свой ход. Универсальные количественные переменные означают, что исход игры не зависит от того, какой ход игрок делает в этот ход. Кроме того, TQBF, первый квантификатор которого является экзистенциальным, соответствует игре по формуле, в которой первый игрок имеет выигрышную стратегию.
  • TQBF, для которого количественная формула находится в 2- CNF может быть решена за линейное время с помощью алгоритма, включающего анализ сильной связности его графа импликации. Проблема 2-выполнимости является частным случаем TQBF для этих формул, в которых каждый квантор является экзистенциальным.
  • Существует систематическая обработка ограниченных версий квантифицированных булевых формул (что дает Шеферу- классификации типов), представленные в пояснительной статье Хуби Чена.
  • Planar TQBF, обобщающий Planar SAT, был доказан Д. Лихтенштейном как PSPACE-полный.
Примечания и ссылки
  1. ^М. Гэри и Д. Джонсон (1979). Компьютеры и несговорчивость: Руководство по теории NP-полноты. У. Х. Фриман, Сан-Франциско, Калифорния. ISBN 0-7167-1045-5.
  2. ^А. Чандра, Д. Козен и Л. Стокмейер (1981). "Чередование". Журнал ACM. 28 (1): 114–133. doi : 10.1145 / 322234.322243. CS1 maint: несколько имен: список авторов (ссылка )
  3. ^Ади Шамир (1992). "Ip = Pspace. Журнал ACM. 39 (4): 869–877. doi : 10.1145 / 146585.146609.
  4. ^Кром, Мелвен Р. (1967). «Проблема решения для класса формул первого порядка, в которых все дизъюнкции двоичны». Zeitschrift für Mathematische Logik und Grundlagen der Mathematik. 13 (1-2): 15-20. doi : 10.1002 / malq.19670130104..
  5. ^Аспвалл, Бенгт; Пласс, Майкл Ф.; Тарджан, Роберт Э. (1979). "Алгоритм линейного времени для проверки истинности определенных количественных булевых формул » (PDF). Письма об обработке информации. 8(3): 121–123. doi : 10.1016 / 0020-0190 (79) 90002-4..
  6. ^Чен, Хуби (декабрь 2009 г.). «Свидание логики, сложности и алгебры». ACM Computing Surveys. ACM. 42 (1): 1–32. arXiv : cs / 0611018. doi : 10.1145 / 1592451.1592453.
  7. ^Лихтенст Эйн, Дэвид (1982-05-01). «Планарные формулы и их использование». SIAM Journal on Computing. 11 (2): 329–343. doi : 10.1137 / 0211025. ISSN 0097-5397.
См. Также
Внешние ссылки
Последняя правка сделана 2021-06-11 12:50:00
Содержание доступно по лицензии CC BY-SA 3.0 (если не указано иное).
Обратная связь: support@alphapedia.ru
Соглашение
О проекте