Структура исчисления предикатов - построение логического вывода

Структура исчисления предикатов, построение логического вывода

Реферат по математической логике и теории алгоритмов выполнили студенты I-го курса Факультета ИВТ: Зубарев А., Столяров А., Докукин А., Китирисов Г.

Марийский Государственный Технический Университет

Факультет Информатики и Вычислительной Техники

Кафедра ИВС

Йошкар-Ола, 2003г.

Язык, логика и исчисление предикатов

Введение

Приступая к изучению языка логики предикатов (сокращенно — ЯЛП), полезно вспомнить основные особенности языков этого типа В ЯЛП явно должны быть представляемы субъектно-предикатные структуры высказываний, от которых происходило отвлечение при введении пропозициональных символов. Выражаемыми должны быть, например, высказывания видов. «a обладает свойством Р», «а и b находятся в отношении Р», «Для всякого предмета из некоторого множества S верно, что он обладает свойством Р», «Для всякого предмета из множества S существует предмет этого множества такой, что эти предметы находятся в отношении R», «Если неверно, что всякие два предмета некоторого множества находятся в отношении R, то существуют по крайней мере два предмета этого множества, не находящиеся в этом отношении», «Если во множестве S существует предмет х, который находится в отношении R с любым предметом у этого множества, то для всякого предмета у того же множества существует предмет х такой, что последний находится в отношении R к первому» и т. п.

Ясно, во-первых, что для выражения таких утверждений у нас нет средств в языке логики высказываний. Ясно и то, что для выражения подобных высказываний в ЯЛП мы должны иметь в числе его исходных символов общие имена предметов; аналогами последних в ЯЛП будут предметные переменные х, у, z, а также они же с числовыми индексами x₁,x₂, ... и т.д. Потребность в общих именах при употреблений ЯЛП сохранится лишь для описания областей возможных значений этих переменных, что относится уже не к самому языку, а к метаязыку. Нужны также знаки свойств и отношений. Для выражения высказываний вида «Объем тела а больше объема тела b» или «Синус х меньше косинуса y» и т. п. необходимы, конечно, и предметные функторы. Впрочем, перечислим систематически основные типы выражений описываемого языка, каковыми являются: исходные символы, термы и формулы. Описание этих выражений составит синтаксис ЯЛП.

Синтаксис языка логики предикатов (исходные символы, термы, формулы)

I. Исходные символы языка.

1. Предметные переменные х, у, z, а также х с числовыми индексами:

(
бесконечное счетное множество).


2. Предметные константы (аналоги собственных имен естественного языка): (также бесконечное счетное множество).

3. Знаки свойств и отношений различных местностей — предикатные символы, или предикаторы:

P¹, Q ¹, R¹, S¹, ...;

Р2, Q2, R2, S² , ...;

…………………..

Pⁿ,Qⁿ,Rⁿ,Sⁿ

и возможно эти символы с нижними индексами:

P¹₁ , P¹₂, P¹₃, …

P²₁ , P²₂, P²₃, … и т.д.

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

4. Знаки предметных функций различных местностей (предметные функторы):

f¹₁ , f¹₂, …

f²₁ ,f²₂ , …

………….

fⁿ₁ , fⁿ₂, …

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

5. Логические константы: ⊃,&,,∃,∨,¬ соответственно — импликация, конъюнкция, квантор общности, квантор существования, дизъюнкция и отрицание. (Зачастую вводят лишь некоторые из этих символов. Из кванторов достаточны только ∀ или ∃, из остальных, называемых логическими связками, достаточно : ⊃ и ¬, или ∨ и ¬ , или & и ¬ . Другие константы, как, впрочем, и другие знаки, могут вводиться по определению.)

6. Технические знаки: (- левая скобка, )-правая скобка, ,- запятая.

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

II. Термы. Выражения этого типа являются аналогами имен естественного языка.

Определение: а) любая предметная переменная и предметная константа есть терм; б) если есть термы и f¸ⁿ есть n-местный предметный функтор, то f¸ⁿ ( есть терм; в) ничто, кроме указанного в пунктах а) и б), не есть терм.

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

Определение: а) если термы и P¸ⁿ n-местный предикатор, то P¸ⁿ () есть формула (атомарная);

