Computing Covers Using Prefix Tables
arXiv:1412.3016
Abstract
An \emph{indeterminate string} on an alphabet is a sequence of nonempty subsets of ; is said to be \emph{regular} if every subset is of size one. A proper substring of regular is said to be a \emph{cover} of iff for every , an occurrence of in includes . The \emph{cover array} of is an integer array such that is the longest cover of . Fifteen years ago a complex, though nevertheless linear-time, algorithm was proposed to compute the cover array of regular based on prior computation of the border array of . In this paper we first describe a linear-time algorithm to compute the cover array of regular string based on the prefix table of . We then extend this result to indeterminate strings.
14 pages, 1 figure