From PSL to NBA: a Modular Symbolic Encoding

The IEEE standard property specification language (PSL) allows to express all omega-regular properties mixing linear temporal logic (LTL) with sequential extended regular expressions (SEREs), and is increasingly used in many phases of the hardware design cycle, from specification to verification. Many verification engines are able to manipulate nondeterministic Buchi automata (NBA), that can represent omega-regular properties. Thus, the ability to convert PSL into NBA is an important enabling factor for the reuse of a large wealth of verification tools. Recent works propose a two-step conversion from PSL to NBA: first, the PSL property is encoded into an alternating Buchi automaton (ABA); then, the ABA is converted into an NBA with variants of Miyano-Hayashi's construction. These approaches are problematic in practice: in fact, they are often unable to carry out the conversion in acceptable time, even for PSL specifications of moderate size. In this paper, we propose a modular encoding of PSL into symbolically represented NBA. We convert a PSL property into a normal form that separates the LTL and the SERE components. Each of these components can be processed separately, so that the NBA corresponding to the original PSL property is presented in the form of an implicit product, delaying composition until search time. Our approach has two other advantages: first, we can leverage mature techniques for the LTL components; second, we leverage the particular form of the PSL components that appear in the normal form to improve over the general translation. The transformation is proved correct. A thorough experimental analysis over large sets of paradigmatic properties (from patterns of properties commonly used in practice) shows that our approach drastically reduces the construction time of the symbolic NBA, and positively affects the overall verification time

[1]  Carsten Fritz,et al.  Constructing Büchi Automata from Linear Temporal Logic Using Simulation Relations for Alternating Büchi Automata , 2003, CIAA.

[2]  Orna Kupferman,et al.  Resets vs. Aborts in Linear Temporal Logic , 2003, TACAS.

[3]  Zohar Manna,et al.  The Temporal Logic of Reactive and Concurrent Systems , 1991, Springer New York.

[4]  Stephan Merz,et al.  Model Checking , 2000 .

[5]  Edmund M. Clarke,et al.  Another Look at LTL Model Checking , 1994, Formal Methods Syst. Des..

[6]  Jeffrey D. Ullman,et al.  Introduction to Automata Theory, Languages and Computation , 1979 .

[7]  Amir Pnueli,et al.  PSL Model Checking and Run-Time Verification Via Testers , 2006, FM.

[8]  Timo Latvala,et al.  Incremental and Complete Bounded Model Checking for Full PLTL , 2005, CAV.

[9]  Fabio Somenzi,et al.  Efficient Büchi Automata from LTL Formulae , 2000, CAV.

[10]  Viktor Schuppan,et al.  Efficient reduction of finite state model checking to reachability analysis , 2004, International Journal on Software Tools for Technology Transfer.

[11]  Satoru Miyano,et al.  Alternating Finite Automata on omega-Words , 1984, CAAP.

[12]  Chin-Laung Lei,et al.  Efficient Model Checking in Fragments of the Propositional Mu-Calculus (Extended Abstract) , 1986, LICS.

[13]  Martin Lange,et al.  Bounded Model Checking for Weak Alternating Büchi Automata , 2006, CAV.

[14]  Pierre Wolper,et al.  Memory-efficient algorithms for the verification of temporal properties , 1990, Formal Methods Syst. Des..

[15]  Orna Grumberg,et al.  Regular Vacuity , 2005, CHARME.

[16]  David E. Muller,et al.  Alternating Automata, the Weak Monadic Theory of Trees and its Complexity , 1992, Theor. Comput. Sci..

[17]  Hiroaki Yamamoto An Automata-Based Recognition Algorithm for Semi-extended Regular Expressions , 2000, MFCS.

[18]  Orna Kupferman,et al.  Weak alternating automata are not that weak , 2001, TOCL.

[19]  Moshe Y. Vardi An Automata-Theoretic Approach to Linear Temporal Logic , 1996, Banff Higher Order Workshop.

[20]  Fred Kröger,et al.  Temporal Logic of Programs , 1987, EATCS Monographs on Theoretical Computer Science.

[21]  Marco Roveri,et al.  Symbolic Implementation of Alternating Automata , 2006, CIAA.

[22]  Amir Pnueli,et al.  The Glory of the Past , 1985, Logic of Programs.

[23]  Fausto Giunchiglia,et al.  NUSMV: A New Symbolic Model Verifier , 1999, CAV.

[24]  Paul Gastin,et al.  Fast LTL to Büchi Automata Translation , 2001, CAV.

[25]  Orna Kupferman,et al.  An Improved Algorithm for the Membership Problem for Extended Regular Expressions , 2002, MFCS.