skip to main content
review-article
Free Access

Inductive programming meets the real world

Published:23 October 2015Publication History
Skip Abstract Section

Abstract

Inductive programming can liberate users from performing tedious and repetitive tasks.

References

  1. Bengio, Y., Courville, A. and Vincent, P. Representation learning: A review and new perspectives. Pattern Analy. Machine Intell. 35, 8 (2013), 1798--1828. Google ScholarGoogle ScholarDigital LibraryDigital Library
  2. Bielawski, B. Using the convertfrom-string cmdlet to parse structured text. PowerShell Magazine, (Sept. 9, 2004); http://www.powershellmagazine.com/2014/09/09/using-the-convertfrom-string-cmdlet-to-parse-structured-text/Google ScholarGoogle Scholar
  3. Carlson, A., Betteridge, J., Kisiel, B., Settles, B., Hruschka-Jr, E.R. and T.M. Mitchell, T.M. Toward an architecture for never-ending language learning. In AAAI, 2010.Google ScholarGoogle ScholarDigital LibraryDigital Library
  4. Chandola, V., Banerjee, A. and V. Kumar, V. Anomaly detection: A survey. ACM Computing Surveys 41, 3 (2009), 15. Google ScholarGoogle ScholarDigital LibraryDigital Library
  5. Cypher, A. (Ed). Watch What I Do: Programming by Demonstration. MIT Press, Cambridge, MA, 1993. Google ScholarGoogle ScholarDigital LibraryDigital Library
  6. Ferri-Ramírez, C., Hernández-Orallo, J. and Ramírez-Quintana, M.J. Incremental learning of functional logic programs. In Proceedings of FLOPS, 2001, 233--247. Google ScholarGoogle ScholarDigital LibraryDigital Library
  7. Flener, P. and Schmid, U. An introduction to inductive programming. AI Review 29, 1 (2009), 45--62. Google ScholarGoogle ScholarDigital LibraryDigital Library
  8. Gulwani, S. Dimensions in program synthesis. In Proceedings of PPDP, 2010. Google ScholarGoogle ScholarDigital LibraryDigital Library
  9. Gulwani, S. Automating string processing in spreadsheets using input-output examples. In Proceedings of POPL, 2011; http://research.microsoft.com/users/sumitg/flashfill.html. Google ScholarGoogle ScholarDigital LibraryDigital Library
  10. Gulwani, S. Example-based learning in computer-aided STEM education. Commun. ACM 57, 8 (Aug 2014), 70--80. Google ScholarGoogle ScholarDigital LibraryDigital Library
  11. Gulwani, S., Harris, W. and Singh, R. Spreadsheet data manipulation using examples. Commun. ACM 55, 8 (Aug. 2012), 97--105. Google ScholarGoogle ScholarDigital LibraryDigital Library
  12. Henderson, R.J. and Muggleton, S.H. Automatic invention of functional abstractions. Latest Advances in Inductive Logic Programming, 2012.Google ScholarGoogle Scholar
  13. Hernández-Orallo, J. Deep knowledge: Inductive programming as an answer, Dagstuhl TR 13502, 2013.Google ScholarGoogle Scholar
  14. Hofmann, M. and Kitzelmann, E. I/O guided detection of list catamorphisms---towards problem specific use of program templates in IP. In ACM SIGPLAN PEPM, 2010. Google ScholarGoogle ScholarDigital LibraryDigital Library
  15. Jha, J., Gulwani, S., Seshia, S. and Tiwari, A. Oracle-guided component-based program synthesis. In Proceedings of the ICSE, 2010. Google ScholarGoogle ScholarDigital LibraryDigital Library
  16. Katayama, S. Efficient exhaustive generation of functional programs using Monte-Carlo search with iterative deepening. In Proceedings of PRICAI, 2008. Google ScholarGoogle ScholarDigital LibraryDigital Library
  17. Kitzelmann, E. Analytical inductive functional programming. LOPSTR 2008, LNCS 5438. Springer, 2009, 87--102. Google ScholarGoogle ScholarDigital LibraryDigital Library
  18. Kitzelmann, E. Inductive programming: A survey of program synthesis techniques. In AAIP, Springer, 2010, 50--73.Google ScholarGoogle Scholar
  19. Kitzelmann, E. and Schmid, U. Inductive synthesis of functional programs: An explanation based generalization approach. J. Machine Learning Research 7, (Feb. 2006), 429--454. Google ScholarGoogle ScholarDigital LibraryDigital Library
  20. Kotovsky, K., Hayes, J.R. and Simon, H.A. Why are some problems hard? Evidence from Tower of Hanoi. Cognitive Psychology 17, 2 (1985), 248--294.Google ScholarGoogle ScholarCross RefCross Ref
  21. Lau, T.A. Why programming-by-demonstration systems fail: Lessons learned for usable AI. AI Mag. 30, 4, (2009), 65--67.Google ScholarGoogle ScholarCross RefCross Ref
  22. Lau, T.A., Wolfman, S.A., Domingos, P. and Weld, D.S. Programming by demonstration using version space algebra. Machine Learning 53, 1-2 (2003), 111--156. Google ScholarGoogle ScholarDigital LibraryDigital Library
  23. Le, V. and Gulwani, S. FlashExtract: A framework for data extraction by examples. In Proceedings of PLDI, 2014. Google ScholarGoogle ScholarDigital LibraryDigital Library
  24. Lieberman, H. (Ed). Your Wish is My Command: Programming by Example. Morgan Kaufmann, 2001.Google ScholarGoogle ScholarDigital LibraryDigital Library
  25. Lin, D., Dechter, E., Ellis, K., Tenenbaum, J.B. and Muggleton, S.H. Bias reformulation for one-shot function induction. In Proceedings of ECAI, 2014.Google ScholarGoogle Scholar
  26. Marcus, G.F. The Algebraic Mind. Integrating Connectionism and Cognitive Science. Bradford, Cambridge, MA, 2001.Google ScholarGoogle ScholarCross RefCross Ref
  27. Martìnez-Plumed, C. Ferri, Hernández-Orallo, J. and M.J. Ramírez-Quintana. On the definition of a general learning system with user-defined operators. arXiv preprint arXiv:1311.4235, 2013.Google ScholarGoogle Scholar
  28. Menon, A., Tamuz, O., Gulwani, S., Lampson, B. and Kalai, A. A machine learning framework for programming by example. In Proceedings of the ICML, 2013.Google ScholarGoogle Scholar
  29. Miller, R.C. and Myers, B.A. Multiple selections in smart text editing. In Proceedings of IUI, 2002, 103--110. Google ScholarGoogle ScholarDigital LibraryDigital Library
  30. Muggleton, S.H. Inductive Logic Programming. New Generation Computing 8, 4 (1991), 295--318. Google ScholarGoogle ScholarDigital LibraryDigital Library
  31. Muggleton, S.H. and Lin, D. Meta-interpretive learning of higher-order dyadic datalog: Predicate invention revisited. IJCAI 2013, 1551--1557. Google ScholarGoogle ScholarDigital LibraryDigital Library
  32. Muggleton, S.H., Lin, D., Pahlavi, N. and Tamaddoni-Nezhad, A. Meta-interpretive learning: application to grammatical inference. Machine Learning 94 (2014), 25--49. Google ScholarGoogle ScholarDigital LibraryDigital Library
  33. Muggleton, S.H., De Raedt, L., Poole, D., Bratko, I., Flach, P. and Inoue, P. ILP turns 20: Biography and future challenges. Machine Learning 86, 1 (2011), 3--23. Google ScholarGoogle ScholarDigital LibraryDigital Library
  34. Olsson, R. Inductive functional programming using incremental program transformation. Artificial Intelligence 74, 1 (1995), 55--83. Google ScholarGoogle ScholarDigital LibraryDigital Library
  35. Perelman, D., Gulwani, S., Grossman, D. and Provost, P. Test-driven synthesis. PLDI, 2014. Google ScholarGoogle ScholarDigital LibraryDigital Library
  36. Raza, M., Gulwani, S. and Milic-Frayling, N. Programming by example using least general generalizations. AAAI, 2014.Google ScholarGoogle ScholarCross RefCross Ref
  37. Schmid, U. and Kitzelmann, E. Inductive rule learning on the knowledge level. Cognitive Systems Research 12, 3 (2011), 237--248. Google ScholarGoogle ScholarDigital LibraryDigital Library
  38. Schmid, U. and Wysotzki, F. Induction of recursive program schemes. ECML 1398 LNAI (1998), 214--225. Google ScholarGoogle ScholarDigital LibraryDigital Library
  39. Shapiro, E.Y. An algorithm that infers theories from facts. IJCAI (1981), 446--451. Google ScholarGoogle ScholarDigital LibraryDigital Library
  40. Solar-Lezama, A. Program Synthesis by Sketching. Ph.D thesis, UC Berkeley, 2008. Google ScholarGoogle ScholarDigital LibraryDigital Library
  41. Summers, P.D. A methodology for LISP program construction from examples. JACM 24, 1 (1977), 162--175. Google ScholarGoogle ScholarDigital LibraryDigital Library
  42. Tenenbaum, J.B., Griffiths, T.L. and Kemp, C. Theory-based Bayesian models of inductive learning and reasoning. Trends in Cognitive Sciences 10, 7 (2006), 309--318.Google ScholarGoogle ScholarCross RefCross Ref
  43. Young, S. Cognitive user interfaces. IEEE Signal Processing 27, 3 (2010), 128--140.Google ScholarGoogle ScholarCross RefCross Ref

