Advertisement

On Synchronizing Tree Automata and Their Work–Optimal Parallel Run, Usable for Parallel Tree Pattern Matching

  • Štěpán PlachýEmail author
  • Jan JanoušekEmail author
Conference paper
Part of the Lecture Notes in Computer Science book series (LNCS, volume 12011)

Abstract

We present a way of synchronizing finite tree automata: We define a synchronizing term and a k-local deterministic finite bottom–up tree automaton. Furthermore, we present a work–optimal parallel algorithm for parallel run of the deterministic k-local tree automaton in \(\mathcal {O}(\log {n})\) time with \(\lceil \frac{n}{\log {n}}\rceil \) processors, for \(k \le \log {n}\), or in \(\mathcal {O}(k)\) time with \(\lceil \frac{n}{k}\rceil \) processors, for \(k \ge \log {n}\), where n is the number of nodes of an input tree, on EREW PRAM. Finally, we prove that the deterministic finite bottom–up tree automaton that is used as a standard tree pattern matcher is k-local with respect to the height of a tree pattern.

References

  1. 1.
    Béal, M.-P., Perrin, D.: Symbolic dynamics and finite automata. In: Rozenberg, G., Salomaa, A. (eds.) Handbook of Formal Languages, pp. 463–506. Springer, Heidelberg (1997).  https://doi.org/10.1007/978-3-662-07675-0_10CrossRefGoogle Scholar
  2. 2.
    Chen, C.C.-Y., Das, S.: Breadth-first traversal of trees and integer sorting in parallel. Inf. Process. Lett. 41, 39–49 (1992)MathSciNetCrossRefGoogle Scholar
  3. 3.
    Cleophas, L.G.W.A.: Tree algorithms: two taxonomies and a toolkit. Ph.D. thesis, Department of Mathematics and Computer Science (2008)Google Scholar
  4. 4.
    Comon, H., et al.: Tree automata techniques and applications (2007). http://www.grappa.univ-lille3.fr/tata. Accessed 12 Oct 2007
  5. 5.
    Gécseg, F., Steinby, M.: Tree languages. In: Handbook of Formal Languages, vol. 3, pp. 1–68. Springer, New York (1997).  https://doi.org/10.1007/978-3-642-59136-5zbMATHGoogle Scholar
  6. 6.
    Hoffmann, C.M., O’Donnell, M.J.: Pattern matching in trees. J. ACM 29(1), 68–95 (1982)MathSciNetCrossRefGoogle Scholar
  7. 7.
    Holub, J., Štekr, S.: On parallel implementations of deterministic finite automata. In: Maneth, S. (ed.) CIAA 2009. LNCS, vol. 5642, pp. 54–64. Springer, Heidelberg (2009).  https://doi.org/10.1007/978-3-642-02979-0_9CrossRefzbMATHGoogle Scholar
  8. 8.
    JaJa, J.F.: An Introduction to Parallel Algorithms. Addison Wesley Longman Publishing Co., Inc., Redwood City (1992)zbMATHGoogle Scholar
  9. 9.
    Lohrey, M.: On the parallel complexity of tree automata. In: Middeldorp, A. (ed.) RTA 2001. LNCS, vol. 2051, pp. 201–215. Springer, Heidelberg (2001).  https://doi.org/10.1007/3-540-45127-7_16CrossRefGoogle Scholar
  10. 10.
    Prasad, S.K., Das, S.K., Chen, C.C.-Y.: Efficient EREW PRAM algorithms for parentheses-matching. IEEE Trans. Parallel Distrib. Syst. 5(9), 995–1008 (1994)CrossRefGoogle Scholar
  11. 11.
    Ramesh, R., Ramakrishnan, I.V.: Parallel tree pattern matching. J. Symb. Comput. 9(4), 485–501 (1990)CrossRefGoogle Scholar
  12. 12.
    Tarora, K., Hirata, T., Inagaki, Y.: A parallel algorithm for tree pattern matching. Syst. Comput. Japan 24(5), 30–39 (1993)CrossRefGoogle Scholar
  13. 13.
    Černý, J.: Poznámka k homogénnym experimentom s konečnými automatmi. Matematicko-fyzikálny časopis 14(3), 208–216 (1964)Google Scholar
  14. 14.
    Rosenauerová, B., Černý, J., Pirická, A.: On directable automata. Kybernetika 7(4), 289–298 (1971)Google Scholar

Copyright information

© Springer Nature Switzerland AG 2020

Authors and Affiliations

  1. 1.Faculty of Information TechnologyCzech Technical University in PraguePragueCzech Republic

Personalised recommendations