Skip to main content

Runtime Verification for Decentralised and Distributed Systems

  • Chapter
  • First Online:
Book cover Lectures on Runtime Verification

Part of the book series: Lecture Notes in Computer Science ((LNPSE,volume 10457))

Abstract

This chapter surveys runtime verification research related to distributed systems. We report solutions that study how to monitor system with some distributed characteristic, solutions that use a distributed platform for performing a monitoring task, and foundational works that present semantics for decomposing monitors or expressing specifications amenable for distributed systems.

We will identify some characteristics that distinguish distributed monitoring from centralised monitoring, and characteristics that allow to classify distributed runtime verification works based on features of the executing platforms, the specification language and the system description. Then, we will use these characteristics to describe and compare the distributed runtime verification solutions proposed in the research literature.

This is a preview of subscription content, log in via an institution to check access.

Access this chapter

Chapter
USD 29.95
Price excludes VAT (USA)
  • Available as PDF
  • Read on any device
  • Instant download
  • Own it forever
eBook
USD 54.99
Price excludes VAT (USA)
  • Available as EPUB and PDF
  • Read on any device
  • Instant download
  • Own it forever
Softcover Book
USD 69.99
Price excludes VAT (USA)
  • Compact, lightweight edition
  • Dispatched in 3 to 5 business days
  • Free shipping worldwide - see info

Tax calculation will be finalised at checkout

Purchases are for personal use only

Institutional subscriptions

Notes

  1. 1.

    The distributed RV considered in Bonakdarpour et al. [20] is a general monitoring solution that runs on an infrastructure that is unreliable and unable to solve consensus.

