Abstract
Users wanting to monitor distributed or component-based systems often perceive them as monolithic systems which, seen from the outside, exhibit a uniform behaviour as opposed to many components displaying many local behaviours that together constitute the system’s global behaviour. This level of abstraction is often reasonable, hiding implementation details from users who may want to specify the system’s global behaviour in terms of an LTL formula. However, the problem that arises then is how such a specification can actually be monitored in a distributed system that has no central data collection point, where all the components’ local behaviours are observable. In this case, the LTL specification needs to be decomposed into sub-formulae which, in turn, need to be distributed amongst the components’ locally attached monitors, each of which sees only a distinct part of the global behaviour.
The main contribution of this paper is an algorithm for distributing and monitoring LTL formulae, such that satisfaction or violation of specifications can be detected by local monitors alone. We present an implementation and show that our algorithm introduces only a minimum delay in detecting satisfaction/violation of a specification. Moreover, our practical results show that the communication overhead introduced by the local monitors is generally lower than the number of messages that would need to be sent to a central data collection point.
Access this chapter
Tax calculation will be finalised at checkout
Purchases are for personal use only
Preview
Unable to display preview. Download preview PDF.
Similar content being viewed by others
References
Pnueli, A.: The temporal logic of programs. In: Foundations of Computer Science (FOCS), pp. 46–57. IEEE (1977)
Seyster, J., Dixit, K., Huang, X., Grosu, R., Havelund, K., Smolka, S.A., Stoller, S.D., Zadok, E.: Aspect-oriented instrumentation with GCC. In: Barringer, et al. (eds.) [27], pp. 405–420
Meredith, P.O., Rosu, G.: Runtime verification with the RV System. In: Barringer, et al. (eds.) [27], pp. 136–152
Hallé, S., Villemaire, R.: Runtime verification for the web-a tutorial introduction to interface contracts in web applications. In: Barringer, et al. (eds.) [27], pp. 106–121
Gunzert, M., Nägele, A.: Component-based development and verification of safety critical software for a brake-by-wire system with synchronous software components. In: Intl. Symp. on SE for Parallel and Distributed Systems (PDSE), pp. 134–145. IEEE (1999)
Lukasiewycz, M., Glaß, M., Teich, J., Milbredt, P.: FlexRay schedule optimization of the static segment. In: 7th IEEE ACM Intl. Conf. on Hardware Software Codesign and System Synthesis (CODES+ISSS), pp. 363–372. ACM (2009)
Pop, T., Pop, P., Eles, P., Peng, Z., Andrei, A.: Timing analysis of the FlexRay communication protocol. Real-Time Syst. 39, 205–235 (2008)
Miller, S.P., Whalen, M.W., Cofer, D.D.: Software model checking takes off. Commun. ACM 53, 58–64 (2010)
Bauer, A., Falcone, Y.: Decentralised LTL monitoring. arXiv:1111.5133 (2011)
Jantsch, A.: Modeling Embedded Systems and SoC’s: Concurrency and Time in Models of Computation. Morgan Kaufmann (2003)
Bauer, A., Leucker, M., Schallhart, C.: Comparing LTL semantics for runtime verification. Logic and Computation 20(3), 651–674 (2010)
Bauer, A., Leucker, M., Schallhart, C.: Runtime verification for LTL and TLTL. ACM Trans. Softw. Eng. Methodol. (TOSEM) 20(4), 14 (2011)
Bacchus, F., Kabanza, F.: Planning for temporally extended goals. Annals of Mathematics and Artificial Intelligence 22, 5–27 (1998)
Roşu, G., Havelund, K.: Rewriting-based techniques for runtime verification. Automated Software Engineering 12(2), 151–197 (2005)
Barringer, H., Rydeheard, D.E., Havelund, K.: Rule systems for run-time monitoring: from Eagle to RuleR. J. Log. Comput. 20(3), 675–706 (2010)
Lichtenstein, O., Pnueli, A., Zuck, L.D.: The glory of the past. In: Logic of Programs 1979, pp. 196–218. Springer (1985)
Markey, N.: Temporal logic with past is exponentially more succinct, concurrency column. Bulletin of the EATCS 79, 122–128 (2003)
DecentMon Website, http://decentmonitor.forge.imag.fr
Dwyer, M.B., Avrunin, G.S., Corbett, J.C.: Patterns in property specifications for finite-state verification. In: Intl. Conf. on Software Engineering (ICSE), pp. 411–420. ACM (1999)
Specification Patterns Website, http://patterns.projects.cis.ksu.edu/
Wang, Y., Yoo, T.-S., Lafortune, S.: New results on decentralized diagnosis of discrete event systems. In: Proc. 42nd Ann. Allerton Conf. on Communication, Control, and Computing (October 2004)
Wang, Y., Yoo, T.-S., Lafortune, S.: Diagnosis of discrete event systems using decentralized architectures. Discrete Event Dynamic Systems 17, 233–263 (2007)
Cassez, F.: The Complexity of Codiagnosability for Discrete Event and Timed Systems. In: Bouajjani, A., Chin, W.-N. (eds.) ATVA 2010. LNCS, vol. 6252, pp. 82–96. Springer, Heidelberg (2010)
Tripakis, S.: Decentralized observation problems. In: 44th IEEE Conf. Decision and Control (CDC-ECC), pp. 6–11. IEEE (2005)
Sen, K., Vardhan, A., Agha, G., Rosu, G.: Decentralized runtime analysis of multithreaded applications. In: 20th Parallel and Distributed Processing Symposium (IPDPS). IEEE (2006)
Genon, A., Massart, T., Meuter, C.: Monitoring Distributed Controllers: When an Efficient LTL Algorithm on Sequences Is Needed to Model-Check Traces. In: Misra, J., Nipkow, T., Karakostas, G. (eds.) FM 2006. LNCS, vol. 4085, pp. 557–572. Springer, Heidelberg (2006)
Barringer, H., Falcone, Y., Finkbeiner, B., Havelund, K., Lee, I., Pace, G., Roşu, G., Sokolsky, O., Tillmann, N. (eds.): RV 2010. LNCS, vol. 6418. Springer, Heidelberg (2010)
Author information
Authors and Affiliations
Editor information
Editors and Affiliations
Rights and permissions
Copyright information
© 2012 Springer-Verlag Berlin Heidelberg
About this paper
Cite this paper
Bauer, A., Falcone, Y. (2012). Decentralised LTL Monitoring. In: Giannakopoulou, D., Méry, D. (eds) FM 2012: Formal Methods. FM 2012. Lecture Notes in Computer Science, vol 7436. Springer, Berlin, Heidelberg. https://doi.org/10.1007/978-3-642-32759-9_10
Download citation
DOI: https://doi.org/10.1007/978-3-642-32759-9_10
Publisher Name: Springer, Berlin, Heidelberg
Print ISBN: 978-3-642-32758-2
Online ISBN: 978-3-642-32759-9
eBook Packages: Computer ScienceComputer Science (R0)