Creates a new rule that will trigger when a subclass or instance
of a given class is modified or queried.
- The class associated with the rules. For efficiency purposes, be as specific as possible.
- Rules to be associated with the class. See the rule syntax definition.
(:ADD-RULE Trucks ((engine ?truck ?engine)
(size ?engine ?engine-size)
(:test (:LISP (> ?engine-size 400)))
(wheel ?truck wheel)
(size wheel "P195/65R15")))
(:ADD-RULE Cats ((likes ?cat petting)
(age ?cat ?age)
(:test (:LISP (< ?age 6)))))
Succeeds if the rule is successfully created.
Fails if the rule can not be created.
Be aware that under non-monotonic reasoning (i.e. facts are deleted from the KB)
rule continuations may be present,
but no longer applicable, and may derive incorrect results after
more facts are added.
The class associated with the rules must already exist.
Algernon Documentation Central
Algernon home page