References

  1. Alagar, S., Venkatesan, S.: Techniques to tackle state explosion in global predicate detection. IEEE Trans. Softw. Eng. (TSE) 27(8), 704–714 (2001)

    Article  Google Scholar 

  2. Ancona, D., Bono, V., Bravetti, M., Campos, J., Castagna, G., Deniélou, P., Gay, S.J., Gesbert, N., Giachino, E., Hu, R., Johnsen, E.B., Martins, F., Mascardi, V., Montesi, F., Neykova, R., Ng, N., Padovani, L., Vasconcelos, V.T., Yoshida, N.: Behavioral types in programming languages. Found. Trends Program. Lang. 3(2–3), 95–230 (2016)

    Article  Google Scholar 

  3. Attard, D.P., Francalanza, A.: A monitoring tool for a branching-time logic. In: Falcone, Y., Sánchez, C. (eds.) RV 2016. LNCS, vol. 10012, pp. 473–481. Springer, Cham (2016). https://doi.org/10.1007/978-3-319-46982-9_31

    Chapter  Google Scholar 

  4. Attiya, H., Welch, J.L.: Distributed Computing: Fundamentals, Simulations and Advanced Topics. Wiley, Hoboken (2004)

    Book  MATH  Google Scholar 

  5. Baader, F., Lippmann, M.: Runtime verification using the temporal description logic ALC-LTL revisited. J. Appl. Logic 12(4), 584–613 (2014)

    Article  MathSciNet  MATH  Google Scholar 

  6. Bartocci, E.: Sampling-based decentralized monitoring for networked embedded systems. In: Bortolussi, L., Bujorianu, M.L., Pola, G. (eds.) Proceedings of the 3rd International Workshop on Hybrid Autonomous Systems (HAS 2013). EPTCS, vol. 124, pp. 85–99 (2013)

    Google Scholar 

  7. Basin, D., Klaedtke, F., Marinovic, S., Zălinescu, E.: Monitoring compliance policies over incomplete and disagreeing logs. In: Qadeer, S., Tasiran, S. (eds.) RV 2012. LNCS, vol. 7687, pp. 151–167. Springer, Heidelberg (2013). https://doi.org/10.1007/978-3-642-35632-2_17

    Chapter  Google Scholar 

  8. Basin, D.A., Klaedtke, F., Zalinescu, E.: Failure-aware runtime verification of distributed systems. In: Proceedings of FSTTCS 2015, pp. 590–603 (2015)

    Google Scholar 

  9. Basu, A., Bozga, M., Sifakis, J.: Modeling heterogeneous real-time components in BIP. In: Proceedings of the 4th IEEE International Conference on Software Engineering and Formal Methods (SEFM 2006), pp. 3–12. IEEE Computer Society (2006)

    Google Scholar 

  10. Bauer, A.K.: Monitorability of \(\omega \)-regular languages. arXiv:1006.3638v1 (2010)

  11. Bauer, A., Falcone, Y.: Decentralised LTL monitoring. In: Giannakopoulou, D., Méry, D. (eds.) FM 2012. LNCS, vol. 7436, pp. 85–100. Springer, Heidelberg (2012). https://doi.org/10.1007/978-3-642-32759-9_10

    Chapter  Google Scholar 

  12. Bauer, A.K., Falcone, Y.: Decentralised LTL monitoring. Formal Methods Syst. Des. 48(1–2), 49–93 (2016)

    MATH  Google Scholar 

  13. Bauer, A.K., Leucker, M., Schallhart, C.: Runtime verification for LTL and TLTL. ACM Trans. Softw. Eng. Methodol. 20, 14:1–14:64 (2011)

    Article  Google Scholar 

  14. Berkovich, S., Bonakdarpour, B., Fischmeister, S.: Runtime verification with minimal intrusion through parallelism. Formal Methods Syst. Des. 46(3), 317–348 (2015)

    Article  MATH  Google Scholar 

  15. Bocchi, L., Chen, T., Demangeon, R., Honda, K., Yoshida, N.: Monitoring networks through multiparty session types. In: Proceedings of FMOODS/FORTE 2013, pp. 50–65 (2013)

    Google Scholar 

  16. Bocchi, L., Chen, T., Demangeon, R., Honda, K., Yoshida, N.: Monitoring networks through multiparty session types. Theor. Comput. Sci. 669, 33–58 (2017)

    Article  MathSciNet  MATH  Google Scholar 

  17. Bonakdarpour, B., Bozga, M., Jaber, M., Quilbeuf, J., Sifakis, J.: Automated conflict-free distributed implementation of component-based models. In: Proceedings of the IEEE 5th International Symposium on Industrial Embedded Systems (SIES 2010), pp. 108–117. IEEE (2010)

    Google Scholar 

  18. Bonakdarpour, B., Bozga, M., Jaber, M., Quilbeuf, J., Sifakis, J.: From high-level component-based models to distributed implementations. In: Proceedings of EMSOFT 2010, pp. 209–218. ACM (2010)

    Google Scholar 

  19. Bonakdarpour, B., Fraigniaud, P., Rajsbaum, S., Rosenblueth, D., Travers, C.: Decentralised asynchronous crash-resilient runtime verification. In: Proceedings of the 27th International Conference on Concurrency Theory (CONCUR 2016). LIPIcs, vol. 59, pp. 16:1–16:15. Schloss Dagstuhl - Leibniz-Zentrum fuer Informatik (2016)

    Google Scholar 

  20. Bonakdarpour, B., Fraigniaud, P., Rajsbaum, S., Travers, C.: Challenges in fault-tolerant distributed runtime verification. In: Margaria, T., Steffen, B. (eds.) ISoLA 2016, Part II. LNCS, vol. 9953, pp. 363–370. Springer, Cham (2016). https://doi.org/10.1007/978-3-319-47169-3_27

    Chapter  Google Scholar 

  21. Carbone, M. (ed.): Proceedings of the Third Workshop on Behavioural Types (BEAT 2014). EPTCS, vol. 162 (2014)

    Google Scholar 

  22. Cassar, I., Francalanza, A.: On synchronous and asynchronous monitor instrumentation for actor systems. In: Proceedings of FOCLASA 2014, vol. 175, pp. 54–68 (2014)

    Google Scholar 

  23. Cassar, I., Francalanza, A.: Runtime adaptation for actor systems. In: Bartocci, E., Majumdar, R. (eds.) RV 2015. LNCS, vol. 9333, pp. 38–54. Springer, Cham (2015). https://doi.org/10.1007/978-3-319-23820-3_3

    Chapter  Google Scholar 

  24. Cassar, I., Francalanza, A.: On implementing a monitor-oriented programming framework for actor systems. In: Ábrahám, E., Huisman, M. (eds.) IFM 2016. LNCS, vol. 9681, pp. 176–192. Springer, Cham (2016). https://doi.org/10.1007/978-3-319-33693-0_12

    Chapter  Google Scholar 

  25. Cassar, I., Francalanza, A., Said, S.: Improving runtime overheads for detector. In: Buhnova, B., Happe, L., Kofron, J. (eds.) Proceedings of the 12th International Workshop on Formal Engineering approaches to Software Components and Architectures (FESCA 2015). EPTCS, vol. 178, pp. 1–8 (2015)

    Google Scholar 

  26. Castellani, I., Dezani-Ciancaglini, M., Pérez, J.A.: Self-adaptation and secure information flow in multiparty structured communications: a unified perspective. In: [21], pp. 9–18

    Google Scholar 

  27. Castellani, I., Dezani-Ciancaglini, M., Pérez, J.A.: Self-adaptation and secure information flow in multiparty communications. Formal Asp. Comput. 28(4), 669–696 (2016)

    Article  MathSciNet  MATH  Google Scholar 

  28. Chandy, K.M., Lamport, L.: Distributed snapshots: determining global states of distributed systems. ACM Trans. Comput. Syst. 3(1), 63–75 (1985)

    Article  Google Scholar 

  29. Chase, C.M., Garg, V.K.: Detection of global predicates: techniques and their limitations. Distrib. Comput. 11(4), 191–201 (1998)

    Article  Google Scholar 

  30. Chauhan, H., Garg, V.K., Natarajan, A., Mittal, N.: A distributed abstraction algorithm for online predicate detection. In: IEEE 32nd Symposium on Reliable Distributed Systems (SRDS 2013), pp. 101–110. IEEE Computer Society (2013)

    Google Scholar 

  31. Chen, F., Roşu, G.: Parametric trace slicing and monitoring. In: Kowalewski, S., Philippou, A. (eds.) TACAS 2009. LNCS, vol. 5505, pp. 246–261. Springer, Heidelberg (2009). https://doi.org/10.1007/978-3-642-00768-2_23

    Chapter  Google Scholar 

  32. Colombo, C., Dimech, G., Francalanza, A.: Investigating instrumentation techniques for ESB runtime verification. In: Calinescu, R., Rumpe, B. (eds.) SEFM 2015. LNCS, vol. 9276, pp. 99–107. Springer, Cham (2015). https://doi.org/10.1007/978-3-319-22969-0_7

    Chapter  Google Scholar 

  33. Colombo, C., Falcone, Y.: Organising LTL monitors over distributed systems with a global clock. In: Bonakdarpour, B., Smolka, S.A. (eds.) RV 2014. LNCS, vol. 8734, pp. 140–155. Springer, Cham (2014). https://doi.org/10.1007/978-3-319-11164-3_12

    Google Scholar 

  34. Colombo, C., Falcone, Y.: Organising LTL monitors over distributed systems with a global clock. Formal Methods Syst. Des. 49(1–2), 109–158 (2016)

    Article  Google Scholar 

  35. Colombo, C., Francalanza, A., Gatt, R.: Elarva: a monitoring tool for Erlang. In: Khurshid, S., Sen, K. (eds.) RV 2011. LNCS, vol. 7186, pp. 370–374. Springer, Heidelberg (2012). https://doi.org/10.1007/978-3-642-29860-8_29

    Chapter  Google Scholar 

  36. Colombo, C., Francalanza, A., Mizzi, R., Pace, G.J.: polyLarva: runtime verification with configurable resource-aware monitoring boundaries. In: Eleftherakis, G., Hinchey, M., Holcombe, M. (eds.) SEFM 2012. LNCS, vol. 7504, pp. 218–232. Springer, Heidelberg (2012). https://doi.org/10.1007/978-3-642-33826-7_15

    Chapter  Google Scholar 

  37. Cooper, R., Marzullo, K.: Consistent detection of global predicates. In: Proceedings of the ACM/ONR Workshop on Parallel and Distributed Debugging, pp. 163–173 (1991)

    Google Scholar 

  38. Coulouris, G.: Distributed Systems: Concepts and Design. Addison-Wesley, Boston (2011)

    MATH  Google Scholar 

  39. Cristian, F., Fetzer, C.: The timed asynchronous distributed system model. IEEE Trans. Parallel Distrib. Syst. 10(6), 642–657 (1999)

    Article  Google Scholar 

  40. D’Angelo, B., Sankaranarayanan, S., Sánchez, C., Robinson, W., Finkbeiner, B., Sipma, H.B., Mehrotra, S., Manna, Z.: LOLA: runtime monitoring of synchronous systems. In: Proceedings of the 12th International Symposium of Temporal Representation and Reasoning (TIME 2005), pp. 166–174. IEEE CS Press (2005)

    Google Scholar 

  41. Demangeon, R., Honda, K., Hu, R., Neykova, R., Yoshida, N.: Practical interruptible conversations: distributed dynamic verification with multiparty session types and python. Formal Methods Syst. Des. 46(3), 197–225 (2015)

    Article  MATH  Google Scholar 

  42. Di Giusto, C., Pérez, J.A.: An event-based approach to runtime adaptation in communication-centric systems. In: Hildebrandt, T., Ravara, A., van der Werf, J.M., Weidlich, M. (eds.) WS-FM 2014-2015. LNCS, vol. 9421, pp. 67–85. Springer, Cham (2016). https://doi.org/10.1007/978-3-319-33612-1_5

    Chapter  Google Scholar 

  43. Di Giusto, C., Pérez, J.A.: Event-based run-time adaptation in communication-centric systems. Formal Aspects Comput. 28(4), 1–36 (2016)

    Article  MathSciNet  MATH  Google Scholar 

  44. Diekert, V., Muscholl, A., Walukiewicz, I.: A note on monitors and Büchi automata. In: Leucker, M., Rueda, C., Valencia, F.D. (eds.) ICTAC 2015. LNCS, vol. 9399, pp. 39–57. Springer, Cham (2015). https://doi.org/10.1007/978-3-319-25150-9_3

    Chapter  Google Scholar 

  45. El-Hokayem, A., Falcone, Y.: Monitoring decentralized specifications. In: Proceedings of the 26th ACM SIGSOFT International Symposium on Software Testing and Analysis (ISSTA 2017), pp. 125–135. ACM (2017)

    Google Scholar 

  46. Falcone, Y., Cornebize, T., Fernandez, J.-C.: Efficient and generalized decentralized monitoring of regular languages. In: Ábrahám, E., Palamidessi, C. (eds.) FORTE 2014. LNCS, vol. 8461, pp. 66–83. Springer, Heidelberg (2014). https://doi.org/10.1007/978-3-662-43613-4_5

    Chapter  Google Scholar 

  47. Falcone, Y., Fernandez, J.-C., Mounier, L.: Runtime verification of safety-progress properties. In: Bensalem, S., Peled, D.A. (eds.) RV 2009. LNCS, vol. 5779, pp. 40–59. Springer, Heidelberg (2009). https://doi.org/10.1007/978-3-642-04694-0_4

    Chapter  Google Scholar 

  48. Falcone, Y., Fernandez, J.C., Mounier, L.: What can you verify and enforce at runtime? STTT 14(3), 349–382 (2012)

    Article  Google Scholar 

  49. Falcone, Y., Jaber, M., Nguyen, T.H., Bozga, M., Bensalem, S.: Runtime verification of component-based systems in the BIP framework with formally-proved sound and complete instrumentation. Softw. Syst. Model. 14(1), 173–199 (2015)

    Article  Google Scholar 

  50. Felser, M.: Real-time Ethernet - industry prospective. Proc. IEEE 93(6), 1118–1129 (2005)

    Article  Google Scholar 

  51. Fidge, C.: Timestamps in message-passing systems that preserve the partial ordering. In: Proceedings of the 11th Australian Computer Science Conference, pp. 55–66 (1989)

    Google Scholar 

  52. Fidge, C.: Logical time in distributed computer systems. Computer 24(8), 28–33 (1991)

    Article  Google Scholar 

  53. Fraigniaud, P., Rajsbaum, S., Travers, C.: On the number of opinions needed for fault-tolerant run-time monitoring in distributed systems. In: RV (2014)

    Google Scholar 

  54. Francalanza, A.: A theory of monitors. In: Jacobs, B., Löding, C. (eds.) FoSSaCS 2016. LNCS, vol. 9634, pp. 145–161. Springer, Heidelberg (2016). https://doi.org/10.1007/978-3-662-49630-5_9

    Chapter  Google Scholar 

  55. Francalanza, A., Aceto, L., Ingolfsdottir, A.: Monitorability for the Hennessy-Milner logic with recursion. FMSD 51(1), 1–30 (2017)

    MATH  Google Scholar 

  56. Francalanza, A., Gauci, A., Pace, G.J.: Distributed system contract monitoring. In: Pimentel, E., Valero, V. (eds.) Proceedings of the Fifth Workshop on Formal Languages and Analysis of Contract-Oriented Software, FLACOS 2011, Málaga, Spain, 22–23 September 2011. EPTCS, vol. 68, pp. 23–37 (2011)

    Google Scholar 

  57. Francalanza, A., Gauci, A., Pace, G.J.: Distributed system contract monitoring. J. Logic Algebraic Program. 82(5–7), 186–215 (2013)

    Article  MathSciNet  MATH  Google Scholar 

  58. Francalanza, A., Hennessy, M.: A theory of system behaviour in the presence of node and link failure. Inf. Comput. 206(6), 711–759 (2008)

    Article  MathSciNet  MATH  Google Scholar 

  59. Francalanza, A., Seychell, A.: Synthesising correct concurrent runtime monitors. In: Legay, A., Bensalem, S. (eds.) RV 2013. LNCS, vol. 8174, pp. 112–129. Springer, Heidelberg (2013). https://doi.org/10.1007/978-3-642-40787-1_7

    Chapter  Google Scholar 

  60. Francalanza, A., Seychell, A.: Synthesising correct concurrent runtime monitors. FMSD 46(3), 226–261 (2015)

    MATH  Google Scholar 

  61. Garg, D., Jia, L., Datta, A.: Policy auditing over incomplete logs: theory, implementation and applications. In: Proceedings of CCS 2011, pp. 151–162 (2011)

    Google Scholar 

  62. Garg, V.K.: Elements of Distributed Computing. Wiley-IEEE Press, New York (2002)

    Google Scholar 

  63. Garg, V.K., Mittal, N.: On slicing a distributed computation. In: Proceedings of the 21st IEEE International Conference on Distributed Computing Systems (ICDCS 2001), pp. 322–329. IEEE CS Press (2001)

    Google Scholar 

  64. Garg, V.K., Waldecker, B.: Detection of weak unstable predicates in distributed programs. IEEE Trans. Parallel Distrib. Syst. 5(3), 299–307 (1994)

    Article  Google Scholar 

  65. Honda, K., Vasconcelos, V.T., Kubo, M.: Language primitives and type discipline for structured communication-based programming. In: Hankin, C. (ed.) ESOP 1998. LNCS, vol. 1381, pp. 122–138. Springer, Heidelberg (1998). https://doi.org/10.1007/BFb0053567

    Chapter  Google Scholar 

  66. Honda, K., Yoshida, N., Carbone, M.: Multiparty asynchronous session types. J. ACM 63(1), 9:1–9:67 (2016)

    Article  MathSciNet  MATH  Google Scholar 

  67. Hu, R., Neykova, R., Yoshida, N., Demangeon, R., Honda, K.: Practical interruptible conversations - distributed dynamic verification with session types and python. In: [72], pp. 130–148

    Google Scholar 

  68. Hüttel, H., Lanese, I., Vasconcelos, V.T., Caires, L., Carbone, M., Deniélou, P., Mostrous, D., Padovani, L., Ravara, A., Tuosto, E., Vieira, H.T., Zavattaro, G.: Foundations of session types and behavioural contracts. ACM Comput. Surv. 49(1), 3:1–3:36 (2016)

    Article  Google Scholar 

  69. Jia, L., Gommerstadt, H., Pfenning, F.: Monitors and blame assignment for higher-order session types. In: Bodík, R., Majumdar, R. (eds.) Proceedings of the 43rd Annual ACM SIGPLAN-SIGACT Symposium on Principles of Programming Languages, POPL 2016, St. Petersburg, FL, USA, 20–22 January 2016, pp. 582–594. ACM (2016)

    Google Scholar 

  70. Joyce, J., Lomow, G., Slind, K., Unger, B.W.: Monitoring distributed systems. ACM Trans. Comput. Syst. 5(2), 121–150 (1987)

    Article  Google Scholar 

  71. Lamport, L.: Time, clocks and the ordering of events in distributed systems. Commun. ACM 21(7), 558–565 (1978)

    Article  MATH  Google Scholar 

  72. Legay, A., Bensalem, S. (eds.): RV 2013. LNCS, vol. 8174. Springer, Heidelberg (2013). https://doi.org/10.1007/978-3-642-40787-1

    Google Scholar 

  73. Luo, Q., Roşu, G.: EnforceMOP: a runtime property enforcement system for multithreaded programs. In: ISSTA. ACM, New York (2013)

    Google Scholar 

  74. Mattern, F.: Virtual time and global states of distributed systems. In: Proceedings of the Workshop on Parallel and Distributed Algorithms, pp. 215–226. Elsevier (1989)

    Google Scholar 

  75. Mezzina, C.A., Pérez, J.A.: Reversible sessions using monitors. In: Orchard, D.A., Yoshida, N. (eds.) Proceedings of the Ninth Workshop on Programming Language Approaches to Concurrency- and Communication-cEntric Software (PLACES 2016). EPTCS, vol. 211, pp. 56–64 (2016)

    Google Scholar 

  76. Mezzina, C.A., Pérez, J.A.: Reversibility in session-based concurrency: a fresh look. J. Log. Algebraic Methods Program. 90, 2–30 (2017)

    Article  MathSciNet  MATH  Google Scholar 

  77. Milner, R., Parrow, J., Walker, D.: A calculus of mobile processes, I. Inf. Comput. 100(1), 1–40 (1992)

    Article  MathSciNet  MATH  Google Scholar 

  78. Mittal, N., Garg, V.K.: Techniques and applications of computation slicing. Distrib. Comput. 17(3), 251–277 (2005)

    Article  MATH  Google Scholar 

  79. Mittal, N., Sen, A., Garg, V.K.: Solving computation slicing using predicate detection. IEEE Trans. Parallel Distrib. Systems (TPDS) 18(12), 1700–1713 (2007)

    Article  Google Scholar 

  80. Mostafa, M., Bonakdarpour, B.: Decentralized runtime verification of LTL specifications in distributed systems. In: Proceedings of the 2015 IEEE International Parallel and Distributed Processing Symposium (IPDPS 2015), pp. 494–503. IEEE Computer Society (2015)

    Google Scholar 

  81. Neykova, R., Bocchi, L., Yoshida, N.: Timed runtime monitoring for multiparty conversations. In: [21], pp. 19–26

    Google Scholar 

  82. Neykova, R., Yoshida, N., Hu, R.: SPY: local verification of global protocols. In: [72], pp. 358–363

    Google Scholar 

  83. Ogale, V.A., Garg, V.K.: Detecting temporal logic predicates on distributed computations. In: Pelc, A. (ed.) DISC 2007. LNCS, vol. 4731, pp. 420–434. Springer, Heidelberg (2007). https://doi.org/10.1007/978-3-540-75142-7_32

    Chapter  Google Scholar 

  84. Pnueli, A., Zaks, A.: PSL model checking and run-time verification via testers. In: Misra, J., Nipkow, T., Sekerinski, E. (eds.) FM 2006. LNCS, vol. 4085, pp. 573–586. Springer, Heidelberg (2006). https://doi.org/10.1007/11813040_38

    Chapter  Google Scholar 

  85. Roşu, G., Havelund, K.: Rewriting-based techniques for runtime verification. Autom. Softw. Eng. 12(2), 151–197 (2005)

    Article  Google Scholar 

  86. Sen, A., Garg, V.K.: Detecting temporal logic predicates in distributed programs using computation slicing. In: Papatriantafilou, M., Hunel, P. (eds.) OPODIS 2003. LNCS, vol. 3144, pp. 171–183. Springer, Heidelberg (2004). https://doi.org/10.1007/978-3-540-27860-3_17

    Chapter  Google Scholar 

  87. Sen, A., Garg, V.K.: Partial order trace analyzer (POTA) for distributed programs. ENTCS 89(2), 22–43 (2003). Proceedings of Workshop on Runtime Verification (RV 2003)

    Google Scholar 

  88. Sen, A., Garg, V.K.: Formal verification of simulation traces using computation slicing. IEEE Trans. Comput. 56, 511–527 (2007)

    Article  MathSciNet  Google Scholar 

  89. Sen, K., Vardhan, A., Agha, G., Rosu, G.: Efficient decentralized monitoring of safety in distributed systems. In: Proceedings of ICSE 2004. IEEE CS Press (2004)

    Google Scholar 

  90. Sen, K., Vardhan, A., Agha, G., Rosu, G.: Decentralized runtime analysis of multithreaded applications. In: Proceedings of the 20th IEEE International Parallel and Distributed Processing Symposium (IPDPS 2006). IEEE (2006)

    Google Scholar 

  91. Viswanathan, M.: Foundations for the run-time analysis of software systems. Ph.D. thesis, University of Pennsylvania (2000)

    Google Scholar 

  92. Yoshida, N., Hu, R., Neykova, R., Ng, N.: The scribble protocol language. In: Abadi, M., Lluch Lafuente, A. (eds.) TGC 2013. LNCS, vol. 8358, pp. 22–41. Springer, Cham (2014). https://doi.org/10.1007/978-3-319-05119-2_3

    Chapter  Google Scholar 

  93. Zhang, T., Gebhard, P., Sokolsky, O.: SMEDL: combining synchronous and asynchronous monitoring. In: Falcone, Y., Sánchez, C. (eds.) RV 2016. LNCS, vol. 10012, pp. 482–490. Springer, Cham (2016). https://doi.org/10.1007/978-3-319-46982-9_32

    Chapter  Google Scholar 

