Skip to main content

On the Transformation of a Prolog Program to a more efficient binary Program

  • Chapter
Book cover Logic Program Synthesis and Transformation

Part of the book series: Workshops in Computing ((WORKSHOPS COMP.))

Abstract

Binary definite programs consist of Horn clauses with at most one negative literal. It is unnatural to program just with such clauses and the naive automatic transformation from a general program to its binary equivalent makes it most often less efficient. Still, sometimes a binary program can solve a problem more efficiently. It is shown that partial evaluation of the alternative binary program, together with the deletion of unnecessary variables and a low level source code transformation, can lead to such an efficient binary program.

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

Access this chapter

Chapter
USD 29.95
Price excludes VAT (USA)
  • Available as PDF
  • Read on any device
  • Instant download
  • Own it forever
eBook
USD 39.99
Price excludes VAT (USA)
  • Available as PDF
  • Read on any device
  • Instant download
  • Own it forever
Softcover Book
USD 54.99
Price excludes VAT (USA)
  • Compact, lightweight edition
  • Dispatched in 3 to 5 business days
  • Free shipping worldwide - see info

Tax calculation will be finalised at checkout

Purchases are for personal use only

Institutional subscriptions

Preview

Unable to display preview. Download preview PDF.

Unable to display preview. Download preview PDF.

References

  1. M.Bruynooghe, D. De Schreye, B.Krekels, ‘Compiling Control’, Proc. Third Symposium on Logic Programming, Salt Lake City, 1986, pp. 70–77

    Google Scholar 

  2. B. Demoen, A. Marien, ‘Implementation of Prolog as binary definite Programs’ Proceedings of the Second Russion Conference on Logic Programming, Lecture Notes in Artificial Intelligence, 592, p. 165–176, March 1992

    Google Scholar 

  3. J. Gallagher, private communication, April 1991

    Google Scholar 

  4. G. Jarnsens, B. Demoen, A. Marien, ‘Improving the register allocation in WAM by reordering unification’ Proceeding of the International Conference & Symposium on Logic Programming, Seattle, Washington Aug 1988

    Google Scholar 

  5. C.S. Mellish, ‘Some Global Optimizations for a Prolog Compiler’, Journal of Logic Programming, 2 (1): 43–66, 1985

    Article  MATH  Google Scholar 

  6. M. Proietti, A. Pettorossi, ‘Unfolding - Definition - Folding, in this Order, for avoiding unnecessary Variables in Logic Programs’, Proceedings of PLILP’91, pp. 347–358, (eds) P. Deransart & J. Maluszynski, Springer- Verlag 1991

    Google Scholar 

  7. P. Tarau, M. Boyer. 159–173, (eds) P. Deransart & J. Maluszynski, Springer- Verlag 1990

    Google Scholar 

  8. R. Venken, ‘A Prolog meta-interpreter for partial evaluation and its application to source-to-source transformation and query optimisation’, Proc. ECAI’84, Pisa 1984

    Google Scholar 

  9. D.H.D. Warren, ‘An Abstract Prolog Instruction Set’ Technical Report, SRI International, Artificial Intelligence Center, August 1983

    Google Scholar 

Download references

Author information

Authors and Affiliations

Authors

Editor information

Editors and Affiliations

Rights and permissions

Reprints and permissions

Copyright information

© 1993 Springer-Verlag London

About this chapter

Cite this chapter

Demoen, B. (1993). On the Transformation of a Prolog Program to a more efficient binary Program. In: Lau, KK., Clement, T.P. (eds) Logic Program Synthesis and Transformation. Workshops in Computing. Springer, London. https://doi.org/10.1007/978-1-4471-3560-9_17

Download citation

  • DOI: https://doi.org/10.1007/978-1-4471-3560-9_17

  • Publisher Name: Springer, London

  • Print ISBN: 978-3-540-19806-2

  • Online ISBN: 978-1-4471-3560-9

  • eBook Packages: Springer Book Archive

Publish with us

Policies and ethics