Опубликован: 24.04.2007 | Доступ: свободный | Студентов: 705 / 30 | Оценка: 4.60 / 4.30 | Длительность: 25:56:00
Специальности: Программист
Лекция 11:

Теорема Эрбрана

< Лекция 10 || Лекция 11: 123 || Лекция 12 >
Аннотация: Рассматривается теорема Эрбрана и следствия из неё, а также примеры приложений

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

Говорят, что формула находится в предваренной нормальной форме, если все кванторы в ней вынесены налево, то есть если она имеет вид

Q_1 \xi_1 \ldots Q_k \xi_k \varphi,
где Q_1,\dots,Q_kкванторы всеобщности или существования, \xi_1,\dots,\xi_k — переменные, а \varphi — бескванторная формула. Эта формула может иметь параметры (если формула \varphi имеет параметры, отличные от \xi_1,\dots,\xi_k ).

Основной результат этого раздела гласит, что всякая формула (доказуемо) эквивалентна некоторой формуле в предваренной нормальной форме (предваренной формуле). Мы докажем его, одновременно построив некоторую классификацию формул (в каком- то смысле отражающую их "логическую сложность"). В качестве меры сложности можно было бы взять число кванторов в предваренной нормальной форме. Но правильнее учитывать число групп кванторов (считая одноименные рядом стоящие кванторы за один).

Говорят, что предваренная формула является \Sigma_n - формулой, если ее кванторная приставка содержит n групп кванторов, причем первыми стоят кванторы существования. Если первыми стоят кванторы всеобщности, говорят о классе \Pi_n. (Аналогичные обозначения используются в теории алгоритмов для классификации арифметических множеств, см. [5]).

Пример: формула {\forall x \exists y \exists z\forall u\,
(A(x,u,z)\to B(z,u))} принадлежит классу \Pi_3, формула \exists u\forall v\,C(u,v) принадлежит классу \Sigma_2, а формула {\forall x\, (A(x) \to \exists y B(x,y))} вообще не находится в предваренной нормальной форме.

103. Указать формулу в предваренной нормальной форме, доказуемо эквивалентную последней из перечисленных формул.

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

  • Всякая формула из класса \Sigma_n или \Pi_n доказуемо эквивалентна формуле из класса \Sigma_{n+1}, а также формуле из класса \Pi_{n+1}. В самом деле, если формула \psi не имеет параметра \eta, то она будет доказуемо эквивалентна формулам \exists\eta\,\psi и \forall\eta\,\psi (одна импликация является аксиомой, другая получается из \psi\hm\to\psi по правилу Бернайса). Таким образом, можно добавить фиктивный квантор в начало кванторной приставки или в ее конец; во втором случае надо сослаться на лемму 2.
  • Отрицание любой формулы из класса \Sigma_n доказуемо эквивалентно некоторой формуле из класса \Pi_n и наоборот. В самом деле, мы видели, что \lnot\exists\xi\,\psi выводимо эквивалентно \forall\xi\,\lnot\psi и наоборот, так что отрицание можно проносить внутрь, меняя по ходу дела кванторы на двойственные.
  • Покажем, что конъюнкция двух формул из \Pi_1 доказуемо эквивалентна некоторой формуле из \Pi_1. Например, конъюнкция \forall x\,A(x)\hm\land \forall y\,B(y) доказуемо эквивалентна формуле {\forall x \forall y\,
(A(x)\land B(y))}. В самом деле, используя аксиомы про квантор всеобщности, можно из \forall x\, A(x) вывести A(x), а из \forall y\, B(y) вывести B(y), поэтому из их конъюнкции выводится A(x)\hm\land B(y), после чего можно навесить два квантора всеобщности. В другую сторону: выводим формулу {\forall x\forall y\, (A(x)\land B(y))}\hm\to
A(x), затем применяем правило Бернайса и т. д.

    104. Покажите, что можно сэкономить один квантор и использовать формулу {\forall x\, (A(x)\land B(x))}.

    Общее рассуждение (для любых двух формул из класса \Pi_1 ) почти столь же просто, надо лишь переименовать связанные переменные, пользуясь теоремой 52.

  • Аналогично можно доказать, что дизъюнкция двух формул из класса \Sigma_1 доказуемо эквивалентна некоторой формуле класса \Sigma_1. (Можно также перейти к двойственному классу \Pi_1, воспользовавшись уже известными свойствами отрицания.)
  • Покажем теперь, что конъюнкция двух формул из класса \Sigma_1 доказуемо эквивалентна формуле класса \Sigma_1 и что дизъюнкция двух формул класса \Pi_1 доказуемо эквивалентна формуле класса \Pi_1. Для этого надо воспользоваться эквивалентностями вида

    \exists x\,A(x) \land
