A Constructive Theory of Regular Languages in Coq

Saarland University Computer Science

Christian Doczkal, Jan-Oliver Kaiser, and Gert Smolka

We present a formal constructive theory of regular languages consisting of about 1400 lines of Coq/Ssreflect. As representations we consider regular expressions, deterministic and nondeterministic automata, and Myhill and Nerode partitions. We construct computable functions translating between these representations and show that equivalence of representations is decidable. We also establish the usual closure properties, give a minimization algorithm for DFAs, and prove that minimal DFAs are unique up to state renaming. Our development profits much from Ssreflect's support for finite types and graphs.

Paper, CPP 2013


Coq development

Browse the Sources

Browse the Sources (without proofs)


Coq development (updated 2013-12-07)

Browse the Sources (updated 2013-12-07)

Browse the Sources (without proofs,updated 2013-12-07)