Abstract
Finite automata have two traditional applications in computer science: modeling of finite-state systems and description of regular set of finite words. In the last few years, several new applications for finite-state automata have emerged, e.g., optimization of logic programs and specification and verification of protocols. These applications use finite-state automata to describe regular sets of infinite words and trees. I will describe such applications and will argue that we need change the way we teach automata theory.
Preview
Unable to display preview. Download preview PDF.
Similar content being viewed by others
References
Abiteboul, S., Vianu, V.: Fixpoint extensions of first-order logic and Datalog-like languages, Proc. 4th IEEE Symp. on Logic in Computer Science, 1989, pp. 71–79.
Aho, A.V., Ullman, J.D.: Universality of data retrieval languages, Proc. 6th ACM Symp. on Principles of Programming Languages, 1979, pp. 110–117.
Apt, K.R., Kozen, D.C.: Limits for automatic verification of finite-state concurrent systems, Information Processing Letters 22(1986), pp. 307–309.
Bancilhon, F., Ramakrishnan, R.: An amateur's introduction to recursive query processing strategies, Proc. ACM Conf. on Management of Data, Washington, 1986, pp. 16–52.
Barringer, H., Kuiper, R.: A temporal logic specification method supporting hierarchical development, Proc. NSF/SERC Seminar on Concurrency, Pittsburgh, 1984.
Brzozowski, J.A., Leiss, E.: On equations for regular languages, finite automata, and sequential networks, Theoretical Computer Science 10(1980), pp. 19–35.
Büchi, J.R.: On a decision method in restricted second order arithmetic, Proc. Internat. Congr. Logic, Method. and Philos. Sci. 1960, Stanford University Press, 1962, pp. 1–12.
Chandra, A.K.,: Programming primitives for database languages, Proc. 8th ACM Symp. on Principles of Programming Languages, Williamsburg, 1981, pp. 50–62.
Chandra, A.K., Harel, D.: Computable queries for relational databases, J. Computer and Systems Sciences 21(1980), pp. 156–178.
Chandra, A.K., Harel, D.: Structure and complexity of relational queries, J. Computer and Systems Sciences 25(1982), pp. 99–128.
Chandra, A.K., Harel, D.: Horn-clause queries and generalizations, J. Logic Programming, 2(1985), pp. 1–15.
Chandra, A., Kozen, A., Stockmeyer, L.: Alternation, J. ACM 28(1981), pp. 114–133.
Chandra, A. K., Lewis, H.R., Makowsky, J.A.: Embedded implicational dependencies and their inference problem, Proc. 13th ACM Symp. on Theory of Computing, 1981, pp. 342–354.
Chaudhuri, S., Vardi, M.Y.: On the equivalence of Datalog programs, Proc. 11th ACM Symp. on Principles of Database Systems, 1992, pp. 55–66 (see also IBM Research Report RJ9596, Nov. 1993).
Choueka, Y.: Theories of Automata on ω-tapes: a simplified approach, J. Computer and System Sciences 8(1974), pp. 117–141.
Clarke, E.M., Emerson, E.A., Sistla, A.P.: Automatic verification of finitestate concurrent systems using temporal logics specifications: a practical approach, ACM Trans. on Programming Languages and Systems, 8(1986), pp. 244–263.
Clarke, E.M., Grumberg, E.M.: Research on automatic verification of finite-state concurrent systems, in Annual Review of Computer Science 2(1987), pp. 269–290.
Cosmadakis, S.S., Kanellakis, P.: Parallel evaluation of recursive rule queries, Proc. 5th ACM Symp. on Principles of Database Systems, Cambridge, 1986, pp. 280–293.
Costich, O.L.: A Medvedev characterization of sets recognized by generalized finite automata, Math. System Theory 6(1972), pp. 263–267.
Courcoubetis, C., Vardi, M.Y., Wolper, P., Yannakakis, M.: Memory Efficient Algorithms for the Verification of Temporal Properties, Formal Methods in System Design 1(1992), pp. 275–288
Doner, J.E.: Tree acceptors and some of their applications, J. Computer and System Sciences 4(1971), pp. 406–451.
Eilenberg, S.: Automata,languages, and machines, Academic Press, 1974.
Emerson, E.A., Halpern, J.Y.: “Sometimes” and “Not Never” revisited: on branching vs. linear time temporal logic, J. ACM 33(1986), pp. 166–178.
Emerson, E.A., Lei, C.L.:, Temporal model checking under generalized fairness constraints, Proc. 18th Hawaii Int'l Conference on System Sciences, 1985.
Emerson, E.A., Lei, C.L.:, Modalities for model checking: branching time strikes back”, Proc. 12th ACM Symp. on Principles of Programming Languages, New Orleans, 1985, pp. 84–96.
Gabbay, D., Pnueli, A., Shelah, S., Stavi, J.: The temporal analysis of fairness, Proc. 7th ACM Symp. on Principles of Programming Languages, Las Vegas, 1980, pp. 163–173.
Gallaire, H., Minker, J.: Logic and databases, Plenum Press, 1978.
Gecseg, F., Steinby, M.: Tree automata, Akademiai Kiado, Budapest, 1984.
Hailpern, B.T., Owicki, S.S.: Modular verification of computer communication protocols, IEEE Trans. on Comm. COM-31(1983), 1983, pp. 56–68.
Hayashi, T.: Finite automata on infinite objects, Math. Res. Kyushu University 15(1985), pp. 13–66.
Immerman, N.: Relational queries computable in polynomial time, Information and Control 68(1986), pp. 86–104.
Immerman, N.: Nondeterministic space is closed under complementation, SIAM J. on Computing 17(1988), pp.935–938.
Kamp, J.A.W.: Tense logic and the theory of linear order, Ph.D. Thesis, University of California, Los Angeles, 1968.
Kanellakis P.C.: Elements of relational database theory, in Handbook of Theoretical Computer Science, Vol. B. (J. v. Leeuwen et al., eds.), Elsevier, 1990.
Koymans, R., Vytopil, J., de Roever, W.P.: Real-time programming and asynchronous message passing, Proc. 2rd ACM Symp. on Principles of Distributed Computing, Montreal, 1983, pp. 187–197.
Lamport, L.: “Sometimes” is sometimes “Not Never”, Proc. 7th ACM Symp. on Principles of Programming Languages, 1980, pp. 174–185.
Leiss, E.: Succinct representation of regular languages by boolean automata, Theoretical Computer Science 13(1981), pp. 323–330.
Lichtenstein, O., Pnueli, A.: Checking that finite-state concurrent programs satisfy their linear specifications, Proc. 12th ACM Symp. on Principles of Programming Languages, New Orleans, 1985, pp. 97–107.
Lichtenstein, O., Pnueli, A., Zuck, L.: The glory of the past, Proc. Workshop on Logics of Programs, Brooklyn, 1985, Springer-Verlag, Lecture Notes in Computer Science 193, pp. 196–218.
Manna, Z., Pnueli, A.: Verification of concurrent programs: the temporal framework, in The Correctness Problem in Computer Science (R.S. Boyer and J.S. Moore, eds.), Academic Press, 1981, pp. 215–273.
Manna, Z., Pnueli, A.: The temporal logic of reactive and concurrent systems, Springer-Verlag, 1992.
Maier, D., Ullman, J.D., Vardi, M.Y.: On the foundations of the universal relation model, ACM Trans. on Database Systems 9(1984), pp. 283–308.
van der Meyden, R.: Recursively definite databases, Theoretical Computer Science, 116(1993), pp. 151–194.
Miyano, S., Hayashi, T.: Alternating automata on ω-words, Theoretical Computer Science 32(1984), pp. 321–330.
Moschovakis, Y.N.: Elementary induction on abstract structures, North Holland, 1974.
Muller, D.E., Saoudi, A., Schupp, P.E.: Weak alternating automata give a simple explanation of why most temporal and dynamic logic are decidable in exponential time, Proc. 3rd IEEE Symp. on Logic in Computer Science, 1988, pp. 422–427.
Mumick, I.S.,Pirahesh, H.: Overbound and right-linear queries, Proc. 10th ACM Symp. on Principles of Database Systems, 1991, pp. 127–141.
Naughton, J.F.: Data independent recursion in deductive databases, J. Computer and System Sciences, 38(1989), pp. 259–289.
Naughton, J.F.: Minimizing function-free recursive definitions, J. ACM 36(1989), pp. 69–91.
Naughton, J.F., Ramakrishnan, R., Sagiv, Y., Ullman, J.D.: Efficient evaluation of right, left, and multilinear rules, Proc. ACM-SIGMOD Int'l Conf. on Management of Data, 1989, pp. 235–242.
Owicki, S., Lamport, L.: Proving liveness properties of concurrent programs, ACM Trans. on Programming Languages and Systems, 4(1982), pp. 455–495.
Peikert, R.: ω-regular languages and propositional temporal logic, Report No. 85-01, ETH, Zurich, 1985.
Pnueli, A.: The temporal logic of programs, Proc. 8th IEEE Symp. on Foundations of Computer Science, Providence, 1977, pp. 46–57.
Queille, J.P., Sifakis, J.: Fairness and related properties in transition systems, Research Report no. 292, IMAG, Grenoble, 1982.
Rabin, M.O.: Decidability of second-order theories and automata on infinite trees, Trans. AMS 141(1969), pp. 1–35.
Ramakrishnan, R., Sagiv, Y., Ullman, J.D., Vardi, M.Y.: Logical query optimization by proof-tree transformation, J. Computer and System Sciences 47(1993), pp. 222–248
Safra, S.: On the complexity of ω-automata, Proc. 29th IEEE Symp. on Foundation of Computer Science, 1988, pp. 319–327.
Sagiv, Y.: Optimizing Datalog programs, In Foundations of Deductive Databases and Logic Programming, J. Minker (ed.), Morgan Kaufmann Publishers, 1988, pp. 659–698.
Seidl, H.: Deciding equivalence of finite tree automata, SIAM J. Computing 19(1990), pp. 424–437.
Shmueli, O.: Decidability and expressiveness aspects of logic queries, Proc. 6th ACM Symp. on Principles of Database Systems, 1987, pp. 237–249.
Sistla, A.P., Clarke E.M.: The complexity of propositional linear temporal logic, J. ACM 32(1985), pp. 733–749.
Sistla, A.P.: Theoretical issues in the design and analysis of distributed systems, Ph.D. Thesis, Harvard University, 1983.
Sistla, A.P., Vardi, M.Y., Wolper, P.: The complementation problem for Büchi automata with applications to temporal logic, Theoretical Computer Science 49(1987), pp. 217–237.
Thatcher, J.W., Wright, J.B.: Generalized finite automata theory with an application to a decision problem of second-order logic, Mathematical System Theory 2(1968), pp. 57–81.
Thomas, W.: Automata on infinite objects, in Handbook of Theoretical Computer Science, Vol. B. (J. v. Leeuwen et al., eds.), Elsevier, 1990, pp. 135–191.
Trakhtenbrot, B.A., Barzdin, Y.M.: Finite automata: behavior and synthesis, North-Holland, 1973.
Ullman, J.D.: Principles of database and knowledge base systems, Vol. 1, Computer Science Press, 1988.
Ullman, J.D.: Principles of database and knowledge base systems, Vol. 2, Computer Science Press, 1989.
Vardi, M.Y.: The complexity of relational query languages, Proc. 14th ACM Symp. on Theory of Computing, San Francisco, 1982, pp. 137–146.
Vardi, M.Y.: Automata theory for database theoreticians, in Theoretical Studies in Computer Science (J.D. Ullman, ed.), Academic Press, 1992, pp. 153–180.
Vardi, M.Y., Wolper, P.: An automata-theoretic approach to automatic program verification, Proc. 1st IEEE Symp. on Logic in Computer Science, Boston, 1986, pp. 332–334.
Vardi, M.Y., Wolper, P.: Reasoning about infinite computation, to appear in Information and Computation, 1994.
Wolper, P.: Temporal logic can be more expressive, Information and Control 56(1983), pp. 72–99.
Zloof, M.; Query-by-Example: operations on the transitive closure, IBM Research Report RC5526, 1976.
Author information
Authors and Affiliations
Editor information
Rights and permissions
Copyright information
© 1994 Springer-Verlag Berlin Heidelberg
About this paper
Cite this paper
Vardi, M.Y. (1994). Nontraditional applications of automata theory. In: Hagiya, M., Mitchell, J.C. (eds) Theoretical Aspects of Computer Software. TACS 1994. Lecture Notes in Computer Science, vol 789. Springer, Berlin, Heidelberg. https://doi.org/10.1007/3-540-57887-0_116
Download citation
DOI: https://doi.org/10.1007/3-540-57887-0_116
Published:
Publisher Name: Springer, Berlin, Heidelberg
Print ISBN: 978-3-540-57887-1
Online ISBN: 978-3-540-48383-0
eBook Packages: Springer Book Archive