Communications of the ACM
Understanding Simple Picture Programs
Understanding Simple Picture Programs
Algorithmic program debugging
Knowledge-based code inspection with ICICLE
IAAI'92 Proceedings of the fourth conference on Innovative applications of artificial intelligence
Hi-index | 0.00 |
TALUS is an automatic program debugging system that both detects and corrects nonsyntactic bugs in student programs written to solve small but nontrivial tasks in pure LISP. TALUS permits significant variability in student solutions by using heuristic methods to recognize different algorithms and formal methods to reason about computational equivalence of program fragments. A theorem prover intensionally represents an infinite database of rewrite rules, thus allowing for unanticipated implementations. TALUS detects bugs using formal methods in both symbolic evaluation and case analysis. Heuristic methods conjecture the exact location of bugs and alterations necessary to correct the bugs. Finally, formal methods establish or disprove these heuristic conjectures, reflecting a generate and test methodology.