б) если А и В — формулы, то (А⊃В), (А&В), (AvB), ¬A — формулы; в) если х есть предметная переменная и А — формула, то ∀ x A и ∃ x A — формулы; г) ничто, кроме указанного в пунктах а) — в), не есть формула.

Договоримся в дальнейшем опускать, когда это удобно, внешние скобки в отдельно взятых формулах; например, вместо (А & В) писать просто

А &В.

Использованные в определениях терма и формулы символы и f¸ⁿ, P¸ⁿ, A, B, x (и в дальнейшем возможно x₁, x ₂ и т. д.) — знаки метаязыка называемые также синтаксическими переменными, возможными значениями которых являются выражения соответствующей категории описываемого (объектного) языка.

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

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

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

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

Обратим внимание на то, что согласно определению свободной и связанной переменной одна и та же переменная в одной и той же формуле может быть свободной и связанной. Такова, например, переменная x₁ в формуле ∀ x₁ P¹(x₁) ∨ Q²(x₁, x₂); переменная x₂ является здесь свободной, но не связанной. Мы рассматриваем здесь только такие термы, в которых все переменные могут иметь лишь свободные вхождения, и, значит, являются свободными переменными. Формула и терм, не содержащие свободных переменных, называются соответственно замкнутой формулой и замкнутым т е р м о м (очевидно, что для рассматриваемых здесь термов, если терм замкнут, то он вообще не содержит переменных).

Семантика языка логики предикатов

Семантику языка, как мы видели при анализе естественного языка, составляет совокупность предметных значений и смысловых содержаний его выражений. Но в данном случае, поскольку речь идет не об анализе уже имеющегося языка, а о построении — в данном случае логического формализованного языка —то семантикой называют совокупность правил приписывания значений выражениям этого языка. Точнее говоря, здесь даже не ставится задача построения какого-то определенного языка. Создается лишь некоторая схема языка определенного типа, в данном случае так называемой классической логики предикатов первого порядка. Этот тип языка отличается от языков других типов, даже языков с тем же синтаксисом (например, языка интуиционистской логики предикатов, определенной системы релевантной логики) своей семантикой. Приписывание значений отдельным выражениям языка, составляющим дескриптивным терминам, употребляемым при построении формул, осуществляется лишь в составе тех или иных формул и при этом различно от случая к случаю в зависимости от характера решаемых логических задач, (например, при переводе каких то высказываний с естественного языка на данный формализованный, при анализе логических отношений между формулами данного языка, при аксиоматизации некоторых теорий, а именно при формулировке их аксиом в языке данного типа). Совокупность всех правил приписывания значений выражениям языка разбивается на следующие три группы (I,II,III).

I. Правила определения (задания) возможных значений предметных переменных и правила приписывания предметных значений дескриптивным постоянным в составе рассматриваемых в том или ином случае формул—интерпретация выражений языка. II. Правила приписывания значений свободным переменным в составе тех или иных рассматриваемых формулу. III. Правила приписывания истинностных значений интерпретированным формулам, не содержащим свободных переменных. I. Интерпретация состоит, во-первых, в выборе некоторого непустого множества D индивидов, предметов того или иного типа, к которым могут относиться образуемые из тех или иных формул языка высказывания. Индивиды любые предметы в широком смысле этого слова, структура которых не учитывается, и которые можно отличать друг от друга. В качестве такой области D можно взять множество людей, растений, городов, чисел и т. д.; возможно, также объединение в одной области множеств различных предметов, например, людей, городов, домов (положим, для выражения высказываний о местах жительства людей). Но при этом все различные предметы, рассматриваются именно как индивиды. Область D — это область возможных значений предметных переменных символы предметных переменных х, у, z, становятся именно переменными лишь при указании области их возможных значений. Предполагается, что на области D определено некоторое множество свойств, отношений и характеристик предметно-функционального типа (то есть возможных значений предикаторов и предметных функторов).

Второй момент интерпретации языка состоит в задании некоторой функции 

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

в каждом конкретном случае представляет собой просто указание на то, какие значения должны быть приписаны упомянутым исходным символам языка в составе рассматриваемых формул. При этом предметным константам (простые постоянные термы) приписываются в качестве предметных значений определенные предметы из заданной области D. Предикатному (n-местному) символу P¸ⁿ при n =1 в качестве значения приписываются некоторые свойства а при n > 1 — n-местное отношение (между предметами В). Например, если область D есть множество целых положительных чисел, то предикатному символу P¹₁ можно приписать в качестве значения свойство «четно», а предикатору P²₁ отношение «больше» или «меньше». Предметному функтору fⁿ₁ в качестве предметного значения функция 

