
- •4. Теории первого порядка
- •4.1. Термы и предикаты
- •4.2. Язык логики предикатов
- •Аксиомы кванторов
- •Аксиомы равенства
- •4.3. Семантика языка логики предикатов
- •4.4. Модели теории первого порядка
- •4.5. Компактность и полнота языка первого порядка
- •4.6. Упрощение формул
- •4.7. Метод резолюций Робинсона
- •5. Нечеткая логика
- •5.1. Нечеткие множества
- •5.2. Логические операции
- •X (a b), если и только если X a b.
- •5.3. Нечеткие отношения
- •5.4. Пропозициональная нечёткая логика
- •5.5. Вывод с нечёткими посылками
- •4. Теории первого порядка 26
- •5. Нечеткая логика 42
4.2. Язык логики предикатов
Определим
синтаксис языка первого порядка. Алфавит
языка первого порядка состоит из
логических символов ,
, ,
, из символов
переменных
и из нелогических символов. К
логическим символам отнесём символы
скобок и запятой. В качестве символов
переменных будем использовать также
x, y, z, u, v и т.д. Логические символы одинаковы
для всех языков первого порядка.
Нелогическими называются символы
операций, символы предикатов
и символы констант. Язык первого
порядка L задаётся как множество
нелогических символов. Если L = ,
то L называется языком чистого равенства.
Каждому s
L ставится в соответствие #(s)
. Если s – константа,
то #(s) = 0. Если R – символ предиката,
такого, что #(R) = n, то R называется символом
n-местного предиката. Если f – символ
операции, и #(f) = n, то f называется символом
n-арной операции. Для предикатов и
операций число #(R) (соответственно #(f))
больше 0, и оно называется местностью
(соответственно арностью).
Объединение множеств символов операций
и констант составляет множество
функциональных символов, позволяющее
строить термы языка L на множестве
.
К предикатам
языка L мы всегда относим бинарный
предикат
(равенство). Определим формулы
языка L.
Атомной
формулой языка L называется выражение
вида:
,
где
– термы языка L, а R
L – символ n-местного предиката. В
частности, выражение
будет атомарной формулой для любых
термов языка L. Множество всех формул
языка L определяется как наименьшее
множество выражений, которое содержит
все атомные формулы и удовлетворяет
условиям: если и
– формулы, а x – переменная, то выражения
,
, x
– формулы. Формулы
и называются
подформулами формулы
,
формула – подформулой
формул и x.
Будем предполагать, что другие логические связки служат сокращениям:
( & ) для ( ),
( ) для ( ),
x для x .
Формула x = y обычно записывается как x y. Примеры формул:
x y P (x, y, x z), x (y x y = x).
Замена переменных
Переменная, содержащаяся в формуле, называется свободной, если она не связана квантором, в противном случае она называется связанной. Переменная может входить в формулу несколько раз, в этом случае аналогичные определения применяются к каждому вхождению. Например, в формуле
y (y = z) z (z < x)
первое вхождение переменной z свободно, а второе – связанное. Переменная x является свободной, а y – связанной. Формальное определение свободных и связанных переменных следующее:
-
все вхождения переменных в атомных формулах свободны;
-
свободные вхождения x в есть в точности свободные вхождения x в ;
-
свободные вхождения x в
состоят из свободных вхождений x в и свободных вхождений x в ;
-
если x и y – различные переменные, то свободные вхождения x в формулу y соответствуют свободным вхождениям x в формулу ;
-
в формуле x нет свободных вхождений переменной x.
Запись: (x) указывает на то, что формула содержит свободные вхождения переменной x. Если c – символ константы, то (с) означает формулу, полученную заменой всех свободных вхождений x в на с. Например, если (x) = y((y = x) & x (x = y)), то (c) = y((y = c) & x (x = y).
Мы пишем:
для указания того, что
содержит свободные переменные среди
.
Применяется запись:
для обозначения формулы, в которой все
свободные вхождения каждой из переменных
формулы заменяются
на терм
,
.
Таким образом, (с)
является сокращением обозначения
(х/с).
Формула, не содержащая свободных переменных, называется предложением.
Может случиться,
что при замене переменной термом
нарушается очевидный принцип, согласно
которому замена переменной в равных
формулах даёт равные формулы. Например,
пусть t = f(y), (z) = y(y
< z). Тогда после замены получаем:
.
С другой стороны, (z)
= x(x < z), и, значит,
.
Получаем не равные формулы. Поэтому
перед подстановкой терма
в формулу (х) связанные
переменные, содержащиеся в
будем переименовывать на символы, не
встречающиеся в
.
Другой выход
следующий: терм t называется свободным
для переменной x в формуле (х),
если никакое свободное вхождение x в
не лежит в области действия кванторов
и
,
где
входит в t. В этом случае замена (х/t)
допускается.
При подстановках констант противоречия не возникают.
Замечание.
Применяемые в анализе и алгебре
обозначения:
и
служат сокращениями соответственно
формул
и
.
Например,
будет определяться формулой:
.
Исчисление предикатов
Для того чтобы определить формальную теорию, связанную с языком первого порядка, введём логические аксиомы и правила вывода языка L. Логические аксиомы подразделяются на 3 группы: