Cargando…

Modeling in Event-B : system and software engineering /

"A practical text suitable for an introductory or advanced course in formal methods, this book presents a mathematical approach to modeling and designing systems using an extension of the B formalism: Event-B. Based on the idea of refinement, the author's systematic approach allows the use...

Descripción completa

Detalles Bibliográficos
Clasificación:Libro Electrónico
Autor principal: Abrial, Jean-Raymond
Formato: Electrónico eBook
Idioma:Inglés
Publicado: Cambridge ; New York : Cambridge University Press, 2010.
Temas:
Acceso en línea:Texto completo
Tabla de Contenidos:
  • Prologue: Faultless systems
  • yes we can!
  • Definitions and requirements document
  • Modeling vs. programming
  • Discrete transition systems and proofs
  • States and events
  • Horizontal refinement and proofs
  • Vertical refinement and proofs
  • Communication and proofs
  • Being faultless: what does it mean?
  • About proofs
  • Design pattern
  • Animation
  • Tools
  • The problem of legacy code
  • The use of set-theoretic notation
  • Other validation approaches
  • Innovation
  • Education
  • Technology transfer
  • References
  • Acknowledgments
  • 1 Introduction
  • 1.1 Motivation
  • 1.2 Overview of the chapters
  • Chapter 1: Introduction
  • Chapter 2: Controlling cars on a bridge
  • Chapter 3: A mechanical press controller
  • Chapter 4: A simple file transfer protocol
  • Chapter 5: The Event-B Modeling notation and proof obligation rules
  • Chapter 6: Bounded re-transmission protocol
  • Chapter 7: Development of a concurrent program
  • Chapter 8: Development of electronic circuits
  • Chapter 9: Mathematical language
  • Chapter 10: Leader election on a ring-shaped network
  • Chapter 11: Synchronizing a tree-shaped network
  • Chapter 12: Routing algorithm for a mobile agent
  • Chapter 13: Leader election on a connected graph network
  • Chapter 14: Mathematical models for proof obligations
  • Chapter 15: Development of sequential programs
  • Chapter 16: A location access controller
  • Chapter 17: Train system
  • Chapter 18: Problems
  • 1.3 How to use this book
  • 1.4 Formal methods
  • 1.5 A little detour: blueprints
  • 1.6 The requirements document
  • 1.6.1 Life cycle
  • 1.6.2 Difficulties with the requirements document
  • 1.6.3 A useful comparison
  • 1.7 Definition of the term f̀̀ormal method'' as used in this book
  • 1.7.1 Complex systems
  • 1.7.2 Discrete systems
  • 1.7.3 Test reasoning versus model (blueprint) reasoning
  • 1.8 Informal overview of discrete models
  • 1.8.1 State and transitions
  • 1.8.2 Operational interpretation
  • 1.8.3 Formal reasoning
  • 1.8.4 Managing the complexity of closed models
  • 1.8.5 Refinement
  • 1.8.6 Decomposition
  • 1.8.7 Generic development
  • 1.9 References
  • 2 Controlling cars on a bridge
  • 2.1 Introduction
  • 2.2 Requirements document
  • 2.3 Refinement strategy
  • 2.4 Initial model: limiting the number of cars
  • 2.4.1 Introduction
  • 2.4.2 Formalizing the state
  • 2.4.3 Formalizing the events
  • 2.4.4 Before-after predicates
  • 2.4.5 Proving invariant preservation
  • 2.4.6 Sequent
  • 2.4.7 Applying the invariant preservation rule
  • 2.4.8 Proving the proof obligations
  • 2.4.9 Rules of inference
  • 2.4.10 Meta-variables
  • 2.4.11 Proofs
  • 2.4.12 More rules of inference
  • 2.4.13 Improving the two events: introducing guards
  • 2.4.14 Improving the invariant preservation rule
  • 2.4.15 Reproving invariant preservation
  • 2.4.16 Initialization
  • 2.4.17 Invariant establishment rule for the initializing event init
  • 2.4.18 Applying the invariant establishment rule
  • 2.4.19 Proving the initialization proof obligations: more inference rules
  • 2.4.20 Deadlock freedom
  • 2.4.21 Deadlock freedom rule
  • 2.4.22 Applying the deadlock freedom proof obligation rule
  • 2.4.23 More i