pub fn evaluate_conditional_obligation(
facts: &[NQuin],
party: u64,
condition_pred: u64,
condition_obj: u64,
obligation_obj: u64,
) -> boolExpand description
General dyadic / conditional obligation O(obligation | condition): the obligation
is binding only given the condition holds. Returns true iff the conditional is
satisfied — either the condition does not hold (vacuously satisfied), or it holds
AND the obligation has been fulfilled.
Facts convention: the condition holds iff (party, condition_pred, condition_obj) is
present; the obligation is fulfilled iff (party, q42:fulfilled, obligation_obj) is.
Contrary-to-duty is the special case condition_pred = q42:breached. Zero-heap.