Learning Unions of k-Testable languages
A. Linard, C. de la Higuera and F.W. Vaandrager. Learning Unions of k-Testable Languages. In Carlos Martin-Vide, Alexander Okhotin, Dana Shapira, editors. Language and Automata Theory and Applications - 13th International Conference, LATA 2019, St. Petersburg, Russia, March 26-29, 2019, Proceedings. Lecture Notes in Computer Science 11417, Springer 2019. Full version available as CoRR arXiv:1812.08269, December 2018.Abstract
A classical problem in grammatical inference is to identify a language from a set of examples. In this paper, we address the problem of identifying a union of languages from examples that belong to several different unknown languages. Indeed, decomposing a language into smaller pieces that are easier to represent should make learning easier than aiming for a too generalized language. In particular, we consider k-testable languages in the strict sense (k-TSS). These are defined by a set of allowed prefixes, infixes (sub-strings) and suffixes that words in the language may contain. We establish a Galois connection between the lattice of all languages over alphabet Sigma, and the lattice of k-TSS languages over Sigma. We also define a simple metric on k-TSS languages. The Galois connection and the metric allow us to derive an efficient algorithm to learn the union of k-TSS languages. We evaluate our algorithm on an industrial dataset and thus demonstrate the relevance of our approach.