КЛАССИЧЕСКАЯ ЛОГИКА ПРЕДИКАТОВ

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

Рассмотренная в предыдущей главе классическая логика высказываний является весьма бедной логической теорией. С ее помощью выделяется сравнительно узкий класс логически истинных высказываний, в ее рамках можно обосновать правильность лишь достаточно ограниченного числа дедуктивных умозаключений.

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

Примером подобного логически истинного высказывания является высказывание

«Всякий школьник не остроумен, или некоторые школьники остроумны»,

анализ которого был осуществлен в §3 главы I.

В §2 той же главы показано, что правильность умозаключения

М. Тэтчер популярнее С. Рушди.

М. Тэтчер - британский политик.

С. Рушди - британский писатель.

Некоторые британские политики популярнее некоторых

британских писателей.

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

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

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

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

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

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

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

Именем называется термин, обозначающий отдельный объект (индивид).

Среди имен выделяют простые и сложные. Простые имена не содержат никакой информации об обозначаемых ими индивидах, являются как бы метками этих объектов. Поэтому их еще называют именами-ярлыками или же собственными именами. Примерами простых имен являются термины «Луна», «Москва», «Аристотель», «3». Сложные имена не только обозначают предмет, но и указывают на какие-либо его свойства, характеристики. Например, сложное имя «естественный спутник Земли» не просто обозначает Луну, но и содержит определенную информацию об этом небесном теле: указывает на его естественное происхождение, а также на то, что оно вращается вокруг Земли. Другие примеры сложных имен - «столица России» (обозначает город Москву), «основатель логики и психологии» (обозначает Аристотеля), «число, получающееся в результате сложения 2 и 1» или «2+1» (обозначает число 3).

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

К предметным функциям относятся, например, арифметические операции над числами. Скажем, функция извлечения квадратного корня сопоставляет отдельным числам отдельные числа, например: индивиду 4 - индивид 2, индивиду 9 - индивид 3. Эта операция представляет собой функцию от одного аргумента, или же одноместную функцию. Операция сложения является двухместной предметной функцией, она парам индивидов (чисел) сопоставляет некоторые индивиды (числа), например: паре аргументов 2 и 1 - число 3 (сумму 2 и 1), паре аргументов 2 и 2 - число 4 и т. д.

Вообще, п-местная предметная функция ставит в соответствие я-кам индивидов (последовательностям, состоящим из п объектов) некие индивиды.

К разряду предметных функций относятся не только операции над числами. Например, функция, сопоставляющая каждому государству его столицу (России - Москву, Франции - Париж и т. д.), также является предметной, ведь она индивидам (государствам) сопоставляет индивиды (города). Эта предметная функция - одноместная.

Двухместной предметной (но не числовой) функцией является функция, сопоставляющая парам населенных пунктов расстояние между ними (например, городам Москва и Санкт-Петербург - величину длины, равную 650 км).

Термины, с помощью которых в языке представляются

предметные функции, называются предметными функторами.

Например, функция извлечения квадратного корня представляется знаком «V»; функция сложения - знаком «+»; функция, сопоставляющая государству его столицу, - термином «столица»; функция, сопоставляющая паре населенных пунктов величину протяженности между ними, - термином «расстояние от... до...». Указанные языковые выражения как раз и относятся к категории предметных функторов, причем знаки одноместных предметных функций («V», «столица») являются одноместными, а знаки двухместных предметных функций («+», «расстояние от... до...») - двухместными предметными функторами.

Вообще, п-местный предметный функтор - это знак «-местной предметной функции.

Предметные функторы играют в естественном языке определенную синтаксическую роль - с их помощью можно из одних выражений строить другие выражения языка. В частности, посредством присоединения предметного функтора к именам может быть получено новое, более сложное имя. Например, сочленяя предметный функтор «V» с именем «4», получаем сложное имя « 4а » (его значением является число 2); сочленяя предметный функтор «столица» с именем «Россия», получаем сложное имя «столица России» (его значением является город Москва). Из имен «2» и «1» с помощью предметного функтора «+» можно образовать сложное имя «2+1» (знак числа 3), а из имен «Москва» и «Санкт-Петербург» с помощью функтора «расстояние от... до...» - имя «расстояние от Москвы до Санкт-Петербурга» (его значение - величина длины 650 км).

