Abstract
Inductive program synthesis addresses the problem of automatically generating (declarative) recursive programs from ambiguous specifications such as input/output examples. Potential applications range from software development to intelligent agents that learn in recursive domains. Current systems suffer from either strong restrictions regarding the form of inducible programs or from blind search in vast program spaces. The main contribution of my dissertation (Kitzelmann, Ph.D. thesis, 2010) is the algorithm Igor2 for the induction of functional programs. It is based on search in program spaces but derives candidate programs directly from examples, rather than using them as test cases, and thereby prunes many programs. Experiments show promising results.
Similar content being viewed by others
Notes
The instance for zero objects is a bit artificial. We chose it to keep the example as simple as possible, but it may be skipped and replaced by the three objects instance.
This is currently done by hand.
References
Clavel M, Durán F, Eker S, Lincoln P, Martí-Oliet N, Meseguer J, Talcott C (2003) The maude 2.0 system. In: Rewriting techniques and applications (RTA’03). Lecture notes in artificial intelligence, vol 2706. Springer, Berlin, pp 76–87
Hofmann M (2010) Data-driven detection of catamorphisms: Towards problem specific use of program schemes for inductive program synthesis. In: 22nd symposium on implementation and application of functional languages (IFL)
Katayama S (2007) Systematic search for lambda expressions. In: Selected papers from the 6th symposium on trends in functional programming, pp 111–126. Intellect
Kitzelmann E (2010) A combined analytical and search-based approach to the inductive synthesis of functional programs. PhD thesis, Fakultät für Wirtschaftsinformatik und Angewandte Informatik, Otto-Friedrich Universität Bamberg. URL http://www.opus-bayern.de/uni-bamberg/volltexte/2010/280/
Kitzelmann E, Schmid U (2006) Inductive synthesis of functional programs: an explanation based generalization approach. J Mach Learn Res 7:429–454
Olsson JR (1995) Inductive functional programming using incremental program transformation. Artif Intell 74(1):55–83
Plotkin GD (1970) A note on inductive generalization. Mach Intell 5:153–163
Schmid U (2003) Inductive synthesis of functional programs: universal planning, folding of finite programs, and schema abstraction by analogical reasoning. In Lecture notes in artificial intelligence. Springer, Berlin/New York
Smith DR (1984) The synthesis of LISP programs from examples: a survey. In: Automatic program construction techniques. Macmillan, London, pp 307–324
Veloso MM, Carbonell JG (1993) Derivational analogy in prodigy: automating case acquisition, storage, and utilization. Mach Learn 10:249–278
Author information
Authors and Affiliations
Corresponding author
Rights and permissions
About this article
Cite this article
Kitzelmann, E. A Combined Analytical and Search-Based Approach for the Inductive Synthesis of Functional Programs. Künstl Intell 25, 179–182 (2011). https://doi.org/10.1007/s13218-010-0071-x
Published:
Issue Date:
DOI: https://doi.org/10.1007/s13218-010-0071-x