Professional Documents
Culture Documents
Abstract: The translation of LTL formula into equivalent Büchi automata plays an important role in many algorithms for LTL model
checking, which consist in obtaining a Büchi automaton that is equivalent to the software system specification and another one that is
equivalent to the negation of the property. The intersection of the two Büchi automata is empty if the model satisfies the property.
Generating the Büchi automaton corresponding to an LTL formula may, in the worst case, be exponential in the size of the formula,
making the model checking effort exponential in the size of the original formula. There is no polynomial solution for checking
emptiness of the intersection. That comes from the translation step of LTL formula into finite state models. This makes verification
methods hard or even impossible to be implemented in practice. In this paper, we propose a subset of LTL formula which can be
converted to Büchi automata whose the size is polynomial.
Keywords: Linear Temporal Logic, Büchi automata, Model checking, Compositional modelling
www.ijsea.com 54
International Journal of Science and Engineering Applications
Volume 7–Issue 04, 54-63, 2018, ISSN:-2319–7560
Thus, the target Büchi automaton is obtained by exploring the the initial state of A1 to the state s labeled with the
tree in pre-order. proposition p;
The rest of this article is organized as follows: Section 2 b) A transition from snew to a state s labeled with a
briefly describes Büchi automata. In Section 3, we describe proposition p if and only if there is transition from
the initial state of A2 to the state s labeled with the
our fragment of LTL logic and the reasons to choose it. In proposition p
Section 4, we present for each formula in our fragment LTL,
its equivalent Büchi automata and show the proof of this
equivalence. Section 5 presents the finite syntax tree
associated to a formula defined in our fragment LTL while
Section 6 shows the final algorithm that generates to any
formula in our fragment an equivalent Büchi automaton.
Section 7 presents the conclusion and some future works.
www.ijsea.com 55
International Journal of Science and Engineering Applications
Volume 7–Issue 04, 54-63, 2018, ISSN:-2319–7560
For the sake of brevity and the lack of space, we only discuss
here why the fragment θ U φ is included within our LTL
3. Flat LTL Logic fragment to the detriment of both formula φ1U φ2 and φ1 U θ.
In this section, we introduce our subset of LTL logic that we
call Flat LTL Logic. This fragment will be used to express It is well-known the size of an Büchi automaton A that
temporal properties and then translate them into Büchi recognizes the complement language ℒω( A ) of the language
automata in linear size. The syntax of our Flat LTL logic adds
to usual boolean propositional operators ¬ (negation) and ∧ accepted ℒω(A) by an automaton A is exponential [13, 16].
(conjunction), some modal operators that describe how the Suppose we have separately built an automaton A1 for φ1 and
behaviour changes with time. an automaton A2 for φ2, and let us then try to compositionally
obtain the resulting automaton A for φ. According to the until
Next: Xφ requires that the formula φ be true in the operator's semantics, it is required that φ holds at the current
next state; moment, if there is some future moment for which φ2 holds
and φ1 holds at all moments until that future moment. That
Until: φ1 U φ2 requires that the formula φ1 be true means constructing the automaton for φ = φ1 U φ2 firstly
until the formula φ2 is true, which is required to requires constructing of the intersection of A1 and A2 . As
happen;
stated previously, computing A2 is exponential and
Eventually: ◊φ requires that the formula φ be true
at some point in the future (starting from the therefore, constructing the Büchi automaton for φ1 U φ2 is
present) and it is equivalent to ◊ φ ≡ true U φ; exponential. To avoid this kind of formula, we choose the
formula θ U φ to be a part of our LTL subset where the
Release: φ1 R φ2 requires that its second argument construction of the Büchi automaton associated to it, does not
φ2 always be true, a requirement that is released as need to complement any Büchi automaton.
soon as its first argument φ1 becomes true. It is
equivalent to φ1 R φ2 ≡ ¬ (¬ φ1 U ¬ φ2).
3.2 Flat Positive Normal Form (FPNF)
www.ijsea.com 56
International Journal of Science and Engineering Applications
Volume 7–Issue 04, 54-63, 2018, ISSN:-2319–7560
¬ true → false ¬ (φ U θ) → ¬φ R ¬θ
¬ Xφ → X ¬φ ¬ (θ R φ) → ¬θ U ¬φ
3.3 Semantics
4. Construction Of Buchi Automata For
The semantics of LTL formula is defined over infinite1 Flat LTL Logic
sequences σ : ℕ → 2Σ. In other words, a model is an infinite
sequence A0 A1 ⋯ of subsets of Σ. The function σ, called
interpretation function, describes how the truth of atomic Our algorithm is a compositional algorithm. It constructs for
propositions changes as time progresses. For every sequence each sub-formula in our fragment LTL logic, an equivalent
σ, we write σ = (σ(0), ⋯, σ(n), ⋯). Thus, we have the Büchi automaton and in a compositional way regroup all
following notations: resulting Büchi automata in order to get the target Büchi
automaton of the target flat LTL formula.
σ(i) denotes the state at index i and σ(i:j) the part
of σ containing the sequence of states between i In the sequel, we firstly explain for each sub-formula in our
and j; fragment LTL logic how its equivalent Büchi automaton can
be obtained.
σ(i…) =Ai Ai+1 Ai+2 ⋯ denotes the suffix of a
sequence σ = A0 A1 A2 ⋯ ∈ (2Σ)ω starting2 in the (
i+1)st symbol Ai. 4.1 Büchi automata for θ formula
The Büchi automaton associated to a propositional formula θ
We also write σ(i) ⊨ φ to denote that "φ is true at time is obtained by creating two states s0 and s1 and two transitions
instant i in the model σ". This notion is defined inductively, tr1 and tr2. s0 is the only initial state while s1 is the only final
according to the structure of φ. state. tr1 is the transition from s0 to s1 labeling with θ while the
transition tr2 is a loop labeled with true over the state s2.
The LTL formula are interpreted over infinite sequences of
states σ: ℕ → 2Σ as follows:
1
2Σ is the power set of the proposition set Σ.
2 ω: is typically used to denote infinity.
www.ijsea.com 57
International Journal of Science and Engineering Applications
Volume 7–Issue 04, 54-63, 2018, ISSN:-2319–7560
www.ijsea.com 58
International Journal of Science and Engineering Applications
Volume 7–Issue 04, 54-63, 2018, ISSN:-2319–7560
All other transitions of Aφ remain unchanged and final states becomes true and the construction of a Büchi automaton
of Aφ become accept ones of Aψ and initial state of Aψ associated to the fact that θ is true forever. Finally, make the
become the state sinit. union between the two constructed Büchi automata.
Consequently, to build the Büchi automaton for φ R θ, we
need to add two new states si and sf to the set of states of the
automaton Aφ. si becomes the single initial state of the
resulting automaton and sf is added to set of final states of the
resulting automaton. The following transitions are added to
the set of transitions of the resulting automaton:
www.ijsea.com 59
International Journal of Science and Engineering Applications
Volume 7–Issue 04, 54-63, 2018, ISSN:-2319–7560
www.ijsea.com 60
International Journal of Science and Engineering Applications
Volume 7–Issue 04, 54-63, 2018, ISSN:-2319–7560
φ = ◊ a → (b → ((¬f) U (d ∧ (¬e)))) R c.
www.ijsea.com 61
International Journal of Science and Engineering Applications
Volume 7–Issue 04, 54-63, 2018, ISSN:-2319–7560
REFERENCES
Figure 7: building buchi automata: buildBA(T) [5] E.W. Dijkstra. An Algol 60 translator for the x1 and
Making a translator for Algol 60. Technical Report 35,
Mathematisch Centrum, Amsterdam, 1961.
www.ijsea.com 62
International Journal of Science and Engineering Applications
Volume 7–Issue 04, 54-63, 2018, ISSN:-2319–7560
[7] M.B. Dwyer, G.S. Avrunin, and J.C. Corbett. Patterns in [14] S. Safra. Complexity of Automata on Infinite Objects.
property specifications for finite-state verification. In PhD thesis, Weizmann Institute of Science, Rehovot, Israel,
Proceedings of the 21st International Conference on Software March 1989.
Programming, pages 411 - 420, 1999.
[15] A.P. Sistla and E.M. Clarke. The complexity of
[8] P. Gastin and D. Oddoux. Fast LTL to Buchi automata propositional linear temporal logics. J. ACM, 32(3):733- 749,
translation. In Proceedings of the 13th International july 1985.
Conference on Computer Aided Verification (CAV'01),
volume 2102 of LNCS, pages 53- 65, Paris, France, jully [16] A.P Sistla, M.Y. Vardi, and P. Wolper. The
2001. Springer. complementation problem for Buchi automata with
applications to temporal logic. In Automata, Languages and
[9] V. King, O. Kupferman, and M.Y. Vardi. On the Programming, pages 465 - 474, Berlin, Heidelberg, 1985.
Complexity of Parity Word Automata, pages 276 -286. Springer Berlin Heidelberg.
Springer Berlin Heidelberg, Berlin, Heidelberg, 2001.
[17] S. Taha, J. Julliand, F. Dadeau, K. Castillos, and B.
[10] M. Mukund. Finite-state automata on infinite inputs, Kanso. A compositional automata-based semantics and
1996. preserving transformation rules for testing property patterns.
Formal Asp. Comput., 27(4):641 - 664, 2015.
[11] A. Pnueli. The temporal logic of programs. In
Proceedings of the 18th Annual Symposium on Foundations [18] M. Y. Vardi and P.Wolper. An automata-theoretic
of Computer Science, SFCS '77, pages 46-57, Washington, approach to automatic program verification. In Proc. 1st
DC, USA, 1977. IEEE Computer Society. Symp. on Logic in Computer Science, pages 332 - 344,
Cambridge, June 1986.
[12] J.P. Queille and J. Sifakis. Specification and verification
of concurrent systems in cesar. In Proceedings of the 5th [19] M.Y. Vardi. Branching vs. linear time: Final showdown.
Colloquium on International Symposium on Programming, In Proceedings of the 7th International Conference on Tools
pages 337 - 351, London, UK, UK, 1982. Springer-Verlag. and Algorithms for the Construction and Analysis of Systems,
TACAS 2001, pages 1 - 22, London, UK, 2001. Springer-
[13] S. Safra. On the complexity of omega-automata. In 29th Verlag.
Annual Symposium on Foundations of Computer Science,
White Plains, New York, USA, 24-26 October 1988, pages
319- 327, 1988.
www.ijsea.com 63