
- •Формальные модели
- •Логика высказываний
- •Метод резолюции
- •Формулировка исчисления высказываний
- •Понятие семантики в логике высказываний Означивания и истинностные означивания
- •Семантические таблицы
- •Аксиоматическая система вывода
- •Метод резолюций
- •Корректность и полнота исчисления высказываний Разрешимость и полнота исчисления высказываний
- •Корректность и полнота метода семантических таблиц
- •Корректность и полнота аксиоматической системы вывода
- •Алгебраические системы
- •Логика предикатов
- •Исходные символы языка логики предикатов
- •Термы и формулы
- •Интерпретация вPrL
- •Интерпретация термов
- •Интерпретация формул
- •Интерпретация атомных формул
- •Интерпретация формул с логическими связками.
- •Интерпретация формул, содержащих кванторы
- •Подстановка термов в формулы
- •Аксиоматические основания логики предикатов
- •Общезначимые эквивалентности логики предикатов
- •Предваренная нормальная форма
- •Метод семантических таблиц
- •Построение замкнутых семантических таблиц
- •Сколемовская нормальная форма
- •Теоретико-множественное представление-формул
- •Эрбрановские интерпретации
- •Семантические деревья
- •Исчисления предикатов Выводы в естественной дедуктивной системе
- •Определение схем (правил) вывода для ипс
- •Унификация и резолюция в логике предикатов
- •Унификация: неформальное описание
- •Унификация: формальное описание
- •Теорема Дж. А. Робинсона
- •Метод резолюций дляPrL Клаузальная форма (форма предположений)
- •Корректность и полнота исчислений логики предикатов Корректность и полнота исчисления резолюций
- •Корректность и полнота метода семантических таблиц
- •Проблема разрешимости логики предикатов
- •Полнота и непротиворечивость исчисления предикатов
- •Теоремы ограничения в формальных системах
- •Список рекомендуемой литературы
Аксиоматическая система вывода
Логика
высказываний может быть представлена
как аксиоматическая система с логическими
аксиомами и правилами вывода. Аксиомы
– это некоторые тавтологии, а правило
вывода Rвыводитвысказываниеиз
последовательности высказыванийСистема аксиом логики высказываний:
A1:
A2:
A3:
Заметим, что высказывания могут быть произвольными. Из этой системы аксиом можно получить неограниченное число аксиом. Легко проверить, что все эти аксиомы являются правильно построенными формулами языкаPLи, конечно, тавтологиями.
Мы будем использовать единственное правило вывода, которое называется ModusPonens. Оно обозначается следующим образом:
├ .
Символ ├ обозначает выводимость в аксиоматической системе. Новые высказывания получаются из трех указанных аксиом и правилаModusPonens.
Пример.Докажем, что├ АА.
Из А1 получим
├ А((ВА)А). |
(1) |
Вторую аксиому запишем в виде: |
|
├ (А((BА)А)(((А(ВА))(АА)). |
(2) |
Из (1) и (2) по правилу ModusPonens, получаем, что |
|
├ (А(ВА))(АА). |
(3) |
Вновь используя аксиому А1 и правило ModusPonens, заключаем ,что |
|
├ АА. Следовательно, высказывание АА выводимо в нашей аксиоматической системе. |
|
Индуктивное определение доказательства высказывания аксиоматическим методом.
Пусть S– множество высказываний.
Доказательством (выводом) из Sназывается такая конечная последовательность высказываний
, что
верно:
i S или
i –аксиома или
iполучено изj,k, где 1j,ki, по правилуModusPonens.
Высказывание называется доказуемым (выводимым) из множества высказываний S, если существует такое доказательство
изS, чтоnсовпадает с. Выводимость высказыванияиз множества высказыванийSобозначается:S├ .
Высказывание называетсядоказуемым (выводимым), если├ , т.е. выводима в аксиоматической системе при помощи правилаModusPonens.
Теоремой является любое высказывание, присутствующее в доказательстве.
Следующая теорема является основной в теории доказательств.
Терема дедукции. Пусть S – множество высказываний, K, L – высказывания. Тогда
S{K}├ LS├ KL.
Примем эту теорему без доказательства.
Метод резолюций
Метод резолюций – наиболее эффективный способ алгоритмического доказательства, как в логике высказываний, так и в логике предикатов. Он составляет основу языка логического программирования ПРОЛОГ. Метод резолюций, как и метод семантических таблиц Бета, строит доказательство путем опровержения.
Введем некоторые дополнительные понятия.
Литерал – это произвольный атом или его отрицание.
Дизъюнкция конечного множества литералов может быть представлена в теоретико-множественном виде как множество, элементами которого являются рассматриваемые литералы. Это множество называется дизъюнктом. Введем понятие пустого дизъюнкта, т.е. дизъюнкта, который не содержит ни одного литерала и является всегда неподтверждаемым. Пустой дизъюнкт обозначается значком . Пустой дизъюнкт означает противоречие: он вносит это противоречие в наш мир, делая его противоречивым, т.е. неподтверждаемым.
Конъюнкция конечного множества дизъюнктов может быть представлена в теоретико-множественном виде как множество, элементами которого являются эти дизъюнкты.
Правило резолюции (или резолюция) гласит, что из истинности двух дизъюнкций, одна из которых содержит дизъюнкт, а другая — его отрицание, следует (выводима) формула, являющаяся дизъюнкцией исходных формул без упомянутого дизъюнкта и его отрицания.
Пример. Множество дизъюнктов {{A,B}, {B,C}, {D}} представляет высказывание (AB)&(BC)&D).
Истинностное означивание подтверждает множество дизъюнктов, если оно подтверждает каждый дизъюнкт этого множества. Например, пусть S= {{A,B}, {C}} - множество дизъюнктов и V – такое истинностное означивание, что V(A) =V(B)=V(C)=t. Тогда V не подтверждает S, так как оно не подтверждает один из элементов S, а именно, {C}.
Пусть S – множество дизъюнктов, соответствующее высказыванию
A1…Ak(B1)…(Bl),
где A1,…,Ak, B1, …, Bl - атомы. В соответствии с определением секвенции это выражение можно представить секвенцией
B1,…,Bl |- A1 …Ak.
Используя аксиомы и тождества логики высказываний, запишем это выражение в виде
S(A1…Ak)(B1&…&Bl) =B1B2… Bl A1…Ak. |
(4) |
При k=1 высказывание (1) примет вид
A1(B1&…&Bl). |
(5) |
Дизъюнкт S вида (5) называется хорновским дизъюнктом.
Атом А1 называется заголовком или целью S; конъюнктивные компоненты В1,…, Bl называются хвостом, телом или подцелями S.
Содержательное истолкование хорновского дизъюнкта таково: для того, чтобы цель А была истинна, достаточно, чтобы подцели В1, …, Вl были также истинны.
Если в дизъюнкте вида (4) k=0, то дизъюнкт
(B1&…&Bl) или (B1&…&Bl) |- |
(6) |
Называется целью программы или положительной целью (доказательство от противного, т.е. с использованием опровержения).
Если l=0, то дизъюнкт
A1 или |- A |
(7) |
Называется унитарным дизъюнктом или фактом.
Подтверждение цели А в дизъюнкте A(B1&…&Bl) вытекает из подтверждения подцелей B1&…&Bl. В этом случае говорят, что цель А успешна. В противном случае говорят, что цель А неуспешна или неудачна.
Хорновский дизъюнкт (6), означающий отсутствие цели, утверждает, что, по меньшей мере, одна из подцелей неуспешна. Хорновский дизъюнкт (7) означает, что цель А1 всегда успешна.
Вообще говоря, резолюция представляет собой дедуктивное правило, позволяющее выводить дизъюнктивное высказывание из двух других дизъюнктивных высказываний. Прежде чем описать формальный метод, рассмотрим пример.
Пусть имеются дизъюнкты: {A, B}, {A, C}. Так как в один из дизъюнктов входит А, а в другой А, можно использовать метод резолюции и вывести дизъюнкт {B, C} как дизъюнкцию литералов, которые остались в обоих дизъюнктах после исключения А и А.
Применение такого правила становится интуитивно понятным, если записать дизъюнкты в классической формулировке логики высказываний:
Исходные высказывания: (AB), (AC);
заключение(BC).
В этом правиле применяется тавтология (проверяется непосредственным преобразованием)
(АВ)&(АС)(ВС).
Построим таблицы истинности всех подформул, входящих в это выражение.
А |
|
В |
& |
A |
|
C |
|
B |
|
C |
1 |
1 |
0 |
0 |
0 |
0 |
0 |
1 |
0 |
0 |
0 |
1 |
1 |
0 |
1 |
0 |
1 |
1 |
1 |
0 |
1 |
1 |
1 |
1 |
1 |
0 |
0 |
0 |
0 |
1 |
1 |
1 |
0 |
1 |
1 |
1 |
1 |
0 |
1 |
1 |
1 |
1 |
1 |
1 |
0 |
0 |
0 |
0 |
1 |
1 |
0 |
1 |
0 |
0 |
0 |
0 |
0 |
0 |
0 |
1 |
1 |
1 |
1 |
0 |
1 |
1 |
0 |
1 |
1 |
1 |
1 |
1 |
0 |
1 |
1 |
1 |
0 |
0 |
1 |
1 |
1 |
1 |
1 |
1 |
1 |
1 |
1 |
1 |
Из таблицы непосредственно следует, что если два первых дизъюнкта истинны, то последний также принимает значение 1. Следовательно, (АВ), (АВ)├ (ВС).
Обобщим предыдущий пример, рассматривая в качестве исходных данных следующие дизъюнкты:
C1={A1,…,Ak,B1,…,Bl},
C2={D1,…,Dk,F1,…,Fl},
где A1,…, Ak, B1,…, Bl , D1,…, Dk, F1,…, Fl - атомы. Предположим, что А1совпадает сF1. Тогда можно переписать эти дизъюнкты следующим образом:
C1={A1}где
-
={A2,…,Ak,B1,…,Bl},
C2=
{A1},
где
={D1,…,Dk,F2,…,Fl}.
Тогда по
правилу резолюции можно вывести дизъюнкт
.
Можно считать, что исходных дизъюнкты С1и С2«вступают в противоречие, так как содержат один и тот же литерал, входящий в эти дизъюнкты с отрицанием и без отрицания. Устранение противоречия приводит к получению нового дизъюнкта, который и «разрешает конфликт». Своим названием метод обязан этому разрешению (toresolve– разрешать). Определим формально метод резолюций.
Пусть С1и С2– дизъюнкты,L– такой литерал, чтоLC1иLC2. Тогдарезольвентой дизъюнктов С1и С2называется дизъюнкт
D=(C1\{L})(C2\{L}).
Пример. Исходные высказыванияC1={P,Q},C2={P,Q}; заключениеD={Q,Q}.
Если имеется множество, содержащее более двух дизъюнктов, то можно ввести понятие множества резольвент.
Пусть S={C1, …,Cn}. МножествоR(S)=S{D|Dрезольвента дизъюнктовCi,Cj, 1i,jn} называетсярезольвентой S.
Пример. ПустьS– множество дизъюнктов
S={{A,B,C}, {B,D}, {A,D}}.
Применяя к этому множеству дизъюнктов резолюцию столько раз, сколько это возможно, получим резольвенту S:
R(S)={{A,B,C}, {B,D}, {A,D}, {A,D,C}, {B,A}, {B,C,D}}.