С помощью многоместных предметных функторов и имен можно также получать предметные функторы меньшей местности. Так, одноместную функцию, сопоставляющую каждому числу число, на 1 большее его (функцию прибавления 1), можно выразить в языке посредством «...+1», сочленяя двухместный функтор «...+...» с именем «1».

Аналогично из двухместного предметного функтора «расстояние от... до...» получается одноместный - «расстояние от Москвы до...». Это выражение представляет одноместную функцию, сопоставляющую населенному пункту величину расстояния до него от Москвы.

Заметим, что имена могут трактоваться как нулъместные предметные функторы - знаки функций, число аргументов которых равно 0, а значениями являются индивиды. Например, если термин «расстояние от... до...» - двухместный предметный функтор, а термин «расстояние от Москвы до...» - одноместный предметный функтор, то имя «расстояние от Москвы до Санкт-Петербурга» естественно рассматривать как нульместный предметный функтор.

К третьему типу нелогических терминов относятся предикаторы.

Предикаторы - это знаки свойств и отношений.

Они представляют то, что может предицироваться предметам, т. е. соотноситься с ними. Термины, представляющие свойства (например, «красный», «способный изучать логику», «электропроводный»), являются одноместными предикаторами. Термины, представляющие отношения между предметами (например, «больше», «севернее», «старше»), являются многоместными предикаторами.

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

В качестве значения одноместного предикатора, представляющего некоторое свойство, можно рассматривать множество индивидов, обладающих этим свойством. Например, значение предикатора «красный» - множество красных предметов, значение термина «электропроводный» - множество электропроводных веществ. С этой точки зрения, такие термины, как «человек», «государство», «натуральное число», следует также отнести к одноместным преди- каторам, поскольку их значениями являются множества индивидов (людей, государств, натуральных чисел). Указанные термины можно рассматривать и как знаки свойств (быть человеком, быть государством, быть натуральным числом).

Значением многоместного предикатора, представляющего некоторое отношение, можно считать также множество, элементами которого являются последовательности (пары, тройки и т. д.) индивидов, находящихся в данном отношении. Например, значением предикатора «больше» является класс всех таких пар чисел, первое из которых больше второго. Так, пара чисел <4, 2> содержится в этом классе, а пара <2, 4> нет, ведь 4 больше 2, но 2 не больше 4. Значением предикатора «севернее» является класс всех таких пар географических точек, первая из которых севернее второй (пара <Санкт-Петербург, Москва> принадлежит этому множеству, а пара <Москва, Санкт-Петербург> - нет).

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

значением w-местного предикатора является некоторое

множество я-ок индивидов (последовательностей, состоящих из п объектов).

Синтаксическая роль, которую играют предикаторы в естественном языке, состоит в следующем: сочленяя их с именами, можно получать высказывания и предикаторы меньшей местности. Например, из одноместного предикатора «человек» и имени «Петр» можно образовать высказывание «Петр - человек». Из двухместного предикатора «севернее» и имени «Москва» получается одноместный предикатор (знак свойства) «севернее Москвы» (он репрезентирует множество индивидов - географических точек, расположенных севернее Москвы). А из этого одноместного предикатора и имени «Санкт-Петербург» образуется высказывание «Санкт-Петербург севернее Москвы». Сами высказывания естественно рассматривать как нулъместные предикаторы.

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

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

Нелогическими символами данного формализованного языка являются прежде всего параметры нелогических терминов естественГлава III. Классическая логика предикатов

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

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

При переводе выражений естественного языка на язык логики предикатов простые имена заменяются предметными константами, причем одинаковые имена - одинаковыми символами из данного списка, а различные - различными.

Вторую группу нелогических символов составляют п-местные предметно-функциональные константы (п > 1) - параметры

«-местных функторов естественного языка:

Верхний индекс указывает на местность константы. Одноместный предметный функтор «столица» может быть замещен, например, константой f1, а двухместный предметный функтор «расстояние от... до...» - параметром g2.

Третью группу составляют п-местные предикаторные константы (п > 1) - параметры предикаторов естественного языка:

Верхний индекс опять-таки указывает на местность константы. Одноместный предикатор «человек» может быть замещен, например, предикаторной константой Р1, а двухместный предикатор «севернее» - параметром Q2.

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

Помимо параметров нелогических терминов естественного языка в языке логики предикатов имеется еще одна группа нелогических (дескриптивных) символов. Это так называемые предметные (индивидные) переменные:

§1. Язык логики предикатов

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

