Probabilistic Compositional Reasoning for Guaranteeing Fault Tolerance Properties

  • Jan Olaf Blech
Part of the Lecture Notes in Computer Science book series (LNCS, volume 7109)


We present a framework to formally describe system behavior and symbolically reason about possible failures. We regard systems which are composed of different units: sensors, computational parts and actuators. Considering worst-case failure behavior of system components, our framework is used to derive reliability guarantees for composed systems. The behavior of system components is modeled using monad like constructs that serve as an abstract representation for system behavior. We introduce rules to reason about these representations and derive results like, e.g., guaranteed upper bounds for system failure. Our approach is characterized by the fact that we do not just map a certain component to a failure probability, but regard distributions of error behavior. These serve as basis for deriving failure probabilities.


Failure Probability System Description Fault Tolerance Work Piece Conveyor Belt 
These keywords were added by machine and not by the authors. This process is experimental and the keywords may be updated as the learning algorithm improves.


Unable to display preview. Download preview PDF.

Unable to display preview. Download preview PDF.


  1. 1.
    Audebaud, P., Paulin-Mohring, C.: Proofs of randomized algorithms in Coq. Science of Computer Programming (2008)Google Scholar
  2. 2.
    Ayache, S., Conquet, E., Humbert, P., Rodriguez, C., Sifakis, J., Gerlich, R.: Formal methods for the validation of fault tolerance in autonomous spacecraft. In: International Symposium on Fault-Tolerant Computing, FTCS 1996 (1996)Google Scholar
  3. 3.
    Blech, J.O.: Proving the Security of ElGamal Encryption Via Indistinguishability Logic. In: ACM Symposium On Applied Computing (2011)Google Scholar
  4. 4.
    Blech, J.O., Hattendorf, A., Huang, J.: An Invariant Preserving Transformation for PLC Models. In: IEEE International Workshop on Model-Based Engineering for Real-Time Embedded Systems Design (2011)Google Scholar
  5. 5.
    Blech, J.O., Périn, M.: Generating Invariant-based Certificates for Embedded Systems. ACM Transactions on Embedded Computing Systems (TECS) (to appear)Google Scholar
  6. 6.
    The Coq development team: The Coq Proof Assistant Reference Manual v8.3 (2010),
  7. 7.
    Hallerstede, S., Hoang, T.S.: Qualitative Probabilistic Modelling in Event-B*. In: Davies, J., Gibbons, J. (eds.) IFM 2007. LNCS, vol. 4591, pp. 293–312. Springer, Heidelberg (2007)CrossRefGoogle Scholar
  8. 8.
    Hanmer, R.: Patterns for Fault Tolerant Software. Wiley (October 2007) ISBN: 978-0-470-31979-6Google Scholar
  9. 9.
    Jeffords, R., Heitmeyer, C., Archer, M., Leonard, E.: A Formal Method for Developing Provably Correct Fault-Tolerant Systems Using Partial Refinement and Composition. In: Cavalcanti, A., Dams, D.R. (eds.) FM 2009. LNCS, vol. 5850, pp. 173–189. Springer, Heidelberg (2009)CrossRefGoogle Scholar
  10. 10.
    Kljaich, J., Smith, B.T., Wojcik, A.S.: Formal Verification of Fault Tolerance Using Theorem-Proving Techniques. IEEE Transactions on Computers 38(3) (March 1989)Google Scholar
  11. 11.
    Kwiatkowska, M., Norman, G., Parker, D.: PRISM: Probabilistic Symbolic Model Checker. In: Field, T., Harrison, P.G., Bradley, J., Harder, U. (eds.) TOOLS 2002. LNCS, vol. 2324, pp. 200–204. Springer, Heidelberg (2002)Google Scholar
  12. 12.
    McIver, A., Morgan, C.: Abstraction, Refinement and Proof for Probabilistic Systems. Springer, Heidelberg (2005)zbMATHGoogle Scholar
  13. 13.
    Owre, S., Rushby, J., Shankar, N., von Henke, F.: Formal verification for fault-tolerant architectures: prolegomena to the design of PVS. IEEE Transactions on Software Engineering (February 1995)Google Scholar
  14. 14.
    Steiner, W., Rushby, J., Sorea, M., Pfeifer, H.: Model Checking a Fault-Tolerant Startup Algorithm: From Design Exploration To Exhaustive Fault Simulation. In: The International Conference on Dependable Systems and Networks. IEEE Computer Society (2004)Google Scholar
  15. 15.
    Programmable controllers - Part 3: Programming languages, IEC 61131-3: 1993, International Electrotechnical Commission (1993)Google Scholar
  16. 16.
    Wadler, P.: The essence of functional programming. In: 19’th Symposium on Principles of Programming Languages. ACM Press (January 1992)Google Scholar
  17. 17.
    Pike, L., Maddalon, J., Miner, P., Geser, A.: Abstractions for Fault-Tolerant Distributed System Verification. In: Slind, K., Bunker, A., Gopalakrishnan, G.C. (eds.) TPHOLs 2004. LNCS, vol. 3223, pp. 257–270. Springer, Heidelberg (2004)CrossRefGoogle Scholar

Copyright information

© Springer-Verlag Berlin Heidelberg 2011

Authors and Affiliations

  • Jan Olaf Blech
    • 1
  1. 1.fortiss GmbHGermany

Personalised recommendations