Journal of Reliable Intelligent Environments

, Volume 3, Issue 2, pp 117–130 | Cite as

Symbolic verification of event–condition–action rules in intelligent environments

  • Claudia Vannucchi
  • Michelangelo Diamanti
  • Gianmarco Mazzante
  • Diletta Cacciagrano
  • Rosario Culmone
  • Nikos Gorogiannis
  • Leonardo Mostarda
  • Franco Raimondi
Original Article


In this paper we show how state-of-the art SMT-based techniques for software verification can be employed in the verification of event–condition–action rules in intelligent environments. Moreover, we exploit the specific features of intelligent environments to optimise the verification process. We compare our approach with previous work in a detailed evaluation section, showing how it improves both performance and expressivity of the language for event–condition–action rules.


Event–condition–action rules Symbolic verification 


  1. 1.
    Barrett C, Stump A, Tinelli C, Boehme S, Cok D, Deharbe D, Dutertre B, Fontaine P, Ganesh V, Griggio A, Grundy J, Jackson P, Oliveras A, Krstiäg S, Moskal M, Moura LD, Sebastiani R, Cok TD, Hoenicke JC (2010) The SMT-LIB standard: version 2.0. In: Technical report, Department of Computer Science, The University of IowaGoogle Scholar
  2. 2.
    Berndtsson M, Mellin J (2009) ECA rules, pp 959–960. Springer, Boston. doi: 10.1007/978-0-387-39940-9_504
  3. 3.
    Beyer D, Stahlbauer A (2014) BDD-based software verification. Int J Softw Tools Technol Transf 16(5):507–518. doi: 10.1007/s10009-014-0334-1
  4. 4.
    Beyer D, Wendler P (2012) Algorithms for software model checking: predicate abstraction vs. impact. In: 2012 formal methods in computer-aided design (FMCAD), pp 106–113Google Scholar
  5. 5.
    Bryant RE (1986) Graph-based algorithms for Boolean function manipulation. IEEE Trans Comput 35(8):677–691. doi: 10.1109/TC.1986.1676819
  6. 6.
    Cano J, Delaval G, Rutten E (2014) Coordination models and languages. In: 16th IFIP WG 6.1 international conference, coordination 2014, held as part of the 9th international federated conferences on distributed computing techniques, DisCoTec 2014, Berlin, 3–5 June 2014. Proceedings, chapter Coordination of ECA rules by verification and control, pp 33–48. Springer, Berlin. doi: 10.1007/978-3-662-43376-8_3
  7. 7.
    Corradini F, Culmone R, Mostarda L, Tesei L, Raimondi F (2015) A constrained ECA language supporting formal verification of WSNs. In: 29th IEEE international conference on advanced information networking and applications workshops, AINA 2015 workshops, Gwangju, 24–27 March 2015, pp 187–192. doi: 10.1109/WAINA.2015.109
  8. 8.
    De Moura L, Bjørner N (2008) Z3: an efficient SMT solver. In: Proceedings of the theory and practice of software, 14th international conference on tools and algorithms for the construction and analysis of systems, TACAS’08/ETAPS’08, pp 337–340. Springer, Berlin.
  9. 9.
    De Moura L, Bjørner N (2009) Satisfiability modulo theories: an appetizer. In: Brazilian symposium on formal methods, pp 23–36. Springer, New YorkGoogle Scholar
  10. 10.
    Delaval G, Rutten E, Marchand H (2013) Integrating discrete controller synthesis into a reactive programming language compiler. Discrete Event Dyn Syst 23(4):385–418. doi: 10.1007/s10626-013-0163-5 CrossRefzbMATHGoogle Scholar
  11. 11.
    Dijkstra EW (1975) Guarded commands, nondeterminacy and formal derivation of programs. Commun ACM 18(8):453–457. doi: 10.1145/360933.360975
  12. 12.
    Dumas M, Hofstede AHMT (2001) UML activity diagrams as a workflow specification language. In: Proceedings of the fourth international conference on the unified modeling language, modeling languages, concepts, and tools. Springer, London, pp 76–90.
  13. 13.
    Ericsson A (2009) Enabling tool support for formal analysis of ECA rules. Ph.D. thesis, University of SkövdeGoogle Scholar
  14. 14.
    Gries D (1989) The science of programming. Monographs in computer science. Springer, New YorkGoogle Scholar
  15. 15.
    Gu T, Wang XH, Pung HK, Zhang DQ (2004) An ontology-based context model in intelligent environments. In: Proceedings of communication networks and distributed systems modeling and simulation conference, vol 2004, San Diego, pp 270–275Google Scholar
  16. 16.
    Jin X, Lembachar Y, Ciardo G (2013) Symbolic verification of ECA rules. In: Joint proceedings of the international workshop on petri nets and software engineering (PNSE’13) and the international workshop on modeling and business environments (ModBE’13), Milano, 24–25 June 2013, pp 41–59.
  17. 17.
    Lee WS, Lee SY, Lee KC (2007) Conflict detection and resolution method in WS-ECA framework. In: The 9th international conference on advanced communication technology, vol 1, pp 786–791. IEEE, New YorkGoogle Scholar
  18. 18.
    Marchand H, Bournai P, Borgne ML, Guernic PL (2000) Synthesis of discrete-event controllers based on the signal environment. Discrete Event Dyn Syst 10(4):325–346. doi: 10.1023/A:1008311720696
  19. 19.
    Mostarda L, Marinovic S, Dulay N (2010) Distributed orchestration of pervasive services. In: 24th IEEE IAINA 2010, Perth, 13–20 April 2010, pp 166–173Google Scholar
  20. 20.
    Sun Y, Wang X, Luo H, Li X (2015) Conflict detection scheme based on formal rule model for smart building systems. IEEE Trans Hum Mach Syst 45(2):215–227. doi: 10.1109/THMS.2014.2364613 CrossRefGoogle Scholar
  21. 21.
    Vannucchi C, Cacciagrano DR, Corradini F, Culmone R, Mostarda L, Raimondi F, Tesei L (2016) A formal model for event-condition-action rules in intelligent environments. In: Proceedings of the 11th international conference on intelligent environments, pp 56–65. doi: 10.3233/978-1-61499-690-3-56
  22. 22.
    Whitmore A, Agarwal A, Da Xu L (2015) The internet of things—a survey of topics and trends. Inf Syst Front 17(2):261–274. doi: 10.1007/s10796-014-9489-2
  23. 23.
    Yoon JP (1989) Techniques for data and rule validation in knowledge based systems. In: Computer assurance, 1989. In: Proceedings of the fourth annual conference on COMPASS ’89, ’systems integrity, software safety and process security’, pp 62–70. doi: 10.1109/CMPASS.1989.76042
  24. 24.
    Zhang J, Moyne J, Tilbury D (2008) Verification of ECA rule based management and control systems. In: 2008 IEEE international conference on automation science and engineering, pp 1–7. doi: 10.1109/COASE.2008.4626431

Copyright information

© Springer International Publishing Switzerland 2017

Authors and Affiliations

  • Claudia Vannucchi
    • 1
  • Michelangelo Diamanti
    • 1
  • Gianmarco Mazzante
    • 1
  • Diletta Cacciagrano
    • 1
  • Rosario Culmone
    • 1
  • Nikos Gorogiannis
    • 2
  • Leonardo Mostarda
    • 1
  • Franco Raimondi
    • 2
  1. 1.Department of Computer ScienceUniversity of CamerinoCamerinoItaly
  2. 2.Department of Computer ScienceMiddlesex UniversityLondonUK

Personalised recommendations