CLPS–B – A constraint solver to animate a B specification

  • Authors:
  • Fabrice Bouquet;Bruno Legeard;Fabien Peureux

  • Affiliations:
  • Université de Franche-Comté – CNRS – INRIA, Laboratoire d’Informatique (LIFC), 16, route de Gray, 25030, Besançon cedex, France;Université de Franche-Comté – CNRS – INRIA, Laboratoire d’Informatique (LIFC), 16, route de Gray, 25030, Besançon cedex, France;Université de Franche-Comté – CNRS – INRIA, Laboratoire d’Informatique (LIFC), 16, route de Gray, 25030, Besançon cedex, France

  • Venue:
  • International Journal on Software Tools for Technology Transfer (STTT) - Special section on tools and algorithms for the construction and analysis of systems
  • Year:
  • 2004

Quantified Score

Hi-index 0.00

Visualization

Abstract

This paper proposes an approach to evaluating B formal specifications using constraint logic programming with sets (CLPS). This approach is used to animate and generate test sequences from B formal specifications. The solver, called CLPS–B, is described in terms of constraint domains, consistency verification, and constraint propagation. It is more powerful than most constraint systems because it allows the domain of variable to contain other variables, which increases the level of abstraction. The constrained state propagates the nondeterminism of the B specifications and reduces the number of states in a reachability graph. We illustrate this approach by comparing the constrained state graph exploration with the concrete one in a simple example – process scheduler. We also describe the automated test generation method that uses the CLPS–B solver to better control combinational explosion.