Learning to Write Code, Automatically

Speaker: Vijayaraghavan Murali , Rice University

Date: Monday, May 01, 2017

Time: 11:00 AM to 12:00 PM Note: all times are in the Eastern Time Zone

Refreshments: 10:45 AM

Public: Yes

Location: 32-G882

Event Type:

Room Description:

Host: Professor Armando Solar-Lezama, CSG - CSAIL - MIT

Contact: Sally O. Lee, 3-6837, sally@csail.mit.edu

Relevant URL:

Speaker URL: None

Speaker Photo:

Reminders to: seminars@csail.mit.edu

Reminder Subject: TALK: Learning to Write Code, Automatically

Programming is hard. Even though programmers have an idea of what they
would like their program to do, articulating it in precise logical
semantics is difficult. Often times, the programmer is uncertain about
these precise semantics, but can provide "evidences" towards it. An
Android developer, for instance, may not exactly know how to connect to
a bluetooth socket, but may know that it involves the BluetoothSocket
type. Can we synthesize programs from such uncertain specifications?

In this talk, I will present a data-driven approach to the problem of
inductive computer program synthesis, that has the ability to handle
this uncertainty. Our method learns a probabilistic model for real-world
programs from a corpus of existing code. It uses this model during
synthesis to automatically infer a posterior distribution over sketches,
or syntactic models of the problem to be synthesized. Sketches sampled
from this posterior are then used to drive combinatorial synthesis of a
program in a high-level programming language such as Java.

The key technical innovation of our approach -- embodied in a system
called Bayou -- is utilizing user-supplied evidence as to the program's
desired behavior, along with a Bayesian update, to obtain a posterior
distribution over the program's true latent specification (indicating
user intent), which in turn produces a posterior over possible sketches.
We find that using evidences such as a few example API calls, types or
even natural language to communicate user intent, Bayou can synthesize
complex method bodies, some implementing tasks never encountered during

Research Areas:

Impact Areas:

This event is not part of a series.

Created by Sally O. Lee Email at Wednesday, April 26, 2017 at 2:54 PM.