Cтраница 2
Базисными единицами в Пролог-программе являются константы, переменные и структуры. Константа представляет собой имя, а переменная - объект данных, который может связываться с другими объектами данных. [16]
При использовании в Пролог-программе списков с произвольным числом элементов используется метод разделения списка на голову и хвост. Этот метод обеспечивает рекурсивную обработку списка. [17]
Достаточно описать в виде Пролог-программы какое-либо рекурсивно перечислимое, но неразрешимое множество. [18]
Различают два типа смысла пролог-программ: декларативный и процедурный. [19]
Связь между пролог-программой - и различными файлами. [20] |
В каждый момент выполнения пролог-программы лишь два файла являются активными:: один для ввода, другой - для вывода. Эти два файла называются текущим входным потоком и текущим выходным потоком соответственно. В начальный момент эти два потока соответствуют терминалу. [21]
Декларативная точка зрения на Пролог-программу предполагает рассмотрение ее в виде набора объектов данных. Вся программа целиком называется базой данных. Это название отражает то обстоятельство, что каждый объект Пролог-программы представляет собой объект данных. Факты, правила, заголовки правил, цели-все они, на уровне синтаксиса, являются просто структурами. Мы имеем некоторую словарную зону, позволяющую нам распознавать контекст, в котором используются эти структуры: факт есть структура для утверждения; цель есть структура для вопроса. [22]
В этой главе даны компоненты Пролог-программ. Продемонстрировано использование этих компонентов в маленькой, но полноценной программе, которая является базой данных о людях. Показано как извлекается информация из этой базы данных. Подобная информация может быть представлена многими различными способами: здесь иллюстрируется, как удачно выбранное представление облегчает интерпретацию извлеченной информации. [23]
Таким образом, подходящей интерпретацией пролог-программы в математических терминах будет следующая: пролог-система рассматривает факты и правила в качестве множества аксиом, а вопрос пользователя - Как теорему, затем она пытается доказать эту теорему, т.е. показать, что ее можно логически вывести из аксиом. [24]
Более того, можно указать конкретную Пролог-программу, для которой не существует интерпретатора. [25]
Предикат belongs-to часто используется в Пролог-программах и иногда употребляется под именем member или member-of. С его помощью проверяют, является ли данный объект элементом определенного списка. [26]
Как мы уже говорили, в корректной Пролог-программе экспортируемые переменные отрицательных базовых конъюнкций должны появляться слева от отрицания. [27]
Следующий пример иллюстрирует другой случай - неоднозначность Пролог-программы с отрицанием. [28]
Процедурно-блочная модель дает картину того, как выполняется Пролог-программа. [29]
Клоксин и Меллиш ( 1981 г.) приводят пролог-программу, которая преобразует предложения исчисления предикатов первого порядка в форму предложений. [30]