Abstract
In this paper, we show how to decide whether or not a word belongs to the language denoted by a regular expression, by running a procedure which is linear in time on the product of the sizes of the expression and of the word, and which does not make use of e-transitions. This procedure is based on a suitable implementation of the Glushkov automaton of the expression. This implementation is computed in linear time and space by the ZPC algorithm designed by Ziadi, Ponty and Champarnaud.
This work is a contribution to the Automate software development project carried on by A.I.A. Working Group (Algorithmics and Implementation of Automata), L.I.R. laboratory (contact : {Jean- Marc. Champarnaud, Djelloul.Ziadi}@dir.univ-rouen.fr).
This is a preview of subscription content, log in via an institution.
Preview
Unable to display preview. Download preview PDF.
References
A. V. Aho. Algorithms for finding patterns in strings. In J. van Leeuwen, editor, Handbook of Theoretical Computer Science, Algorithms and complexity, volume A, chapter 5, pages 255–300. Elsevier, Amsterdam, 1990.
A. V. Aho and M. J. Corasick. Efficient string matching: an aid to bibliographic search. Comm. ACM, 18(6):333–340, 1975.
A. V. Aho, R. Sethi, and J. D. Ullman. Compilers — Principles, Techniques and Tools. Addison-Wesley, Reading, MA, 1986.
V. Antimirov. Partial derivatives of regular expressions and finite automaton constructions. Theoret. Comput. Sci., 155:291–319, 1996.
D. Beauquier, J. Berstel, and P. Chrétienne. Éléments d'algorithmique. Masson, Paris, 1992.
G. Berry and R. Sethi. From regular expression to deterministic automata. Theoret. Comput. Sci., 48(1):117–126, 1986.
A. Brüggemann-Klein. Regular expressions into finite automata. Theoret. Comput. Sci., 120(1):197–213, 1993.
A. Brüggemann-Klein and D. Wood. Deterministic regular languages. In A. Finkel and M. Jantzen, editors, Proceedings of the 9th Annual Symposium on Theoretical Aspects of Computer Science, number 577 in Lecture Notes in Computer Science, pages 173–184. Springer-Verlag, Berlin, 1992.
C.-H. Chang and R. Paige. From regular expression to DFA's using NFA's. In A. Apostolico, M. Crochemore, Z. Gatil, and U. Manber, editors, Proceedings of the 3rd Annual Symposium on Combinatorial Pattern Matching, number 664 in Lecture Notes in Computer Science, pages 90–110, Tucson, AZ, 1992. Springer-Verlag, Berlin.
M. Crochemore and C. Hancart. Automata for matching patterns. In G. Rozenberg and A. Salomaa, editors, Handbook of Formal Languages, volume II, Linear modeling: background and application, pages 399–462. Springer-Verlag, Berlin, 1997.
M.D. Davis, R. Sigal, and E.J. Weyuker. Computability, Complexity, and Languages, Fundamentals of Theoretical Computer Science. Academic Press, 1994.
V. M. Glushkov. The abstract theory of automata. Russian Mathematical Surveys, 16:1–53, 1961.
C. Hancart. On Simon's string searching algorithm. Inform. Process. Lett., 47(2):95–99, 1993.
J. E. Hopcroft and J. D. Ullman. Introduction to automata theory, languages and computation. Addison-Wesley, Reading, MA, 1979.
J. Hromkovič, S. Seibert, and T. Wilke. Translating regular expressions into small ɛ-free nondeterministic finite automata. In Proceedings of the 23th International Colloquium on Automata, Languages and Programming, number 000 in Lecture Notes in Computer Science, Paderborn, 1997.
S. Kleene. Representation of events in nerve nets and finite automata. Automata Studies, Ann. Math. Studies 34:3–41, 1956. Princeton U. Press.
D. E. Knuth, J. H. Morris, and V.R. Pratt. Fast pattern matching in strings. SIAM J. Comput., 6(2):323–350, 1977.
O. Matz, A. Miller, A. Potthoff, W. Thomas, and E. Valkena. Report on the program AMoRE. Report, Institut für informatik und praktische mathematik, Christian-Albrechts Universität, Kiel, 1995.
B. G. Mirkin. An algorithm for constructing a base in a language of regular expressions. Engineering Cybernetics, 5:110–116, 1966.
M. Mohri. Matching patterns of an automaton. In Z. Galil and E. Ukkonen, editors, Proceedings of the 6th Annual Symposium on Combinatorial Pattern Matching, number 937 in Lecture Notes in Computer Science, pages 286–297, Espoo, Finland, 1995. Springer-Verlag, Berlin.
D. Perrin. Finite automata. In J. van Leeuwen, editor, Handbook of Theoretical Computer Science, Formal Models and Semantics, volume B, pages 1–57. Elsevier, Amsterdam, 1990.
J.-L. Ponty, D. Ziadi, and J.-M. Champarnaud. A new quadratic algorithm to convert a regular expression into an automaton. In D. Raymond, D. Wood, and S. Yu, editors, Automata Implementation: First International Workshop on Implement ing Automata, WIA'96, number 1260 in Lecture Notes in Computer Science, pages 109–119, London, Ontario, 1997. Springer-Verlag, Berlin.
I. Simon. Piecewise testable events. In Proceedings of the 2nd GI conf., n Lecture Notes in Computer Science, pages 214–222. Springer-Verlag, Berlin, 1975.
K. Thompson. Regular expression search algorithm. Comm. AGM, 11(6):419–422, 1968.
D. Wood. Theory of computation. Wiley, New York, 1987.
D. Ziadi, J.-L. Ponty, and J.-M. Champarnaud. Passage d'une expression rationnelle à un automate fini non-déterministe. Bull. Belg. Math. Soc., 4:177–203, 1997.
Author information
Authors and Affiliations
Editor information
Rights and permissions
Copyright information
© 1998 Springer-Verlag Berlin Heidelberg
About this paper
Cite this paper
Ponty, J.L. (1998). An efficient null-free procedure for deciding regular language membership. In: Wood, D., Yu, S. (eds) Automata Implementation. WIA 1997. Lecture Notes in Computer Science, vol 1436. Springer, Berlin, Heidelberg. https://doi.org/10.1007/BFb0031389
Download citation
DOI: https://doi.org/10.1007/BFb0031389
Published:
Publisher Name: Springer, Berlin, Heidelberg
Print ISBN: 978-3-540-64694-5
Online ISBN: 978-3-540-69104-4
eBook Packages: Springer Book Archive