Logic Programming Approach to Automata-Based Decision Procedures

  • Gulay Unel
  • David Toman
Conference paper
Part of the Lecture Notes in Computer Science book series (LNCS, volume 4670)


We propose a novel technique that maps decision problems in WS1S (weak monadic second-order logic with n successors) to the problem of query evaluation of Complex-value Datalog queries. We then show how the use of advanced implementation techniques for Logic Programs, in particular the use of tabling in the XSB system, yields a considerable improvement in performance over more traditional approaches. We also explore various optimizations of the proposed technique based on variants of tabling and goal reordering. Although our primary focus is on WS1S, it is straightforward to adapt our approach for other logics with existing automata-theoretic decision procedures, for example WS2S.


Unable to display preview. Download preview PDF.

Unable to display preview. Download preview PDF.


  1. 1.
    Abiteoul, S., Beeri, C.: The power of languages for the manipulation of complex values. VLDB Journal 4(4), 727–794 (1995)CrossRefGoogle Scholar
  2. 2.
    Beeri, C., Naqvi, S., Shmueli, O., Tsur, S.: Set construction in a logic database language. JLP 10(3&4), 181–232 (1991)CrossRefGoogle Scholar
  3. 3.
    Beeri, C., Ramakrishnan, R.: On the power of Magic. JLP 10(1/2/3&4), 255–299 (1991)CrossRefGoogle Scholar
  4. 4.
    Bernholtz, O., Vardi, M.Y., Wolper, P.: An automata-theoretic approach to branching-time model checking. In: Dill, D.L. (ed.) CAV 1994. LNCS, vol. 818, pp. 142–155. Springer, Heidelberg (1994)Google Scholar
  5. 5.
    Bryant, R.E.: Symbolic boolean manipulation with Ordered Binary Decision Diagrams. ACM Computing Surveys 24(3), 293–318 (1992)CrossRefGoogle Scholar
  6. 6.
    Büchi, J.R.: Weak second-order arithmetic and finite automata. Z. Math. Logik Grundl. Math. 6, 66–92 (1960)zbMATHGoogle Scholar
  7. 7.
    Büchi, J.R.: On a decision method in restricted second-order arithmetic. In: Proc. Int. Congr. for Logic, Methodology and Philosophy of Science, pp. 1–11 (1962)Google Scholar
  8. 8.
    Chaudhuri, S.: An overview of query optimization in relational systems. In: PODS, pp. 34–43 (1998)Google Scholar
  9. 9.
    Chen, W., Swift, T., Warren, D.S.: Efficient top-down computation of queries under the well-founded semantics. JLP 24(3), 161–199 (1995)zbMATHCrossRefGoogle Scholar
  10. 10.
    Chen, W., Warren, D.S.: Query evaluation under the well-founded semantics. In: PODS, pp. 168–179 (1993)Google Scholar
  11. 11.
    Chimenti, D., Gamboa, R., Krishnamurthy, R., Naqvi, S.A., Tsur, S., Zaniolo, C.: The LDL system prototype. IEEE Trans. Knowl. Data Eng. 2(1), 76–90 (1990)CrossRefGoogle Scholar
  12. 12.
    Dawson, S., Ramakrishnan, C.R., Skiena, S., Swift, T.: Principles and practice of unification factoring. TOPLAS 18(5), 528–563 (1996)CrossRefGoogle Scholar
  13. 13.
    Elgot, C.C.: Decision problems of finite automata design and related arithmetics. Trans. Amer. Math. Soc. 98, 21–52 (1961)CrossRefGoogle Scholar
  14. 14.
    Freire, J., Swift, T., Warren, D.S.: Beyond depth-first strategies: Improving tabled logic programs through alternative scheduling. Journal of Functional and Logic Programming 1998(3) (1998)Google Scholar
  15. 15.
    Henriksen, J.G., Jensen, J.L., Jörgensen, M.E., Klarlund, N., Paige, R., Rauhe, T., Sandholm, A.: MONA: Monadic second-order logic in practice. In: Brinksma, E., Steffen, B., Cleaveland, W.R., Larsen, K.G., Margaria, T. (eds.) TACAS 1995. LNCS, vol. 1019, pp. 89–110. Springer, Heidelberg (1995)Google Scholar
  16. 16.
    Janin, D., Walukiewicz, I.: Automata for the modal μ-calculus and related results. In: Hájek, P., Wiedermann, J. (eds.) MFCS 1995. LNCS, vol. 969, pp. 552–562. Springer, Heidelberg (1995)Google Scholar
  17. 17.
    Klarlund, N.: MONA & FIDO: The logic-automaton connection in practice. In: Computer Science Logic, pp. 311–326 (1997)Google Scholar
  18. 18.
    Klarlund, N., Møller, A., Schwartzbach, M.I.: MONA implementation secrets. Int. J. Found. Comput. Sci. 13(4), 571–586 (2002)zbMATHCrossRefGoogle Scholar
  19. 19.
    McNaughton, R.: Testing and generating infinite sequences by a finite automaton. Information and Control 9, 521–530 (1966)zbMATHCrossRefGoogle Scholar
  20. 20.
    Mumick, I.S.: Query Optimization in Deductive and Relational Databases. PhD thesis, Department of Computer Science, Stanford University (1991)Google Scholar
  21. 21.
    Naqvi, S., Tsur, S.: A Logical Language for Data and Knowledge Bases. Computer Science Press (1989)Google Scholar
  22. 22.
    Rabin, M.O.: Decidability of second-order theories and automata on infinite trees. Trans. Amer. Math. Soc. 141, 1–35 (1969)zbMATHCrossRefGoogle Scholar
  23. 23.
    Ramakrishnan, I., Rao, P., Sagonas, K., Swift, T., Warren, D.: Efficient tabling mechanisms for logic programs. In: Proc. ICLP, pp. 697–711 (1995)Google Scholar
  24. 24.
    Ramakrishnan, R., Bothner, P., Srivastava, D., Sudarshan, S.: CORAL - a database programming language. In: Workshop on Deductive Databases (1990)Google Scholar
  25. 25.
    Ramakrishnan, R., Srivastava, D., Sudarshan, S.: Coral - control, relations and logic. In: Proc. VLDB Conference, pp. 238–250 (1992)Google Scholar
  26. 26.
    Ramakrishnan, R., Srivastava, D., Sudarshan, S., Seshadri, P.: The CORAL deductive system. VLDB Journal 3(2), 161–210 (1994)CrossRefGoogle Scholar
  27. 27.
    Sagonas, K.F., Swift, T., Warren, D.S.: XSB as an efficient deductive database engine. In: Proc. SIGMOD, pp. 442–453 (1994)Google Scholar
  28. 28.
    Thomas, W.: Languages, automata, and logic. In: Handbook of Formal Languages, vol. 3, Springer, Heidelberg (1997)Google Scholar
  29. 29.
    Ullman, J.D.: Principles of Database and Knowledge-Base Systems, vol. 1&2. Computer Science Press (1989)Google Scholar
  30. 30.
    Unel, G., Toman, D.: Deciding weak monadic second-order logics using complex-value datalog. In: Proc. LPAR (Short Paper) (2005)Google Scholar
  31. 31.
    Vardi, M.Y.: Reasoning about the past with two-way automata. In: Larsen, K.G., Skyum, S., Winskel, G. (eds.) ICALP 1998. LNCS, vol. 1443, pp. 628–641. Springer, Heidelberg (1998)CrossRefGoogle Scholar
  32. 32.
    Vardi, M.Y., Wolper, P.: An automata-theoretic approach to automatic program verification. In: Proc. LICS, pp. 322–331 (1986)Google Scholar
  33. 33.
    Whaley, J., Lam, M.S.: Cloning-based context-sensitive pointer alias analysis using binary decision diagrams. In: Proc. PLDI 2004, pp. 131–144 (2004)Google Scholar

Copyright information

© Springer-Verlag Berlin Heidelberg 2007

Authors and Affiliations

  • Gulay Unel
    • 1
  • David Toman
    • 1
  1. 1.D.R. Cheriton School of Computer Science, University of Waterloo 

Personalised recommendations