Proving TCS and Math Theorems in Lean

Course Logo

Instructor: Venkatesan Guruswami
Lecture time: Friday 13:00–15:00
Location: SODA 320
Guest Lecturer: Pritish Kamath
TA: Shilun (Allan) Li
Office hours:
Venkat: TBD
Shilun: Friday 15:00-16:00 (SODA 411)

Course Description

This course introduces the use of the Lean 4 proof assistant to formalize concepts and results from theoretical computer science and mathematics. The first part of the course covers the fundamentals of Lean 4, including its logical foundations, core syntax, and proof tactics, through guided exercises and examples.

Students will then form small groups and undertake a semester-long formalization project on a selected topic, such as automata theory, computability, complexity theory, or combinatorics. The course emphasizes hands-on engagement with Lean and aims to provide students with practical experience in mechanized reasoning and formal proof development.

Grading

Class Participation 10%
Homework 30%
Final Project 60%

Lectures

Problem Sets

Additional References

Installing / running Lean4:

Books:

Other similar courses:

Miscellaneous:

  • Loodle!: Search engine for Lean 4.
  • mathlib4 documentation.
  • Lean community Zulip channel for questions and discussions.
  • ECClib Project by Venkatesan Guruswami, Shilun Li, Henry Li, Frederick Dehmel, Annie Yao et al.