Skip to main content

Verifying Temporal Properties of Stigmergic Collective Systems Using CADP

Part of the Lecture Notes in Computer Science book series (LNTCS,volume 13036)

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

Chapter
USD   29.95
Price excludes VAT (USA)
  • DOI: 10.1007/978-3-030-89159-6_29
  • Chapter length: 17 pages
  • Instant PDF download
  • Readable on all devices
  • Own it forever
  • Exclusive offer for individuals only
  • Tax calculation will be finalised during checkout
eBook
USD   64.99
Price excludes VAT (USA)
  • ISBN: 978-3-030-89159-6
  • Instant PDF download
  • Readable on all devices
  • Own it forever
  • Exclusive offer for individuals only
  • Tax calculation will be finalised during checkout
Softcover Book
USD   84.99
Price excludes VAT (USA)
Fig. 1.
Fig. 2.
Fig. 3.

Notes

  1. 1.

    http://cadp.inria.fr.

  2. 2.

    Artifacts related to the experiments presented in this work are available as a repository (https://gitlab.inria.fr/ldistefa/labs2lnt-artifacts).

  3. 3.

    http://cadp.inria.fr/man/mcl.html.

  4. 4.

    http://cadp.inria.fr/man/evaluator.html.

  5. 5.

    https://github.com/labs-lang/sliver.

  6. 6.

    https://www.grid5000.fr.

  7. 7.

    We use divbranching as shorthand for divergence-preserving branching.

  8. 8.

    E.g., the Distributor tool: see https://cadp.inria.fr/man/distributor.html.

References

  1. 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

    CrossRef  MATH  Google Scholar 

  2. 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

    CrossRef  Google Scholar 

  3. 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)

    Google Scholar 

  4. 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

    CrossRef  Google Scholar 

  5. Crowston, K., Rezgui, A.: Effects of stigmergic and explicit coordination on Wikipedia article quality. In: HICSS. ScholarSpace (2020)

    Google Scholar 

  6. 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

    CrossRef  Google Scholar 

  7. 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

    CrossRef  Google Scholar 

  8. 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

    CrossRef  Google Scholar 

  9. 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

    CrossRef  Google Scholar 

  10. Di Stefano, L.: Modelling and verification of multi-agent systems via sequential emulation. Ph.D. thesis, Gran Sasso Science Institute (2020)

    Google Scholar 

  11. 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

    CrossRef  Google Scholar 

  12. 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

  13. 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

    CrossRef  Google Scholar 

  14. Garavel, H., Lang, F., Mateescu, R.: Compositional verification of asynchronous concurrent systems using CADP. Acta Informatica 52(4), 337–392 (2015)

    CrossRef  MathSciNet  MATH  Google Scholar 

  15. 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

    CrossRef  MATH  Google Scholar 

  16. 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

    CrossRef  Google Scholar 

  17. 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

    CrossRef  Google Scholar 

  18. 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

    CrossRef  MATH  Google Scholar 

  19. 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

  20. 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

    CrossRef  Google Scholar 

  21. 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

    CrossRef  Google Scholar 

  22. 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

    CrossRef  Google Scholar 

  23. Hoare, C.A.R.: Communicating Sequential Processes. Prentice-Hall, Hoboken (1985)

    MATH  Google Scholar 

  24. 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)

    Google Scholar 

  25. Kouvaros, P., Lomuscio, A., Pirovano, E., Punchihewa, H.: Formal verification of open multi-agent systems. In: AAMAS. IFAAMAS (2019)

    Google Scholar 

  26. Kozen, D.: Results on the propositional mu-calculus. Theor. Comput. Sci. 27 (1983)

    Google Scholar 

  27. 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

    CrossRef  Google Scholar 

  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

    CrossRef  Google Scholar 

  29. Libkin, L.: Logics with counting and local properties. ACM Trans. Comput. Logic 1(1), 33–59 (2000). https://doi.org/10.1145/343369.343376

    CrossRef  MathSciNet  MATH  Google Scholar 

  30. 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

    CrossRef  Google Scholar 

  31. 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

    CrossRef  Google Scholar 

  32. 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

    CrossRef  Google Scholar 

  33. Panait, L.A., Luke, S.: Ant foraging revisited. In: ALIFE. MIT Press (2004). https://doi.org/10.7551/mitpress/1429.003.0096

  34. 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

    CrossRef  MATH  Google Scholar 

  35. 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

  36. Pnueli, A.: The temporal logic of programs. In: FOCS. IEEE (1977). https://doi.org/10.1109/SFCS.1977.32

  37. Qadeer, S., Wu, D.: KISS: Keep it simple and sequential. In: PLDI. ACM (2004). https://doi.org/10.1145/996841.996845

  38. 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

    CrossRef  MathSciNet  MATH  Google Scholar 

  39. Reynolds, C.W.: Flocks, herds and schools: a distributed behavioral model. In: SIGGRAPH. ACM (1987). https://doi.org/10.1145/37402.37406

  40. 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

    MathSciNet  MATH  Google Scholar 

  41. 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

    CrossRef  MATH  Google Scholar 

Download references

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

Authors

Corresponding author

Correspondence to Luca Di Stefano .

Editor information

Editors and Affiliations

Rights and permissions

Reprints and Permissions

Copyright information

© 2021 Springer Nature Switzerland AG

About this paper

Verify currency and authenticity via CrossMark

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)