Constructing Automata from Temporal Logic Formulas: A Tutorial⋆ (original) (raw)

An automata-theoretic approach to linear temporal logic

Logics for concurrency, 1996

The automata-theoretic approach to linear temporal logic uses the theory of automata as a unifying paradigm for program specification, verification, and synthesis. Both programs and specifications are in essence descriptions of computations. These computations can be viewed as words over some alphabet. Thus, programs and specifications can be viewed as descriptions of languages over some alphabet. The automata-theoretic perspective considers the relationships between programs and their specifications as relationships between languages. By translating programs and specifications to automata, questions about programs and their specifications can be reduced to questions about automata. More specifically, questions such as satisfiability of specifications and correctness of programs with respect to their specifications can be reduced to questions such as nonemptiness and containment of automata. Unlike classical automata theory, which focused on automata on finite words, the applications to program specification, verification, and synthesis, use automata on infinite words, since the computations in which we are interested are typically infinite. This paper provides an introduction to the theory of automata on infinite words and demonstrates its applications to program specification, verification, and synthesis.

Improved Automata Generation for Linear Temporal Logic

Lecture Notes in Computer Science, 1999

We improve the state-of-the-art algorithm for obtaining an automaton from a linear temporal logic formula. The automaton is intended to be used for model checking, as well as for satisfiability checking. Therefore, the algorithm is mainly concerned with keeping the automaton as small as possible. The experimental results show that our algorithm outperforms the previous one, with respect to both the size of the generated automata and computation time. The testing is performed following a newly developed methodology based on the use of randomly generated formulas.

On-the-fly automata construction for dynamic linear time temporal logic

Proceedings. 11th International Symposium on Temporal Representation and Reasoning, 2004. TIME 2004., 2004

We present a tableau-based algorithm for obtaining a Büchi automaton from a formula in Dynamic Linear Time Temporal Logic (DLT L), a logic which extends LTL by indexing the until operator with regular programs. The construction of the states of the automaton is similar to the standard construction for LT L, but a different technique must be used to verify the fulfillment of until formulas. The resulting automaton is a Büchi automaton rather than a generalized one. The construction can be done on-the-fly, while checking for the emptiness of the automaton.

Tableau-based automata construction for dynamic linear time temporal logic*

Annals of Mathematics and Artificial Intelligence, 2006

We present a tableau-based algorithm for obtaining a Büchi automaton from a formula in Dynamic Linear Time Temporal Logic (DLTL), a logic which extends LTL by indexing the until operator with regular programs. The construction of the states of the automaton is similar to the standard construction for LTL, but a different technique must be used to verify the fulfillment of until formulas. The resulting automaton is a Büchi automaton rather than a generalized one. The construction can be done on-the-fly, while checking for the emptiness of the automaton. We also extend the construction to the Product Version of DLTL.

Timed Automata: Semantics, Algorithms and Tools

2003

This chapter is to provide a tutorial and pointers to results and related work on timed automata with a focus on semantical and algorithmic aspects of verification tools. We present the concrete and abstract semantics of timed automata (based on transition rules, regions and zones), decision problems, and algorithms for verification. A detailed description on DBM (Difference Bound Matrices) is included, which is the central data structure behind several verification tools for timed systems. As an example, we give a brief introduction to the tool Uppaal.

Simple on-the-fly automatic verification of linear temporal logic

… Testing and Verification, 1995

We present a tableau-based algorithm for obtaining an automaton from a temporal logic formula. The algorithm is geared towards being used in model checking in an "on-the-fly" fashion, that is the automaton can be constructed simultaneously with, and guided by, the generation of the model. In particular, it is possible to detect that a property does not hold by only constructing part of the model and of the automaton. The algorithm can also be used to check the validity of a temporal logic assertion. Although the general problem is PSPACE-complete, experiments show that our algorithm performs quite well on the temporal formulas typically encountered in verification. While basing linear-time temporal logic model-checking upon a transformation to automata is not new, the details of how to do this efficiently, and in "on-the-fly" fashion have never been given.

Automata-based Verification of Linear Temporal Logic Models with Bounded Variability

2012 19th International Symposium on Temporal Representation and Reasoning, 2012

