AMORE—a system for computing automata, monoids and regular expressions
Proceedings of the 6th Annual Symposium on Theoretical Aspects of Computer Science on STACS 89
AUTOMATE, a computing package for automata and finite semigroups
Journal of Symbolic Computation
The temporal logic of reactive and concurrent systems
The temporal logic of reactive and concurrent systems
Grail: a C++ library for automata and expressions
Journal of Symbolic Computation - Special issue on “algorithms: implementation, libraries and use”
Model checking
Introduction To Automata Theory, Languages, And Computation
Introduction To Automata Theory, Languages, And Computation
Efficient Automata-Based Assertion-Checker Synthesis of SEREs for Hardware Emulation
ASP-DAC '07 Proceedings of the 2007 Asia and South Pacific Design Automation Conference
Symbolic String Verification: An Automata-Based Approach
SPIN '08 Proceedings of the 15th international workshop on Model Checking Software
Rex: Symbolic Regular Expression Explorer
ICST '10 Proceedings of the 2010 Third International Conference on Software Testing, Verification and Validation
Minimization of non-deterministic automata with large alphabets
CIAA'05 Proceedings of the 10th international conference on Implementation and Application of Automata
IEEE Transactions on Computer-Aided Design of Integrated Circuits and Systems
Hi-index | 0.01 |
Practical property specification languages such as the IEEE standard PSL use at their core Sequential Extended Regular Expressions (SERE). In order to enable the reuse of traditional verification techniques, it is necessary to translate SEREs into automata. SERE are regular expressions built over alphabets resulting from the state variables of the design under analysis. Thus, a traditional approach to generate the automaton would suffer from the fact that the size of the alphabet is exponential in the number of symbols in the design. In this work, we tackle this problem by proposing non-deterministic finite automata with symbolic representation of transitions labels, by way of propositional formulas, while states and transitions are explicitly represented. We provide a symbolic version of the algorithms for all the major operations over nondeterministic finite automata. The approach has been implemented in the AUTLIB library, with Binary Decision Diagrams (BDD) used to represent transition labels. We carried out a thorough experimental evaluation over a set of realistic benchmarks, comparing our library against MONA (which uses deterministic finite automata with BDD-based symbolic transitions), and against GRAZ (which features non-deterministic finite automata with a DNF-based representation of the labels). Experimental results over a realistic set of benchmarks show that both features of AUTLIB (the ability to deal with non-determinism, and a BDD-based treatment of labels) are fundamental to achieve acceptable performance.