On partial validation of logic programs
In this paper, we propose a method allowing us to compare the result of an execution of a logic program and a specification of the intended semantics. This approach is particularly interesting when the set of answers cannot be computed in finite time with usual prolog interpreters. We compute, using a special operational mechanism, a finite set of rewrite rules synthesizing the whole set of answers w.r.t. a goal. Then, we use some tree tuple grammar based techniques to express the languages of the computed answers. An algorithm allows us to compare this language with the intended semantics language which is extracted from a user's specification. This method can be considered as a partial validation mechanism for logic programs.
Unable to display preview. Download preview PDF.
- 1.S. Anantharaman and G. Richard. A Rewrite Mechanism for Logic Programs with Negation. In Theoretical Computer Science. Elsevier Science Publishers B.V., 1997. to appear (also Proceedings of RTA'95 LNCS 914 pp 163–178).Google Scholar
- 2.M.P. Bonacina and J. Hsiang. On Rewrite Programs: Semantics and Relationship with Prolog. Journal of Logic Programming, 14:155–180, 1992.Google Scholar
- 3.N. Dershowitz and N.A. Josephson. Logic Programming by Completion. In Proceedings of the 2nd ICLP, pages 313–320, 1984.Google Scholar
- 4.N. Dershowitz and J.P. Jouannaud. Handbook of Theoretical Computer Science, volume B, chapter Rewrite Systems, pages 243–309. J. Van Leeuwen, 1990.Google Scholar
- 5.M. Ducassé and J. Noyé. Logic Programming Environments: Dynamic Program Analysis and Debugging. Journal of Logic Programming, 19–20:351–384, 1994.Google Scholar
- 6.F. Gécseg and M. Steinby. Tree Automata. Akadémiai Kiadó-Budapest, 1984.Google Scholar
- 7.J.-M. Hullot. Canonical Forms and Unification. In W. Bibel and R. Kowalski, editors, Proceedings 5th International Conference on Automated Deduction, Les Arcs (France), volume 87 of LNCS, pages 318–334. Springer-Verlag, July 1980.Google Scholar
- 8.S. Limet and P. Réty. E-Unification by Means of Tree Tuple Synchronized Grammars. In proc of the 6th Colloquium on Trees in Algebra and Programming, 1997.Google Scholar
- 9.J.W. Lloyd. Foundations of Logic Programming. Symbolic Computation series. Springer Verlag, 1987 (revised version).Google Scholar
- 10.G. Richard and F. Saubion. Answer Synthesis for CLP Programs with Negation. Journal of the Interest Group in Pure and Applied Logic, 5(3), april 1997.Google Scholar
- 11.E. Shapiro. Algorithmic Program Debugging. MIT Press, Cambridge, MA, 1983.Google Scholar