A model has variability bounded by v/k when the state changes at most v times over any linear interval containing k time instants. When interpreted over models with bounded variability, specification formulae that contain redundant metric information-through the usage of next operators-can be simplified without affecting their validity. This paper shows how to harness this simplification in practice: we present a translation of LTL into Büchi automata that removes redundant metric information, hence makes for more efficient verification over models with bounded variability. To show the feasibility of the approach, we also implement a proofof-concept translation in ProMeLa and verify it using the Spin off-the-shelf model checker.

Timed Temporal Logics for Abstracting Transient States

Proceedings of the 4th International Conference on Automated Technology For Verification and Analysis, 2006

In previous work, the timed logic TCTL was extended with an "almost everywhere" Until modality which abstracts negligible sets of positions (i.e. with a null duration) along a run of a timed automaton. We propose here an extension of this logic with more powerful modalities, in order to specify properties abstracting transient states, which are events that last for less than k time units. Our main result is that modelchecking is still decidable and PSPACE-complete for this extension. On the other hand, a second semantics is defined, in which we consider the total duration where the property does not hold along a run. In this case, we prove that model-checking is undecidable. evolve at the rate of time (as in timed automata), are sometimes not expressive enough, hybrid variables (with multiple slopes) have been considered. The resulting model of hybrid automata has been largely studied in the subsequent years [16]. However, while some decidability results could be obtained [3, 18], using stopwatches (i.e. variables with slopes 0 and 1) already leads to undecidability for the reachability problem [2]. Further research has thus been devoted to weaker models where hybrid variables are only used as observers, i.e. are not tested in the automaton and thus play no role during a computation. These variables, sometimes called costs or prices in this context can be used in an optimization criterium [3, 7, 8, 11] or as constraints in temporal logic formulas. For instance, the logic WCTL [12, 10], interpreted over timed automata extended with costs, adds cost contraints on modalities: it is possible to express that a given state is reachable within a fixed cost bound. Abstracting transient states. When practical examples are considered, the need for abstracting transient states often happens. For example, modeling the instantaneous changes of a variable may introduce artificial (and thus non pertinent) transient states in the model. This motivated the work in [9], where configurations with zero duration could be abstracted by introducing into TCTL the almost everywhere U a modality. However, this is not sufficient in some cases. Contribution. In this paper, we propose an extension of TCTL called TCTL ∆ , which brings out a powerful generalization of the results in [9]. We introduce a new modality U k , where k ∈ N is a parameter, in order to abstract events that do not last continuously for at least k time units (t.u). For example, AF 2 ≤100 alarm expresses that for any execution, the atomic proposition alarm becomes true before 100 t.u and will hold for at least 2 time units. One also could express the fact that an event a precedes an event b along any run, an event being actually considered iff it lasts for at least k time units: the formula ArequestP 3 grant states that along any run where grant has occurred for a duration greater than 3, a request has been emitted continusously for a duration greater than 3. We prove that model-checking for TCTL ∆ is still PSPACE-complete. While the analogous result for TCTL or the extended version of [9] relies on the standard notion of equivalent runs, we have to define a stronger form for this equivalence, in order to obtain the consistency of TCTL ∆-formulae on the regions of the timed automaton. Finally, we also consider a global semantics, called TCTL ∆ Σ , for which the global duration during which a property does not hold, is bounded by a fixed constant k. Although this semantics is more natural and uses only observer hybrid variables in the model, we prove that model-checking TCTL ∆ Σ is undecidable. Outline. Section 2 recalls the main features of timed automata model and gives definitions for the syntax and semantics of our extended logics. Sections 3 and 4 are devoted to the model-checking of TCTL ∆ and, in the last section, we show that model-checking the extended logic TCTL ∆ Σ is undecidable.

Final report:‘Analysis and Mechanisation of Decidable First-Order Temporal Logics’

First-order temporal logic (FOTL) has long been regarded by many as a perfect formalism for program specification and verification, temporal databases, synthesis of programs, model checking, temporal knowledge representation and reasoning, etc. The fatal problem was that mechanisation seemed out of the question, because only 'negative' results (undecidability, non-recursive enumerability) were known. The starting point of this project was the discovery in [HWZ00] of decidable and yet rather expressive 'monodic' fragments of FOTL, which opened new and exciting opportunities for using FOTL in various areas of computer science and artificial intelligence.