An application of abstract interpretation of logic programs: occur check reduction
Proc. of the European symposium on programming on ESOP 86
Foundations of logic programming; (2nd extended ed.)
Foundations of logic programming; (2nd extended ed.)
A portable compiler for integrating HiLog into Prolog systems
ILPS '94 Proceedings of the 1994 International Symposium on Logic programming
Advanced Logic Program Specialisation
Partial Evaluation - Practice and Theory, DIKU 1998 International Summer School
Redundant Argument Filtering of Logic Programs
LOPSTR '96 Proceedings of the 6th International Workshop on Logic Programming Synthesis and Transformation
Regular Approximation of Computation Paths in Logic and Functional Languages
Selected Papers from the Internaltional Seminar on Partial Evaluation
A Direct Proof for the Completeness of SLD-Resolution
CSL '89 Proceedings of the 3rd Workshop on Computer Science Logic
Record/replay for nondeterministic program executions
Communications of the ACM - Why CS students need math
Proceedings of the 2005 ACM SIGPLAN conference on Programming language design and implementation
Control Generation by Program Transformation
Fundamenta Informaticae - Program Transformation: Theoretical Foundations and Basic Techniques. Part 2
Parameter learning of logic programs for symbolic-statistical modeling
Journal of Artificial Intelligence Research
Forward slicing by conjunctive partial deduction and argument filtering
ESOP'05 Proceedings of the 14th European conference on Programming Languages and Systems
Searching semantically equivalent code fragments in logic programs
LOPSTR'04 Proceedings of the 14th international conference on Logic Based Program Synthesis and Transformation
Determinacy analysis for logic programs using mode and type information
LOPSTR'04 Proceedings of the 14th international conference on Logic Based Program Synthesis and Transformation
Inference with constrained hidden markov models in prism
Theory and Practice of Logic Programming
Efficient tabling of structured data using indexing and program transformation
PADL'12 Proceedings of the 14th international conference on Practical Aspects of Declarative Languages
Model checking with probabilistic tabled logic programming
Theory and Practice of Logic Programming
MCINTYRE: A Monte Carlo System for Probabilistic Logic Programming
Fundamenta Informaticae - Special Issue on the Italian Conference on Computational Logic: CILC 2011
Hi-index | 0.00 |
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.