Abstract
An approach for proving termination of well-moded logic programs is given by transforming a given logic program into a term rewriting system. It is proved that the termination of the derived rewriting system implies the termination of the corresponding logic program for well-moded queries under any selection rule implied by the given modings. The approach is mechanizable using termination orderings proposed in the term rewriting literature. Unlike Ullman and van Gelder's approach and Plümer's method, no preprocessing is needed, and the approach works well even in the presence of mutual recursion. This approach has been used recently to show termination of the Prolog implementation of compiler for ProCoS level 0 language PL0 developed at Oxford University.
Kapur was partially supported by NSF Grant nos. CCR-8906678 and INT-9014074.
Preview
Unable to display preview. Download preview PDF.
References
F. Alexandre, K. Bsaics and A. Quere (1991) On using mode input-output for transforming logic programs, Workshop on Logic Program Synthesis and Transformations LOPSTR'91. Proceedings to appear in Springer Workshops in Computer Science series.
K.R. Apt and D. Pedreschi (1991), Reasoning about Termination of Prolog Programs, Technical Report, University of Pisa.
J.S. Conery and D.F. Kibler (1985), AND parallelism and Nondeterminism in Logic Programs, New Generation Computing, 3, pp. 43–70.
S. K. Debray and D. S. Warren (1988), Automatic mode inference for logic programs, Journal of Logic Programming 5, pp. 207–229.
N. Dershowitz (1987), Termination of rewriting, Journal of Symbolic Computation, 3, pp. 69–116.
N. Dershowitz and J.-P. Jouannaud (1990), Rewrite Systems, In J. van Leeuwen, editor, Handbook of Theoretical Computer Science D: Formal Methods and Semantics, North-Holland, pp. 243–320.
H. Jifeng and C. A. R. Iloare (1989), Operational Semantics for ProCoS level 0 language, ProCoS Project Document, OU IIJ F 1/3, Oxford University.
H. Jifeng, P. Pandya and J. Bowen (1990), Compiling specification for ProCoS Programming language Level 0, ProCoS Workshop, Malente, April 1990.
D. Kapur and Il. Zhang (1989), An Overview of Rewrite Rule Laboratory (RRL), Proc. of Rewrite Techniques and Applications, Springer-Verlag LNCS 355, pp 559–563.
M.R.K. Krishna Rao, D. Kapur and R.K. Shyamasundar (1991), A Transformational Methodology for Proving termination of Logic Programs (extended version), Technical report, Tata Institute of Fundamental Research, Bombay 400 005, India.
M. R. K. Krishna Rao, R. K. Shyamasundar and P. Pandya (1992), Termination proof for ProCoS level 0 language PL 0 compiler, technical report, Tata Institute of Fundamental Research, Bombay, India (in preparation).
J. W. Lloyd (1987), Foundations of Logic Programming, Springer-Verlag.
L. Plümer (1990), Termination proofs for Logic Programs, Ph. D. thesis, University of Dortmund, Also appears as Springer Verlag LNCS vol. 446.
R. K. Shyamasundar, M. R. K. Krishna Rao and D. Kapur (1992), Rewriting Concepts in the Study of Termination of Logic Programs, Proc. ALPUK'92 Conf., London, April 1992.
J.D. Ullman and A. van Gelder (1988), Efficient Tests for Top-Down Termination of Logical Rules, JACM, 35(2), pp. 345–373.
Author information
Authors and Affiliations
Editor information
Rights and permissions
Copyright information
© 1992 Springer-Verlag Berlin Heidelberg
About this paper
Cite this paper
Krishna Rao, M.R.K., Kapur, D., Shyamasundar, R.K. (1992). A transformational methodology for proving termination of logic programs. In: Börger, E., Jäger, G., Kleine Büning, H., Richter, M.M. (eds) Computer Science Logic. CSL 1991. Lecture Notes in Computer Science, vol 626. Springer, Berlin, Heidelberg. https://doi.org/10.1007/BFb0023769
Download citation
DOI: https://doi.org/10.1007/BFb0023769
Published:
Publisher Name: Springer, Berlin, Heidelberg
Print ISBN: 978-3-540-55789-0
Online ISBN: 978-3-540-47285-8
eBook Packages: Springer Book Archive