On completeness of logic programs
Number of Authors: 1
2015 (English)In: Logic-Based Program Synthesis and Transformation - 24th International Symposium, (LOPSTR-2014), 2015, Vol. 8981, 261-278 p.Conference paper (Refereed)
Program correctness (in imperative and functional programming) splits in logic programming into correctness and completeness. Completeness means that a program produces all the answers required by its specification. Little work has been devoted to reasoning about completeness. This paper presents a few sufficient conditions for completeness of definite programs. We also study preserving completeness under some cases of pruning of SLD-trees (e.g. due to using the cut). We treat logic programming as a declarative paradigm, abstracting from any operational semantics as far as possible. We argue that the proposed methods are simple enough to be applied, possibly at an informal level, in practical Prolog programming. We point out importance of approximate specifications.
Place, publisher, year, edition, pages
2015. Vol. 8981, 261-278 p.
, Lecture Notes in Computer Science, ISSN 0302-9743
IdentifiersURN: urn:nbn:se:liu:diva-118717DOI: 10.1007/978-3-319-17822-6_15ISI: 000361842100017ISBN: 978-3-319-17821-9OAI: oai:DiVA.org:liu-118717DiVA: diva2:816563
Logic-Based Program Synthesis and Transformation - 24th International Symposium, (LOPSTR-2014)