Proceedings

Explanation Based Program Transformation

Download BibTeX Cite

Proceedings of the Eleventh International Joint Conference on Artificial Intelligence. Automated Deduction. Pages 407-411.

© 1989 International Joint Conferences on Artificial Intelligence

Abstract

Fold-unfold is a well known program transformation technique. Its major drawback is that folding requires an Eureka step to invent new procedures. In the context of logic programming, we present a technique where the folding is driven by an example. The transformation is aimed at programs suffering from inefficiencies due to the repetition of identical subcomputations. The execution of an example is analysed to locate repeated subcomputations. Then the structure of the example is used to control a fold-unfoldtransformation of the program. The transformation can be automated. The method can be regarded as an extension of explanation based learning.

  1. Bird R.S., Tabulation techniques for recursive programs, ACM Computing Surveys, Vol.l2, No.4, 1980, pp.:403-417.
  2. Bruynooghe et al 86]
  3. Bruynooghe M., De Schreye D. and Krekels B., Compiling Control, Proc.Third Interna- tional Symposium on Logic Programming, 1986, pp. 70-78, revised version Journal Logic Programming 1989, pp: 135-162. .
  4. Brustall & Darlington 77]
  5. Burstall R.M. and Darling- ton J., A transformation system for developing recur- sive programs, JACM, 24, 1977, pp. 44-67.
  6. Clocksin, W.F., A technique for translat- ing clausal specifications of numerical methods into efficient programs, Journal of Logic Programming, Vol. 5. No.3, 1988, pp231-242.
  7. & Warren 86]
  8. Debray, S.K., Warren, D.S., Detec- tion and optimisation of functional computations in Prolog, Proceedings Third International Logic Pro- gramming Conference, Springer Verlag, LNCS, Vol. 225, 1986, pp. 490-504.
  9. Debray S.K., Global optimisation of Logic Programs, Ph.D. dissertation, Stony Brook, 1986.
  10. Debray S.K., Unfold/fold transformations and loop optimisation of Logic Programs, report of Dept. Computer Science, University of Arizona, 1987.
  11. DeJong & Mooney 86]
  12. DeJong, G., Mooney, R., Expla- nation-based learning : an alternative view, Machine Learning, Vol. 1, No. 2, 1986, pp. 145-176.
  13. De Schreye & Bruynooghe 89]
  14. De Schreye D., Bruynooghe M. On the transformation of logic pro- grams with instantiation based computation rules, J.Symbolic Computation, 1989, pp:125-154 ..
  15. Fronhofer B., Double work as a reason for inefficiency of programs, Technical report T.U.M. Munchen, 1987.
  16. Gregory S., Towards the compilation of annotated logic programs, Res.Report DOC80/16, June 1980, Imperial College.
  17. Kedar-Cabelli & McCarthy 87]
  18. Kedar-Cabelli, S.T., McCarthy, L.T., Explanation based generalization as resolution theorem proving, in: Proceedings of the 4th International Workshop on Machine Learning, Irvine, Morgan Kaufmann, 1987, pp. 383-389.
  19. Komorowski H.J., A specification of an abstract Prolog machine and its applications to par- tial evaluation, Linkoping Studies in Science and Tech- nology, Dissertation No.69, Linkoping University, 1981.
  20. Kowalski, R.A., Logic for problem solv- ing, North-Holland, 1979.
  21. Mitchell et al. 86
  22. Mitchell, T.M., Keller, R.M., Kedar-Cabelli, S.T., Explanation-based generaliza- tion : a unifying view, Machine Learning, Vol. 1, No.1, 1986, pp. 47-80.
  23. Pelhat S., Analysis and control of recursivi- ty in Prolog programs, Technical report CRIL, Uni- versite de Paris-sud, 1987.
  24. Proietti & Pettorossi 88
  25. Proietti M., Pettorossi A., Some strategies for transforming logic programs, report Istituto di Analisi dei Sistemi ed Informatica, Rome, 1988.
  26. Sato & Tamaki 84]
  27. Sato T., Tamaki H., Transformation- al logic program synthesis, FGCS '84, Tokyo, 1984.
  28. Shavlik & De Jong 87a] Shavlik, J., De Jong, G., BAG- GER : an EBL system that extends and generalizes explanations. Proceedings of the Sixth National Con- ference on Artificial Intelligence, 1987, pp. 516-520 .
  29. Shavlik & De Jong 87b] Shavlik, J., De Jong, G., An explanation-based approach to generalizing number. Proceedings of the tenth International Joint Confer- ence on Artificial Intelligence, Morgan Kaufmann, Milano, 1987,pp.236-238. IJCAI
  30. Van Harmelen & Bundy 89] Van Harmelen, F., Bundy, A., Explanation Based Generalization = Partial Eval- uation, to appear in :Artificial Intelligence, 1989.
  31. Venken R., A Prolog Meta-interpreter for partial evaluation and its applications to source to source transformation and query-optimisation, Proc. of the 6th. ECAI, 1984, pp.:91-100.

References were extracted automatically from the PDF and may contain errors.

Welcome Future Conferences AI Journal Division IJCAI Proceedings About IJCAI IJCAI Awards