Outfix-Free Regular Languages and Prime Outfix-Free Decomposition
Yo-Sub Han, Derick Wood · Fundamenta Informaticae · 2007
A string x is an outfix of a string y if there is a string w such that x _1 wx _2 = y and x = x _1 x _2 . A set X of strings is outfix-free if no string in X is an outfix of any other string in X. Based on the properties of outfix strings, we develop a polynomial-time algorithm that determines outfix-freeness of regular languages. Note that outfix-free regular languages are always finite. We consider two cases: 1) a language is given as a finite set of strings and 2) a language is given by a finite-state automaton. Furthermore, we investigate the prime outfix-free decomposition of outfixfree regular languages and design a linear-time algorithm that computes prime outfix-free decomposition for outfix-free regular languages. We also demonstrate the uniqueness of prime outfix-free decomposition.