Efficient integration of simplification into Prolog

  • P. H. Cheong
  • L. Fribourg
Session: Integration Of Programming Concepts II
Part of the Lecture Notes in Computer Science book series (LNCS, volume 528)


SLOG is a language integrating logic and functional programming that is based on innermost narrowing and rewriting. Although innermost narrowing can be simulated by Prolog, the same is not true for rewriting. This has motivated a weaker notion of rewriting, called simplification, in the proposal of “Prolog with Simplification”. In this paper, we address the issue of efficiently integrating simplification into Prolog.


Logic Program Logic Programming Operational Semantic Weak Notion Conditional Term 
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. [BCM89]
    P.G. Bosco, C. Cecchi, and C. Moiso. An extension of WAM for K-LEAF. In Proceedings of the 6th International Conference on Logic Programming, Lisboa, pages 318–333, 1989.Google Scholar
  2. [BGM87]
    P.G. Bosco, E. Giovannetti, and G. Moiso. Refined strategies for semantic unification. In TAPSOFT'87, LNCS 150, pages 276–290, 1987.Google Scholar
  3. [BL86]
    M. Bellia and G. Levi. The relation between logic and functional languages. Journal of Logic Programming, 3:217–236, 1986.Google Scholar
  4. [Che90]
    P.H. Cheong. Compiling lazy narrowing into prolog. Technical Report 25, LIENS, 1990. To appear in Journal of New Generation Computing.Google Scholar
  5. [Der83]
    P. Deransart. An operational semantics of prolog programs. In Programmation Logique, Perros-Guirec, CNET-lannion, 1983.Google Scholar
  6. [Fri85]
    L. Fribourg. SLOG: A logic programming language interpreter based on clausal superposition and rewriting. In Proceedings of the IEEE Symposium on Logic Programming, Boston, pages 172–184, 1985.Google Scholar
  7. [Fri88]
    L. Fribourg. Prolog with simplification. In K. Fuchi and M. Nivat, editors, Programming of future generation computers, pages 161–183. Elsevier Science Publishers B.V. (North Holland), 1988.Google Scholar
  8. [Han90]
    M. Hanus. Compiling logic programs with equality. In PLILP'90, LNCS 456, pages 387–401, 1990.Google Scholar
  9. [Höl88]
    S. Hölldobler. From paramodulation to narrowing. In Proceedings of the 5th International Conference on Logic Programming, Seattle, pages 327–342, 1988.Google Scholar
  10. [KLMR90]
    H. Kuchen, R. Loogen, J.J. Moreno, and M. Rodríguez. Graph-based implementation of a functional logic language. In ESOP' 90, LNCS 432, pages 279–290, 1990.Google Scholar
  11. [LPB+87]
    G. Levi, C. Palamidessi, P.G. Bosco, E. Giovannetti, and C. Moiso. A complete semantic characterization of K-LEAF, a logic language with partial functions. In Proceedings of the IEEE Symposium on Logic Programming, pages 318–327, 1987.Google Scholar
  12. [Müc90]
    A. Mück. The compilation of narrowing. In PLILP'90, Springer LNCS 456, 1990.Google Scholar
  13. [Red85]
    U.S. Reddy. Narrowing as the operational semantics of functional languages. In Proceedings of the IEEE Symposium on Logic Programming, Boston, pages 138–151, 1985.Google Scholar
  14. [vEY87]
    M.H. van Emdem and K. Yukawa. Logic programming with equations. Journal of Logic Programming, 4:265–288, 1987.Google Scholar
  15. [You89]
    Y.H. You. Enumerating outer narrowing derivations for constructor-based term rewriting systems. Journal of Symbolic Computation, 7:319–343, 1989.Google Scholar

Copyright information

© Springer-Verlag Berlin Heidelberg 1991

Authors and Affiliations

  • P. H. Cheong
    • 1
  • L. Fribourg
    • 1
  1. 1.LIENS, URA 1327 du CNRSParisFrance

Personalised recommendations