Abstract
Constraint automata (CA) are a coordination model based on finite automata on infinite words. Although originally introduced for compositional modeling of coordinators, an interesting new application of CA is actually implementing coordinators (i.e., compiling CA to executable code). Such an approach guarantees correctness-by-construction and can even yield code that outperforms hand-crafted code. The extent to which these two potential advantages arise depends on the smartness of CA-compilers and the existence of proofs of their correctness.
We present and prove the correctness of a critical optimization for CA-compilers: a sound and complete translation from declarative constraints in transition labels to imperative commands in a sequential language. This optimization avoids expensive calls to a constraint solver at run-time, otherwise performed each time a transition fires, and thereby significantly improves the performance of generated coordination code.
Chapter PDF
Similar content being viewed by others
Keywords
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.
References
Jongmans, S.-S.T.Q., Halle, S., Arbab, F.: Automata-Based Optimization of Interaction Protocols for Scalable Multicore Platforms. In: Kühn, E., Pugliese, R. (eds.) COORDINATION 2014. LNCS, vol. 8459, pp. 65–82. Springer, Heidelberg (2014)
Jongmans, S.S., Halle, S., Arbab, F.: Reo: A Dataflow Inspired Language for Multicore. In: DFM, 42–50. IEEE (2013)
Baier, C., Sirjani, M., Arbab, F., Rutten, J.: Modeling component connectors in Reo by constraint automata. SCP 61, 75–113 (2006)
Wegner, P.: Coordination as Constrained Interaction (Extended Abstract). In: Hankin, C., Ciancarini, P. (eds.) COORDINATION 1996. LNCS, vol. 1061, pp. 28–33. Springer, Heidelberg (1996)
Jongmans, S.-S.T.Q., Arbab, F.: Global consensus through local synchronization. In: Canal, C., Villari, M. (eds.) ESOCC 2013. CCIS, vol. 393, pp. 174–188. Springer, Heidelberg (2013)
Jongmans, S.S., Arbab, F.: Toward Sequentializing Overparallelized Protocol Code. In: ICE. EPTCS, vol. 166. CoRR, 38–44 (2014)
Jongmans, S.-S., Santini, F., Arbab, F.: Partially-Distributed Coordination with Reo. In: PDP 2014, pp. 697–706. IEEE (2014)
Arbab, F.: Reo: a channel-based coordination model for component composition. MSCS 14(3), 329–366 (2004)
Arbab, F.: Puff, The Magic Protocol. In: Agha, G., Danvy, O., Meseguer, J. (eds.) Formal Modeling: Actors, Open Systems, Biological Systems. LNCS, vol. 7000, pp. 169–206. Springer, Heidelberg (2011)
Arbab, F., Kokash, N., Meng, S.: Towards Using Reo for Compliance-Aware Business Process Modeling. In: Margaria, T., Steffen, B. (eds.) ISoLA 2008. CCIS, vol. 17, pp. 108–123. Springer, Heidelberg (2008)
Changizi, B., Kokash, N., Arbab, F.: A Unified Toolset for Business Process Model Formalization. In: Buhnova, B., Happe, J. (eds.) FESCA 2010, pp. 147–156 (2010)
Meng, S., Arbab, F., Baier, C.: Synthesis of Reo circuits from scenario-based interaction specifications. SCP 76(8), 651–680 (2011)
Bliudze, S., Sifakis, J.: Causal semantics for the algebra of connectors. FMSD 36(2), 167–194 (2010)
Jongmans, S.S., Arbab, F.: Take Command of Your Constraints (Technical Report). Technical Report FM-1501, CWI (2015)
Russell, S., Norvig, P.: Artificial Intelligence, 2nd edn. Prentice-Hall (2003)
Apt, K., de Boer, F., Olderog, E.-R.: Verification of Sequential and Concurrent Programs, 3rd edn. Springer (2009)
Hoare, T.: An Axiomatic Basis for Computer Programming. CACM 12(10), 576–580 (1969)
Kahn, A.: Topological Sorting in Large Networks. CACM 5(11), 558–562 (1962)
Knuth, D.: Fundamental Algorithms, 3rd edn. The Art of Computer Programming, vol. 1. Addison-Wesley (1997)
Korte, B., Vygen, J.: Combinatorial Optimization: Theory and Algorithms, 4th edn. Algorithms and Combinatorics, vol. 21. Springer (2008)
Gallo, G., Longo, G., Pallottino, S., Nguyen, S.: Directed hypergraphs and applications. DAM 42, 177–201 (1993)
Woeginger, G.: The complexity of finding arborescences in hypergraphs. IPL 44, 161–164 (1992)
Ausiello, G., Franciosa, P.G., Frigioni, D.: Directed Hypergraphs: Problems, Algorithmic Results, and a Novel Decremental Approach. In: Restivo, A., Ronchi Della Rocca, S., Roversi, L. (eds.) ICTCS 2001. LNCS, vol. 2202, pp. 312–328. Springer, Heidelberg (2001)
Apt, K.: Principles of Constraint Programming. Cambridge University Press (2009)
Bessière, C., Meseguer, P., Freuder, E., Larrosa, J.: On forward checking for non-binary constraint satisfaction. Artificial Intelligence 141, 205–224 (2002)
McGregor, J.: Relational consistency algorithms and their application in finding subgraph and graph isomorphism. Information Science 19, 229–250 (1979)
Clarke, D., Proença, J., Lazovik, A., Arbab, F.: Channel-based coordination via constraint satisfaction. SCP 76(8), 681–710 (2011)
Proença, J., Clarke, D.: Data Abstraction in Coordination Constraints. In: Canal, C., Villari, M. (eds.) ESOCC 2013. CCIS, vol. 393, pp. 159–173. Springer, Heidelberg (2013)
Proença, J., Clarke, D.: Interactive Interaction Constraints. In: De Nicola, R., Julien, C. (eds.) COORDINATION 2013. LNCS, vol. 7890, pp. 211–225. Springer, Heidelberg (2013)
Author information
Authors and Affiliations
Corresponding author
Editor information
Editors and Affiliations
Rights and permissions
Copyright information
© 2015 IFIP International Federation for Information Processing
About this paper
Cite this paper
Jongmans, SS.T.Q., Arbab, F. (2015). Take Command of Your Constraints!. In: Holvoet, T., Viroli, M. (eds) Coordination Models and Languages. COORDINATION 2015. Lecture Notes in Computer Science(), vol 9037. Springer, Cham. https://doi.org/10.1007/978-3-319-19282-6_8
Download citation
DOI: https://doi.org/10.1007/978-3-319-19282-6_8
Publisher Name: Springer, Cham
Print ISBN: 978-3-319-19281-9
Online ISBN: 978-3-319-19282-6
eBook Packages: Computer ScienceComputer Science (R0)