We represent logical implications as rules. For example, the logical assertion that
can be represented by the forward-chaining rule :
Intuitively, such a rule says that whenever we learn a relation (spouse f g) we should immediately conclude (spouse g f). Such forward-chaining (``if-added'' ) rules are generally used to maintain invariants in the knowledge-base.
Algernon also allows backward-chaining (``if-needed'' ) rules. For example,
Intuitively, this rule says that if you need to find an aunt of John then you should look for a sister of a parent of John. Notice that the antecedent of this rule is an access path. All rules in Algernon must define access paths. Thus the implication:
is not allowed since the only way to ``fire'' this rule would be to globally search for all frames which are in a sister relation to other frames.