Skip to main content

On the operational semantics of the algebraic and logic programming language LPG

  • Contributed Papers
  • Conference paper
  • First Online:
Recent Trends in Data Type Specification (ADT 1994, COMPASS 1994)

Abstract

This paper gives a brief description of the recent improvements of LPG, a programming language that integrates algebraic and logic programming paradigms. In this language, functions are defined by means of constructor-based conditional term rewriting systems and predicates are defined by means of Horn clauses where the bodies may contain classical literals as well as equations and negations of equations (disequations). The operational semantics of LPG is based on an extension of SLD-resolution which deals with equations and disequations by using a narrowing-based algorithm. We investigate such a narrowing-based algorithm for solving equations and disequations and give new sufficient conditions that ensure the completeness of narrowing strategies, in presence of conditional term rewrite systems. Similarities and differencies with other logic and functional languages are pointed out.

This is a preview of subscription content, log in via an institution to check access.

Access this chapter

Institutional subscriptions

Preview

Unable to display preview. Download preview PDF.

Unable to display preview. Download preview PDF.

References

  1. S. Antoy, R. Echahed, and M. Hanus. A needed narrowing strategy. In Proc. of POPL'94, pages 268–279, Portland, January 1994.

    Google Scholar 

  2. P. Arenas-Sanchez, A. Gil-Luezas, and J. Lopez-Fraguas. Combining Lazy narrowing with Disequality Constraints. In Proc. of PLILP'94, pages 385–399. LNCS 844, 1994.

    Google Scholar 

  3. D. Bert and R. Echahed. Design and implementation of a generic, logic and functional programming language. In Proc. of ESOP'86, pages 119–132. LNCS 213, 1986.

    Google Scholar 

  4. D. Bert, R. Echahed, and B. M. Østvold. Abstract rewriting. In Proc. of WSA '93, pages 178–192. LNCS 724, 1993.

    Google Scholar 

  5. D. Bert, R. Echahed, and J.-C. Reynaud. Reference manual of the LPG specification language and environment. Release with disequations. Technical report, IMAG, University of Grenoble, anonymous ftp distribution: at imag.fr,/pub/SCOP/LPG, 1994.

    Google Scholar 

  6. N. Dershowitz and J. Jouannaud. Rewrite systems. In J. van Leeuwen, editor. Handbook of Theoretical Computer Science B: Formal Methods and Semantics. chapter 6, pages 243–320. North Holland, Amsterdam, 1990.

    Google Scholar 

  7. R. Echahed. On completeness of narrowing strategies. In Proc. CAAP'88, pages 89–101. LNCS 299, 1988.

    Google Scholar 

  8. R. Echahed. Sur l'intégration des langages algébriques et logiques. Thèse de l'Institut National Polytechnique de Grenoble, 1990.

    Google Scholar 

  9. R. Echahed. Uniform narrowing strategies. In Proc. of ALP'92, pages 259–275. LNCS 632, 1992.

    Google Scholar 

  10. H. Ehrig and B. Mahr. Fundamentals of Algebraic Specification 1: Equations and Initial Semantics, volume 6 of EATCS Monographs on Theoretical Computer Science. Springer-Verlag, 1985.

    Google Scholar 

  11. M. Fernandez. Narrowing based procedures for equational disunification. Technical Report 764, LRI, University of Paris Sud, July 1992.

    Google Scholar 

  12. K. Futatsugi, J. A. Goguen, J.-P. Jouannaud, and J. Meseguer. Principles of OBJ2. In Proc. of 12th ACM POPL, pages 51–60. ACM, 1985.

    Google Scholar 

  13. J. A. Goguen and J. Meseguer. EQLOG: Equality, Types and Generic Modules for Logic Programming. In Functional and Logic Programming, eds. DeGroot and Lindstrom. Prentice-Hall, 1986.

    Google Scholar 

  14. M. Haberstrau. ECOLOG: an Environment for Constraint LOGics. In Proc. of CCL'94, pages 237–252. Springer-Verlag, 1994.

    Google Scholar 

  15. M. Hanus. The integration of functions into logic programming: From theory to practice. Journal of Logic Programming, 19&20:583–628, 1994.

    Article  Google Scholar 

  16. J.-M. Hullot. Canonical forms and unification. In Proc. 5th Conference on Automated Deduction, number 87, pages 318–334. LNCS 87, 1980.

    Google Scholar 

  17. J. W. Lloyd. Foundations of Logic Programming. Springer-Verlag, Berlin, 1984.

    Google Scholar 

  18. J. Meseguer. Multiparadigm logic programming. In Proc. of ALP'92, pages 158–200. LNCS 632, 1992.

    Google Scholar 

  19. A. Middeldorp and E. Hamoen. Counterexamples to completeness results for basic narrowing (extended abstract). In Proc. of ALP'92, pages 244–258. LNCS 632, 1992.

    Google Scholar 

  20. J. J. Moreno-Navarro and M. Rodriguez-Artalejo. Logic programming with functions and predicates: The language BABEL. Journal of Logic Programming, 12:191–223, 1992.

    Article  Google Scholar 

  21. P. Padawitz. Computing in Horn Clause Theories, volume 16 of EATCS Monographs on Theoretical Computer Science. Springer-Verlag, 1988.

    Google Scholar 

  22. J.A. Robinson and E.E. Sibert. The LOGLISP user's manual. In Report 12/81, Syracuse University, New York, 1981.

    Google Scholar 

Download references

Author information

Authors and Affiliations

Authors

Editor information

Egidio Astesiano Gianna Reggio Andrzej Tarlecki

Rights and permissions

Reprints and permissions

Copyright information

© 1995 Springer-Verlag Berlin Heidelberg

About this paper

Cite this paper

Bert, D., Echahed, R. (1995). On the operational semantics of the algebraic and logic programming language LPG. In: Astesiano, E., Reggio, G., Tarlecki, A. (eds) Recent Trends in Data Type Specification. ADT COMPASS 1994 1994. Lecture Notes in Computer Science, vol 906. Springer, Berlin, Heidelberg. https://doi.org/10.1007/BFb0014425

Download citation

  • DOI: https://doi.org/10.1007/BFb0014425

  • Published:

  • Publisher Name: Springer, Berlin, Heidelberg

  • Print ISBN: 978-3-540-59132-0

  • Online ISBN: 978-3-540-49198-9

  • eBook Packages: Springer Book Archive

Publish with us

Policies and ethics