Skip to main content

Verification of \({{EB}^3}\) specifications using CADP


\({{\small {EB}}^3}\) is a specification language for information systems. The core of the \({{\small {EB}}^3}\) language consists of process algebraic specifications describing the behaviour of the entities in a system, and attribute function definitions describing the entity attributes. The verification of \({{\small {EB}}^3}\) specifications against temporal properties is of great interest to users of \({{\small {EB}}^3}\). In this paper, we propose a translation from \({{\small {EB}}^3}\) to LOTOS NT (LNT for short), a value-passing concurrent language with classical process algebra features. Our translation ensures the one-to-one correspondence between states and transitions of the labelled transition systems corresponding to the \({{\small {EB}}^3}\) and LNT specifications. We automated this translation with the \({{{\small {EB}}^3}2{\small {LNT}}}\) tool, thus equipping the \({{\small {EB}}^3}\) method with the functional verification features available in the CADP toolbox.

This is a preview of subscription content, access via your institution.


  1. Abdulla PA, Bouajjani A, Jonsson B, Nilsson M (1999) Handling global conditions in parameterized system verification. In: Proceedings of CAV, LNCS, vol 1633. Springer, Berlin, pp 134–145

  2. Abrial JR (2005) The B-book—assigning programs to meanings. Cambridge University Press, Cambridge

    MATH  Google Scholar 

  3. Abrial JR (2010) Modeling in event-B: system and software engineering. Cambridge University Press, Cambridge

    Book  MATH  Google Scholar 

  4. Barradas HR, Bert D (2002) Specification and proof of liveness properties under fairness assumptions in B event systems. In: Proceedings of integrated formal methods, LNCS, vol 2335. Springer, Berlin, pp 360–379

  5. Biere A, Cimatti A, Clarke E, Zhu Y (1999) Symbolic model checking without BDDs. In: Workshop on Tools and Algorithms for the Construction and Analysis of Systems, LNCS, vol 1579. Springer, Berlin, pp 193–207

  6. Bellegarde F, Chouali S, Julliand J (2002) Verification of dynamic constraints for B event systems under fairness assumptions. In: ZB 2002: formal specification and development in Z and B, LNCS, vol 2272. Springer, Berlin, pp 477–496

  7. Bergstra JA, Ponse A, Smolka SA (2001) Handbook of process algebra. Elsevier, Amsterdam

    MATH  Google Scholar 

  8. Bergstra JA, Klop JW (1985) Algebra of communicating processes with abstraction. TCS 37: 77–121

    Article  MathSciNet  MATH  Google Scholar 

  9. Chossart R (2010) Évaluation d’outils de vérification pour les spécifications de systèmes d’information. Master’s thesis, Université de Sherbrooke

  10. ClearSy. Atelier B.

  11. Cimatti A, Clarke E, Giunchiglia E, Giunchiglia F, Pistore M, Roveri M, Sebastiani R, Tacchella A (2002) NuSMV 2: an opensource tool for symbolic model checking. Springer, Berlin

    MATH  Google Scholar 

  12. Champelovier D, Clerc X, Garavel H, Guerte Y, McKinty C, Powazny V, Lang F, Serwe W, Smeding G (2011) Reference manual of the LOTOS NT to LOTOS translator—version 5.4. INRIA/VASY, France

    Google Scholar 

  13. Clarke EM, Emerson EA, Sistla AP (1986) Automatic verification of finite-state concurrent systems using temporal logic specifications J ACM Trans Program Lang Syst, vol 8. Springer, Berlin, pp 244–263

  14. Emerson EA, Lei CL (1986) Efficient model checking in fragments of the propositional Mu-calculus. In: Proceedings of logic in computer science, pp 267–278

  15. Evans N, Treharne H, Laleau R, Frappier M (2004) How to verify dynamic properties of information systems. In: Workshop of software engineering and formal, methods, pp 416–425

  16. Frappier M, Fraikin B, Chossart R, Chane-Yack-Fa R, Ouenzar M (2010) Comparison of model checking tools for information systems. In: Proceedings of ICFEM, LNCS, vol 6447. Springer, Berlin, pp 581–596

  17. Formal Systems (Europe) Ltd. Failures-divergences refinement. FDR2 User Manual 1997

  18. Frappier M, St.-Denis R (2003) \({{\small {EB}}^3}\) an entity-based black-box specification method for information systems. J Softw Syst Model, vol 2. Springer, Berlin, pp 134–149

    Google Scholar 

  19. Garavel H, Lang F, Mateescu R, Serwe W (2011) CADP 2010: a toolbox for the construction and analysis of distributed processes. In: Proceedings of tools and algorithms for the construction and analysis of systems, LNCS, vol 6605. Springer, Berlin, pp 372–387

  20. F. Gervais. Combinaison de spécifications formelles pour la modélisation des systèmes d’information. PhD thesis, Université de Sherbrooke, 2006

  21. J. Groslambert. Verification of LTL on B Event System. Technical report, 2006

  22. F. Gervais, M. Frappier, R. Laleau. Synthesizing B Specifications from \({{\small {EB}}^3}\) Attribute Definitions. In Proceedings of Integrated Formal Methods, LNCS vol. 3771, pages 207–226 Springer, 2005

  23. Gervais F, Frappier M, Laleau R (2006) Refinement of \({{\small {EB}}^3}\) process patterns into B specifications. In: Proceedings of formal specification and development in B, LNCS, vol 4355. Springer, Berlin, pp 201–215

  24. Hoare CAR (1978) Communicating sequential processes. Commun ACM 21: 666–677

    Article  MATH  Google Scholar 

  25. Hoang T-S, Abrial T-S (2011) Reasoning about liveness properties in Event-B. In: Proceedings of formal engineering methods, LNCS vol 6991, pp 456–471

  26. Holzmann GJ (2004) The spin model checker: primer and reference manual. Addison-Wesley, Boston

    Google Scholar 

  27. Jackson D (2006) Software abstractions. MIT Press, New York

    Google Scholar 

  28. Jiague ME, Frappier M, Gervais F, Konopacki P, Laleau R, Milhau J, St-Denis R (2010) Model-driven engineering of functional security policies. In: Proceedings of international conference on enterprise information, pp 374–379

  29. ISO/IEC (2001) Enhancements to LOTOS (E-LOTOS). International Standard number 15437:2001, International Organization for Standardization—information technology, Genève

  30. Leuschel M, Butler M (2003) ProB: a model checker for B. In: Proceedings of symposium on formal methods, LNCS, vol 2805. Springer, Berlin, pp 855–874

  31. Kozen D (1983) Results on the propositional \({\mu }\)-calculus. TCS 27: 333–354

    Article  MathSciNet  MATH  Google Scholar 

  32. Leuschel M, Massart M, Currie A (2000) How to make FDR spin: LTL model checking of CSP by refinement. Technical report

  33. Morgan CC (1998) Programming from specifications. Prentice Hall, Amsterdam

    MATH  Google Scholar 

  34. Mammar A, Frappier M (2015) Proof-based verification approaches for dynamic properties: application to the information system domain. J Formal Asp Comput 27: 335–374

    Article  MathSciNet  MATH  Google Scholar 

  35. Milhau J, Idani A, Laleau R, Labiadh MA, Ledru Y, Frappier M (2011) Combining UML, ASTD and B for the formal specification of an access control filter. J Innov Syst Softw Eng 7:303–313. Springer, Berlin

  36. Mateescu R, Thivolle D (2008) A model checking language for concurrent value-passing systems. In: Proceedings of formal methods, LNCS, vol 5014. Springer, Berlin, pp 148–164

  37. Pnueli A (1977) The temporal logic of programs. J. Found. Comput. Sci., vol 18. Springer, Berlin, pp 46–57

  38. Queille J-P, Sifakis J (1983) Fairness and related properties in transition systems-a temporal logic to deal with fairness. J Acta Informatica 19: 195–220

    MathSciNet  MATH  Google Scholar 

  39. Streett R (1982) Propositional dynamic logic of looping and converse. Inf Contr 54: 121–141

    Article  MathSciNet  MATH  Google Scholar 

  40. Schneider S, Treharne H (2005) CSP theorems for communicating B machines. J Formal Asp Comput, vol 17. Springer, Berlin, pp 390–422

  41. Schneider S, Treharne H, Wehrheim H, Williams DM (2014) Managing LTL properties in event-B refinement. In: Proceedings of integrated formal methods. Springer, Berlin, pp 221–237

  42. Treharne H, Schneider S, Bramble M (2003) Composing specifications using communication. In: Proceedings of ZB, LNCS, vol 2651. Springer, Berlin, pp 55–78

  43. Vekris D (2014) Verification of \({{\small {EB}}^3}\) specifications with the aid of model-checking techniques. PhD thesis, Université de Paris-Créteil

  44. Vekris D, Dima C (2013) Efficient operational semantics for \({{\small {EB}}^3}\) for verification of temporal properties. In: Proceedings of fundamentals of software engineering, LNCS, vol 8161, pp 133–149. Springer, Berlin

  45. Vekris D, Lang F, Dima C, Mateescu R (2013) Verification of \({{\small {EB}}^3}\) specifications using CADP. In: Proceedings of integrated formal methods, LNCS, vol 7940. Springer, Berlin, pp 61–76

Download references

Author information

Authors and Affiliations


Corresponding author

Correspondence to Dimitris Vekris.

Additional information

Einar Broch Johnsen, Luigia Petre, and Michael Butler

Rights and permissions

Reprints and Permissions

About this article

Verify currency and authenticity via CrossMark

Cite this article

Vekris, D., Lang, F., Dima, C. et al. Verification of \({{EB}^3}\) specifications using CADP. Form Asp Comp 28, 145–178 (2016).

Download citation

  • Received:

  • Accepted:

  • Published:

  • Issue Date:

  • DOI:


  • Process algebras
  • Information systems
  • \({{\small {EB}}^3}\)
  • Model checking
  • Verification