Understanding Z: A Specification Language and its Formal Semantics by J. M. Spivey (University of Oxford)
The Z notation is a language for expressing mathematical specifications of computing systems. By providing a formal semantics for Z, this book justifies the claim that Z is a precise specification language, and provides a standard framework for understanding Z specifications. Z is compared with other methods such as VDM and CLEAR, and in the final chapter, a number of studies in Z style are presented to show that Z can be used in a wide variety of specification tasks. This book will appeal to those who wish to deepen their understanding of the mathematical background of the Z method, those who want a concise definition of the language, and those interested in the design of specification languages.