Selected Topics in Formal Methods and their Applications (IN3350)
| Lecturer (assistant) | |
|---|---|
| Number | 0000002056 |
| Type | lecture with integrated exercises |
| Duration | 4 SWS |
| Term | Winter semester 2026/27 |
| Language of instruction | English |
| Position within curricula | See TUMonline |
| Dates | See TUMonline |
- 13.10.2026 14:00-16:00 00.13.008, Seminarraum
- 19.10.2026 14:00-16:00 01.11.018, Seminarraum
- 20.10.2026 14:00-16:00 00.13.008, Seminarraum
- 26.10.2026 14:00-16:00 01.11.018, Seminarraum
- 27.10.2026 14:00-16:00 00.13.008, Seminarraum
- 02.11.2026 14:00-16:00 01.11.018, Seminarraum
- 03.11.2026 14:00-16:00 00.13.008, Seminarraum
- 09.11.2026 14:00-16:00 01.11.018, Seminarraum
- 10.11.2026 14:00-16:00 00.13.008, Seminarraum
- 16.11.2026 14:00-16:00 01.11.018, Seminarraum
- 17.11.2026 14:00-16:00 00.13.008, Seminarraum
- 23.11.2026 14:00-16:00 01.11.018, Seminarraum
- 24.11.2026 14:00-16:00 00.13.008, Seminarraum
- 30.11.2026 14:00-16:00 01.11.018, Seminarraum
- 01.12.2026 14:00-16:00 00.13.008, Seminarraum
- 07.12.2026 14:00-16:00 01.11.018, Seminarraum
- 08.12.2026 14:00-16:00 00.13.008, Seminarraum
- 14.12.2026 14:00-16:00 01.11.018, Seminarraum
- 15.12.2026 14:00-16:00 00.13.008, Seminarraum
- 21.12.2026 14:00-16:00 01.11.018, Seminarraum
- 22.12.2026 14:00-16:00 00.13.008, Seminarraum
- 11.01.2027 14:00-16:00 01.11.018, Seminarraum
- 12.01.2027 14:00-16:00 00.13.008, Seminarraum
- 18.01.2027 14:00-16:00 01.11.018, Seminarraum
- 19.01.2027 14:00-16:00 00.13.008, Seminarraum
- 25.01.2027 14:00-16:00 01.11.018, Seminarraum
- 26.01.2027 14:00-16:00 00.13.008, Seminarraum
- 01.02.2027 14:00-16:00 01.11.018, Seminarraum
- 02.02.2027 14:00-16:00 00.13.008, Seminarraum
Admission information
Description
An applied introduction to automated and interactive reasoning, climbing through progressively more expressive logics and the proof-search methods each demands. The emphasis is on how modern reasoning systems work and how to use them; foundational results are stated precisely, with proofs sketched at the level of ideas. Four units of five lectures and one exercise session each.
**Unit 1: SAT.** Satisfiability, CNF, NP-completeness. DPLL and conflict-driven clause learning. Solver engineering. Proof certificates: DRAT, LRAT, and checking by a small trusted checker. Encodings and applications.
**Unit 2: SMT.** SMT-LIB and the common theories. Eager reduction and where it fails. DPLL(T). Theory solvers: incremental simplex with Farkas certificates, congruence closure, arrays. Nelson-Oppen combination. Z3 and cvc5.
**Unit 3: First-order theorem proving.** Semi-decidability and decidable fragments. Unification and resolution. Reduction orderings, LPO and KBO, and the problem of equality. Superposition, redundancy, saturation. Prover architecture; TPTP; E and Vampire.
**Unit 4: Interactive theorem proving in Lean.** Dependent type theory, Curry-Howard, the trusted kernel and the de Bruijn criterion. Proof terms and tactics. Automation over Mathlib, related back to the machinery of the earlier units. Formalization at scale; hammers, premise selection, autoformalization.
**Unit 1: SAT.** Satisfiability, CNF, NP-completeness. DPLL and conflict-driven clause learning. Solver engineering. Proof certificates: DRAT, LRAT, and checking by a small trusted checker. Encodings and applications.
**Unit 2: SMT.** SMT-LIB and the common theories. Eager reduction and where it fails. DPLL(T). Theory solvers: incremental simplex with Farkas certificates, congruence closure, arrays. Nelson-Oppen combination. Z3 and cvc5.
**Unit 3: First-order theorem proving.** Semi-decidability and decidable fragments. Unification and resolution. Reduction orderings, LPO and KBO, and the problem of equality. Superposition, redundancy, saturation. Prover architecture; TPTP; E and Vampire.
**Unit 4: Interactive theorem proving in Lean.** Dependent type theory, Curry-Howard, the trusted kernel and the de Bruijn criterion. Proof terms and tactics. Automation over Mathlib, related back to the machinery of the earlier units. Formalization at scale; hammers, premise selection, autoformalization.
Prerequisites
Basic mathematical logic or discrete mathematics: propositional and first-order logic, proofs by induction. Confident programming in a general-purpose language for the practical exercises, in which students extend a provided solver skeleton and script against solver APIs.
No prior exposure to proof assistants or automated reasoning tools is assumed. The module Logic (IN2049) is a useful precursor but is not required.
No prior exposure to proof assistants or automated reasoning tools is assumed. The module Logic (IN2049) is a useful precursor but is not required.
Teaching and learning methods
**Lectures** present the algorithms, results, and engineering, with short tool demonstrations where a system is under discussion.
**Exercise sessions**, one per unit, are devoted to guided problem solving and the discussion of submitted solutions.
**Practical assignments**, one per unit, are the principal self-study component and run across the whole unit. Each pairs light theoretical tasks with heavier practical ones requiring hands-on work with a state-of-the-art system.
**Exercise sessions**, one per unit, are devoted to guided problem solving and the discussion of submitted solutions.
**Practical assignments**, one per unit, are the principal self-study component and run across the whole unit. Each pairs light theoretical tasks with heavier practical ones requiring hands-on work with a state-of-the-art system.