Skip to main content

An opportunistic approach for logic program analysis and optimisation using enhanced schema-based transformations

  • Conference paper
  • First Online:
Logic Program Synthesis and Transformation (LOPSTR 1995)

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

Abstract

We propose an opportunistic approach for performing program analysis and optimisation: opportunities for improving a logic program are systematically attempted, either by examining its procedures in an isolated fashion, or by checking for conjunctions within clauses that can be used as joint specifications. Opportunities are represented as enhanced schema-based transformations, generic descriptions of inefficient programming constructs and of how these should be altered in order to confer a better computational behaviour on the program. The programming constructs are described in an abstract manner using an enhanced schema language which allows important features to be highlighted and irrelevant details to be disregarded.

This work was carried out within the European Human Capital and Mobility Scheme (contract No. CHRX-CT 93-00414/BBW 93.0268) while the first author was visiting the Institut für Informatik, Universität Zürich.

PhD Student, Department of Artificial Intelligence, University of Edinburgh, Scotland, U.K., sponsored by the Brazilian National Research Council (CNPq, grant No. 201340/91-7), on leave from UECE/Ceará, Brazil.

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. A. Bowles, D. Robertson, W. Vasconcelos, M. Vargas-Vera, D. Bental. Applying Prolog Programming Techniques. International Journal of Human-Computer Studies, 41(3):329–350, September 1994.

    Google Scholar 

  2. P. Flener. Logic Program Schemata: Synthesis and Analysis. Technical Report BU-CEIS-9502, Bilkent University, Ankara, Turkey, 1995.

    Google Scholar 

  3. P. Flener, Y. Deville. Logic Program Transformation through Generalization Schemata. Extended abstract accepted for LoPSTr'95 (Utrecht, the Netherlands, 20–22 September, 1995)

    Google Scholar 

  4. N. E. Fuchs and M. P. J. Fromherz. Schema-Based Transformations of Logic Programs. In: Proceedings of the Workshop in Logic Program Synthesis and Transformation (LoPSTr'91), Springer-Verlag, 1992.

    Google Scholar 

  5. T. S. Gegg-Harrison. Learning Prolog in a Schema-Based Environment. Instructional Science, 20:173–192, 1991.

    Google Scholar 

  6. M. Kirschenbaum, S. Michaylov, and L. Sterling. Skeletons and Techniques as a Normative Approach to Program Development in Logic-Based Languages. OSU-CISRC-5/94-TR25, Dept. of Computer and Information Science, Ohio State University, Ohio, U.S.A., 1994.

    Google Scholar 

  7. A. Lakhotia and L. Sterling. How to Control Unfolding when Specialising Interpreters. In The Practice of Prolog, L. Sterling (Ed.), MIT Press, 1990.

    Google Scholar 

  8. H. R. Nielson and F. Nielson. Eureka Definitions for Free — Disagreement Points for Fold/Unfold Transformations. In Proceedings of ESOP'90, Lecture Notes in Computer Science 432, pp. 291–305, Springer-Verlag, 1990.

    Google Scholar 

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

    Google Scholar 

  10. M. Proietti and A. Pettorossi. Synthesis of Eureka Predicates for Developing Logic Programs. In Proceedings of ESOP'90, Lecture Notes in Computer Science 432, pp. 306–325, Springer-Verlag, 1990.

    Google Scholar 

  11. D. Robertson. A Simple Prolog Techniques Editor for Novice Users. In Proceedings of 3rd Annual Conference on Logic Programming, Edinburgh, Scotland, April 1991. Springer-Verlag.

    Google Scholar 

  12. L. Sterling and E. Y. Shapiro. The Art of Prolog: Advanced Programming Techniques. Second Edition. MIT Press, 1994.

    Google Scholar 

  13. M. Vargas-Vera. Using Prolog Techniques to Guide Program Composition. PhD Thesis. University of Edinburgh. Edinburgh, Scotland, 1995.

    Google Scholar 

  14. M. Vargas-Vera, D. Robertson, W. W. Vasconcelos. Building Large-Scale Prolog Programs using a Techniques Editing System. Technical Report 635. Department of Artificial Intelligence, University of Edinburgh. Edinburgh, Scotland, 1993.

    Google Scholar 

  15. W. W. Vasconcelos and N. E. Fuchs. Opportunistic Logic Program Analysis and Optimisation: Enhanced Schema-Based Transformations for Logic Programs and their Usage in an Opportunistic Framework for Program Analysis and Optimisation. Technical Report 95-24. Institut für Informatik, Universität Zürich, August 1995.

    Google Scholar 

Download references

Author information

Authors and Affiliations

Authors

Editor information

Maurizio Proietti

Rights and permissions

Reprints and permissions

Copyright information

© 1996 Springer-Verlag Berlin Heidelberg

About this paper

Cite this paper

Vasconcelos, W.W., Fuchs, N.E. (1996). An opportunistic approach for logic program analysis and optimisation using enhanced schema-based transformations. In: Proietti, M. (eds) Logic Program Synthesis and Transformation. LOPSTR 1995. Lecture Notes in Computer Science, vol 1048. Springer, Berlin, Heidelberg. https://doi.org/10.1007/3-540-60939-3_14

Download citation

  • DOI: https://doi.org/10.1007/3-540-60939-3_14

  • Published:

  • Publisher Name: Springer, Berlin, Heidelberg

  • Print ISBN: 978-3-540-60939-1

  • Online ISBN: 978-3-540-49745-5

  • eBook Packages: Springer Book Archive

Publish with us

Policies and ethics