Home → Magazine Archive → November 2015 (Vol. 58, No. 11) → Inductive Programming Meets the Real World → Abstract

Inductive Programming Meets the Real World

By Sumit Gulwani, José Hernández-Orallo, Emanuel Kitzelmann, Stephen H. Muggleton, Ute Schmid, Benjamin Zorn

Communications of the ACM, Vol. 58 No. 11, Pages 90-99

[article image]

Much of the world's population use computers for everyday tasks, but most fail to benefit from the power of computation due to their inability to program. Most crucially, users often have to perform repetitive actions manually because they are not able to use the macro languages available for many application programs. Recently, a first mass-market product was presented in the form of the Flash Fill feature in Microsoft Excel 2013. Flash Fill allows end users to automatically generate string-processing programs for spreadsheets from one or more user-provided examples. Flash Fill is able to learn a large variety of quite complex programs from only a few examples because of incorporation of inductive programming methods.

Back to Top

Key Insights


Inductive programming (IP) is an interdisciplinary domain of research in computer science, artificial intelligence, and cognitive science that studies the automatic synthesis of computer programs from examples and background knowledge. IP developed from research on inductive program synthesis, now called inductive functional programming (IFP), and from inductive inference techniques using logic, nowadays termed inductive logic programming (ILP). IFP addresses the synthesis of recursive functional programs generalized from regularities detected in (traces of) input/output examples19,41 using generate-and-test approaches based on evolutionary27,34,35 or systematic16,28 search or data-driven analytical approaches.6,11,17,23,38 Its development is complementary to efforts in synthesizing programs from complete specifications using deductive and formal methods.8


No entries found