Correctness-by-Learning of Infinite-State Component-Based Systems

  • Haitham Bou-Ammar
  • Mohamad JaberEmail author
  • Mohamad Nassar
Conference paper
Part of the Lecture Notes in Computer Science book series (LNCS, volume 10487)


We introduce a novel framework for runtime enforcement of safe executions in component-based systems with multi-party interactions modeled using BIP. Our technique frames runtime enforcement as a sequential decision making problem and presents two alternatives for learning optimal strategies that ensure fairness between correct traces. We target both finite and infinite state-spaces. In the finite case, we guarantee that the system avoids bad-states by casting the learning process as a one of determining a fixed point solution that converges to the optimal strategy. Though successful, this technique fails to generalize to the infinite case due to need for building a dictionary, which quantifies the performance of each state-interaction pair. As such, we further contribute by generalizing our framework to support the infinite setting. Here, we adapt ideas from function approximators and machine learning to encode each state-interaction pairs’ performance. In essence, we autonomously learn to abstract similar performing states in a relevant continuous space through the usage of deep learning. We assess our method empirically by presenting a fully implemented tool, so called RERL. Particularly, we use RERL to: (1) enforce deadlock freedom on a dining philosophers benchmark, and (2) allow for pair-wise synchronized robots to autonomously achieve consensus within a cooperative multi-agent setting.


  1. 1.
    Basu, A., Bensalem, S., Bozga, M., Combaz, J., Jaber, M., Nguyen, T., Sifakis, J.: Rigorous component-based system design using the BIP framework. IEEE Softw. 28(3), 41–48 (2011)CrossRefGoogle Scholar
  2. 2.
    Bensalem, S., Bozga, M., Nguyen, T.-H., Sifakis, J.: D-Finder: a tool for compositional deadlock detection and verification. In: Bouajjani, A., Maler, O. (eds.) CAV 2009. LNCS, vol. 5643, pp. 614–619. Springer, Heidelberg (2009). doi: 10.1007/978-3-642-02658-4_45 CrossRefGoogle Scholar
  3. 3.
    Bonakdarpour, B., Bozga, M., Jaber, M., Quilbeuf, J., Sifakis, J.: A framework for automated distributed implementation of component-based models. Distrib. Comput. 25(5), 383–409 (2012)CrossRefzbMATHGoogle Scholar
  4. 4.
    Charafeddine, H., El-Harake, K., Falcone, Y., Jaber, M.: Runtime enforcement for component-based systems. In: Proceedings of the 30th Annual ACM Symposium on Applied Computing, Salamanca, Spain, pp. 1789–1796, 13–17 April 2015Google Scholar
  5. 5.
    Clarke, E.M.: My 27-year quest to overcome the state explosion problem. In: Proceedings of the 24th Annual IEEE Symposium on Logic in Computer Science, LICS 2009, Los Angeles, CA, USA, p. 3, 11–14 August 2009Google Scholar
  6. 6.
    Clarke, E.M., Klieber, W., Novácek, M., Zuliani, P.: Model checking and the state explosion problem. In: Tools for Practical Software Verification, LASER, International Summer School, Elba Island, Italy, Revised Tutorial, pp. 1–30 (2011)Google Scholar
  7. 7.
    Falcone, Y., Jaber, M., Nguyen, T., Bozga, M., Bensalem, S.: Runtime verification of component-based systems in the BIP framework with formally-proved sound and complete instrumentation. Softw. Syst. Model. 14(1), 173–199 (2015)CrossRefGoogle Scholar
  8. 8.
    Falcone, Y., Zuck, L.D.: Runtime verification: the application perspective. STTT 17(2), 121–123 (2015)CrossRefGoogle Scholar
  9. 9.
    Flanagan, C., Qadeer, S.: Predicate abstraction for software verification. In: Conference Record of POPL 2002: The 29th Symposium on Principles of Programming Languages, Portland, OR, USA, pp. 191–202, 16–18 January 2002Google Scholar
  10. 10.
    Huang, C., Peled, D.A., Schewe, S., Wang, F.: A game-theoretic foundation for the maximum software resilience against dense errors. IEEE Trans. Softw. Eng. 42(7), 605–622 (2016)CrossRefGoogle Scholar
  11. 11.
    Katz, G., Peled, D.A.: Synthesizing, correcting and improving code, using model checking-based genetic programming. In: Hardware and Software: Verification and Testing - Proceedings of the 9th International Haifa Verification Conference, HVC 2013, Haifa, Israel, pp. 246–261, 5–7 November 2013Google Scholar
  12. 12.
    Lin, L.J.: Reinforcement Learning for Robots Using Neural Networks. Ph.D. thesis, Pittsburgh, PA, USA (1992). uMI Order No. GAX93-22750Google Scholar
  13. 13.
    Peled, D.: Automatic synthesis of code using genetic programming. In: Margaria, T., Steffen, B. (eds.) ISoLA 2016, Part I. LNCS, vol. 9952, pp. 182–187. Springer, Cham (2016). doi: 10.1007/978-3-319-47166-2_12 CrossRefGoogle Scholar
  14. 14.
    Peled, D.: Using genetic programming for software reliability. In: Falcone, Y., Sánchez, C. (eds.) RV 2016. LNCS, vol. 10012, pp. 116–131. Springer, Cham (2016). doi: 10.1007/978-3-319-46982-9_8 CrossRefGoogle Scholar
  15. 15.
    Pinisetty, S., Preoteasa, V., Tripakis, S., Jéron, T., Falcone, Y., Marchand, H.: Predictive runtime enforcement. In: Proceedings of the 31st Annual ACM Symposium on Applied Computing, Pisa, Italy, pp. 1628–1633, 4–8 April 2016Google Scholar
  16. 16.
    Pinisetty, S., Tripakis, S.: Compositional runtime enforcement. In: Rayadurgam, S., Tkachuk, O. (eds.) NFM 2016. LNCS, vol. 9690, pp. 82–99. Springer, Cham (2016). doi: 10.1007/978-3-319-40648-0_7 CrossRefGoogle Scholar
  17. 17.
    Pnueli, A., Rosner, R.: On the synthesis of a reactive module. In: Conference Record of the Sixteenth Annual ACM Symposium on Principles of Programming Languages, Austin, Texas, USA, pp. 179–190, 11–13 January 1989Google Scholar
  18. 18.
    Pnueli, A., Rosner, R.: Distributed reactive systems are hard to synthesize. In: 31st Annual Symposium on Foundations of Computer Science, St. Louis, Missouri, USA, vol. II, pp. 746–757, 22–24 October 1990Google Scholar
  19. 19.
    Queille, J.P., Sifakis, J.: Specification and verification of concurrent systems in CESAR. In: Dezani-Ciancaglini, M., Montanari, U. (eds.) Programming 1982. LNCS, vol. 137, pp. 337–351. Springer, Heidelberg (1982). doi: 10.1007/3-540-11494-7_22 CrossRefGoogle Scholar

Copyright information

© Springer International Publishing AG 2017

Authors and Affiliations

  • Haitham Bou-Ammar
    • 1
  • Mohamad Jaber
    • 1
    Email author
  • Mohamad Nassar
    • 1
  1. 1.American University of BeirutBeirutLebanon

Personalised recommendations