2014 dxdy logo

Научный форум dxdy

Математика, Физика, Computer Science, Machine Learning, LaTeX, Механика и Техника, Химия,
Биология и Медицина, Экономика и Финансовая Математика, Гуманитарные науки


Правила форума


Посмотреть правила форума



Начать новую тему Ответить на тему
 
 Лок-резолюция
Сообщение26.05.2016, 10:20 


03/08/15
114
Здравствуйте
Есть следующий пример из книги Чень Ли Автоматическое доказательство теорем (стр. 124-125)
Дан набор дизъюнктов:
1.$ P_5(y,a) \vee P_1(f(y),y) $
2.$ P_6(y,a) \vee P_2(y,f(y)) $
3.$ \neg P_8(x,y) \vee P_3(f(y),y) $
4.$ \neg P_9(x,y) \vee P_4(y,f(y)) $
5.$ \neg P_1_0(x,y) \vee \neg P_7(y,a) $
Лок-вывод:
6.$ P_5(a,a) \vee \neg P_1_0(x, f(a)) $ лок-резольвента 1 и 5
7.$ \neg P_8(x,a) \vee \neg P_1_0(y,f(a)) $ лок-резольвента 3 и 5
8.$ \neg P_1_0(x,f(a)) \vee \neg P_1_0(y,f(a)) $ лок-резольвента 6 и 7
9.$ P_6(a,a) $ лок-резольвента 8 и 2
10.$ \neg P_9(x,a) $ лок-резольвента 8 и 4
11.$ \square $ лок-резольвента 9 и 10
Я не пойму как получился вывод 6.$ P_5(a,a) \vee \neg P_1_0(x, f(a)) $ лок-резольвента 1 и 5
По правилу лок-резолюции сравниваются две литеры, имеющие наименьшие индексы, в данном случае $ P_1(f(y),y) $ из набора (1) и \neg $ \neg P_7(y,a) $ из набора (5). Эти литеры имеют наименьшие индексы и контрарны. Теперь необходимо их унифицировать. Первое рассогласование это f(y) из литеры $ P_1 $ и y из $ \neg P_7$. Получается подстановка f(y)/y, но переменная y содержится в терме f(y), и значит по определению алгоритма унификации эти литеры не унифицруемы, однако в данном примере как то получена лок-резольвента. И вообще я получил, что этот набор дизъюнктов выполним, а в примере получен пустой дизъюнкт. Объясните, это опечатка в книге или я что то неправильно делаю

Второй вопрос хотел задать именно по алгоритму лок-резолюции. Нужно ли в нем реализовывать алгоритм поглощения, т.е проверять, является ли определенный дизъюнкт поддизъюнктом другого дизъюнкта. Например, в методе насыщения уровня, такая проверка нужна, чтобы не получать повторяющихся дизъюнктов. Или может сам метод лок-резолюции обеспечивает то, что появлющиеся лок-резольвенты не будут поглощаться никакими вышележащими дизъюнктами.
К примеру, даны два дизъюнкта: (Чень Ли Автоматическое доказательство теорем (стр. 99-100))
C=$ \neg P(x) \vee Q(f(x),a) $
D=$ \neg P(h(y)) \vee Q(f(h(y)),a) \vee P(z) $
Необходимо проверить, является ли C поддизъюнктом D
По алгоритму поглощения для D находится подстановка $ \sigma={b/y, c/z} $, далее
$ \neg D\sigma=P(h(b)) \wedge \neg Q(f(h(b)),a) \wedge P(c) $
Теперь загоняем $ \neg D\sigma $ в список W, а С в список U
$ W={P(h(b)), \neg Q(f(h(b)),a), P(c)}$
$ U={\neg P(x) \vee Q(f(x),a)}$
Теперь с помощью обычного резолютивного вывода находим резольвенты, резольвируя каждый дизъюнкт из W c U.
Получается $ U={Q(f(h(b)),a), \neg P(h(b)), Q(f(c), a)} $. И снова резольвируя W c только что полученной U, будет найден пустой дизъюнкт, а это значит что C поглощается D.
Теперь, т.к все резольвенты находятся с помощью лок-резолюции, то я попытался применить ее к алгоритму поглощения.
Однако, если я буду делать то же самое, но вместо обычного вывода, использовать лок-резолюцию, то у меня получится при первом выводе
$ U={Q(f(h(b)),a), Q(f(c), a)} $, т.е здесь отсутствует второй дизъюнкт. И в дальнейшем опять применяя вывод к новой U, я уже не получу пустого дизъюнкта, и это будет говорить о том, что C не будет поддизъюнктом D.
Конечно, если алгоритм поглощения можно не использовать, то вопрос отпадает сам собой.

 Профиль  
                  
 
 Re: Лок-резолюция
Сообщение26.05.2016, 14:31 
Заслуженный участник


