Regular Expressions and Automata using Haskell

Thompson, Simon (2000) Regular Expressions and Automata using Haskell. Technical report. University of Kent (Full text available)

Download (341kB)
Download (116kB)


The paper begins with definitions of regular expressions, and how strings are matched to them; this also gives our first Haskell treatment also. After describing the abstract data type of sets we define non-deterministic finite automata, and their implementation in Haskell. We then show how to build an NFA corresponding to each regular expression, and how such a machine can be optimised, first by transforming it into a deterministic machine, and then by minimising the state space of the DFA. We conclude with a discussion of regular definitions, and show how recognisers for strings matching regular definitions can be built.

Item Type: Monograph (Technical report)
Uncontrolled keywords: regular expression automaton NFA DFA minimisation matching
Subjects: Q Science > QA Mathematics (inc Computing science) > QA 76 Software, computer programming,
Divisions: Faculties > Science Technology and Medical Studies > School of Computing > Theoretical Computing Group
Depositing User: Mark Wheadon
Date Deposited: 27 Aug 2009 14:21
Last Modified: 06 Sep 2011 04:11
Resource URI: (The current URI for this page, for reference purposes)
  • Depositors only (login required):


Downloads per month over past year