Abstract
In this paper, we propose a hybrid parallel model checking algorithm for both shared and distributed memory architectures. The model checking is performed simultaneously with a parallel construction of system state space by distributed multi-core machines. The representation of the system’s state space is a hybrid graph called Symbolic Observation Graph (SOG), which combines the symbolic representation of its nodes (sets of single states) and the explicit representation of its arcs. The SOG is adapted to allow the preservation of both state and event-based LTL formulae (hybrid LTL), i.e. the atomic propositions involved in the formula to be checked are either state or event-based propositions.
We have implemented the proposed model checker within a C++ prototype and compared our preliminary results to the LTSmin model checker.
Access this chapter
Tax calculation will be finalised at checkout
Purchases are for personal use only
Similar content being viewed by others
References
Abid, C.A., Klai, K., Arias, J., Ouni, H.: SOG-based multi-core LTL model checking. In: ISPA/BDCloud/SocialCom/SustainCom, pp. 9–17. IEEE (2020)
Barnat, J., et al.: Parallel model checking algorithms for linear-time temporal logic. In: Handbook of Parallel Constraint Reasoning, pp. 457–507. Springer, Cham (2018). https://doi.org/10.1007/978-3-319-63516-3_12
Barnat, J., et al.: DiVinE 3.0 – an explicit-state model checker for multithreaded C and C++ programs. In: Sharygina, N., Veith, H. (eds.) CAV 2013. LNCS, vol. 8044, pp. 863–868. Springer, Heidelberg (2013). https://doi.org/10.1007/978-3-642-39799-8_60
Barnat, J., Brim, L., Rockai, P.: DiVinE 2.0: high-performance model checking. In: HiBi 2009, pp. 31–32. IEEE Computer Society Press (2009)
Bhat, G., Peled, D.: Adding partial orders to linear temporal logic. In: Mazurkiewicz, A., Winkowski, J. (eds.) CONCUR 1997. LNCS, vol. 1243, pp. 119–134. Springer, Heidelberg (1997). https://doi.org/10.1007/3-540-63141-0_9
Biere, A., Zhu, Y., Clarke, E.M.: Multiple state and single state tableaux for combining local and global nodel checking. In: Olderog, E.-R., Steffen, B. (eds.) Correct System Design. LNCS, vol. 1710, pp. 163–179. Springer, Heidelberg (1999). https://doi.org/10.1007/3-540-48092-7_8
Blom, S., van de Pol, J.: Symbolic reachability for process algebras with recursive data types. In: Fitzgerald, J.S., Haxthausen, A.E., Yenigun, H. (eds.) ICTAC 2008. LNCS, vol. 5160, pp. 81–95. Springer, Heidelberg (2008). https://doi.org/10.1007/978-3-540-85762-4_6
Bolze, R., et al.: Grid’5000: a large scale and highly reconfigurable experimental grid testbed. IJHPCA 20(4), 481–494 (2006)
Bryant, R.E.: Symbolic Boolean manipulation with ordered binary-decision diagrams. ACM Comput. Surv. 24(3), 293–318 (1992)
Clarke, E.M., Grumberg, O., Peled, D.A.: Model Checking. MIT Press, Cambridge (2001)
Courcoubetis, C., Vardi, M., Wolper, P., Yannakakis, M.: Memory efficient algorithms for the verification of temporal properties. In: Clarke, E.M., Kurshan, R.P. (eds.) CAV 1990. LNCS, vol. 531, pp. 233–242. Springer, Heidelberg (1991). https://doi.org/10.1007/BFb0023737
Dobbertin, H.: Cryptanalysis of MD5 compress. In: Rump Session of Eurocrypt 1996, pp. 71–82 (1996)
Duret-Lutz, A., et al.: Spot 2.0 — a framework for LTL and \(\omega \)-automata manipulation. In: Artho, C., Legay, A., Peled, D. (eds.) ATVA 2016. LNCS, vol. 9938, pp. 122–129. Springer, Cham (2016). https://doi.org/10.1007/978-3-319-46520-3_8
Filippidis, I., Holzmann, G.J.: An improvement of the piggyback algorithm for parallel model checking. In: SPIN, pp. 48–57. ACM (2014)
Fisler, K., Fraer, R., Kamhi, G., Vardi, M.Y., Yang, Z.: Is there a best symbolic cycle-detection algorithm? In: Margaria, T., Yi, W. (eds.) TACAS 2001. LNCS, vol. 2031, pp. 420–434. Springer, Heidelberg (2001). https://doi.org/10.1007/3-540-45319-9_29
Geldenhuys, J., Valmari, A.: Techniques for smaller intermediary BDDs. In: Larsen, K.G., Nielsen, M. (eds.) CONCUR 2001. LNCS, vol. 2154, pp. 233–247. Springer, Heidelberg (2001). https://doi.org/10.1007/3-540-44685-0_16
Godefroid, P., Wolper, P.: A partial approach to model checking. In: LICS, pp. 406–415. IEEE Computer Society (1991)
Haddad, S., Ilié, J.-M., Klai, K.: Design and evaluation of a symbolic and abstraction-based model checker. In: Wang, F. (ed.) ATVA 2004. LNCS, vol. 3299, pp. 196–210. Springer, Heidelberg (2004). https://doi.org/10.1007/978-3-540-30476-0_19
Henzinger, T.A., Kupferman, O., Vardi, M.Y.: A space-efficient on-the-fly algorithm for real-time model checking. In: Montanari, U., Sassone, V. (eds.) CONCUR 1996. LNCS, vol. 1119, pp. 514–529. Springer, Heidelberg (1996). https://doi.org/10.1007/3-540-61604-7_73
Holzmann, G.J.: Parallelizing the spin model checker. In: Donaldson, A., Parker, D. (eds.) SPIN 2012. LNCS, vol. 7385, pp. 155–171. Springer, Heidelberg (2012). https://doi.org/10.1007/978-3-642-31759-0_12
Kaivola, R., Valmari, A.: The weakest compositional semantic equivalence preserving nexttime-less linear temporal logic. In: Cleaveland, W.R. (ed.) CONCUR 1992. LNCS, vol. 630, pp. 207–221. Springer, Heidelberg (1992). https://doi.org/10.1007/BFb0084793
Kant, G., Laarman, A., Meijer, J., van de Pol, J., Blom, S., van Dijk, T.: LTSmin: high-performance language-independent model checking. In: Baier, C., Tinelli, C. (eds.) TACAS 2015. LNCS, vol. 9035, pp. 692–707. Springer, Heidelberg (2015). https://doi.org/10.1007/978-3-662-46681-0_61
Klai, K., Poitrenaud, D.: MC-SOG: an LTL model checker based on symbolic observation graphs. In: van Hee, K.M., Valk, R. (eds.) PETRI NETS 2008. LNCS, vol. 5062, pp. 288–306. Springer, Heidelberg (2008). https://doi.org/10.1007/978-3-540-68746-7_20
Ouni, H., Klai, K., Abid, C.A., Zouari, B.: A parallel construction of the symbolic observation graph: the basis for efficient model checking of concurrent systems. In: SCSS. EPiC Series in Computing, vol. 45, pp. 107–119. EasyChair (2017)
Ouni, H., Klai, K., Abid, C.A., Zouari, B.: Parallel symbolic observation graph. In: ISPA/IUCC, pp. 770–777. IEEE (2017)
Ouni, H., Klai, K., Abid, C.A., Zouari, B.: Reducing time and/or memory consumption of the SOG construction in a parallel context. In: ISPA/IUCC/BDCloud/SocialCom/SustainCom, pp. 147–154. IEEE (2018)
Ouni, H., Klai, K., Abid, C.A., Zouari, B.: Towards parallel verification of concurrent systems using the symbolic observation graph. In: ACSD, pp. 23–32 (2019)
Sebastiani, R., Tonetta, S., Vardi, M.Y.: Symbolic systems, explicit properties: on hybrid approaches for LTL symbolic model checking. In: Etessami, K., Rajamani, S.K. (eds.) CAV 2005. LNCS, vol. 3576, pp. 350–363. Springer, Heidelberg (2005). https://doi.org/10.1007/11513988_35
Tao, Z., von Bochmann, G., Dssouli, R.: Verification and diagnosis of testing equivalence and reduction relation. In: ICNP, pp. 14–21. IEEE Computer Society (1995)
Valmari, A.: A stubborn attack on state explosion. Formal Methods Syst. Des. 1(4), 297–322 (1992)
Valmari, A.: The state explosion problem. In: Reisig, W., Rozenberg, G. (eds.) ACPN 1996. LNCS, vol. 1491, pp. 429–528. Springer, Heidelberg (1998). https://doi.org/10.1007/3-540-65306-6_21
Author information
Authors and Affiliations
Corresponding author
Editor information
Editors and Affiliations
Rights and permissions
Copyright information
© 2022 Springer Nature Switzerland AG
About this paper
Cite this paper
Klai, K., Abid, C.A., Arias, J., Evangelista, S. (2022). Hybrid Parallel Model Checking of Hybrid LTL on Hybrid State Space Representation. In: Nouri, A., Wu, W., Barkaoui, K., Li, Z. (eds) Verification and Evaluation of Computer and Communication Systems. VECoS 2021. Lecture Notes in Computer Science, vol 13187. Springer, Cham. https://doi.org/10.1007/978-3-030-98850-0_3
Download citation
DOI: https://doi.org/10.1007/978-3-030-98850-0_3
Published:
Publisher Name: Springer, Cham
Print ISBN: 978-3-030-98849-4
Online ISBN: 978-3-030-98850-0
eBook Packages: Computer ScienceComputer Science (R0)