On Using Mode Input-output for Transforming Logic Programs

  • Francis Alexandre
  • Khaled Bsaies
  • Alain Quéré
Conference paper
Part of the Workshops in Computing book series (WORKSHOPS COMP.)


This paper discusses the transformation of logic programs by using mode input-output. We consider a system based on the Unfold/Fold transformations. First we introduce a notion of well-moded clause and well-moded definite program. We prove that under certain conditions the application of the Unfold/Fold transformations preserves the notion of well-modedness. We also define a transformation of a definite program into term rewriting system and we establish the correctness of this transformation.


Logic Program Function Symbol Simple Mode Predicate Symbol Horn Clause 
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]
    F. Alexandre. Transformations de programmes logiques. Thèse de l’université de Nancy I, fevrier 1991.Google Scholar
  2. [2]
    K.R. Apt and M.H Van Emden. Contribution to the theory of logic programming. Journal of the Association for Computing Machinery, 29(3): 841–862, 1982.MathSciNetMATHCrossRefGoogle Scholar
  3. [3]
    R.S. Bird. The promotion and accumulation strategies in transformational programming. ACM TOPLAS, 6(4): 487–504, 1984.MathSciNetMATHCrossRefGoogle Scholar
  4. [4]
    R.M Burstall and J.A Darlington. Transformation system for developing recursive programs. Journal of the Association for Computing Machinery, 24(1): 44–67, 1977.MathSciNetMATHCrossRefGoogle Scholar
  5. [5]
    S.K. Debray and D.S. Warren. Detection and optimization of functional computations in prolog. In E. Shapiro, editor, Proceedings of the Third International Conference on Logic Programming, London, volume 225 of Lecture Notes in Computer Science, pages 490-504. Springer-Verlag, 1986.Google Scholar
  6. [6]
    S.K. Debray and D.S. Warren. Automatic mode inference for logic programs. Journal of Logic Programming, 5: 207–229, 1988.MathSciNetMATHCrossRefGoogle Scholar
  7. [7]
    N. Dershowitz and J. P. Jouannaud. Rewriting systems. Handbook of Computer Science. North Holland, 1989. To be published.Google Scholar
  8. [8]
    M.S. Feather. A survey and classification of some program transformation techniques. In Proc. TC2 IFIP Working Conference on Program Specification and Transformation, Bad-Tolz, F.R.G, 1986.Google Scholar
  9. [9]
    Projet Formel. The CAML Reference Manual Version 2.6. Inria, March 1989.Google Scholar
  10. [10]
    J.W. Lloyd. Foundations of Logic Programming. Springer Verlag, 1988.Google Scholar
  11. [11]
    C. S. Mellish. Some global optimizations for a prolog compiler. Journal of Logic Programming, 1: 43–66, 1985.CrossRefGoogle Scholar
  12. [12]
    A. Pettorossi and M. Proietti. The automatic construction of logic programs. In IFIP WG2.1 Meeting, January 1989. Preliminary Version.Google Scholar
  13. [13]
    A. Pettorossi and M. Proietti. Decidability results and characterization of strategies for the development of logic programs. In G. Levi and M. Martelli, editors, 6th International Conference on Logic Programming, Lisbon (Portugal), 1989. MIT Press.Google Scholar
  14. [14]
    U. S. Reddy. Transformation of logic programs into functional programs. In International Symposium on Logic Programming, Atlantic City, pages 187-196, 1984.Google Scholar
  15. [15]
    H. Tamaki and T. Sato. Unfold/fold transformation of logic programs. In Proceedings of the 2nd International Logic Programming Conference, Uppsala, 1984.Google Scholar

Copyright information

© Springer-Verlag London 1992

Authors and Affiliations

  • Francis Alexandre
    • 1
  • Khaled Bsaies
    • 1
  • Alain Quéré
    • 1
  1. 1.CRIN-CNRS / INRIA-LorraineVandœuvre-lès-Nancy CedexFrance

Personalised recommendations