Abstract
We introduce an automated workflow to verify a variety of temporal properties on systems of agents that interact through virtual stigmergies. By mechanically reducing the property and the system under verification to an MCL query and a sequential LNT program (both MCL and LNT being languages available in the CADP formal verification toolbox), we may reuse efficient model-checking procedures that can give us a verdict on whether the property is satisfied by the system. Among other things, this procedure allows us to verify that a system satisfies a given predicate infinitely often during its execution, which is an improvement over previous verification approaches. We demonstrate the capabilities of this workflow by verifying a selection of example systems. Additionally, we present preliminary results showing that this workflow may also generate parallel LNT programs and exploit compositional verification techniques, which is likely to improve the analysis performance.
Keywords
- Collective adaptive systems
- Virtual stigmergy
- Temporal logics
- Model checking
This is a preview of subscription content, access via your institution.
Buying options



Notes
- 1.
- 2.
Artifacts related to the experiments presented in this work are available as a repository (https://gitlab.inria.fr/ldistefa/labs2lnt-artifacts).
- 3.
- 4.
- 5.
- 6.
- 7.
We use divbranching as shorthand for divergence-preserving branching.
- 8.
E.g., the Distributor tool: see https://cadp.inria.fr/man/distributor.html.
References
Bensalem, S., Bozga, M., Sifakis, J., Nguyen, T.-H.: Compositional verification for component-based systems and application. In: Cha, S.S., Choi, J.-Y., Kim, M., Lee, I., Viswanathan, M. (eds.) ATVA 2008. LNCS, vol. 5311, pp. 64–79. Springer, Heidelberg (2008). https://doi.org/10.1007/978-3-540-88387-6_7
Bordini, R.H., Fisher, M., Visser, W., Wooldridge, M.: Verifying multi-agent programs by model checking. Auton. Agents Multi-Agent Syst. 12(2), 239–256 (2006). https://doi.org/10.1007/s10458-006-5955-7
Brooks, R.A., Flynn, A.M.: Fast, cheap and out of control: a robot invasion of the solar system. J. Br. Interplanet. Soc. 42, 478–485 (1989)
Clarke, E.M., Emerson, E.A.: Design and synthesis of synchronization skeletons using branching time temporal logic. In: Kozen, D. (ed.) Logic of Programs 1981. LNCS, vol. 131, pp. 52–71. Springer, Heidelberg (1982). https://doi.org/10.1007/BFb0025774
Crowston, K., Rezgui, A.: Effects of stigmergic and explicit coordination on Wikipedia article quality. In: HICSS. ScholarSpace (2020)
De Nicola, R., Di Stefano, L., Inverso, O.: Multi-agent systems with virtual stigmergy. Sci. Comput. Program. 187, 102345 (2020). https://doi.org/10.1016/j.scico.2019.102345
De Nicola, R., Duong, T., Inverso, O.: Verifying AbC specifications via emulation. In: Margaria, T., Steffen, B. (eds.) ISoLA 2020. LNCS, vol. 12477, pp. 261–279. Springer, Cham (2020). https://doi.org/10.1007/978-3-030-61470-6_16
De Nicola, R., Duong, T., Inverso, O., Mazzanti, F.: A systematic approach to programming and verifying attribute-based communication systems. In: ter Beek, M.H., Fantechi, A., Semini, L. (eds.) From Software Engineering to Formal Methods and Tools, and Back. LNCS, vol. 11865, pp. 377–396. Springer, Cham (2019). https://doi.org/10.1007/978-3-030-30985-5_22
De Nicola, R., Vaandrager, F.: Action versus state based logics for transition systems. In: Guessarian, I. (ed.) LITP 1990. LNCS, vol. 469, pp. 407–419. Springer, Heidelberg (1990). https://doi.org/10.1007/3-540-53479-2_17
Di Stefano, L.: Modelling and verification of multi-agent systems via sequential emulation. Ph.D. thesis, Gran Sasso Science Institute (2020)
Di Stefano, L., Lang, F., Serwe, W.: Combining SLiVER with CADP to analyze multi-agent systems. In: Bliudze, S., Bocchi, L. (eds.) COORDINATION 2020. LNCS, vol. 12134, pp. 370–385. Springer, Cham (2020). https://doi.org/10.1007/978-3-030-50029-0_23
Dwyer, M.B., Avrunin, G.S., Corbett, J.C.: Patterns in property specifications for finite-state verification. In: ICSE. ACM (1999). https://doi.org/10.1145/302405.302672
Foster, H., Uchitel, S., Magee, J., Kramer, J.: WS-engineer: a model-based approach to engineering web service compositions and choreography. In: Baresi, L., Nitto, E.D. (eds.) Test and Analysis of Web Services. Springer, Heidelberg (2007). https://doi.org/10.1007/978-3-540-72912-9_4
Garavel, H., Lang, F., Mateescu, R.: Compositional verification of asynchronous concurrent systems using CADP. Acta Informatica 52(4), 337–392 (2015)
Garavel, H., Lang, F., Mateescu, R., Serwe, W.: CADP 2011: a toolbox for the construction and analysis of distributed processes. Softw. Tools Technol. Transf. 15(2), 89–107 (2013). https://doi.org/10.1007/s10009-012-0244-z
Garavel, H., Lang, F., Serwe, W.: From LOTOS to LNT. In: Katoen, J.-P., Langerak, R., Rensink, A. (eds.) ModelEd, TestEd, TrustEd. LNCS, vol. 10500, pp. 3–26. Springer, Cham (2017). https://doi.org/10.1007/978-3-319-68270-9_1
Garcia-Molina, H.: Elections in a distributed computing system. IEEE Trans. Comput. 31(1), 48–59 (1982). https://doi.org/10.1109/TC.1982.1675885
Geller, A., Moss, S.: Growing qawm: an evidence-driven declarative model of Afghan power structures. Adv. Complex Syst. 11(2), 321–335 (2008). https://doi.org/10.1142/S0219525908001659
Grassé, P.P.: La reconstruction du nid et les coordinations interindividuelles chez Bellicositermes natalensis et Cubitermes sp. la théorie de la stigmergie: Essai d’interprétation du comportement des termites constructeurs. Insectes Sociaux 6(1) (1959). https://doi.org/10.1007/BF02223791
Gray, J.N.: Notes on data base operating systems. In: Bayer, R., Graham, R.M., Seegmüller, G. (eds.) Operating Systems. LNCS, vol. 60, pp. 393–481. Springer, Heidelberg (1978). https://doi.org/10.1007/3-540-08755-9_9
Hennicker, R., Klarl, A., Wirsing, M.: Model-checking Helena ensembles with spin. In: Martí-Oliet, N., Ölveczky, P.C., Talcott, C. (eds.) Logic, Rewriting, and Concurrency. LNCS, vol. 9200, pp. 331–360. Springer, Cham (2015). https://doi.org/10.1007/978-3-319-23165-5_16
Heylighen, F.: Stigmergy as a universal coordination mechanism I: definition and components. Cogn. Syst. Res. 38, 4–13 (2016). https://doi.org/10.1016/j.cogsys.2015.12.002
Hoare, C.A.R.: Communicating Sequential Processes. Prentice-Hall, Hoboken (1985)
ISO/IEC: Information processing systems - Open systems interconnection - LOTOS - A formal description technique based on the temporal ordering of observational behaviour. International Standard 8807, ISO (1989)
Kouvaros, P., Lomuscio, A., Pirovano, E., Punchihewa, H.: Formal verification of open multi-agent systems. In: AAMAS. IFAAMAS (2019)
Kozen, D.: Results on the propositional mu-calculus. Theor. Comput. Sci. 27 (1983)
Kuylen, E., Liesenborgs, J., Broeckhove, J., Hens, N.: Using individual-based models to look beyond the horizon: the changing effects of household-based clustering of susceptibility to measles in the next 20 years. In: Krzhizhanovskaya, V.V., Závodszky, G., Lees, M.H., Dongarra, J.J., Sloot, P.M.A., Brissos, S., Teixeira, J. (eds.) ICCS 2020. LNCS, vol. 12137, pp. 385–398. Springer, Cham (2020). https://doi.org/10.1007/978-3-030-50371-0_28
Lang, F., Mateescu, R., Mazzanti, F.: Sharp congruences adequate with temporal logics combining weak and strong modalities. In: TACAS 2020. LNCS, vol. 12079, pp. 57–76. Springer, Cham (2020). https://doi.org/10.1007/978-3-030-45237-7_4
Libkin, L.: Logics with counting and local properties. ACM Trans. Comput. Logic 1(1), 33–59 (2000). https://doi.org/10.1145/343369.343376
Lomuscio, A., Qu, H., Raimondi, F.: MCMAS: an open-source model checker for the verification of multi-agent systems. Int. J. Softw. Tools Technol. Transfer 19(1), 9–30 (2015). https://doi.org/10.1007/s10009-015-0378-x
Mateescu, R., Thivolle, D.: A model checking language for concurrent value-passing systems. In: Cuellar, J., Maibaum, T., Sere, K. (eds.) FM 2008. LNCS, vol. 5014, pp. 148–164. Springer, Heidelberg (2008). https://doi.org/10.1007/978-3-540-68237-0_12
Olner, D., Evans, A.J., Heppenstall, A.J.: An agent model of urban economics: digging into emergence. Comput. Environ. Urban Syst. 54, 414–427 (2015). https://doi.org/10.1016/j.compenvurbsys.2014.12.003
Panait, L.A., Luke, S.: Ant foraging revisited. In: ALIFE. MIT Press (2004). https://doi.org/10.7551/mitpress/1429.003.0096
Parunak, H.V.D.: “Go to the ant’’: engineering principles from natural multi-agent systems. Ann. Oper. Res. 75, 69–101 (1997). https://doi.org/10.1023/A:1018980001403
Pinciroli, C., Beltrame, G.: Buzz: an extensible programming language for heterogeneous swarm robotics. In: IROS. IEEE (2016). https://doi.org/10.1109/IROS.2016.7759558
Pnueli, A.: The temporal logic of programs. In: FOCS. IEEE (1977). https://doi.org/10.1109/SFCS.1977.32
Qadeer, S., Wu, D.: KISS: Keep it simple and sequential. In: PLDI. ACM (2004). https://doi.org/10.1145/996841.996845
Queille, J.P., Sifakis, J.: Fairness and related properties in transition systems - a temporal logic to deal with fairness. Acta Informatica 19, 195–220 (1983). https://doi.org/10.1007/BF00265555
Reynolds, C.W.: Flocks, herds and schools: a distributed behavioral model. In: SIGGRAPH. ACM (1987). https://doi.org/10.1145/37402.37406
Vekris, D., Lang, F., Dima, C., Mateescu, R.: Verification of \({{EB}^3}\) specifications using CADP. Formal Aspects Comput. 28(1), 145–178 (2016). https://doi.org/10.1007/s00165-016-0362-6
Wirsing, M., Banâtre, J.P., Hölzl, M., Rauschmayer, A. (eds.): Software-Intensive Systems and New Computing Paradigms - Challenges and Visions. LNCS, vol. 5380. Springer, Heidelberg (2008). https://doi.org/10.1007/978-3-540-89437-7
Acknowledgments
The authors wish to thank Radu Mateescu for his precious insights into MCL. Experiments presented in this paper were carried out using the Grid’5000 testbed, supported by a scientific interest group hosted by Inria and including CNRS, RENATER and several Universities as well as other organizations.
Author information
Authors and Affiliations
Corresponding author
Editor information
Editors and Affiliations
Rights and permissions
Copyright information
© 2021 Springer Nature Switzerland AG
About this paper
Cite this paper
Di Stefano, L., Lang, F. (2021). Verifying Temporal Properties of Stigmergic Collective Systems Using CADP. In: Margaria, T., Steffen, B. (eds) Leveraging Applications of Formal Methods, Verification and Validation. ISoLA 2021. Lecture Notes in Computer Science(), vol 13036. Springer, Cham. https://doi.org/10.1007/978-3-030-89159-6_29
Download citation
DOI: https://doi.org/10.1007/978-3-030-89159-6_29
Published:
Publisher Name: Springer, Cham
Print ISBN: 978-3-030-89158-9
Online ISBN: 978-3-030-89159-6
eBook Packages: Computer ScienceComputer Science (R0)