REAL-T: Time Modularization in Reactive Distributed Applications

Conference paper
Part of the Communications in Computer and Information Science book series (CCIS, volume 885)


In this paper, we propose REAL-T, a distributed event-based language with explicit support for time manipulation. The language introduces automata for operational time manipulation, causality constructs and Linear Temporal Logic for declarative time predicates, and a distributed-time aware event model. We have developed a compiler for the language and a dynamic run-time framework. To validate the proposal we study detection of complex patterns of security vulnerabilities in IoT scenarios.


Distributed programming Event oriented programming Explicit and implicit time management 


  1. 1.
    Baier, C., Katoen, J.P.: Principles of Model Checking. MIT press, Cambridge (2008)zbMATHGoogle Scholar
  2. 2.
    Ban, B., Grinovero, S.: JGroups (2011)Google Scholar
  3. 3.
    Barringer, H., Goldberg, A., Havelund, K., Sen, K.: Program monitoring with LTL in EAGLE. In: 18th International Parallel and Distributed Processing Symposium 2004, April 2004Google Scholar
  4. 4.
    Bellini, P., Mattolini, R., Nesi, P.: Temporal logics for real-time system specification. ACM Comput. Surv. 32(1), 12–42 (2000)CrossRefGoogle Scholar
  5. 5.
    Benavides Navarro, L.D., Barrera, A., Garcés, K., Arboleda, H.: Detecting and coordinating complex patterns of distributed events with KETAL. Electron. Notes Theor. Comput. Sci. 281, 127–141 (2011)CrossRefGoogle Scholar
  6. 6.
    Benavides Navarro, L.D., Douence, R., Südholt, M.: Debugging and testing middleware with aspect-based control-flow and causal patterns. In: Issarny, V., Schantz, R. (eds.) Middleware 2008. LNCS, vol. 5346, pp. 183–202. Springer, Heidelberg (2008). Scholar
  7. 7.
    Benton, N., Cardelli, L., Fournet, C.: Modern concurrency abstractions for c#. ACM Trans. Program. Lang. Syst. 26(5), 769–804 (2004)CrossRefGoogle Scholar
  8. 8.
    Büchi, J.R.: Symposium on decision problems on a decision method in restricted second order arithmetic. Stud. Log. Found. Math. 44, 1–11 (1966)CrossRefGoogle Scholar
  9. 9.
    Chen, F., Roşu, G.: Java-MOP: a monitoring oriented programming environment for Java. In: Halbwachs, N., Zuck, L.D. (eds.) TACAS 2005. LNCS, vol. 3440, pp. 546–550. Springer, Heidelberg (2005). Scholar
  10. 10.
    Chen, F., Roşu, G.: MOP: an efficient and generic runtime verification framework. In: ACM SIGPLAN Notices, vol. 42. ACM (2007)Google Scholar
  11. 11.
    Fisher, M.: An Introduction to Practical Formal Methods Using Temporal Logic. Wiley, Hoboken (2011)CrossRefGoogle Scholar
  12. 12.
    Furia, C.A., Mandrioli, D., Morzenti, A., Rossi, M.: Modeling time in computing: a taxonomy and a comparative survey. ACM Comput. Surv. 42(2), 1–59 (2010)CrossRefGoogle Scholar
  13. 13.
    Giannakopoulou, D., Lerda, F.: From states to transitions: improving translation of LTL formulae to Büchi automata. In: Peled, D.A., Vardi, M.Y. (eds.) FORTE 2002. LNCS, vol. 2529, pp. 308–326. Springer, Heidelberg (2002). Scholar
  14. 14.
    Harel, D.: Statecharts: a visual formalism for complex systems. Sci. Comput. Program. 8(3), 231–274 (1987). Scholar
  15. 15.
    Haydar, M., Boroday, S., Petrenko, A., Sahraoui, H.: Propositional scopes in linear temporal logic. In: Proceedings of the 5th International Conference on Novelles Technologies de la Repartition (NOTERE 2005) (2005)Google Scholar
  16. 16.
    Kiczales, G., et al.: Aspect-oriented programming. In: Akşit, M., Matsuoka, S. (eds.) ECOOP 1997. LNCS, vol. 1241, pp. 220–242. Springer, Heidelberg (1997). Scholar
  17. 17.
    Konur, S.: A survey on temporal logics for specifying and verifying real-time systems. Front. Comput. Sci. 7(3), 370–403 (2013)MathSciNetCrossRefGoogle Scholar
  18. 18.
    Kröger, F., Merz, S.: Temporal Logic and State Systems. Springer, Berlin (2008). Scholar
  19. 19.
    Lamport, L.: Time, clocks, and the ordering of events in a distributed system. Commun. ACM 21(7), 558–565 (1978)CrossRefGoogle Scholar
  20. 20.
    Lee, I., Lee, K.: The internet of things (IoT): applications, investments, and challenges for enterprises. Bus. Horiz. 58(4), 431–440 (2015)CrossRefGoogle Scholar
  21. 21.
    Mattern, F., et al.: Virtual time and global states of distributed systems. Parallel Distrib. Algorithms 1(23), 215–226 (1989)MathSciNetGoogle Scholar
  22. 22.
    Meredith, P.O., Jin, D., Griffith, D., Chen, F., Roşu, G.: An overview of the MOP runtime verification framework. Int. J. Softw. Tools Technol. Transf. 14(3), 249–289 (2012)CrossRefGoogle Scholar
  23. 23.
    Møller, A.: dk.brics.automaton – finite-state automata and regular expressions for Java (2017).
  24. 24.
    Naldurg, P., Sen, K., Thati, P.: A temporal logic based framework for intrusion detection. In: de Frutos-Escrig, D., Núñez, M. (eds.) FORTE 2004. LNCS, vol. 3235, pp. 359–376. Springer, Heidelberg (2004). Scholar
  25. 25.
    Ousterhout, J.: Why threads are a bad idea (for most purposes). In: Invited talk Given at USENIX Technical Conference (1996).
  26. 26.
    Petri, C.A.: Fundamentals of a theory of asynchronous information flow. In: IFIP Congress (1962)Google Scholar
  27. 27.
    van Renesse, R., Birman, K.P., Maffeis, S.: Horus: a flexible group communication system. Commun. ACM 39(4), 76–83 (1996)CrossRefGoogle Scholar
  28. 28.
    Robiah, Y., Rahayu, S.S., Shahrin, S., Faizal, M., Zaki, M.M., Marliza, R.: New multi-step worm attack model. arXiv preprint arXiv:1001.3477 (2010)

Copyright information

© Springer Nature Switzerland AG 2018

Authors and Affiliations

  1. 1.Colombian School of Engineering Julio GaravitoBogotáColombia
  2. 2.Universidad IcesiCaliColombia

Personalised recommendations