16/02/13
4214
Владивосток
Стоило б тщательнее как-то перепечатывать — если, конечно, вам нужен ответ. В первом примере присутствует один предикат, числа нумеруют вхождения.
А насчёт «как» — ну, пишем один прод другим, решаем, какой исключить (вторые из обеих высказываний), сопоставляем переменные ($f(y_1)=y_5, y_1=a$, индексы у переменных тут — номера уравнений), так чтобы исключаемые совпали, подставляем в оставшиеся, кои совокупляем в единое высказывание — вот и всё.

 Профиль  
                  
 
 Re: Лок-резолюция
Сообщение26.05.2016, 17:53 


03/08/15
114
да вообще то тщательнее то некуда), я перепечатал все как в книге, но вот у вас появляются индексы у переменных. С этим я че то не сталкивался , да и в книге про это нету. Т.е нужно еще переменные нумеровать?

 Профиль  
                  
 
 Re: Лок-резолюция
Сообщение27.05.2016, 04:42 
Заслуженный участник


16/02/13
4214
Владивосток
Ну, вообще-то, $\mathstrut_5P(x,y)$ и $P_5(x,y)$ — две большие разницы.
Нумерацию переменных поставил я, чтоб стало понятнее.
Вам нужно найти две формулы $A\vee B, \neg A\vee C$ и вывести из них третью: $B\vee C$. Поскольку речь идёт о предикатах с параметрами, предварительно нужно привести оные к одному виду. В книге этот этап оставляют на ваше усмотрение и потому никак не обозначают.

 Профиль  
                  
 
 Re: Лок-резолюция
Сообщение27.05.2016, 09:19 


03/08/15
114
теперь кажется понял
У меня не получился вывод, потому что получилась подстановка f(y)/y, и переменная содержится в терме. Но если я каждой переменной задам различные индексы, например, по номеру дизъюнкта , то получится $ f(y_1)/y_5$ и уже переменная не содержится в терме и можно найти подстановку.
В общем случае мне, я так понял нужно переписать все так:
1.$ _5P(y_1,a) \vee _1P(f(y_1),y_1) $
2.$ _6P(y_2,a) \vee _2P(y_2,f(y_2)) $
3.$ \neg _8P(x_3,y_3) \vee _3P(f(y_3),y_3)  $
4.$ \neg _9P(x_4,y_4) \vee _4P(y_4,f(y_4)) $
5.$ \neg _1_0P(x_5,y_5) \vee \neg _7P(y_5,a)  $
А в лок-выводе, например, 6 я должен тоже присвоить новые индексы, т.е получается новая строка-новые индексы
6.$ _5P(a,a) \vee \neg _1_0P(x_6, f(a)) $ лок-резольвента 1 и 5

 Профиль  
                  
 
 Re: Лок-резолюция
Сообщение27.05.2016, 11:41 
Заслуженный участник


16/02/13
4214
Владивосток
Для пущей точности: все переменные мыслятся связанными. То бишь, первая, скажем, строчка на самом деле записывается так: $\forall y (P(y,a)\vee P(f(y),y))$. Циферки слева внизу нумеруют вхождения одного и того же предиката и используются для выбора, какой предикат исключать, какой оставить — в вашей книжке про это написано, не стал внимательно читать. $y$, будучи связанной переменной, может называться как угодно, в том числе одинаково в разных строках. Пока не набьёте руку, действительно стоит их обозначать по-разному.

 Профиль  
                  
 
 Re: Лок-резолюция
Сообщение28.05.2016, 17:54 


03/08/15
114
еще хотел задать небольшой вопрос по расстановке индексов.
Есть ли какая нибудь разница если я например буду последовательно расставлять индексы от 1 и до n либо в обратном порядке, т.е будет ли меняться количество шагов до вывода пустого дизъюнкта (если набор дизъюнктов будет невыполним) ю К примеру если я поставлю индексы в прямом порядке то допустим будет выполнено 6 шагов, в обратном например 7 или независимо от этого всегда кол-во шагов будет одинаковым?
а второй вопрос такой
По теореме о полноте лок резолюция всегда выводит пустой дизъюнкт, т.е получается что это гарантия того что как бы я не расставил индексы будет получен пустой дизъюнкт?

 Профиль  
                  
 
 Re: Лок-резолюция
Сообщение28.05.2016, 20:05 
Заслуженный участник


16/02/13
4214
Владивосток
Ну, я почитал минимально и не до конца понял. От расстановки индексов, разумеется, зависит ход вывода, в том числе, по идее, число шагов.
damir_777 в сообщении #1126704 писал(а):
По теореме о полноте
Опять же, до теоремы не дочитал, но коли уж таковая есть, доказана и условия её выполняются, то и выводы должны быть верны :wink: Я ещё почитаю, может, добавлю.

 Профиль  
                  
Показать сообщения за:  Поле сортировки  
Начать новую тему Ответить на тему  [ Сообщений: 8 ] 

Модераторы: Модераторы Математики, Супермодераторы



Кто сейчас на конференции

Сейчас этот форум просматривают: нет зарегистрированных пользователей


Вы не можете начинать темы
Вы не можете отвечать на сообщения
Вы не можете редактировать свои сообщения
Вы не можете удалять свои сообщения
Вы не можете добавлять вложения

Найти:
Powered by phpBB © 2000, 2002, 2005, 2007 phpBB Group