приписывает какую-нибудь n-местную предметную функцию, определенную на области D. Например, для области чисел таковыми могут быть синус, косинус (одноместные функции), сумма, произведение (двухместные функции), для области людей — одноместные (возраст, рост), для области материальных тел — объем, удельный вес.

Значения сложных термов, каковыми являются также предметы из области D, и приписывание которых составляет их интерпретацию, вычисляются в зависимости от приписанных уже значений их простым составляющим — предметным константам, предметным функторам, а также и возможным предметным переменным, значения которых приписываются по правилам II. Вычисление происходит в соответствии с правилами построения сложного терма. Сложные термы образуются, как мы видели, с применением предметных функторов и строятся индуктивно. Значение такого терма вычисляется последовательно в соответствии с порядком его построения.

Пример. Имеем терм f²₁(f²₁(a₁ , a₂), f²₂(a₁, a₃)).

Пусть область D — целые положительные числа, a₁ есть число 3, a₂ =4, a₃ = 5, f²₁ сумма, f²₂ произведение.

Тогда

f²₁(a₁ , a₂)=7;

f²₂(a₁, a₃)=15;

f²₁(f²₁(a₁ , a₂), f²₂(a₁, a₃))=22.

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

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

Однако важно заметить, что формулы со свободными переменными нужны не только для образования высказываний из них. Они представляют собой особые высказывательные формы, называемые предикатами. Это сложные знаковые формы возможных свойств предметов заданной области и возможных отношений среди этих предметов. По типу их предметных значений они должны быть отнесены к категории предакаторов. Можно назвать их сложными предикаторами (в отличие от простых, указанных среди исходных символов). Надо отметить, что эти формы не выделяются и даже не замечаются в естественных языках. Они играют, однако, решающую роль в теории понятия. Имея тот или иной предикат, можно ставить вопрос, для каких предметов, которые могут представлять свободные переменные, этот предикат выполняется или не выполняется. В таком случае мы просто указываем предметы для соответствующих переменных (не осуществляя указанных подстановок предметных констант вместо них). Например, можно сказать, что предикат «(Р2(x, a₁) > ∃yQ2(x, y))», — выражающий свойство какого-то числа х из области натуральных чисел, состоящее в том, что «если это число больше 5 (знаками отношения «больше» и «5» является соответственно Р2 и a₁ то оно делится без остатка (Q2) на некоторое число у», выполняется для чисел 6, 8, 9 и т. д., но не выполняется для 7, 11 и др.

III. Приписывание истинностных значений полностью интерпретированным формулам.

Напомним, что полностью интерпретированная формула — это формула, в которой осуществлена интерпретация дескриптивных постоянных и приписано значение всем свободным переменным, если таковые имеются в ней. Каждая такая формула представляет собой определенное высказывание — с определенным смыслом и истинностным значением — но лишь при условии, если нам известны значения встречающихся в ней — явным или неявным образом — логических констант, (которые и определяются рассматриваемыми правилами III). Явным образом указываются — в сложных формулах — логические константы, перечисленные в списке исходных символов. Простые атомарные формулы видов Pⁿ (t₁, …,tn) по-видимому, не содержат логических констант. Однако, неявным образом здесь присутствует логическое отношение принадлежности свойства Р некоторому предмету t при n= 1 или о наличии отношения Pⁿ между предметами t₁, …,tn из области D.

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

Правила эти таковы. Значение простого (атомарного) высказывания Pⁿ (t₁, …,tn), n >= 1, определяется в зависимости от заданных значений термов t₁, …,tn и предикатора Pⁿ . Оно зависит от характера предметов данной предметной области. Положим, имеем формулу: P²(f¹₁ (a₁), f¹₁(a₂)). Предположим, что согласно заданной интерпретации D — множество людей: Р2 означает «больше»: f¹₁ «возраст»: a₁ — Петров, a₂ — Сидоров. Вся формула представляет собой высказывание «Возраст Петрова больше, чем возраст Сидорова». Высказывание истинно или ложно в зависимости от того, имеет или не имеет место данное отношение между возрастами Петрова и Сидорова.

Заметим, что в части лексики мы перевели здесь высказывание, полученное из определенной формулы рассматриваемого языка (ЯКЛП), по существу на обычный естественный русский язык. В самом ЯКЛП знаковой формой его является упомянутая формула. Подобные переводы обычно напрашиваются сами собой в силу того, что задание значений отдельных терминов — составляющих формулу — осуществляется посредством выражений естественного языка. Мы говорим «значение Р2 больше, a₁ и a₂ — соответственно Сидоров и Петров» и т. п.). Это значит, что приписывание предметных значений выражениям описываемого языка осуществляется методом перевода их в тот или иной естественный язык. Может показаться, что при упомянутых переводах высказываний данного языка на естественный теряется та самая точность их выражений, ради достижения которой как раз и строятся формализованные языки. Однако точность здесь по сравнению с естественными языками достигается не за счет более точною употребления отдельных терминов, — достаточная точность их уже должна быть обеспечена при осуществлении интерпретации выражений формализованного языка — а за счет определенных, стандартных способов построения высказываний и их логических форм. И она именно сохраняется, или точнее сказать, должна сохраняться при указанных переводах.

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

