Constructing Correct Software

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 wi...

Full description

Bibliographic Details
Main Author: Cooke, D. John
Format: eBook
Language:English
Published: London Springer London 2005, 2005
Edition:2nd ed. 2005
Subjects:
Online Access:
Collection: Springer eBooks 2005- - Collection details see MPG.ReNa
LEADER 02158nmm a2200289 u 4500
001 EB000366950
003 EBX01000000000000000220002
005 00000000000000.0
007 cr|||||||||||||||||||||
008 130626 ||| eng
020 |a 9781846280795 
100 1 |a Cooke, D. John 
245 0 0 |a Constructing Correct Software  |h Elektronische Ressource  |c by D. John Cooke 
250 |a 2nd ed. 2005 
260 |a London  |b Springer London  |c 2005, 2005 
300 |a XXI, 509 p. 100 illus  |b online resource 
505 0 |a Preliminaries -- The Technical Background -- On Programming -- Fundamentals -- Algorithm Extraction -- Recursion Removal -- Quantifications -- Refinement and Re-use -- Developments -- Sorting -- Data Refinement -- Sorting Revisited -- Failures and Fixes -- Further Examples -- On Interactive Software 
653 |a Software engineering 
653 |a Software Engineering 
653 |a Formal Languages and Automata Theory 
653 |a Machine theory 
041 0 7 |a eng  |2 ISO 639-2 
989 |b Springer  |a Springer eBooks 2005- 
028 5 0 |a 10.1007/b138515 
856 4 0 |u https://doi.org/10.1007/b138515?nosfx=y  |x Verlag  |3 Volltext 
082 0 |a 005.1 
520 |a 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