Coverage metrics for formal verification

Hana Chockler*, Orna Kupferman, Moshe Vardi

*Corresponding author for this work

Research output: Contribution to journalArticlepeer-review

26 Scopus citations

Abstract

In formal verification, we verify that a system is correct with respect to a specification. Even when the system is proven to be correct, there is still a question of how complete the specification is and whether it really covers all the behaviors of the system. The challenge of making the verification process as exhaustive as possible is even more crucial in simulation-based verification, where the infeasible task of checking all input sequences is replaced by checking a test suite consisting of a finite subset of them. It is very important to measure the exhaustiveness of the test suite, and indeed there has been extensive research in the simulation-based verification community on coverage metrics, which provide such a measure. It turns out that no single measure can be absolute, leading to the development of numerous coverage metrics whose usage is determined by industrial verification methodologies. On the other hand, prior research of coverage in formal verification has focused solely on state-based coverage. In this paper we adapt the work done on coverage in simulation-based verification to the formal-verification setting in order to obtain new coverage metrics. Thus, for each of the metrics used in simulation-based verification, we present a corresponding metric that is suitable for the setting of formal verification and describe an algorithmic way to check it.

Original languageEnglish
Pages (from-to)373-386
Number of pages14
JournalInternational Journal on Software Tools for Technology Transfer
Volume8
Issue number4-5
DOIs
StatePublished - Aug 2006

Keywords

  • Algorithms
  • Coverage metrics
  • Formal verification
  • Model checking

Fingerprint

Dive into the research topics of 'Coverage metrics for formal verification'. Together they form a unique fingerprint.

Cite this