Abstract
Abstract
We introduce a graphical interactive tool, named GOAL, that can assist the user in understanding Büchi automata, linear temporal logic, and their relation. Büchi automata and linear temporal logic are closely related and have long served as fundamental building blocks of linear-time model checking. Understanding their relation is instrumental in discovering algorithmic solutions to model checking problems or simply in using those solutions, e.g., specifying a temporal property directly by an automaton rather than a temporal formula so that the property can be verified by an algorithm that operates on automata. One main function of the GOAL tool is translation of a temporal formula into an equivalent Büchi automaton that can be further manipulated visually. The user may edit the resulting automaton, attempting to optimize it, or simply run the automaton on some inputs to get a basic understanding of how it operates. GOAL includes a large number of translation algorithms, most of which support past temporal operators. With the option of viewing the intermediate steps of a translation, the user can quickly grasp how a translation algorithm works. The tool also provides various standard operations and tests on Büchi automata, in particular the equivalence test which is essential for checking if a hand-drawn automaton is correct in the sense that it is equivalent to some intended temporal formula or reference automaton. Several use cases are elaborated to show how these GOAL functions may be combined to facilitate the learning and teaching of Büchi automata and linear temporal logic.
- Büc62 Büchi JR (1962) On a decision method in restricted second-order arithmetic. In: Proceedings of the 1960 international congress on logic, methodology and philosophy of science, pp 1–11. Standford University PressGoogle Scholar
- CGP99 Model checking1999CambridgeThe MIT PressGoogle ScholarDigital Library
- DGV99 Daniele M, Giunchiglia F, Vardi MY (1999) Improved automata generation for linear temporal logic. In: Proceedings of the 11th international conference on computer-aided verification (CAV 1999), LNCS 1633, pp 249–260. Springer, BerlinGoogle Scholar
- EH00 Etessami K, Holzmann G (2000) Optimizing Büchi automata. In: Proceedings of the 11th international conference on concurrency theory (CONCUR 2000), LNCS 1877, pp 153–167. Springer, BerlinGoogle Scholar
- FKV04 Friedgut E, Kupferman O, Vardi MY (2004) Büchi complementation made tighter. In: Proceedings of the 2nd international symposium on automated technology for verification and analysis (ATVA 2004), LNCS 3299, pp 64–78. Springer, BerlinGoogle Scholar
- GL02 Giannakopoulou D, Lerda F (2002) From states to transitions: improving translation of LTL formulae to Büchi automata. In: Proceedings of the 22nd IFIP WG 6.1 international conference on formal techniques for networked and distributed systems (FORTE 2002), LNCS 2529, pp 308–326. Springer, BerlinGoogle Scholar
- GO01 Gastin P, Oddoux D (2001) Fast LTL to Büchi automata translations. In: Proceedings of the 13th international conference on computer-aided verification (CAV 2001), LNCS 2102, pp 53–65. Springer, BerlinGoogle Scholar
- GO03 Gastin P, Oddoux D (2003) LTL with past and two-way very-weak alternating automata. In: Proceedings of the 28th international symposium on mathematical foundations of computer science (MFCS 2003), LNCS 2747, pp 439–448. Springer, BerlinGoogle Scholar
- GPVW95 Gerth R, Peled D, Vardi MY, Wolper P (1995) Simple on-the-fly automatic verification of linear temporal logic. In: Protocol specification, testing, and verification, pp 3–18. Chapman & Hall, LondonGoogle Scholar
- GTW02 Automata, logics, and infinite games (LNCS 2500)2002BerlinSpringer10.1007/3-540-36387-4Google ScholarDigital Library
- Hol03 Holzmann GJ (2003) The SPIN Model checker: primer and reference manual. Addison-Wesley, Reading, MA, USAGoogle Scholar
- Kla91 Klarlund N (1991) Progress measures for complementation of ω-automata with application to temporal logic. In: Proceedings of the 32nd annual IEEE symposium on foundations of computer science (FOCS 1991), pp 358–367. IEEE Computer SocietyGoogle Scholar
- KMMP93 Kesten Y, Manna Z, McGuire H, Pnueli A (1993) A decision algorithm for full propositional temporal logic. In: Proceedings of the 5th international conference on computer-aided verification (CAV 1993), LNCS 697, pp 97–109. Springer, BerlinGoogle Scholar
- KP00 Verification by augmented finitary abstractionInf Comput20001632032431003.6806910.1006/inco.2000.30001809330Google ScholarDigital Library
- KP02 Complete proof system for QPTLJ Logic Comput20021257017451013.0301210.1093/logcom/12.5.7011903006Google ScholarCross Ref
- Kur87 Complementing deterministic Büchi automata in polynomial timeJ Comput Syst Sci19873559710666.6805810.1016/0022-0000(87)90036-5903179Google ScholarDigital Library
- KV01 Weak alternating automata are not that weakACM Trans Comput Logic20012340842910.1145/377978.3779931859532Google ScholarDigital Library
- KVW00 An automata-theoretic approach to branching-time model checkingJ ACM20004723123601133.6837610.1145/333979.3339871769445Google ScholarDigital Library
- LPZ85 Lichtenstein O, Pnueli A, Zuck L (1985) The glory of the past. In: Proceedings of the workshop on logics of programs, LNCS 193, pp 196–218. Springer, BerlinGoogle Scholar
- Mic88 Michel M (1988) Complementation is more difficult with automata on infinite words. In: CNET, ParisGoogle Scholar
- MP90 Manna Z, Pnueli A (1990) A hierarchy of temporal properties. In: Proceedings of the 9th ACM symposium on principles of distributed computing (PODC 1990), pp 377–408. ACM, New YorkGoogle Scholar
- MP92 The temporal logic of reactive and concurrent systems: specification1992BerlinSpringerGoogle ScholarCross Ref
- MP95 Temporal verification of reactive systems: safety1995BerlinSpringerGoogle ScholarCross Ref
- MS95 Simulating alternating tree automata by nondeterministic automata: new results and new proofs of the theorems of Rabin, McNaughton, and SafraInf Comput19951411–2691070873.681351323149Google ScholarDigital Library
- NT00 Namjoshi KS, Trefler RJ (2000) On the completeness of compositional reasoning. In: Proceedings of the 12th international conference on computer-aided verification (CAV 2000), LNCS 1855, pp 139–153. Springer, BerlinGoogle Scholar
- Pit06 Piterman N (2006) From nondeterministic Büchi and Streett automata to deterministic parity automata. In: Proceedings of the 21st annual IEEE symposium on logic in computer science (LICS 2006), pp 255–264. IEEE Computer SocietyGoogle Scholar
- RF Rodger S, Finley T (2008) JFLAP. http://www.jflap.org/Google Scholar
- Saf88 Safra S (1988) On the complexity of ω-automta. In: Proceedings of the 29th annual IEEE symposium on foundations of computer science (FOCS 1988), pp 319–327. IEEE Computer SocietyGoogle Scholar
- SB00 Somenzi F, Bloem R (2000) Efficient Büchi automata from LTL formulae. In: Proceedings of the 12th international conference on computer-aided verification (CAV 2000), LNCS 1855, pp 248–263. Springer, BerlinGoogle Scholar
- Sha00 Shankar N (2000) Combining model checking and theorem proving through symbolic analysis. In: Proceedings of the 11th international conference on concurrency theory (CONCUR 2000), LNCS 1877, pp 1–16. Springer, BerlinGoogle Scholar
- Sis83 Sistla AP (1983) Theoretical issues in the design and verification of distributed systems. PhD thesis, Harvard UniversityGoogle Scholar
- ST03 Sebastiani R, Tonetta S (2003) More deterministic vs. smaller Büchi automata for efficient LTL model checking. In: Proceedings of the 12th advanced research working conference on correct hardware design and verification methods (CHARME 2003), LNCS 2860, pp 126–140. Springer, BerlinGoogle Scholar
- SVW87 The complementation problem for Büchi automata with applications to temporal logicTheor Comput Sci1987492172370613.0301510.1016/0304-3975(87)90008-9909332Google ScholarDigital Library
- TCT+07 Tsay Y-K, Chen Y-F, Tsai M-H, Wu K-N, Chan W-C (2007) GOAL: a graphical tool for manipulating Büchi automata and temporal formulae. In: Proceedings of the 13th international conference on tools and algorithms for the construction and analysis of systems (TACAS 2007), LNCS 4424, pp 466–471. Springer, BerlinGoogle Scholar
- TCT+08 Tsay Y-K, Chen Y-F, Tsai M-H, Chan W-C, Luo C-J (2008) GOAL extended: towards a research tool for omega automata and temporal logic. In: Proceedings of the 14th international conference on tools and algorithms for the construction and analysis of systems (TACAS 2008), LNCS 4963, pp 346–350. Springer, BerlinGoogle Scholar
- TCTL07 Tsai M-H, Chan W-C, Tsay Y-K, Luo C-J (2007) Full PTL to Büchi automata translation for on-the-fly model checking. ManuscriptGoogle Scholar
- TCW06 Tsay Y-K, Chen Y-F, Wu K-N (2006) Tool support for learning Büchi automata and linear temporal logic. Presented at the Formal Methods in the Teaching Lab Workshop (affiliated with FM 2006)Google Scholar
- Tho99 Thomas W (1999) Complementation of Büchi automata revisited. In: Jewels are forever, contributions on theoretical computer science in honor of Arto Salomaa, pp 109–120. Springer, BerlinGoogle Scholar
- Tsa00 Tsay Y-K (2000) Compositional verification in linear-time temporal logic. In: Proceedings of the 3rd international conference on foundations of software science and computation structures (FOSSACS 2000), LNCS 1784, pp 344–358. Springer, BerlinGoogle Scholar
- VW86 Vardi MY, Wolper P (1986) An automata-theoretic approach to automatic program verification. In: Proceedings of the 1st annual IEEE symposium on logic in computer science (LICS 1986), pp 332–344. IEEE Computer SocietyGoogle Scholar
- Wol83 Temporal logic can be more expressiveInf Control19835672990534.0300910.1016/S0019-9958(83)80051-5732369Google ScholarCross Ref
Index Terms
- Tool support for learning Büchi automata and linear temporal logic
Recommendations
A power-set construction for reducing Büchi automata to non-determinism degree two
Buchi automata are finite automata that accept languages of infinitely long strings, so-called @w-languages. It is well known that, unlike in the finite-string case, deterministic and non-deterministic Buchi automata accept different @w-language classes,...
The quest for a tight translation of büchi to co-büchi automata
Fields of logic and computationThe Büchi acceptance condition specifies a set a of states, and a run is accepting if it visits α infinitely often. The co-Büchi acceptance condition is dual, thus a run is accepting if it visits α only finitely often. Nondeterministic Büchi automata ...
Translating to Co-Büchi Made Tight, Unified, and Useful
We solve the longstanding open problems of the blow-up involved in the translations, when possible, of a nondeterministic Büchi word automaton (NBW) to a nondeterministic co-Büchi word automaton (NCW) and to a deterministic co-Büchi word automaton (DCW)...
Comments