Abstract
In this paper, we develop a solid theoretical foundation for a bottom up program transformation, capable of specialising a logic program with respect to a set of unit clauses. Extending a well-known operator, originally introduced for composing logic programs, we define a bottom up partial deduction operator and prove correctness of the transformation with respect to the S-semantics. We also show how, within this framework, a concrete control strategy can be designed.
The transformation can be used as a stand-alone specialisation technique, useful when a program needs to be specialised w.r.t. its internal structure (e.g. a library of predicates w.r.t. an abstract data type) instead of a goal. On the other hand, the bottom up transformation can be combined with a more traditional top down partial deduction strategy. We conjecture that such a combined approach will finally enable good automatic specialisation of meta-programs.
The transformation can be used as a stand-alone specialisation technique, useful when a program needs to be specialised w.r.t. its internal structure (e.g. a library of predicates w.r.t. an abstract data type) instead of a goal. On the other hand, the bottom up transformation can be combined with a more traditional top down partial deduction strategy. We conjecture that such a combined approach will finally enable good automatic specialisation of meta-programs.
Original language | English |
---|---|
Title of host publication | Principles of Declarative Programming |
Subtitle of host publication | 10th International Symposium, PLILP’98 Held Jointly with the 6th International Conference, ALP’98 Pisa, Italy, September 16–18, 1998 Proceedings |
Editors | Catuscia Palamidessi, Hugh Glaser, Karl Meinke |
Publisher | Springer |
Pages | 54-72 |
ISBN (Electronic) | 978-3-540-49766-0 |
ISBN (Print) | 978-3-540-65012-6 |
DOIs | |
Publication status | Published - 1998 |
Event | 6th International Conference on Algebraic and Logic Programming - Pise, Italy Duration: 16 Sept 1998 → 18 Sept 1998 |
Publication series
Name | Lecture Notes in Computer Science |
---|---|
Publisher | Springer |
Volume | 1490 |
ISSN (Print) | 0302-9743 |
ISSN (Electronic) | 1611-3349 |
Conference
Conference | 6th International Conference on Algebraic and Logic Programming |
---|---|
Abbreviated title | APL'98 |
Country/Territory | Italy |
City | Pise |
Period | 16/09/98 → 18/09/98 |