For every string inclusion relation there are two optimization problems: find a longest string included in every string of a given finite language, and find a shortest string including every string of a given finite language. As an example, the two well-known pairs of problems, the longest common substring (or subsequence) problem and the shortest common superstring (or supersequence) problem, are interpretations of these two problems. In this paper we consider a class of opposite problems connected with string noninclusion relations: find a shortest string included in no string of a given finite language and find a longest string including no string of a given finite language. The predicate “string α is not included in string β” is interpreted as either “α is not a substring of β” or “α is not a subsequence of β”. The main purpose is to determine the complexity status of the string noninclusion optimization problems. Using graph approaches we present polynomi...
Anatoly R. Rubinov, Vadim G. Timkovsky