Abstract
The ability to generate a counter-example is an important feature of model checking tools, because a counter-example provides information to the user in the case that the formula being checked is found to be non-valid. In this paper, we turn our attention to providing similar feedback to the user in the case that the formula is found to be valid, because valid formulas can hide real problems in the model. For instance, propositional logic formulas containing implications can suffer from antecedent failure, in which the formula is trivially valid because the pre-condition of the implication is not satisfiable. We call this vacuity, and extend the definition to cover other kinds of trivial validity. For non-vacuously valid formulas, we define an interesting witness as a non-trivial example of the validity of the formula. We formalize the notions of vacuity and interesting witness, and show how to detect vacuity and generate interesting witnesses in temporal model checking. Finally, we provide a practical solution for a useful subset of ACTL formulas.
Similar content being viewed by others
References
A.R. Anderson and N.D. Belnap, Jr., Entailment: The Logic of Relevance and Necessity, Princeton University Press, Princeton, Vol. 1, 1975, Vol. 2 (with J. Michael Dunn), 1992.
D. Beatty and R. Bryant, “Formally verifying a microprocessor using a simulation methodology,” in Design Automation Conference '94, pp. 596–602.
I. Beer, S. Ben-David, C. Eisner, and A. Landver, “RuleBase: An industry-oriented formal verification tool,” in Proc. 33rd Design Automation Conference 1996, pp. 655–660.
I. Beer, S. Ben-David, C. Eisner, and Y. Rodeh, “Efficient detection of vacuity in ACTL formulas,” in CAV '97, LNCS 1254, pp. 279–290.
M.C. Browne, E.M. Clarke, and O. Grumberg, “Characterizing finite Kripke structures in propositional temporal logic,” Theoretical Computer Science, Vol. 59, No. 1–2, 1988, pp. 115–131.
F. Buccafurri, T. Eiter, G. Gottlob, and N. Leone, “On ACTL Formulas Having Deterministic Counterexamples,” University of Technology Vienna Technical Report INFSYS RR-1843-99-01.
E.M. Clarke and E.A. Emerson, “Design and synthesis of synchronization skeletons using Branching Time Temporal Logic,” in Proc. Workshop on Logics of Programs, Lecture Notes in Computer Science, Vol. 131 (Springer, Berlin, 1981) pp. 52–71.
E.M. Clarke and E.A. Emerson, “Characterizing properties of parallel programs as fixed-point,” in Seventh International Colloquium on Automata, Languages, and Programming, Vol. 85 of LNCS, 1981.
E. Clarke, O. Grumberg, K. McMillan, and X. Zhao, “Efficient generation of counterexamples and witnesses in symbolic model checking,” in Design Automation Conference 1995, pp. 427–432.
E.M. Clarke, O. Grumberg, and D. Peled, Model Checking, MIT Press, 1999.
E.A. Emerson and J.Y. Halpern, “'Sometimes' and' Not Never' revisited: On branching versus linear time temporal logic,” Journal of the Association for Computing Machinery, Vol. 33, No. 1, pp. 151–178, 1986.
O. Grumberg and D. Long, “Model checking and modular verification,” in J.C.M. Baeten and J.F. Groote, (Eds), Procceedings of CONCUR '91: 2nd International Conference on Concurrency Theory, Vol. 527 of LNCS, 1991.
R. Hojati, R.K. Brayton, and R.P. Kurshan, “BDD-based debugging of designs using language containment and fair CTL,” in CAV '93, pp. 41–58.
O. Kupferman and M.Y. Vardi, “Vacuity Detection in Temporal Model Checking,” in CHARME 99, LNCS 1703, Springer-Verlag 1999.
R. Kurshan, Analysis of Discrete Event Coordination, LNCS 1990.
D. Long, “Model Checking, Abstraction and Compositional Verification,” Ph.D. Thesis, CMU, 1993.
Edwin D. Mares, “Relevance Logic,” The Stanford Encyclopedia of Philosophy, (Fall 1999 Edition), Edward N. Zalta (Ed.), URL=http://plato.stanford.edu/archives/win1999/entries/logic-relevance/.
K.L. McMillan, Symbolic Model Checking, Kluwer Academic Publishers, 1993.
R. Milner. “An algebraic definition of simulation between programs,” in Proc. 2nd International Joint Conference on Artificial Intelligence, British Computer Society, September 1971.
B. Plessier and C. Pixley, “Formal verification of a commercial serial bus interface,” in International Phoenix Conference on Computers and Communications, 1995, pp. 378–382.
A. Pnueli, “A temporal logic of concurrent programs,” Theoretical Computer Science, Vol. 13, pp. 45–60, 1981.
A. Pnueli, “Linear and Branching Structures in the semantics and logics of reactive systems,” in Proc. 12th Int. Colloquium on Automata, Languages and Programming, Lecture Notes in Computer Science, Springer-Verlag, 1985.
A. Pnueli, N. Shankar, and E. Singerman, “Fair synchronous transition systems and their liveness proofs,” in A.P. Ravn and H. Rischel, (Eds), FTRTFT 98: 5th International School and Symposium on Formal Techniques in Real-time and Fault-tolerant Systems, Lecture Notes in Computer Science, Springer-Verlag, 1998.
A. Pnueli, Question from the Audience, CAV '97.
G. Shurek and O. Grumberg, “The computer-aided modular framework—motivation, solutions and evaluation criteria,” in Workshop on Computer Aided Verification, 1990.
Author information
Authors and Affiliations
Rights and permissions
About this article
Cite this article
Beer, I., Ben-David, S., Eisner, C. et al. Efficient Detection of Vacuity in Temporal Model Checking. Formal Methods in System Design 18, 141–163 (2001). https://doi.org/10.1023/A:1008779610539
Issue Date:
DOI: https://doi.org/10.1023/A:1008779610539