Abstract
In Chap. 4, we have explained how NuSMV can be used to verify LTL and CTL formulae, and how Spin can be used to verify LTL formulae. But how do model checkers such as NuSMV and Spin actually perform those computations? In the current chapter, we explain the basics of the algorithms applied by NuSMV and Spin. First, we explain how CTL formulae are commonly checked in NuSMV, after which we present a method used by NuSMV to check LTL formulae that is based on the CTL model checking procedure. After that, we address how Spin verifies assertions, and how an extended version of that procedure is used by Spin to check LTL formulae.
Access this chapter
Tax calculation will be finalised at checkout
Purchases are for personal use only
Notes
- 1.
Technically, transitive, reflexive closures can be defined for relations, as opposed to functions, as explained in Chap. 2. However, \(\mathop {\textsf{chld}()}\) effectively defines a relation C: for CTL subformulae \(\Phi _1\) and \(\Phi _2\) of \(\Phi \), we have \(\Phi _1 \mathrel {C} \Phi _2\) if and only if \(\Phi _2 \in \mathop {\textsf{chld}(\Phi _1)}\). The reflexivity of \(\mathop {\textsf{chld}^*()}\) therefore refers to the fact that for all CTL subformulae \(\Phi _1\) of \(\Phi \), we have \(\Phi _1 \in \mathop {\textsf{chld}^*(\Phi _1)}\), and the transitivity of \(\mathop {\textsf{chld}^*()}\) refers to the fact that for all CTL subformulae \(\Phi _1\), \(\Phi _2\) and \(\Phi _3\) of \(\Phi \), \(\Phi _2 \in \mathop {\textsf{chld}^*(\Phi _1)}\) and \(\Phi _3 \in \mathop {\textsf{chld}^*(\Phi _2)}\) implies that \(\Phi _3 \in \mathop {\textsf{chld}^*(\Phi _1)}\).
Author information
Authors and Affiliations
Corresponding author
Rights and permissions
Copyright information
© 2023 The Author(s), under exclusive license to Springer Nature Switzerland AG
About this chapter
Cite this chapter
Huisman, M., Wijs, A. (2023). Model Checking Algorithms. In: Concise Guide to Software Verification. Texts in Computer Science. Springer, Cham. https://doi.org/10.1007/978-3-031-30167-4_5
Download citation
DOI: https://doi.org/10.1007/978-3-031-30167-4_5
Published:
Publisher Name: Springer, Cham
Print ISBN: 978-3-031-30166-7
Online ISBN: 978-3-031-30167-4
eBook Packages: Computer ScienceComputer Science (R0)