-
Notifications
You must be signed in to change notification settings - Fork 3
Home
Instructor: He Zhu
Email: he.zhu.cs@rutgers.edu
Time: Mondays 12:00-3:00 PM
Location: Zoom
Office Hours: Monday 3:00-4:00 PM
Online Book: Introduction to Program Synthesis
This course is a comprehensive introduction to program synthesis: an emerging area that sits at the intersection of programming systems, formal methods, and artificial intelligence. The goal of program synthesis is to generate programs automatically from high-level, possibly incomplete descriptions. The course covers a wide variety of recent synthesis techniques that differ in the kind of program description they start with (from input-output examples to formal correctness specifications), the search strategy they employ (enumerative, stochastic, or symbolic search), and the kind of information they use to guide the search (counter-example guided synthesis, type-driven synthesis, synthesis with machine learning). The course involves programming assignments, a project, as well as reading and reviewing research papers.
There is no Piazza page for this course. To ask a question, use the issue tracker.
Use Canvas for assignments/project submission and grading. There is no exam or quiz for this course.
The course borrows some of the materials from Nadia Polikarpova, Peter Müller, Swarat Chaudhuri and Xinyu Wang.