Этапы программирвоания на ТП
1. Описание типов данных (domains). Для стандартных типов описание необязательно.
2. Описанеи предикатов (predicates)
3. Объявление некоторых фактов об объектах и отношениях между ними (clauses).
4. Объявление некоторых првид об объектах и отношениях между ними (clauses).
5. Формулировка вопросов об объектах и отношениях между ними (goal или окно диалога).
Декларативный и процедурный смысл программы
Различают два уровня смысла.
Декларативный (описательный) касается только отношений, определяемых программой. Декларативный смысл определяет, что должно быть результатом работы программы. Процедурный смысл определяет как результат получается.
Р:-А, В
Декларативный смысл этого предположения: Р истина, если А и В истинны. Процедурный смысл: чтобы решить Р, сначала надо решить А , а потом В. Способность Пролог-системы прорабатывать многте процедурные детали самостоятельно считается одним из специфических преимуществ Пролога. Этот факт имеет практическое значение , так как декларативные аспектыпрограммы обычно являются более легкими для понимания чем процедурные детали.
Сопоставление
Наиболее важной операцией над термами являетяс соспоставление. Два терма сопоставимы если:
- они идентичны;
- переменные в обоих термах можно переписать в качестве значений объекта (то есть конкретизируют их).
Таким образом, чтобы после подстановки этих объектов в терм вместо переменных 2 терма стали идентичны. Например термы дата (Д, М, 1999) и дата (Д1, май, Х) сопоставимы. С другой стороны дата (Д, М, 1999) и дата (Д1, М1, 1945) не сопоставимы.
Общие правила сопоставимости двух термов таковы:
1. Если С и Т константы, то С и Т сопоставимы только если они являются одними и теми же объектами.
2. Есил С – переменная, Т – произволный объект, то они сопоставимы и С приписывается значение Т.
3. Если С и Т структуры, то они сопоставимы, если: С и Т имеют одинаковый главный функтор; все их составляющие компоненты сопоставимы.