Skip to main content

Automatic bottom-up analysis and transformation of logic programs

  • Logic Programming, Temporal Reasoning and Belief Functions
  • Conference paper
  • First Online:
Advances in Artificial Intelligence (SBIA 1996)

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

Included in the following conference series:

  • 163 Accesses

Abstract

The comparatively small size and clean declarative semantics of logic programs hide performance issues that must be accounted for if the programs are to be executed using the currently available technology. Proposals have been made to tackle these computational issues by analysing a program and trying to optimise its code. We introduce a bottom-up method for analysing logic programs. The method incrementally builds self-contained subtheories of the initial program, starting from facts and then picking up more complex clauses that depend on simpler, previously analysed constructs. A transformation system is then applied to these subtheories yielding more efficient subprograms. Eventually a subtheory that encompasses the full initial program is obtained.

This work was partially carried out while the first author was visiting the Department of Artificial Intelligence, University of Edinburgh, Scotland, Great Britain.

Sponsored by the Brazilian Research Council (CNPq), grant n∘ 300.968/95-7.

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. N. E. Fuchs and M. P. J Fromherz. Schema-Based Transformations of Logic Programs. In Proceedings of the International Workshop on Logic Program Synthesis and Transformation (LoPSTr'92). Springer-Verlag, 1992.

    Google Scholar 

  2. J. P. Gallagher. A Bottom-Up Analysis Toolkit. Technical report, Dept. Comp. Sci., Univ. of Bristol, 1995. Invited talk given at WAILL (Workshop on Abstract Interpretation of Logic Languages), Israel.

    Google Scholar 

  3. G. Huet and B. Lang. Proving and Applying Program Transformations Expressed with Second-Order Patterns. Acta Informatica, 11:31–55, 1978.

    Google Scholar 

  4. A. Lakhotia and L. Sterling. How to Control Unfolding when Specialising Interpreters. In L. Sterling, editor, The Practice of Prolog. MIT Press, 1990.

    Google Scholar 

  5. M. Proietti and A. Pettorossi. Best-first Strategies for Incremental Transformations of Logic Programs. In Proceedings of the Second International Workshop on Logic Program Synthesis and Transformation (LoPSTr'92), 1992.

    Google Scholar 

  6. M. Proietti and A. Pettorossi. Transformations of Logic Programs: Foundations and Techniques. Journal of Logic Programming, 19, 20:261–320, 1994.

    Google Scholar 

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

    Google Scholar 

  8. W. W. Vasconcelos and M. T. Aragão. Proving Schema-Based Transformations for Logic Programs. Extended Abstract, 1996. Available from authors.

    Google Scholar 

  9. 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. Tech. Rep. 95.24, IFI, Univ. Zürich, 1995.

    Google Scholar 

  10. W. W. Vasconcelos and N. E. Fuchs. An Opportunistic Approach for Logic Program Analysis and Optimisation using Enhanced Schema-Based Transformations. In Proc. 5th Int'l Workshop on Logic Program Synthesis and Transformation (LoPSTr'95), The Netherlands, 1996. Springer-Verlag.

    Google Scholar 

  11. W. W. Vasconcelos and N. E. Fuchs. Prolog Program Development via Enhanced Schema-Based Transformations. Technical report, Department of Artificial Intelligence, University of Edinburgh, 1996.

    Google Scholar 

Download references

Author information

Authors and Affiliations

Authors

Editor information

Díbio L. Borges Celso A. A. Kaestner

Rights and permissions

Reprints and permissions

Copyright information

© 1996 Springer-Verlag Berlin Heidelberg

About this paper

Cite this paper

Vasconcelos, W.W., Aragão, M.A.T., Fuchs, N.E. (1996). Automatic bottom-up analysis and transformation of logic programs. In: Borges, D.L., Kaestner, C.A.A. (eds) Advances in Artificial Intelligence. SBIA 1996. Lecture Notes in Computer Science, vol 1159. Springer, Berlin, Heidelberg. https://doi.org/10.1007/3-540-61859-7_20

Download citation

  • DOI: https://doi.org/10.1007/3-540-61859-7_20

  • Published:

  • Publisher Name: Springer, Berlin, Heidelberg

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

  • Online ISBN: 978-3-540-70742-4

  • eBook Packages: Springer Book Archive

Publish with us

Policies and ethics