- Schedule of Classes - February 7, 2022 7:27PM EST
- Course Catalog - February 7, 2022 7:14PM EST
Course information provided by the Courses of Study 2021-2022.
An introduction to program synthesis: the problem of automatically generating programs from specifications of their desired behavior. Program synthesis draws on the fields of programming languages and artificial intelligence with the aim of helping to improve software engineering by automatically generating code; help expand the usability of computers by allowing non-coders to harness the power of programming languages; and help us build more interpretable, symbolic AI systems that can write new code. Covers classic areas such as programming-by-example, constraint-based synthesis using SMT solvers, type-directed program synthesis, and inductive logic programming. Covers recent developments in mixed discrete/continuous and neural/symbolic program synthesis. Covers deep learning methods for building efficient, scalable program synthesizers.
When Offered Fall.
Permission Note Enrollment limited to: Ph.D. students.
Prerequisites/Corequisites Prerequisite: CS 3110, CS 4700, and CS 4780/CS 5780 or permission of instructor.
- Identify where and how program synthesis can be used to solve engineering problems.
- Be able to build program synthesizers which combine techniques from programming languages and AI.
- Understand open problems in the field and be equipped to work on them.
Regular Academic Session.
Credits and Grading Basis
3 Credits Stdnt Opt(Letter or S/U grades)
Class Number & Section Details
- MW Phillips Hall 403
- Aug 26 - Dec 7, 2021
Instruction Mode: In Person
Seats are reserved for graduate students. Professional and undergraduate students should add themselves to the waitlist during add/drop. See enrollment page for more details: https://www.cs.cornell.edu/courseinfo/enrollment/cs-6000-level-courses
Disabled for this roster.