Предикатный символ

Термы

Объектные константы

Функции

Объектные переменные

Объектные переменные или просто переменные обозначаются строкой символов, начинающейся со строчной буквы и записываемой курсивом. Областью значений каждой переменной является множество констант, в общем случае даже бесконечное. Как эта область значений очерчивается, будет ясно из дальнейшего.

 

 

Для того чтобы задать такие отношения между объектами, когда в точностиодин объект соответствует множеству других объектов, используют функций. Например, если объектами являются двоичные цифры 0 и 1 и десятичные цифры 0, 1, ..., 9, то любому набору из трех двоичных цифр, представляющему двоичное число, можно однозначно сопоставить десятичную цифру. Еслидвоичные цифры сопоставить с переменными х, у, z, а десятичные с переменной q, то рассмотренное отношение между двоичными и десятичными цифрами можно представить в виде функции преобразование_2_в_10(х, у, z). Выражение преобразование_2_в_10 называют функциональным символом. Так при х =1, у = 0, z = 1 спомощью функции преобразование_2_в_10 (х, у, z) получимзначение функции, равное q = 5. Следует заметить, что функция в логике предикатов не предполагает обязательного наличия какого-либо алгоритма вычисления значения функции по ее аргументам. Она лишь задает с помощью констант и переменных определенное отношение между объектами, соответствующими ее аргументам, и каким-то одним объектом.

 

Каждая объектная константа, называемая в дальнейшем, если это не вызывает путаницы, просто константой, взаимно однозначно сопоставляется в процессе интерпретации с каким-либо одним объектом среды. Константа обозначается строкой символов, начинающейся с прописной буквы, и, чаще всего, эта строка символов совпадает с именем или наименованием объекта и записывается курсивом, например, Владимир, Чудовище, Кот и т. д.

 

Константы, переменные и функции являются термами. Выбор констант, переменных и функций для данной среды полностью является прерогативой того, кто использует логику предикатов. Предположим, например, что наша среда имеет такие объекты, как крылья и птицы, и нам известно, что "птицы имеют крылья". Спрашивается, как выразить это знание? Введем константы, обозначающие конкретный вид птиц, например, Воробей, Синица, Соловей, и константу Крылья, обозначающую объект крылья. Введем также переменную х, обозначающую все объекты, которые являются птицами; функциональный символ имеет_крылья ставит во взаимно-однозначное соответствие любой птице объект крылья. Тогда функция имеет_крылья (x) задает отношение между объектом крылья и птицей х.

Если, например, х = Воробей, то имеет_крылья (Воробей) = Крылья. Но это не единственная возможность выразить отношения между птицами и крыльями. Функция может не содержать аргументов, т.е. иметь только один функциональный символ. Термы, не содержащие аргументов, т.е. константы, переменные ифункции без аргументов, называют элементарными термами.

 

С помощью предикатов задаются отношения между объектами. Такие отношения задаются выражением, начинающимся, как и вслучае с функцией, строкой символов, записанных курсивом, первая буква которой строчная. Эта строка символов называется предикатным символом. За ним в скобках следует упорядоченный набор переменных или констант, соответствующих объектам, находящимся в поименованном отношении. Так, например, если два человека Владимир и Марина являются братом исестрой, то это отношение родства может быть выражено с помощью конструкции брат_и_сестра (Владимир, Марина), где брат_и_сестра является предикатным символом, а (Владимир, Марина) — упорядоченным набором объектных констант. Конструкция брат_и_сестра (Владимир, Марина) является предикатом, способным принимать одно из двух значений Истина или Ложь. В случае истинного значения предиката будем говорить также, что отношение, задаваемое предикатом, имеет место, а в случае ложного — не имеет места.

Отношение между птицами и крыльями, выраженное выше с помощью функции, может быть выражено и с помощью предиката крылья (х), который истинен, если это отношение выполняется. Это может быть, например, когда х = Воробей, т.е. когда истинен предикат крылья (Воробей).