Index Terms

  1. Inductive programming meets the real world

        Recommendations

        Comments

        Login options

        Check if you have access through your login credentials or your institution to get full access on this article.

        Sign in

        Full Access

        • Published in

          cover image Communications of the ACM
          Communications of the ACM  Volume 58, Issue 11
          November 2015
          112 pages
          ISSN:0001-0782
          EISSN:1557-7317
          DOI:10.1145/2838899
          • Editor:
          • Moshe Y. Vardi
          Issue’s Table of Contents

          Copyright © 2015 ACM

          Permission to make digital or hard copies of all or part of this work for personal or classroom use is granted without fee provided that copies are not made or distributed for profit or commercial advantage and that copies bear this notice and the full citation on the first page. Copyrights for components of this work owned by others than the author(s) must be honored. Abstracting with credit is permitted. To copy otherwise, or republish, to post on servers or to redistribute to lists, requires prior specific permission and/or a fee. Request permissions from [email protected].

          Publisher

          Association for Computing Machinery

          New York, NY, United States

          Publication History

          • Published: 23 October 2015

          Permissions

          Request permissions about this article.

          Request Permissions

          Check for updates

          Qualifiers

          • review-article
          • Popular
          • Refereed

        PDF Format

        View or Download as a PDF file.

        PDFChinese translation

        eReader

        View online with eReader.

        eReader

        HTML Format

        View this article in HTML Format .

        View HTML Format