|
ABSTRACT
Even when a system is proven to be correct with respect to a specification, there is still a question of how complete the specification is, and whether it really covers all the behaviors of the system. Coverage metrics attempt to check which parts of a system are actually relevant for the verification process to succeed. Recent work on coverage in model checking suggests several coverage metrics and algorithms for finding parts of the system that are not covered by the specification. The work has already proven to be effective in practice, detecting design errors that escape early verification efforts in industrial settings. In this article, we relate a formal definition of causality given by Halpern and Pearl to coverage. We show that it gives significant insight into unresolved issues regarding the definition of coverage and leads to potentially useful extensions of coverage. In particular, we introduce the notion of responsibility, which assigns to components of a system a quantitative measure of their relevance to the satisfaction of the specification.
REFERENCES
Note: OCR errors may be found in this Reference List extracted from the full text article. ACM has opted to expose the complete List rather than only correct and linked references.
| |
1
|
Ammann, P. and Black, P. 2001. A specification-based coverage metric to evaluate test sets. Int. J. Qual. Reliabil. Safety Eng. 8, 4, 275--300.
|
 |
2
|
|
| |
3
|
|
| |
4
|
|
| |
5
|
|
| |
6
|
Budd, T. 1981. Mutation analysis: Ideas, examples, problems, and prospects. In Computer Program Testing. B. Chandrasekaran and S. Radichi, Eds. North-Holland, Amsterdam, The Netherlands, 129--148.
|
| |
7
|
Budd, T. and Angluin, D. 1982. Two notions of correctness and their relation to testing. Acta Informatica 18, 31--45.
|
| |
8
|
Chockler, H. and Halpern, J. Y. 2004. Responsibility and blame: A structural-model approach. J. Art. Intell. Res. 22, 93--115.
|
| |
9
|
|
| |
10
|
|
| |
11
|
|
| |
12
|
Chockler, H., Kupferman, O., and Vardi, M. 2003. Coverage metrics for formal verification. In Correct Hardware Design and Verification Methods (CHARME). Lecture Notes in Computer Science, vol. 2860. Springer-Verlag, Berlin, Germany, 111--125.
|
 |
13
|
E. M. Clarke , O. Grumberg , K. L. McMillan , X. Zhao, Efficient generation of counterexamples and witnesses in symbolic model checking, Proceedings of the 32nd ACM/IEEE conference on Design automation, p.427-432, June 12-16, 1995, San Francisco, California, United States
[doi> 10.1145/217474.217565]
|
| |
14
|
|
| |
15
|
|
 |
16
|
|
| |
17
|
Eiter, T. and Lukasiewicz, T. 2002a. Causes and explanations in the structural-model approach: tractable cases. In Proceedings of the 18th Conference on Uncertainty in Artificial Intelligence (UAI 2002). 146--153.
|
| |
18
|
|
| |
19
|
Emerson, E. and Clarke, E. 1982. Using branching time logic to synthesize synchronization skeletons. Sci. Comput. Program. 2, 241--266.
|
| |
20
|
|
| |
21
|
Hall, N. 2004. Two concepts of causation. In Causation and Counterfactuals. J. Collins, N. Hall, and L. A. Paul Eds. MIT Press, Cambridge, MA.
|
| |
22
|
Halpern, J. Y. and Pearl, J. 2005. Causes and explanations: A structural-model approach. Part I: Causes. British J. Philos. Sci. 56, 4, 843--887.
|
 |
23
|
Yatin Hoskote , Timothy Kam , Pei-Hsin Ho , Xudong Zhao, Coverage estimation for symbolic model checking, Proceedings of the 36th ACM/IEEE conference on Design automation, p.300-305, June 21-25, 1999, New Orleans, Louisiana, United States
[doi> 10.1145/309847.309936]
|
| |
24
|
Hume, D. 1739. A Treatise of Human Nature. John Noon, London, U.K.
|
 |
25
|
|
| |
26
|
|
| |
27
|
|
| |
28
|
Kupferman, O. and Vardi, M. 2003. Vacuity detection in temporal model checking. J. Softw. Tools Techn. Transf. 4, 2, 224--233.
|
 |
29
|
|
| |
30
|
Kurshan, R. 1998. FormalCheck User's Manual. Cadence Design, Inc., San Jose, CA.
|
| |
31
|
|
| |
32
|
|
| |
33
|
|
 |
34
|
|
| |
35
|
Papadimitriou, C. H. 1994. Computational Complexity, 2nd ed. Addison-Wesley, Reading, MA.
|
| |
36
|
|
| |
37
|
|
 |
38
|
|
REVIEW
"Paparao S Kavalipati : Reviewer"
Properties of finite state systems can be expressed using temporal languages; checking whether a given system satisfies the properties specified is an interesting verification problem. There are tools that provide estimations on how well the testi
more...
|