Formal specification is the name given to the use of discrete mathematics in computer science for describing the function of both hardware and software systems. Poor specification often gives rise to severe problems in software and hardware installation. This textbook is an introduction to both the theory and practice of formal specification, and this new edition includes two new chapters on Z, one giving a number of small examples in Z, the other...