A method for specializing logic programs
ACM Transactions on Programming Languages and Systems (TOPLAS)
Handbook of theoretical computer science (vol. B)
Toward the partial evaluation of CLP languages
PEPM '91 Proceedings of the 1991 ACM SIGPLAN symposium on Partial evaluation and semantics-based program manipulation
Partial evaluation in logic programming
Journal of Logic Programming
A transformation system for deductive database modules with perfect model semantics
Theoretical Computer Science
Partial evaluation and automatic program generation
Partial evaluation and automatic program generation
Online partial deduction of logic programs
PEPM '93 Proceedings of the 1993 ACM SIGPLAN symposium on Partial evaluation and semantics-based program manipulation
The 3 R's of optimizing constraint logic programs: refinement, removal and reordering
POPL '93 Proceedings of the 20th ACM SIGPLAN-SIGACT symposium on Principles of programming languages
Parameterized partial evaluation
ACM Transactions on Programming Languages and Systems (TOPLAS)
Mixtus: an automatic partial evaluator for full Prolog
New Generation Computing
Transformations of CLP modules
Theoretical Computer Science
Controlling generalization and polyvariance in partial deduction of normal logic programs
ACM Transactions on Programming Languages and Systems (TOPLAS)
Transforming constraint logic programs
Theoretical Computer Science
POPL '77 Proceedings of the 4th ACM SIGACT-SIGPLAN symposium on Principles of programming languages
Partial Evaluation in Constraint Logic Programming
ISMIS '96 Proceedings of the 9th International Symposium on Foundations of Intelligent Systems
Improving Homeomorphic Embedding for Online Termination
LOPSTR '98 Proceedings of the 8th International Workshop on Logic Programming Synthesis and Transformation
A Theory of Logic Program Specialization and Generalization for Dealing with Input Data Properties
Selected Papers from the Internaltional Seminar on Partial Evaluation
Transformational verification of parameterized protocols using array formulas
LOPSTR'05 Proceedings of the 15th international conference on Logic Based Program Synthesis and Transformation
Using real relaxations during program specialization
LOPSTR'11 Proceedings of the 21st international conference on Logic-Based Program Synthesis and Transformation
Verifying programs via iterated specialization
PEPM '13 Proceedings of the ACM SIGPLAN 2013 workshop on Partial evaluation and program manipulation
Controlling Polyvariance for Specialization-based Verification
Fundamenta Informaticae - Special Issue on the Italian Conference on Computational Logic: CILC 2011
Hi-index | 0.00 |
We consider the problem of specializing constraint logic programs w.r.t. constrained queries. We follow a transformational approach based on rules and strategies. The use of the rules ensures that the specialized program is equivalent to the initial program w.r.t. a given constrained query. The strategies guide the application of the rules so to derive an efficient specialized program. In this paper we address various issues concerning the development of an automated transformation strategy. In particular, we consider the problems of when and how we should unfold, replace constraints, introduce generalized clauses, and apply the contextual constraint replacement rule. We propose a solution to these problems by adapting to our framework various techniques developed in the field of constraint programming, partial evaluation, and abstract interpretation. In particular, we use: (i) suitable solvers for simplifying constraints, (ii) well-quasi-orders for ensuring the termination of the unfoldings and for activating clause generalizations, and (iii) widening operators for ensuring the termination of the generalization process.