Download:
|
by Roy Armoni, Limor Fix, Alon Flaisher, Orna Grumberg, Nir Piterman, Andreas Tiemeyer, Moshe Y. Vardi
http://www.cs.rice.edu/~vardi/papers/cav03.ps.gz
Add To MetaCart
Abstract:
Abstract. One of the advantages of temporal-logic model-checking tools is their ability to accompany a negative answer to a correctness query with a counterexample to the satisfaction of the specification in the system. On the other hand, when the answer to the correctness query is positive, most model-checking tools provide no witness for the satisfaction of the specification. In the last few years there has been growing awareness of the importance of suspecting the system or the specification of containing an error also in cases where model checking succeeds. In particular, several works have recently focused on the detection of the vacuous satisfaction of temporal logic specifications. For example, when verifying a system with respect to the specification ' = G(req! F grant) ("every request is eventually followed by a grant"), we say that ' is satisfied vacuously in systems in which requests are never sent. Current works have focused on detecting vacuity with respect to subformula occurrences. In this work we investigate vacuity detection with respect to subformulas with multiple occurrences. The generality of our framework requires us to re-examine the basic intuition underlying the concept of vacuity, which until now has been defined as sensitivity with respect to syntactic perturbation. We study sensitivity with respect to semantic perturbation, which we model by universal propositional quantification. We show that this yields a hierarchy of vacuity notions. We argue that the right notion is that of vacuity defined with respect to traces. We then provide an algorithm for vacuity detection and discuss pragmatic aspects. 1
Citations
|
1440
|
Model Checking
– Clarke, Grumberg, et al.
- 2001
|
|
996
|
Automatic verification of finite-state concurrent systems using temporal logic specifications
– Clarke, Emerson, et al.
- 1986
|
|
808
|
The temporal logic of programs
– Pnueli
- 1977
|
|
568
|
Design and synthesis of synchronization skeletons using branching time temporal logic
– Clarke, Emerson
- 1981
|
|
460
|
P.: An automata-theoretic approach to automatic program verification
– Vardi, Wolper
- 1986
|
|
212
|
A.: Checking that finite state concurrent programs satisfy their linear specification
– Lichtenstein, Pnueli
- 1985
|
|
182
|
Reasoning about infinite computations
– Vardi, Wolper
- 1994
|
|
178
|
Specification and verification of concurrent systems in Cesar
– Queille, Sifakis
- 1982
|
|
115
|
The glory of the past
– Lichtenstein, Pnueli, et al.
- 1985
|
|
96
|
The complementation problem for Büchi automata with applications to temporal logic
– Sistla, Vardi, et al.
- 1985
|
|
71
|
Temporal and Modal Logic, Handbook of Theoretical Computer Science
– Emerson
- 1990
|
|
68
|
Efficient generation of counterexamples and witnesses in symbolic model checking
– Clarke, Grumberg, et al.
- 1995
|
|
58
|
Formally verifying a microprocessor using a simulation methodology
– Beatty, Bryant
- 1994
|
|
48
|
The ForSpec temporal logic: A new temporal property-specification language
– Armoni, Fix, et al.
- 2002
|
|
33
|
Vacuity detection in temporal model checking
– Kupferman, Vardi
|
|
28
|
Efficient detection of vacuity in ACTL formulas. Formal Methods
– Beer, Ben-David, et al.
- 1992
|
|
16
|
FormalCheck User's Manual. Cadence Design
– Kurshan
- 1998
|
|
12
|
Vacuum cleaning CTL formulae
– Purandare, Somenzi
- 2002
|
|
11
|
Augmenting branching temporal logics with existential quantification over atomic propositions
– Kupferman
- 1995
|
|
10
|
Formal verification of a commercial serial bus interface
– Plessier, Pixley
- 1995
|