Область действия означенных переменных
Если в различных правилах используются одинаковые переменные, это не одни и те же переменные, Пролог все равно даст им разные имена, при рекурсивном вызове правила, вводится новый комплект переменных. Область действия означенной переменной - текущее правило и все вызванные из него.
Передача перестановки выше по дереву через сцепленные переменные:
Пример:
Пусть весь животный мир состоит из обезьян и тигров:
Жив. (х1) :- обез (х1), тигр (х1)
Обез (х2):- млекоп. (х2), темнее пятна (х2)
Тигр (х3):- млекоп. (х3), темные полосы (х3)
Млекоп (х4):- vol (х4)
Жив. (х)-?
х1=х3=х4=тигр
Означивание х4 при сопоставлении vol х4 означивает все переменные х1 -х4
Вторая подцель будет сопоставляться с аргументом тигр, в базе фактов такой факт есть по цепочке сцеплений на верх передается х=тигр.