Foundations of Algebraic Specification and Formal Software Development - Sannella, Donald; Tarlecki, Andrzej (Springer Berlin Heidelberg, 2012)