Формула вида А & В имеет значение «истина» — при данной интерпретации и приписывании значений свободным переменным — е. т. е. А имеет значение И и В имеет значение И.

Формула A v В — истина е. т. е. значение А равно И или значение В равно И.

Формуле вида А ⊃ В приписывается значение И е. т. е. А имеет значение Л или В имеет значение И.

Значением формул вида ¬А является И е.т.е. значение А есть Л.

Формула вида ∀х А(х) имеет значение «истина» е. т. е. для всякого предмета а(i) из D, А(а(i)) — истина (А(а(i)) — результат замещения всех свободных вхождений х в А(х) константой а(i)¹).

Формула вида ∃ х А(х) имеет значение истина е. т. е. существует предмет а в области D такой, что истинна формула A(a(i)).

Если значение некоторой формулы не является И, то она имеет значение Л, но никакая формула не имеет одновременно значения И и Л.

Как уже говорилось, правила приписывания истинностных значений полностью интерпретированным формулам неявным образом определяют также значения логических констант «&», «v», «⊃ », «¬» и кванторов ∀ и ∃ и вместе с тем и смыслы высказываний, образованных посредством соответствующих констант. Например, высказывания вида ∀х А(х) , ∃ х А(х) ,относящиеся к некоторой области индивидов D, мы должны понимать, соответственно, как «для всякого предмета х из D верно А(х}» и «существует предмет х в D такой, что верно А(х)». Нетрудно видеть, что &, v, ⊃ ,¬ , представляют собой здесь логические связки — знаки функций истинности, — определенные ранее в разделе «Логика высказываний», но теперь применительно к формулам ЯЛП.

Примеры

Определим значение формулы —

∀x((P²(x, a₁) & P²((x, a₂))⊃ P²(x,y))

при условии, что область возможных значений переменных D есть множество целых положительных чисел, константам a₁ и a₂ приписаны соответственно числа 2 и 3, свободной переменной у — значение 6; предикатный символ Р2 имеет в качестве значения отношения «делится». Ясно, что при указанной интерпретации данная формула выражает определенное высказывание: в переводе на русский язык, «Для всякого целого положительного числа х верно, что если оно делится на 2 и на 3, то оно делится на 6». Ясно, что это высказывание и соответственно наша формула истинны. Рассмотрим формулу ∀x ∃y P²(y, x). Если D — множество людей, Р2 — отец, то она представляет собой высказывание «Для всякого человека х существует человек у такой, что он является отцом первого».

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

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

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

2) Условная интерпретация. 3) Интерпретация всеобщности.

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

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

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

