8.2 Актуализация производных значений



Актуализацией производных значений общих переменных процесса G называется унификация локальных значений общих переменных (всех) активных акторов процесса G с соответствующими им производными значениями этого процесса.

Встроенный управляющий оператор

copy(V1--Vk)

проверяет возможность актуализации производных значений общих переменных процесса. Если актуализация производных значений возможна, результатом его исполнения становится унификация переменных в составе аргументов V1,...,Vk с соответствующими производными значениями, в противном случае исполнение оператора заканчивается неудачей.

Примечание. Использование оператора сору, в общем случае, может нарушить полноту программы относительно её декларативной семантики.

Пример.

Использование оператора сору. Предположим, что некоторому процессу G принадлежит доказанный актор goal, которому соответствует локальное значение общей переменной х=100.

goal:-
subgoal_a(x).
subgoal_a(100).
subgoal_b:-
[x],
write("Shared Data = ",x).
В результате исполнения предиката subgoaLb процесса G, будет напечатано:

Shared Data = 100



Содержание