Дискретная математика

Раздел 1. Математическая логика

Тема 1. Логика высказываний

Тема 2. Булевы функции

Тема 3. Логика предикатов

Тема 4. Метод резолюций

Тема посвящена рассмотрению метода доказательства того, что формула G является логическим следствием формул F1,F2,...,Fk, который называется методом резолюций. Отметим, что задача о логическом следствии сводится к задаче о выполнимости. Действительно, формула G есть логическое следствие формул F1,F2,...,Fk тогда и только тогда, когда множество формул {F1,F2,...,Fk,ØG} невыполнимо. Метод резолюций, если говорить более точно, устанавливает невыполнимость. Это первая особенность метода. Вторая особенность метода состоит в том, что он оперирует не с произвольными формулами, а с дизъюнктами (или элементарными дизъюнкциями).

§1. Метод резолюций в логике высказываний

§2. Подстановка и унификация

§3. Метод резолюций для логики первого порядка

§4. Эрбрановский универсум множества дизъюнктов

§5. Семантические деревья, теорема Эрбрана

§6. Полнота метода резолюций в логике предикатов

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

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


Стратегия насыщения уровней. Наиболее простой с идейной точки зрения способ выбора дизъюнктов для получения резольвенты состоит в организации полного перебора возможных вариантов. Этот перебор можно организовать следующим образом. Пусть 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}.

§8. Применение метода резолюций.

§9. Метод резолюций и логическое программирование

Задачи

Ответы, указания и решения

Раздел 2. Теория графов

Тема 5. Раскраски

Тема 6. Ориентированные графы и сети


Fair.ru Ярмарка сайтов
Rambler's Top100 Submitter.ru - Free promoting

Дизайн: Alex © 2002
Все вопросы и предложения можно направлять по адресу cad@mail.ustu.ru