Данные выше разъяснения относительно тех смыслов, которые формулы получают при интерпретации, указывают на принципы перевода высказываний языка логики предикатов на естественный язык. Однако в них можно усмотреть решение и обратной задачи — перевод с естественного на язык логики предикатов, хотя здесь требуются и определенные дополнительные разъяснения. Прежде всего они связаны с отсутствием в формулах ЯЛП общих имен. Общие имена здесь используются только для характеристики задаваемой каждый раз при выражении некоторого высказывания области D значений предметных переменных. В составе самих формул общие имена — в предложениях обычного языка — заменяются предикаторами. Так, предложение «Все студенты пединститута готовятся стать преподавателями» может быть переведено на язык логики предикатов двояко в зависимости от выбора значений переменных. Мы можем взять в качестве таковой «множество студентов пединститута». Обозначив тогда через P1 свойство «готовятся стать преподавателями», получим «∀x P'(x)». С учетом заданной области это должно быть прочитано как «всякий студент пединститута х готовится стать преподавателем». Для более полного выражения смысла высказывания можем взять в качестве области «студенты» вообще, а общее имя «студент пединститута» истолковать как предикатор, взяв для него, например, знак (предикатор) S1 получим ∀x (S1(x) P1(x). Предложение звучит теперь так: «Для всякого студента х верно, что если он учится в пединституте, то он готовится стать преподавателем». Высказывание «Некоторые студенты пединститута готовятся стать преподавателями» при том же выборе области D и предикаторов запишется в виде ∃x(S(x)&P(x))

Обратите внимание, когда высказывание предваряет квантор общности (то есть исходное высказывание является общим), то далее используется логическая связка ⊃; в случае, когда таковым является квантор существования (высказывание является частным), то для его записи на ЯЛП употребляется связка &.

Для полной записи предложения «Во всяком государстве имеется город, который является его столицей» напрашивается необходимость ввести предикаторы: государство с аргументом — х (возьмем для обозначения из исходных символов предикатор P1), город с аргументом — у (обозначим его Q), принадлежит — город у государству х (обозначим R2) и столица — город y государства х (обозначение S2). В таком случае возникает трудность с характеристикой области значений переменных х, у. Можно считать, что таковой является множество населенных людьми территорий. Взяв в качестве области D множество таких территорий и используя указанные предикаторы, получим запись нашего суждения в ЯЛП: ∀x(P(x) ⊃ (∃y(Q(y)&R(y, x)&S(y, x))). Буквальное произнесение его таково: «Для всякой населенной территории х верно, что если х есть государство, то существует населенная территория у, такая, что у — город и у принадлежит государству х, а у есть столица х.

Как мы видели, высказывания естественного языка, подлежащие переводу на ЯЛП, определенным образом стандартизируются, четко выделяются части высказывания: классы или отдельные предметы, о которых нечто утверждается (или отрицается). Если это классы, то выясняется, ко всем предметам класса или лишь к части их относится утверждение или отрицание (соответственно употребляются кванторы общности ∀ или существования ∃). И наконец, определяется то, что именно в высказывании утверждается (или отрицается). Примеры таких стандартизации высказываний естественного языка, осуществленные еще до записи их на ЯЛП, читатель может найти в самом начале данного параграфа.

Логика предикатов

Логика предикатов формируется аналогично тому, как это происходит относительно логики высказываний. При наличии определений логических констант — как логики высказываний, так и логики предикатов, — последняя определяется введением понятий логического следования для формул ЯЛП и закона логики предикатов.

Логическое следование

Как и в логике высказываний, мы говорим, что для высказываний A₀ и B₀ (выраженных теперь в описанном языке логики предикатов), имеет место отношение логического следования A₀ ⊨ B₀, если и только если оно имеет место для формул А и В1 представляющих собой логические формы указанных высказываний.

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

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

Отношение следования между формулами A₀ ⊨ B₀ имеет место е. т. е. при любой интерпретации дескриптивных терминов в А и В и при любых приписываниях значений свободным переменным при истинности первого истинно и второе, иначе говоря, ложно первое или истинно второе. Имеется в виду при этом, что, во-первых, если некоторый дескриптивный термин каким-то образом интерпретирован в А, то таким же образом он интерпретирован и в В (конечно, при наличии его в этой формуле), а, во-вторых, всем свободным вхождениям одной и той же переменной в А и В приписывается одно и то же значение. Из множества высказываний Г ₀ следует высказывание B ₀ если и только если это отношение имеет место соответственно между множеством формул Г и В, представляющих собой логические формы упомянутых высказываний. Последнее же отношение Г ⊨В имеет место, е. т. е. в составе Г имеется конечное подмножество формул А1, ..., Аn (n >= 1) такое, что (А1 & ... & Аn) ⊨ В. Последнее соотношение, как и в логике высказываний, равносильно тому, что из множества высказываний А1, ..., Аn следует В, что в свою очередь указывает на отмеченное ранее — в логике высказываний — свойство отношения следования, состоящее в том, что если некоторое высказывание следует из какого-то множества высказываний, то оно является следствием также любого расширения этого множества.

Закон логики предикатов

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

Формула А называется общезначимой в некоторой области D е. т. е. она истинна при любых приписываниях значений ее дескриптивным терминам и свободным переменным в этой области D. Формула А называется выполнимой, если она истинна при какой-нибудь интерпретации и при каком-нибудь приписывании значений ее свободным предметным переменным. В противном случае она называется невыполнимой.

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

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

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

А1, .... Аn ⊨ В е. т. е. ⊨ (А1 ⊃ (А2⊃ (А2 ⊃ ... (Аn⊃ В) ...));

последняя же, как мы видели раньше, равносильна ⊨ ((А1 &А2 & ... &An) ⊃ В) — при любой расстановке скобок в конъюнкции согласно правилам построения формул.

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

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

В основе исчисления предикатов лежит язык логики предикатов. В остальном оно является расширением исчисления высказываний.

Аксиоматическую систему исчисления предикатов мы получим, добавив к перечисленным выше схемам аксиоматического исчисления высказываний (имея в виду, конечно, переход к языку логики предикатов) следующие четыре схемы и одно правило:

1. ∀x A(x) A(t) — схема ∀и .

2. A(t) ⊃∃х А(х) — схема ∃в.

3. ∀x С(х)) ⊃∀x С(х)) схема введения ∀ в консеквент .