Логические символы языка классической логики предикатов бывают двух типов. К первому относятся пропозициональные связки - знаки функций истинности. Выберем в качестве исходных связок -i, &, v, з, которые составляют функционально полную систему. Ко второму типу относятся кванторы: V - квантор общности и 3 - квантор существования.

К техническим символам относятся левая и правая скобки, а также запятая.

Построение алфавита языка логики предикатов завершено.

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

Определение терма:

  • 1. Произвольная предметная константа является термом.
  • 2. Произвольная предметная переменная является термом.
  • 3. Если Ф - «-местная предметно-функциональная константа, a ti, t2,..., t„ - термы, то Ф^ь t2,..., t„) - терм.
  • 4. Ничто иное не является термом.

Выражения, указанные в пунктах 1 и 2 данного определения, называются простыми термами, а те, которые указаны в пункте 3, - сложными.

Символы а, Ьь Сз, например, относятся к числу термов согласно п. 1 определения, а символы л:2, у, Zio являются термами согласно п. 2. Символы f1, Р2 и V не являются термами, поскольку не относятся ни к числу предметных констант или предметных переменных, ни к числу выражений вида Ф(^, t2,..., t„).

Определим, является ли термом выражение f*(g2(:c, а))? Данная последовательность знаков имеет вид O(t), где Ф есть f1 - одноместная предметно-функциональная константа. Согласно п. 3, данное выражение есть терм, если t (т. е. g2(jc, а)) является термом. Выражение g2(x, а) имеет вид Ф^, t2), где Ф есть g2 - двухместная предметно-функциональная константа, tj есть х - терм (см. п. 2), t2 есть а - терм (см. п. 1). Поэтому, согласно п. 3, g2(jt, а) является термом. Значит, и выражение f'(g2(jc, а)) - терм.

Выражение P!(g2(*, а)) не является термом, поскольку оно начинается не с предметно-функциональной, а с предикаторной константы. Выражение h2(g2(jc, а)) не является термом, так как оно начинается с двухместной предметно-функциональной константы h2, а в скобках после нее находится один терм g2(x, а), а не два терма, как того требует п. 3 определения.

Поясним на примерах, каким образом осуществляется перевод имен естественного языка на язык логики предикатов.

Пусть простому имени «4» соответствует предметная константа а, а простому имени «5» - константа Ь, одноместному предметному функтору «V» сопоставим одноместную предметно-функциональную константу f1 (или просто f), а двухместному функтору «+» - двухместную предметно-функциональную константу g2 (или просто g). Тогда при переводе на язык логики предикатов сложным именам будут соответствовать следующие термы:

имени «74»- терм f(a),

имени «4 + 5» - терм g(a, b),

имени «5 + 4» - терм g(b, а),

имени « 74 + 5» - терм g(f(a), b),

имени « 74 + 5 » - терм f(g(a, b)),

имени «(4 + 4) + (5 + 5)» - терм g(g(a, a), g(b, b)).

Пусть теперь константа а сопоставлена простому имени «Москва», b - имени «Киев», с - «Россия», d - «Украина»; одноместному предметному функтору «столица» сопоставим символ f, а двухместному функтору «расстояние от... до...» - символ g. Тогда при переводе на язык логики предикатов сложным именам будут соответствовать следующие термы:

«столица России» - f(c),

«расстояние от Москвы до Киева» - g(a, b),

«расстояние от Москвы до столицы Украины» - g(a, f(d)),

«расстояние от столицы России до Киева» - g(f(c), b).

Другой тип правильно построенных выражений языка логики предикатов - формулы.

Определение формулы:

  • 1. Если П - «-местная предикаторная константа, a ti,..., tn
  • -термы, то tn) является формулой.
  • 2. Если А - формула, то —А - формула.
  • 3. Если А и В - формулы, то (А & В), (A v В), (А =э В) являются формулами.
  • 4. Если А - формула, а а - предметная переменная, то VaA и ЗаА являются формулами.
  • 5. Ничто иное не является формулой.

Формулы, задаваемые пунктом 1 данного определения, называют элементарными или атомарными, а все остальные формулы - сложными или молекулярными.

Элементарной формулой является, например, выражение Р2(д;, f*(a)), поскольку Р2 - двухместная предикаторная константа, а в скобках после нее находятся два терма - х и f!(a). Выражение Q'(jc, f'(a)) не является формулой, так как константа Q1 - одноместная и после нее в скобках должен стоять один, а не два терма. Выражение Р2(л:, Q!(a)) также не относится к числу формул, так как Q*(a) не есть терм.

