Interactive Program Synthesis
Lead Research Organisation:
University of Nottingham
Department Name: School of Computer Science
Abstract
Program synthesis is an important field of computer science, with applications ranging from the simple
auto-completion tools that are found in many spreadsheet packages, all the way to fully-fledged systems
that are capable of constructing entire programs on their own.
A program synthesiser is a system to which a user can describe, in some language, a program which
they would like; the aim of the synthesiser is to write such a program. There are then two essential
ways in which synthesis techniques can differ: the language in which the user describes the desired
program, and the method by which the system produces this program.
This project will focus on the synthesis of programs that are written in functional programming
languages, such as Haskell. The purity and composability of these languages makes them well suited
to the problem. Most existing synthesis techniques for functional languages can be placed into one of
three categories: analytical, enumerative, and learning-based approaches.
auto-completion tools that are found in many spreadsheet packages, all the way to fully-fledged systems
that are capable of constructing entire programs on their own.
A program synthesiser is a system to which a user can describe, in some language, a program which
they would like; the aim of the synthesiser is to write such a program. There are then two essential
ways in which synthesis techniques can differ: the language in which the user describes the desired
program, and the method by which the system produces this program.
This project will focus on the synthesis of programs that are written in functional programming
languages, such as Haskell. The purity and composability of these languages makes them well suited
to the problem. Most existing synthesis techniques for functional languages can be placed into one of
three categories: analytical, enumerative, and learning-based approaches.
Organisations
People |
ORCID iD |
Graham Hutton (Primary Supervisor) | |
Zachariah Garby (Student) |
Studentship Projects
Project Reference | Relationship | Related To | Start | End | Student Name |
---|---|---|---|---|---|
EP/T517902/1 | 30/09/2020 | 29/09/2025 | |||
2887857 | Studentship | EP/T517902/1 | 30/09/2023 | 30/03/2027 | Zachariah Garby |
EP/W524402/1 | 30/09/2022 | 29/09/2028 | |||
2887857 | Studentship | EP/W524402/1 | 30/09/2023 | 30/03/2027 | Zachariah Garby |