Forward chaining rules may be defined and redefined incrementally. When redefined all the instantiations of the rule are recreated. This means that during execution of a rulebase the redefinition capability should be used with care as previously fired instantiations will reappear and may fire again.
When a rule is redefined it inherits its
order
(with respect to the
order
conflict resolution tactic) from its initial definition. If this is not required, the rule should be explicitly undefined before being redefined.
A forward chaining rule may be undefined by entering
(undefrule <rule-name>)
A warning will be given if the rule does not exist.
KnowledgeWorks and Prolog User Guide (Unix version) - 6 Dec 2011