
- •Глава 4
- •Тема 1: Язык классической логики предикатов первого порядка
- •Упражнения
- •1. Что соответствует в естественном языке терму ялп? Что формуле?
- •2. Укажите граф, соответствующий процедуре построения данного терма / формулы.
- •3. Укажите логические и нелогические константы, входящие в состав данных формул.
- •4. Укажите область действия каждого квантора в следующих формулах.
- •5. Определить, какие вхождения переменных являются свободными, а какие связанными в следующих формулах:
- •6. Какие из следующих формул являются предложениями яклп?
- •Тема 2: От выражений естественного языка к их структуре: перевод выражений естественного языка на яклп
- •Упражнения
- •7. Каждому выражению сопоставьте его логическую форму (иногда возможны несколько вариантов)
- •Упражнения
- •10. Найдите структуру следующих выражений с учетом предложенной символизации.
- •11. Выявите и запишите логические формы следующих высказываний с использованием языка логики предикатов с равенством.
- •Тема 3: От языковых структур к выражениям естественного языка и/или содержательных теорий: интерпретации и модели
- •Упражнения
- •12. Запишите какие-нибудь термы и формулы в указанных сигнатурах.
- •Тема 4: От языковых структур к выражениям естественного языка и/или нелогических теорий: модели и контрмодели для множеств формул (продолжение)
- •Упражнения
- •15. Определите значения формул со свободными переменными в данных интерпретациях при указанных функциях приписывания значений переменным.
- •18. Показать, что следующие формулы логически недетерминированы (найдите для них модели и контрмодели):
- •Тема 5: Логический статус формул в клп Отношение логического следования в клп
- •Упражнения
Глава 4
Классическая логика предикатов
Логика предикатов – логическая теория, в которой вводятся параметры трех типов для выражений естественного языка: для предикатных выражений, функторных и для логических имен. В классической логике предикатов продолжают действовать принцип двузначности классической логики высказываний: каждое высказывание принимает в точности одно из двух значений – истина (истинно) или ложь (ложно). Принцип функциональности работает для связок логики высказываний, но в логике предикатов вводятся две новые логические операции, которые не функциональны – кванторы: $ и . В естественном языке символу $ – квантору существования – соответствуют выражения некоторый, какой-то, существует, найдется, какой-нибудь и т.п., а символу – квантору общности – соответствуют выражения любой, всякий, произвольный, все, каждый и т.п.
Тема 1: Язык классической логики предикатов первого порядка
Основные понятия, которые необходимо усвоить:
|
Алфавит ЯКЛП1= (перечень исходных символов)
I. Нелогические символы:
1. a, b, c, a1, b1, c1, a2… - индивидные (предметные) константы;
2. fn, gn, hn, f1n, g1n, h1n, f2n,… - функциональные константы;
3. Pn, Qn, Rn, Sn, P1n, Q1n, R1n, S1n, P2n … – предикатные константы;
4. x, y, z, x1, y1, z1, x2… - индивидные (предметные) константы.
II. Логические символы:
, , , , , , Т, $, , =.
III. Технические символы: левая и правая скобки и запятая: ( ) , .
Терм ЯКЛП1:
1. всякая индивидная константа (a, b, c, a1, b1, c1, a2 и т.д.) есть терм;
2. всякая индивидная переменная (x, y, z, x1, y1, z1, x2 и т.д.) есть терм;
3. если Fn есть какой-либо n-местный функциональный символ (fn, gn, hn, f1n, g1n и т.д.) и о последовательностях символов t1, t2,…, tn известно, что каждый из них есть терм, тогда термом также будет такая последовательность символов: Fn(t1, t2,…, tn).
4. терм есть последовательность символов, которая может быть построена по пп.1-4.
Примеры термов
1. b - по п.1
2. b411 – по п.1
3. x1 – по п.2
4. h1(z) – по пп.2,3
5. h2(c,с) – по пп.1,3
6. h1(h1(z)) – по пп.2,3
7. f2(h1(z),a) – по пп.1,2,3
8. f2(h1(z), h2(y,z)) – по пп. 1,2,3
9. g3(h1(h1(а)), a, с) – по пп.1,3
Определение терма носит чисто синтаксический характер: оно задает некоторый класс записей, составленных из символов алфавита нашего языка, но не аппелирует к возможным смыслам этих записей, т.е. сами записи, подпадающие под определение терма, рассматриваются просто как последовательности некоторых объектов. Но эта дефиниция вводилась, разумеется, для того, чтобы впоследствии связать с ней осмысленные выражения некоторого типа, а именно: задающие объекты. Покажем (в предварительном порядке), как записи, имеющие вид терма, определяют структуры имен и именных форм. Так, структуру h1(h1(а)) имеют выражения 622, 5, отец отца Сократа. А такую форму как f2(a,h1(z)) имеют, например, выражения 5+z2, 7-z3, +y, 5у4, 5sinx.
Формула ЯКЛП1=:
1. , Т – формулы;
2. если Рn есть какой-либо n-местный предикатный символ (Pn, Qn, Rn, Sn, P1n и т.д.), а t1, t2,…, tn – термы, тогда последовательность символов
Рn( t1, t2,…, tn) является формулой;
3. если t1, t2 – термы, тогда последовательность t1=t2 есть формула;
4. если А – формула, тогда А тоже формула;
5. если А и В – формулы, тогда (АВ), (АВ), (АВ), (АВ) – формулы;
6. если К – квантор ($ или ), - индивидная переменная и А – формула, тогда следующая последовательность также является формулой: КА;
7. формулой является последовательность символов, которая может быть построена по пп.1-7.
Самые простые (в смысле построения) формулы назовем атомарными. Атомарная (элементарная) формула – формула, построенная по каким-то из пунктов 1-3.
Формулы, процедура построения которых включает хотя бы один из пп.3-6 назовем составными (сложными, молекулярными).
Вместо t1=t2 будем писать t1t2.
Примеры атомарных формул
P1(a) (читается «Р от а»; подразумевается объект а обладает свойством Р)
P1(x)
P1(f1(а)) (читается «Р от f от а»; подразумевается объект, сопоставленный объекту а функцией f, обладает свойством Р)
R2(x,a) (читается «R от х, а»; подразумевается свойство находится в отношении R с объектом а)
R2(y,y)
R2(y11,y)
R3(f1(c), f1(a), a)
R3(f1(c), f1(a), h2(y,z))
a=b
f1(a)= h1(h1(с))
f1(a)= h1(g2(y,z))
Примеры термов и формул
Примеры составных формул
$xP(x)
$x(P(x)&Q(x)) (главный знак - )
$xP(x)&Q(x) (главный знак - )
yzQ(z,f1(y)) (главный знак – квантор y )
yzQ(z,y) (главный знак - )
xyR(x,y)yzQ(z,y) (главный знак - )
x(yR(x,y)zQ(z,x)) (главный знак - квантор x)
R(x,y)Q(z,x) (главный знак - )
(a=b c=b) a b (главный знак - )
Примеры неправильно построенных выражений (не термы и не формулы)
ху. Ошибка: х и у – термы, а связка (так же, как , , ), могут связывать только формулы.
f1(Q1(a)). Ошибка: после одноместного функционального символа (f1) должен стоять один терм, а в нашем случае в скобках стоит формула - Q1(a).
х у. В этой записи два неправильно построенных выражения – х, у – соединены конъюнкцией. х – неосмысленная запись, поскольку в нашем языке отрицание может относится к структуре предложения (формуле), а не к терму (х - терм). То же с у.
P2(Q1(a),S1(a)). Ошибка: после символа двухместного предиката (P2) в скобках должны находиться два терма, а в нашей записи стоят две формулы (Q1(a) и S1(a)).
∀x. Кванторы используются только при построении формулы, но в составе формулы в обязательном порядке должны присутствовать а) предикатные символы(Pn, Qn, Rn, Sn, P1n и т.д.), либо б) выделенный предикатный символ равенства, либо в) логические константы (, Т). В нашей записи их нет.
∀x ∃y. Слева и справа от импликации должны стоять формулы, а в примере 6 слева и справа от знака стоят не формулы, а неправильно построенные выражения (см. предыдущий пример).
∀xР1(х) ∃yР1(∃х). Плохое место: Р1(∃х). В скобках после одноместного предиката Р1 должен стоять аналог имени – терм, а ∃х - не терм (в состав термов не входят кванторы). Если убрать из примера 7 символ квантора существования, тогда получим формулу ∀xР1(х)∃yР1(х).
Р(а)=Р(с). Ошибка: символ равенства связывает термы, а в этом примере слева и справа от равенства стоят формулы.
$x"yR(x,y)ÉØ$y"аØR(x,а). Ошибка: запись "а невозможна, после квантора сразу должна идти переменная (x, y, z, x1, y1, z1, x2 и т.д.), а не константа (а – индивидная константа)1.
Ø$y"ØR(x,у). Ошибка: после квантора общности (") нет переменной.