Lectures

Slides and Isabelle files will be made available online as the lectures progress.
  • Isabelle hints
  • Week 1, Mon: intro
    slides [pdf], slides with animations [pdf], demo [thy]
  • Week 1, Thu: untyped lambda calculus
    slides [pdf], slides with animations [pdf], demo [thy]
  • Week 2, Mon: typed lambda calculus
    slides [pdf], slides with animations [pdf], demo [thy]
  • Week 2, Thu: HOL, natural deduction for propositional logic
    slides [pdf], slides with animations [pdf], demo [thy] demo solution [thy]
  • Week 3, Mon: HOL, quantifiers, automation
    slides [pdf], slides with animations [pdf], demo [thy], demo solution [thy]
  • Week 3, Thu: defining HOL from scratch, more automation
    slides [pdf], slides with animations [pdf], HOL demo [thy] automation demo [thy]
  • Week 4, Mon: term rewriting, confluence, termination
    slides [pdf], slides with animations [pdf], introductory demo [thy] simp demo [thy]
  • Week 4, Thu: conditional term rewriting, congruence rules, more confluence
    slides [pdf], slides with animations [pdf], demo [thy]
  • Week 5, Mon: sets, type definitions, inductive predicates
    slides [pdf], slides with animations [pdf], demo [thy], demo solutions [thy]
  • Week 5, Thu: inductive predicates, rule induction formally
    slides [pdf], slides with animations [pdf], demo [thy], solution [thy]
  • Week 6, Mon: datatypes, datatype induction, primitive recursion
    slides [pdf], slides with animations [pdf], demo [thy], solution [thy]
  • Week 6, Thu: regular expressions
    demo [thy], solution[thy]
  • Week 7, Mon: general recursive functions
    slides [pdf], slides with animations [pdf], demo [thy] solution [thy]
  • Week 7, Thu: automatic proof and disproof
    slides [pdf], slides with animations [pdf], demo [thy]
  • Week 8, Mon: Semantics and Hoare logic
    slides [pdf], slides with animations [pdf], demo [thy], demo solutions[thy]
  • Week 8, Thu: Weakest precondition, verification condition
    slides [pdf], slides with animations [pdf], demo [thy]
  • Week 9, Mon: Invariant practice
    slides [pdf], slides with animations [pdf]
  • Week 9, Mon: Shallow Embedding, State Monads
    slides [pdf], slides with animations [pdf], records demo [thy], monad demo [thy] monad demo [thy] monad demo [thy]