This book presents real-world examples of formal techniques in an industrial context. It covers formal methods such as SCADE and/or the B Method, in various fields such as railways, aeronautics, and the automotive industry. The purpose of this book is to present a summary of experience on the use of “formal methods” (based on formal techniques such as proof, abstract interpretation and model-checking) in industrial examples of complex systems, based on the experience of people currently involved in the creation and assessment of safety critical system software. The involvement of people from within the industry allows the authors to avoid the usual confidentiality problems which can arise and thus enables them to supply new useful information (photos, architecture plans, real examples, etc.).
The authors cover the following topics: an example of use of SCADE, constraint solving in B, validation of Petri Nets-based automated rail safety, data validation, etc.
Table of Contents
Chapter 1: Presentation of the B Method
Chapter 2: Atelier B
Chapter 3: B Tools
Chapter 4: The B Method at Siemens
Chapter 5: Industrial Applications for Modeling with the B Method
Chapter 6: Formalization of Digital Circuits Using the B Method
Chapter 7: Pragmatic Use of B: The Power of Formal Methods without the Bulk
Chapter 8: BRILLANT/BCaml — A Free Tools Platform for the B Method
Chapter 9: Translating B and Event-B Machines to Java and JML
Chapter 10: Event B
Chapter 11: B-RAIL: UML to B Transformation in Modeling a Level Crossing
Chapter 12: Feasibility of the Use of Formal Methods for Manufacturing Systems
Chapter 13: B Extended to Floating-Point Numbers: Is it Sufficient for Proving Avionics Software?
Chapter 14: From Animation to Data Validation: The ProB Constraint Solver 10 Years On
Chapter 15: Unified Train Driving Policy