We got your back! We are coming back with more features and improvements. Read more here.

SC5404 INTRODUCTION TO PROGRAM SYNTHESIS

This course aims to give an introduction to program synthesis, an exciting field at the intersection of programming languages, formal methods and AI. The course will explore a number of fundamental questions around the problem of how to automatically generate programs that do what the user wants. In particular, the class will explore the following questions: 1. The intention question: how does the user convey intent and how do we increase the likelihood that the synthesizer will produce the desired program even when the specification is ambiguous or incomplete? 2. Interplay between program search and program verification: how do we ensure that the program we synthesize will actually be deemed correct by a potentially brittle verification mechanism, and how do we use a verifier to our advantage to help synthesize programs faster? 3. Interplay between program synthesis and deep learning: how do you reconcile the symbolic techniques traditionally used for synthesis and verification with deep learning? We will explore learning based techniques including language models based on transformers and reinforcement learning. 4. Program synthesis beyond software engineering: the course will also discuss applications of program synthesis beyond automated programming to other domains where one has to generalize from small number of examples and produce interpretable models, as well as neurosymbolic learning techniques that combine ideas from program synthesis with ML.

Academic Units2
Exam ScheduleNot Applicable
Grade TypeLetter Graded
Department MaintainingCSC(CE)
Prerequisites

Must be a Turing AI Scholar SC1303

Indexes

IndexTypeGroupDayTimeVenueRemark
10205LEC/STUDIOSTA1MON0830-1020TAISPSPACETeaching Wk4,5
10205LEC/STUDIOSTA1TUE0830-1020TAISPSPACETeaching Wk4,5,7-9
10205TUTSTA1FRI0830-1020TAISPSPACETeaching Wk7,8
10205TUTSTA1FRI1630-1820TAISPSPACETeaching Wk4,5
10205TUTSTA1WED1830-2020TAISPSPACETeaching Wk4,5

Course Schedule

0930

1030

1130

1230

1330

1430

1530

1630

1730

MON

SC5404

LEC/STUDIO | TAISPSPACE

Teaching Wk4,5

TUE

SC5404

LEC/STUDIO | TAISPSPACE

Teaching Wk4,5,7-9

WED

SC5404

TUT | TAISPSPACE

Teaching Wk4,5

THU
FRI

SC5404

TUT | TAISPSPACE

Teaching Wk7,8

SC5404

TUT | TAISPSPACE

Teaching Wk4,5

SAT

Reviews & Discussion

We would encourage you to review with the following template.

Review Template

AY Taken: ...

Assessment (Optional): ...

Topics (Optional): ...

Lecturer (Optional): ...

TA (Optional): ...

Review: ...

Final Grade (Optional): ...


© 2025 NTUMODS Dev Team. All rights reserved