русс | укр

Языки программирования

ПаскальСиАссемблерJavaMatlabPhpHtmlJavaScriptCSSC#DelphiТурбо Пролог

Компьютерные сетиСистемное программное обеспечениеИнформационные технологииПрограммирование

Все о программировании


Linux Unix Алгоритмические языки Аналоговые и гибридные вычислительные устройства Архитектура микроконтроллеров Введение в разработку распределенных информационных систем Введение в численные методы Дискретная математика Информационное обслуживание пользователей Информация и моделирование в управлении производством Компьютерная графика Математическое и компьютерное моделирование Моделирование Нейрокомпьютеры Проектирование программ диагностики компьютерных систем и сетей Проектирование системных программ Системы счисления Теория статистики Теория оптимизации Уроки AutoCAD 3D Уроки базы данных Access Уроки Orcad Цифровые автоматы Шпаргалки по компьютеру Шпаргалки по программированию Экспертные системы Элементы теории информации

Стратегии метода резолюций


Дата добавления: 2015-08-31; просмотров: 1474; Нарушение авторских прав


В множестве дизъюнктов существует, как правило, не одна пара дизъюнктов, к которым можно применить правило резолюций. Способ выбора дизъюнктов и летералов в них, к которым применяется правило резолюций (и правило склейки) для получения резольвенты, называется стратегией метода. В этом параграфе будет рассмотрено три стратегии: стратегия насыщения уровней. Предпочтения более коротких дизъюнктов и вычеркивания. Достаточно полное описание известных стратегий содержится в книге Ч.Ченя и Р.Ли, приведенной в списке литературы.

Стратегия насыщения уровней.Наиболее простой с идейной точки зрения способ выбора дизъюнктов для получения резольвенты состоит в организации полного перебора возможных вариантов. Этот перебор можно организовать следующим образом. Пусть S0=S – исходное множество дизъюнктов. Будем считать, что S0 упорядочено. Пусть D2 пробегает по порядку множество дизъюнктов S0, начиная со второго. В качестве D1 берем последовательно дизъюнкты из S0, предшествующие D2 начиная с первого, и формируем последовательность S1, состоящее из всевозможных резольвент дизъюнктов D1 и D2. (Порядок на S1 определяется порядком добавления дизъюнктов в S1.) Предположим, что получены последовательности дизъюнктов S0, S1,…,Sn-1 и n>1. Тогда последовательность Sn получается следующим образом. В качестве D2 берутся по порядку дизъюнкты из Sn-1, а в качестве D1 – дизъюнкты из S0ÈS1È…ÈSn-1, предшествующие D2. Последовательность Sn будет состоять из всевозможных резольвент дизъюнктов D1 и D2. Процесс порождения резольвент прекращается, как только получается пустой дизъюнкт.

Описанная в предыдущем абзаце стратегия называется стратегией насыщения уровней. (Уровни – это последовательности S0, S1,…,Sn,…) Проследим, как она работает на примере множества дизъюнктов S={XÚY, ØXÚØY, XÚZ, ØXÚZ, ØZ}:



