Skip to main content

Logic Program Synthesis in a Higher-Order Setting

  • Conference paper
  • First Online:
Computational Logic — CL 2000 (CL 2000)

Part of the book series: Lecture Notes in Computer Science ((LNAI,volume 1861))

Included in the following conference series:

Abstract

We describe a system for the synthesis of logic programs from specifications based on higher-order logical descriptions of appropriate refinement operations. The system has been implemented within the proof planning system λClam. The generality of the approach is such that its extension to allow synthesis of higher-order logic programs was straightforward. Some illustrative examples are given. The approach is extensible to further classes of synthesis.

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. David Basin, Alan Bundy, Ina Kraan, and Sean Matthews. A framework for program development based on schematic proof. In Proceedings of the 7th International Workshop on Software Specification and Design (IWSSD-93), 1993. Also available as Max-Planck-Institut für Informatik Report MPI-I-93-231 and Edinburgh DAI Research Report 654.

    Google Scholar 

  2. A. Bundy, A. Smaill, and J. Hesketh. Turning eureka steps into calculations in automatic program synthesis. In S. L.H. Clarke, editor, Proceedings of UK IT 90, pages 221–6. IEE, 1990. Also available from Edinburgh as DAI Research Paper 448.

    Google Scholar 

  3. A. Bundy, A. Stevens, F. van Harmelen, A. Ireland, and A. Smaill. Rippling: A heuristic for guiding inductive proofs. Artificial Intelligence, 62:185–253, 1993. Also available from Edinburgh as DAI Research Paper No. 567.

    Article  MATH  MathSciNet  Google Scholar 

  4. A. Felty. A logic programming approach to implementing higher-order term rewriting. In L-H Eriksson et al., editors, Second International Workshop on Extensions to Logic Programming, volume 596 of Lecture Notes in Artificial Intelligence, pages 135–61. Springer-Verlag, 1992.

    Google Scholar 

  5. Bernd Fischer and Jon Whittle. An integration of deductive retrieval into deductive synthesis. In Proceedings of the 14th IEEE International Conference on Automated Software Engineering (ASE’99), pages 52–61, Cocoa Beach, Florida, USA, October 1999.

    Google Scholar 

  6. P. Flener and Y. Deville. Logic program synthesis from incomplete specifications. Journal of Symbolic Computation: Special Issue on Automatic Programming, 1993.

    Google Scholar 

  7. P. Flener and J. D. C. Richardson. A unified view of programming schemas and proof methods. In LOPSTR’ 99: Preproceedings of the Ninth International Workshop on Logic Program Synthesis and Transformation, Venice, Italy, September 1999, 1999.

    Google Scholar 

  8. T. Gegg-Harrison. Representing logic program schemata in lambdaprolog. Technical report, Dept Computer Science, Winona State University, 1995.

    Google Scholar 

  9. J. Haas and B. Jayaraman. From context-free to definite-clause grammars: A type-theoretic approach. Journal of Logic Programming, 30, 1997.

    Google Scholar 

  10. J. Hannan and D. Miller. Uses of higher-order unification for implementing program transformers. In R. A. Kowalski and K. A. Bowen, editors, Proceedings of the Fifth International Conference and Symposium, pages 942–59. MIT Press, 1988.

    Google Scholar 

  11. G. Huet and B. Lang. Proving and applying program transformation expressed with second order patterns. Acta Informatica, 11:31–55, 1978.

    Article  MATH  MathSciNet  Google Scholar 

  12. I. Kraan. Proof Planning for Logic Program Synthesis. PhD thesis, Department of Artificial Intelligence, University of Edinburgh, 1994.

    Google Scholar 

  13. I. Kraan, D. Basin, and A. Bundy. Logic program synthesis via proof planning. In K. K. Lau and T. Clement, editors, Logic Program Synthesis and Transformation, pages 1–14. Springer-Verlag, 1993. Also available as Max-Planck-Institut für Informatik Report MPI-I-92-244 and Edinburgh DAI Research Report 603.

    Google Scholar 

  14. I. Kraan, D. Basin, and A. Bundy. Middle-out reasoning for logic program synthesis. In D. S. Warren, editor, Proceedings of the Tenth International Conference on Logic Programming. MIT Press, 1993. Also available as Max-Planck-Institut für Informatik Report MPI-I-93-214 and Edinburgh DAI Research Report 638.

    Google Scholar 

  15. K.-K. Lau and M. Ornaghi. Forms of logic specifications. A preliminary study. In J. Gallagher, editor, LOPSTR’ 96, number 1207 in Lecture Notes in Computer Science, pages 295–312. Springer-Verlag, 1996.

    Google Scholar 

  16. K.-K. Lau and S.D. Prestwich. Top-down synthesis of recursive logic procedures from first-order logic specifications. In D.H.D. Warren and P. Szeredi, editors, Proc. 7 th Int. Conf. on Logic Programming, pages 667–684. MIT Press, 1990.

    Google Scholar 

  17. K.-K. Lau and S.D. Prestwich. Synthesis of a family of recursive sorting procedures. In V. Saraswat and K. Ueda, editors, Proc. 1991 Int. Logic Programming Symposium, pages 641–658. MIT Press, 1991.

    Google Scholar 

  18. D. Miller. A logic programming language with lambda abstraction, function variables and simple unification. Technical Report MS-CIS-90-54, Department of Computer and Information Science, University of Pennsylvania, 1990. Appeared in Extensions of Logic Programming, edited by P. Schröder-Heister, Lecture Notes in Artificial Intelligence, Springer-Verlag.

    Google Scholar 

  19. D. Miller and G. Nadathur. An overview of λProlog. In R. Bowen, K. & Kowalski, editor, Proceedings of the Fifth International Logic Programming Conference/Fifth Symposium on Logic Programming. MIT Press, 1988.

    Google Scholar 

  20. J.D.C Richardson, A. Smaill, and Ian Green. System description: proof planning in higher-order logic with lambdaclam. In Claude Kirchner and Héléne Kirchner, editors, 15th International Conference on Automated Deduction, volume 1421 of Lecture Notes in Artificial Intelligence, Lindau, Germany, July 1998.

    Google Scholar 

  21. W. W. Vasconcelos and N.E. Fuchs. An opportunistic approach for logic program analysis and optimisation using enhanced schema-based transformations. In Proceedings of LoPSTr’95, Fifth International Workshop on Logic Program Synthesis and Transformation, Utrecht, Netherlands, volume 1048 of Lecture Notes in Computer Science, pages 175–188. Springer Verlag, 1996.

    Google Scholar 

Download references

Author information

Authors and Affiliations

Authors

Editor information

Editors and Affiliations

Rights and permissions

Reprints and permissions

Copyright information

© 2000 Springer-Verlag Berlin Heidelberg

About this paper

Cite this paper

Lacey, D., Richardson, J., Smail, A. (2000). Logic Program Synthesis in a Higher-Order Setting. In: Lloyd, J., et al. Computational Logic — CL 2000. CL 2000. Lecture Notes in Computer Science(), vol 1861. Springer, Berlin, Heidelberg. https://doi.org/10.1007/3-540-44957-4_6

Download citation

  • DOI: https://doi.org/10.1007/3-540-44957-4_6

  • Published:

  • Publisher Name: Springer, Berlin, Heidelberg

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

  • Online ISBN: 978-3-540-44957-7

  • eBook Packages: Springer Book Archive

Publish with us

Policies and ethics