Skip to main content
Log in

Algorithmic Debugging and Hypothetical Reasoning

  • Published:
Automated Software Engineering Aims and scope Submit manuscript

Abstract

This paper presents a generalization of Shapiro style algorithmic debugging for generalized Horn clause intuitionistic logic. This logic offers hypothetical reasoning and negation is defined not by failure but by inconsistency. We extend Shapiro's notion of intended interpretation, symptoms and errors and give formal results paralleling those known for definite clauses. We also show how a corresponding diagnosis module for RISC- a logic programming system for generalized Horn clause intuitionistic logic-can be defined by meta interpretation. In contrast to Shapiro's PROLOG modules ours work independently of the specific computation rule that in RISC may be specified by the user.

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

Access this article

Price excludes VAT (USA)
Tax calculation will be finalised during checkout.

Instant access to the full article PDF.

Similar content being viewed by others

References

  • Av-Ron, E. 1984. Top-down diagnosis ofProlog programs. Master's thesis, Weizmann Institute of Science, Rehovot, Israel.

    Google Scholar 

  • Beckstein, C. 1988. Zur Logik der Logik-Programmierung—Ein konstruktiver Ansatz, Informatik Fachberichte, Vol. 199, Springer-Verlag.

  • Beckstein, C. 1996. Begründungsverwaltung: Grundlagen, Systeme und Algorithmen. Teubner-Texte zur Informatik, Leipzig: Teubner-Verlag.

    Google Scholar 

  • Beckstein, C. and Klausner, J. 1995. An abstract machine for the compilation of logic programs that can guess. In Proceedings of the Workshop on Sequential Implementation Technologies for Logic Programming Languages. Held in association with the 1995 International Logic Programming Symposium, Portland, Oregon.

  • Beckstein, C. and Stolle, R., and Tobermann, G. 1996. Meta-programming for generalized horn clause logic. In Proceedings of the Workshop on Metaprogramming and Metareasoning in Logic, META96, Held in association with the 1996 Joint International Conference and Symposium on Logic Programming, JICSLP-96, Bonn.

  • Beckstein, C. and Tobermann, G. 1992. Evolutionary logic programming with Risc. In Proceedings of the Post-Conference Workshop on Logic Programming Environments (JICSLP 92), available via ftp: faui80.unierlangen.de: pub/papers/memos/immd8-92-13.ps.gz, Washington D.C., pp. 16–21.

  • Byrd, L. 1980. Understanding the control flow of Prolog programs. In Proceedings of the Logic Programming Workshop, Debrecen, pp. 127–138.

  • Callebaut, A. and Demoen, B. 1990. Program source as model for debugging in Prolog. In Proc. of the Seventh International Conference on Logic Programming.

  • de Kleer, J. 1986. 1. An assumption-based TMS, 2. Extending the ATMS, 3. Problem solving with the ATMS. Artificial Intelligence, 28:127–224.

    Google Scholar 

  • Deville, Y. 1990. Logic Programming: Systematic Program Development. Addison Wesley.

  • Ducassé, M. 1992. An extendible trace analyser to support automated debugging. Ph.D. thesis, University of Rennes, France, Report 758.

    Google Scholar 

  • Ducassé, M. 1993. A pragmatic survey of automated debugging. In, Peter A. Fritzson, editor, Automated and Algorithmic Debugging, First International Workshop, AADEBUG'93, Linköping, Sweden, May 1993, Proceedings, http://ftp.irisa.fr/local/lande/md-aadebug93.ps.gz, Springer-Verlag, LNCS 749, pp. 1–15.

    Google Scholar 

  • Ferrand, G. 1987. Error diagnosis in logic programming, an adaption of E.Y. Shapiro's Method. Journal of Logic Programming, 4:177–189.

    Google Scholar 

  • Gabbay, D.M. 1992. Elements of algorithmic proof. In S. Abramsky, D.M. Gabbay, and T.S.E. Maibaum, editors, Handbook of Logic in Computer Science, 2:331–414 Oxford: Clarendon Press, Background: Computational Structures, Chap. 3.

    Google Scholar 

  • Gabbay, D.M. and Sergot, M.J. 1986. Negation as inconsistency I. The Journal of Logic Programming, 3(1):1–36.

    Google Scholar 

  • Hill, P.M. and Lloyd, J.W. 1989. Analysis of Meta-Programs. In H. Abramson and M.H. Rogers, editors, Proceedings of the Workshop on Meta-Programming in Logic Programming, pp. 23–51

  • Huntbach, M.M. 1989. Interactive program debugging and synthesis, Ph.D. thesis, University of Sussex.

  • Lichtenstein, Y. and Shapiro, E. 1988. Abstract algorithmic debugging. In Robert, A. Kowalski and Kenneth, A. Bowen, editors, Proceedings of the Fifth International Conference and Symposium on Logic Programming, ALP, IEEE, Seattle: The MIT Press, pp. 512–531.

    Google Scholar 

  • Lloyd, J.W. 1987. Foundations of Logic Programming, Springer-Verlag, Berlin (second extended).

    Google Scholar 

  • McCarty, L. Thorne. 1988a. Clausal intuitionistic logic I. Fixed-point semantics. The Journal of Logic Programming, 5(1):1–32.

    Google Scholar 

  • McCarty, L. Thorne. 1988b. Clausal intuitionistic logic II. Tableau proof procedures. The Journal of Logic Programming, 5(2):93–132.

    Google Scholar 

  • Naish, L., Dart, P.W., and Zobel, J. 1989. The NU-prolog debugging environment. In, Giorgio Levi and Maurizio Martelli, editors, Proceedings of the Sixth International Conference on Logic Programming, Lisbon: The MIT Press, pp. 521–536.

    Google Scholar 

  • Pereira, L.M. 1986. Rational debugging in logic programming. In Proc. Third International Logic Programming Conference, LNCS 225, Springer-Verlag, pp. 203–210.

  • Shahmehri, N., Kamkar, M., and Fritzson, P. 1993. A pragmatic survey of automated debugging. In Peter A. Fritzson, editor, Automated and Algorithmic Debugging, First International Workshop, AADEBUG'93, Linköping, Sweden, Proceedings, LNCS 749, Springer-Verlag, pp. 16–39.

  • Shapiro, E.Y. 1982. Algorithmic program debugging. ACM Distinguished Dissertation, Cambridge, Massachusetts: MIT Press.

    Google Scholar 

  • Tobermann, G. 1994. Verallgemeinerte Hornklausellogik: vom logischen Kalkül zum Logik-Programmiersystem. Ph.D. thesis, Universität Erlangen-Nürnberg.

  • Tobermann, G. and Beckstein, C. 1993. What's in a trace: The box model revisited. In Peter A. Fritzson, editor, Automated and Algorithmic Debugging, First International Workshop, AADEBUG'93, Linköping, Sweden, Proceedings, LNCS 749, Springer-Verlag, pp. 171–187.

Download references

Author information

Authors and Affiliations

Authors

Rights and permissions

Reprints and permissions

About this article

Cite this article

Beckstein, C., Tobermann, G. Algorithmic Debugging and Hypothetical Reasoning. Automated Software Engineering 4, 151–178 (1997). https://doi.org/10.1023/A:1008633100749

Download citation

  • Issue Date:

  • DOI: https://doi.org/10.1023/A:1008633100749

Navigation