A Case Study in Automated Verification Based on Trace Abstractions
AbstractIn , we proposed a framework for the automatic verification of reactive
systems. Our main tool is a decision procedure, Mona, for Monadic
Second-order Logic (M2L) on finite strings. Mona translates a formula in
M2L into a finite-state automaton. We show in  how traces, i.e. finite
executions, and their abstractions can be described behaviorally. These
state-less descriptions can be formulated in terms of customized temporal
logic operators or idioms.
In the present paper, we give a self-contained, introductory account of
our method applied to the RPC-memory specification problem of the 1994
Dagstuhl Seminar on Specification and Refinement of Reactive Systems.
The purely behavioral descriptions that we formulate from the informal
specifications are formulas that may span 10 pages or more.
Such descriptions are a couple of magnitudes larger than usual temporal
logic formulas found in the literature on verification. To securely
write these formulas, we introduce Fido  as a reactive system description
language. Fido is designed as a high-level symbolic language for
expressing regular properties about recursive data structures.
All of our descriptions have been verified automatically by Mona from
M2L formulas generated by Fido.
Our work shows that complex behaviors of reactive systems can be
formulated and reasoned about without explicit state-based programming.
With Fido, we can state temporal properties succinctly while enjoying
automated analysis and verification.
How to Cite
Klarlund, N., Nielsen, M., & Sunesen, K. (1995). A Case Study in Automated Verification Based on Trace Abstractions. BRICS Report Series, 2(54). https://doi.org/10.7146/brics.v2i54.19955
Articles published in DAIMI PB are licensed under a Creative Commons Attribution-NonCommercial-NoDerivs 3.0 Unported License.