Математическая логика и теория алгоритмов. Для изучающих компьютерные науки

Запятая между предложениями воспринимается как конъюнкция. Состав­ ной вопрос интерпретируется: найти X,Y, удовлетворяющие двум требованиям: родитель(том,Х) и родитель (X,Y). Конъюнкция коммутативна, поэтому можно вопрос сформулировать и иначе: ?-родитель(Х, ¥ ), родитель(том,Х). Ответ не зависит от порядка в силу того, что система получит для вопроса дизъюнкт: -lpoдитeль(X,Y)v -1родитель(том,Х), который равносилен дизъюнкту: -1родитель(том,Х)у -1родитель(Х,У). На вопрос 3) система ответит X = боб Y = эни; X = боб Y = пат Пользователь ПРОЛОГа может совершенно не знать метод резолюций. Система сама находит ответы. § 12. Введение и использование правил в ПРОЛОГе В качестве расширения рассмотренной в § 12 программы на ПРОЛОГе введем отношение дети, которое обратно отношению родитель. Можно было бы определить дети тем же способом, что и родитель, т.е. представив описок: дети (лиз, том). дети (боб, иам). и так далее. Однако это отношение можно определить прош,е, использовав тот факт, что оно обратно отношению родитель, которое уже определено. Та­ кой способ основан на следуюш,ем логическом утверждении: Для всех X иY Y дети X, если X является родителем Y. Соответствуюш,ее прологовское предложение с тем же смыслом имеет вид: дети (Y,X): - родитель (X,Y). (3.20) Приведенное прологовское предложение (3.20) называется правилом. Предложение родитель (том, лиз). считаюш,ееся фактом, безусловно, истинно. Правила описывают утвержде­ ния, которые могут быть истинными, если выполнены условия. К рассмотренной в параграфе 12 программе добавим еще предложение (3.20). Спросим полученную программу, является ли Лиз отпрыском Тома: ? - дети (лиз, том). 85

RkJQdWJsaXNoZXIy MTY0OTYy