Non-Discriminating Arguments and Their Uses

Publikation: Bidrag til tidsskriftKonferenceartikelForskningpeer review


We present a technique for identifying predicate arguments that play no role in determining the control flow of a logic program with respect to goals satisfying given mode and sharing restrictions.  We call such arguments non-discriminating arguments. We show that such arguments can be detected by an automatic analysis. Following this, we define a transformation procedure, called discriminator slicing, that removes the non-discriminating arguments, resulting in a program whose computation trees are isomorphic to those of the original program.  Finally, we show how the results of the original program can be reconstructed from trace of the transformed program with the original arguments.   Thus the overall result is a two-stage execution of a program, which can be applied usefully in several contexts;  we describe a case study in optimising computations in the probabilistic logic program language PRISM, and discuss applications in tabling and partial evaluation.  We also discuss briefly other possible ways of exploiting the non-discriminating arguments.
BogserieLecture Notes in Computer Science
Udgave nummer5649
Sider (fra-til)55-69
Antal sider15
StatusUdgivet - 2009
Begivenhed Logic Programming. 25th International Conference - Pasadena, Ca, USA
Varighed: 14 jul. 200917 jul. 2009
Konferencens nummer: 25


Konference Logic Programming. 25th International Conference
ByPasadena, Ca

Bibliografisk note

ISBN Print: 978-3-642-02845-8. Værtspublikationsredaktører:
Patricia M. Hill
David S. Warren
Udgivelsesdato: July 2009

Citer dette