Skip to main content

A Formalisation of the Myhill-Nerode Theorem Based on Regular Expressions (Proof Pearl)

  • Conference paper

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

Abstract

There are numerous textbooks on regular languages. Nearly all of them introduce the subject by describing finite automata and only mentioning on the side a connection with regular expressions. Unfortunately, automata are difficult to formalise in HOL-based theorem provers. The reason is that they need to be represented as graphs, matrices or functions, none of which are inductive datatypes. Also convenient operations for disjoint unions of graphs and functions are not easily formalisiable in HOL. In contrast, regular expressions can be defined conveniently as a datatype and a corresponding reasoning infrastructure comes for free. We show in this paper that a central result from formal language theory—the Myhill-Nerode theorem—can be recreated using only regular expressions.

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

Buying options

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

Learn about institutional subscriptions

Preview

Unable to display preview. Download preview PDF.

Unable to display preview. Download preview PDF.

References

  1. Berghofer, S., Nipkow, T.: Executing higher order logic. In: Callaghan, P., Luo, Z., McKinna, J., Pollack, R. (eds.) TYPES 2000. LNCS, vol. 2277, pp. 24–40. Springer, Heidelberg (2002)

    Chapter  Google Scholar 

  2. Berghofer, S., Reiter, M.: Formalizing the logic-automaton connection. In: Berghofer, S., Nipkow, T., Urban, C., Wenzel, M. (eds.) TPHOLs 2009. LNCS, vol. 5674, pp. 147–163. Springer, Heidelberg (2009)

    Chapter  Google Scholar 

  3. Brzozowski, J.A.: Derivatives of Regular Expressions. J. ACM 11, 481–494 (1964)

    MathSciNet  MATH  Google Scholar 

  4. Constable, R.L., Jackson, P.B., Naumov, P., Uribe, J.C.: Constructively Formalizing Automata Theory. In: Proof, Language, and Interaction, pp. 213–238. MIT Press, Cambridge (2000)

    Google Scholar 

  5. Filliâtre, J.-C.: Finite Automata Theory in Coq: A Constructive Proof of Kleene’s Theorem. Research Report 97–04, LIP - ENS Lyon (1997)

    Google Scholar 

  6. Hopcroft, J.E., Ullman, J.D.: Formal Languages and Their Relation to Automata. Addison-Wesley, Reading (1969)

    MATH  Google Scholar 

  7. Kozen, D.: Automata and Computability. Springer, Heidelberg (1997)

    Book  MATH  Google Scholar 

  8. Kraus, A., Nipkow, T.: Proof Pearl: Regular Expression Equivalence and Relation Algebra. To appear in Journal of Automated Reasoning (2011)

    Google Scholar 

  9. Nipkow, T.: Verified lexical analysis. In: Grundy, J., Newey, M. (eds.) TPHOLs 1998. LNCS, vol. 1479, pp. 1–15. Springer, Heidelberg (1998)

    Chapter  Google Scholar 

  10. Owens, S., Reppy, J., Turon, A.: Regular-Expression Derivatives Re-Examined. Journal of Functional Programming 19(2), 173–190 (2009)

    Article  MathSciNet  MATH  Google Scholar 

  11. Owens, S., Slind, K.: Adapting Functional Programs to Higher Order Logic. Higher-Order and Symbolic Computation 21(4), 377–409 (2008)

    Article  MATH  Google Scholar 

Download references

Author information

Authors and Affiliations

Authors

Editor information

Editors and Affiliations

Rights and permissions

Reprints and permissions

Copyright information

© 2011 Springer-Verlag Berlin Heidelberg

About this paper

Cite this paper

Wu, C., Zhang, X., Urban, C. (2011). A Formalisation of the Myhill-Nerode Theorem Based on Regular Expressions (Proof Pearl). In: van Eekelen, M., Geuvers, H., Schmaltz, J., Wiedijk, F. (eds) Interactive Theorem Proving. ITP 2011. Lecture Notes in Computer Science, vol 6898. Springer, Berlin, Heidelberg. https://doi.org/10.1007/978-3-642-22863-6_25

Download citation

  • DOI: https://doi.org/10.1007/978-3-642-22863-6_25

  • Publisher Name: Springer, Berlin, Heidelberg

  • Print ISBN: 978-3-642-22862-9

  • Online ISBN: 978-3-642-22863-6

  • eBook Packages: Computer ScienceComputer Science (R0)

Publish with us

Policies and ethics