Specification of Abstract Data Types provides an authoritative introduction to the mathematical foundations of algebraic program specification. Unlike most other publications on the subject, this book does not draw on category theory, but instead tries to demystify the topic and promote its use in practical applications. It clearly distinguishes between the study of algebras, logic, specification methods and specification languages and it avoids focusing on a particular logic or a particular specification method. After an ...
Read More
Specification of Abstract Data Types provides an authoritative introduction to the mathematical foundations of algebraic program specification. Unlike most other publications on the subject, this book does not draw on category theory, but instead tries to demystify the topic and promote its use in practical applications. It clearly distinguishes between the study of algebras, logic, specification methods and specification languages and it avoids focusing on a particular logic or a particular specification method. After an informal discussion on the design of reliable software, the book presents the main notions and properties of algebras. Next it investigates logic, introducing a general notion of logic, encompassing those commonly used. On the basis of these fundamentals it describes in some detail three specification methods and the principles of specification languages. It concludes with a case study illustrating the use of abstract data type specification in software design. While treating the subject with mathematical precision, the book contains numerous examples, exercises and comments to provide a deeper understanding of concepts discussed. It was conceived as a student textbook but will also be a useful source of reference for researchers and developers using formal specification methods for software design.
Read Less