Formal Methods + Security
Spring 2023
COMP 590/790-132 (Syllabus)
MW 11-12:15


Cynthia Sturton
Office Hours: TBD

Course Description

This is a senior level undergraduate and graduate course covering advanced topics in using formal methods for security. We will learn about and evaluate the use of formal verification methods applied to computer security problems. The course will be discussion based, with classes organized around reading and discussing papers. In addition, students will work in small groups on a semester-long research project of their choosing.

The class is designed for students who are interested in aspects of formal verification methods and computer security. The 790 course is open to all CS graduate students. Graduate students outside the CS department who wish to take the class should attend the first week of class and speak to the instructor at the end of class. The 590 course is open to CS undergraduate students who have completed (with a grade of C or higher) COMP 283, 210, 211, 301, 455. A course in security (COMP 435, 535) or cryptography is also recommended as a pre- or corequisite.


There are no required textbooks. Required readings will be posted online in the course schedule.


Students will work in groups of 2 or 3 on an original research project. At the end of the semester, each group will submit a workshop-quality paper and give a short presentation in class describing their work. A written project proposal will be due roughly five weeks into the semester. We will discuss possible project ideas in class; however, you are encouraged to develop your own ideas.

Key Dates

FDOC: 1/9/23
Project groups formed: 1/18/23
Project proposal due: 2/8/23
Progress reports: 3/6/23
Final proof due: TBA
Code artifact due: TBA
LDOC: 4/26/22
Final presentations: scheduled final exam time


Paper reviews & discussion: 20%
Leading paper discussion: 30%
Group project: 50%