Bridging the gap between fair simulation and trace inclusion

The paper considers the problem of checking abstraction between two finite-state fair discrete systems. In automata-theoretic terms this is trace inclusion between two nondeterministic Streett automata. We propose to reduce this problem to an algorithm for checking fair simulation between two generalized Buchi automata. For solving this question we present a new triply nested @m-calculus formula which can be implemented by symbolic methods. We then show that every trace inclusion of this type can be solved by fair simulation, provided we augment the concrete system (the contained automaton) by an appropriate 'non-constraining' automaton. This establishes that fair simulation offers a complete method for checking trace inclusion for finite-state systems. We illustrate the feasibility of the approach by algorithmically checking abstraction between finite state systems whose abstraction could only be verified by deductive methods up to now.

[1]  Robert S. Streett,et al.  Propositional Dynamic Logic of Looping and Converse Is Elementarily Decidable , 1982, Inf. Control..

[2]  Somesh Jha,et al.  An Improved Algorithm for the Evaluation of Fixpoint Expressions , 1994, Theor. Comput. Sci..

[3]  Zohar Manna,et al.  Temporal Verification of Reactive Systems , 1995, Springer New York.

[4]  Shmuel Safra,et al.  Exponential determinization for ω-automata with strong-fairness acceptance condition (extended abstract) , 1992, STOC '92.

[5]  Thomas A. Henzinger,et al.  Fair Bisimulation , 2000, TACAS.

[6]  Neil Immerman,et al.  Descriptive Complexity and Finite Models , 1997 .

[7]  Yuri Gurevich,et al.  Trees, automata, and games , 1982, STOC '82.

[8]  Dexter Kozen,et al.  RESULTS ON THE PROPOSITIONAL’p-CALCULUS , 2001 .

[9]  Edward Y. Chang,et al.  STeP: The Stanford Temporal Prover , 1995, TAPSOFT.

[10]  Pierre Wolper,et al.  Reasoning About Infinite Computations , 1994, Inf. Comput..

[11]  Edmund M. Clarke,et al.  Characterizing Correctness Properties of Parallel Programs Using Fixpoints , 1980, ICALP.

[12]  Amir Pnueli,et al.  Verification by Augmented Finitary Abstraction , 2000, Inf. Comput..

[13]  Rajeev Alur,et al.  Playing Games with Boxes and Diamonds , 2003, CONCUR.

[14]  Zohar Manna,et al.  Temporal verification of reactive systems - safety , 1995 .

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

[16]  Martín Abadi,et al.  The existence of refinement mappings , 1988, [1988] Proceedings. Third Annual Information Symposium on Logic in Computer Science.

[17]  Thomas A. Henzinger,et al.  From verification to control: dynamic programs for omega-regular objectives , 2001, Proceedings 16th Annual IEEE Symposium on Logic in Computer Science.

[18]  Somesh Jha,et al.  An Improved Algorithm for the Evaluation of Fixpoint Expressions , 1997, Theor. Comput. Sci..

[19]  David A. Schmidt,et al.  Calois Connections and Computer Science Applications , 1985, CTCS.

[20]  Pierre Wolper Temporal Logic Can Be More Expressive , 1983, Inf. Control..

[21]  Randal E. Bryant,et al.  Graph-Based Algorithms for Boolean Function Manipulation , 1986, IEEE Transactions on Computers.

[22]  P. S. Thiagarajan,et al.  A Modal Logic for a Subclass of Event Structures , 1987, ICALP.

[23]  Thomas A. Henzinger,et al.  Computing simulations on finite and infinite graphs , 1995, Proceedings of IEEE 36th Annual Foundations of Computer Science.

[24]  Pierre Wolper,et al.  Verifying Properties of Large Sets of Processes with Network Invariants , 1990, Automatic Verification Methods for Finite State Systems.

[25]  Helmut Seidl Fast and Simple Nested Fixpoints , 1996, Inf. Process. Lett..

[26]  Orna Kupferman,et al.  Fair Equivalence Relations , 2000, Verification: Theory and Practice.

[27]  Amir Pnueli,et al.  Algorithmic Verification of Linear Temporal Logic Specifications , 1998, ICALP.

[28]  Amir Pnueli,et al.  A Platform for Combining Deductive with Algorithmic Verification , 1996, CAV.

[29]  Amir Pnueli,et al.  The temporal logic of programs , 1977, 18th Annual Symposium on Foundations of Computer Science (sfcs 1977).

[30]  Yaacov Choueka,et al.  Theories of Automata on omega-Tapes: A Simplified Approach , 1974, J. Comput. Syst. Sci..

[31]  Amir Pnueli,et al.  Network Invariants in Action , 2002, CONCUR.

[32]  Amir Pnueli,et al.  Control and data abstraction: the cornerstones of practical formal verification , 2000, International Journal on Software Tools for Technology Transfer.

[33]  Thomas A. Henzinger,et al.  Fair Simulation , 1997, Inf. Comput..

[34]  Orna Kupferman,et al.  Weak alternating automata and tree automata emptiness , 1998, STOC '98.

[35]  Orna Grumberg,et al.  Model checking and modular verification , 1994, TOPL.

[36]  Bard Bloom,et al.  Transformational Design and Implementation of a New Efficient Solution to the Ready Simulation Problem , 1995, Sci. Comput. Program..

[37]  Marcin Jurdzinski,et al.  Small Progress Measures for Solving Parity Games , 2000, STACS.

[38]  Moshe Y. Vardi Verification of Concurrent Programs: The Automata-Theoretic Framework , 1991, Ann. Pure Appl. Log..

[39]  Robin Milner,et al.  An Algebraic Definition of Simulation Between Programs , 1971, IJCAI.