Skip to main content

A Comparative Study of Algorithmic Debugging Strategies

  • Conference paper
Logic-Based Program Synthesis and Transformation (LOPSTR 2006)

Part of the book series: Lecture Notes in Computer Science ((LNTCS,volume 4407))

Abstract

Algorithmic debugging is a debugging technique that has been extended to practically all programming paradigms. It is based on the answers of the programmer to a series of questions generated automatically by the algorithmic debugger. Therefore, the performance of the technique is strongly dependent on the number and the complexity of these questions. In this work we overview and compare current strategies for algorithmic debugging and we introduce some new strategies and discuss their advantages over previous approaches.

This work has been partially supported by the EU (FEDER) and the Spanish MEC under grant TIN2005-09207-C03-02, by the ICT for EU-India Cross-Cultural Dissemination Project ALA/95/23/2003/077-054, and by the Vicerrectorado de Innovación y Desarrollo de la UPV under project TAMAT ref 5771.

This is a preview of subscription content, log in via an institution to check access.

Access this chapter

Chapter
USD 29.95
Price excludes VAT (USA)
  • Available as PDF
  • Read on any device
  • Instant download
  • Own it forever
eBook
USD 39.99
Price excludes VAT (USA)
  • Available as PDF
  • Read on any device
  • Instant download
  • Own it forever
Softcover Book
USD 54.99
Price excludes VAT (USA)
  • Compact, lightweight edition
  • Dispatched in 3 to 5 business days
  • Free shipping worldwide - see info

Tax calculation will be finalised at checkout

Purchases are for personal use only

Institutional subscriptions

Preview

Unable to display preview. Download preview PDF.

Unable to display preview. Download preview PDF.

References

  1. Av-Ron, E.: Top-Down Diagnosis of Prolog Programs. PhD thesis, Weizmanm Institute (1984)

    Google Scholar 

  2. Binks, D.: Declarative Debugging in Gödel. PhD thesis, University of Bristol (1995)

    Google Scholar 

  3. Caballero, R.: A Declarative Debugger of Incorrect Answers for Constraint Functional-Logic Programs. In: Proc. of the 2005 ACM SIGPLAN Workshop on Curry and Functional Logic Programming (WCFLP’05), Tallinn, Estonia, pp. 8–13. ACM Press, New York (2005), doi:10.1145/1085099.1085102

    Chapter  Google Scholar 

  4. Caballero, R.: Algorithmic Debugging of Java Programs. In: Proc. of the 2006 Workshop on Functional Logic Programming (WFLP’06), Madrid, Spain, pp. 63–76. Electronic Notes in Theoretical Computer Science (2006)

    Google Scholar 

  5. Conway, T., Henderson, F., Somogyi, Z.: Code Generation for Mercury. In: Proc. of the International Logic Programming Symposium, pp. 242–256 (1995), citeseer.ist.psu.edu/conway94code.html

  6. Davie, T., Chitil, O.: Hat-delta: One Right Does Make a Wrong. In: Seventh Symposium on Trends in Functional Programming, TFP 06, April (2006)

    Google Scholar 

  7. Fritzson, P., Shahmehri, N., Kamkar, M., Gyimóthy, T.: Generalized Algorithmic Debugging and Testing. LOPLAS 1(4), 303–322 (1992)

    Article  Google Scholar 

  8. Hirunkitti, V., Hogger, C.J.: A Generalised Query Minimisation for Program Debugging. In: Fritzson, P.A. (ed.) AADEBUG 1993. LNCS, vol. 749, pp. 153–170. Springer, Heidelberg (1993)

    Chapter  Google Scholar 

  9. Kokai, G., Nilson, J., Niss, C.: GIDTS: A Graphical Programming Environment for Prolog. In: Workshop on Program Analysis For Software Tools and Engineering (PASTE’99), pp. 95–104. ACM Press, New York (1999), citeseer.ist.psu.edu/248106.html

    Google Scholar 

  10. MacLarty, I.: Practical Declarative Debugging of Mercury Programs. PhD thesis, Department of Computer Science and Software Engineering, The University of Melbourne (2005)

    Google Scholar 

  11. Maeji, M., Kanamori, T.: Top-Down Zooming Diagnosis of Logic Programs. Technical Report TR-290, ICOT, Japan (1987)

    Google Scholar 

  12. Naish, L.: A Declarative Debugging Scheme. Journal of Functional and Logic Programming 1997(3) (1997), citeseer.ist.psu.edu/article/naish97declarative.html

  13. Naish, L.: A Three-Valued Declarative Debugging Scheme. In: Proc. of Workshop on Logic Programming Environments (LPE’97), pp. 1–12 (1997), citeseer.ist.psu.edu/naish97threevalued.html

  14. Nilsson, H., Fritzson, P.: Algorithmic Debugging for Lazy Functional Languages. Journal of Functional Programming 4(3), 337–370 (1994)

    Article  Google Scholar 

  15. Pereira, L.M.: Rational Debugging in Logic Programming. In: Shapiro, E. (ed.) Third International Conference on Logic Programming. LNCS, vol. 225, pp. 203–210. Springer, Heidelberg (1986)

    Google Scholar 

  16. Shapiro, E.Y.: Algorithmic Program Debugging. MIT Press, Cambridge (1982)

    Google Scholar 

  17. Silva, J.: A Classification of Algorithmic Debugging Strategies. Technical Report DSIC-II/12/06, UPV, Available from URL (2006), http://www.dsic.upv.es/~jsilva/research.htm#techs

  18. Silva, J., Chitil, O.: Combining Algorithmic Debugging and Program Slicing. In: Proc. of 8th ACM-SIGPLAN International Symposium on Principles and Practice of Declarative Programming (PPDP’06), pp. 157–166. ACM Press, New York (2006)

    Chapter  Google Scholar 

  19. Wallace, M., Chitil, O., Brehm, T., Runciman, C.: Multiple-View Tracing for Haskell: a New Hat. In: Proc. of the 2001 ACM SIGPLAN Haskell Workshop, pp. 151–170. Universiteit Utrecht UU-CS-2001-23. ACM Press, New York (2001)

    Google Scholar 

Download references

Author information

Authors and Affiliations

Authors

Editor information

Germán Puebla

Rights and permissions

Reprints and permissions

Copyright information

© 2007 Springer Berlin Heidelberg

About this paper

Cite this paper

Silva, J. (2007). A Comparative Study of Algorithmic Debugging Strategies. In: Puebla, G. (eds) Logic-Based Program Synthesis and Transformation. LOPSTR 2006. Lecture Notes in Computer Science, vol 4407. Springer, Berlin, Heidelberg. https://doi.org/10.1007/978-3-540-71410-1_11

Download citation

  • DOI: https://doi.org/10.1007/978-3-540-71410-1_11

  • Publisher Name: Springer, Berlin, Heidelberg

  • Print ISBN: 978-3-540-71409-5

  • Online ISBN: 978-3-540-71410-1

  • eBook Packages: Computer ScienceComputer Science (R0)

Publish with us

Policies and ethics