next up previous contents index
Next: Rule Completion Up: Inference in Algernon Previous: Inference in Algernon




At a high level, processing a query (or assertion) consists of applying all accessible rules (see the discussion of :rules and :srules above). Applying any rule consists simply of querying its antecedent and then (if the query of the antecedent succeeds) asserting its consequent. One important complication to this simple picture is the idea of partitions.

Intuitively, a partition is a part of the knowledge-base which is somehow internally cohesive and distinct from the rest of the knowledge-base. Operationally, a partition limits rule chaining; rule chaining is always cut off at partitional boundaries. Assertions into other partitions are queued and their forward-chaining rules  are not applied until their partition is updated. Partitions are currently updated just before operations are performed in them.

Micheal S. Hewett
Tue Oct 29 11:15:33 CST 1996