Abstract
Rebeca is an actor-based language which has been successfully applied to model concurrent and distributed systems. The semantics of Rebeca in labeled transition system is not compositional. In this paper, we investigate the possibility of mapping Rebeca models into a coordination language, Reo, and present a natural mapping that provides a compositional semantics of Rebeca. To this end, we consider reactive objects in Rebeca as components in Reo, and specify their behavior using constraint automata as black-box components within Reo circuits. Modeling coordination and communication among reactive objects as Reo circuits, and the behavior of reactive objects as constraint automata, provides a compositional semantics for Rebeca. Although the result is a compositional model, its visual representation in Reo shows very well that it still reflects the tight coupling inherent in the communication mechanism of object-based paradigms, whereby the real control and coordination is built into the code of the reactive objects themselves. We describe an alternative design that overcomes this deficiency. This illustrates the differences between objects and components, and the challenges in moving from object-based to component-based designs.
Preview
Unable to display preview. Download preview PDF.
Similar content being viewed by others
References
de Boer, F.S., Bonsangue, M.M., Graf, S., de Roever, W.-P. (eds.): FMCO 2002. LNCS, vol. 2852. Springer, Heidelberg (2003)
de Roever, W.-P., Langmaack, H., Pnueli, A. (eds.): COMPOS 1997. LNCS, vol. 1536. Springer, Heidelberg (1998)
Lamport, L.: Composition: A way to make proofs harder. In: de Roever, W.-P., Langmaack, H., Pnueli, A. (eds.) COMPOS 1997. LNCS, vol. 1536, pp. 402–407. Springer, Heidelberg (1998)
Lynch, N.A., Tuttle, M.R.: Hierarchical correctness proofs for distributed algorithms. Technical Report MIT/LCS/TR-387, MIT (1987)
Abadi, M., Lamport, L.: Composing specifications. In: Jagadish, H.V., Mumick, I.S. (eds.) Proceedings of the 1996 ACM SIGMOD International Conference on Management of Data, Montreal, Canada, pp. 365–376. ACM Press, USA (1996)
Talcott, C.: Composable semantic models for actor theories. Higher-Order and Symbolic Computation 11, 281–343 (1998)
Sirjani, M., Movaghar, A., Shali, A., de Boer, F.: Modeling and verification of reactive systems using Rebeca. Fundamenta Informatica 63, 385–410 (2004)
Sirjani, M., Movaghar, A.: An actor-based model for formal modelling of reactive systems: Rebeca. Technical Report CS-TR-80-01, Tehran, Iran (2001)
Sirjani, M., Movaghar, A., Mousavi, M.: Compositional verification of an object-based reactive system. In: Proceedings of AVoCS 2001, Oxford, UK, pp. 114–118 (2001)
Hewitt, C.: Description and theoretical analysis (using schemata) of PLANNER: A language for proving theorems and manipulating models in a robot. MIT Artificial Intelligence Technical Report 258, Department of Computer Science, MIT (1972)
Agha, G.: Actors: A Model of Concurrent Computation in Distributed Systems. MIT Press, Cambridge (1990)
Sirjani, M., Movaghar, A., Shali, A., de Boer, F.: Model checking, automated abstraction, and compositional verification of Rebeca models. Journal of Universal Computer Science 11, 1054–1082 (2005)
Sirjani, M., Shali, A., Jaghoori, M., Iravanchi, H., Movaghar, A.: A front-end tool for automated abstraction and modular verification of actor-based models. In: Proceedings of ACSD 2004, pp. 145–148. IEEE Computer Society, Los Alamitos (2004)
Jaghoori, M.M., Sirjani, M., Mousavi, M.R., Movaghar, A.: Efficient symmetry reduction for an actor-based model. In: Chakraborty, G. (ed.) ICDCIT 2005. LNCS, vol. 3816, pp. 494–507. Springer, Heidelberg (2005)
Jaghoori, M.M., Movaghar, A., Sirjani, M.: Modere: The model-checking engine of Rebeca. In: ACM Symposium on Applied Computing - Software Verificatin Track (to appear, 2006)
Arbab, F.: Reo: A channel-based coordination model for component composition. Mathematical Structures in Computer Science 14, 329–366 (2004)
Arbab, F., Rutten, J.J.: A coinductive calculus of component connectors. Technical Report SEN-R0216, CWI (Centre for Mathematics and Computer Science), Amsterdam, The Netherlands (2002)
Arbab, F.: Abstract behavior types: A foundation model for components and their composition. In: de Boer, F.S., Bonsangue, M.M., Graf, S., de Roever, W.-P. (eds.) FMCO 2002. LNCS, vol. 2852, pp. 33–70. Springer, Heidelberg (2003)
Arbab, F., Baier, C., Rutten, J.J., Sirjani, M.: Modeling component connectors in Reo by constraint automata. In: Proceedings of FOCLASA 2003. ENTCS, vol. 97, pp. 25–46. Elsevier, Amsterdam (2004)
Sirjani, M., de Boer, F.S., Movaghar, A., Shali, A.: Extended Rebeca: A component-based actor language with synchronous message passing. In: Proceedings of ACSD 2005, pp. 212–221. IEEE Computer Society, Los Alamitos (2005)
Sirjani, M., de Boer, F.S., Movaghar, A.: Modular verification of a component-based actor language. Journal of Universal Computer Science 11, 1695–1717 (2005)
Baier, C., Sirjani, M., Arbab, F., Rutten, J.J.: Modeling component connectors in Reo by constraint automata. Science of Computer Programming (accepted, 2005) (to appear)
Farrokhian, M.: Automating the mapping of Rebeca to constraint automata. Master Thesis, Sharif University of Technology (2006)
Rebeca home page, available through: http://khorshid.ut.ac.ir/~rebeca
Author information
Authors and Affiliations
Editor information
Editors and Affiliations
Rights and permissions
Copyright information
© 2006 Springer-Verlag Berlin Heidelberg
About this paper
Cite this paper
Sirjani, M., Jaghoori, M.M., Baier, C., Arbab, F. (2006). Compositional Semantics of an Actor-Based Language Using Constraint Automata. In: Ciancarini, P., Wiklicky, H. (eds) Coordination Models and Languages. COORDINATION 2006. Lecture Notes in Computer Science, vol 4038. Springer, Berlin, Heidelberg. https://doi.org/10.1007/11767954_18
Download citation
DOI: https://doi.org/10.1007/11767954_18
Publisher Name: Springer, Berlin, Heidelberg
Print ISBN: 978-3-540-34694-4
Online ISBN: 978-3-540-34695-1
eBook Packages: Computer ScienceComputer Science (R0)