Базовые понятия языка Пролог

 

Основными понятиями в языке Пролог являются факты, правила и вопросы. Из фактов и правил образуются описания данных, про­цедур и программы на языке Пролог. Вопросы - это основное сред­ство ведения диалога с базами знаний и программами, имеющимися в памяти ЭВМ.

Факты в Прологе служат для описания конкретных данных и простейших сведений. Примеры фактов:

 

мама (зина, вова); - Зина - мама Вовы

папа (миша, вова); - Миша - папа Вовы

 

Группы фактов могут образовывать данные. Совокупность дан­ных, размещаемых на дисках, образуют базы данных. Общее опреде­ление данных в Прологе:

данные:

<факт>; [<факт>;...]

 

Правила используются для описания определений, процедур принятия решений и обработки данных. Примеры использования правил для описания определения понятия «родитель»:

 

родитель (х,у) папа (х,у); - Родитель — это папа или мама

родитель (х,у) мама (х,у);

 

Процедуры образуются из некоторых групп правил. Общая форма описания процедур в Прологе:

процедура:

[<факты>] <правило>; [<правило>; ...]

 

Пример описания рекурсивной процедуры, в которой определя­емое понятие задается через самое себя:

предок (х,у) родитель (х,у);

предок (x,z) родитель (х,у), предок (y,z);

 

Программа на Прологе — это совокупность процедур над опреде­ленными данными:

программа:

<процедуры>; [<данные>;]

 

Описания баз данных на Прологе образуют совокупность описа­ний данных:

база данных:

<данные>; [<данные>; ... ]

 

Базы знаний на Прологе описываются наборами фактов и правил определения обобщенных понятий над ними:

база знаний:

 

<данные>; <правила>;

 

Вопросы в языке Пролог служат запросами к базам данных и знаний, а также обращениями к процедурам и программам. Приме­ры вопросов:

 

? мама (х,вова) ?