ГОСТ Р ИСО 18629-44 - 2011
(forall (?а ?r ?q) (iff (strict_consumes_quantity ?а ?r ?q)
(and (consumes_quantity ?a ?r ?q)
(nonreplenishable ?r))))))
8.5.3 produces quantity
Некоторое действие производит некоторое количество ?q какого-либо
ресурса тогда и только тогда, когда предоставление ресурса увеличивается на
?q после завершения действия.
(forall (?а ?r ?q) (iff (produces_quantity ?а ?r ?q)
(forall (?q1 ?q2 ?occ ?occl ?occ2)
(implies (and (do ?a ?occ1 ?occ2)
(holds (resource_point ?r ?q1) ?occ1)
(= ?q2 (plus ?q1 ?q)))
(holds (resource_point ?r ?q2) ?occ2))))))
8.5.4 strict_produces quantity
Некоторое действие строго производит некоторое количество какого-либо
ресурса тогда и только тогда, когда не существует других действий,
потребляющих какое-либо его количество.
(forall (?а ?r ?q) (iff (strict_produces_quantity ?а ?r ?q)
(exists (?q)
(and (produces_quantity ?a ?r ?q)
(not (exists (?a2 ?q2)
(and (subactivity ?a2 ?a)
(consumes_quantity ?a2 ?r ?q2)))))))))
8.5.5 uses quantity
Действие использует некоторое количество ?q какого-либо ресурса тогда
и только тогда, когда запрос ресурса равен ?q и предоставление ресурса не
меняется при выполнении действия.
Пример - Например, е случае, когда для строительства нужно пять рабочих,
так как число рабочих не меняется в процессе работы.
(forall (?а ?r ?q) (iff (uses_quantity ?а ?r ?q)
(forall (?q1 ?q2 ?q3 ?occ1 ?occ2)
(implies (and (do ?a ?occ1 ?occ2)
(holds (demand ?a ?r ?q) ?occl))
(holds (resource_point ?r ?ql) ?occ1)
(holds (resource_point ?r ?q2) ?occ2)
(=?q
2
?q1)))
8.5.6 creates
Некоторое действие создает какой-либо ресурс тогда и только тогда, когда
оно производит некоторое количество данного ресурса, и количество ресурса
19