S0: (1) XÚY, S2: (13) XÚY (из (1) и (6),
  (2) ØXÚØY,   (14) ØXÚØY (из (2) и (6),
  (3) XÚZ,   (15) XÚY (из (1) и (7),
  (4) ØXÚZ,   (16) ØXÚØY (из (2) и (7),
  (5) ØZ,   (17) XÚZ (из (3) и (7),
S1: (6) YÚØY2 (из (1) и (2)),   (18) ØXÚZ (из (4) и (7),
  (7) XÚØX (из (1) и (2)),   (19) XÚZ (из (1) и (8),
  (8) ØYÚZ (из (2) и (3)),   (20) ØYÚZ (из (6) и (8),
  (9) YÚZ (из (1) и (3)),   (21) ØXÚZ (из (2) и (9),
  (10) Z (из (3) и (4),   (22) YÚZ(из (6) и (9),
  (11) X (из (3) и (5),   (23) Z (из (8) и (9),
  (12) ØX (из (4) и (5)   (24) □ (из (5) и (10).

Мы видим, что порождено много лишних дизъюнктов. Так, 6 и 7–тождественно истинные дизъюнкты. Удаление или добавление тождественно истинного дизъюнкта не влияет на выполнимость множества дизъюнктов, поэтому такие дизъюнкты должны быть удалены из вывода. Далее, некоторые дизъюнкты порождаются неоднократно, например, XÚY, ØXÚØY, YÚZ. Это означает, что выбором дизъюнктов для получения резольвенты надо управлять.

Стратегия предпочтения (более коротких дизъюнктов).Эта стратегия является следующей модификацией предыдущей: сначала в качестве D2 берется самый короткий дизъюнкт из Sn-1 (если таких несколько, то они перебираются по порядку), затем более длинные и т.д. Аналогичные условия налагаются и на D1. Такая стратегия в применении к тому же множеству дизъюнктов S дает следующее:

S0: (1) XÚY,   (10) ØYÚZ (из (2) и (3)),
  (2) ØXÚØY,   (11) YÚZ (из (1) и (4)),
  (3) XÚZ,   (12) Z (из (3) и (4)),
  (4) ØXÚZ, S2: (13) ØY (из (2) и (6)),
  (5) ØZ   (14) Z (из (2) и (6)),
S1: (6) X (из (3) и (5)),   (15) Y (из (1) и (7)),
  (7) ØX (из (4) и (5)),   (16) Z (из (3) и (7)),
  (8) YÚØY (из (1) и (2)),   (17) □ (из (6) и (7)).
  (9) XÚØX (из (1) и (2)),    

Вывод оказался короче, чем в предыдущем примере, но попрежнему содержит повторяющиеся и тождественно истинные дизъюнкты. Свободным от этих недостатков является вывод, полученный в соответствие со следующей стратегией.

Стратегия вычеркивания. Введем вначале следующие понятия.

Определение. Дизъюнкт D называется расширением дизъюнкта C, если существует подстановка σ такая, что σ(C)ÍD.

Для логики высказываний это означает, что просто D=CÚD/ (при некоторой перестановке литералов). В случае логики предикатов ситуация не столь проста. Например, D=Q(a)ÚP(b,y)ÚR(u) есть расширение дизъюнкта C=P(x,y)ÚQ(z)ÚQ(v).

Стратегия вычеркивания, как и стратегия предпочтения является модификацией стратегии насыщения уровней. Она применяется следующим образом: после того, как получена очередная резольвента D дизъюнктов D1 и D2 проверяется, является ли она тождественно истинной формулой или расширением некоторого дизъюнкта C из S0È...ÈSn-1, и в случае положительного ответа D вычеркивается, т.е. не заносится в последовательность Sn.

Применение стратегии к прежнему множеству дизъюнктов дает следующее:

S0: (1) XÚY, (8) Z (из (3) и (4)),
  (2) ØXÚØY, (9) X (из (3) и (5)),
  (3) XÚZ, (10) ØX (из (4) и (5)),
  (4) ØXÚZ, (11) ØY (из (5) и (6)),
  (5) ØZ, (12) Y (из (5) и (7)),
S1: (6) ØYÚZ (из (2) и (3)), (13) □ (из (5) и (8)).
  (7) YÚZ (из (1) и (4)),  

Рассмотренные стратегии являются полными в том смысле, что если множество дизъюнктов S невыполнимо, то из S пользуясь стратегией можно вывести пустой дизъюнкт. Для первых двух стратегий это достаточно очевидно. Полнота стратегии вычеркивания следует из того, что если D и C–дизъюнкты из S и D–расширение C, то множество S невыполнимо в том и только в том случае, когда невыполнимо множество S|{D}.



<== предыдущая лекция | следующая лекция ==>
Метод резолюций для логики первого порядка | Применение метода резолюций.


Карта сайта Карта сайта укр


Уроки php mysql Программирование

Онлайн система счисления Калькулятор онлайн обычный Инженерный калькулятор онлайн Замена русских букв на английские для вебмастеров Замена русских букв на английские

Аппаратное и программное обеспечение Графика и компьютерная сфера Интегрированная геоинформационная система Интернет Компьютер Комплектующие компьютера Лекции Методы и средства измерений неэлектрических величин Обслуживание компьютерных и периферийных устройств Операционные системы Параллельное программирование Проектирование электронных средств Периферийные устройства Полезные ресурсы для программистов Программы для программистов Статьи для программистов Cтруктура и организация данных


 


Не нашли то, что искали? Google вам в помощь!

 
 

© life-prog.ru При использовании материалов прямая ссылка на сайт обязательна.

Генерация страницы за: 1.978 сек.