Preconditions for Structural Synthesis of Programs

  • Vahur Kotkas
Conference paper
Part of the Lecture Notes in Computer Science book series (LNCS, volume 4378)


The current paper presents an extension to the logical language used in Structural Synthesis of Programs (SSP) and describes a modified synthesis algorithm to handle branching in program synthesis. The origin of the extension is from practical experience and introduces statements with preconditions to the logical language of SSP. Using these preconditions one can describe variable domain restrictions in its domain oriented models and gain higher flexibility while doing engineering modeling.


Unable to display preview. Download preview PDF.

Unable to display preview. Download preview PDF.


  1. 1.
    Szabo, M.E.: Collected Papers of Gerhard Gentzen. North-Holland, Amsterdam (1969)zbMATHGoogle Scholar
  2. 2.
    Green, C.C.: Application of theorem proving to problem solving. In: Proceedings IJCAI ’69, pp. 219–240 (1969)Google Scholar
  3. 3.
    Waldinger, R.J.: Constructing programs automatically using theorem proving. Ph.D. Thesis, Carnegie-Mellon U., Pittsburgh, PA (1969)Google Scholar
  4. 4.
    Harf, M., Tyugu, E.: Algorithms of structured synthesis of programs. Programming and Computer Software 6, 165–175 (1980)Google Scholar
  5. 5.
    Tyugu, E.: The structural synthesis of programs. In: Knuth, D.E., Ershov, A.P. (eds.) Algorithms in Modern Mathematics and Computer Science. LNCS, vol. 122, pp. 290–303. Springer, Heidelberg (1981)Google Scholar
  6. 6.
    Mints, G., Tyugu, E.: Justification of the Structural Synthesis of Programs. Science of Computer Programming 2(3), 215–240 (1982)zbMATHCrossRefMathSciNetGoogle Scholar
  7. 7.
    Mints, G.: Complexity of subclasses of the intuitionistic propositional calculus. Special issue: Selected Papers form Workshop on Programming Logic, Bästad, Sweden, May 21-26 (1989)Google Scholar
  8. 8.
    Kanovich, M.I.: Efficient program synthesis: Semantics, logic, complexity. In: Ito, T., Meyer, A.R. (eds.) TACS 1991. LNCS, vol. 526, pp. 615–632. Springer, Heidelberg (1991)Google Scholar
  9. 9.
    Matskin, M., Komorowski, J.: Partial Structural Synthesis of Programs. Fundamenta Informaticae 31, 125–144 (1997)zbMATHMathSciNetGoogle Scholar
  10. 10.
    Tyugu, E.: On the border between functional programming and program synthesis. In: Proc. Estonian Acad. Sci. Engng., pp. 119–129 (1998)Google Scholar
  11. 11.
    Harf, M., et al.: Automated Program Synthesis for Java Programming Language. In: Bjørner, D., Broy, M., Zamulin, A.V. (eds.) PSI 2001. LNCS, vol. 2244, pp. 157–164. Springer, Heidelberg (2001)CrossRefGoogle Scholar
  12. 12.
    Matskin, M., Tyugu, E.: Strategies of Strucutral Synthesis of Programs and Its Extensions. Computing and Informatics 20, 1–25 (2001)zbMATHMathSciNetGoogle Scholar
  13. 13.
    Kotkas, V.: A distributed program synthesizer. Acta Cybernetica 15, 567–581 (2002)zbMATHGoogle Scholar
  14. 14.
    Lämmermann, S.: Runtime service composition via logic-Based Program Synthesis. PhD Thesis. Royal Institute of Technology, Stockholm, Sweden. Technical Report TRITA-IT AVH 02:03 (2002)Google Scholar
  15. 15.
    Kotkas, V.: Synthesis of Distributed Programs. In: Proceedings of the Eighth Symposium on Programming Languages and Software Tools, Kuopio (2003)Google Scholar
  16. 16.
    Kanovich, M., Vauzeilles, J.: Coping Polynomially with Numerous but Identical Elements within Planning Problems. In: Baaz, M., Makowsky, J.A. (eds.) CSL 2003. LNCS, vol. 2803, pp. 285–298. Springer, Heidelberg (2003)Google Scholar

Copyright information

© Springer-Verlag Berlin Heidelberg 2007

Authors and Affiliations

  • Vahur Kotkas
    • 1
  1. 1.Software Department, Institute of Cybernetics at TTU, 12618 TallinnEstonia

Personalised recommendations