Static inference of modes and data dependencies in logic programs
ACM Transactions on Programming Languages and Systems (TOPLAS)
Partial evaluation in logic programming
Journal of Logic Programming
The Mixtus approach to automatic partial evaluation of full Prolog
Proceedings of the 1990 North American conference on Logic programming
Partial evaluation and automatic program generation
Partial evaluation and automatic program generation
Tutorial on specialisation of logic programs
PEPM '93 Proceedings of the 1993 ACM SIGPLAN symposium on Partial evaluation and semantics-based program manipulation
Partial evaluation in parallel
Lisp and Symbolic Computation
Distributed partial evaluation
PASCO '97 Proceedings of the second international symposium on Parallel symbolic computation
Exploiting the Parallelism Exposed by Partial Evaluation
PACT '94 Proceedings of the IFIP WG10.3 Working Conference on Parallel Architectures and Compilation Techniques
Combining Abstract Interpretation and Partial Evaluation (Brief Overview)
SAS '97 Proceedings of the 4th International Symposium on Static Analysis
Homeomorphic embedding for online termination of symbolic methods
The essence of computation
Imperative program optimization by partial evaluation
Proceedings of the 2004 ACM SIGPLAN symposium on Partial evaluation and semantics-based program manipulation
Transformation by interpreter specialisation
Science of Computer Programming - Special issue on program transformation
The Ecce and Logen partial evaluators and their web interfaces
Proceedings of the 2006 ACM SIGPLAN symposium on Partial evaluation and semantics-based program manipulation
Fast Offline Partial Evaluation of Large Logic Programs
Logic-Based Program Synthesis and Transformation
Non-strict independence-based program parallelization using sharing and freeness information
Theoretical Computer Science
A hybrid approach to conjunctive partial evaluation of logic programs
LOPSTR'10 Proceedings of the 20th international conference on Logic-based program synthesis and transformation
Hi-index | 0.00 |
Traditional approaches to automatic AND-parallelization of logic programs rely on some static analysis to identify independent goals that can be safely and efficiently run in parallel in any possible execution. In this paper, we present a novel technique for generating annotations for independent AND-parallelism that is based on partial evaluation. Basically, we augment a simple partial evaluation procedure with (run-time) groundness and variable sharing information so that parallel conjunctions are added to the residual clauses when the conditions for independence are met. In contrast to previous approaches, our partial evaluator is able to transform the source program in order to expose more opportunities for parallelism. To the best of our knowledge, we present the first approach to a parallelizing partial evaluator.