Abstract
This paper describes the synthesis of functions from input-output examples. The synthesis is achieved by transforming the examples into computation traces and finding recurrent relations between these traces.
The algorithm can also transform a recursive program into an iterative one, when the recursive program is used to obtain computation traces.
In order to obtain the recurrent relations, the algorithm uses pattern-matching, generalization, and the composition of functions. From these relations, we construct a program by using powerful synthesis theorems.
The programs we can synthesize are defined on a totally ordered domain, and have traces of polynomially or exponentially increasing length.
This is a preview of subscription content, log in via an institution.
Buying options
Tax calculation will be finalised at checkout
Purchases are for personal use only
Learn about institutional subscriptionsPreview
Unable to display preview. Download preview PDF.
References
ARSAC J., KODRATOFF Y., “Some methods for transformation of recursive procedures into iterative ones”, W.G. 3 meeting Zakopane (1979) and Pub. LITP 79–2.
BIERMAN A.W., SMITH D.R., “The hierarchical synthesis of LISP programs”, Information Processing 77 (1977) pp 41–45.
BURSTALL R.M., DARLINGTON J., “A transformation system for developing recursive programs”, J. ACM 24 (1977) pp 44–67.
GREUSSAY P., Thesis Publication LITP (1978).
JOUANNAUD J.P., GUIHO G., “inference of functions with an interactive system”, Machine Intelligence 9, D. Michie ed. (1979), pp 227–250.
JOUANNAUD J.P., KODRATOFF Y., “Characterization of a class of functions synthesized from examples by a Summers like method using a BMW matching technique”, Proc IJCAI-79, pp 440–446.
KODRATOFF Y., “A class of functions synthesized from a finite number of examples and a LISP program scheme”, Int. J. of-Comp, and Sci., lol 8 n°6 (1979), pp 489–521.
KODRATOFF Y., “Un algorithme pour l’obtention de formes terminales recursive à partir de traces de calcul”, Actes des journées francophones: production assistée de logic iel, Genève, Janvier 1980, pp 36–63.
KODRATOFF Y., PAPON E., “A system for program synthesis and program optimization”, Proa. AISB meeting, Amsterdam, 1980.
MANNA Z., NESS S., VUILLEMIN J., “Inductive methods for proving properties of programs”, C. ACM 16 (1973), pp 491–502.
MC. CARTHY J., “Towards a mathematical science of computation”, Proc IUP, 1962, pp 21–28.
PLOTKIN G.D., “A note on inductive generalization”, V. Int. 5, 1969, pp 153–163.
ROBINSON J.A., “A machine oriented logic based on the resolution principle”, J. ACM, 1965, pp 23–41.
SCOTT D., “Outline of mathematical theory of computation”, 4 th An. Princeton Conf. Inf. Sci. & Syst. (1970), pp 169–176.
SUMMERS P.D., “A methodology for LISP program construction from examples”, J. ACM 24 (1977), pp 161–175.
Author information
Authors and Affiliations
Editor information
Editors and Affiliations
Rights and permissions
Copyright information
© 1980 Springer-Verlag Berlin · Heidelberg
About this paper
Cite this paper
Papon, E. (1980). Inducing Non-Trivial Programs from Examples. In: Wilhelm, R. (eds) GI - 10. Jahrestagung. Informatik-Fachberichte, vol 33. Springer, Berlin, Heidelberg. https://doi.org/10.1007/978-3-642-67838-7_43
Download citation
DOI: https://doi.org/10.1007/978-3-642-67838-7_43
Publisher Name: Springer, Berlin, Heidelberg
Print ISBN: 978-3-540-10388-2
Online ISBN: 978-3-642-67838-7
eBook Packages: Springer Book Archive