Smaus, J.G. and Hill, P.M. and King, A.
Termination of Logic Programs with block Declarations Running in Several Modes.
In: Palamidessi, C., ed.
Proceedings of the 10th International Symposium on Principles of Declarative Programming.
Lecture Notes in Computer Science, 1490.
Springer-Verlag, see also http://www.springer.de/comp/lncs/index.html
ISBN 3-540-65012-1 .
(Full text available)
We show how termination of logic programs with delay declarations can be proven. Three features are distinctive of this work: (a) we assume that predicates can be used in several modes; (b) we show that block declarations, which are a very simple delay construct, are sufficient; (c) we take the selection rule into account, assuming it to be as in most Prolog implementations. Our method is based on identifying the so-called robust predicates, for which the textual position of an atom using this predicate is irrelevant. The method can be used to verify existing programs, and to assist in writing new programs. As a byproduct, we also show how programs can be proven to be free from occur-check and floundering.
- Depositors only (login required):