Incorporating probabilistic reasoning in a reactive program debugging system
Lisa J. Burnell, S.E. Talbot · 2002
Autonomous, reactive program debugging involves two fundamental activities: diagnosis and a level of automated program understanding sufficient to supply information to the diagnostic reasoner. The authors describe a novel approach to the problem of reactively diagnosing program errors in a real-world environment. In particular, the DAACS (Dump Analysis and Consulting System) prototype analyzes errors that cause an assembler language program to terminate execution abnormally. DAACS integrates traditional compiler design, heuristic and logic-based techniques for program understanding with probabilistic reasoning for diagnostic inference. The probabilistic reasoner, implemented as a belief network, controls inference and determines plausible, sometimes certain, diagnoses. The use of a belief network allows diagnosis to continue past that which can be proven with certainty.>