CS 477 / ECE 478 - Formal Software Development Methods (Fall 2026)

Madhusudan Parthasarathy (aka Madhu)

Tue and Thu 11:00am-12:15pm, 144 Loomis

Instructor
Madhusudan Parthasarathy
Office Hours: Thursdays 3:00pm-4:00pm, Siebel 3226
Teaching Assistant
Nausheen Mohammed
Office Hours: Fri 11:00am-12:00pm, Tutoring Space, Lower level of Siebel Ctr for CS
Lectures
Lecture Schedule
Resources
Papers, textbook chapters, tools
Homework
We will use gradescope for submitting assignments. Access code will be posted on Piazza.
Piazza
https://piazza.com/illinois/fall2026/cs477ece478
Access code announced in class

 

About
This course will provide an overview of mathematical models, languages, and methods for software specification, development, and verification. We will also cover some of the latest trends including using AI + formal methods for software, in particular: (a) formal specifications in the realm of AI-based programming​, and (b) using AI + Lean proofs to quickly prove soundness of analysis, proof systems, etc.​

See Lecture#1 slides for detailed syllabus and topics.

Prerequisites: CS 225; CS 374 or MATH 414. Having taken CS 421 and CS 475​ is useful but not required.