Abstract
Pure logic programs can be interpreted as rewrite programs, executable with a version of the Knuth-Bendix completion procedure called linear completion. The main advantage here is in avoiding many of the loops inherent in the resolution approach: for most productive loops, linear completion yields a finite set of answers and a finite set of rewrite rules (involving just one predicate), from which all the remaining answers can be deduced. And this ‘program synthesizing’ aspect can be easily combined with other loop avoiding techniques using ‘marked’ literals and substitutions. It is thus natural to ask how much of the rewrite mechanism carries through for deducing negative information from pure programs, and more generally for any normal logic program. In this paper we show that such an extension can be built in a natural way, with ideas from the Clark completion for normal logic programs, and the domain of constrained rewriting. The correction and completeness of this extended mechanism is proved w.r.t. the 3-valued declarative semantics of Künen for normal programs. We also point out how the semantics of a normal program can in a certain sense be ‘parametrized’, in terms of the ‘meta-reduction’ rule set of our approach.
Preview
Unable to display preview. Download preview PDF.
References
Anantharaman S., Richard G., “A Rewrite Mechanism for Logic Programs with Negation”, Research Report n°94-13, LIFO, Université d'Orleans (Fr.), 1994.
Bonacina M., Hsiang J. “On rewrite programs: semantics and relationship with Prolog”, Journal of Logic Programming, nℴ 14, pp. 155–180, 1992.
Bronsard F., Lakshman T.K., Reddy Uday S. “A Framework of Directionality for Proving Termination of Logic programs”, Proc. of ICLP-92, MIT Press (ed. K. Apt), pp. 321–335, 1992.
Bottoni A., Levi G. “Computing in the Completion” Proc. of GULP'93„ pp. 375–389 Orsay (Fr.), 1993.
Chan D. “Constructive Negation Based on the Completed Database”, Proceedings of the 5th ICLP, Seattle (USA) The MIT press, Cambridge, Mass. pp. 111–125, 1988.
Clark K.L. “Negation as failure”, Logic and data bases Plenum, Eds. Gallaire and Minker, 1978.
Dershowitz N., Josephson N.A. “Logic programming by completion”, Proceedings of the 2nd ICLP, Uppsala, Sweden, 1984.
Fitting M. “A Kripke-Kleene semantics for logic programs”, J. Logic Programming, vol 4, pp. 295–312, 1985.
Kirchner C., Kirchner H., Rusinowitch M. “Deduction with symbolic constraints”, Revue d'Intelligence Artificielle, vol 4 (nℴ 3), pp. 9–52, 1990, (Special Issue on Automated Deduction).
Künen K. “Negation in logic programming”, J. of Logic Programming, vol 4, pp. 289–308, 1987.
Lloyd J. W. “Foundations of Logic Programming”, Symbolic Computation series, Springer Verlag, 1984.
Maher M. J. “A Logic Programming View of CLP”, Proceedings of 10th ICLP, Budapest, pp. 737–753, 1993
Swift T., Warren D.S. “Compiling OLDT Evaluation: Background and Overview”, Technical Report 92/04, SUNY at Stony Brook (NY).
Author information
Authors and Affiliations
Editor information
Rights and permissions
Copyright information
© 1995 Springer-Verlag Berlin Heidelberg
About this paper
Cite this paper
Anantharaman, S., Richard, G. (1995). A rewrite mechanism for logic programs with negation. In: Hsiang, J. (eds) Rewriting Techniques and Applications. RTA 1995. Lecture Notes in Computer Science, vol 914. Springer, Berlin, Heidelberg. https://doi.org/10.1007/3-540-59200-8_55
Download citation
DOI: https://doi.org/10.1007/3-540-59200-8_55
Published:
Publisher Name: Springer, Berlin, Heidelberg
Print ISBN: 978-3-540-59200-6
Online ISBN: 978-3-540-49223-8
eBook Packages: Springer Book Archive