Skip to main content
  • Textbook
  • © 2005

Categories for Software Engineering

  • First book demonstrating how category theory can be used for formal software development
  • The mathematical toolbox for the Software Engineering in the new age of complex interactive systems
  • Includes supplementary material: sn.pub/extras

Buy it now

Buying options

eBook USD 39.99
Price excludes VAT (USA)
  • Available as PDF
  • Read on any device
  • Instant download
  • Own it forever
Softcover Book USD 54.99
Price excludes VAT (USA)
  • Compact, lightweight edition
  • Dispatched in 3 to 5 business days
  • Free shipping worldwide - see info
Hardcover Book USD 54.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

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

Table of contents (10 chapters)

  1. Front Matter

    Pages I-XIV
  2. Introduction

    Pages 1-11
  3. Basics

    1. Building Categories

      Pages 31-55
    2. Functors

      Pages 83-92
  4. Advanced Topics

    1. Adjunctions

      Pages 141-174
  5. Applications

    1. CommUnity

      Pages 177-196
    2. An Algebra of Connectors

      Pages 221-235
  6. Back Matter

    Pages 237-250

About this book

Why Another Book on Category Theory? In the past ten years, several books have been published on category t- ory either by computer scientists or having computer scientists as a target audience (e. g. [6, 12, 22, 89, 105], to which a precious collection of little gems [90] and the chapter cum book [91] should be added). Isn't the working computer scientist spoilt with choice? Although each of the above mentioned books presents an approach of its own, there is one aspect in common in their view of computer science: the analogy between arrows (morphisms) and (classes of) computations. This "type-theoretic" or "functional" approach corresponds to a view of c- puter science as a science of computation, i. e. a discipline concerned with the study of computational phenomena where the focus is on the nature and organisation of computations. However, there is another view of computer science where the focus is, instead, on the development of computer programs or systems. This is the approach that supports, for instance, software engineering. From this point of view, arrows do not capture computational phenomena, or abstractions thereof, but instead relationships between programs, or abstractions of programs, that arise in the development of computer systems, for instance, refinement of higher-level specifications into executable programs [100, 104], and superposition of new features over existing systems [72].

Authors and Affiliations

  • Department of Computer Science, University of Leicester, Leicester, UK

    José Luiz Fiadeiro

About the author

 Professor at the University of Leicester; Visiting Scientist at Imperial College, King’s College London, SRI International and the University of Pisa; Chairman of the IFIP WG1.3 – Foundations of System Specification; Chairman of the Steering Committee of the European Joint Conferences on Theory and Practice of Software; Winner of an IBM Award in 1996 for his work on Emergence in Complex Software Systems

Bibliographic Information

Buy it now

Buying options

eBook USD 39.99
Price excludes VAT (USA)
  • Available as PDF
  • Read on any device
  • Instant download
  • Own it forever
Softcover Book USD 54.99
Price excludes VAT (USA)
  • Compact, lightweight edition
  • Dispatched in 3 to 5 business days
  • Free shipping worldwide - see info
Hardcover Book USD 54.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