An Algorithmic Approach for Checking Closure Properties of Temporal Logic Specifications and Omega-Regular Languages

Abstract In concurrency theory, there are several examples where the interleaved model of concurrency can distinguish between execution sequences which are not significantly different. One such example is sequences that differ from each other by stuttering, i.e., the number of times a state can adjacently repeat. Another example is executions that differ only by the ordering of independently executed events. Considering these sequences as different is semantically rather meaningless. Nevertheless, specification languages that are based on interleaving semantics, such as linear temporal logic (LTL), can distinguish between them. This situation has led to several attempts to define languages that cannot distinguish between such equivalent sequences. In this paper, we take a different approach to this problem: we develop algorithms for deciding if a property cannot distinguish between equivalent sequences, i.e., is closed under the equivalence relation. We focus on properties represented by regular languages, ω-regular languages, or prepositional LTL formulas and show that for such properties there is a wide class of equivalence relations for which determining closure is decidable, in fact is in PSPACE. Hence, checking the closure of a specification is no more difficult than checking satisfiability of a temporal formula. Among the closure properties we are able to handle, one finds trace closedness, stutter closedness and projective closedness, for all of which we are also able to prove a PSPACE lower bound. Being able to check that a property is closed under an equivalence relation has an immediate application in state-space exploration based verification. Indeed, the knowledge that the specification does not distinguish between equivalent execution sequences allows constructing a reduced state space where it is sufficient that at least one sequence per equivalence class is represented.

[1]  J. Van Leeuwen,et al.  Handbook of theoretical computer science - Part A: Algorithms and complexity; Part B: Formal models and semantics , 1990 .

[2]  A. Prasad Sistla,et al.  The complexity of propositional linear temporal logics , 1982, STOC '82.

[3]  Jean-Pierre Pécuchet Etude Syntaxique des Parties Reconnaissables de Mots Infinis , 1988, Theor. Comput. Sci..

[4]  P. S. Thiagarajan,et al.  A trace based extension of linear time temporal logic , 1994, Proceedings Ninth Annual IEEE Symposium on Logic in Computer Science.

[5]  Antti Valmari,et al.  A stubborn attack on state explosion , 1990, Formal Methods Syst. Des..

[6]  Wojciech Penczek,et al.  Model-checking of causality properties , 1995, Proceedings of Tenth Annual IEEE Symposium on Logic in Computer Science.

[7]  Dexter Kozen,et al.  Lower bounds for natural proof systems , 1977, 18th Annual Symposium on Foundations of Computer Science (sfcs 1977).

[8]  Doron A. Peled,et al.  Combining partial order reductions with on-the-fly model-checking , 1994, Formal Methods Syst. Des..

[9]  Amir Pnueli,et al.  Proving Partial Order Properties , 1994, Theor. Comput. Sci..

[10]  Pierre Wolper,et al.  Partial-Order Methods for Temporal Verification , 1993, CONCUR.

[11]  Doron A. Peled On Projective and Separable Properties , 1997, Theor. Comput. Sci..

[12]  Wolfgang Thomas,et al.  Automata on Infinite Objects , 1991, Handbook of Theoretical Computer Science, Volume B: Formal Models and Sematics.

[13]  Leslie Lamport,et al.  How to Make a Multiprocessor Computer That Correctly Executes Multiprocess Programs , 2016, IEEE Transactions on Computers.

[14]  Pierre Wolper,et al.  Automata theoretic techniques for modal logics of programs: (Extended abstract) , 1984, STOC '84.

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

[16]  Pierre Wolper,et al.  An Algorithmic Approach for Checking Closure Properties of omega-Regular Languages , 1996, CONCUR.

[17]  Anca Muscholl,et al.  Über die Erkennbarkeit unendlicher Spuren , 1994 .

[18]  Doron A. Peled,et al.  All from One, One for All: on Model Checking Using Representatives , 1993, CAV.

[19]  Igor Walukiewicz,et al.  An expressively complete linear time temporal logic for Mazurkiewicz traces , 1997, Proceedings of Twelfth Annual IEEE Symposium on Logic in Computer Science.

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

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

[22]  Jean-Pierre Péchuchet Etude Syntaxique des Parties Reconnaissables de Mots Infinis , 1986 .

[23]  Patrice Godefroid Using Partial Orders to Improve Automatic Verification Methods , 1990, CAV.

[24]  Leslie Lamport,et al.  What Good is Temporal Logic? , 1983, IFIP Congress.

[25]  Jean-Eric Pin Formal Properties of Finite Automata and Applications , 1988, Lecture Notes in Computer Science.

[26]  Pierre Wolper,et al.  The Complementation Problem for Büchi Automata with Appplications to Temporal Logic , 1987, Theor. Comput. Sci..