Temporal Logic Model Checking in Alloy
The declarative and relational aspects of Alloy make it a desirable language to use for high-level modeling of transition systems. However, currently, these models must be translated to another tool to carry out full temporal logic model checking. In this article, we show how a symbolic representation of the semantics of computational tree logic with fairness constraints (CTLFC) can be written in first-order logic with the transitive closure operator, and therefore described in Alloy. Using this encoding, the question of whether a declarative model of a transition system satisfies a temporal logic formula can be solved using the Alloy Analyzer directly. Also, since a declarative description of a model may actually represent a family of transition systems, we define two distinct model checking questions on this family (existential and universal model checking) and show how these properties can be evaluated in the Alloy Analyzer.
KeywordsModel Check Transition System Temporal Logic Alloy Model Linear Temporal Logic
Unable to display preview. Download preview PDF.
- 1.Selic, B.: From Model-Driven Development to Model-Driven Engineering. In: ECRTS. IEEE Computer Society (2007)Google Scholar
- 3.Abrial, J.R.: The B Book: Assigning Programs to Meanings. Cambridge University Press (August 1996)Google Scholar
- 4.International Organisation for Standardization: Information Technology Z Formal Specification Notation Syntax, Type System and Semantics (2000)Google Scholar
- 6.Chang, F.S.H., Jackson, D.: Symbolic Model Checking of Declarative Relational Models. In: ICSE 2006, pp. 312–320 (May 2006)Google Scholar
- 9.Jackson, D.: Software Abstractions - Logic, Language, and Analysis. MIT Press (2006)Google Scholar
- 11.Clarke, E., Grumberg, O., Peled, D.A.: Model Checking. MIT Press (1999)Google Scholar
- 13.Hindley, J.R., Seldin, J.P.: An Introduction to Combinators and the λ-calculus, 2nd edn. Cambridge University Press (2008)Google Scholar
- 14.McMillan, K.L.: The SMV system (November 06, 1992)Google Scholar
- 17.Dold, A.: A Formal Representation of Abstract State Machines Using PVS. Verifix Technical Report Ulm/6.2, Universität Ulm (July 1998)Google Scholar
- 18.Frias, M.F., Galeotti, J.P., López Pombo, C.G., Aguirre, N.M.: DynAlloy: Upgrading Alloy with Actions. In: Proceedings of ICSE 2005, pp. 442–451. ACM (2005)Google Scholar