A Layered Implementation Framework for Regular Languages

Baudouin Le Charlier

公開日: 2025/9/22

Abstract

I present the most fundamental features of an implemented system designed to manipulate representations of regular languages. The system is structured into two layers, allowing regular languages to be represented in an increasingly compact, efficient, and integrated way. Both layers are first presented at a high level, adequate to design and prove the correctness of abstract algorithms. Then, their low-level implementations are described meticulously. At the high level, the first layer offers a notion of normalized regular expressions ensuring that the set of all syntactic derivatives of an expression is finite. At the low level, normalized expressions are uniquely represented by identifiers, i.e. by standard integers. The second layer, called the background, introduces additional notions to record, integrate, and simplify things computed within the first layer. At the high level, normalized expressions denoting the same regular language can be unified by grouping them into equivalence classes. One shortest expression is chosen in each class as its representative, which can be used to form equations relating expressions to their derivatives. This paper also presents extensive experimental results to demonstrate the usefulness of the proposed framework and, in particular, the fact that it makes it possible to represent large sets of regular languages in a unified way where distinct identifiers designate different languages, represented by both a small expression and a minimal deteministic automaton.

A Layered Implementation Framework for Regular Languages | SummarXiv | SummarXiv