Skip to main content

A generalised query minimisation for program debugging

  • Debugging Logic Programs II
  • Conference paper
  • First Online:
Book cover Automated and Algorithmic Debugging (AADEBUG 1993)

Part of the book series: Lecture Notes in Computer Science ((LNCS,volume 749))

Included in the following conference series:

Abstract

Shapiro proposed an algorithm called ‘Divide-and-Query’ which gives a good solution for query minimisation in the context of algorithmic program debugging. His algorithm applies a half-splitting strategy which repeatedly subdivides an AND-tree representing an incorrect computation under the guidance of an oracle until the bug responsible has been localised. His aim was to minimise the number of queries asked of the oracle, and in general his method approximates well to this ideal. There are cases, however, in which it divides the tree suboptimally with the consequence that more queries are posed than are necessary.

This paper explains why the algorithm may have this inefficiency and presents an improved version which, in the average case, overcomes it. We show that the new algorithm is a special case of measurement guidance by minimum entropy technique adapted from fault diagnosis.

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

Access this chapter

Institutional subscriptions

Preview

Unable to display preview. Download preview PDF.

Unable to display preview. Download preview PDF.

References

  1. de Kleer, J. and Williams, B. C., Diagnosing Multiple Faults, Artificial Intelligence 32, pp. 97–130 (1987).

    Google Scholar 

  2. de Kleer, J.,Using Crude Probability Estimates to Guide Diagnosis, Artificial Intelligence 45,pp.381–391 (1990).

    Google Scholar 

  3. Dershowitz, N. and Lee, Y., Deductive Debugging, Proc. of the Symposium on Logic Programming, San Francisco, pp. 298–306 (1987).

    Google Scholar 

  4. Drabent, W., Nadjm-Tehrani, S. and Maluszynski, J., The Use of Assertions in Algorithmic Debugging, Proc. of FGCS-88, pp. 573–581 (1988).

    Google Scholar 

  5. Freitag, H., A Generic Measurement Proposer, Proc. of the International Workshop on Expert System in Engineering, Springer-Verlag (1990).

    Google Scholar 

  6. Pereira, L. M., Damásio, C. V. and J. J. Alferes, Debugging by Diagnosing Assumptions, Proc. of the 1st International Workshop on Automated and Algorithmic Debugging, Linköping, Sweden, Springer-Verlag (1993).

    Google Scholar 

  7. Pipitone, F., The FIS electronics troubleshooting system, IEEE Computer 19 (7), pp. 68–75 (1986).

    Google Scholar 

  8. Plaisted, D. A., An Efficient Bug Location Algorithm, Proc. of the 2nd International Conference on Logic Programming (1984).

    Google Scholar 

  9. Shapiro, E. Y., Algorithmic Program Debugging, MIT Press (1983).

    Google Scholar 

Download references

Author information

Authors and Affiliations

Authors

Editor information

Peter A. Fritzson

Rights and permissions

Reprints and permissions

Copyright information

© 1993 Springer-Verlag Berlin Heidelberg

About this paper

Cite this paper

Hirunkitti, V., Hogger, C.J. (1993). A generalised query minimisation for program debugging. In: Fritzson, P.A. (eds) Automated and Algorithmic Debugging. AADEBUG 1993. Lecture Notes in Computer Science, vol 749. Springer, Berlin, Heidelberg. https://doi.org/10.1007/BFb0019407

Download citation

  • DOI: https://doi.org/10.1007/BFb0019407

  • Published:

  • Publisher Name: Springer, Berlin, Heidelberg

  • Print ISBN: 978-3-540-57417-0

  • Online ISBN: 978-3-540-48141-6

  • eBook Packages: Springer Book Archive

Publish with us

Policies and ethics