Skip to main content

FOLON: An environment for declarative construction of logic programs

  • Conference paper
  • First Online:
Programming Language Implementation and Logic Programming (PLILP 1992)

Part of the book series: Lecture Notes in Computer Science ((LNCS,volume 631))

Abstract

Although very attractive from a theoretical standpoint, the “Program = Logic + Control” equation of logic programming is sometimes considered too idealistic by “real life” programmers. The lack of adequate tools to practically support a rigorous approach based on logic is advocated here to be a main cause of this discrepancy. An implemented environment based on a precise methodology is presented. It provides for the handling of specifications, the computer-aided construction and the prototyping of (pure) logic descriptions, and the derivation and optimization of Prolog procedures from those descriptions. The system and the methodology are outlined jointly. The system-aided construction of a complete example is presented afterwards.

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.

Similar content being viewed by others

References

  1. M. Bruynooghe. A practical framework for the abstract interpretation of logic programs. Journal of Logic Programming, 10(2):91–124, 1991.

    Google Scholar 

  2. A. Bundy, A. Smaill, and G. Wiggins. The synthesis of logic programs from inductive proofs. In J.W. Lloyd, editor, Computational Logic, Esprit Basic Research Series, 1990.

    Google Scholar 

  3. J. Burnay. Logist. Research report, University of Namur, Belgium, 1989.

    Google Scholar 

  4. K.L. Clark. Negation as failure. In Gallaire and Minker, editors, Logic and Databases, pages 230–245. Plenum Press, New York, 1978.

    Google Scholar 

  5. W.F. Clocksin and C.S. Mellish. Programming in Prolog. Springer-Verlag, 1984.

    Google Scholar 

  6. P. De Boeck and B. Le Charlier. Static type analysis of Prolog procedures for ensuring correctness. In Procceedings of PLILP'90, volume 456 of LNCS, pages 222–237, Linköping, Sweden, 1990. Springer-Velag.

    Google Scholar 

  7. P. De Boeck and B. Le Charlier. Automatic construction of Prolog primitives for type checking analysis. In M. Billaud and al., editors, JTASPEFL'91, pages 165–172, Bordeaux, France, 1991. Bigre 74.

    Google Scholar 

  8. P. De Boeck and B. Le Charlier. Using static type analysis for constructing correct Prolog procedures. In ICLP'91 Pre-Conference Workshop on Semantics-Based Analysis of Logic Programs, INRIA Rocquencourt, France, 1991.

    Google Scholar 

  9. P. De Boeck and B. Le Charlier. Some lessons drawn from using static type analysis for ensuring the correctness of logic program, submitted for publication, 1992.

    Google Scholar 

  10. B. Desart. Prototypage d'algorithmes logiques. Master's thesis, University of Namur, Belgium, 1989.

    Google Scholar 

  11. B. Desart. Logic description interpretor: Integration into computer assistance for logic program construction. Research report, University of Namur, Belgium, 1990.

    Google Scholar 

  12. Y. Deville. Logic Programming: Systematic Program Development. Addison Wesley, 1990.

    Google Scholar 

  13. Y. Deville and J. Burnay. Generalization and program schemata: A step towards computer-aided construction of logic programs. In E.L. Lusk and R.A. Overbeek, editors, Proceedings of NACLP'89, pages 409–425, Cleveland, Ohio, 1989. The MIT Press.

    Google Scholar 

  14. P. Flener and Y. Deville. Synthesis of composition and discrimination operators for divide-and-conquer logic programs. In J.-M. Jacquet, editor, Proceedings of the ICLP'91 Preconference Workshop on Logic Program Construction. John Wiley, 1992.

    Google Scholar 

  15. P. Flener and Y. Deville. Towards stepwise, schema-guided synthesis of logic programs. In K.K. Lau and T. Clement, editors, Proceedings of LOPSTR'91 Workshop. Springer Verlag, 1992.

    Google Scholar 

  16. F. Giannesini, H. Kanoui, R. Pasero, and M. van Caneghem. Prolog. Wokingham: Addison-Wesley, 1986.

    Google Scholar 

  17. J. Henrard. Using the folon environment: A user guide. Research Report 13-92, University of Namur, Belgium, 1992.

    Google Scholar 

  18. P.M. Hill and J.W. Lloyd. The Gödel report (preliminary version). Technical Report TR-91-02, Computer Science Departement, University of Bristol, March 1991.

    Google Scholar 

  19. R.A. Kowalski. Logic for Problem Solving. Amsterdam: North-Holland, 1979.

    Google Scholar 

  20. B Le Charlier and P. Van Hentenryck. Experimental evaluation of a generic abstract interpretation algorithm for Prolog. In Proceedings of ICCL '92, San Franciso, April 1992.

    Google Scholar 

  21. J.W. Lloyd. Foundations of Logic Programming. Springer Series: Symbolic Computation-Artificial Intelligence. Springer-Velag, second, extended edition, 1987.

    Google Scholar 

  22. L. Naish. Specification = program + types. In K. Nori, editor, Foundations of Software Technology and Theoretical Computer Science, number 287 in LNCS. Springer-Verlag, 1987.

    Google Scholar 

  23. L. Naish. Verification of logic programs and imperative programs. In J.-M. Jacquet, editor, Proceedings of the ICLP'91 Preconference Workshop on Logic Program Construction. John Wiley, 1992.

    Google Scholar 

  24. R.A. O'Keefe. The Craft of Prolog. MIT Press, 1990.

    Google Scholar 

  25. L. Sterling and E. Shapiro. The Art of Prolog: Advanced Programming Techniques. MIT Press, 1986.

    Google Scholar 

Download references

Author information

Authors and Affiliations

Authors

Editor information

Maurice Bruynooghe Martin Wirsing

Rights and permissions

Reprints and permissions

Copyright information

© 1992 Springer-Verlag Berlin Heidelberg

About this paper

Cite this paper

Henrard, J., Le Charlier, B. (1992). FOLON: An environment for declarative construction of logic programs. In: Bruynooghe, M., Wirsing, M. (eds) Programming Language Implementation and Logic Programming. PLILP 1992. Lecture Notes in Computer Science, vol 631. Springer, Berlin, Heidelberg. https://doi.org/10.1007/3-540-55844-6_138

Download citation

  • DOI: https://doi.org/10.1007/3-540-55844-6_138

  • Published:

  • Publisher Name: Springer, Berlin, Heidelberg

  • Print ISBN: 978-3-540-55844-6

  • Online ISBN: 978-3-540-47297-1

  • eBook Packages: Springer Book Archive

Publish with us

Policies and ethics