{"type":"ScholarlyArticle","title":"Heuristic and Formal Methods in Automatic Program Debugging","authors":[{"name":"William R. Murray","slug":"william-r-murray","given":"William R.","family":"Murray","affiliation":""}],"abstract":"TALUS is an automatic program debugging system that both detects and corrects nonsyntactic bugs in stude nt programs written to solve small but nontrivial tasks in pure LISP. TALUS permits signifi cant variability in student solutions by using heuristic methods to recognize different algor ithm s and formal m e thods to reason about computational equivalence of p rog ram fragments. A theorem prover intensionally re presents an infinite database of rewrite rules, thus allowing for unanticipated implementations. TALUS detects bugs using formal methods in both symbolic eva] uation and case analysis. Heuristic methods conjec ture the exact location of bugs and alterations necessary to correct the bugs. Finally, formal methods es tablish or disprove these heuristic conjectures, reflecting a generate and test methodology.","doi":null,"url":"https://ijcai.org/proceedings/1985/3","pdf":"https://ijcai.org/proceedings/1985/0003.pdf","markdown":"https://ijcai.org/proceedings/1985/3.md","bibtex":"https://ijcai.org/proceedings/1985/bibtex/3","volume":{"slug":"1985","title":"Proceedings of the Ninth International Joint Conference on Artificial Intelligence","short_title":"IJCAI 1985","url":"https://ijcai.org/proceedings/1985/","year":1985,"location":"Los Angeles, California, USA","dates":"","editors":"Aravind Joshi","isbn":"","publisher":"International Joint Conferences on Artificial Intelligence","doi_prefix":""},"section":"AI and Education","track":"AI and Education","number":3,"pages":{"first":15,"last":18},"keywords":[],"videos":[],"references":[],"license_note":"Copyright International Joint Conferences on Artificial Intelligence."}