Synopses & Reviews
The B method is a means for specifying, designing and coding software systems. The long-awaited B Book is the standard reference for everything concerning this method. It contains the mathematical basis on which it is founded, the precise definitions of the notations used, and a large number of examples illustrating its use in practice. J.-R. Abrial, the inventor of B, has written the book in such a way that it can be used for self-study or for reference. It is in four parts, the first dealing with the mathematical foundations, including a systematic construction of predicate logic and set theory, and the definition of the various mathematical structures that are needed to formalize software systems; the author places special emphasis on the notion of proof. The second part contains a presentation of the Generalized Substitution Language and of the Abstract Machine Notation, which are both used to specify software systems; the author gives examples to show how large specifications can be constructed systematically. The next part introduces the two basic programming features of sequencing and loop, with examples showing how to construct small algorithms. The last part covers the very important notion of refinement. It shows how to construct large software systems by means of layered architectures of modules. It culminates with the presentation of several examples of complete development with a special emphasis on the methodological approach. Finally, appendices give summaries of all the logical and mathematical definitions, and of all the rules and proof obligations. With the appearance of The B Book, formal methods practitioners, computer scientists, and systems developers at last will have access to the definitive account of what will become one of the standard approaches to the construction of software systems.
Review
'With the appearance of The B-Book ... computer scientists, and system developers at last will have access to the definitive account of what will become one of the standard approaches to the construction of software systems.' Zentralblatt MATH
Review
'It will act as the reference book for many involved in the application of the B-Method ... The B-Book provides a comprehensive reference for the B approach to specifying, designing and coding software systems.' Jonathan Bowen, Times Higher Education Supplement
Synopsis
The definitive book on the B Method; essential for all working in formal methods and safety-critical software.
Synopsis
The B method is a means for specifying, designing and coding software systems. The long-awaited B Book is the standard reference for everything concerning this method. J-R Abrial, the inventor of B, has written the book in such a way that it can be used for self-study or for reference. With its appearance, formal methods practitioners, computer scientists, and systems developers at last will have access to the definitive account of what will become one of the standard approaches to the construction of software systems.
Synopsis
The B Method is a means for specifying, designing and coding software systems. The long-awaited B-Book is the standard reference for everything concerning this method. J.-R. Abrial, the inventor of B, has written the book in such a way that it can be used for self-study or for reference. With its appearance, formal methods practitioners, computer scientists, and systems developers at last will have access to the definitive account of what will become one of the standard approaches to the construction of software systems.
Table of Contents
Tribute; Foreword; Introduction; Part I. Mathematics: 1. Mathematical reasoning; 2. Set notation; 3. Mathematical objects; Part II. Abstract Machines: 4. Introduction to abstract machines; 5. Formal definition of abstract machines; 6. Theory of abstract machines; 7. Constructing large abstract machines; 8. Examples of abstract machines; Part III. Programming: 9. Sequencing and loop; 10. Programming examples; Part IV. Refinement: 11. Refinement; 12. Constructing large software systems; 13. Examples of refinement; Appendixes; Index.