Advertisement

Constructing Correct Software

  • John Cooke

Table of contents

  1. Front Matter
    Pages i-xxi
  2. Introduction

    1. Pages 1-28
  3. Preliminaries

    1. Pages 125-157
  4. Fundamentals

    1. Pages 161-221
    2. Pages 223-265
    3. Pages 267-300
    4. Pages 301-313
  5. Developments

    1. Pages 317-355
    2. Pages 357-374
    3. Pages 375-407
    4. Pages 409-416
    5. Pages 417-453
    6. Pages 455-472
  6. Back Matter
    Pages 473-509

About this book

Introduction

Central to Formal Methods is the so-called Correctness Theorem which relates a specification to its correct Implementations. This theorem is the goal of traditional program testing and, more recently, of program verification (in which the theorem must be proved). Proofs are difficult, though even with the use of powerful theorem provers. This volume explains and illustrates an alternative method, which allows the construction of (necessarily correct) algorithms from a specification using algebraic transformations and refinement techniques which prevent the introduction of errors. Based on teaching material used extensively at Loughborough University, John Cooke introduces the basics, using simple examples and lots of detailed working (which can often be re-used).

Constructing Correct Software will provide invaluable reading for students and practitioners of Computer Science and Software Engineering to whom correctness of software is of prime importance.

Keywords

Formal Development Formal Methods OVal Software Engineering algorithms programming testing verification

Authors and affiliations

  • John Cooke

There are no affiliations available

Bibliographic information

  • DOI https://doi.org/10.1007/b138515
  • Copyright Information Springer-Verlag London Limited 2005
  • Publisher Name Springer, London
  • eBook Packages Computer Science
  • Print ISBN 978-1-85233-820-6
  • Online ISBN 978-1-84628-079-5
  • Buy this book on publisher's site
Industry Sectors
Pharma
Automotive
Finance, Business & Banking
Electronics
IT & Software
Telecommunications
Energy, Utilities & Environment
Aerospace
Engineering