Offers a thorough and comprehensive tutorial introduction to Z, taking as its starting point the practical use of this formal specification language. After briefly explaining what Z is and why it is a good method for specifying software components, covers Z's basic mathematical toolkit, the fundamental ideas of the schema calculus, and the methods of reasoning. Specific case studies illustrate all aspects of Z and the mathematical notations that must...