why [Macro]
Purpose
The why macro generates a top-level explanation (in English) of the support for the truth of a given premise.
Syntax
why premise
Arguments
The why macro is syntactically identical to ask. Its premise argument is a restricted query-forming expression (see ask Remarks), which currently must have the form \mbox{(conceptName instanceId)}.
Value
The why macro returns nil.
Remarks
The Loom explanation facility will be substantially expanded in the future. It is currently limited to queries about the type of an instance. It prints ``Sorry, I should know but I don't'' if the query goes beyond the implemented explanation capability.
Examples
(why (Woman Sue)) -->
SUE is an instance of the concept WOMAN because:
SUE fills the role WIFE attached to the instance FRED; and
The range of relation WIFE is WOMAN.
NIL
See Also
Last modified: Jun 1 1995