Efficient Forward Chaining for Declarative Rules in a Multi-Agent Modelling Language
Another primitive that is implemented using assumptions is total, which finds the total value of a variable for all bindings such that its subclause is known to be true. If further clauses are asserted to a database, the subclause may succeed with more bindings yielding a different total. Assumptions are also used to implement primitives which find the maximum, minimum or average value of a variable, or generate a sorted list of all bindings of a variable.
The assumptions mechanism is designed to ensure that all valid deductions are made and any invalid deductions that have been made are retracted. The efficiency of the basic mechanism is improved by reducing the likelihood that invalid deductions are made in the first place.
Generated with CERN WebMaker