Главная Случайная страница Контакты | Мы поможем в написании вашей работы! | ||
|
Областью действия переменной является утверждение. В пределах утверждения одно и тоже имя принадлежит одной и той же переменной. Два утверждения могут использовать одно имя переменной совершенно различным образом. Правило определения области действия переменной справедливо также в случае рекурсии и в том случае, когда несколько утверждений имеют одну и ту же головную цель. Этот вопрос будет рассмотрен в одной из последующих глав.
Единственным исключением из правила определения области действия переменных является анонимная переменная, например, «_» в цели love(X,_). Каждая анонимная переменная есть отдельная сущность. Она применяется тогда, когда конкретное значение переменной несущественно для данного утверждения. Таким образом, каждая анонимная переменная четко отличается от всех других анонимных переменных и утверждений.
Переменные, отличные от анонимных, называются именованными, а неконкретизированные (переменные, которым не было присвоено значение) называются свободными.
Константы и переменные в Прологе являются термами.
Кроме того, термами являются составные термы или структуры. Составной терм содержит функтор (называемый главным функтором) и последовательность из одного или более аргументов, являющихся термами. Функтор задается своим именем, которое суть атом, и своей арностью или числом аргументов. Синтаксически составные термы имеют вид f(t1,t2,…,tn), где f – имя n-арного функтора, а ti – аргументы. Примеры составных термов: s(0), parents(X,mary), list(a,list(b,nil)).
Предикат цели сопоставляется с предикатами в программе, так что цель всегда будет иметь объект. Цели подобно фактам и правилам, строятся из предикатов и соответственно могут иметь связки. Цели, имеющие связки, называются целями имеющими подцели. Подцели утверждения цели разделяются запятыми точно так же, как условия в правилах. Когда цель введена в программу на Турбо-Прологе, то вся цель является успешной.
Дата публикования: 2015-10-09; Прочитано: 208 | Нарушение авторского права страницы | Мы поможем в написании вашей работы!