Предок (x,z) родитель (х,у), предок (y,z);
Программа на Прологе — это совокупность процедур над определенными данными:
программа:
<процедуры>; [<данные>;]
Описания баз данных на Прологе образуют совокупность описаний данных:
база данных:
<данные>; [<данные>; ... ]
Базы знаний на Прологе описываются наборами фактов и правил определения обобщенных понятий над ними:
база знаний:
<данные>; <правила>;
Вопросы в языке Пролог служат запросами к базам данных и знаний, а также обращениями к процедурам и программам. Примеры вопросов:
? мама (х,вова) ?
Предок (х,вова)
Описания фактов
Факты в языке Пролог описываются в следующей форме:
факт:
<имя>(<арг>[,<арг> ...]);
Описание факта начинается с имени. В роли имен могут использоваться любые последовательности букв и цифр, начинающиеся с буквы;
имя:
<буква>[<буква><цифра> ...]
Буквы могут быть выбраны из русского и латинского алфавитов.
После имени в описаниях фактов задается список аргументов, заключаемых в круглые скобки. В конце описания каждого из фактов ставится точка с запятой.
В роли аргументов могут быть указаны любые слова, словосочетания и числа. Словосочетание - это любая последовательность слов, соединенных знаком подчеркивания.
Словосочетание:
<слово>[<слово> ...]
Слова, как и имена, - это любые последовательности из букв и цифр, начинающиеся с букв:
слово:
<буква>[<буква><цифра> ...]
Числа в данной реализации Пролога - это только целые числа (отрицательные - со знаком минус):
число:
[—]<цифра>[<цифра> ...]
Примеры записи чисел - 0, 1, +3, -25.
С е м а н т и к а : каждый факт в Прологе интерпретируется как некоторое истинное утверждение. Опираясь на эти утверждения, интерпретатор Пролога рассматривает различные вопросы как утверждения, которые должны быть доказаны или опровергнуты исходя из имеющихся фактов и правил.
Дата добавления: 2016-04-06; просмотров: 586;