Detecting Determinacy in Prolog Programs

King, Andy and Lu, L. and Genaim, S. (2006) Detecting Determinacy in Prolog Programs. In: Etalle, Sandro and Truszczynski, Mirek, eds. Logic Programming. Lecture Notes in Computer Science, 4079 . Springer-Verlag, Berlin, pp. 132-147. ISBN 978-3-540-36635-5.

Postscript
Download (360Kb)
[img]
Preview
Official URL
http://dx.doi.org/10.1007/11799573_12

Abstract

In program development it is useful to know that a call to a Prolog program will not inadvertently leave a choice-point on the stack. Determinacy inference has been proposed for solving this problem yet the analysis was found to be wanting in that it could not infer determinacy conditions for programs that contained cuts or applied certain tests to select a clause. This paper shows how to remedy these serious deficiencies. It also addresses the problem of identifying those predicates which can be rewritten in a more deterministic fashion. To this end, a radically new form of determinacy inference is introduced, which is founded on ideas in ccp, that is capable of reasoning about the way bindings imposed by a rightmost goal can make a leftmost goal deterministic.

Item Type: Book section
Uncontrolled keywords: backward analysis, ccp, cut, suspension analysis, determinacy analysis
Subjects: Q Science > QA Mathematics (inc Computing science) > QA 76 Software, computer programming,
Divisions: Faculties > Science Technology and Medical Studies > School of Computing > Theoretical Computing Group
Depositing User: Mark Wheadon
Date Deposited: 24 Nov 2008 18:03
Last Modified: 08 Jun 2012 14:55
Resource URI: http://kar.kent.ac.uk/id/eprint/14439 (The current URI for this page, for reference purposes)
  • Depositors only (login required):