Partial deduction in the framework of structural synthesis of programs

  • Mihhail Matskin
  • Jan Komorowski
  • John Krogstie
Conference paper
Part of the Lecture Notes in Computer Science book series (LNCS, volume 1207)


The notion of partial deduction known from logic programming is defined in the framework of Structural Synthesis of Programs (SSP). Partial deduction for unconditional computability statements in SSP is defined. Completeness and correctness of partial deduction in the framework of SSP are proven. Several tactics and stopping criteria are suggested.


Unable to display preview. Download preview PDF.

Unable to display preview. Download preview PDF.


  1. 1.
    M. Z. Ariola and Arvind. A syntactic approach to program transformation. In Proceedings of the symposium on Partial Evaluation and Semantics-Based Program Manipulation (PEPM'91), pages 116–129. ACM press, 1991.Google Scholar
  2. 2.
    D. Bjørner, A. P. Ershov, and N. D. Jones, editors. Partial Evaluation and Mixed Computation, Gammel Avernæs, October 18–24 1987. North-Holland.Google Scholar
  3. 3.
    R.L. Constable, S.F. Allen, H.M. Bromley et al. Implementing mathematics with the Nurpl Proof development system Prentice-Hall, 1986.Google Scholar
  4. 4.
    H-M. Haav and M. Matskin. Using partial deduction for automatic propagation of changes in OODB. In H. Kangassalo et al, editor, Information Modeling and Knowledge Bases IV, pages 339–352. IOS Press, 1993.Google Scholar
  5. 5.
    N. D. Jones, C. K. Gomard, and P. Sesoft. Partial Evaluation and Automatic Program Generation. Prentice Hall, Englewood Cliffs, NJ, 1993.Google Scholar
  6. 6.
    S. Kleene. Introduction to metamathematics. Amsterdam, North-Holland, 1952.Google Scholar
  7. 7.
    J. Komorowski. A Specification of An Abstract Prolog Machine and Its Application to Partial Evaluation. PhD thesis, Department of Computer and Information Science, Linköping University, Linköping, Sweden, 1981.Google Scholar
  8. 8.
    J. Komorowski. Partial evaluation as a means for inferencing data structures in an applicative language: a theory and implementation in the case of Prolog. Proc. of the ACM Symp. Principles of Programming Languages, ACM, pp. 255–267, 1982.Google Scholar
  9. 9.
    J. Komorowski. A Prolegomenon to partial deduction. Fundamenta Informaticae, 18(1):41–64, January 1993.Google Scholar
  10. 10.
    I. Krogstie and M. Matskin. Incorporating partial deduction in structural synthesis of program. Technical Report 0802-6394 5/94, IDT, NTH, Trondheim, Norway, June 1994.Google Scholar
  11. 11.
    J. W. Lloyd. Foundations of logic programming. Springer Verlag, second edition, 1987.Google Scholar
  12. 12.
    J. W. Lloyd and J. C. Shepherdson. Partial evaluation in logic programming., Journal of Logic Programming, 1991:11:217–242, also: Technical Report CS-87-09 (revised 1989), University of Bristol, England, July 1989.Google Scholar
  13. 13.
    Z. Manna, R. Waldinger. A Deductive approach to program synthesis. ACM Trans. on Programming Languages and Systems, 2(1):294:327, Jan, 1980.Google Scholar
  14. 14.
    M. Matskin. Debugging in programming systems with structural synthesis of programs (in Russian). Software, 4:21–26, 1983.Google Scholar
  15. 15.
    M. Matskin and J. Komorowski. Partial deduction and manipulation of classes and objects in an object-oriented environment. In Proceedings of the First Compulog-Network Workshop on Programming Languages in Computational Logic, Pisa, Italy, April 6–7 1992.Google Scholar
  16. 16.
    G. Mints and E. Tyugu. Justification of structural synthesis of programs. Science of Computer Programming, 2(3):215–240, 1982.Google Scholar
  17. 17.
    J. Pahapill. Programmpaket zur modeliering der hydromachinen systeme. 6. Fachtagung Hydraulik und Pneumatik, Magdeburg, pp. 609–617, 1985.Google Scholar
  18. 18.
    D. A. Schmidt. Static properties of partial evaluation. In Bjørner et al. [2], pages 465–483.Google Scholar
  19. 19.
    E. Tyugu. The structural synthesis of programs. In Algorithms in Modern Mathematics and Computer Science, number 122 in Lecture Notes in Computer Science, pages 261–289, Berlin, 1981. Springer-Verlag.Google Scholar
  20. 20.
    E. Tyugu. Knowledge-Based Programming. Turing Institute press, 1988.Google Scholar
  21. 21.
    E. Tyugu. Three new-generation software environments. Communications of the ACM, 34(6):46–59, June 1991.Google Scholar
  22. 22.
    B. Volozh, M. Matskin, G. Mints, E. Tyugu. Theorem proving with the aid of program synthesizer Cybernetics, 6:63–70, 1982.Google Scholar
  23. 23.
    T. Uustalu, U. Kopra, V. Kotkas, M. Matskin and E. Tyugu. The NUT Language Report. The Royal Institute of Technology (KTH),TRITA-IT R 94:14, 51 p., 1994.Google Scholar

Copyright information

© Springer-Verlag Berlin Heidelberg 1997

Authors and Affiliations

  • Mihhail Matskin
    • 1
  • Jan Komorowski
    • 1
  • John Krogstie
    • 1
  1. 1.Department of Computer SystemsNorwegian University of Science and TechnologyTrondheimNorway

Personalised recommendations