17.09.17 - 20.09.17, Seminar 17382

Approaches and Applications of Inductive Programming

The following text appeared on our web pages prior to the seminar, and was included as part of the invitation.


The Dagstuhl Seminar Approaches and Applications of Inductive Programming (AAIP'17) is a follow-up to the successful seminars 15442 (www.dagstuhl.de/15442) and 13502 (www.dagstuhl.de/13502) and is the 7th AAIP event overall (started as AAIP'05 as ICML workshop).

The term 'inductive programming' (IP) was coined in 2005 for the first AAIP event as a common label for inductive logic programming (ILP) and inductive functional programming. IP research addresses the problem of learning (mostly declarative) programs from incomplete specifications, such as input/output examples, observed traces, or constraints. Beginning in the 1960-ies, this area of research was initiated in artificial intelligence (AI) exploring the complex intellectual cognitive processes involved in producing program code which satisfies some specification. Furthermore, applications of AI for software engineering are investigated resulting in methodologies and techniques for automating parts of the program development process. Inductive programming can be seen as generalization of current machine learning where the hypothesis space consists of classes of computer programs. Approaches to inductive programming are gaining interest in the machine learning community as the need for interpretability, verification, and debugging of learnt models (programs) is growing.

Researchers working on IP are distributed over different communities, especially inductive logic programming, evolutionary programming, grammar inference, functional programming, and programming languages and verification. Furthermore, similar approaches are of interest in programming by demonstration applications for end-user programming as well as in cognitive models of inductive learning.

Interest in IP has been steadily growing over the last years. One reason is that with the release of FlashFill as a plug-in tool for Microsoft Excel there exists a convincing demonstration that inductive programming research has matured in such a way that commercial applications become feasible. Another one is that researchers in artificial intelligence and in machine learning are becoming more and more interested in comprehensible and explainable systems and inductive programming approaches provide symbolic representations of rules.

A long-term objective of the seminar series is to establish inductive programming as a self-contained research topic in artificial intelligence, especially as a field of machine learning and of cognitive modeling.

The seminar serves as community building event by bringing together researchers from different areas of inductive programming {especially inductive logic programming and inductive functional programming {, from different application areas such as end-user programming and tutoring, and from cognitive science research, especially from cognitive models of inductive (concept) learning. In this meeting we are open to discussions of the relationship between IP and other forms of machine learning including, for instance, neuro-symbolic learning. For successful community building we seek to balance junior and senior researchers, and to mix researchers from universities and from industry.

The two previous seminars resulted in new collaborations between researchers from different back-grounds as documented in joint publications and we expect that the collaborations will continue, deepen and extend, resulting not only in further joint publications but also in joint research projects.

In this seminar, we plan to continue and extend discussion addressing the following aspects:

  • Identifying the specific contributions of inductive programming to machine learning research and applications of machine learning, especially identifying problems for which inductive programming approaches more suited than standard machine learning approaches, including deep learning.
  • Establishing criteria for evaluating inductive programming approaches in comparison to each other and in comparison to other approaches of machine learning and providing a set of benchmark problems.
  • Discussing current applications of inductive programming in end-user programming and programming education and identifying further relevant areas of application.
  • Establishing stronger relations between cognitive science research on inductive learning and inductive programming.

Creative Commons BY 3.0 DE
Ute Schmid, Rishabh Singh, and Stephen H. Muggleton