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

Языки первого порядка

< Лекция 4 || Лекция 5: 1234 || Лекция 6 >

Определение истинности

Из приведенных выше примеров, вероятно, понятен смысл формулы, то есть ясно, в каких интерпретациях данной сигнатуры и для каких элементов формула истинна. Тем не менее для любителей строгости мы приведем формальное определение истинности. (Его детали понадобятся, когда мы будем проверять истинность выводимых формул, см. раздел "Корректность исчисления предикатов"

Прежде всего, определим формально понятие параметра формулы (переменной, от значения которой может зависеть истинность формулы). Согласно этому определению, скажем, формула \forall x\,\exists y\, A(x,y) не имеет параметров, а формулы \exists y\, A(x,y) и (A(x)\land \forall x\, B(x,x)) имеют единственный параметр x. Вот как выглядит это определение:

  • Параметрами терма являются все входящие в него индивидные переменные.
  • Параметрами атомарной формулы являются параметры всех входящих в нее термов.
  • Параметры формулы \lnot \varphi те же, что у формулы \varphi.
  • Параметрами формул (\varphi\land\psi), (\varphi\lor\psi) и (\varphi\to\psi) являются все параметры формулы \varphi, а также все параметры формулы \psi.
  • Параметрами формул \forall\xi\,\varphi и \exists\xi\,\varphi являются все параметры формулы \varphi, кроме переменной \xi.

Параметры иногда называют свободными переменными формулы. Заметим, что формула может иметь одновременно параметр x и использовать (в другом месте) квантор \forall x. Как говорят в этом случае, одна и та же переменная имеет свободные и связанные вхождения. Свободное вхождение переменной — это такое вхождение, которое не входит в область действия одноименного квантора. Если аккуратно определить эту область действия, несложно проверить, что параметры формулы — это как раз переменные, имеющие свободные вхождения.

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

Итак, пусть фиксирована сигнатура и некоторая интерпретация этой сигнатуры. Оценкой назовем отображение, которое ставит в соответствие каждой индивидной переменной некоторый элемент множества, являющегося носителем интерпретации. Этот элемент будем называть значением переменной при данной оценке.

Определим индуктивно значение терма t при данной оценке \pi, которое мы будем обозначать [t](\pi).

  • Для переменных оно уже определено.
  • Если t является константой (нульместным функциональным символом), то [t](\pi) не зависит от \pi и равно значению этой константы при данной интерпретации (напомним, в интерпретации с каждой константой сопоставляется некоторый элемент носителя).
  • Если t имеет вид f(t_1,\dots,t_m), где f — функциональный символ валентности m, а t_1,\dots,t_m — термы, то [t](\pi) есть [f]([t_1](\pi),\dots,[t_m](\pi)), где [f] есть функция, соответствующая символу f в нашей интерпретации, а [t_i](\pi) есть значение терма t_i при оценке \pi.

Теперь можно определить значение формулы \varphi при данной оценке \pi в данной интерпретации, которое обозначается [\varphi](\pi) и может быть равно И или Л ; в первом случае формула называется истинной, во втором — ложной. Это определение также индуктивно:

  • Значение атомарной формулы A(t_1,\dots,t_m) определяется как [A]([t_1](\pi),\dots,[t_m](\pi)), где [A] — предикат, соответствующий предикатному символу A в рассматриваемой интерпретации. Если формула представляет собой нульместный предикатный символ, то ее значение не зависит от оценки и есть значение этого символа.
  • [\lnot \varphi](\pi) определяется как \lnot
[\varphi(\pi)], где \lnot понимается как операция в \mathbb{B}. Другими словами, формула \lnot \varphi истинна при оценке \pi тогда и только тогда, когда формула \varphi ложна при этой оценке.
  • [\varphi \land \psi](\pi) определяется как [\varphi](\pi)\land [\psi](\pi), где \land в правой части понимается как операция в \mathbb{B}. (Другими словами, формула (\varphi\land\psi) истинна при оценке \pi тогда и только тогда, когда обе формулы \varphi и \psi истинны при этой оценке.) Аналогичным образом [\varphi \lor \psi](\pi) определяется как [\varphi](\pi)\lor [\psi](\pi), а [\varphi \to \psi](\pi) — как [\varphi](\pi)\to [\psi](\pi).
  • Формула \forall \xi\,\varphi истинна на оценке \pi тогда и только тогда, когда формула \varphi истинна на любой оценке \pi', которая совпадает с \pi всюду, кроме значения переменной \xi (которое в оценке \pi' может быть любым). Другими словами, если обозначить через \pi+(\xi\mapsto m) оценку, при которой значение переменной \xi равно m, а остальные переменные принимают те же значения, что и в оценке \pi, то
    [\forall \xi\, \varphi](\pi)=
      \bigwedge_{m\in M} [\varphi](\pi+(\xi\mapsto m)).
    (В правой части стоит бесконечная конъюнкция, которая истинна, если все ее члены истинны.)
  • Формула \exists \xi\,\varphi истинна на оценке \pi тогда и только тогда, когда формула \varphi истинна на некоторой оценке \pi', которая совпадает с \pi всюду, кроме значения переменной \xi (которое в оценке \pi' может быть любым). Другими словами,
    [\forall \xi\, \varphi](\pi)=
      \bigvee_{m\in M} [\varphi](\pi+(\xi\mapsto m)).
    (В правой части стоит бесконечная дизъюнкция, которая истинна, если хотя бы один из ее членов истинен.)

Заметим, что в двух последних пунктах значение переменной \xi в оценке \pi не играет роли. Это позволяет легко доказать (индукцией по построению формулы) такое утверждение: если две оценки \pi_1 и \pi_2 придают одинаковые значения всем параметрам формулы \varphi, то [\varphi](\pi_1)\hm=
[\varphi](\pi_2). Другими словами, истинность формулы определяется значениями ее параметров.

45. Проведите это индуктивное рассуждение подробно.

46. Приведенные выше определения применимы к любой формуле, в том числе и к странной формуле \forall y\, A(x). Какие у нее параметры? При каких значениях параметров она истинна? (Ответ: она имеет единственный параметр x и эквивалентна формуле A(x).)

47. В каком случае будет истинна формула \forall x\,\exists
x\,A(x)? Тот же вопрос для формулы \exists x\,\forall x\,
A(x). (Ответ: первая из этих формул эквивалентна формуле \exists x\, A(x), а вторая — формуле \forall x\,
A(x).)

Формула называется замкнутой, если она не имеет параметров. Замкнутые формулы называют также суждениями. Как мы доказали, истинность замкнутой формулы определяется выбором интерпретации (и не зависит от значений переменных).

< Лекция 4 || Лекция 5: 1234 || Лекция 6 >