Скачиваний:
24
Добавлен:
20.05.2014
Размер:
65.02 Кб
Скачать

§8. Исчисление предикатов.

Формальный язык L0, исследованный в предшествующих параграфах, слишком беден, чтобы записать все суждения, встречающиеся в неформальных математических текстах. Формулы этого языка не содержат параметров, в нем отсутствуют средства описаний алгебраических операций, алфавит не содержит кванторов. Мы хотим теперь ввести в рассмотрение значительно более богатый язык L1 – язык “первого порядка”, который называется исчислением предикатов (ИП).

Слово предикат в содержательной математической теории означает высказывание, зависящее от параметров, которое может быть истинным или ложным в зависимости от значений этих параметров. Рассмотрим, например, арифметику натуральных чисел и высказывание: “n – простое число”. Обозначим это высказывание P(n). Тогда высказывания P(2), P(3) – истинны, а P(4) - ложно. Наше высказывание зависит от одного арифметического параметра n и потому называется одноместным арифметическим предикатом. Обозначим через R(m, n) высказывание: “m > n”. Мы имеем дело с двуместным арифметическим предикатом. Например, R(4, 2) и R(100, 7) истинны, а R(5, 5) – ложно. Высказывание “xX” определяет двуместный предикат S(x, X) в теории множеств. Высказывание S(0, Q) истинно, а S(, Q) ложно. Эти примеры легко продолжить. В каждой содержательной математической теории постоянно встречаются предикаты разной местности.

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

Алфавит ИП включает следующие множества символов

  1. Символы переменных: x, y, z.

  2. Символы констант: a, b, c.

  3. Символы операций (функций): f, g, h.

  4. Символы предикатов (отношений): p, q, r. (Каждому функциональному и предикатному символу сопоставлено определенное натуральное число – его местность или валентность. Это число надо понимать как количество аргументов, от которых зависит данная функция или предикат. Множество X символов переменных предполагается непустым так же как и множество символов предикатов. Остальные множества могут быть и пустыми).

  5. Логические связки: , , ,  - те же, что и в языке L0.

  6. Квантор общности  и квантор существования .

  7. Скобки (, ) и запятые.

Это описание алфавита относится к целому классу формальных языков. Каждый конкретный язык содержит определенное число символов операций и предикатов определенной валентности. Перечень этих символов называется сигнатурой рассматриваемой теории.

Синтаксис ИП. Конечные последовательности символов языка L1 будем называть выражениями. Не исключаются выражения из одного символа и даже пустые выражения. Не все выражения имеют смысл. Нас будут интересовать термы, атомарные формулы и формулы.

  1. Термы 1. Символы переменных и констант – термы. 2. Если f – функциональный символ валентности n и t1, t2,…, tn – термы, то f(t1, t2,…, tn) – терм. 3. Каждый терм получается в результате применения 1. и 2. конечное число раз. (Интуитивно термы надо понимать как названия математических объектов рассматриваемой теории. Например, считая, что f(n, m) обозначает произведение чисел n и m, имеем арифметические термы: n, 2, f(4, m) и так далее.)

  1. Атомарные формулы Если p–предикатный символ валентности n, а t1, t2,…, tn – термы, то p(t1, t2,…, tn ) – атомарная формула. (Эту формулу можно читать следующим образом: “Верно, что упорядоченный набор объектов t1, t2,…, tn обладает свойством p.”)

  2. Формулы 1. Атомарные формулы являются формулами. 2. Если Q1, Q2, Q – формулы, x – переменная, то следующие выражения являются формулами: (Q1 Q2), (Q1Q2), (Q1Q2), (Q), x(Q), x(Q). 3. Всякая формула получается применением 1. и 2. конечное число раз. (Формула x(Q) читается: “для всех x верно Q”, x(Q) – “найдется x, что верно Q.) Формула Q называется областью действия соответствующего квантора.

Связанное и свободное вхождение переменных.

Если выражение K имеет вид LxM, где L и M – выражения, а x – символ переменной, то говорят, что переменная x имеет вхождение в выражение K. Переменная x может иметь несколько вхождений в одно и тоже выражение. Если K – формула, то различают свободные и связанные вхождения переменной. Формальное определение имеет следующий вид.

  1. Всякое вхождение переменной в атомарную формулу свободно.

  2. Всякое вхождение переменной в формулу Q и в формулы Q1*Q2, где “*’- любая логическая связка свободно или связано в точности тогда, когда свободно или связано ее соответствующее вхождение в Q или в Q1, Q2.

  3. Вхождение переменной x в x(Q) и в x(Q) связано. Вхождения других переменных в эти формулы таково же, как и в формулу Q.

Если переменная имеет свободные вхождения в формулу, то она называется параметром этой формулы. Формулы, не имеющие параметров, называются замкнутыми.

Приведем пример. Пусть f – функциональный символ валентности 1, а P и R – предикатные символы валентности 1 и 3 соответственно, x и y – переменные, а b – константа. Рассмотрим формулу: (P(y)(x(P(f(x)))))  y(R(x, y, b)). Переменные x и y имеют по 3 вхождения в эту формулу. Первые два вхождения x связаны, поскольку, во-первых, квантор общности действует по переменной x, и, во-вторых, переменная x в формуле x(P(f(x))) находится в области действия этого квантора. Третье вхождение x, хотя и лежит в области действия квантора существования, является свободным, поскольку этот квантор действует по другой переменной. Первое вхождение y в формулу P(y) свободно, а второе и третье являются связанными по той же причине, что и первые два вхождения x. Обе переменные являются параметрами этой формулы.