\exists y\,B(y) \leftrightarrow
\exists x \exists y (A(x)\land B(y))
    и
    \forall x\,A(x) \lor
\forall y\,B(y) \leftrightarrow
\forall x \forall y (A(x)\lor B(y)).
    Отметим кстати, что в них уже нельзя сэкономить квантор; например, формула \exists x (A(x)\land B(x)) не равносильна формуле \exists x\, A(x)\hm\land \exists x\, B(x). (В одном из выступлений времен начала перестройки М.С.Горбачев сказал, что нужны "преданные делу социализма, но квалифицированные специалисты" — впрочем, в газетной публикации "но" было заменено на нейтральное "и". Так вот, их существование не вытекает из отдельного существования тех и других.)

    Указанные эквивалентности, как легко видеть, общезначимы и потому выводимы. Это совсем просто понять для первой из них (чтобы найти пару объектов с заданными свойствами, надо найти отдельно первый и второй члены пары). Вторая эквивалентность немного сложнее — проще всего заметить, что она переходит в первую при добавлении отрицания. (Большая сложность отражает тот факт, что вторая эквивалентность, в отличие от первой, не является интуиционистски верной.)

  • Теперь легко понять, что конъюнкция и дизъюнкция двух формул из класса \Sigma_n (или \Pi_n) доказуемо эквивалентны формулам из того же класса. В самом деле, с помощью указанных выше эквивалентностей можно слить кванторные приставки. Например, формула

    \forall x \exists y \, A(x,y) \lor \forall u \exists v \, B(u,v)
    доказуемо эквивалентна сначала формуле
    \forall x \forall u \, (\exists y\, A(x,y) \lor \exists v\, B(u,v)),
    а затем формуле
    \forall x \forall u \exists y \exists v\, (A(x,y)\lor B(u,v)).

105. Как сэкономить один квантор в этом преобразовании?

Теперь все готово для доказательства упомянутого в начале раздела результата.

Теорема 53 (о предваренной нормальной форме). Любая формула произвольной сигнатуры доказуемо эквивалентна некоторой формуле той же сигнатуры, имеющей предваренную нормальную форму.

Индукция по построению формулы. Для атомарных формул это очевидно. Отрицание переводит формулу класса \Sigma_n в класс \Pi_n и наоборот. Конъюнкция и дизъюнкция: приведем каждую формулу к предваренной нормальной форме, затем добавим фиктивные кванторы так, чтобы они попали в один класс, а затем воспользуемся доказанным утверждением. Импликация сводится к дизъюнкции и отрицанию ( \varphi\hm\to\psi доказуемо эквивалентно \lnot\varphi\lor\psi ).

Отметим, что ни формулировка, ни доказательство этой теоремы не предполагают замкнутости формулы.

106. Привести к предваренной нормальной форме формулу \forall x\,A(x)\hm\to\forall x\, B(x).

107. Формулы \varphi и \psi принадлежат классу \Sigma_n. Найдем формулу в предваренной нормальной форме, выводимо эквивалентную формуле \varphi\hm\to\psi. В каком классе она окажется? (Указание: возможны разные варианты.)

108. Применим описанный метод к общезначимой формуле \exists
x\forall y\, A(x,y)\hm\to\forall y\exists x A(x,y). Какая предваренная формула получится? (Естественно, она будет общезначимой.)

< Лекция 10 || Лекция 11: 123 || Лекция 12 >