Finite Automata for Generalized Approach to Backward Pattern Matching

  • Jan Antoš
  • Bořivoj Melichar
Part of the Lecture Notes in Computer Science book series (LNCS, volume 6482)


We generalized the DAWG backward pattern matching approach to be able to solve a broad range of pattern matching problems. We use a definition of a class of problems. We describe a finite automaton for the basic pattern matching problem of finding an exact occurrence of one string in a text. We propose a mechanism to use simple operations over finite automata in a systematic approach to derive automata for solving problems from a defined class, such as approximate matching, regular expression matching, sequence matching, matching of set of patterns, etc. and their combinations. The benefit of this approach is the ability to quickly derive solutions for newly formulated pattern matching problems.


backward pattern matching finite automata theory automata construction approximate pattern matching classification 


Unable to display preview. Download preview PDF.

Unable to display preview. Download preview PDF.


  1. 1.
    Aho, A.V., Corasick, M.J.: Efficient String Matching: An Aid to Bibliographic Research. Communications of ACM 18(6), 333–340 (1975)MathSciNetCrossRefzbMATHGoogle Scholar
  2. 2.
    Allauzen, C., Crochemore, M., Raffinot, M.: Factor Oracle: A New Structure for Pattern Matching. In: Bartosek, M., Tel, G., Pavelka, J. (eds.) SOFSEM 1999. LNCS, vol. 1725, pp. 295–306. Springer, Heidelberg (1999)CrossRefGoogle Scholar
  3. 3.
    Antoš, J.: Automaton-based Backward Pattern Matching. Dissertation thesis. CTU in Prague (2010),
  4. 4.
    Boyer, R.S., Moore, J.S.: A fast string searching algorithm. C. ACM 20(10), 762–772 (1977)CrossRefzbMATHGoogle Scholar
  5. 5.
    Chvatal, V., Klarner, D.A., Knuth, D.E.: Selected Combinatorial Research Problems. STAN-CS-72-292, Stanford University (1972)Google Scholar
  6. 6.
    Cleophas, L., Watson, B.W., Zwaan, G.: Automaton-based sublinear keyword pattern matching. In: Proceedings of the 11th SPIRE, Padova, Italy (2004)Google Scholar
  7. 7.
    Crochemore, M., Czumaj, A.: Ga̧sieniec, L., et al.: Deux méthodes pour accélerer l’algorithme de Boyer-Moore. In: Actes des 2e Journées franco-belges: Théories des Automates et Applications, pp. 45–63. Public. de l’Univ. de Rouen, No. 176 (1991)Google Scholar
  8. 8.
    Crochemore, M., Hancart, C., Lecroq, T.: Algorithms on Strings. Cambridge University Press, Cambridge (2007)CrossRefzbMATHGoogle Scholar
  9. 9.
    Hamming, R.W.: Error-detecting and error-correcting codes. Bell System Technical Journal 29(2), 147–160 (1950)MathSciNetCrossRefGoogle Scholar
  10. 10.
    Hopcroft, J.E., Motwani, R., Ullman, J.: Introduction to Automata Theory, Languages, and Computation. Addison Wesley, Reading (2001)zbMATHGoogle Scholar
  11. 11.
    Kleene, S.C.: Representation of Events in Nerve Nets and Finite Automata. In: Automata Studies, pp. 3–42. Princeton University Press, Princeton (1956)Google Scholar
  12. 12.
    Lecroq, T.: A variation on the Boyer-Moore algorithm. Theoretical Computer Science 92(1), 119–144 (1992)MathSciNetCrossRefzbMATHGoogle Scholar
  13. 13.
    Levenshtein, V.I.: Binary codes capable of correcting deletions, insertions, and reversals. Doklady Akademii Nauk SSSR 163(4), 845–848 (1965)MathSciNetzbMATHGoogle Scholar
  14. 14.
    Melichar, B.: String Matching with k Differences by Finite Automata. In: Proceedings of the 13th ICPR, vol. II, pp. 256–260 (1996)Google Scholar
  15. 15.
    Melichar, B., Holub, J.: 6D Classification of Pattern Matching Problems. In: Proceedings of PSC 1997, Prague, Czech republic, pp. 24–32 (1997)Google Scholar
  16. 16.
    Melichar, B., Holub, J., Polcar, T.: Text Searching Algorithms, vol. I, II (2005),

Copyright information

© Springer-Verlag Berlin Heidelberg 2011

Authors and Affiliations

  • Jan Antoš
    • 1
  • Bořivoj Melichar
    • 2
  1. 1.Department of Computer Science & Engineering, Faculty of Electrical EngineeringCzech Technical UniversityPrague 2Czech Republic
  2. 2.Department of Theoretical Science, Faculty of Information TechnologyCzech Technical UniversityPrague 6Czech Republic

Personalised recommendations