В содержательной математике свободное вхождение переменной представляет величину или утверждение, зависящее от значения этой переменной. Выражение, содержащее связанную переменную, представляет результат операции, примененной к области изменения этой переменной или результат проверки некоторого свойства в этой области. Например, если P(n) арифметический предикат, выражающий свойство “n+1>n”, то высказывание n(P(n)) означает истинность бесконечной конъюнкции: (2>1)(3>2)(4>3)…, в которую переменная n вообще не входит. Поскольку в формальной теории недопустимы бесконечные формулы, мы вынуждены в такой ситуации использовать специальные символы – кванторы и вводить связанные переменные. В этом смысле квантор общности заменяет конъюнкцию некоторого (возможно бесконечного) множества высказываний, а квантор существования – их дизъюнкцию. Другие примеры связанного вхождения переменных в формулы содержательной математики доставляют выражения (связанное вхождение переменной n) и (связанное вхождение x).

Некоторые авторы используют разные символы для обозначения свободных и связанных вхождений переменных, однако это не всегда удобно. N. Bourbaki в своем трактате Éléments de mathématique вообще отказывается от использования букв для обозначения связанных вхождений переменных. Формула x(Q) в его первоначальных обозначениях имеет вид τ(ٱQ), причем символ “ٱ” в формуле Q стоит на местах, соответствующих связанным вхождениям переменной, по которой этот квантор действует. Все эти квадратики соединяются стрелками с буквой τ, чтобы было понятно какой именно квантор, если их несколько, действует на данной “позиции”. Впрочем, как отмечает Бурбаки, “употребление одних только первоначальных символов привело бы к непреодолимым типографским и умственным затруднениям”.

Обратим внимание, что в языке L1 кванторы действуют только по символам переменных. Выражения f (Q) или p(Q), где f – функциональный, а p – предикатный символ не являются формулами этого языка. Это накладывает определенные ограничения на возможность формализации теории средствами языка L1. Формулы указанного вида можно строить в языках более высокого порядка, но мы не будем их рассматривать.

Интерпретации ИП.

Пусть нам задан некоторый формальный язык данной сигнатуры, то есть, перечислены все функциональные и предикатные символы этого языка с указанием их валентности и константы. Нам бы хотелось каждой формуле этого языка сопоставить некоторое неформальное высказывание, истинность или ложность которого мы были бы в состоянии проверить. В отличие от формул ИВ, наши формулы могут содержать параметры, и их истинность, вообще говоря, зависит от значений этих параметров. Пусть параметры являются элементами некоторого множества M, которое называется носителем интерпретации . Каждую константу языка будем интерпретировать как некоторый выделенный элемент M. Другими словами,  определяет отображение множества констант в множество M. Каждому функциональному символу f валентности n сопоставим функцию от n переменных на множестве M со значениями в M, то есть отображение (f) : Mn  M. Каждому предикатному символу P валентности n сопоставим некоторое подмножество (P) Mn, которое интерпретируется как множество таких наборов m1, m2,…mn, для которых высказывание, соответствующее символу P истинно.

Назовем оценкой переменных любое отображение  : X M множества переменных в носитель интерпретации (каждой переменной мы “придаем” определенное значение). Для каждого терма t определим его значение при данной оценке (t)M следующим образом:

  1. Если x символ переменной, то (x) уже определено; если a – символ константы, то (a) = (a).

  2. Если для термов t1, t2,…, tn значения уже определены и f – функциональный символ, то (f(t1, t2,…, tn)) = (f)((t1), (t2),…, (tn)).

Определим теперь истинностное значение (A;) атомарной формулы A=p(t1, t2,…, tn) по оценке . (A;) = 1, если (t1), (t2),…, (tn)(p), в противном случае (A;) = 0.

Наконец, определим истинностное значение произвольной формулы Q по оценке  следующим образом:

  1. Для атомарных формул (Q;) уже определено.

  2. Истинностные значения формул (Q1 Q2), (Q1Q2), (Q1Q2), (Q) определяются по тем же правилам, что и в исчислении высказываний.

  3. (x(Q);) = 1, если (Q;) = 1 для всех оценок , таких, что (u) = (u) при ux. В противном случае эта формула имеет истинностное значение 0.

  4. (x(Q);) = 1, если (Q;) = 1 хотя бы для одной такой оценки , что (u) = (u) при ux. В противном случае эта формула имеет истинностное значение 0.

Можно проверить, что истинностное значение формулы Q зависит лишь от оценок входящих в нее параметров, в частности истинностное значение замкнутой формулы вообще не зависит от оценки.

Примеры интерпретаций.

  1. Язык арифметики L1 Ar. В сигнатуре этого языка имеется одна константа 0, три функциональных символа:  (штрих) валентности 1, + (сложение) и  (умножение) валентности 2 и один предикатный символ = (равенство) валентности 2.

Стандартная интерпретация  строится на множестве целых чисел Z или натуральных чисел N = {0, 1, 2…}. При этом (0) = 0, () – операция прибавления 1, (+) – обычная операция сложения целых чисел, а () – операция умножения; (=) интерпретируется как равенство целых чисел. Формула nm(n+m = m+n) является замкнутой и истинной в данной интерпретации. Формула n+m=nm имеет 2 параметра и является истинной при одних значениях параметров и ложной при других. Формула n=n имеет 1 параметр и является ложной в данной интерпретации по любой оценке.

  1. Язык теории множеств L1 Set. В этом языке есть символ константы “”, предикатный символ “” валентности 2 и совсем нет функциональных символов. В стандартной интерпретации этого языка в качестве носителя выбирается некоторое достаточно обширное множество, элементами которого также являются множества, () интерпретируется как пустое множество, а () как отношение принадлежности. Формула x((x)) истинна в данной интерпретации, а формула xx ложна по любой оценке.