Building program construction and verification tools from algebraic principles. - Armstrong, Alasdair; Gomes, Victor; Struth, Georg (Formal Aspects of Computing, 2016)