# An Introduction to Partial Deduction

@inproceedings{Komorowski1992AnIT, title={An Introduction to Partial Deduction}, author={Jan Komorowski}, booktitle={META}, year={1992} }

After several years of neglect, the importance of partial deduction (previously, partial evaluation in logic programming) as an omnipresent principle in Logic Programming, and to a certain degree in computing in general, is being recognized. This article provides a systematic introduction to partial deduction, its applications and open problems. Starting from an informal and intuitive presentation, the fundamental notions such as correctness and completeness are discussed. A selection of…

## 72 Citations

### Towards Refinement of Definite Logic Programs

- Computer ScienceISMIS
- 1994

Refinement rules formalize the so called “Laws of Programming” and thus they constitute a basis for a mechanical system that can approximate human knowledge of programming.

### The Effect of Partial Deduction in Abductive Reasoning

- Computer Science, LawICLP
- 1995

It is presented in this paper that normal partial deduction does not preserve explanations for abductive reasoning, and an alternative method of partial deduction is provided, called abductive partial deduction, which is shown to preserve the meanings of abductive logic programs.

### Partial Deduction of Disjunctive Logic Programs: A Declarative Approach

- Computer ScienceLOPSTR
- 1994

A new partial deduction technique for disjunctive logic programs is introduced, and it is shown that it preserves the minimal model semantics of positive dis junctive programs, and the stable model semantics in normal disjunctions programs.

### Ecological Partial Deduction: Preserving Characteristic Trees Without Constraints

- Computer ScienceLOPSTR
- 1995

The problem has been solved for purely determinate unfolding rules and definite programs in [12, 13] by using constraints inside the partial deduction process.

### Contents 1 Introduction 1 2 Oo-line Partial Deduction 3

- Computer Science
- 2004

The so called cogen approach to program specialisation writing a compiler generator instead of a specialiser has been used with considerable success in partial evaluation of both functional and…

### Partial Deduction of the Ground Representation and its Application to Integrity Checking

- Computer ScienceILPS
- 1995

This paper presents a solution which uses a novel implementation of the ground representation and an improved partial deduction strategy and is able to overcome the diiculties and produce highly specialised and eecient pre-compiled integrity checks through partial deduction of meta-interpreters.

### Logic program specialisation through partial deduction: Control issues

- Computer ScienceTheory and Practice of Logic Programming
- 2002

This survey and tutorial presents the main developments in controlling partial deduction over the past 10 years and analyses their respective merits and shortcomings and ends with an assessment of current achievements and sketches some remaining research challenges.

### Ensuring Global Termination of Partial Deduction while Allowing Flexible Polyvariance

- Computer ScienceICLP
- 1995

A quite general framework is formulated where this set of distinct ``partially deduced'' atoms generated during partial deduction is represented as a tree structure and a well-founded order among such structures is defined, thus obtaining a foundation for certified global termination of partial deduction.

### Constrained partial deduction and the preservation of characteristic trees

- Computer ScienceNew Generation Computing
- 2009

This paper presents a terminating partial deduction strategy which, for purely determinate unfolding rules, induces no loss of local specialisation due to the abstraction while ensuring correctness of the specialised programs.

### NORTH-HfRLAND PARTIAL DEDUCTION IN DISJUNCTIVE LOGIC PROGRAMMING

- Computer Science, Philosophy
- 2003

A new partial deduction technique, called disjunctive partial deduction, is introduced, which preserves the minimal model semantics of positive dis junctive programs and the stable model semanticsof normal disjunctions programs.

## References

SHOWING 1-10 OF 42 REFERENCES

### A specification of an abstract Prolog machine and its application to partial evaluation

- Computer Science
- 1981

This work investigates partial evalution of Prolog programs as a part of a theory of interactive, incremental programming, and outlines how meta-rules that control the execution of the Prolog program can be incorporated into the system in a clean way.

### Partial evaluation as a means for inferencing data structures in an applicative language: a theory and implementation in the case of prolog

- Computer SciencePOPL '82
- 1982

Transformations which account for pruning, forward data structure propagation and opening are formally introduced and proved to preserve meaning of programs and are related to research in rule-based systems and logic.

### The Loop Absorption and the Generalization Strategies for the Development of Logic Programs and Partial Deduction

- Computer ScienceJ. Log. Program.
- 1993

### Tutorial on Termination of Logic Programs

- Computer ScienceMETA
- 1992

A general introduction to termination analysis for logic programs, with focus on universal termination of SLD-derivations and on definite programs, and recalls the notions of recurrency and acceptability from the works of Apt, Bezem and Pedreschi.

### Logic, programming and Prolog

- Computer Science
- 1990

This edition introduces major new developments in a continually evolving field and includes such topics as concurrency and equational and constraint logic programming.

### Proving Termination of General Prolog Programs

- Computer ScienceTACS
- 1991

The notion of an acceptable program is introduced and it is proved that acceptable programs are left terminating, providing a practical method of proving termination.