A methodology is presented for building knowledge-based systems that reason by explaining. The methodology is the basis for RATIONALE, a tool-implemented in Quintus Prolog- that ties together the processes of knowledge acquisition,expert system construction, and explanation of system reasoning. RATIONALE integrates explanations with reasoning by using domain knowledge together with explicitly represented strategies. Reasoning proceeds by constructing a hypothesis tree whose root contains the most general diagnosis of the expert system. Guided by a focusing algorithm, the tree branches into more specific hypotheses that explain the more detailed symptoms provided by the user. As the expert system is used, the hypothesis tree also serves as a dynamically generated explanation tree. >
['Suhayya Abu-Hakima', 'Franz Oppacher']
RATIONALE: reasoning by explaining