Skip to main navigation Skip to search Skip to main content

Detecting determinacy in prolog programs

  • Andy King
  • , Njin Lu
  • , Samir Genaim

Research output: Chapter in Book/Report/Conference proceedingConference contributionpeer-review

5 Scopus citations

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.

Original languageEnglish
Title of host publicationLogic Programming - 22nd International Conference, ICLP 2006, Proceedings
PublisherSpringer Verlag
Pages132-147
Number of pages16
ISBN (Print)9783540366355
DOIs
StatePublished - 1 Jan 2006
Externally publishedYes
Event22nd International Conference on Logic Programming, ICLP 2006 - Seattle, WA, United States
Duration: 17 Aug 200620 Aug 2006

Publication series

NameLecture Notes in Computer Science (including subseries Lecture Notes in Artificial Intelligence and Lecture Notes in Bioinformatics)
Volume4079 LNCS
ISSN (Print)0302-9743
ISSN (Electronic)1611-3349

Conference

Conference22nd International Conference on Logic Programming, ICLP 2006
Country/TerritoryUnited States
CitySeattle, WA
Period17/08/0620/08/06

ASJC Scopus subject areas

  • Theoretical Computer Science
  • General Computer Science

Fingerprint

Dive into the research topics of 'Detecting determinacy in prolog programs'. Together they form a unique fingerprint.

Cite this