Proceedings

Abstract Interpretation of Programs for Model-Based Debugging

Download BibTeX Cite

Proceedings of the Twentieth International Joint Conference on Artificial Intelligence. .

© 2007 International Joint Conferences on Artificial Intelligence

Abstract

Developing model-based automatic debugging strategies has been an active research area for several years. We present a model-based debugging approach that is based on Abstract Interpretation, a technique borrowed from program analysis. The Abstract Interpretation mechanism is integrated with a classical model-based reasoning engine. We test the approach on sample programs and provide the first experimental comparison with earlier models used for debugging. The results show that the Abstract Interpretation based model provides more precise explanations than previous models or standard non-model based approaches.

  1. Claudia Böttcher. No faults in structure? How to diag- nose hidden interaction. In Proc. IJCAI, 1995.
  2. Franc ¸ois Bourdoncle. Abstract debugging of higher- order imperative languages. In Proc. SIGPLAN Conf. PLDI, pages 46-55, 1993.
  3. Sagar Chaki, Alex Groce, and Ofer Strichman. Explain- ing abstract counterexamples. In Richard N. Taylor and Matthew B. Dwyer, editors, SIGSOFT FSE, pages 73- 82. ACM, 2004.
  4. Edmund Clarke, Daniel Kroening, Natasha Sharygina, and Karen Yorav. Predicate abstraction of ANSI-C pro- grams using SAT. Formal Methods in System Design, 25(2-3):105-127, 2004.
  5. Holger Cleve and Andreas Zeller. Locating causes of program failures. In Gruia-Catalin Roman, William G. Griswold, and Bashar Nuseibeh, editors, ICSE, pages 342-351. ACM, 2005.
  6. Luca Console, Gerhard Friedrich, and Daniele Thesei- der Dupré. Model-based diagnosis meets error diagno- sis in logic programs. In Proc. 13 th IJCAI, pages 1494- 1499, 1993. IJCAI
  7. James Corbett, Matthew Dwyer, John Hatcliff, Co- rina Pasareanu, Robby, Shawn Laubach, and Hongjun Zheng. Bandera: Extracting finite-state models from Java source code. In Proc.ICSE-00, 2000.
  8. Patrick Cousot and Radhia Cousot. Abstract interpreta- tion: A unified lattice model for static analysis of pro- grams by construction of approximation of fixpoints. In POPL'77, pages 238-252, 1977.
  9. Michael D. Ernst, Adam Czeisler, William G. Griswold, and David Notkin. Quickly detecting relevant program invariants. In Proc.ICSE-00, pages 449-458, 2000.
  10. Gerhard Friedrich, Markus Stumptner, and Franz Wotawa. Model-based diagnosis of hardware designs. In Wolfgang Wahlster, editor, ECAI, pages 491-495.
  11. Alex Groce and Willem Visser. What went wrong: Explaining counterexamples. In Thomas Ball and Sriram K. Rajamani, editors, SPIN, volume 2648 of Lecture Notes in Computer Science, pages 121-135. Springer-Verlag, 2003.
  12. Haifeng He and Neelam Gupta. Automated debugging using path-based weakest preconditions. In Michel Wer- melinger and Tiziana Margaria, editors, FASE, volume 2984 of Lecture Notes in Computer Science, pages 267- 280. Springer-Verlag, 2004.
  13. Daniel Köb, Rong Chen, and Franz Wotawa. Abstract model refinement for model-based program debugging. In Proc. DX'05, pages 7-12, 2005.
  14. Cristinel Mateis, Markus Stumptner, and Franz Wotawa. A Value-Based Diagnosis Model for Java Programs. In Proc. DX'00 Workshop, 2000.
  15. Wolfgang Mayer and Markus Stumptner. Model-based debugging using multiple abstract models. In Proc. AADEBUG '03 Workshop, pages 55-70, 2003.
  16. Wolfgang Mayer and Markus Stumptner. Debugging program loops using approximate modeling. In Proc. ECAI, 2004.
  17. Wolfgang Mayer and Markus Stumptner. High level ob- servations in java debugging. In Proc. ECAI, 2004.
  18. Wolfgang Mayer and Markus Stumptner. Model-based debugging -state of the art and future challenges. In Workshop on Verification and Debugging, 2006.
  19. Raymond Reiter. A theory of diagnosis from first prin- ciples. Artificial Intelligence, 32(1):57-95, 1987.
  20. Frank Tip. A Survey of Program Slicing Techniques. Journal of Programming Languages, 3(3):121-189, 1995.
  21. Dominik Wieland. Model-Based Debugging of Java Programs Using Dependencies. PhD thesis, Technische Universität Wien, 2001.
  22. Franz Wotawa. On the Relationship between Model- Based Debugging and Program Slicing. Artificial Intel- ligence, 135(1-2):124-143, 2002.

References were extracted automatically from the PDF and may contain errors.

Welcome Future Conferences AI Journal Division IJCAI Proceedings About IJCAI IJCAI Awards