Skip to main content

Efficient Enumeration of Regular Languages

  • Conference paper
Implementation and Application of Automata (CIAA 2007)

Part of the book series: Lecture Notes in Computer Science ((LNTCS,volume 4783))

Included in the following conference series:

Abstract

The cross-section enumeration problem is to list all words of length n in a regular language L in lexicographical order. The enumeration problem is to list the first m words in L according to radix order. We present an algorithm for the cross-section enumeration problem that is linear in n. We provide a detailed analysis of the asymptotic running time of our algorithm and that of known algorithms for both enumeration problems. We discuss some shortcomings of the enumeration algorithm found in the Grail computation package. In the practical domain, we modify Mäkinen’s enumeration algorithm to get an algorithm that is usually the most efficient in practice. We performed an extensive performance analysis of the new and previously known enumeration and cross-section enumeration algorithms and found when each algorithm is preferable.

This is a preview of subscription content, log in via an institution to check access.

Access this chapter

Chapter
USD 29.95
Price excludes VAT (USA)
  • Available as PDF
  • Read on any device
  • Instant download
  • Own it forever
eBook
USD 39.99
Price excludes VAT (USA)
  • Available as PDF
  • Read on any device
  • Instant download
  • Own it forever
Softcover Book
USD 54.99
Price excludes VAT (USA)
  • Compact, lightweight edition
  • Dispatched in 3 to 5 business days
  • Free shipping worldwide - see info

Tax calculation will be finalised at checkout

Purchases are for personal use only

Institutional subscriptions

Preview

Unable to display preview. Download preview PDF.

Unable to display preview. Download preview PDF.

Similar content being viewed by others

References

  1. Conway, J.H.: Regular Algebra and Finite Machines. Chapman and Hall, London (1971)

    MATH  Google Scholar 

  2. Coppersmith, D., Winograd, S.: Matrix multiplication via arithmetic progressions. J. Symb. Comput. 9, 251–280 (1990)

    Article  MATH  MathSciNet  Google Scholar 

  3. Department of Computer Science, University of Western Ontario, Canada, http://www.csd.uwo.ca/Research/grail/index.html

  4. Mäkinen, E.: On lexicographic enumeration of regular and context-free languages. Acta Cybern. 13, 55–61 (1997)

    MATH  Google Scholar 

  5. Nijenhuis, A., Wilf, H.S.: Combinatorial Algorithms: For Computers and Calculators. Academic Press, Inc, NY, USA (1978)

    MATH  Google Scholar 

  6. Strassen, V.: Gaussian elimination is not optimal. Journal Numerische Mathematik 13, 354–356 (1969)

    Article  MATH  MathSciNet  Google Scholar 

Download references

Author information

Authors and Affiliations

Authors

Editor information

Jan Holub Jan Žďárek

Rights and permissions

Reprints and permissions

Copyright information

© 2007 Springer-Verlag Berlin Heidelberg

About this paper

Cite this paper

Ackerman, M., Shallit, J. (2007). Efficient Enumeration of Regular Languages. In: Holub, J., Žďárek, J. (eds) Implementation and Application of Automata. CIAA 2007. Lecture Notes in Computer Science, vol 4783. Springer, Berlin, Heidelberg. https://doi.org/10.1007/978-3-540-76336-9_22

Download citation

  • DOI: https://doi.org/10.1007/978-3-540-76336-9_22

  • Publisher Name: Springer, Berlin, Heidelberg

  • Print ISBN: 978-3-540-76335-2

  • Online ISBN: 978-3-540-76336-9

  • eBook Packages: Computer ScienceComputer Science (R0)

Publish with us

Policies and ethics