Development of a Generic Voter under FoCal

  • Philippe Ayrault
  • Thérèse Hardin
  • François Pessaux
Part of the Lecture Notes in Computer Science book series (LNCS, volume 5668)


Safety and security are claimed major concerns by the formal FoCal development environment. In [7] we introduced a safety development cycle customised to FoCal. In this paper, we examine how to specify and implement a concrete example following this cycle. We show that indeed it is feasible and we present how FoCal features fit with software best practises like modularity, reuse, fault confinement and maintenance.


formal methods development cycle voter FoCal 


Unable to display preview. Download preview PDF.

Unable to display preview. Download preview PDF.


  1. 1.
    Railway Applications - Communications, Signalling and Processing Systems - Software for Railway Control and Protection Systems, Standard Cenelec EN 50128 (1999)Google Scholar
  2. 2.
    Functional safety of electrical/electronic/programmable electronic safety-related systems, Standard IEC-61508, International Electrotechnical Commission (1998)Google Scholar
  3. 3.
    Maarek, M., Prevosto, V.: FoCDoC: the documentation system of FoC. In: Proceedings of Calculemus (September 2003)Google Scholar
  4. 4.
    Bonichon, R., Delahaye, D., Doligez, D.: Zenon: An Extensible Automated Theorem Prover Producing Checkable Proofs. In: Dershowitz, N., Voronkov, A. (eds.) LPAR 2007. LNCS, vol. 4790, pp. 151–165. Springer, Heidelberg (2007)CrossRefGoogle Scholar
  5. 5.
    Delahaye, D., Etienne, J.F., Donzeau-Gouge, V.: Producing UML Models from Focal Specifications: An Application to Airport Security Regulations. In: 2nd IFIP/IEEE International Symposium on Theoretical Aspects of Software Engineering, pp. 121–124 (2008)Google Scholar
  6. 6.
    Carlier, M., Dubois, C.: Functional Testing in the Focal environment. In: Beckert, B., Hähnle, R. (eds.) TAP 2008. LNCS, vol. 4966, pp. 84–98. Springer, Heidelberg (2008)CrossRefGoogle Scholar
  7. 7.
    Ayrault, P., Hardin, T., Pessaux, F.: Development life cycle of critical software under FoCaL. In: TTSS 2008, harnessing Theories for Tools Support in Software, Istanbul (2008)Google Scholar
  8. 8.
    Lorczack, P.R., et al.: Theoretical Investigation of Generalized Voters for Redundant Systems. In: Digest of Papers FTCS-19: The Nineteenth International Symposium on Fault-Tolerant Computing, pp. 444–451 (1989)Google Scholar
  9. 9.
    Dajani-Brown, S., Cofer, D., Bouali, A.: Formal verification of an avionics sensor voter using SCADE. In: Lakhnech, Y., Yovine, S. (eds.) FORMATS 2004 and FTRTFT 2004. LNCS, vol. 3253, pp. 5–20. Springer, Heidelberg (2004)CrossRefGoogle Scholar
  10. 10.
    Leroy, X., Doligez, D., Garrigue, J., Rémy, D., Vouillon, J.: The Objective Caml system, documentation and user manual. release 3.11. Documents include with the Objective Caml distribution, INRIA (November 2008)Google Scholar
  11. 11.
    Bertot, Y., Castéran, P.: Coq’Art: The Calculus of Inductive Constructions. Series: Texts in Theoretical Computer Science. An EATCS SeriesGoogle Scholar
  12. 12.
    Dubois, C., Hardin, T., Donzeau-Gouge, V.V.: Building a certified component within FoCaL. Trends in Functional Programming 5, 33–48 (2006)Google Scholar
  13. 13.
    Astesiano, E., Bidoit, M., Kirchner, H., Krieg-Brückner, B., Moss, P.D., Sannella, D., Tarlecki, A.: CASL: the Common Algebraic Specification Language. Theorical Computer Science 286, 153–196 (2002)MathSciNetCrossRefMATHGoogle Scholar
  14. 14.
    Aspinall, D., Sannella, D.: From specification to code in CASL. In: Kirchner, H., Ringeissen, C. (eds.) AMAST 2002. LNCS, vol. 2422, pp. 1–14. Springer, Heidelberg (2002)CrossRefGoogle Scholar
  15. 15.
    The RAISE Method Group: The RAISE Development Method. Prentice Hall International, Englewood Cliffs (1995)Google Scholar
  16. 16.
    Abrial, J.R.: The B-Book - Assigning Programs to meanings. Cambridge University Press, Cambridge (1996)CrossRefMATHGoogle Scholar

Copyright information

© Springer-Verlag Berlin Heidelberg 2009

Authors and Affiliations

  • Philippe Ayrault
    • 1
  • Thérèse Hardin
    • 2
  • François Pessaux
    • 2
  1. 1.EtersafePalaiseau
  2. 2.Semantics, Proofs and Implementation, Laboratoire Informatique de Paris 6Pierre & Marie Curie UniversityParis

Personalised recommendations