Direction is a value attached to every assertion which determines whether inference involving the assertion is done when an assertion is added to the KB, or done in response to a query being asked. There are three possible values for direction: :forward
(inference triggered by the addition of a new assertion), :backward
(inference done in response to a query), and :code
(HL module performs reasoning, assertion not used in regular inference). Most tools that add new assertions to Cyc use the following defaults: GAFs have direction :forward
and rules have direction :backward
.