Abstract
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.
Originalsprog | Engelsk |
---|---|
Bogserie | Lecture Notes in Computer Science |
Udgave nummer | 5649 |
Sider (fra-til) | 55-69 |
Antal sider | 15 |
ISSN | 0302-9743 |
Status | Udgivet - 2009 |
Begivenhed | Logic Programming. 25th International Conference - Pasadena, Ca, USA Varighed: 14 jul. 2009 → 17 jul. 2009 Konferencens nummer: 25 |
Konference
Konference | Logic Programming. 25th International Conference |
---|---|
Nummer | 25 |
Land/Område | USA |
By | Pasadena, Ca |
Periode | 14/07/2009 → 17/07/2009 |
Bibliografisk note
ISBN Print: 978-3-642-02845-8. Værtspublikationsredaktører:Patricia M. Hill
David S. Warren
Udgivelsesdato: July 2009