Automata Based Model Checking for Reo Connectors

  • Marcello M. Bonsangue
  • Mohammad Izadi
Part of the Lecture Notes in Computer Science book series (LNCS, volume 5961)


Reo is a connector language for the exogenous composition and orchestration of components in a software system. An operational semantics of Reo connectors can be given in terms of Büchi automata over a suitable alphabet of records, capturing both synchronization and context dependency requirements. In this paper, we define an action based linear time temporal logic for expressing properties of Reo connectors. Formulas can be synthesized into Büchi automata representing Reo connectors, thus leading to an automata based model checking algorithm. By generalizing standard automata based model checking algorithms for linear time temporal logic, we give an efficient on-the-fly algorithm for the model checking of formulas for Reo connectors.


Model Check Data Item Current Node Mutual Exclusion Linear Temporal Logic 
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.
    Arbab, F.: Reo: a Channel-based Coordination Model for Component Composition. Mathematical Structures in Computer Science 14(3), 329–366 (2004)zbMATHCrossRefMathSciNetGoogle Scholar
  2. 2.
    Arbab, F., Rutten, J.J.M.M.: A Coinductive Calculus of Component Connectors. In: Wirsing, M., Pattinson, D., Hennicker, R. (eds.) WADT 2003. LNCS, vol. 2755, pp. 34–55. Springer, Heidelberg (2003)Google Scholar
  3. 3.
    Arbab, F., Baier, C., de Boer, F., Rutten, J.J.M.M.: Models and Temporal Logics for Timed Component Connectors. In: Proc. of SEFM 2004, pp. 198–207. IEEE Computer Society, Los Alamitos (2004)Google Scholar
  4. 4.
    Baier, C., Sirjani, M., Arbab, F., Rutten, J.J.M.M.: Modelling Component Connectors in Reo by Constraint Automata. Science of Computer Programming 61, 75–113 (2006)zbMATHCrossRefMathSciNetGoogle Scholar
  5. 5.
    Clarke, E., Grumberg, O., Peled, D.: Model Checking. The MIT Press, Cambridge (1999)Google Scholar
  6. 6.
    Clarke, D.: Reasoning about Connector Reconfiguration II: Basic reconfiguration Logic. In: Proc. of FSEN 2005. ENTCS, vol. 159, pp. 61–77. Elsevier, Amsterdam (2006)Google Scholar
  7. 7.
    Clarke, D., Costa, D., Arbab, F.: Connector Colouring I: Synchronisation and Context Dependency. Science of Computer Programming 66(3), 205–225 (2007)zbMATHCrossRefMathSciNetGoogle Scholar
  8. 8.
    Costa, D.: Intensional Constraint Automata. Unpublished notes (2008)Google Scholar
  9. 9.
    Gerth, R., Peled, D., Vardi, M., Wolper, P.: Simple On-the-fly Automatic Verification of Linear Temporal Logic. In: Proc. of the Int. Sym. on Protocol Specification, Testing, and Verification (PSTV 1995), pp. 3–18. Chapman & Hall, Boca Raton (1995)Google Scholar
  10. 10.
    Holzmann, G.J.: The Model Checker SPIN. IEEE Transactions on Software Engineering 23(5), 279–295 (1997)CrossRefMathSciNetGoogle Scholar
  11. 11.
    Hopcroft, J.E., Motwani, R., Ullman, J.D.: Introduction to Automata Theory, Languages, and Computation, 3rd edn. Addison-Wesley, Reading (2006)Google Scholar
  12. 12.
    Izadi, M., Bonsangue, M.M.: Recasting Constraint Automata into Büchi Automata. In: Fitzgerald, J.S., Haxthausen, A.E., Yenigun, H. (eds.) ICTAC 2008. LNCS, vol. 5160, pp. 156–170. Springer, Heidelberg (2008)CrossRefGoogle Scholar
  13. 13.
    Izadi, M., Bonsangue, M.M., Clarke, D.: Modeling Component Connectors: Synchronisation and Context-Dependency. In: Proc. of SEFM 2008, pp. 303–312. IEEE Computer Society, Los Alamitos (2008)Google Scholar
  14. 14.
    Kaplan, D.M.: Regular Expressions and the Equivalence of Programs. Journal of Compiting System Science 3, 361–386 (1969)zbMATHGoogle Scholar
  15. 15.
    Klüppelholz, S., Baier, C.: Symbolic Model Checking for Channel-based Component Connectors. In: Proc. of FOCLASA 2006. ENTCS, vol. 175(2), pp. 19–37. Elsevier, Amsterdam (2007)Google Scholar
  16. 16.
    Kozen, D.: Automata on guarded strings and applications. Matématica Contemporânea 24, 117–139 (2003)zbMATHMathSciNetGoogle Scholar
  17. 17.
    Kupferman, O., Vardi, M.: Verification of Fair Transition Systems. In: Alur, R., Henzinger, T.A. (eds.) CAV 1996. LNCS, vol. 1102, pp. 372–382. Springer, Heidelberg (1996)Google Scholar
  18. 18.
    Madhusudan, P.: On the Fly Model Checking for Linear Time Temporal Logic. M.Sc. Thesis, Anna University, Madras, India (1996)Google Scholar
  19. 19.
    Remy, D.: Efficient Representation of Extensible Records. In: Proc. ACM SIGPLAN Workshop on ML and its applications, pp. 12–16 (1994)Google Scholar
  20. 20.
    Tsay, Y., Chen, Y., Tsai, M., Wu, K., Chan, W.: GOAL: A Graphical Tool for Manipulating Büchi Automata and Temporal Formulae. In: Grumberg, O., Huth, M. (eds.) TACAS 2007. LNCS, vol. 4424, pp. 466–471. Springer, Heidelberg (2007)CrossRefGoogle Scholar
  21. 21.
    Vardi, M.: An Automata-Theoretic Approach to Linear Temporal Logic. In: Moller, F., Birtwistle, G. (eds.) Logics for Concurrency. LNCS, vol. 1043, pp. 238–266. Springer, Heidelberg (1996)Google Scholar
  22. 22.
    Vardi, M., Wolper, P.: An Automata-Theoretic Approach to Automatic Program Verification. In: Proc. of (LICS 1986), pp. 322–331 (1986)Google Scholar
  23. 23.
    Thomas, W.: Automata on Infinite Objects. In: Handbook of Theoretical Computer Science, vol. B, pp. 133–191. Elsevier, Amsterdam (1990)Google Scholar

Copyright information

© Springer-Verlag Berlin Heidelberg 2010

Authors and Affiliations

  • Marcello M. Bonsangue
    • 1
    • 2
  • Mohammad Izadi
    • 1
    • 3
    • 4
  1. 1.LIACS - Leiden UniversityThe Netherlands
  2. 2.Centrum voor Wiskunde en Informatica (CWI)The Netherlands
  3. 3.Dept. of Computer EngineeringSharif University of TechnologyTehranIran
  4. 4.Research Institute for Humanities and Cultural StudiesTehranIran

Personalised recommendations