Download references

Acknowledgments

We are grateful to the anonymous reviewers for their useful remarks and suggestions, which led to significant improvements.

Financial Acknowledgements. This work was partially supported by COST Action IC1402 (Runtime Verification beyond Monitoring). César Sánchez is funded in part by Spanish MINECO Project “RISCO (TIN2015-71819-P)” and by EU H2020 project 731535 “Elastest”. Pérez is also affiliated to the NOVA Laboratory for Computer Science and Informatics (NOVA LINCS – PEst/UID/CEC/04516/2013), Universidade Nova de Lisboa, Portugal.

Author information

Authors and Affiliations

Authors

Corresponding author

Correspondence to César Sánchez .

Editor information

Editors and Affiliations

Rights and permissions

Reprints and permissions

Copyright information

© 2018 Springer International Publishing AG

About this chapter

Check for updates. Verify currency and authenticity via CrossMark

Cite this chapter

Francalanza, A., Pérez, J.A., Sánchez, C. (2018). Runtime Verification for Decentralised and Distributed Systems. In: Bartocci, E., Falcone, Y. (eds) Lectures on Runtime Verification. Lecture Notes in Computer Science(), vol 10457. Springer, Cham. https://doi.org/10.1007/978-3-319-75632-5_6

Download citation

  • DOI: https://doi.org/10.1007/978-3-319-75632-5_6

  • Published:

  • Publisher Name: Springer, Cham

  • Print ISBN: 978-3-319-75631-8

  • Online ISBN: 978-3-319-75632-5

  • eBook Packages: Computer ScienceComputer Science (R0)

Publish with us

Policies and ethics