4. ∀x (С(х)В) ⊃ (∃x⊃C(x) ⊃ В) — схема введения ∃ в антецедент.

A(t) — результат правильной подстановки терма ( вместо х в А(х); В — не содержит х свободно.

Правило ∀в (правило введения квантора общности, иное

A(t) название: правило обобщения): —— (из А непосредственно выводимо∀x A).

Формально мы сохраняем прежнее определение вывода и доказательства (ясно, что, по существу, изменение состоит в том, что теперь могут использоваться новые аксиомы и новое правило), однако, если мы хотим, чтобы отношение формальной выводимости было аналогом семантического понятия следования, необходимо ограничить применение ∀в : оно может применяться к некоторой формуле А(х) для обобщения лишь по таким переменным х, которые не содержатся свободно в допущениях, от которых зависит эта формула. Чтобы смысл этого ограничения был ясным, мы должны определить понятие зависимости некоторой формулы вывода от допущений (гипотез). Везде в дальнейшем будем иметь в виду выводы с анализом (то есть обоснованием каждого его шага ссылками либо на принадлежность формулы этого шага к множеству взятых гипотез или аксиом системы, либо на формулы, из которых она получатся, и используемые при этом правила).

Формула В данного вывода зависит от некоторого допущения А, если и только если: а) она есть само допущение А;

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

Натуральная система исчисления предикатов

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

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

A[Г]

∀x A[Г]

при условии, что никакое допущение из Г не содержит x свободно;

в :

∀и :

∀x A(x) [Г]

A(t) [Г]

Результат правильной подстановки терма t вместо x в A(x);


∃в :

A(t) [Г]

∃x A(x) [Г]

Здесь ∃x A(x) – имеющееся в выводе допущение, а В и никакое допущение из Г не содержат x свободно.


B[Г, A(x)]

B[Г, ∃x A(x)]

и :

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

Если в выводе получена формула ∃х А(х} и нужно вывести В, не выводимую непосредственно из имеющихся формул, вводим допущение А(х), применяя способ рассуждения согласно ∃и.

Рассмотрим несколько примеров выводов.

Схема доказательства формул вида: ¬∃x A(x) ⊃∀x¬A(x):

+ 1. ¬∃x A(x) [1].

+ 2. A(x) [2].

3. ∃x A(x) [2] – из 2, ∃в.

4. ¬ A(x) [1] – из 1,3, ¬в.

5. ∀x¬A(x) [1] – из 4, ∀в.

6. ¬∃x A(x) ⊃∀x¬A(x) [ - ] – из 5, ⊃в.

Схемы доказательств рассмотренных в аксиоматической системе аксиом «введения ∀ в консеквент» и «введения ∃ в антецедент»:

