Abstract
We present second-order value numbering, a new optimization method for suppressing redundancy, in a version tailored to the application for optimizing the decision procedure of jMosel, a verification tool set for monadic second-order logic on strings (M2L(Str)). The method extends the well-known concept of value numbering to consider not merely values, but semantics transformers that can be efficiently pre-computed and help to avoid redundancy at the 2nd-order level. Since decision procedures for M2L are non-elementary, an optimization method like this can have a great impact on the execution time, even though our decision procedure comprises the analysis and optimization time for second-order value numbering. This is illustrated considering a parametric family of hardware circuits, where we observed a performance gain by a factor of 3. This result is surprising, as the design of these circuits exploits already structural similarity.
| Original language | English |
|---|---|
| Journal | Electronic Communications of the EASST |
| Volume | 30 |
| DOIs | |
| Publication status | Published - 2010 |
| Externally published | Yes |
Keywords
- (second-order) value numbering
- Monadic second-order logic
- Program analysis and optimization
Fingerprint
Dive into the research topics of 'Second-order value numbering'. Together they form a unique fingerprint.Cite this
- APA
- Author
- BIBTEX
- Harvard
- Standard
- RIS
- Vancouver