Математическая логика и теория алгоритмов. Для изучающих компьютерные науки
1) в первой выполняемой резолюции используется дизъюнкт, построенный для вопроса; 2) в каждой последующей резолюции должна участвовать резольвента предыдущей резолюции. В ПРОЛОГе имеются (нелогические) операторы, позволяющие управлять решением задачи, отсекая ненужные ветви поиска. Однако нужно помнить о замечании 3.1 (в параграфе 10 этой главы). Может оказаться, что происходит отсечение, при котором теряется нужный для дальнейшего дизъюнкт, и процесс поиска может либо не завершится, либо привести к неправильному результату. Кроме того, нужно помнить о неразрешимости логики предикатов, см. теорему 2.10. Из этой теоремы, в частности, следует, что для решения некоторой задачи, возможно, не существует разрешающей процедуры (но ПРОЛОГ об этом не знает) и алгоритм, основанный на методе резолюций, не сможет решить рас сматриваемую задачу, и будет считать безостановочно. Мы считаем, что задача, сформулированная на некотором языке программирования, должна быть реше на компьютером, тогда как в логике и математике имеются проблемы, для ко торых нет алгоритмического решения, и которые, таким образом, не могут быть решены компьютером. Язык ПРОЛОГ находит существенное использование: - при описании и решении задач на графах; - в экспертных системах (системы испытаний, медицинская диагностика, нахождение неисправностей в технических системах); - в системах искусственного интеллекта (решение задач, доказательство теорем, различные игры, такие, как шахматы, кубики); - при создании динамических реляционных баз данных; - при создании систем перевода с одного языка на другой; - в системах управления производственными процессами; - при создании пакетов символьных вычислений для решения уравнений, дифференцирования и интегрирования; - при создании специализированных и общих вопросно-ответных систем. ПРОЛОГ создавался как специализированный язык, предназначенный в первую очередь для решения задач, относящихся к области искусственного ин теллекта. Метод резолюций используется не только в языке ПРОЛОГ, но и в некото рых системах управления базами данных и некоторых специализированных экспертных системах. Программа на Турбо-ПРОЛОГе может содержать сле дующие разделы: /* Комментарии */ domains <описания доменов> database <описания предикатов динамической базы данных> predicates <описания предикатов> 89
Made with FlippingBook
RkJQdWJsaXNoZXIy MTY0OTYy