
- •Определение формальной системы
- •Примеры формальных систем
- •Разрешимость и интерпретация формальных систем
- •Доказательство и истинность
- •Четыре класса сочетания теорем (т) и не-теорем (nt) и значений истинности истина (V) и ложь (f)
- •Примеры формальных доказательств
- •Исчисление высказываний
- •Исчисление предикатов первого порядка
Логические модели представления знаний. Исчисление высказываний. Пропозициональные формы. Основные свойства логических операций. Исчисление предикатов. Кванторы и связанные переменные. Использование исчисления предикатов в искусственном интеллекте.
Языки, предназначенные для описания предметных областей, называются языками представления знаний. Универсальным языком представления знаний является естественный язык. Однако использование естественного языка в системах машинного представления знаний наталкивается на большие трудности ввиду присущих ему нерегулярностей, двусмысленности и.т.п. Но главное препятствие заключается в отсутствии формальной семантики естественного языка, которая имела бы достаточно эффективную операционную поддержку.
Для представления математического знания в математической логике давно пользуются логическими формализмами- главным образом исчислением предикатов, которое имеет ясную формальную семантику и операционную поддержку в том смысле, что для него разработаны механизмы вывода.
В формальной логике разрабатываются методы правильных рассуждений, представляющих собой цепь умозаключений в логически последовательной форме. Рассуждения в ней изучаются с точки зрения формы, а не смысла, и с этой целью в обычных рассуждениях выделяются определенные элементы, которые могут замещаться в них произвольным образом какими-то другими элементами. Например, в хорошо известном силлогизме (обычно приписываемом Аристотелю, но в действительности принадлежащему Г. Оккаму (1349 г.))
"Люди — смертны, Сократ — человек, следовательно, Сократ смертен"
в обоих случаях вхождения слов "человек (люди)", "смертен (смертны)", "Сократ" могут быть заменены любыми другими словами и при этом само рассуждение останется формально допустимым. Таким образом, уже простая замена таких слов в рассуждениях символьными обозначениями позволяет строить обобщенные суждения на основе подобных, рассуждений. Так, в приведенном примере абстрактная модель этого рассуждения принимает следующий вид:
"Если все х суть у и если z есть х, то z есть у".
В силлогистике, создателем которой был Аристотель, как раз и начали систематически применяться такие замещающие символы, позднее получившие название переменных, (впервые они встречаются в "Органоне").
Однако при формальном описании рассуждений, подобных тем, что встречаются в обычном языке, недостаточно введения одних только переменных. В этом случае возникает необходимость в словах типа "если, тогда, или, и, так как, следовательно", а также в таких глаголах, как "есть, принадлежит, влечет, следует", которые играют фундаментальную роль в рассуждении. Это фундаментальные элементы представляют собой слова — связки формального рассуждения и не допускают никаких замен. Например, рассматриваемый нами силлогизм тут же разрушается, если заменить в нем второе по порядку следования "если" на "или". Такие фиксированные, незаменяемые элементы называются операторами.
Отметим, что в обычном языке союз «или» может принимать различные значения. Иногда он означает «или то или другое, или и то и другое вместе» (это или включительное), а иногда «или» означает «одно из двух — либо то, либо другое» (это или исключительное). Аналогично глагол "есть, является" означает иногда включение, иногда равенство, а иногда принадлежность. В связи с этим возникает необходимость использовать различные символы для обозначения и отражения различных значений и оттенков подобных слов.
Одна из задач формальной логики — выявление неоднозначностей и изучение отдельных этапов рассуждений или выводов, когда шаг за шагом строго доказывается их правильность вне зависимости от используемой интерпретации и не остаются неясности ни на одном этапе.
Определение формальной системы
Формальная система представляет собой совокупность чисто абстрактных объектов (не связанных с внешним миром), в которой представлены правила оперирования множеством символов в чисто синтаксической трактовке без учета смыслового содержания (или семантики). Формальная система определена, если:
1. Задан конечный алфавит (конечное множество символов).
2. Определена процедура построения формул (или слов) формальной системы.
3. Выделено некоторое множество формул, называемых аксиомами.
4. Задано конечное множество правил вывода, которые позволяют получать из некоторого конечного множества формул другое множество формул. Эти правила могут быть представлены в виде
U1 и U2 и … и Uр W1 и W2 и … и Wn,
где Ui и Wj — формулы формальной системы, а стрелка читается как "влечет" или "следует".
Формальную систему иногда называют также аксиоматикой, или формальной теорией, или еще проще — множеством формул.
Алфавит, который заранее предполагается конечным, иногда называют словарем. При этом в нем различаются константы, переменные и операторы (примеры в разд. 2.2.2).
Способ построения формул (п. 2 определения формальной системы) определяет конкретную синтаксическую конструкцию формул или грамматику формул, которые представляют собой правильно построенные последовательности символов. В отличие от этого в п. 4 определения формальной системы заданы разрешенные правила вывода формул друг из друга.
Формальное доказательство (или просто доказательство) определяется как конечная последовательность формул М1, М2, ..., Mr, такая, что каждая формула Мi ( либо является аксиомой, либо при помощи одного из правил вывода выводима из предшествующих ей формул Мj, где j < i.
Формула t называется теоремой, если существует доказательство, в котором она является последней, т.е. Mr t. В частности, всякая аксиома является теоремой. Если t есть теорема, то этот факт кратко обозначается так: |— t.
Правила вывода (п. 4 определения формальной системы) называют также правилами словообразования или правилами вывода заключения. В принципе они позволяют определять, является ли данная формула теоремой данной формальной системы. Отметим также, что в соотношении
{теоремы} {формулы} {цепочки символов из алфавита}
включение множеств является строгим.
Различают два типа правил вывода:
правила, применяемые к формулам, рассматриваемым как единое целое (в этом случае их называют продукциями, правилами продукций или продукционными правилами);
правила, которые могут применяться к любой отдельной части формулы, причем сами эти части являются формулами, входящими в формальную систему. В этом случае говорят о правилах переписывания.
Так, в обычной математике следующее правило вывода:
х < у и у < z влечет х < z
применяется к формуле как к
целому (в данном случае к предложению
математического анализа)
— это продукция (с двумя
антецедентами, или посылками). Слово
"влечет"
для краткости при использовании продукции
часто заменяется стрелкой
.
В отличие от предыдущего
правило х-х
|— 0 имеет смысл при любом
виде входящего в него в качестве
подвыражения х. Оно
является правилом переписывания, и в
этом случае для обозначения слова
"влечет" используется специальная
стрелка
.
Разумеется, и продукция, и
правило переписывания имеют только
одно направление вывода
— слева направо. Правило
переписывания действует в обоих
направлениях, если только заданы два
правила: аb
и b
а.
Иначе при использовании одностороннего
правила переписывания как двустороннего
в рассуждениях может получиться порочный
круг (что часто случается с детьми).
Замечание. Множества, указанные в пп. 3 и 4 определения формальной системы, не обязательно должны быть конечными: достаточно, чтобы они были рекурсивно перечислимы. Однако в последующем изложении мы будем предполагать, что они являются конечными.
Правило подстановки пригодно для использования в любой формальной системе. Чтобы применить правило вывода к какой-нибудь формуле М, принадлежащей к некоторой формальной системе, надо совместить левый элемент правила Q с М. Это осуществляется при помощи подстановок в Q и/или в М. Подстановка заключается в замещении всех вхождений какой-либо переменной на формулу из формальной системы, которая не содержит этой переменной.