Abstract
B is a method for specifying, designing and coding software systems. It is based on Zermelo-Fraenkel set theory with the axiom of choice, the concept of generalized substitution and on structuring mechanisms (machine, refinement, implementation). The concept of refinement is the key notion for developing B models of (software) systems in an incremental way. B models are accompanied by mathematical proofs that justify them. Proofs of B models convince the user (designer or specifier) that the (software) system is effectively correct. We provide a survey of the underlying logic of the B method and the semantic concepts related to the B method; we detail the B development process partially supported by the mechanical engine of the prover.
Keywords
Cite this article
@article{cai-1315,
author = {Dominique Cansell and Dominique Mery},
title = {Foundations of the B method},
journal = {Computing and Informatics},
volume = {22},
number = {3-4},
pages = {221--256},
year = {2003},
issn = {1335-9150},
url = {https://cai.type.sk/content/2003/3-4/foundations-of-the-b-method/}
}
TY - JOUR AU - Dominique Cansell AU - Dominique Mery TI - Foundations of the B method JO - Computing and Informatics VL - 22 IS - 3-4 SP - 221 EP - 256 PY - 2003 SN - 1335-9150 UR - https://cai.type.sk/content/2003/3-4/foundations-of-the-b-method/ KW - Events KW - actions KW - systems KW - refinement KW - proof KW - validation KW - formal method ER -
Cansell, D., & Mery, D. (2003). Foundations of the B method. Computing and Informatics, 22(3-4), 221–256. https://cai.type.sk/content/2003/3-4/foundations-of-the-b-method/