ACM Home Page
Please provide us with feedback. Feedback
An optimizing compiler for batches of temporal logic formulas
Full text PdfPdf (282 KB)
Source International Symposium on Software Testing and Analysis archive
Proceedings of the 2004 ACM SIGSOFT international symposium on Software testing and analysis table of contents
Boston, Massachusetts, USA
SESSION: Model checking I table of contents
Pages: 183 - 194  
Year of Publication: 2004
ISBN:1-58113-820-2
Also published in ...
Author
James Ezick  Cornell University
Sponsors
SIGSOFT: ACM Special Interest Group on Software Engineering
ACM: Association for Computing Machinery
Publisher
ACM  New York, NY, USA
Bibliometrics
Downloads (6 Weeks): 1,   Downloads (12 Months): 25,   Citation Count: 0
Additional Information:

abstract   references   index terms   collaborative colleagues  

Tools and Actions: Request Permissions Request Permissions    Review this Article  
DOI Bookmark: Use this link to bookmark this Article: http://doi.acm.org/10.1145/1007512.1007537
What is a DOI?

ABSTRACT

Model checking based on validating temporal logic formulas has proven practical and effective for numerous software engineering applications. As systems based on this approach have become more mainstream, a need has arisen to deal effectively with large batches of formulas over a common model. Presently, most systems validate formulas one at a time, with little or no interaction between validation of separate formulas. This is the case despite the fact that, for a wide range of applications, a certain level of redundancy between domain-related formulas can be anticipated.This paper presents an optimizing compiler for batches of temporal logic formulas. A component of the Carnauba model checking system, this compiler addresses the need to handle batches of temporal logic formulas by leveraging the framework common to optimizing programming language compilers. Just as traditional optimizing compilers attempt to exploit redundancy and other solvable properties in a program to reduce the demand on a runtime system, this compiler exploits similar properties in groups of formulas to reduce the demand on a model checking engine. Optimizations are performed via a set of distinct, interchangeable optimization passes operating on a common intermediate representation. The intermediate representation captures the full modal mu-calculus, and the optimization techniques are applicable to any temporal logic subsumed by that logic. The compiler offers a unified framework for expressing some well understood single-formula optimizations as well as numerous inter-formula optimizations that capitalize on redundancy, logical implication, and, optionally, model-specific knowledge. It is capable of working either in place of, or as a preprocessor for, other optimization algorithms. The result is a system that, when applied to a potentially heterogeneous collection of formulas over a common problem domain, is able to measurably reduce the time and space requirements of the subsequent model checking engine.


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
 
2
 
3
 
4
 
5
 
6
 
7
 
8
 
9
10
 
11
12
 
13
E. A. Emerson and C.-L. Lei. Efficient model checking in fragments of the propositional mu-calculus. In Proceedings, Symposium on Logic in Computer Science, pages 267--278, Cambridge, Massachusetts, June 1986. IEEE Computer Society.
 
14
J. Ezick, D. W. Richardson, and T. Teitelbaum. Practical model checking and example generation for context-free processes. Technical Report TR2002-1851, Cornell University, August 2001.
 
15
 
16
 
17
 
18
K. Kennedy. A survey of data flow analysis techniques. In S. Muchnick and N. D. Jones, editors, Program Flow Analysis: Theory and Applications, chapter 1, pages 5--54. Prentice-Hall, 1981.
 
19
D. Kozen. Results on the propositional μ-calculus. Theoretical Computer Science (TCS), 27:333--354, 1983.
20
21
 
22
N. Shilov and K. Yi. A new proof of exponential decidability for propositional mu-calculus with program converse. In III International Conference on Theoretical Aspects of Computer Science, Novi Sad, Yugoslavia, September 2000.
 
23
24
 
25
26