Baltic Computer Science Conference

BCS 1991: Baltic Computer Science pp 156-212 | Cite as

Inductive synthesis of dot expressions

  • Alvis Brāzma
Inductive Synthesis Of Programs
Part of the Lecture Notes in Computer Science book series (LNCS, volume 502)

Abstract

We consider the problem of the synthesis of algorithms by sample computations. We introduce a formal language, namely, the so-called dot expressions, which is based on a formalization of the intuitive notion of ellipsis (‘...’). Whilst formally the dot expressions are simply a language describing sets of words, on the other hand, it can be considered as a programming language supporting quite a wide class of programs. Equivalence and asymptotical equivalence of dot expressions are defined and proved to be decidable. A formal example of a dot expression is defined in the way that, actually, it represents a sample computation of the program presented by the given dot expression. A system of simple inductive inference rules synthesizing dot expressions (programs) by their formal examples (sample computations) is developed and proved to synthesize a correct (i.e., asymptotically equivalent to the given) expression by one sufficiently long example. Some instances of the application of the model for program inductive synthesis are also given. Particularly, there are given examples of the euclidean and bubblesort algorithm synthesis within acceptable time from completely natural sample descriptions.

Preview

Unable to display preview. Download preview PDF.

Unable to display preview. Download preview PDF.

References

  1. 1.
    Angluin D. Finding patterns common to a set of strings. J.Compt. Syst. Sci., V21, 1980.,46–62.CrossRefGoogle Scholar
  2. 2.
    Barzdin J. On inductive synthesis of programs. Springer-Verlag, Lecture notes in Computer Sci., V122, 1981. 235–254.Google Scholar
  3. 3.
    Barzdin J. Some rules of inductive inference and their use for program synthesis. IFIP — 83, North-Holland, 1983, 333–338.Google Scholar
  4. 4.
    Barzdin J., Brāzma A., Kinber J. Models of inductive syntactical synthesis. Machine Intellegece, 1990, N12, 139–148.Google Scholar
  5. 5.
    Bierman A.W., Krisnaswamy R. Constructing programs from example computations. IEEE Trans.Soft.Eng., SE-2-1976, 141–153.Google Scholar
  6. 6.
    Brāzma A. The decidability of equivalence for graphical expressions. Theory of algorithms and programming, Riga, 1986, 103–156 (in Russian).Google Scholar
  7. 7.
    Brāzma A., Etmane I. Inductive synthesis of for-expressions. Theory of algorithms and programming, Riga, 1986, 156–189 (in Russian).Google Scholar
  8. 8.
    Brāzma A., Kinber J. Generalized regular expressions — a language for synthesis of programs with branching in loops. Theoretical computer sc. V.46, North-Holland, 1986, 175–195.CrossRefGoogle Scholar
  9. 9.
    Etmane I. A certain formalization of the ellipsis notion. Informatics and semantics. V.27, Moscow, 121–141 (in Russian).Google Scholar
  10. 10.
    Etmane I. An approach to inductive synthesis of programms. Programming, Moscow, 1988, N4, 5–16 (in Russian).Google Scholar
  11. 11.
    Shapiro E. Algorithmic program debugging. MIT Press, 1983.Google Scholar
  12. 12.
    Muggleton S.,Buntine W. Towards constructive induction in first-order predicate calculus. TIRM-88-031, 1988.Google Scholar

Copyright information

© Springer-Verlag 1991

Authors and Affiliations

  • Alvis Brāzma
    • 1
  1. 1.Institute of Mathematics and Computer ScienceThe University of LatviaRīgaLatvia

Personalised recommendations