Программирование на Турбо-Прологе


Программирование на Турбо-Прологе - стр. 3


При  нахождении  такого факта после соответствующей подстановки переменных Пролог переходит к анализу следующей цели  при  условии, что предыдущая достигнута (доказана). Если некоторая цель последняя, доказательство заканчивается. При отсутствии нужных фактов, но наличии  правила вывода,  которое могло быть применено,  цель заменяется условием этого правила с соответствующей подстановкой переменных.  Теперь  условием выполнения цели становится доказательство условия (правой части) правила вывода. Процесс нахождения соответствия между целью и фактом или правилом называется  у н и ф и к а ц и е й.  В ходе унификации Пролог ищет все альтернативные решения.
        Программа Турбо-Пролога включает определенные разделы,  не все из которых являются обязательными:
     domains
         /*(домены) - раздел объявлений*/;
     database
        /* описания предикатов динамической базы данных */
     predicates
       /* описания предикатов */
     goal
       /* целевое утверждение */
     clauses
       /* утверждения - факты и правила */
     В программе по крайней мере должны быть разделы predicates и clauses.
     Раздел domains напоминает объявление данных в традиционных (императивных) языках, например таких, как Паскаль и Си. Существуют следующие типы доменов:
     char (символьный),
     integer (целый),
     real (вещественный),
     string (строковый),
     symbol (для цепочки из букв, цифр и символов подчеркивания с первой строчной буквой либо цепочки знаков в двойных кавычках),
     file (файловый).
        По отношению к именам объектов ( идентификаторам )  в  Прологе используются следующие правила :
     1) имя может включать латинские буквы, цифры и символ подчеркивания, причем первым символом не должна быть цифра;
     2) имена символических констант  должны  начинаться  со  строчной буквы;
3) в имени можно использовать одновременно и строчные и прописные буквы.
     Рассмотрим примеры программ на языке Турбо-Пролог.
     Пример 1.Родственные отношения



- Начало -  - Назад -  - Вперед -



Книжный магазин