Моделирование силлогистики

Основной элемент при выводах в силлогистике – переход от двух посылок к заключению. Этот процесс может быть автоматизирован, схема автоматизированной системы для получения силлогистических выводов показана на рис. 3.

 

 

Рис. 3. Схема системы для получения силлогистических выводов

 

При работе системы возможно возникновение различных проблем, связанных с реализацией специфических функций системы.

Лингвистический блокреализует следующие функции:

- навешивание кванторов «всякий» и «некоторый»;

- вычленение имен классов сущностей;

- освобождение высказываний этих лишних слов;

- определение, говорят ли высказывания о единой сущности или о совокупности таких сущностей;

- расшифровка входных сообщений, которые могут быть фактами для пополнения базы фактов, либо фактами, истинность которых хотелось бы установить. В первом случае факт после перевода в нормальную форму передается в базу фактов, во втором – выдается в качестве задания на вывод.

При реализации этих функций могут возникнуть следующие проблемы:

1) проблема омонимов – одинаковых по звучанию, но различных по смыслу слов;

2) установление соотношений между классами сущностей, что невозможно без учета специфики проблемных областей;

3) в память лингвистического блока должна быть заложена информация о возможных преобразованиях имен классов сущностей;

4) приведение фактов к нормальной форме.

В базе фактов реализованы следующие функции:

- проверка факта, поступающего в базу, на существование и противоречивость;

- хранение фактов.

Проверка противоречивости может быть осуществлена с помощью таблиц противоречий (табл. 4). Противоречия в таблице отмечены «+», когда речь идет об одинаковых S и P, знаком «V» отмечены высказывания в столбце, являющиеся следствием высказывания, которым помечена строка.

Таблица 4

Таблица противоречий

Имя в БФ A E I O a есть P a не есть P
A   + V + V +
E +   + V + V
I   +     V  
O +         V

 

Например, если на вход поступил факт Asp, а в базе до этого хранился факт Isp , то производится замена Isp на Asp. Если в базе хранился факт Asp, а на вход поступил факт Isp , то факт Isp не заменяется. Кроме противоречивости таблица анализирует случаи возникновения двух высказываний «a есть P», «a не есть P».

Какое решение должна принять система, если обнаружены противоречия? Какому из двух выявившихся фактов система должна верить? Возможны следующие способы решения проблемы:

1) хранение всех фактов при условии, что все факты относятся к различным мирам;

2) исключение этой пары противоречивых фактов из базы фактов, если в системе нет правила предпочтения одних фактов другим;

3) привлечение дополнительной информации для выбора из двух фактов одного, истинность которого обоснована больше.

Рассмотрим эти возможности на примере. Пусть в базе фактов хранится факт Asp – «всякие лошади не есть летающие существа» и пусть на вход поступили новые факты – «Пегас есть лошадь» и «Пегас есть летающее существо». Эти факты входят в противоречие с ранее имевшимися.

Первый вариант решения проблемы. Класс сущностей «лошади» делится на два класса – «Лошади, которые не есть Пегас» и «Пегасы». Факт Asp сохраняется с учетом того, что S есть имя класса «Лошади, которые не есть Пегас». Вводится высказывание Aqp , в котором q есть имя класса «Пегасы».

Второй вариант решения проблемы. Система должна стереть информацию о классе «Лошади» или убрать из нее факт Asp. Если производиться удаление какой-то части базы фактов, то необходимо удалить и все те факты, которые прямо не связаны с классом «Лошади», но при образовании которых при силлогистическом выводе использовались факты, связанные с лошадьми, т.к. следы упоминания класса «Лошади» при таком выводе могут исчезнуть (если «Лошади» занимали позицию М). Следовательно, требуется глобальная перепроверка всех фактов, хранящихся в базе.

Третий вариант решения проблемы. Система может не воспринимать факт, касающийся Пегаса, зная из побочных источников, что в памяти хранятся лишь факты, относящиеся к области коневодства, и что Пегас не является именем конкретной лошади.

Кроме чистого противоречия при вводе нового факта приходится сталкиваться с проблемой пресуппозиции. Она связана с тем, что истинность некоторых фактов неразрывно связана с истинностью некоторых других фактов. Особенно это касается фактов, описывающих данное событие во внешнем мире. Например, в систему поступил факт «Иванов заболел», после приведения его к нормальной форме он примет вид: «Иванов есть тот, кто есть больные люди». Этот факт можно ввести в базу фактов. Но при этом истинность этого факта предполагает, что некоторое время назад был истинен другой факт – «Иванов есть тот, кто не есть больные люди». Этот факт формально противоречит вновь вводимому факту. Здесь реализуется третий случай – надо убрать из памяти первый факт, а второй записать в нее.

С явлением пресуппозиции связано введение новых классов сущностей. Например, факт «Петр дал Ивану билет на поезд» порождает совокупность высказываний вида: «Петр существует», «Петр есть человек», «Иван есть человек», «Иван обладает билетом» и т. д.

Возможны два режима работы системы – режим пополнения базы фактов и режим доказательства теорем. В первом случае происходит добавление в базу данных фактов, которые с помощью силлогистических выводов получаются из вновь введенного факта и всех ранее хранившихся фактов. Во втором случае формируется теорема в виде вопроса о возможности вывода факта, поступившего на вход системы из хранящихся в базе фактов. При этом используется следующая процедура доказательства:

1) блок формирования совместных посылок выбирает из базы посылки, которые образуют одну из четырех фигур силлогистики;

2) эта пара передается на блок формирования заключения, где проверяется возможность вывода. Если правильный модус не образуется, то вырабатывается требование на поиск новой пары посылок;

3) если вывод возможен, то его результат сравнивается с высказыванием, являющимся целью доказательства теоремы. Если полученное заключение есть искомое высказывание, то процесс доказательства обрывается и результат (теорема верна) выдается. Если этого не произошло, то полученное заключение добавляется в базу фактов и процесс поиска доказательства продолжается.

В процедуре возникает проблема останова. Как узнать, если нужный факт не выводится из базы фактов? Возможный ответ – полный перебор всех сочетаний посылок, дающих фигуры силлогистики. Это же касается и случая прекращения процесса пополнения базы фактов после введения нового факта в систему.

В блоке формирования заключениявозникают следующие трудности, связанные с поиском выводов:

4) понимание поступающих в систему сообщений – истолкование их в терминах и понятиях на уровне внутреннего языка;

5) проверка поступающих сообщений на согласованность информации с информацией из базы фактов;

6) трудности поиска, не опирающегося на какую-то цель или при известной цели;

7) трудности, связанные с прекращением процедур вывода и формированием отрицательного ответа на вопрос о выводимости.

Все эти трудности присущи и другим системам моделирования рассуждений, они являются принципиальными для всех формальных систем.