Выражение VjcP2(jc, ^(а)) является формулой согласно п. 4 определения, поскольку после кванторного символа V находится предметная переменная х, а далее - формула Р2(л;, f!(a)). Выражение VaP2(jt, f!(a)) не есть формула, поскольку после V стоит не предметная переменная, а предметная константа а. Выражение Vxg2(x, f!(a)) также не является формулой, так как после кванторного комплекса Vjk находится терм g2(jt, f!(a)), а не формула.

Поясним на примерах, каким образом осуществляется перевод высказываний естественного языка на язык логики предикатов.

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

Простые высказывания, в которых утверждается наличие свойства у отдельного предмета, записываются в языке логики предикатов посредством формул вида II1(t), где t есть терм, соответствующий имени предмета, а П1 - одноместная предикаторная константа, соответствующая знаку свойства. Например, переводом высказывания «Ромео - юноша» может быть формула Р(а), где предметная константа а соответствует имени «Ромео», а одноместная предикаторная константа Р - знаку свойства «юноша». Высказывание «Отец Ромео храбр» может быть записано в виде Q(f(a)), если одноместному предметному функтору «отец» сопоставить одноместную предметно-функциональную константу f, а знаку свойства «храбрый» - одноместную предикаторную константу Q.

Высказывания об отсутствии свойства у предмета переводятся на язык логики предикатов с помощью формул вида -Л1^). Так, перевод высказывания «Отец Ромео не юноша» есть формула —iP(f(a)).

Высказывания, в которых утверждается наличие отношения между двумя предметами, записываются в виде формул II2(ti, tl), где П2 - двухместная предикаторная константа, соответствующая знаку двухместного отношения, a ti и ti - термы, соответствующие именам предметов. Например, высказывание «Ромео любит Джульетту» может быть записано в виде R(a, b), где R соответствует двухместному предикатору «любит», а а и b - именам «Ромео» и «Джульетта» соответственно. Переводом высказывания «Джульетта любит саму себя» будет формула R(b, b), а переводом высказывания «Джульетта любит своего отца» - R(b, f(b)).

Высказывания, в которых отрицается наличие отношения между двумя предметами, выражаются с помощью формул вида —in2(tb t2). Например, переводом высказывания «Отец Ромео не любит отца Джульетты» является —iR(f(a), f(b)).

Вообще, высказывания о наличии отношения между п предметами записываются в виде nn(ti, ti,..., t„), где П" - «-местная предикаторная константа, соответствующая знаку «-местного отношения. Высказывания об отсутствии отношения между « предметами переводятся посредством формул вида —illn(ti, ti,..., t„).

Например, высказывание «Джульетта любит Ромео больше, чем своего отца» может быть записано в виде Ri(b, a, f(b)), где Rj - трехместная предикаторная константа, соответствующая трехместному отношению «любит больше, чем».

Перейдем к формальной записи высказываний с кванторами.

Высказывания, в которых говорится о существовании объекта, удовлетворяющего некоторому условию, записываются в языке логики предикатов формулами вида ЗаА(а), где а - индивидная переменная, пробегающая по области объектов, о которых идет речь в высказывании, а формула А(а) выражает утверждение о том, что а удовлетворяет условию А.

Например, высказывание «Кто-то является храбрым» может быть переведено формулой 3jcQ(jc), где Q - одноместная предика- торная константа, соответствующая предикатору «храбрый». Высказывание «Кто-то не является храбрым» может быть записано как Зх—iQ(jc). Высказывание «Кто-то любит Джульетту» переводится с помощью формулы ЗхЩлг, Ь), где R соответствует двухместному предикатору «любит», а b - имени «Джульетта». Высказывание «Джульетта любит кого-нибудь» может быть записано в виде 3xR(b, х), а высказывание «Кто-то не любит самого себя» - в виде Зх—iR(jt, л:).

Высказывания, в которых утверждается, что условию А удовлетворяет любой объект предметной области, переводятся на язык логики предикатов формулами вида VaA(a). Например, высказыванию «Все являются храбрецами» соответствует формула VxQ(x), высказыванию «Всякий любит Джульетту» - VxR(x, b), высказыванию «Никто не любит отца Ромео» - Vjc—iR(jc, f(a)), высказыванию «Отец Ромео не любит никого» - Vjc—iR(f(a), х).

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

