Automata: From Logics to Algorithms Moshe Y. Vardi1, Thomas Wilke2 1 Department of Computer Science Rice University 6199 S. Main Street Houston, TX 77005-1892, U.S.A.
[email protected] 2 Institut f¨urInformatik Christian-Albrechts-Universit¨atzu Kiel Christian-Albrechts-Platz 4 24118 Kiel, Germany
[email protected] Abstract We review, in a unified framework, translations from five dif- ferent logics—monadic second-order logic of one and two successors (S1S and S2S), linear-time temporal logic (LTL), computation tree logic (CTL), and modal µ-calculus (MC)—into appropriate models of finite-state automata on infinite words or infinite trees. Together with emptiness-testing algorithms for these models of automata, this yields decision procedures for these logics. The translations are presented in a modular fashion and in a way such that optimal complexity bounds for satisfiability, conformance (model checking), and realizability are obtained for all logics. 1 Introduction In his seminal 1962 paper [B¨uc62],B¨uchi states: “Our results [. ] may therefore be viewed as an application of the theory of finite automata to logic.” He was referring to the fact that he had proved the decidability of the monadic-second order theory of the natural numbers with successor function by translating formulas into finite automata, following earlier work by himself [B¨uc60],Elgot [Elg61], and Trakthenbrot [Tra62]. Ever since, the approach these pioneers were following has been applied successfully in many different contexts and emerged as a major paradigm. It has not only brought about a number of decision procedures for mathematical theories, for instance, for the monadic second-order theory of the full binary tree [Rab69], but also efficient algorithms for problems in verification, such as a highly useful algorithm for LTL model checking [VW86a].