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.
This is a preview of subscription content, log in via an institution.
Preview
Unable to display preview. Download preview PDF.
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