Introduction to Formal Verification & Proof Assistants

A 10-Week Journey into Formal Verification with Lean4 (Spring 2026)

GDG @ AUB Software Team × AUB Math Society

PROOF101

Week 3: Functional Programming

Overview

We explore logic and programming paradigms as motivation (imperative, OOP, functional, etc.). Using Lean4, by applying what we have learned in week 2, we cover the basics of functional programming and typed functional programming through The Hitchhiker’s Guide to Logical Verification chapter 5.

Lecturer

Session Information

Core Concepts

Slides

Week 3 Slides: Download PDF

Readings

  1. Functional Programming in Lean 4 (Chapters 1-2-3 + Interlude 1)
  2. Theorem Proving in Lean 4 (Chapter 4)
  3. The Hitchhiker’s Guide to Logical Verification (Chapter 5)

Weekly Quiz

Quiz 3: Functional Programming & λ-Calculus

Quiz Link: Take Quiz 3

Deadline: Before Week 4 session
Passing Score: 60%

Programming Assignment

Assignment 3: Functional Programming in Lean

Objective: Master recursive functions, pattern matching, and inductive types.

Assignment: PROOF101 Programming Assignment 3


Questions? Reach out on the course Discord!