Proceedings

Compositional Program Synthesis from Natural Language and Examples

Download BibTeX Cite

Proceedings of the Twenty-Fourth International Joint Conference on Artificial Intelligence. Main Track. Pages 792-799.

Abstract

Compositionality is a fundamental notion in computation whereby complex abstractions can be constructed from simpler ones, but this property has so far escaped the paradigm of end-user programming from examples or natural language. Existing approaches restrict end users to only give holistic end-to-end specifications, which limits the expressivity and scalability of these approaches to relatively simple programs in very restricted domains. In this paper we propose a new approach to end-user program synthesis in which input can be given in a compositional manner through a combination of natural language and examples. We present a domain-agnostic program synthesis algorithm and demonstrate its application to an expressive string manipulation language. We evaluate on a range of complex examples from help forums that are beyond the scope of previous systems.

  1. [Allen et al., 2007] James F. Allen, Nathanael Chambers, George Ferguson, Lucian Galescu, Hyuckchul Jung, Mary D. Swift, and William Taysom. Plow: A collab- orative task learning agent. In AAAI, pages 1514-1519. AAAI Press, 2007.
  2. [Chen and Mooney, 2011] David L. Chen and Raymond J. Mooney. Learning to interpret natural language naviga- tion instructions from observations. In Wolfram Burgard and Dan Roth, editors, AAAI. AAAI Press, 2011.
  3. [Clarke et al., 2010] James Clarke, Dan Goldwasser, Ming- Wei Chang, and Dan Roth. Driving semantic parsing from the world's response. In Proceedings of the Fourteenth Conference on Computational Natural Language Learn- ing (CoNLL-2010), pages 18-27, Uppsala, Sweden, 2010.
  4. [Gulwani and Marron, 2014] Sumit Gulwani and Mark Mar- ron. Nlyze: Interactive programming by natural language for spreadsheet data analysis and manipulation. In Pro- ceedings of the 2014 ACM SIGMOD International Confer- ence on Management of Data, SIGMOD '14, pages 803- 814, New York, NY, USA, 2014. ACM.
  5. [Gulwani et al., 2012] Sumit Gulwani, William R. Harris, and Rishabh Singh. Spreadsheet data manipulation using examples. Commun. ACM, 55(8), 2012.
  6. [Gulwani, 2011] Sumit Gulwani. Automating String Pro- cessing in Spreadsheets using Input-Output Examples. In Principles of Programming Languages (POPL), pages 317-330, 2011.
  7. [Katayama, 2007] Susumu Katayama. Systematic search for lambda expressions. In Marko C. J. D. van Eekelen, edi- tor, Revised Selected Papers from the Sixth Symposium on Trends in Functional Programming, TFP 2005, volume 6, pages 111-126. Intellect, 2007.
  8. [Klein and Manning, 2003] Dan Klein and Christopher D. Manning. Accurate unlexicalized parsing. In ACL '03: Proceedings of the 41st Annual Meeting on Association for Computational Linguistics, pages 423-430, Morristown, NJ, USA, 2003. Association for Computational Linguis- tics.
  9. [Kushman and Barzilay, 2013] Nate Kushman and Regina Barzilay. Using semantic unification to generate regular expressions from natural language. In HLT-NAACL, pages 826-836. The Association for Computational Linguistics, 2013.
  10. [Lau et al., 2003a] Tessa A. Lau, Pedro Domingos, and Daniel S. Weld. Learning programs from traces using ver- sion space algebra. In John H. Gennari, Bruce W. Porter, and Yolanda Gil, editors, K-CAP, pages 36-43. ACM, 2003.
  11. [Lau et al., 2003b] Tessa A. Lau, Steven A. Wolfman, Pedro Domingos, and Daniel S. Weld. Programming by Demon- stration Using Version Space Algebra. Machine Learning, 53(1-2):111-156, 2003.
  12. [Le and Gulwani, 2014] Vu Le and Sumit Gulwani. Flashex- tract: A framework for data extraction by examples. In PLDI, 2014.
  13. [Liang et al., 2011] Percy Liang, Michael I. Jordan, and Dan Klein. Learning dependency-based compositional seman- tics. CoRR, abs/1109.6841, 2011.
  14. [Lieberman, 2001] Henry Lieberman, editor. Your Wish is My Command: Programming by Example. Morgan Kauf- mann Publishers, 2001.
  15. [Manshadi et al., 2013] Mehdi Hafezi Manshadi, Daniel Gildea, and James F. Allen. Integrating programming by example and natural language programming. In Marie desJardins and Michael L. Littman, editors, AAAI. AAAI Press, 2013.
  16. [Perelman et al., 2014] Daniel Perelman, Sumit Gulwani, Dan Grossman, and Peter Provost. Test-driven synthesis. In PLDI, 2014.
  17. [Quirk et al., 2012] Chris Quirk, Pallavi Choudhury, Jian- feng Gao, Hisami Suzuki, Kristina Toutanova, Michael Gamon, Wen tau Yih, Colin Cherry, and Lucy Vander- wende. Msr splat, a language analysis toolkit. In HLT- NAACL, pages 21-24. The Association for Computational Linguistics, 2012.
  18. [Raza et al., 2014] Mohammad Raza, Sumit Gulwani, and Natasa Milic-Frayling. Programming by example using least general generalizations. In AAAI, 2014.
  19. [Raza et al., 2015] Mohammad Raza, Sumit Gulwani, and Natasa Milic-Frayling. Compositional program synthesis from natural language and examples. Microsoft Research Technical Report MSR-TR-2015-33, 2015.
  20. [Zettlemoyer and Collins, 2009] Luke S. Zettlemoyer and Michael Collins. Learning context-dependent mappings from sentences to logical form. In Keh-Yih Su, Jian Su, and Janyce Wiebe, editors, ACL/IJCNLP, pages 976-984. The Association for Computer Linguistics, 2009.

References were extracted automatically from the PDF and may contain errors.

Welcome Future Conferences AI Journal Division IJCAI Proceedings About IJCAI IJCAI Awards