Improving Execution Models of Logic Programs by Two-phase Abstract Interpretation

  • Published : 1995.01.31

Abstract

This paper improves top-down execution models of logic programs based on a two-phase abstract interpretation which consists of a bottom-up analysis followed by a top-down one. The two-phase analysis provides an approximation of all (possibly non-ground) success patterns of clauses relevant to a query. It is specialized by considering Sato and Tamaki’s depth k abstraction as abstract function. By the ability of the analysis to approximate possibly non-ground success patterns of clauses relevant to a query, it can be statically determined whether some subgoals will fail during execution and some succeeding subgoals do not participate in success patterns of program clauses relevant to a given query. These properties are utilized to improve execution models. This approach can be easily applied to any top-down (parallel) execution models. As instances, it is shown to be applicable to linear execution model and AND/OR Process Model.

Keywords

References

  1. Proceedings of the 4th ACM Symposium on Principles of Programming Languages Abstract interpretation: A unified lattice model for static analysis of programs by construction or approximation of fixed points Cousot, P.;Cousot, R.
  2. ACM Transactions on Programming Languages and Systems v.15 no.1 A general framework for semantics-basedbottom-up abstract interpretation of logic programs Barbuti, R.;Giacobazzi, R.;Levi, G.
  3. Theoretical Computer Science Bottom-up abstract interpretation of logic programs Codish, M.;Dams, D.;Yardeni, E.
  4. Proceedings of the 1993 International Logic Programming Symposium Analysing logic programs using prop-ositional logic programs and a magic wand Codish, M.;Demoen, B.
  5. Proceedings of ACM Symposium on Applied Computing Goal independency and call patterns in the analysis of logic programs Gabbrielli, M.;Giacobazzi, R.
  6. Analyzing success patterns of logic programs by abstract hybrid interpretation, ICOT Report TR-279 Kanamori, T.;Kawamura, T.
  7. Journal of Logic Programming v.15 Abstract interpretation based on OLDT resolution Kanamori, T.;Kawamura, T.
  8. Proceedings of the 5th International Conference on Logic Programming Bottom-up abstract interpretation of logic programs Marriott, K.;Sondergaard, H.
  9. Theoretical Computer Science v.34 Enumeration of success patterns in logic programs Sato, T.;Tamaki, H.
  10. Journal of the ACM v.23 no.4 The semantics of predicate logic as a programming language van Emden, M.H.;Kowalski, R.A.
  11. Efficient Bottom-up Execution of Logic Programs using Compile-time Analysis Chang, B.M.
  12. Journal of Logic Programming v.13 Abstract interpretation and application to logic programs Cousot, P.;Cousot, R.
  13. Theoretical Computer Science v.69 Declarative modeling of the operational behavior of logic languages Falaschi, M.;Levi, G.;Palamidessi, C.;Martelli, M.
  14. The AND/OR process model for parallel interpretation of logic programs Conery, J.
  15. Proceedings of the International Conference on Fifth Generation Computer Systems Restricted AND-parallelism DeGroot, D.
  16. Proceedings of the 4th IEEE Symposiumon Logic Programming Extension tables: memo relations in logic programming Dietrich, S.W.;Warren, D.S.
  17. Proceedings of the 3rd International Conference on Logic Programming, Lecture Notes in Computer Science v.239 OLD resolution with tabulation Tamaki, H.;Sato, T.
  18. ACM SIGPLAN Notices v.29 no.2 A review of exploitation of AND-parallelism and combined AND/OR-parallelism in logic programs Zhang, K.
  19. Information Processing Letters v.47 Efficient bottom-up execution of logic programs using abstract interpretation Chang, B.M.;Choe, K.M.;Han, T.
  20. Proceedings of International Conference of Algebraic and Logic Programming, Lecture Notes in Computer Science v.632 Oracle semantics for Prolog Barbuti, R.;Codish, M.;Giacobazzi, R.;Maher, M.
  21. Foundation of Logic Programming Lloyd, J.W.
  22. Proceedings of the 30th IEEE Computer Society International Conference AND-parallelism of logic programs based on static data dependency analysis Chang, J.H.;Despain, A.M.;DeGroot, D.
  23. Parallel Processing Letters v.2 Refined mark(s)-set-based backtrack literal selection of AND parallelism in logic programs Kim, D.H.;Choe, K.M.;Han, T.
  24. Proceedings of the 3th IEEE International Symposium on Logic Programming Selecting the backtrack literal in the AND/OR process model Woo, N.;Choe, K.M.
  25. Journal of Logic Programming v.13 Bottom-up dataflow analysis of normal logic programs Marriott, K.;Sondergaard, H.
  26. Science of Computer Programming v.19 no.3 A bottom-up poly-morphic type inference in logic programming Barbuti, R.;Giacobazzi, R.
  27. Proceedings of the 5th Interna-tional Conference on Logic Programming An instance of abstract interpretation integrating type and mode inferencing Bruynooghe, J.;Janssens, G.