- •Введение
- •1. Математическая логика
- •1.1. Формальные модели
- •1.2. Логика высказываний
- •1.2.1. Основные теоремы логического вывода.
- •1.2.2. Семантические таблицы
- •1.2.3. Метод резолюций
- •1.3. Исчисление высказываний
- •1.3.1. Классическое исчисление высказываний
- •1.3.2. Исчисление секвенций
- •1.4. Корректность и полнота логического вывода
- •1.4.1. Корректность и полнота метода семантических таблиц
- •1.4.2. Корректность и полнота метода резолюций
- •1.4.3. Корректность и полнота аксиоматической системы вывода
- •1.4.3. Разрешимость и полнота исчисления высказываний
- •1.5. Логика предикатов
- •1.5.1. Исходные символы языка логики предикатов
- •1.5.2. Термы и формулы
- •1.5.3. Интерпретация в логике предикатов
- •Интерпретация термов
- •Интерпретация формул
- •Интерпретация атомных формул
- •Интерпретация формул с логическими связками.
- •Интерпретация формул, содержащих кванторы
- •1.5.4. Метод семантических таблиц
- •Для формул с кванторами
- •Для формулы с кванторами
- •Построение замкнутых семантических таблиц в логике предикатов
- •1.5.5. Подстановка термов в формулы
- •1.6. Исчисление предикатов
- •1.6.1. Классическое исчисление предикатов
- •Общезначимые эквивалентности логики предикатов
- •1.6.2. Исчисление секвенций
- •Правила вывода в исчислении предикатов
- •1.7. Канонические представления формул логики предикатов
- •1.7.1. Предваренная нормальная формула (пнф)
- •1.7.2. Сколемовская нормальная форма
- •1.8. Теоретико-множественное представление -формул
- •1.8.1. Эрбрановские интерпретации
- •1.8.2. Метод семантических деревьев
- •1.9. Унификация и резолюция в логике предикатов
- •1.9.1. Композиция подстановок
- •1.9.2. Унификация: неформальное описание
- •1.9.3. Метод резолюций в логике предикатов
- •Корректность и полнота исчислений логики предикатов Проблема разрешимости в логике предикатов
- •Корректность и полнота метода семантических таблиц
- •Корректность и полнота исчисления резолюций
- •Полнота и непротиворечивость исчисления предикатов
- •2. Элементы теории алгоритмов
- •2.1. Предварительное обсуждение.
- •2.1.1. Понятие алгоритма
- •2.1.2. Основные требования к алгоритмам
- •2.1.3. О подходах к уточнению понятия алгоритма.
- •2.2. Машина Тьюринга
- •2.2.1. Соединение машин Тьюринга Композиция машин Тьюринга
- •Итерация машины по паре состояний
- •Разветвление машин Тьюринга
- •Эквивалентность машин Тьюринга
- •2.2.2. Понятие об алгоритмической неразрешимости
- •Библиографический список
Построение замкнутых семантических таблиц в логике предикатов
Построение начинается с того, что замкнутая помеченная формула t или f помещается в корень таблицы. Далее выполняется индуктивная процедура.
Шаг n. Пусть уже построена таблица Tn-1. Особые вершины этой таблицы, которым соответствуют подформулы, не являющиеся атомами, продолжаются атомарными таблицами, соответствующими последней, выполняемой в каждой из таких ветвей, логической связкой. Результатом построения становится новая таблица Tn.
Шаг n+1. Пусть Х – особая вершина2, которая еще не была раскрыта. Если такой вершины не существует, то семантическая таблица является замкнутой. Если такая вершина есть, строим таблицу Tn+1, продолжая каждую непротиворечивую ветвь, проходящую через вершину Х, присоединением атомарной таблицы, соответствующей находящейся в этой вершине подформуле.
Содержательно, в случаях t(x (x)) и f(x (x)) мы хотим избавиться от повторений, и объявляем (с) истинной (ложной) последовательно для всех новых констант, выбирая их из списка констант, что может продолжаться бесконечно, как показано на рис. 9.
t
Вершина 1
Вершина 2
Вершина 3
Вершина 4
Из
вершины 2
для
всех с.
|
t[xA(x,x)]
|
t[y(A(y,y)B(y,y)]
|
Для
новой с0
из
вершины 2 для всех с
t
t[A(c0,c0)]
|
f[A(c0,c0)]
|
t[A(c,c)]
|
t[B(c0,c0)]
|
t[A(c,c)]
|
t[A(c0,c0)]
|
t[A(c1,c1)]
Рисунок 8 Пример
семантической таблицы
с одной бесконечной
ветвью
В этом примере левая ветвь противоречива, тогда как правая ветвь продолжается бесконечно.
Замкнутая
семантическая таблица в логике предикатов
есть объединение всех таблиц Tn
из предыдущего построения, т.е.
Она может иметь бесконечное число
вершин, тогда как семантические таблицы
для логики высказываний всегда конечны.
Основные определения:
Замкнутая семантическая таблица называется противоречивой, если все ее ветви противоречивы.
Предложение выводимо по Бету (опровержимо по Бету), если существует противоречивая замкнутая семантическая таблица с корнем f (t). Тот факт, что предложение выводимо по Бету обозначается ├В .
Предложение выводимо по Бету из множества S предложений логики предикатов, если существует противоречивая замкнутая семантическая таблица с корнем f. и следующей вершиной tP, где Р – конъюнкция предложений множества S. Этот факт обозначается S ├В .
1.5.5. Подстановка термов в формулы
Формальной подстановкой (или просто подстановкой) называется функция , определенная на конечном множестве переменных, перерабатывающая каждую переменную х из области определения в некоторый терм формальную подстановку можно изображать в виде двумерной таблицы
,
где в верхней строке указана область определения функции :
,
и
(xi)=ti.
Пусть Т –формула
или терм логики предикатов и формальная
подстановка
.
Через Т=Т
=
Другое обозначение
подстановкимножество
={x1/t1,
x2/t2,…,xn/tn},
где xi
и ti,
i
являются соответственно переменными
и термами.
Выражение (атом, терм, формула) Т обозначает выражение, полученное путем подстановки на места свободных вхождений переменных x1,…, xn соответствующих термов t1,…, tn.
Если вместо переменных в выражение ничего не подставляется, то подстановка называется пустой. Пустая подстановка обозначается символом Е, E={ }.
Дадим индуктивное определение подстановки.
Не все подстановки одинаково пригодны с точки зрения логики. При выполнении подстановки терма в формулу, важно учитывать следующее:
Вместо связанных переменных ничего подставлять нельзя.
Нельзя допускать появления новых связанных вхождений какой-нибудь переменной, если их не было в исходной формуле.
Результат подстановки термов t1 t2 ... tn в формулу Р вместо свободно входящих переменных х1, х2, ..., хn обозначается
или P{x1/t1,…xn/tn},
где {x1/t1,…,
xn/tn}
называется подстановкой.
Определение: переменная у свободна для переменной х в формуле Р, если в формуле Р отсутствуют свободные вхождения переменной х, находящиеся в области действия квантора по переменной у; терм t свободен для переменной х в формуле Р, если любая переменная терма свободна для х в формуле Р.
Следствия.
Постоянный терм свободен для любой переменной в любой формуле Р.
Если ни одна переменная терма не является связанной переменной формулы Р, то терм t свободен для любой переменной формулы Р.
Практически это означает, что свободный для переменной х терм может быть подставлен в формулу Р вместо свободного вхождения переменной х, не изменив ее логического значения. Например, формула (x+y<0) содержит переменные х и у свободно. Логическое значение замыкания этой формулы получается навешиванием квантора общности по свободным переменным, в модели M=(R,<), где Rмножество действительных чисел, I[ху(x+y<0)]=0. Пусть терм t=y2-y. Согласно определению терм t свободен для переменной х в этой формуле. Результатом подстановки будет формула (у2-у+у<0), логическое значение которой I[y(y2 <0)]=0,и совпадает со значением формулы до подстановки.
Связав
переменную у квантором существования,
получим формулу у(х+у<0).
Логическое значение замыкания этой
формулы I[xy(x+y<0)]=1,
т.е. высказывание: Для
любого действительного числа х существует
действительное число у, для которого
х+у<0
истинно на множестве действительных
чисел R. Переменная у не свободна для
переменной х в последней формуле.
Результатом подстановки в формулу
терма t
вместо свободно входящей переменной
x:
,
является предложение
которое ложно в множестве действительных
чисел R. В результате подстановки терма
t
в формулу вместо свободного вхождения
переменной x
произошла смена логического значения
формулы. Такое событие называется
коллизией
переменных.
Далее
будут приведены общезначимые
равносильности логики предикатов,
среди которых имеется равносильность,
утверждающая возможность переименования
связанных переменных. Чтобы избежать
коллизии переменных, необходимо перед
подстановкой терма в формулу произвести
переименование всех связанных переменных
формулы, встречающихся в терме.
Действительно, результатом переименования
связанной переменной у
на переменную
u,
является
формула
Подставив в нее тот же терм, получим
истинную формулу.