Высказыванию «Каждый любит кого-нибудь» соответствует формула Vx3jR(:c, j); высказыванию «Кто-то кого-то не любит» - формула 3x3j—iR(x, j); высказыванию «Кто-то любит Ромео больше, чем кого бы то ни было» - формула 3ArVyRi(jc, a, j).

В состав каждого из рассмотренных ранее высказываний входил только один предикатор - «юноша», «храбрый», «любит» или «любит больше, чем». Однако простые высказывания могут содержать несколько предикаторов. Как же осуществить их формальную запись?

Если подобное высказывание содержит квантор, то его переводом будет формула вида ЗаА(а) или VaA(a) с той лишь разницей, что условие А(а) будет иметь более сложную структуру.

Начнем с формальной записи высказываний, содержащих два одноместных предикатора. Высказывание «Некоторый юноша храбр» может быть переведено на формальный язык посредством формулы Зх(Р(х) & Q(x)). Ее буквальный смысл (с учетом того, что константам Р и Q соответствуют предикаторы «юноша» и «храбрый») таков: «Существует объект л: (человек), который является юношей и является храбрым». Это в точности соответствует смыслу исходного высказывания «Некоторый юноша храбр».

Высказывание «Всякий юноша храбр» может быть записано как /л:(Р(л:) =э Q(*)). Буквальное прочтение этой формулы - «Для всякого объекта л: (человека) верно, что если он юноша, то он храбр» - также соответствует по смыслу исходному высказыванию.

Отрицательные высказывания «Некоторый юноша не храбр» и «Ни один юноша не храбр» могут быть переведены соответственно формулами Зл:(Р(л:) & —iQC*)) и Vx(P(x) =э —iQ(x)).

Рассмотрим теперь простые высказывания с одним одноместным и одним двухместным предикаторами.

Например, переводом высказывания «Некоторый юноша любит Джульетту» будет формула Зл:(Р(л;) & R(x, b)) - «Существует человек, такой что он является юношей и любит Джульетту».

Переводом высказывания «Джульетта любит какого-то юношу» является формула Зл:(Р(л:) & R(b, х)) - «Существует человек, такой что он является юношей и Джульетта любит его».

Переводом высказывания «Каждый юноша любит Джульетту» является формула Vx(P(x) =э R(x, b)) - «Для всякого человека верно, что если он юноша, то он любит Джульетту».

Более трудными являются случаи, когда в состав высказываний об отношениях входят несколько одноместных предикаторов. Рассмотрим, например, высказывание «Всякий юноша любит какую- нибудь девушку». Как и раньше, предикаторам «юноша» и «любит» сопоставим константы Р и R, а одноместному предикатору «девушка» сопоставим одноместную предикаторную константу S. Формальная запись нашего высказывания может иметь следующий вид: Vjc(P(jc) z> 3j(S(y) & R(x, у))). Буквальный смысл этой записи с учетом принятых обозначений - «Для всякого человека л: верно, что если он юноша, то существует человек у, такой, что он девушка, и л: любит у» - в точности соответствует смыслу исходного высказывания.

§1. Язык логики предикатов

Высказывание «Некоторые юноши любят всякую девушку» может быть выражено формулой 3jc(P(x) & Vy(S(y) =э R(jc, j))) - «Существует человек х, такой, что он юноша, и для всякого человека у верно, что если у - девушка, то х любит >»>.

Переводом высказывания «Некоторые юноши не любят ни одной девушки» является формула 3jc(P(x) & Vy(S(y) z> —iR(jc, j))).

Приведем еще несколько достаточно трудных примеров формальной записи простых высказываний естественного языка:

«Всякий храбрец является юношей или девушкой» -

«Всякая храбрая девушка не любит ни одного нехраброго юношу» -

«Всякий юноша любит некоторую девушку больше, чем отца этой девушки» -

«Некоторая девушка, отец которой храбр, любит его больше, чем некоторого нехраброго юношу» -

Введем несколько синтаксических понятий, относящихся к языку логики предикатов.

Область действия квантора.

В формулах вида VaA и ЗаА формула А называется областью действия квантора (V или 3) по переменной а.

Например, в формуле Vjc(3j—iP(jc, j) z> Q(y, z)) областью действия квантора V по переменной х является формула Зу—iP(jc, у) z> Q(y, z), а областью действия квантора 3 по переменной у - формула —iP(jc, j).

В произвольной формуле каждая предметная переменная встречается некоторое число раз (это число может быть равно 0, 1, 2 и т. д.). Иначе говоря, переменная имеет некоторое число вхождений

Глава III. Классическая логика предикатов

в данную формулу. Например, в формулу V:c(3y—iP(jc, у) з Q(y, z)) переменная х имеет два вхождения, у - три вхождения, z - одно вхождение, а остальные переменные - ни одного вхождения.

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

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

Например, в формуле, указанной выше, первые вхождения переменных хну связаны, поскольку они следуют непосредственно за кванторами V и 3. Второе вхождение х находится в области действия квантора V по переменной л;, т. е. в формуле Зу—iP(x, у) з Q(y, z), а второе вхождение у расположено в области действия квантора 3 по переменной у, т. е. в формуле -|Р(лг, у), поэтому указанные вхождения являются связанными. Что же касается третьего вхождения переменной у и единственного вхождения z, то они являются свободными.

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

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

Местность терма.

Местность терма есть число входящих в него различных предметных переменных.

Замкнутые термы.

Терм, не содержащий в своем составе предметных переменных, называется замкнутым.

Например, терм f(jc, у, z) является трехместным, так как число различных переменных в его составе равно трем, термы f(xr, b, z) и f(:c, у, у) - двухместные, терм f(jc, b, а) - одноместный, a f(c, b, а) - нульместный, т. е. замкнутый терм.

Местность формулы.

Местность формулы языка логики предикатов первого порядка есть число входящих в нее различных свободных предметных переменных.

Замкнутые формулы.

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

Формула /x(3y—tP(x, у) z> Q(y, z)) является двухместной, поскольку она содержит две различные свободные переменные - у и z, а формула 3zVjt(3y—iP(;c, j) z> VjQ(y, г)) не имеет ни одной свободной переменной, поэтому она нульместная, т. е. замкнутая.

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

Сформулированный в этом параграфе язык логики предикатов называют первопорядковым. Смысл такого названия, как уже говорилось, состоит в следующем: в данном языке разрешается связывать кванторами (квантифицировать) переменные единственного типа - предметные переменные, т. е. переменные, возможными значениями которых являются предметы, индивиды.

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

Языки данного типа имеют большие выразительные возможности по сравнению с первопорядковым. С их помощью можно воспроизводить логические формы высказываний, невыразимые в первопорядковом языке. Например, логическая форма высказывания «Некоторые свойства Земли присущи и Марсу» может быть выражена в языке более высокого порядка следующим образом: ЗР(Р(а) & Р(Ь)), где Р - преди- каторная переменная, пробегающая по множеству свойств, а предметным константам а и Ъ соответствуют имена «Земля» и «Марс».

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

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

Приведем примеры записи высказываний естественного языка в прикладном языке логики предикатов:

§2. Интерпретации и модели. Общезначимые формулы

«Всякий человек смертен» -

Ух(Человек(дг) з Смертен(я;));

«Температура Солнца выше температуры Земли» -

Выше чем(Температура(Солнце), Температура(Земля));

«Всякий студент изучает какую-нибудь науку» - Ух(Студент(л:) з 3^(Наука(у) & Изучает(дс,^)));

«Квадрат любого четного числа больше 1» -

Ул:(Четное число(лг) з Болыне(Квадрат(л:), 1)).

Для языка логики предикатов характерно префиксное употребление предметно-функциональных символов в сложных термах и предикаторных символов в атомарных формулах. Иначе говоря, предметно-функциональный символ Ф" располагается в начале терма On(tb tn), а предикаторный символ П" располагается в начале формулы nn(tb tn). В естественном языке префиксное употребление предметных функторов и предикаторов встречается достаточно редко. Поэтому прикладной язык логики предикатов может быть приближен к естественному языку за счет отказа от обязательного префиксного использования предметно-функциональных и предикаторных знаков.

Например, запись «Квадрат^)» может быть заменена на более привычную - «t2», запись «Четное число (t)» - на «t - четное число», запись «Больше (Ч, t2)» - на «Ч > Ч»- Тогда перевод высказывания «Квадрат любого четного числа больше 1» будет выглядеть так:

Приступим к формулировке в рамках построенного формализованного языка логической теории - классической логики предикатов первого порядка.

 
Посмотреть оригинал
< Пред   СОДЕРЖАНИЕ   ОРИГИНАЛ     След >