Algebraic Semantics and Verification

Georg Struth (G.Struth@sheffield.ac.uk)

This course has two main topics:

The course thus addresses all those who would like to learn the basics of Hoare logics and predicate transformer semantics in a particularly simply and lightweight approach and how to built simple program verification components in a proof assistent using a semantic approach based on a shallow embedding. Beyond that it emphasises an approach to formalising mathematics, both algebraic structures and their models, using the type classes of contemporary proof assistants.

Detailed lecture notes for the course can be found below. They contain a link to Isabelle theory templates leading from the algebras to the verification components mentioned, including some verification examples. These can be completed and expanded by the participants as an extended exercise.