A knowledge based approach to program debugging
By: [by] Yuh-jeng Lee
Contributors: Naval Postgraduate School (U.S.)
Publisher: Naval Postgraduate School
Published: 1989
Place of publication: Monterey, California
Language: eng
Number of pages: 74
Subjects: Debugging in computer science; Computer programming; Computer programs
Description: We are exploring the use of executable specifications in automating the process of debugging logic programs. We have formulated a computer model that encodes programming knowledge including a classification of program bugs, heuristics that analyze and repair program errors, and operational semantics off the language, and is capable of reasoning with programs and their specifications. The realization of our methodology is the Constructive Interpreter which functions as a debugger as well as program synthesizer. It contains three major components: test case generator, bug locator, and bug corrector. The test case generator can generate test data systematically by executing specifications. The bug locator will automatically locate a bug should the program fail to compute an answer that agrees with the specifications. The bug corrector will analyze the nature of the bug and invoke correction heuristics which might involve the use of (1) a deductive theorem prover which will try to construct a proof and deduce sufficient conditions to amend the program, and (2) an inductive program generator which will synthesize the missing part of the program. In this paper, we present our approach and an implementation of the experimental prototype debugger.
Notes: Title from cover.

"Prepared for: Naval Postgraduate School"--Cover.

"September 1989"--Cover.

"NPS52-89-060"--Cover.

Includes bibliographical references (p. 71-74)

"Approved for public release; distribution unlimited"--Cover.

Technical report; 1989.

kmc/kmc 12/1/09.

aq/aq cc:9116 06/06/97