The B-book: assigning programs to meanings
The B-book: assigning programs to meanings
Model checking
Alloy: a lightweight object modelling notation
ACM Transactions on Software Engineering and Methodology (TOSEM)
Another Look at LTL Model Checking
Formal Methods in System Design
Modal Transition Systems: A Foundation for Three-Valued Program Analysis
ESOP '01 Proceedings of the 10th European Symposium on Programming Languages and Systems
Symbolic Model Checking without BDDs
TACAS '99 Proceedings of the 5th International Conference on Tools and Algorithms for Construction and Analysis of Systems
Model Checking Support for the ASM High-Level Language
TACAS '00 Proceedings of the 6th International Conference on Tools and Algorithms for Construction and Analysis of Systems: Held as Part of the European Joint Conferences on the Theory and Practice of Software, ETAPS 2000
Model Checking and Transitive-Closure Logic
CAV '97 Proceedings of the 9th International Conference on Computer Aided Verification
DynAlloy: upgrading alloy with actions
Proceedings of the 27th international conference on Software engineering
Symbolic model checking of declarative relational models
Proceedings of the 28th international conference on Software engineering
Software Abstractions: Logic, Language, and Analysis
Software Abstractions: Logic, Language, and Analysis
From Model-Driven Development to Model-Driven Engineering
ECRTS '07 Proceedings of the 19th Euromicro Conference on Real-Time Systems
Tutorial: the ASM method for system design and analysis. a tutorial introduction
FroCoS'05 Proceedings of the 5th international conference on Frontiers of Combining Systems
Hi-index | 0.00 |
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.