Предполагается, что А не содержит х свободно.

+ 1. ∀x (A ⊃ B(x)) [1].

+ 2. А [2].

3. A ⊃ В(х) [1] —из 1, ∀и.

4. В(х) [1, 2] —из3 и 2, ⊃и.

5. ∀x B(x) [1, 2] —из 4, ∀в.

6. A⊃∀x B(x) [1] —из5, ⊃в.

7. ∀x (A ⊃ B(x)) ⊃ (A ⊃∀x B(x)) [ - ] —из 6, ⊃в.

+ 1. A ⊃ (В(х) ⊃ A) [1].

+ 2. ∃x B(x) [2].

+ 3. В(х) [З].

4. В(х) ⊃ A [1]—из 1, ∀и.

5. А [1, 3] — из 3, 4, ⊃в.

6. A [1, 2]— из 5, ∃и.

7. ∃x B(x) ⊃ А [1]—из 6, ⊃в.

8. ∃x (B(x) ⊃ А) ⊃ (∃x B(x) ⊃ А) — из 7, ⊃в.

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

Г ⊨ B е. т. е. Г ⊢ B и ⊨ A е. т. е. ⊢ A.

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

I. Взаимовыразимость кванторов:

1. ∀x A(x) ~ ¬∃x¬A(x). 2. ∃x A(x) ~ ¬∀x¬A(x).

II. Законы образования контрадикторной противоположности:

1. ¬∀x A(x) ~ ∃x¬A(x). 2. ¬∃x A(x) ~ ∀x¬A(x).

III. Законы пронесения кванторов:

1. ((∀x A(x) & ∀x B(x)) ~ ∀x(A(x) & B(x))).

2. ((∃x A(x) v ∃x B(x)) ~ ∃x (A(x) v B(x))).

3. (∃x (A(x) & B(x)) ⊃ (∃x A(x) & ∃x B(x))).

4. ((∀x A(x) v ∀x B(x)) ⊃ ∀x (A(x) v B(x))).

5. (∀x (A v B(x)) ~ (A v ∀x B(x))), если x не свободна в A.

6. (∃x (A & B(x)) ~ (A & ∃x B(x))), если х не свободна в А.

7. (∀x A(x) ⊃ B(x)) ⊃ (∀x A(x) ⊃ ∀x B(x))).

IV. Перестановка кванторов

1. ∀x ∀y A(x, y) ~ ∀y∀x A(x, y).

2. ∃x ∃y A(x, y) ~ ∃y ∃x A(x, y).

3. ∃x ∀y A(x, y) ⊃ ∀y ∃x A(x, y).

V. Исключение квантора общности и введение квантора существования.

1. ∀x A(x) ⊃ A(t). 2. A(t) ⊃ ∃x A(x).

В обоих случаях А(t) есть результат правильной подстановки терма t вместо х в А(х).

VI. Законы устранения вырожденных кванторов. 1. ∀x А ~ А. 2. ∃x А ~ А, где А не содержит х свободно.

VII. Связь кванторов ∀ и ∃.

∀x A(x) ⊃ ∃x A(x).

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

Пример эквивалентных преобразований формулы

∀x (P(x) ⊃ ¬ Q(x)) ⊃ ¬ ∃x (P(x) & Q(x)).

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

∀x (P(x) ⊃ ¬ Q(x)) ⊃ ¬ ∃x (P(x) & Q(x)) ≡

≡ ¬∀x (P(x) ⊃ ¬ Q(x)) v ¬ ∃x (P(x) & Q(x)) ≡

≡ ∃x ¬(P(x) ⊃ ¬ Q(x)) v ¬ ∃x (P(x) & Q(x)) ≡

≡ ∃x (P(x) & ¬¬ Q(x)) v ¬ ∃x (P(x) & Q(x)) ≡

≡ ∃x (P(x) & Q(x)) v ¬ ∃x (P(x) & Q(x)) ≡

≡ ∃x (P(x) & Q(x)) v ∀x¬ (P(x) & Q(x)) ≡

≡ ∃x (P(x) & Q(x)) v ∀x (¬P(x) & ¬Q(x)).

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

Список литературы

1. Е. К. Войшвилло, М. Г. Дегтярев Логика, Москва, 2001.

2. А.А. Марков, Н. М. Нагорный Теория алгорифмов, Москва, 1984.