A transformation tool for pure Prolog programs

  • Jacob Brunekreef
Conference paper
Part of the Lecture Notes in Computer Science book series (LNCS, volume 1207)


This paper describes an interactive tool for transforming pure Prolog programs. The choice of (pure) Prolog semantics induces a number of conditions that have to be satisfied before a particular transformation step can be applied. The transformation tool has been developed using a programming environment based on algebraic specification. The paper describes the tool and reports on the design decisions, the implemented transformation steps, and the user interface.


Logic Program Transformation Sequence Transformation Step Initial Program Prolog Program 
These keywords were added by machine and not by the authors. This process is experimental and the keywords may be updated as the learning algorithm improves.


Unable to display preview. Download preview PDF.

Unable to display preview. Download preview PDF.


  1. 1.
    O. Aioni. A System for the Automatic Transformation of Logic programs. Technical Report Report R 0195, Electronics Department, University of Roma Tor Vergata, 1995.Google Scholar
  2. 2.
    F. Alexandre, K. Bsaïes, J.P. Finance, and A. Quéré. Spes: A System for Logic Program Transformation. In Proceedings of the International Conference on Logic Programming and Automated reasoning (LPAR '92), LNCS 624, pages 445–447. Springer-Verlag, 1992.Google Scholar
  3. 3.
    M. Baudinet. Logic Programming Semantics: Techniques and Applications. PhD thesis, Stanford University, Stanford, California, 1989.Google Scholar
  4. 4.
    A. Bossi and N. Cocco. Replacement Can Preserve Termination. In this volume.Google Scholar
  5. 5.
    A. Bossi, N. Cocco, and S. Etalle. Transformation of Left Terminating Programs: the Reordering Problem. In LOPSTR '95 — Fifth International Workshop on Logic Program Synthesis and Transformation, number 1048 in LNCS, pages 33–45. Springer-Verlag, 1995.Google Scholar
  6. 6.
    J. J. Brunekreef. A Transformation Tool for Pure Prolog Programs — The Algebraic Specification-. Technical Report P9607, Programming Research Group, University of Amsterdam, 1996.Google Scholar
  7. 7.
    S. Etalle. Transformation and Analysis of (Constraint) Logic Programs. PhD thesis, University of Amsterdam, 1995.Google Scholar
  8. 8.
    J. Gallagher. A system for specialising logic programs. Technical Report TR-91-32, University of Bristol, 1991.Google Scholar
  9. 9.
    N. Jones and A. Mycroft. Stepwise Development of Operational and Denotational Semantics for Prolog. In Proceedings of the 1984 International Symposium on Logic Programming, pages 281–288. IEEE, 1984.Google Scholar
  10. 10.
    J. Jørgensen, M. Leuschel, and B. Martens. Conjunctive Partial Deduction in Practice. In this volume.Google Scholar
  11. 11.
    P. Klint. A meta-environment for generating programming environments. ACM Transactions on Software Engineering and Methodology, 2(2):176–201, 1993.Google Scholar
  12. 12.
    J. Komorowski. A Prolegomenon to Partial Deduction. Fundamenta Informaticae, 18(1):41–64, 1993.Google Scholar
  13. 13.
    T.Æ. Mogensen and A. Bondorf. Logimix: A Self-Applicable Partial Evaluator for Prolog. In LOPSTR '92 — Proceedings of the second international workshop on Logic Program Synthesis and Transformation, Workshops in Computing, pages 214–227. Springer-Verlag, 1992.Google Scholar
  14. 14.
    A. Pettorossi and M. Proietti. Transformation of Logic Programs: Foundations and Techniques. Journal of Logic Programming, 19, 20:261–320, 1994.Google Scholar
  15. 15.
    A. Pettorossi and M. Proietti. Private communication, 1996.Google Scholar
  16. 16.
    S. Prestwitch. Online Partial Deduction of Large Programs. In ACM SIGPLAN Symposium on Partial Evaluation and Semantics-Based Program Manipulation (PEPM '93), pages 111–118. ACM press, 1993.Google Scholar
  17. 17.
    M. Proietti and A. Pettorossi. Semantics Preserving Transformation Rules for Prolog. In ACM SIGPLAN Symposium on Partial Evaluation and Semantics-Based Program Manipulation (PEPM '91). ACM press, 1991.Google Scholar
  18. 18.
    D. Sahlin. The Mixtus Approach to Automatic Partial Evaluation of Full Prolog. In S. Debray and M. Hermenegildo, editors, Proc. of the North American Conf. on Logic Programming, pages 377–398, 1990.Google Scholar
  19. 19.
    H. Seki. Unfold/fold transformation of stratified programs. Theoretical Computer Science, 86:107–139, 1991.Google Scholar
  20. 20.
    H. Tamaki and T. Sato. Unfold/Fold Transformation of Logic Programs. In S.-Å. Tärnlund, editor, Proceedings of the 2nd International Conference on Logic Programming, pages 127–138, Uppsala, Sweden, 1984.Google Scholar
  21. 21.
    T. Traill. Transformation of Logic Programs. Honours Thesis, Dept. of Computer Science, University of Melbourne, 1994.Google Scholar

Copyright information

© Springer-Verlag Berlin Heidelberg 1997

Authors and Affiliations

  • Jacob Brunekreef
    • 1
  1. 1.Programming Research GroupUniversity of AmsterdamSJ AmsterdamThe Netherlands

Personalised recommendations