Armando Solar-Lezama
Associate Professor

phone: (617) 258-9727

Research Agenda:

I lead the Computer Assisted Programming Group. The focus of our research is program synthesis, an exciting research area that lies at the intersection of Programming Systems and Artificial Intelligence. On the one hand, program synthesis is about the use of automated reasoning and learning to help bring more automation to the programming process. On the other hand, we believe code provides a uniquely versatile modeling mechanism, so program synthesis can play a powerful role in helping to build learning systems that are more predictable and robust.

Sketch Version 1.7.5 Released (March, 2018) :

This version corresponds to changeset 44b29ad5c9c9 of the sketch-backend and changeset 8ebc15d5e281 of the sketch-frontend. You can download an easy-to-install (relatively speaking)  source distribution from here:
Tar ball    
Working version of Sketch Manual
If you want to be notified about new releases or major bug-fixes, you can subscribe to the sketch users mailing list.


  • Fall  2013: 6.820 Foundations of Program Analysis
  • Spring 2013: 6.00 Introduction to Computer Science and Programming
  • Spring 2012: 6.005 Elements of Software Construction
  • Fal 2011: 6.820 Foundations of Program Analysis
  • Fall 2010: 6.820 Foundations of Program Analysis
  • Spring 2010: 6.005 Elements of Software Construction
  • Fall 2009: 6.883 Foundations of Program Analysis with Martin Rinard
  • Spring 2009: 6.035 Computer Language Engineering with Saman Amarasinghe
  • IAP 2009: 3 day mini-course on Sketching

Phd Thesis:

Program Synthesis by Sketching, U.C. Berkeley, December 2008, Advisor: Rastislav Bodik

Conference Papers

Journal Papers

Technical Reports


MIT Computer Science and Artificial Intelligence Laboratory
The Stata Center, Building 32-G840
32 Vassar Street
Cambridge, MA 02139
Assistant: Sally Lee (sally@