Skip to main content

Foundations of Algebraic Specification and Formal Software Development

  • Textbook
  • © 2012

Overview

  • The theory presented by the authors has its origins in work on algebraic specifications that started in the early 1970s, and the author's treatment is comprehensive
  • Covers the requisite mathematical foundations, traditional algebraic specifications, elements of the theory of institutions, formal specification and development, and proof theory
  • Will be of value to researchers and advanced graduate students in the areas of programming and theoretical computer science
  • Includes supplementary material: sn.pub/extras

This is a preview of subscription content, log in via an institution to check access.

Access this book

eBook USD 69.99
Price excludes VAT (USA)
  • Available as PDF
  • Read on any device
  • Instant download
  • Own it forever
Softcover Book USD 89.99
Price excludes VAT (USA)
  • Compact, lightweight edition
  • Dispatched in 3 to 5 business days
  • Free shipping worldwide - see info
Hardcover Book USD 119.99
Price excludes VAT (USA)
  • Durable hardcover edition
  • Dispatched in 3 to 5 business days
  • Free shipping worldwide - see info

Tax calculation will be finalised at checkout

Other ways to access

Licence this eBook for your library

Institutional subscriptions

Table of contents (10 chapters)

Keywords

About this book

This book provides foundations for software specification and formal software development from the perspective of work on algebraic specification, concentrating on developing basic concepts and studying their fundamental properties. These foundations are built on a solid mathematical basis, using elements of universal algebra, category theory and logic, and this mathematical toolbox provides a convenient language for precisely formulating the concepts involved in software specification and development. Once formally defined, these notions become subject to mathematical investigation, and this interplay between mathematics and software engineering yields results that are mathematically interesting, conceptually revealing, and practically useful.

 

The theory presented by the authors has its origins in work on algebraic specifications that started in the early 1970s, and their treatment is comprehensive. This book contains five kinds of material: the requisite mathematicalfoundations; traditional algebraic specifications; elements of the theory of institutions; formal specification and development; and proof methods.

 

While the book is self-contained, mathematical maturity and familiarity with the problems of software engineering is required; and in the examples that directly relate to programming, the authors assume acquaintance with the concepts of functional programming. The book will be of value to researchers and advanced graduate students in the areas of programming and theoretical computer science.

Authors and Affiliations

  • , School of Informatics, The University of Edinburgh, Edinburgh, United Kingdom

    Donald Sannella

  • , Institute of Informatics, University of Warsaw, Warsaw, Poland

    Andrzej Tarlecki

About the authors

The first author is a professor of computer science at the University of Edinburgh. His key research area is foundations for specification and formal development of modular software systems from specifications, with applications to computer security and programming languages; among other responsibilities, he is the Editor-in-Chief of the journal Theoretical Computer Science and Vice President of the European Association for Theoretical Computer Science. The second author is a professor of computer science at the University of Warsaw, and also at the Institute of Computer Science of the Polish Academy of Sciences. His research mainly concerns foundations for specification and formal development of modular software systems from specifications, semantics, and relevant aspects of logic, universal algebra and category theory; among other responsibilities, he is the Editor-in-Chief of the journal Information Processing Letters. They have each chaired major conferences in software engineering and theoretical computer science, and have served on the steering and program committees of the main events related to the topic of this book.

Bibliographic Information

Publish with us