Abstract
Our debugging method applies to positive logic programs, under the leftmost selection rule. All our results can easily be extended to local selection rules [27].
A more interesting extension is related to the overall PROLOG computation rule, including the depth-first search based on the clause ordering. Abstract debugging can be based on a PROLOG version of the semantic framework in
Abstract debugging can be viewed as yet another program verification method, where we are concerned with partial correctness properties and the specification is extensional. An interesting problem is that of better understanding the relation among the various techniques for proving program properties, namely debugging, verification and abstract interpretation.
Preview
Unable to display preview. Download preview PDF.
References
K. R. Apt. Introduction to Logic Programming. In J. van Leeuwen, editor, Handbook of Theoretical Computer Science, volume B: Formal Models and Semantics, pages 495–574. Elsevier, Amsterdam and The MIT Press, Cambridge, 1990.
A. Bossi, M. Bugliesi, and M. Fabris. Fixpoint semantics for PROLOG. In D. S. Warren, editor, Proc. Tenth Int'l Conf. on Logic Programming, pages 374–389. The MIT Press, Cambridge, Mass., 1993.
A. Bossi, M. Gabbrielli, G. Levi, and M. Martelli. The s-semantics approach: Theory and applications. Journal of Logic Programming, 19–20:149–197, 1994.
A. Bossi, M. Gabbrielli, G. Levi, and M. C. Meo. A Compositional Semantics for Logic Programs. Theoretical Computer Science, 122(1–2):3–47, 1994.
F. Bourdoncle. Abstract debugging of higher-order imperative languages. In PLDI'93, pages 46–55, 1993.
K. L. Clark. Predicate logic as a computational formalism. Res. Report DOC 79/59, Imperial College, Dept. of Computing, London, 1979.
P. Codognet and G. Filè. Computations, Abstractions and Constraints. In Proc. Fourth IEEE Int'l Conference on Computer Languages. IEEE Press, 1992.
M. Comini and G. Levi. An algebraic theory of observables. In M. Bruynooghe, editor, Proc. 1994 Int'l Symposium on Logic Programming. The MIT Press, Cambridge, Mass., 1994. To appear.
A. Cortesi, G. Filè, and W. Winsborough. Prop revisited: Propositional Formula as Abstract Domain for Groundness Analysis. In Proc. Sixth IEEE Symp. on Logic In Computer Science, pages 322–327. IEEE Computer Society Press, 1991.
P. Cousot and R. Cousot. Abstract Interpretation: A Unified Lattice Model for Static Analysis of Programs by Construction or Approximation of Fixpoints. In Proc. Fourth ACM Symp. Principles of Programming Languages, pages 238–252, 1977.
P. Cousot and R. Cousot. Systematic Design of Program Analysis Frameworks. In Proc. Sixth ACM Symp. Principles of Programming Languages, pages 269–282, 1979.
P. Cousot and R. Cousot. Abstract Interpretation and Applications to Logic Programs. Journal of Logic Programming, 13(2 & 3):103–179, 1992.
M. Falaschi, G. Levi, M. Martelli, and C. Palamidessi. Declarative Modeling of the Operational Behavior of Logic Languages. Theoretical Computer Science, 69(3):289–318, 1989.
M. Falaschi, G. Levi, M. Martelli, and C. Palamidessi. A Model-Theoretic Reconstruction of the Operational Semantics of Logic Programs. Information and Computation, 102(1):86–113, 1993.
G. Ferrand. Error Diagnosis in Logic Programming, an Adaptation of E. Y. Shapiro's Method. Journal of Logic Programming, 4:177–198, 1987.
M. Gabbrielli, G. Levi, and M. C. Meo. Observational Equivalences for Logic Programs. In K. Apt, editor, Proc. Joint Int'l Conf. and Symposium on Logic Programming, pages 131–145. The MIT Press, Cambridge, Mass., 1992. Extended version to appear in Information and Computation.
M. Gabbrielli, G. Levi, and M. C. Meo. A resultants semantics for PROLOG. Technical report, Dipartimento di Informatica, Università di Pisa, 1994.
R. Giacobazzi. On the Collecting Semantics of Logic Programs. In F. S. de Boer and M. Gabbrielli, editors, Verification and Analysis of Logic Languages, Proc. of the Post-Conference ICLP Workshop, pages 159–174, 1994.
R. Giacobazzi, S. K. Debray, and G. Levi. A Generalized Semantics for Constraint Logic Programs. In Proceedings of the International Conference on Fifth Generation Computer Systems 1992, pages 581–591, 1992.
R. Giacobazzi, G. Levi, and S. K. Debray. Joining Abstract and Concrete Computations in Constraint Logic Programming. In M. Nivat, C. Rattray, T. Rus, and G. Scollo, editors, Algebraic Methodology and Software Technology (AMAST'93), Proceedings of the Third International Conference on Algebraic Methodology and Software Technology, Workshops in Computing, pages 111–127. Springer-Verlag, Berlin, 1993.
J. Jaffar and J. L. Lassez. Constraint Logic Programming. In Proc. Fourteenth Annual ACM Symp. on Principles of Programming Languages, pages 111–119. ACM, 1987.
J. W. Lloyd. Declarative error diagnosis. New Generation Computing, 5(2):133–154, 1987.
J. W. Lloyd. Foundations of Logic Programming. Springer-Verlag, Berlin, 1987. Second edition.
D. Micciancio. Interpretazione astratta di programmi logici con il controllo di PROLOG. Master's thesis, Dipartimento di Informatica, Università di Pisa, 1994. in italian.
E. Y. Shapiro. Algorithmic program debugging. In Proc. Ninth Annual ACM Symp. on Principles of Programming Languages, pages 412–531. ACM Press, 1982.
M. H. van Emden and R. A. Kowalski. The semantics of predicate logic as a programming language. Journal of the ACM, 23(4):733–742, 1976.
L. Vieille. Recursive query processing: the power of logic. Theoretical Computer Science, 69:1–53, 1989.
Author information
Authors and Affiliations
Editor information
Rights and permissions
Copyright information
© 1994 Springer-Verlag Berlin Heidelberg
About this paper
Cite this paper
Comini, M., Levi, G., Vitiello, G. (1994). Abstract debugging of logic programs. In: Fribourg, L., Turini, F. (eds) Logic Program Synthesis and Transformation — Meta-Programming in Logic. META LOPSTR 1994 1994. Lecture Notes in Computer Science, vol 883. Springer, Berlin, Heidelberg. https://doi.org/10.1007/3-540-58792-6_27
Download citation
DOI: https://doi.org/10.1007/3-540-58792-6_27
Published:
Publisher Name: Springer, Berlin, Heidelberg
Print ISBN: 978-3-540-58792-7
Online ISBN: 978-3-540-49104-0
eBook Packages: Springer Book Archive