Skip to main content

Nontraditional applications of automata theory

  • Invited Talk 6
  • Conference paper
  • First Online:

Part of the book series: Lecture Notes in Computer Science ((LNCS,volume 789))

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.

Unable to display preview. Download preview PDF.

References

  1. 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.

    Google Scholar 

  2. Aho, A.V., Ullman, J.D.: Universality of data retrieval languages, Proc. 6th ACM Symp. on Principles of Programming Languages, 1979, pp. 110–117.

    Google Scholar 

  3. Apt, K.R., Kozen, D.C.: Limits for automatic verification of finite-state concurrent systems, Information Processing Letters 22(1986), pp. 307–309.

    Google Scholar 

  4. 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.

    Google Scholar 

  5. Barringer, H., Kuiper, R.: A temporal logic specification method supporting hierarchical development, Proc. NSF/SERC Seminar on Concurrency, Pittsburgh, 1984.

    Google Scholar 

  6. Brzozowski, J.A., Leiss, E.: On equations for regular languages, finite automata, and sequential networks, Theoretical Computer Science 10(1980), pp. 19–35.

    Google Scholar 

  7. 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.

    Google Scholar 

  8. Chandra, A.K.,: Programming primitives for database languages, Proc. 8th ACM Symp. on Principles of Programming Languages, Williamsburg, 1981, pp. 50–62.

    Google Scholar 

  9. Chandra, A.K., Harel, D.: Computable queries for relational databases, J. Computer and Systems Sciences 21(1980), pp. 156–178.

    Google Scholar 

  10. Chandra, A.K., Harel, D.: Structure and complexity of relational queries, J. Computer and Systems Sciences 25(1982), pp. 99–128.

    Google Scholar 

  11. Chandra, A.K., Harel, D.: Horn-clause queries and generalizations, J. Logic Programming, 2(1985), pp. 1–15.

    Google Scholar 

  12. Chandra, A., Kozen, A., Stockmeyer, L.: Alternation, J. ACM 28(1981), pp. 114–133.

    Google Scholar 

  13. 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.

    Google Scholar 

  14. 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).

    Google Scholar 

  15. Choueka, Y.: Theories of Automata on ω-tapes: a simplified approach, J. Computer and System Sciences 8(1974), pp. 117–141.

    Google Scholar 

  16. 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.

    Google Scholar 

  17. 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.

    Google Scholar 

  18. 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.

    Google Scholar 

  19. Costich, O.L.: A Medvedev characterization of sets recognized by generalized finite automata, Math. System Theory 6(1972), pp. 263–267.

    Google Scholar 

  20. 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

    Google Scholar 

  21. Doner, J.E.: Tree acceptors and some of their applications, J. Computer and System Sciences 4(1971), pp. 406–451.

    Google Scholar 

  22. Eilenberg, S.: Automata,languages, and machines, Academic Press, 1974.

    Google Scholar 

  23. 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.

    Google Scholar 

  24. Emerson, E.A., Lei, C.L.:, Temporal model checking under generalized fairness constraints, Proc. 18th Hawaii Int'l Conference on System Sciences, 1985.

    Google Scholar 

  25. 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.

    Google Scholar 

  26. 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.

    Google Scholar 

  27. Gallaire, H., Minker, J.: Logic and databases, Plenum Press, 1978.

    Google Scholar 

  28. Gecseg, F., Steinby, M.: Tree automata, Akademiai Kiado, Budapest, 1984.

    Google Scholar 

  29. Hailpern, B.T., Owicki, S.S.: Modular verification of computer communication protocols, IEEE Trans. on Comm. COM-31(1983), 1983, pp. 56–68.

    Google Scholar 

  30. Hayashi, T.: Finite automata on infinite objects, Math. Res. Kyushu University 15(1985), pp. 13–66.

    Google Scholar 

  31. Immerman, N.: Relational queries computable in polynomial time, Information and Control 68(1986), pp. 86–104.

    Google Scholar 

  32. Immerman, N.: Nondeterministic space is closed under complementation, SIAM J. on Computing 17(1988), pp.935–938.

    Google Scholar 

  33. Kamp, J.A.W.: Tense logic and the theory of linear order, Ph.D. Thesis, University of California, Los Angeles, 1968.

    Google Scholar 

  34. Kanellakis P.C.: Elements of relational database theory, in Handbook of Theoretical Computer Science, Vol. B. (J. v. Leeuwen et al., eds.), Elsevier, 1990.

    Google Scholar 

  35. 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.

    Google Scholar 

  36. Lamport, L.: “Sometimes” is sometimes “Not Never”, Proc. 7th ACM Symp. on Principles of Programming Languages, 1980, pp. 174–185.

    Google Scholar 

  37. Leiss, E.: Succinct representation of regular languages by boolean automata, Theoretical Computer Science 13(1981), pp. 323–330.

    Google Scholar 

  38. 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.

    Google Scholar 

  39. 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.

    Google Scholar 

  40. 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.

    Google Scholar 

  41. Manna, Z., Pnueli, A.: The temporal logic of reactive and concurrent systems, Springer-Verlag, 1992.

    Google Scholar 

  42. 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.

    Google Scholar 

  43. van der Meyden, R.: Recursively definite databases, Theoretical Computer Science, 116(1993), pp. 151–194.

    Google Scholar 

  44. Miyano, S., Hayashi, T.: Alternating automata on ω-words, Theoretical Computer Science 32(1984), pp. 321–330.

    Google Scholar 

  45. Moschovakis, Y.N.: Elementary induction on abstract structures, North Holland, 1974.

    Google Scholar 

  46. 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.

    Google Scholar 

  47. Mumick, I.S.,Pirahesh, H.: Overbound and right-linear queries, Proc. 10th ACM Symp. on Principles of Database Systems, 1991, pp. 127–141.

    Google Scholar 

  48. Naughton, J.F.: Data independent recursion in deductive databases, J. Computer and System Sciences, 38(1989), pp. 259–289.

    Google Scholar 

  49. Naughton, J.F.: Minimizing function-free recursive definitions, J. ACM 36(1989), pp. 69–91.

    Google Scholar 

  50. 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.

    Google Scholar 

  51. Owicki, S., Lamport, L.: Proving liveness properties of concurrent programs, ACM Trans. on Programming Languages and Systems, 4(1982), pp. 455–495.

    Google Scholar 

  52. Peikert, R.: ω-regular languages and propositional temporal logic, Report No. 85-01, ETH, Zurich, 1985.

    Google Scholar 

  53. Pnueli, A.: The temporal logic of programs, Proc. 8th IEEE Symp. on Foundations of Computer Science, Providence, 1977, pp. 46–57.

    Google Scholar 

  54. Queille, J.P., Sifakis, J.: Fairness and related properties in transition systems, Research Report no. 292, IMAG, Grenoble, 1982.

    Google Scholar 

  55. Rabin, M.O.: Decidability of second-order theories and automata on infinite trees, Trans. AMS 141(1969), pp. 1–35.

    Google Scholar 

  56. 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

    Google Scholar 

  57. Safra, S.: On the complexity of ω-automata, Proc. 29th IEEE Symp. on Foundation of Computer Science, 1988, pp. 319–327.

    Google Scholar 

  58. Sagiv, Y.: Optimizing Datalog programs, In Foundations of Deductive Databases and Logic Programming, J. Minker (ed.), Morgan Kaufmann Publishers, 1988, pp. 659–698.

    Google Scholar 

  59. Seidl, H.: Deciding equivalence of finite tree automata, SIAM J. Computing 19(1990), pp. 424–437.

    Google Scholar 

  60. Shmueli, O.: Decidability and expressiveness aspects of logic queries, Proc. 6th ACM Symp. on Principles of Database Systems, 1987, pp. 237–249.

    Google Scholar 

  61. Sistla, A.P., Clarke E.M.: The complexity of propositional linear temporal logic, J. ACM 32(1985), pp. 733–749.

    Google Scholar 

  62. Sistla, A.P.: Theoretical issues in the design and analysis of distributed systems, Ph.D. Thesis, Harvard University, 1983.

    Google Scholar 

  63. 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.

    Google Scholar 

  64. 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.

    Google Scholar 

  65. 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.

    Google Scholar 

  66. Trakhtenbrot, B.A., Barzdin, Y.M.: Finite automata: behavior and synthesis, North-Holland, 1973.

    Google Scholar 

  67. Ullman, J.D.: Principles of database and knowledge base systems, Vol. 1, Computer Science Press, 1988.

    Google Scholar 

  68. Ullman, J.D.: Principles of database and knowledge base systems, Vol. 2, Computer Science Press, 1989.

    Google Scholar 

  69. Vardi, M.Y.: The complexity of relational query languages, Proc. 14th ACM Symp. on Theory of Computing, San Francisco, 1982, pp. 137–146.

    Google Scholar 

  70. Vardi, M.Y.: Automata theory for database theoreticians, in Theoretical Studies in Computer Science (J.D. Ullman, ed.), Academic Press, 1992, pp. 153–180.

    Google Scholar 

  71. 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.

    Google Scholar 

  72. Vardi, M.Y., Wolper, P.: Reasoning about infinite computation, to appear in Information and Computation, 1994.

    Google Scholar 

  73. Wolper, P.: Temporal logic can be more expressive, Information and Control 56(1983), pp. 72–99.

    Google Scholar 

  74. Zloof, M.; Query-by-Example: operations on the transitive closure, IBM Research Report RC5526, 1976.

    Google Scholar 

Download references

Author information

Authors and Affiliations

Authors

Editor information

Masami Hagiya John C. Mitchell

Rights and permissions

Reprints 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

Publish with us

Policies and ethics